Boxxy (Fallsensitive) ist ein Werkzeug, um Linux-Anwendungen schlecht zu dopfen und sie zu zwingen, ihre Dateien und Verzeichnisse ohne Symlinks an der richtigen Stelle zu setzen!
Boxxy ist Teil des Amyware Discord Servers.
Wenn Ihnen das gefällt, was ich mache, sollten Sie mich auf Patreon unterstützen:
Nur Linux! Boxxy verwendet Linux -Namespaces für seine Funktionalität.
Betrachten Sie zum Beispiel TMUX. Es möchte seine Konfiguration in ~/.tmux.conf
einfügen. Mit Boxxy können Sie seine Konfiguration stattdessen in ~/.config/tmux/tmux.conf
einfügen:
# ~/.config/boxxy/boxxy.yaml
rules :
- name : " redirect tmux config from ~/.tmux.conf to ~/.config/tmux/tmux.conf "
target : " ~/.tmux.conf "
rewrite : " ~/.config/tmux/tmux.conf "
mode : " file "
Ich bin aus gesundheitlichen Gründen eine Pause von der Aufrechterhaltung von Open-Source-Projekten. PRs werden immer noch akzeptiert und Probleme werden immer noch untersucht, aber es gibt keine Versprechen darüber, wann dies passieren wird.
Ich musste kürzlich die AWS CLI benutzen. Es möchte Daten in ~/.aws
speichern, aber ich möchte nicht, dass es nur mein $HOME
überlastet, wie es will. Mit Boxxy lässt ich es zwingen, seine Daten irgendwo schön und richtig zu machen.
0.5.0
: Boxxy kann Ihr Homedir scannen, um automatisch Regeln für Sie vorzuschlagen!0.6.0
: Boxxy kann project- boxxy.yaml
Dateien verwenden und .env
Dateien für Sie laden!0.6.1
: Boxxy -Regeln können Env -Vars injizieren:0.7.2
: Boxxy kann den BoxXed -Prozess mit der Flagge --daemon
in den Hintergrund geben.0.8.0
: Boxxy kann Regeln an der Befehlszeile mit --rule
übergeben und das Laden von Konfigurationsdateien mit --no-config
deaktivieren.0.8.2
: Erklären Sie, wie Sie Appimages ordnungsgemäß ausführen:git:(mistress) | ▶ cat ~ /.config/boxxy/boxxy.yaml
rules:
- name: " Store AWS CLI config in ~/.config/aws "
target: " ~/.aws "
rewrite: " ~/.config/aws "
git:(mistress) | ▶ boxxy aws configure
INFO boxxy > loaded 1 rules
INFO boxxy::enclosure > applying rule ' Store AWS CLI config in ~/.config/aws '
INFO boxxy::enclosure > redirect: ~ /.aws - > ~ /.config/aws
INFO boxxy::enclosure > boxed " aws " ♥
AWS Access Key ID [ **************** d]: a
AWS Secret Access Key [ **************** c]: b
Default region name [b]: c
Default output format [a]: d
git:(mistress) | ▶ ls ~ /.aws
git:(mistress) | ▶ ls ~ /.config/aws
config credentials
git:(mistress) | ▶ cat ~ /.config/aws/config
[default]
region = c
output = d
git:(mistress) | ▶
alias aws="boxxy aws"
(wiederholen Sie für andere Tools) Boxxy erfordert eine Funktion von newuidmap
, die in allen Verteilungen nicht standardmäßig enthalten ist. Zu installieren:
Alpin:
$ apk add shadow-uidmap
Debian / Ubuntu:
$ apt install uidmap
Rhel / Fedora:
$ yum install shadow-utils
Die Boxxy -Konfigurationsdatei lebt in ~/.config/boxxy/boxxy.yaml
. Wenn keiner existiert, wird ein leeres für Sie erstellt.
rules :
# The name of the rule. User-friendly name for your reference
- name : " redirect aws-cli from ~/.aws to ~/.config/aws "
# The target of the rule, ie the file/directory that will be shadowed by the
# rewrite.
target : " ~/.aws "
# The rewrite of the rule, ie the file/directory that will be used instead of
# the target.
rewrite : " ~/.config/aws "
- name : " use different k8s configs when in ~/Projects/my-cool-startup "
target : " ~/.kube/config "
rewrite : " ~/Projects/my-cool-startup/.kube/config "
# The context for the rule. Any paths listed in the context are paths where
# this rule will apply. If no context is specified, the rule applies
# globally.
context :
- " ~/Projects/my-cool-startup "
# The mode of this rule, either `directory` or `file`. `directory` is the
# default. Must be specified for the correct behaviour when the target is a
# file. Required because the target file/directory may not exist yet.
mode : " file "
# The list of commands that this rule applies to. If no commands are
# specified, the rule applies to all programs run with boxxy.
only :
- " kubectl "
rules :
- name : " any valid string " # required
target : " path " # required
rewrite : " path " # required
context : # optional
- " path "
- " path "
mode : " directory | file " # optional
only : # optional
- " binary name "
- " binary name "
env : # optional
KEY : " value "
pre-commit install
cargo build
cargo run -- ls -lah ~/.config
/
an TMP-Verzeichnis/
rofixtures/helloworld-appimage-x86_84.AppImage
: https://github.com/clonedrepos/hello-world-appimage