Overview

Layout

  • flake.nix base of the configuration
  • hosts per-host configurations that contain machine specific configurations
    • desktop Desktop specific configuration
    • laptop Laptop specific configuration
    • vm VM specific configuration
  • modules modularized NixOS configurations
  • pkgs Packages Build from source
  • wallpapers wallpapers collection

Installation

Caution

Applying custom configurations, especially those related to your operating system, can have unexpected consequences and may interfere with your system's normal behavior. While I have tested these configurations on my own setup, there is no guarantee that they will work flawlessly for you. I am not responsible for any issues that may arise from using this configuration.

Note

It is highly recommended to review the configuration contents and make necessary modifications to customize it to your needs before attempting the installation.

1. Install NixOs

First install nixos using any graphical ISO image.

Note

Only been tested using the Gnome graphical installer and choosing the No desktop option durring instalation.

2. Clone the repo

nix-shell -p git
git clone https://github.com/luravoid/nixos-config
cd nixos-config

3. Install script

Caution

For some computers, the default rebuild command might get stuck due to CPU cores running out of RAM. To fix that modify the install script line: sudo nixos-rebuild switch --flake .#${HOST} to sudo nixos-rebuild switch --cores <less than your max number of cores> --flake .#${HOST}

Tip

As it is better to know what a script does before running it, you are advised to read it or at least see the Install script walkthrough section before execution.

Execute and follow the installation script :

./install.sh

4. Reboot

After rebooting, the config should be applied, you'll be greeted by hyprlock prompting for your password.

5. Manual config

  • Enable Discord theme (in Discord settings under VENCORD > Themes).
  • Configure the browser (all browser configuration is done manually).
  • Change the git account information in ./modules/home/git.nix
programs.git = {
   ...
   userName = "user";
   userEmail = "e-mail";
   ...
};

Install script walkthrough

A brief walkthrough of what the install script does.

1. Get username

You will receive a prompt to enter your username, with a confirmation check.

2. Set username

The script will replace all occurancies of the default usename CURRENT_USERNAME by the given one stored in $username

3. Create basic directories

The following directories will be created:

  • ~/Music
  • ~/Documents
  • ~/Pictures/wallpapers/nixos

4. Copy the wallpapers

Then the wallpapers will be copied into ~/Pictures/wallpapers/

5. Get the hardware configuration

It will also automatically copy the hardware configuration from /etc/nixos/hardware-configuration.nix to ./hosts/${host}/hardware-configuration.nix so that the hardware configuration used is yours and not the default one.

6. Choose a host (desktop / laptop)

Now you will need to choose the host you want. It depend on whether you are using a desktop or laptop (or a VM altho it can be realy buggy).

7. Build the system

Lastly, it will build the system, which includes both the flake config and home-manager config.

Credits