Distrobox Versions Save

Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox

1.7.2.1

1 week ago

Quick bugfix release

What's Changed

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.7.2.0...1.7.2.1

1.7.2.0

1 week ago

Highlights

Many bug fixes, particularly:

  • f031b8e8176c9c8a877389591c4732d2eeee78ea fixing a regression introduced in runc 1.20rc1+
  • d626559baaa4e6ccb35b3bb0befc9d46b7aa837e New behaviour for containers, they will default to host's hostname and use CONTAINER_ID as prompt distinguisher. This will give a lot less headaches for GUI apps and X11 forwarding
  • Better fish support as $SHELL inside the container
  • Improved cleanup of exported apps/bins when deleting a container
  • cbd55e5fdf4f1f551d12fd2c5c7d86b802e5d9bb Better POSIX compatibiltiy

What's Changed

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.7.1...1.7.2.0

1.7.1

1 month ago

This is a bigger bug fix release, specially regarding the init and includes a couple of new features too!

What's Changed

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.7.0.1...1.7.1

1.7.0.1

2 months ago

Minor bugfix release

What's Changed

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.7.0...1.7.0.1

1.7.0

2 months ago

Highlight

  • added --enter-flags to distrobox-export to specify additional distrobox flags to use when entering
  • added --hostname flag to distrobox-create so you can choose a different hostname than the box name
  • added --unshare-groups to distrobox-create to allow unsharing user's additional groups inside the container
  • better login shell management
  • better systemd support for initful containers
  • fixed multiple bins and apps exports declaration in assemble
  • improved NVidia support
  • improved Wolfi container support
  • improved rootful containers support for exported graphical apps
  • improved terminfo support
  • new distrobox-export --list-apps and --list-binaries to show exported apps and binaries

⚠️ BE CAREFUL:⚠️ This release will BREAK EXPORTED APPS AND BINARIES ⚠️ BE CAREFUL:⚠️

To fix this, you can enter your container and do:

distrobox-export --list-binaries | tr -d " " | awk -F"|" '{print "distrobox-export --bin "$1 " --export-path $(dirname "$2")"}' | sh -

and

distrobox-export --list-apps | awk -F"|" '{print $1}' | sed 's/[ \t]*$//' | xargs -I{} distrobox-export --app "{}"

To re-export all the apps and bins for that container

What's Changed

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.6.0.1...1.7.0

