★ Star the repo to support the project!
Nixite generates a bash script to unattendedly install all your Linux software. Nixite automatically configures your system and installs software using the best method available. Nixite tries to suppress confirmation prompts.
Inspired by Ninite, PackagePicker.co
- Debian Stable
- Ubuntu Desktop
- Fedora Workstation
- Arch Linux
On Linux distributions such as Debian or Ubuntu, installing third-party (often proprietary) software isn’t always straightforward. It typically requires several manual steps, such as adding official repositories to your sources.list
, importing GPG keys, and configuring updates. In other words, you can’t always just run sudo apt install google-chrome
.
In addition, many development toolchains deliberately avoid system package managers and instead provide their own installation methods. For example, Rust is best installed using rustup
, which not only manages the compiler itself but also keeps toolchains and dependencies up to date. These custom installers are generally more reliable for keeping third-party software current than relying on distribution-provided packages.
To add a new package, create a file app_name.toml
inside registry/
You can add common instructions for all distros, or separate instructions for each distro.
install_system = "package_name" # uses apt on Ubuntu, pacman on Arch Linux
[ubuntu]
install_system = "package_name_on_apt"
[arch]
install_system = "package_name_on_pacman"
Use search_pkgs.py
to find package names on various Linux distro repositories.
Install Papirus icon theme and run:
python registry.py && prettier -uwu src/*.json
flatpak = true
to install using flatpak, install_system
should be the flathub package name.
snap = "classic"
or snap = true
to install using Snap. install_system
should be the snap name.
install_command = "bash command here..."
for custom installers.
When using this, add a skip_if_exists = "filepath"
to prevent the installer from running again.
Add the package entry <Pkg id="app-name" name="App Name" />
in src/pages/index.astro