refactor: clean up

This commit is contained in:
Mohammad Rafiq 2025-03-12 03:49:11 +08:00
parent 45c4e136c4
commit 630b3ce27b
25 changed files with 195 additions and 210 deletions

View file

@ -35,25 +35,7 @@
} }
{ {
name = "orpheus"; name = "orpheus";
value = nixpkgs.lib.nixosSystem { value = mkSystem "orpheus";
specialArgs = args;
modules = [
inputs.nixos-hardware.nixosModules.raspberry-pi-4
"${nixpkgs}/nixos/modules/profiles/minimal.nix"
./systems/orpheus.nix
home-manager.nixosModules.home-manager
{
home-manager = {
useUserPackages = true;
extraSpecialArgs = args;
users.rafiq.imports = [
./users/rafiq.nix
];
};
}
];
};
} }
]; ];
}; };
@ -61,19 +43,14 @@
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:nixos/nixos-hardware"; nixos-hardware.url = "github:nixos/nixos-hardware";
home-manager.url = "github:nix-community/home-manager"; home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
hyprland.url = "github:hyprwm/Hyprland"; hyprland.url = "github:hyprwm/Hyprland";
yazi.url = "github:sxyazi/yazi"; yazi.url = "github:sxyazi/yazi";
nvf.url = "github:notashelf/nvf"; nvf.url = "github:notashelf/nvf";
nixvim.url = "github:nix-community/nixvim"; nixvim.url = "github:nix-community/nixvim";
nixvim.inputs.nixpkgs.follows = "nixpkgs"; nixvim.inputs.nixpkgs.follows = "nixpkgs";
nixd.url = "github:nix-community/nixd"; nixd.url = "github:nix-community/nixd";
stylix.url = "github:danth/stylix"; stylix.url = "github:danth/stylix";
}; };
} }

View file

@ -1,30 +1,34 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = config,
[ (modulesPath + "/installer/scan/not-detected.nix") lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/e5005ea6-6c5a-4ab3-9767-ce7772582024"; device = "/dev/disk/by-uuid/e5005ea6-6c5a-4ab3-9767-ce7772582024";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" = {
{ device = "/dev/disk/by-uuid/6BBE-0E70"; device = "/dev/disk/by-uuid/6BBE-0E70";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ]; options = ["fmask=0077" "dmask=0077"];
}; };
swapDevices = [ ]; swapDevices = [];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -0,0 +1,6 @@
{
# Use the extlinux boot loader. (NixOS wants to enable GRUB by default)
boot.loader.grub.enable = false;
# Enables the generation of /boot/extlinux/extlinux.conf
boot.loader.generic-extlinux-compatible.enable = true;
}

View file

@ -5,12 +5,11 @@
extraGroups = ["networkmanager" "wheel"]; extraGroups = ["networkmanager" "wheel"];
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILv8HqazE294YdyGaXK6q2EniDlTpGaUL071kk9+W0GJ rafiq@nemesis" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILv8HqazE294YdyGaXK6q2EniDlTpGaUL071kk9+W0GJ rafiq@nemesis"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICbZfOYt6zydLyO4f9JAsxb1i6kHAjYzqa0SOqef6MKM rafiq@orpheus"
]; ];
}; };
security.sudo = { security.sudo.wheelNeedsPassword = false;
wheelNeedsPassword = false;
};
# Enable basic fonts for reasonable Unicode coverage # Enable basic fonts for reasonable Unicode coverage
fonts.enableDefaultPackages = true; fonts.enableDefaultPackages = true;

View file

@ -1,4 +1,8 @@
{ pkgs, config, ... }: { {
pkgs,
config,
...
}: {
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
nerd-fonts.terminess-ttf nerd-fonts.terminess-ttf
]; ];

View file

@ -1,5 +1,5 @@
{ pkgs, ... }: { {pkgs, ...}: {
services.xserver.videoDrivers = [ "nvidia" ]; services.xserver.videoDrivers = ["nvidia"];
hardware.graphics = { hardware.graphics = {
enable = true; enable = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [

View file

@ -8,8 +8,6 @@
]; ];
networking = { networking = {
# Enable networkManager
# TODO: Look into the networkManager options.
networkmanager.enable = true; networkmanager.enable = true;
# Configures a simple stateful firewall. # Configures a simple stateful firewall.
@ -37,6 +35,5 @@
]; ];
}; };
# TODO: look into openssh and tailscale settings.
services.openssh.enable = true; services.openssh.enable = true;
} }

View file

