Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rusty-snake/fjp
A handy command line program to work fast and straightforward with firejail profiles.
https://github.com/rusty-snake/fjp
firejail firejail-profiles fjp
Last synced: 3 months ago
JSON representation
A handy command line program to work fast and straightforward with firejail profiles.
- Host: GitHub
- URL: https://github.com/rusty-snake/fjp
- Owner: rusty-snake
- License: gpl-3.0
- Created: 2020-05-04T16:56:49.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T10:49:56.000Z (almost 2 years ago)
- Last Synced: 2023-03-06T18:55:35.650Z (almost 2 years ago)
- Topics: firejail, firejail-profiles, fjp
- Language: Rust
- Homepage:
- Size: 337 KB
- Stars: 15
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: COPYING
Awesome Lists containing this project
README
> **Warning**: This project is unmaintained, I will not work on it anymore. For [questions](https://github.com/rusty-snake/fjp/discussions) I will still be there.
> **Warning**: There are known bugs that cause data loss ([#67](https://github.com/rusty-snake/fjp/issues/67)). Do not use.
fjp – firejail-profile
======================[![](https://github.com/rusty-snake/fjp/workflows/Rust%20CI/badge.svg)](https://github.com/rusty-snake/fjp/actions?query=workflow%3A%22Rust+CI%22+event%3Apush+branch%3Amaster)
![MSRV: 1.57](https://img.shields.io/badge/MSRV-1.57-blue.svg?logo=rust)
[![license: GPL-3.0-or-later](https://img.shields.io/static/v1?label=license&message=GPL-3.0-or-later&color=darkred&logo=gnu)](COPYING)
[![maintenance-status: obsolete (as of 2022-12-20)](https://img.shields.io/badge/maintenance--status-obsolete_%28as_of_2022--12--20%29-red)](https://gist.github.com/rusty-snake/574a91f1df9f97ec77ca308d6d731e29)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
```bash
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](https://www.rust-lang.org/tools/install) and
[meson](https://mesonbuild.com/Getting-meson.html))| 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](https://pypi.org/project/docutils/) and [Pygments](https://pypi.org/project/Pygments/) are required too if you want to build the manpage.
2. Clone this repo
```
$ git clone "https://github.com/rusty-snake/fjp.git"
$ cd fjp
```3. 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
```4. 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 --userShow firefox and all its includes. Actual firefox.local, globals.local, firefox.profile, firefox-common.local, firefox-common.profile
$ fjp cat firefox
See 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](CHANGELOG.md)
Contributing
------------[CONTRIBUTING.md](CONTRIBUTING.md)
License
-------[GPL-3.0-or-later](COPYING)