All Projects → rusty-snake → fjp

rusty-snake / fjp

Licence: GPL-3.0 license
A handy command line program to work fast and straightforward with firejail profiles.

Programming Languages

rust
11053 projects
shell
77523 projects
Meson
512 projects

Projects that are alternatives of or similar to fjp

firejailed-tor-browser
HOWTO: Firejailed Tor Browser
Stars: ✭ 18 (+20%)
Mutual labels:  firejail
tinfoil
A minimalist tool to manage multiple profiles for web browsers
Stars: ✭ 20 (+33.33%)
Mutual labels:  firejail
torjail
🔒 download, verify & run torbrowser in a sandbox
Stars: ✭ 14 (-6.67%)
Mutual labels:  firejail

Warning: This project is unmaintained, I will not work on it anymore. For questions I will still be there.

Warning: There are known bugs that cause data loss (#67). Do not use.

fjp – firejail-profile

MSRV: 1.57 license: GPL-3.0-or-later maintenance-status: obsolete (as of 2022-12-20)

A handy command line program to work fast and straightforward with firejail profiles.

fjp is a command-line program written in rust, a modern and safe programming language. It allows you to show, edit, compare, disable or remove firejail profiles. And many more features like search, check, sed or merge will come.

Get started

Install prebuild binary

wget -qO- "https://github.com/rusty-snake/fjp/releases/download/v0.3.0/fjp-v0.3.0-x86_64-unknown-linux-musl.tar.xz" | tar -xJf- -C $HOME/.local

Read https://rusty-snake.github.io/fjp/#download for more detailed information.

Build from source

  1. Install build dependencies (rust and meson)
Distro Command(s)
Arch Linux sudo pacman -S rust meson
Debian sudo apt install cargo meson (NOTE: debian stable has likely to old packages)
Fedora sudo dnf install cargo meson
Other curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup-init.sh
bash rustup-init.sh --no-modify-path --profile minimal
pip3 install --user meson

docutils and Pygments are required too if you want to build the manpage.

  1. Clone this repo
$ git clone "https://github.com/rusty-snake/fjp.git"
$ cd fjp
  1. Build and Install
$ meson setup --buildtype=release _builddir
$ meson configure _builddir -Dmanpage=true  # Optional
$ meson compile -C _builddir
$ sudo meson install --no-rebuild -C _builddir
  1. Start using it
$ fjp --help

Examples

Open ~/.config/firejail/firefox.profile in your editor. You will be asked to copy the profile from /etc/firejail if it does not exists yet:

$ fjp edit firefox

Open ~/.config/firejail/firefox.local in your editor:

$ fjp edit firefox.local

Rename ~/.config/firejail to ~/.config/firejail.disabled in order to make firejail only using profiles from /etc/firejail. And revert it:

$ fjp disable --user
$ fjp enable --user

Show firefox and all its includes. Actual firefox.local, globals.local, firefox.profile, firefox-common.local, firefox-common.profile

$ fjp cat firefox

See https://rusty-snake.github.io/fjp/#examples for more examples.

FAQ

1. What does fjp stand for?

firejail-profile, but fjp is faster to type.

2. How can I change the editor?

fjp reads the EDITOR environment-varibale and use /usr/bin/vim as fallback. To use nano as editor, just call EDITOR=nano fjp edit firefox. In order to make this persistent, add EDITOR=nano to your .bashrc.

3. How can I change the log level?

Set the environment-variable RUST_LOG to trace, debug, info (default), warn or error.
Example: $ RUST_LOG=debug fjp …

Changelog

CHANGELOG.md

Contributing

CONTRIBUTING.md

License

GPL-3.0-or-later

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].