all: Allow NixOS package maintainers to ship a static config file (#1080) all: Bump default container image to Fedora 39 (#1134) all: add DBX_VERBOSE env variable. Fix #1151 all: fix config loading when file doesn't exist assemble: Use read instead of cat (#1147) assemble: extract root flag to variable assemble: fix Split multiple apps and bins by space (#1084) assemble: fix export in rootful containers assemble: fix export on rootful containers, Fix #1171 assemble: fix init_hooks regex for separator detection, Fix #1227 assemble: fix key regex, Fix #1228 completions: Added zsh completions (#1204) completions: zsh - fixed issue with some arguments having invalid syntax (#1216) create/enter: add unshare-groups flag, do proper su login only on usnhare-groups and initful containers. Fix #1208 create: Use $XDG_CACHE_HOME, keep cache files in $HOME/.cache/distrobox by default (#1082) create: add --hostname argument and DBX_CONTAINER_HOSTNAME env var (#1214) create: add host terminfo as a fallback (#1194) create: add pid-limits=-1 to create, Fix #1183 create: check RHEL subscription files before mounting, Fix #1146 create: fix home-prefix not correctly detected, deduplicate code. Fix #1212 enter: ensure CONTAINER_ID is not inherited in case of nested distroboxes enter: fix enter on fish shell, Fix #1210 enter: fix host/container PATH order, Fix #1145 enter: fix log reading leading to premature enter before pty/console is sorted on init systems enter: fix login shell with initful containers enter: ignore podman stderr logs during stage parsing enter: pipe both stdout and stderr to fifo, Fix #610 enter: properly allocate pty container an do a proper login shell for the user, Fix #1150 enter: properly handle container stopping during first setup. Fix #1133 enter: simplify login command logic ephemeral: fix sudo infinite loop on cleanup, Fix #1195 ephemeral: remove redundant stop export/rm: correctly handle paths containing whitespace and quotes (#1102) export: absolute path of exported icons should correspond to host's home, not from inside export: add --enter-flags to distrobox-export (#1169) export: add list-apps and list-binaries flags, to list exported stuff inside a container. Fix #1137 export: capture full container command when exporting app (#1170) export: fix bug in filtering existing distrobox entries in export. Fix #1106 export: fix list-apps path search for custom home dirs, Fix #1226 export: fix spaces in arguments in graphical apps export: support exporting graphical apps extras: add podman-host and vscode-distrobox utilities feat: add Containerfile to create a distrobox container, Fix #1021 fix: fixed assemble start_now option with root (#1074) host-exec: add fallback for situations where XDG variables are not set host-exec: flatpak needs to be launched without --pty init: Add '--stdin' flag to 'passwd root' call if supported (#1221) init: Fix --nvidia flag unreliably mounts libraries into /usr (#1128) (#1203) init: Fix inability to enter Gentoo container after changing EMERGE_DEFAULT_OPTS (#1079) init: Fix systemd/init container startup (#1069) init: Implement support for Wolfi (#1192) init: add cracklib-dicts to fedora-based OSes, Fix #1158 init: break down logging steps in smaller chunks init: check files sums before copy for fix cp the same file error (#1219) init: ensure Nvidia integration mounts respect locked mount flags, Fix #1123 init: ensure basic variables are properly sourced during logins init: fix and solidify startup and user-integration in initful containers init: fix devpts mounts permissions and group flags in order to mimic what happens on a real system init: fix init and upgrade on older Debian and Centos init: fix login on Alpine and Wolfi init: fix skel permissions, Fix #1144, Fix #1081 init: improve logging steps init: improve systemd user integrations (#1211) init: make linger failable, linger is not always possible on some systems. #1211 init: prevent podman from logging stderr verbose output as priority 3 journald errors (#1223) init: properly wait for systemd to start on initful systems init: various fish fixes (#1186) install: fix completions installation install: fix zsh completion installation, Fix #1213 install: remove the extra / (#1218) rm: Ignore nonexistent ~/.local/bin (#1073) rm: be non-interactive if forcing rm: fix container inspection, Fix #1168 rm: fix removal of rootful containers rm: properly handle container export cleanup rm: simplify cleanup logic, leaning on new list commands for export upgrade: do not use login shell for upgrades

1.6.0.1

5 months ago

Quick bugfix release

  • export: fix exporting desktop app. Fix #1066
  • init: fix nvidia library integration. Fix #1064

Full Changelog: https://github.com/89luca89/distrobox/compare/1.6.0...1.6.0.1

1.6.0

5 months ago

Highlights

  • Lilipod support
  • Improved nvidia integration, particularly for cuda
  • General improvements in the init process
  • Improve user's shell handling, so that it now always respects the chsh done inside the container
  • Fix tzdata/zoneinfo problems
  • Rootful containers now will properly setup user password for sudo
  • General polish in initful containers
  • Initful containers now support also OpenRC when present
  • Initful containers will now have also a proper systemd user session
  • New --unshare-all, --unshare-netns, --unshare-process, --unshare-devsys flags in create
    • Now initful + unshare-all containers can be used as playgrounds for services like LXC and Libvirt more easily
  • New container_additional_volumes configuration
  • Export fixes and improvements in multi-icon and space-in-name handling
  • Exported binaries will be runnable between distroboxes
  • Exported binaries will always run in a login shell
  • Assemble is now more polished and supports all of create flags
  • Assemble can now export apps/binaries directly from the manifest

What's Changed

  • all: add Lilipod container manager support
  • all: add extra check to detect if we are in a container by @ericcurtin in https://github.com/89luca89/distrobox/pull/916
  • all: block sudo/doas only when using it for root. Fix #981
  • all: support /usr/local/share and /usr/share/default config paths
  • assemble/enter: enter or create based on entry in manifest file by @bobslept in https://github.com/89luca89/distrobox/pull/934
  • assemble: add new unshare options from create
  • assemble: add support for declaring exported apps and binaries, Fix #842
  • assemble: better comment detection, Fix #956
  • assemble: fix --name params cleanup missing. by @hirnidrin in https://github.com/89luca89/distrobox/pull/1014
  • assemble: fix declaration of multiple hooks, fix support for pipes. Fix #853
  • assemble: fix empty args in hooks handling
  • assemble: fix issue with similar names, Fix #838
  • assemble: fix missing ¤ in volume handling by @samuelba in https://github.com/89luca89/distrobox/pull/1001
  • assemble: fix remove when rootful. Fix #845
  • assemble: fix separator for multiple export declaration
  • assemble: properly detect && and ; in lines. Fix #923
  • assemble: properly split/reunite multiple hooks lines
  • completions: fix dependency to awk
  • create: add --unshare-all, --unshare-netns, --unshare-process, --unshare-devsys, work on #28 by @89luca89 in https://github.com/89luca89/distrobox/pull/818
  • create: add comments to explain initful setups for docker, remove duplicate flag
  • create: add container_additional_volumes configuration, to have default mounts for all containers
  • create: add name lenght checking to ensure we respect hostname lenght limits. Fix #930
  • create: ensure /dev/pts is empty on fresh start, init will take care of creating the proper devpts mount later
  • create: ensure initful+rootful containers work on apparmor systems
  • create: ensure ptmx is blank when starting
  • create: ensure that we properly forward RHEL subscriptions from host to guest
  • create: fix DBX entry generation env variable name
  • create: fix initful+rootful containers on docker
  • create: improve initful+rootful container setup using cgroupns=host
  • create: remove /nix /gnu and /run/current-system/sw mounts
  • create: setup devpts inside init, ensure /run is a tmpfs
  • create: use only shell name in SHELL, not full path
  • docs(compatibility): add bazzite and bazzite arch as supported distros by @EyeCantCU in https://github.com/89luca89/distrobox/pull/936
  • docs: add chromeos as supported host os by @ericcurtin in https://github.com/89luca89/distrobox/pull/917
  • docs: add kde neon icon and pointers to container registry by @jriddell in https://github.com/89luca89/distrobox/pull/861
  • docs: add missing instructions to make the podman launcher binary executable by @Antiz96 in https://github.com/89luca89/distrobox/pull/970
  • docs: add vanilla distrobox icon by @matbme in https://github.com/89luca89/distrobox/pull/915
  • docs: chromeos compatibility should say debian 12 bookworm by @ericcurtin in https://github.com/89luca89/distrobox/pull/919
  • docs: debian is now at version 12 by @alexsch01 in https://github.com/89luca89/distrobox/pull/924
  • docs: document waydroid by @mirkobrombin in https://github.com/89luca89/distrobox/pull/951
  • docs: fix code example by @bronson in https://github.com/89luca89/distrobox/pull/925
  • docs: missing quote in run_libvirt_in_distrobox.md by @tazihad in https://github.com/89luca89/distrobox/pull/879
  • docs: new splash image by @daudix in https://github.com/89luca89/distrobox/pull/870
  • docs: update compatibility.md for opensuse by @vyskocilm in https://github.com/89luca89/distrobox/pull/1011
  • docs: update distrobox-upgrade.md by @rondey in https://github.com/89luca89/distrobox/pull/871
  • docs: update run_latest_gnome_kde_on_distrobox.md by @TheMaroonHatHacker in https://github.com/89luca89/distrobox/pull/983
  • docs: update useful_tips.md by @TheBicPen in https://github.com/89luca89/distrobox/pull/954
  • docs: windows compatibility using wsl by @ericcurtin in https://github.com/89luca89/distrobox/pull/1037
  • enter/init: add default locale en_US.UTF-8 instead of C.POSIX. This will fix glitches in applications. Fix #398, Fix #507, Fix #571
  • enter: add XDG_* dirs according to home/custom_home. Fix #420
  • enter: cleanup output, be less verbose by default, automatically get container logs on verbose exit
  • enter: do not pass the PROFILEREAD env variable
  • enter: enable tty only if both stdin and stoud are connected to a tty. Fix #965
  • enter: fix xdg_data_dirs and xdg_config_dirs handling by @ttimasdf in https://github.com/89luca89/distrobox/pull/912
  • enter: fix regression in tty detection. Fix #971
  • enter: improve status logging during first start
  • enter: prioritize container PATH over host's one
  • enter: use natural order from host path by @ttimasdf in https://github.com/89luca89/distrobox/pull/918
  • enter: we should show the container creation progress
  • ephemeral: better cleanup on termination
  • ephemeral: cleanup with TRAP and forward exit code. Fix #959
  • export: --sudo when not --login by @bubuntux in https://github.com/89luca89/distrobox/pull/860
  • export: add call to update-desktop-database tool by @luc14n0 in https://github.com/89luca89/distrobox/pull/889
  • export: add label none to disable labeling. Fix #993
  • export: always use a login shell, thanks to #869
  • export: export to host_home by default by @bubuntux in https://github.com/89luca89/distrobox/pull/859
  • export: fix hard path icon export by @lribic in https://github.com/89luca89/distrobox/pull/1040
  • export: fix the issue when export would fail if there is a quote in filename(s). by @vitalijb in https://github.com/89luca89/distrobox/pull/1004
  • export: make exported binaries runnable within other distrobox containers by @FrauH0lle in https://github.com/89luca89/distrobox/pull/906
  • export: should fix issues with paths containing spaces by @Silenc3IsGold3n in https://github.com/89luca89/distrobox/pull/840
  • export: take XDG_DIRS in consideration when exporting. Fix #526
  • export: use su-exec when sudo is absent
  • extras: fix podman version for static builds. Fix #948
  • extras: obsolete install-podman
  • extras: update install script podman==4.6.2 crun==1.8.7
  • generate-entry: fix missing cp commands
  • host-exec: alternative check for container detection. Fix #945
  • host-exec: fix container_id: unbound variable error by @luc14n0 in https://github.com/89luca89/distrobox/pull/888
  • host-exec: fix dbus path for initful containers
  • host-exec: setup XDG_RUNTIME_DIR after download prompt, fix installation in init
  • host-exec: upgrade host-spawn to 1.5.0
  • init/create: do not mount XDG_RUNTIME_DIR if we're using an init, we'll start out internal user session. Fix #523
  • init/create: setup user password for rootful containers
  • init: add /run/host/etc to nvidia search path for integration. Fix #848
  • init: add a basic [email protected] to ensure basic runtime integration on initful containers (graphics, sound, keyring, authorities)
  • init: add back old egl/mesa packages for older debians
  • init: add bash-completion to packages list. Fix #554
  • init: add binfmt to masked systemd services
  • init: add vanilla os and update arch init by @mirkobrombin in https://github.com/89luca89/distrobox/pull/926
  • init: align package list with containers/toolbox in order to give a more consistent experience between the tools
  • init: arch linux speed improvements by @LukeShortCloud in https://github.com/89luca89/distrobox/pull/828
  • init: be sure that SHELL in the container corresponds to the one set to the user via chsh
  • init: better detect package existence on Apt based systems
  • init: better format creation of files
  • init: better handle dependency detection, better support OpenRC for initful containers, better document in man pages how to create initful containers
  • init: better handle root account lockup
  • init: better highlight the first password setup prompt
  • init: better nvidia file detection
  • init: better rootful detection, better sudoers groups detection
  • init: better sudoers groups setup, root account lockup fallback
  • init: change rootful detection condition by @outphase in https://github.com/89luca89/distrobox/pull/909
  • init: cleaner logging
  • init: create /run/.toolboxenv to ensure compatibility. add default prompt to profile. Fix #630, Fix #704
  • init: debian: fix installation of deprecated libgl1-mesa-glx and libegl1-mesa by @g7 in https://github.com/89luca89/distrobox/pull/1005
  • init: do packagemanager hooks only in non-init containers, cleanup code a bit
  • init: ensure user_home is correctly set each time, Fix #592
  • init: exclude default timeshift mountpoint from socket search, improve performance. Fix #941
  • init: fix conflict curl/curl-minimal on microdnf systems
  • init: fix console always, so that it works also with the new unshare options
  • init: fix fifo creation on second boot, simplify console binding, the first one is always pts/0
  • init: fix gentoo pinentry ambiguity
  • init: fix mount flags for files (e.g., /etc/localtime) by @weiren2 in https://github.com/89luca89/distrobox/pull/1041
  • init: fix pulseaudio integration on initful systems. Fix #943
  • init: fix sudoers on rootless containers after restart. Fix #928
  • init: fix tzdata/zoneinfo problems and potential incompatibilities for the future. Add test for upgrades. Fix #820, Fix #874
  • init: fix user creation and sudo for wolfi
  • init: fix wrongly hardcoded [email protected]. Fix #907
  • init: force symlink even if it exists. Fix #905
  • init: handle untrusted repositories when installing basic packages by @g7 in https://github.com/89luca89/distrobox/pull/900
  • init: improve code for hooks in package managers, skip hooks on init systems, ensure package manager does not fire up on tmpfs /run dirs
  • init: improve error messages for initful containers without init systems
  • init: improve host's video/audio integration on initful containers. Fix #943
  • init: improve nvidia integration
  • init: improve systemd masking, make it less aggressive
  • init: make / as rshared inside the container
  • init: nvidia-integration handle 32bit libraries and paths. Fix #892
  • init: nvidia-integration, correctly preserve symlinks. Fix #848
  • init: properly create devpts with correct flag and ptmx
  • init: properly initialize a pty with script, and mount it as /dev/console, so that the init process will have proper output
  • init: properly support fallback routine in user creation and setup, better support AD/LDAP users
  • init: quieter action
  • init: replace posix-libc-utils with libc-utils by @xz-dev in https://github.com/89luca89/distrobox/pull/886
  • init: restore commit 903eb58eb900748d11bbafaf4ff768b262971272 mistakenly removed
  • init: set password-initialize flag inside the container, so that it doesn't interfere with others
  • init: setup devpts inside init
  • init: simplify /sbin/init vs systemd launch
  • init: skip nvidia mounts when file already exists, Fix #1030
  • init: succeed distrobox-init if custom image has undergone debian releaseinfo change by @aquaherd in https://github.com/89luca89/distrobox/pull/898
  • init: support fish shell for first-password setup in rootful containers
  • init: use "policy" command as a more reliable way to detect missing packages by @guss77 in https://github.com/89luca89/distrobox/pull/1036
  • install: fix infinite loop on next. Fix #891
  • install: forgot to upgrade the version there
  • list: revert 720c388cb43be884d7380fbe88eb2502cf63efc7, remove stats
  • rm: add flags --all/-a to delete all containers. Fix #880
  • rm: do not remove home without asking. Fix #841, Fix #856, Fix #849
  • rm: only prompt to delete home if --rm-home is passed by @AdamIsrael in https://github.com/89luca89/distrobox/pull/896
  • rm: remove --name since never used by @mirkobrombin in https://github.com/89luca89/distrobox/pull/821
  • stop: align flags with rm. Add -a/--all flag. Fix #717, Fix #436
  • stop: make distrobox-stop use default container name if none is supplied by @ricardoseriani in https://github.com/89luca89/distrobox/pull/873
  • upgrade: add a flag to upgrade only running instances by @bubuntux in https://github.com/89luca89/distrobox/pull/823

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.5.0.2...1.6.0

1.5.0.2

10 months ago

Minor bugfix release:

What's Changed

  • Fix typo in instructions for setting podman-host path by @bitestring in https://github.com/89luca89/distrobox/pull/812
  • Fix user initialization for ubuntu 23.04 by @pettermk in https://github.com/89luca89/distrobox/pull/807
  • compatibility: add openEULER and Linux Mint containers
  • fix docker minimum version to 19.03.15. list: use Status instead of State for backward compatibility. Fix #809
  • host-exec: better container detection
  • init: fix host file sync when unsharing network

New Contributors

Full Changelog: https://github.com/89luca89/distrobox/compare/1.5.0.1...1.5.0.2

1.5.0.1

10 months ago

Minor bugfix release:

  • assemble: fix bashism. Fix #803. Fix #806
  • upgrade: revert to using distrobox-enter. Fix #801
  • init: fix bug in init_readlink with relative paths. Fix #805
  • enter/create: improve dry-run output to show a flag for each line. Fix #802

1.5.0

10 months ago

What's Changed

Version 1.5.0 introduces some highlight features like: - additional-packages flag in create, to directly add packages during init - NVidia GPU Support for containers: distrobox will attempt to share host's drivers with the container! - Distroboooox ... ASSEMBLE! New distrobox-assemble command lets you declare your distroboxes-as-code, in an easy config file - Now removing a distrobox, it will un-export apps and binaries exported by it - Init is now more flexible in how it adds packages, allowing for greater compatibility - Init supports now systemd containers using --additional-packages systemd during creation - General reliability improvements, lots of bug fixes and QoL

This release counts 36 contributors, and they count for over 30% of the total commits of the release! :tada: Thanks to everyone helping! :tada:

Full Changelog:

This release Contributors

@BLumia @FarisFiroz @GabMus @Scafir @akinomyoga @alexdesiqueira @anirbandey1 @black-desk @bubuntux @castrojo @cgzones @colorfulmoth @daudix-UFO @dfaggioli @dnkmmr69420 @eagavi @ericcurtin @grisu48 @ian-h-chamberlain @inspectorgadget03 @jamacku @john-ghatas @juhp @kianmeng @ldelossa @luc14n0 @mirkobrombin @misobarisic @mjlbach @mkoura @morganhjk @pavelxdd @pos-ki @sfalken @sonulohani @thorntonmc

Full Changelog: https://github.com/89luca89/distrobox/compare/1.4.2.1...1.5.0