Welcome to NixBook, a repository where I share my NixOS and home-manager configuration files for my EliteBook 865 G10.
- Tmpfs as root & home: Automatically erases the root (
/) and home (/home) on each boot, ensuring a clean state. Persistent data is managed by the Impermanence module (See tmpfs as root and tmpfs as home for more details). - Encrypted single Btrfs partition: LUKS enhances security by adding password protection to the disk. Btrfs also supports easy snapshot backups.
- Declarative disk partitioning: eliminates the need for manual partitioning, mounting, and unmounting during the installation phase
- Efficient Desktop Environment: Optimized for productivity with minimal distractions, featuring only essential visual elements. It supports an automatic switch between light and dark themes.
- Theorem proving toolchains in PL research:
abella,coq,lngenandotttoolchain stuff. Packages maintained by me:nixpkgs:lngennur.repos.chen: forked version ofabella(abella-modded) andott(ott-sweirich)
To install the Nixbook configurations on your system, start by booting your computer with a LiveCD. Once you have successfully booted into the LiveCD environment, open a terminal and enter:
git clone https://github.com/cu1ch3n/nixbook
cd nixbook/script
chmod +x ./install.sh
./install.shIMPORTANT NOTE: If you are not me and your hardware is not EliteBook 865 G10, please avoid using ./install.sh directly. Instead, consider adapting the configurations to suit your own hardware and needs. You'll likely need to make adjustments in several very personal places:
scripts/disko.nix: Update the disk device, partitions, and the path to password files.nixos/hardware.nix: Generate an initial hardware configuration withnixos-generate-configand carefully replace the settings accordingly.nixos/user.nix: Replace the username if it's not "Chen."nixos/secrets.nix: Replace the username.home-manager/home.nix: Replace the username.home-manager/dotfiles/default.nix: Comment out the configuration unless you're using the same monitor setup.home-manager/programs/git.nix: Update your Git settings as needed.
After the installation, there are a few settings that need to be configured manually. These settings are not managed declaratively through NixOS:
- Set user fingerprint
- 1Password SSH & CLI integration
- Doom Emacs (git clone and install)
just rebuildjust update





