- Further changes to configuration structure
- Cleaned up execute_container function.
- Print warning when session retainment is enabled for the console/tty.
- ExecutionArgs no longer requires variables for instantiation.
- Multiple paths or env vars are now specifiable under one
permission/filesystem entry.
- Now passing the arguments --unshare-user and --disable-userns to
bubblewrap
- bin/pacwrap has been deprecated by pacwrap-rust.
Major overhaul of container execution script; bubblewrap containers are now configurable through pacwrap, alongside support for xdg-dbus-proxy
pacwrap-sync: Minor cleanup
pacwrap-common: Changed instance configuration directory from root to instance
pacwrap-common: Generated pacman.conf now includes LogFile entry pointing to pacwrap's log file.
pacwrap-utils: Replication script now supports LINK roots.
pacwrap-utils: Refresh configuration function
pacwrap-ps: Process groups can now be selected via PID with an argument
pacwrap-exec: Forked bwrap processes will now be terminated on exit.
pacwrap-exec: Implemented D-Bus proxy with job control.
pacwrap-exec: Configuration parsers for building bubblewrap containers.
Misceallenous clean up, refactoring, fixes, and optimisations.
pacwrap-sync: Caching of difference between revisions of link stores in memory during transaction.
pacwrap-sync: Only diff between two revisions of a link store if there are changes to the filesystem tree.
pacwrap-sync: Further reduction of log verbosity.
pacwrap-sync: Cleaned up script_init(), implemented proper resolution of specified targets.
pacwrap-sync: Removed pacman-mirrorlist from generated package ignore lists.
pacwrap-common: Changed INSTANCE_DB_DIR to INSTANCE_LC_DIR, and changed location to $PACWRAP_RUNTIME_DIR/hlds.
pacwrap-common: Generated pacman.conf no longer includes CheckSpace with the addition of two NoExtract entries
pacwrap-common: Global variables for root arrays.
pacwrap-common: get_foreign_packages() now caches package list arrays
pacwrap-common: check_root() check for existant root filesystems
pacwrap-utils: Introduction of --desktop-entry option to create desktop entries for applications.
pacwrap-utils: Cleaned up output with --list; introduced --disk-depth, --disk-util, and --disk-sum options.
pacwrap-utils: Size column for --list is no longer displayed without --disk-util.
pacwrap-utils: edit_file() function can now edit pacwrap-associated desktop entries.
pacwrap-utils: Additional human-parsable options.
pacwrap-utils: --delete argument refactored to --remove.
pacwrap-utils: --force option to disable and bypass check_active_instances
pacwrap-utils: --show-bytes option to disable size formatting.
pacwrap-utils: --open function, which allows the user to open the container's filesystem directory in their preferred file manager.
pacwrap-man: No longer display summary when --help=topic is specified.
pacwrap-man: Further documentation efforts.
pacwrap-sync: Optimised container configurator.
pacwrap-sync: Reduced log verbosity.
pacwrap-ps: Fixed direct invocation.
pacwrap-ps: Replaced UTF-8 characters with proper, dynamic escape sequences.
pacwrap-common: Updated pacman_conf() to conform with the changes announced on 16/05/2023.
pacwrap-common: Fixed typo in pacman_conf()
pacwrap-utils: Cleaned up edit_file() function
pacwrap-utils: Fixed file not found errors when editing non-existant file.
pacwrap-utils: Replaced tab with escape sequence.
pacwrap-sync: Don't ask for confirmation unless arguments are otherwise specified for target.
pacwrap-ps: Full process tree enumeration with parent process traversal.
pacwrap-ps: Forking detection no longer relies on runtime metadata stored in $XDG_RUNTIME_DIR.
pacwrap-ps: Proper instance argument algorithm.
pacwrap-ps: -c, --children which invoked the 'Child PIDs' column has been deprecated and removed.
pacwrap-ps: Process list enumeration output code overhauled. Displays child processes in chronological order.
pacwrap-ps: Formatting is no longer applied to non-summary output.
pacwrap-ps: Shell execution warning to notify user of potential errata.
pacwrap-ps: Instance name parsing algorithm.
pacwrap-ps: Removal of time-based runtime metadata check.
pacwrap-ps: Refactored summary to process_status and --summary to --status.
pacwrap-utils: check_active_instances() to verify it is safe to perform dangerous operations on containers.
pacwrap-exec: Runtime configuration replaced with runtime lock.
pacwrap-create; Fixed package install confirmation.
pacwrap-man: Updated to reflect changes in pacwrap-ps, as well as other miscellaneous changes.
pacwrap-sync: Use PACWRAP_PASSTHROUGH_CMD for passthrough to system package manager.
pacwrap-exec: Concurrenct instance limiter. Set $CONCURRENT_LIMIT in container configuration to limit the amount of concurrently running containers.
pacwrap-common: Query PACWRAP_PASSTHROUGH_CMD environment variable to customise passthrough for alternate package management wrapper.
pacwrap-common: CONCURRENT_LIMIT configuration option
pacwrap-ps: process tree enumeration and saved ~4ms of time per process
pacwrap-ps: --enumerate-tree, and --enumerate-bwrap options to enumerate process tree
pacwrap-ps: --arg and --exec arguments which split up arguments and executable columns into two distinct columns.p
pacwrap-ps: Column formatting rework; --wrap will wrap the arguments column. Default behaviour is now to truncate.
pacwrap-ps: Log only -Pk invocations.
pacwrap-ps: Proper long-form process arguments display.
pacwrap-man: Additions and clarifications to documentation.
pacwrap-sync: Fixed order of root amount conditional.
pacwrap-sync: Added $VERBOSITY for foreign database synchronization to sterrout
pacwrap-common: Reverted idiotic mistake.
pacwrap, pacwrap-create, pacwrap-utils: Human parsable --verbose flag.
Replaced all pipes to cut with KSH93 string truncation
pacwrap-ps: Human parsable command switches
pacwrap-ps: Ability to enumerate bubblewrap processes associated with pacwrap
pacwrpa-ps: Abandoned children processes are now enumerated with a warning
pacwrap-man: --help=process documentation
pacwrap-common: Pipe warnings and errors to stderr
pacwrap-sync: -g and -p options to manually invoke container configuration
pacwrap-sync: Setting the environment variable PACWRAP_PASSTHROUGH will passthrough pacwrap-sync parameters to 'sudo pacman' at the end of transaction.
pacwrap-sync: Renamed --explicit to --explicit-foreign to diambiguate and differentiate from pacwrap --explicit
pacwrap: --explicit to passthrough -S, -Q, and -R to pacwrap-exec
pacwrap-exec: -p/--pacman option to execute pacman in specificed instance with stated arguments
pacwrap-common: PACWRAP_PACCACHE_ARGUMENTS variable. It can be set in the environment to override.
pacwrap-man: Updated documentation to reflect current feature sets.
pacwrap-man: Fixed distro_check() to not output garbage when being packaged.
Among other miscallenous fixes and cleanup.
pacwrap: Migrated from process forking to using the bash source command
pacwrap-common: Conditional to only allow one instantiation of this script
pacwrap-common: log_invalid_arguments() and distro_check()
pacwrap-man: Split from pacwrap into its own script
pacwrap-man: Markdown formatting option with man page support
makefile: install/remove pacwrap-man
And other misceallaneous cleanup and fixes.
Code minification resulted in over 100 lines of code shaved off.
pacwrap-ps: Initial commit
pacwrap-ps: Process status list and parsable data output for external shell scripting
pacwrap-ps: Kill process function
pacwrap-exec: runtime metadata written to $XDG_RUNTIME_DIR/.pacwrap/PID
pacwrap-common: XDG runtime variables
pacwrap-common: UID conditional in runtime_check()
pacwrap-utils: Cleaned up column invocation
pacwrap-create: Some miscellaenous cleanup
pacwrap-create: Cleaned up finalise() and introduced sync_base_packages() function
pacwrap-sync: Fixed up and updated check_root function and associated calls
makefile: install & remove pacwrap-ps script
DEP/BASE updated -> structures linked -> DEP updated -> link cache generated
^
Second invocation of invoke_generate_cache would result in previous changes being truncated
This should be fixed with an addition to a conditional statement in invoke_generate_cache()
Additional unrelated changes:
pacwrap-sync: Merged two for loops in configure_containers
- pacwrap-create: Only check for updated tarball when current year.month mismatches
with root.x86_64/version in the tarball
- pacwrap-create: Verify mirror returns HTTP 200
- pacwrap-sync: Fixed log formatting bug with check_root()
- pacwrap-sync: Cleaned up log output and fixed ordering
- makefile: Commited bin/pacwrap-common
-- It actually works this time. "-links +1" parameter was removed in
find, since we're no longer looking for hardlinks specifically. duh
-- Link cache reordered.
-- Miscellaneous refactoring.
-- Output straightend out some, clarity added to verbiage
-- invoke_update_link() and invoke_update_link_list() subroutines optimised
-- invoke_update_link_list() was created to clean up update_link_lists()
-- Rewrote package sorting subroutine to fix a catastrophic bug
-- Reordered pacman.conf generation to occur before package sync
-- Removed pacman.conf edit shorcut in sbexecute
-- Cleaned up code
-- Root dependencies and their hierarchies are automatically resolved.
-- Code cleanup, regular expressions optimised, redundant function
removal, etc.
-- pacman.conf generator now resolves package blacklists through each
dependency in its hierarchy.