Commit graph

134 commits

Author SHA1 Message Date
Yaroslav Halchenko
0f9cb5d55e Some more codespell ignores 2024-09-12 14:18:50 -04:00
Kron4ek
7844d08792
Fix legacy Nvidia drivers (390 and older) 2024-09-10 01:02:55 +03:00
Kron4ek
f08069070f
Fix compatibility with sbase tools
Fixes #178
2024-09-08 13:16:29 +03:00
Kron4ek
5664d53d87
Do not mount /run when updating Conty
To prevent systemd from asking for the user password.
2024-08-24 12:56:33 +03:00
Kron4ek
00e4a161e9
Ignore updating fakeroot when updating Conty
Since it may cause the update process to hang.

#165
2024-08-24 12:55:01 +03:00
Kron4ek
348758658b
Fix Nvidia driver sharing when USE_OVERLAYFS is enabled 2024-08-03 12:04:39 +03:00
Kron4ek
c0cb1c3a94
Share Nvidia driver between Conty instances
Share Nvidia driver between all Conty instances that don't have the driver inside the filesystem image.

#140
#148 
#153
2024-08-01 14:48:51 +03:00
Kron4ek
7e50a8e5b7 Update mkdwarfs parameters 2024-01-17 16:28:02 +03:00
Kron4ek
f669dbfb29
Auto replace home path in launch arguments for custom home dirs 2023-12-29 15:24:44 +03:00
Kron4ek
269c899cac
Set XDG variables too for non standard home dirs 2023-12-29 14:28:13 +03:00
Kron4ek
60c44d5a16
Tune DwarFS parameters 2023-07-18 17:31:20 +05:00
Kron4ek
34a156dd0e
Use host system's pacman cache if possible
When updating Conty, use packages from the host system's pacman cache if it exists and non-empty. May save internet traffic and speed up the update process.

#85
2023-07-17 01:56:33 +05:00
Kron4ek
75a46c0edd Fix using the self-update function on non-pacman distros 2023-07-17 01:25:16 +05:00
Kron4ek
563d02b3f3 Fix the self-update function 2023-07-17 01:15:56 +05:00
Kron4ek
10af058094 Use C locale for Conty itself
For more portability. Note this is only for Conty itself, applications that you run via Conty will use your actual locale.
2023-07-16 16:53:11 +05:00
Kron4ek
b1c405c46f Update integrated utils 2023-07-16 16:33:06 +05:00
Kron4ek
bb8f622557 Reduce unmount delay a bit 2023-06-18 20:15:39 +05:00
Kron4ek
1149011f2f Change dwarfs compressor arguments
Better read performance, but worse compression ratio.
2023-06-13 17:10:13 +05:00
Kron4ek
f9a0ad6bb8 Protect Conty from LD_PRELOAD and LD_LIBRARY_PATH
These variables may break Conty, so let's ignore them for Conty itself and pass them to applications.
2023-06-13 16:41:18 +05:00
Kron4ek
6acd7b38d3 Mount newroot read-only unless USE_OVERLAYFS is enabled 2023-06-11 00:45:29 +05:00
Kron4ek
79bbe80d21 Increase file descriptors limit if possible 2023-06-10 21:25:32 +05:00
Kron4ek
37cd806fcf Check if Nvidia installed successfully 2023-06-10 21:04:19 +05:00
Kron4ek
ba3737aa3d Add a delay before unmounting the image.
This should speed up Conty startup time significantly when executing multiple instances of Conty in a row.
2023-06-10 16:00:21 +05:00
Kron4ek
c54e734987 Make the mount command more readable 2023-06-10 15:38:07 +05:00
Kron4ek
b09a683ccf Fix exporting desktop files which are symlinks 2023-06-10 13:36:40 +05:00
Kron4ek
9d8301032c
Make all overlay file writable when updating Conty
Otherwise it will fail to remove the overlay at the end.
2023-06-07 14:19:22 +05:00
Kron4ek
6b29f9c6b9 Don't try to bind pacman dirs when using unionfs
This completely breaks USE_OVERLAYFS and NVIDIA_HANDLER functions on non-pacman distros.
2023-05-31 20:14:48 +05:00
Kron4ek
8ddb47e225 Run unionfs-fuse through the launch_wrapper
It should have been like this from the start, my oversight.
2023-05-31 20:01:54 +05:00
Kron4ek
413054553e A few improvements for NVIDIA_HANDLER function 2023-05-31 19:19:28 +05:00
Kron4ek
184482a7fe Replace fuse-overlayfs with unionfs-fuse
In my testing, unionfs-fuse works significantly faster than fuse-overlayfs. And it supports both fuse2 and fuse3, which is also an advantage over fuse-overlayfs.
2023-05-31 16:30:13 +05:00
Kron4ek
af228053e0 Fix executing Conty from PATH
This was broken in the latest release.
2023-05-31 13:33:33 +05:00
Kron4ek
27677599f8 Make Conty even more portable
Conty now uses statically linked bash and busybox, so it no longer depends on system-wide bash, tar and gzip.

