Experimental NixOS repo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Benjamin Bädorf f114983d70 Fix virtualisation 4 minutes ago
compat Add compat layer, update readme 1 week ago
src Fix virtualisation 4 minutes ago
.drone.yml Another update to drone yml file 1 week ago
.gitignore Add compat layer, update readme 1 week ago
LICENSE ISO initial commit 4 weeks ago
README.md Add compat layer, update readme 1 week ago
configuration.nix Back to old config 4 days ago
flake.lock Add manix and 'no' alias 24 hours ago
flake.nix Dynamic names workg 4 weeks ago
hardware-configuration.nix Fix search 3 weeks ago
install.sh Fix install script for pub-solar 1 week ago
niximg.nix Remove gnome and X11, move ISO to sway 3 weeks ago
sync.sh ISO initial commit 4 weeks ago

README.md

PubSolarOS

Build Status

A fully automated replicable nixos configuration flake that provides re-usable modules, and pre-configured system configuration.

Features

  • A customized LiveCD ISO that you can try environment out and speed up your installation!
  • Full-disk encryption including /boot. Support hibernate.
  • An almost automated one-liner installation script.
  • CapsLock as Ctrl!
  • zsh with oh-my-zsh builtin, in addition to a git plugin which makes your life easier.
  • A keyboard-oriented system, with sway, alacritty, a launcher, and more.

How do I install pre-configured system configuration?

Download and boot in customized LiveCD, and then:

sudo install-script

If you are on a NVMe SSD, use sudo install-script -n instead.

Follow the instructions and you should end up with a running system. Above installation script will automatically install a generic configuration. You will get the chance to update parts of this configuration before installation.

Security details

As for us, we are on our best to ensure that the system is convenient to use and secure. But here are some concerns:

  • services.fstrim.enable is set to true which means that attacker may be able to perceive the data usage of the fully encrypted disk.
  • There is a keyfile added to / partition encryption in order to eliminate the twice keying in of the LUKS passphrase.

How do I re-use and change parts of it?

The configuration is done modularly. Check out src/modules to see some of them. In your configuration.nix, you can set configuration options that will enable or disable these modules. Use the following command to see different kinds of configuration options:

❯ nixos-option pub-solar.sway -r -I nixpkgs=./compat
pub-solar.sway.enable = true;

You can change the option you want to see:

❯ nixos-option pub-solar.x-os -r -I nixpkgs=./compat
pub-solar.x-os.binaryCaches = [ ];
pub-solar.x-os.enable = true;
pub-solar.x-os.enableBoot = true;
pub-solar.x-os.enableSwap = true;
pub-solar.x-os.extraPackages = null;
pub-solar.x-os.hostname = "chocolatebar";
pub-solar.x-os.isoMode = false;
pub-solar.x-os.iwdConfig = null;
pub-solar.x-os.publicKeys = [ "dram.cachix.org-1:baoy1SXpwydKbqdTbfKGTKauDDeDlHhUpC+QuuILEMY=" ];

See also

  • netkit.nix flake: Verstile tools for advanced networking scenarios in NixOS, including Clash, wifi-to-wifi hotspot, on demand minecraft server, frpc modules.
  • std: Standard library used by my flakes.
  • iceberg: My personal package collection. Currently, it includes Wolfram Engine package and modules.

Acknowledgments

Thanks to following repositories: