Commit Graph

125 Commits

Author SHA1 Message Date
Darren Gibbard 525992727a
Fix for Nvidia Passthrough (#166)
* Fix Nvidia Passthrough closing #127
* Mount libraries parent directory
* Use the dynamic library path from the existing code
2024-05-11 10:29:16 +02:00
Jip-Hop 03fcb961b7 Log jail name after initial setup 2024-05-08 22:49:28 +02:00
Jip-Hop 2f4a113cf1 Bump version to 1.4.0 2024-05-08 22:25:19 +02:00
Jip-Hop 4cd7c54c58 Run initial_setup once jail starts for first time
First jail startup will now wait for init system and networking to be ready before running the initial_setup script inside the jail. All systemd_nspawn_user_args are now applied and the initial_setup script will have access to filed mounted via bind mounts.
2024-05-08 22:21:06 +02:00
Jip-Hop 93267b6ec6 Formatting 2024-05-08 18:59:58 +02:00
Max Nordlund 487b0cde68
Follow Debian guidelines for launching editors (#157)
* Follow Debian guidelines for launching editors

When jailmaker wants to ask the user to edit a file, mostly a jail
config, it currently uses `nano`. This is not how a program is supposed
to work according to [Debian's guidelines]. This changes the hardcoded
`nano` to look up the correct editor to use using environmental
variables.

[1]: https://www.debian.org/doc/debian-policy/ch-customized-programs.html#editors-and-pagers

* Bump version to 1.3.0

---------

Co-authored-by: Jip-Hop <2871973+Jip-Hop@users.noreply.github.com>
2024-05-07 20:02:36 +02:00
Jip-Hop 2e09de47b7 Support spaces in pool and dataset name 2024-04-26 16:47:56 +02:00
Jip-Hop fe8fcf3807
Correct semver (#134)
Bump version to 1.2.0
2024-04-24 17:21:45 +02:00
Jip-Hop 9661f4ff19
Deprecate docker_compatible and gpu_passthrough (#121)
Remove --property=DeviceAllow= so it won't interfere with DevicePolicy=auto
Added seccomp config option
Deprecated docker_compatible config option
Deprecated gpu_passthrough config option
Removed the docker_compatible question during interactive create
Updated readme and config templates
Closes https://github.com/Jip-Hop/jailmaker/issues/119
2024-04-22 20:50:40 +02:00
TempleHasFallen a7c4b9dbad
Added Full ZFS Dataset Support (#118)
Added Full ZFS Dataset Support:

- The script will now create a ZFS dataset for each jail if the 'jailmaker' directory is a ZFS dataset
- The script will create the 'jails' directory as a dataset if the 'jailmaker' directory is a ZFS dataset
- The script will now remove the ZFS dataset (including snapshots) when deleting the jail
- Dual mode: For legacy use without datasets, it will continue to work as previously

Added a guide to migrate from using directories to using ZFS datasets.

Closes #80.

---------

Co-authored-by: Jip-Hop <2871973+Jip-Hop@users.noreply.github.com>
2024-04-14 16:07:47 +02:00
Matthias Schabhüttl f046dd3d32
Fix for hostname of LXC not set correctly (#116)
* Remove unnecessary script trim in jlmkr

* Update download script digest hash

* Bump version to 1.1.3

* Remove unused method

---------

Co-authored-by: Jip-Hop <2871973+Jip-Hop@users.noreply.github.com>
2024-04-07 18:41:55 +02:00
Jip-Hop d3e35d2b0a Bump version to 1.1.2 2024-04-07 12:56:10 +02:00
Jip-Hop ff11d7416a Use updated lxc-download script from upstream 2024-04-07 12:54:47 +02:00
Jip-Hop a65bf03445 Update cleanup docstring 2024-04-07 11:58:09 +02:00
Jip-Hop eee3abef8e Stat_chmod jails dir during non-interactive create 2024-04-06 11:20:31 +02:00
Jip-Hop 27d090919e Continue after failed nvidia kernel module load 2024-03-07 19:30:13 +01:00
Jip-Hop f210f015f2 Add warnings to non-interactive create 2024-03-07 19:27:43 +01:00
Jip-Hop d1f86a186c Improve exception handling 2024-03-02 23:17:06 +01:00
Jip-Hop 5318635b92 Bump version to 1.1.1 2024-03-02 22:20:00 +01:00
Jip-Hop a12e04aa2f Fix GPU passthrough 2024-03-02 22:18:48 +01:00
Jip-Hop 0a56d97e72 Add TODO 2024-03-02 21:01:41 +01:00
Jip-Hop cd067d7058 Bump version to 1.1.0 2024-03-02 18:38:06 +01:00
Jip-Hop 9e160c8a52 Fix list fallback value 2024-03-02 18:20:25 +01:00
Jip-Hop ac75cd3c28 Add --start flag for create command 2024-03-02 17:34:55 +01:00
Jip-Hop 98f812be8b Cosmetic changes 2024-03-02 17:20:47 +01:00
Jip-Hop fe00c3cf37 Non-interactive jail create 2024-03-01 17:35:05 +01:00
Jip-Hop fc38d01082 Improved config parsing and bug fixes
Fixed failing cleanup of initial_setup_file when initial_setup is a command instead of a file
2024-02-25 16:31:34 +01:00
Jip-Hop 21eef74929 List more jail details 2024-02-16 13:41:12 +01:00
Jip-Hop f030606c83 Don't auto start jail without systemd 2024-02-16 11:11:20 +01:00
Jip-Hop aa0d0c6d1d Cleanup if create is aborted 2024-02-16 10:52:29 +01:00
Jip-Hop 930e9568d4 Ask startup question earlier 2024-02-16 10:46:51 +01:00
Jip-Hop 7be1c7c7d2 Always wait until jail stopped 2024-02-16 10:39:48 +01:00
Jip-Hop f37f6df7f7 Update jlmkr.py 2024-02-15 17:40:13 +01:00
Jip-Hop 8571caa431 Create from config template with initial_setup 2024-02-11 18:30:47 +01:00
Jip-Hop a15d5d10f5 Fix startup 2024-02-10 13:21:49 +01:00
Jip-Hop d7b30011b0 Create jlmkr shell aliases 2024-02-10 13:04:18 +01:00
Jip-Hop f9730d3a32 Add start/stop hooks 2024-02-09 16:41:19 +01:00
Jip-Hop 6475b13f46 Add initial_rootfs_image to config for reference 2024-02-08 16:57:16 +01:00
Jip-Hop c4a5dd1c75 Don't stop and wait if jail is not running 2024-02-08 16:51:14 +01:00
Jip-Hop 1c83bb2dc7 Add restart command 2024-02-08 01:57:48 +01:00
Jip-Hop ed7a883f63 Config file multiline formatting 2024-02-08 01:33:27 +01:00
Jip-Hop 00e98ac07d Pass more status codes and arguments 2024-02-08 01:15:38 +01:00
Jip-Hop d94a2aac7d No need for try/except 2024-02-07 17:14:41 +01:00
Jip-Hop a5d53c0a7b Properly pass exit code from exec 2024-02-07 17:12:34 +01:00
Jip-Hop 4655f174b7 Add --inaccessible=/sys/module/apparmor
To trick the jail into thinking the apparmor kernel module is not loaded.
2024-01-29 09:01:05 +01:00
Jip-Hop ad95fe7cab Update comments 2024-01-29 08:58:28 +01:00
Jip-Hop 0f22a56946 Update jlmkr.py 2024-01-27 17:30:31 +01:00
Jip-Hop 53689df645 Remove redundant system-call-filter
Since SYSTEMD_SECCOMP=0 adding system-call-filter is redundant
2024-01-27 12:23:45 +01:00
Jip-Hop 303f79a3ae Add bind /sys/module to nspawn default args 2024-01-27 12:22:39 +01:00
Jip-Hop 2aba2c4a9d Load kernel module later 2024-01-27 05:44:05 +01:00