β οΈ This project although convenient, it's too unreliable. Please use Nixpkgs instead.
OS bootstrap-system/dotfiles-manager framework that SuperB
SuperB Bootstrap is a SuperB OS bootstrap-system/dotfiles-manager framework that can be installed with just one command on a new *NIX
system installation.
- Super portable, work on almost any
*NIX
operating system, you don't need to install anything before the installation process- Don't know anything about
git
? Dont't worry, SBB dotfiles can be host via Nextcloud, Google drive or Dropbox...
- Don't know anything about
- Super organized file structure to config and share
- Super easy to setup and install:
- You can even install your dotfiles with just one command from a new
*NIX
system installation
- You can even install your dotfiles with just one command from a new
- Super flexible with one config, you can bootstrap cross-platform. Supported package managers are:
First generate using this template, or if you want, you can setup manually:
If you manage your dotfiles with git
, run the following commands:
mkdir -p ~/dotfiles/home ~/dotfiles/root ~/dotfiles/extra
curl -fsSL https://raw.githubusercontent.com/NNBnh/superb-bootstrap-template/main/packageslist --create-dirs --output ~/dotfiles/packageslist
curl -fsSL https://raw.githubusercontent.com/NNBnh/superb-bootstrap-template/main/setup --create-dirs --output ~/dotfiles/setup
cd ~/dotfiles
git submodule add https://github.com/NNBnh/superb-bootstrap.git ./extra/sbb
git submodule add https://github.com/NNBnh/bsymlink.git ./extra/bsymlink
if not, run the following commands:
mkdir -p ~/dotfiles/home ~/dotfiles/root ~/dotfiles/extra
curl -fsSL https://raw.githubusercontent.com/NNBnh/superb-bootstrap-template/main/packageslist --create-dirs --output ~/dotfiles/packageslist
curl -fsSL https://raw.githubusercontent.com/NNBnh/superb-bootstrap-template/main/setup --create-dirs --output ~/dotfiles/setup
curl -fsSL https://raw.githubusercontent.com/NNBnh/superb-bootstrap/master/sbb --create-dirs --output ~/dotfiles/extra/sbb/sbb
curl -fsSL https://raw.githubusercontent.com/NNBnh/bsymlink/main/bin/bsymlink --create-dirs --output ~/dotfiles/extra/bsymlink/bin/bsymlink
Note: if you don't use Git, you have to manually update SBB and Bsymlink by running the last two commands.
The file structure will looks like this:
dotfiles/
ββ home/ # Symlink to home (add anything like .config/ or .local/ that you what to bootstrap here)
ββ root/ # Symlink to root (same with this directory but it will be symlink to '/' directory)
ββ extra/ # Other files that you want to backup or store but don't want to symlink
β ββ sbb/... # This contain the script file to bootstrap
β ββ bsymlink/... # This contain the symlink tool
ββ packageslist # Packages list
ββ setup # Setup script
Next, customizing your your dotfiles:
- Move everything you want to backup in
home/
androot/
- Add packages to
packageslist
(see example) - Config the
setup
scripts (see example)
Remember to make
setup
executable:chmod +x ~/dotfiles/setup
Finally store or upload your dotfiles to a safe place.
To install your dotfiles, put the dotfiles to the desired location then execute setup
file.
For example if you store your dotfiles on Github, first download it:
git clone https://github.com/yourname/dotfiles.git
cd
to dotfiles
:
cd dotfiles
Then execute the setup
file:
./setup
You can install your dotfiles with just one command:
git clone https://github.com/yourname/dotfiles.git && ./dotfiles/setup
Special thanks to:
- Xfzv for many bug reports and suggestions
- Obyyx for fixing paru's flags
- LoricAndre for the great design suggestion and make Paru upgrade AUR packages on bootstrap
- Simon Weiss for most of bugs fix, improvement to 1.7.3, and more...
- Package managers supported:
- Xfzv for Portage and Zypper supported
- Kraileth for PKG NG supported
- Miko for OpenBSD PKG and PKG IN supported
- Justin for Slack PKG supported
- Laffer1 for Mports supported
- Andrea VelΓ‘squez for MacPorts and MAS supported
- LoricAndre for PIP and NPM supported
get-pip
from Python Packaging Authority for theget-pip.py
script- Carbon from @carbon_app to create the banner
Made with β€οΈ by NNB