And other improvements in this commit:

* NVIDIA_HANDLER improved and enabled by default.
* Reworked the self-update feature, it uses fuse-overlayfs now instead of extracting the whole image.
* Added the CUSTOM_MNT, which allows to use Conty with already mounted custom moint points and directory structures.
* create-conty.sh now automatically sets the correct sizes in conty-start.sh
* Added more locales
2023-05-28 16:52:18 +05:00
Kron4ek
3beb06e146 A few improvements for NVIDIA_HANDLER
Also, fuse-overlayfs can now be enabled separately from NVIDIA_HANDLER.
2023-05-24 00:12:44 +05:00
Kron4ek
a467da324d Add a function to fix issues with Nvidia GPUs
The function is called NVIDIA_HANDLER and is disabled by default.
When enabled, it will automatically download the same Nvidia driver version as installed on the host system and pass it into the container.

This is implemented via fuse-overlayfs, fuse3 is required for this to work.
2023-05-21 22:01:03 +05:00
Kron4ek
9ed24fef16 Implement a simple graphical interface
The GUI will be used by default when a user runs Conty not from a terminal emulator, but from a graphical interface (for example, from a file manager).
2023-05-16 20:46:50 +05:00
Kron4ek
7869c2dd69 Create ~/.local/share if missing 2023-05-05 00:18:44 +05:00
Kron4ek
fe425cbb61 Also export icons when exporting desktop files 2023-05-05 00:15:56 +05:00
Kron4ek
03efe023fa Update integrated utils
Update bubblewrap to 0.8.0
Update dwarfs to the latest git revision (2a0ac12)
Update squashfs-tools to 4.6.1
Update zstd to 1.5.5
Update all other outdated dependencies
2023-04-15 00:02:41 +05:00
Kron4ek
a68c21884b Preserve environment variables when exporting desktop files
Not all environment variables, but those related to Conty.
2023-04-12 01:58:02 +05:00
Kron4ek
14e606729f Add additional arguments to Conty when exporting desktop files
If there are arguments after the "-d" argument, append them to Conty in desktop files.
2023-04-12 00:49:15 +05:00
Kron4ek
850b0571e4 Export desktop files recursively
Some applications store their desktop files not just in /usr/share/applications, but in a subdirectory. Now we handle such cases too.
2023-04-09 21:04:56 +05:00
Kron4ek
7ec81cf471 A few improvement to the desktop files export function
Append "(Conty)" even to translated names.
Skip adding TryExec as it prevents some apps from showing up in application menu.
2023-04-07 14:43:44 +05:00
Kron4ek
feaefe2014 Add the ability to export desktop files 2023-04-06 19:06:54 +05:00
Kron4ek
f5f3f34ea6 Don't bind system's /opt if there are files in container's /opt 2023-03-25 21:48:12 +05:00
Kron4ek
6b09f42765
Update script version 2023-02-17 18:37:50 +05:00
Kron4ek
7de74da3f9 Fix script size 2023-02-17 18:28:19 +05:00
ghtm2
187867e162
make help more readable 2023-02-16 17:27:40 +01:00
Kron4ek
ebd5243a4e Fix script size 2023-02-16 15:51:41 +05:00
ghtm2
b21c8401ae
Use curl instead of wget (#63) 2023-02-16 15:48:21 +05:00
ghtm2
b3c16de238
Fix shellcheck warnings and style (#62) 2023-02-16 00:57:05 +05:00