@ -1,4 +1,8 @@
{ inputs, pkgs, ... }: { {
inputs,
pkgs,
...
}: {
programs.uwsm = { programs.uwsm = {
enable = false; enable = false;
}; };

View file

@ -1,4 +1,4 @@
{ inputs, ... }: { {inputs, ...}: {
imports = [ imports = [
inputs.stylix.nixosModules.stylix inputs.stylix.nixosModules.stylix
./themes/catppuccin.nix ./themes/catppuccin.nix

View file

@ -1,3 +1,3 @@
{ pkgs, ... }: { {pkgs, ...}: {
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
} }

View file

@ -3,15 +3,13 @@
./hw-nemesis.nix ./hw-nemesis.nix
./modules/bootloaders/systemd-boot.nix ./modules/bootloaders/systemd-boot.nix
./modules/common.nix ./modules/common.nix
./modules/desktop.nix
./modules/hardware/nvidia.nix ./modules/hardware/nvidia.nix
./modules/networking.nix ./modules/networking.nix
./modules/desktop.nix
./modules/stylix.nix ./modules/stylix.nix
]; ];
networking.hostName = "nemesis"; networking.hostName = "nemesis";
boot.binfmt.emulatedSystems = ["wasm32-wasi" "x86_64-windows" "aarch64-linux"];
system.stateVersion = "24.11"; system.stateVersion = "24.11";
boot.binfmt.emulatedSystems = ["wasm32-wasi" "x86_64-windows" "aarch64-linux"];
} }

View file

@ -1,25 +1,14 @@
{ {inputs, ...}: {
config,
lib,
pkgs,
...
}: {
imports = [ imports = [
# Include the results of the hardware scan.
./hw-orpheus.nix ./hw-orpheus.nix
./modules/bootloaders/extlinux.nix
./modules/common.nix ./modules/common.nix
./modules/networking.nix
./modules/stylix.nix
inputs.nixos-hardware.nixosModules.raspberry-pi-4
"${inputs.nixpkgs}/nixos/modules/profiles/minimal.nix"
]; ];
# Use the extlinux boot loader. (NixOS wants to enable GRUB by default) networking.hostName = "orpheus";
boot.loader.grub.enable = false;
# Enables the generation of /boot/extlinux/extlinux.conf
boot.loader.generic-extlinux-compatible.enable = true;
networking.hostName = "orpheus"; # Define your hostname.
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
services.openssh.enable = true;
networking.firewall.enable = false;
system.stateVersion = "25.05"; system.stateVersion = "25.05";
} }

View file

@ -2,10 +2,10 @@
fonts = { fonts = {
fontconfig = { fontconfig = {
enable = true; enable = true;
defaultFonts.emoji = [ "Terminess Nerd Font" ]; defaultFonts.emoji = ["Terminess Nerd Font"];
defaultFonts.monospace = [ "Terminess Nerd Font Mono" ]; defaultFonts.monospace = ["Terminess Nerd Font Mono"];
defaultFonts.sansSerif = [ "Terminess Nerd Font" ]; defaultFonts.sansSerif = ["Terminess Nerd Font"];
defaultFonts.serif = [ "Terminess Nerd Font" ]; defaultFonts.serif = ["Terminess Nerd Font"];
}; };
}; };
} }

View file

@ -1,4 +1,8 @@
{ config, lib, ... }: { {
config,
lib,
...
}: {
home.sessionVariables.NIXOS_OZONE_WL = "1"; home.sessionVariables.NIXOS_OZONE_WL = "1";
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;

View file

@ -1,4 +1,4 @@
{ inputs, ... }: { {inputs, ...}: {
imports = [ imports = [
inputs.nixvim.homeManagerModules.nixvim inputs.nixvim.homeManagerModules.nixvim
./nixvim/conform-nvim.nix # formatter ./nixvim/conform-nvim.nix # formatter
@ -54,8 +54,7 @@
silent = true; silent = true;
}; };
} }
]; ];
clipboard.providers.wl-copy.enable = true; clipboard.providers.wl-copy.enable = true;
}; };

View file

@ -19,7 +19,10 @@
view = { view = {
cursorline = true; cursorline = true;
side = "right"; side = "right";
width = { min = "25%"; max = "25%"; }; width = {
min = "25%";
max = "25%";
};
}; };
}; };
}; };

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: { {pkgs, ...}: {
# Terminal Multiplexing # Terminal Multiplexing
programs.tmux = { programs.tmux = {
enable = true; enable = true;
@ -26,7 +26,7 @@
# inherit environment variables from outside so that we can use wl-copy etc # inherit environment variables from outside so that we can use wl-copy etc
setenv -g WAYLAND_DISPLAY "$WAYLAND_DISPLAY" setenv -g WAYLAND_DISPLAY "$WAYLAND_DISPLAY"
setenv -g XDG_RUNTIME_DIR "$XDG_RUNTIME_DIR" setenv -g XDG_RUNTIME_DIR "$XDG_RUNTIME_DIR"
''; '';
}; };
} }

View file

@ -1,4 +1,8 @@
{ inputs, pkgs, ... }: { {
inputs,
pkgs,
...
}: {
programs.yazi = { programs.yazi = {
enable = true; enable = true;
package = inputs.yazi.packages.${pkgs.system}.default; package = inputs.yazi.packages.${pkgs.system}.default;

View file

@ -1,12 +1,10 @@
{ pkgs, ... }: { {pkgs, ...}: {
home.packages = [ home.packages = [
(pkgs.writers.writePython3Bin "git-extract" { (pkgs.writers.writePython3Bin "git-extract" {
libraries = with pkgs.python3Packages; [ libraries = with pkgs.python3Packages; [
magic magic
chardet chardet
]; ];
} (builtins.readFile ./git-extract.py)) } (builtins.readFile ./git-extract.py))
(pkgs.writeShellScriptBin "rebuild" (builtins.readFile ./rebuild.sh)) (pkgs.writeShellScriptBin "rebuild" (builtins.readFile ./rebuild.sh))

View file

@ -1,5 +1,4 @@
{pkgs, ...}: { {pkgs, ...}: {
home.packages = with pkgs; [ home.packages = with pkgs; [
fastfetch # system info fastfetch # system info
wl-clipboard # provides cli copy and paste commands wl-clipboard # provides cli copy and paste commands

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: { {pkgs, ...}: {
imports = [ imports = [
./modules/sh.nix ./modules/sh.nix
./modules/de.nix ./modules/de.nix