boxxy

Redirect application file paths using Linux namespaces.

TLDR

Run application with file redirection rules
$ boxxy [application]
Use custom configuration file
$ boxxy --config [boxxy.yaml] [application]
Add rule at command line
$ boxxy --rule "[rule_name]:~/.config/app:~/.local/share/app" [application]
Scan homedir for rule suggestions
$ boxxy --scan
Run without loading config files
$ boxxy --no-config [application]

SYNOPSIS

boxxy [options] [application] [arguments]

DESCRIPTION

boxxy puts misbehaving Linux applications in a box, forcing them to put their files and directories in the right place without symlinks. It uses Linux namespaces to redirect file operations transparently.The tool is designed to manage applications that create dotfiles or directories in unwanted locations, redirecting them to XDG-compliant paths or other preferred locations.

PARAMETERS

--config file

Use specified configuration file
--rule rule
Add rule at command line (format: name:target:rewrite)
--no-config
Disable loading configuration files
--scan
Scan home directory and suggest rules
-v, --verbose
Enable verbose output
-h, --help
Display help and exit

CONFIGURATION

Rules in boxxy.yaml include:name

User-friendly rule identifier
target
File or directory to shadow
rewrite
Replacement file or directory
mode
Either "directory" or "file" (default: directory)
commands
Optional list of commands the rule applies to

INSTALL

sudo pacman -S boxxy
nix profile install nixpkgs#boxxy

CAVEATS

Requires Linux namespaces support (Linux kernel). Rules must specify mode when the target is a file, especially if the target doesn't exist yet. Project-local boxxy.yaml files and .env files can be loaded automatically.

SEE ALSO

firejail(1), bwrap(1), unshare(1)