12 Commits

9 changed files with 70 additions and 22 deletions

View File

@@ -1,10 +1,10 @@
# 0x29a nixos config
My personal nixos configuration files.
My personal nixos configuration files for different environments.
## basic system installation
- The installations in this repository are always luks encrypted
- The installations presented in this repository are always luks encrypted
- For simplicity I'm using device labels rather than uuids
1. the partitioning layout should look somewhat like this after the installation
@@ -111,8 +111,24 @@ $ sudo nixos-rebuild --install-bootloader switch --flake .#host_name
$ cd /path/to/repo
$ sudo nix flake update
$ sudo nixos-rebuild switch --flake .#host_name
$ sudo nix-collect-garbage
```
## how to use nix-helper
The tool nix-helper is installed by this configuration. It simplifies administrating nixos and adds more output to the rebuild command. It also features a diff after a successful build. The command uses the `NH_FLAKE` environment variable to be able to run from whatever directory.
Basic commands with a set `NH_FLAKE` variable are:
```bash
$ nh os switch
$ nh os build
$ nh os test
$ nh clean all --keep 5
```
There is also the option to interface with home-manager by using `nh home switch`but this isn't necessary since home-manager is imported as a module in this config.
## author
aaron <aaron@0x29a.ch>

24
flake.lock generated
View File

@@ -28,11 +28,11 @@
]
},
"locked": {
"lastModified": 1766282146,
"narHash": "sha256-0V/nKU93KdYGi+5LB/MVo355obBJw/2z9b2xS3bPJxY=",
"lastModified": 1767907949,
"narHash": "sha256-ihO/8Dx1sz0XbXSg0bHp8+9sEB3G/StAzyrB6GPqDd4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "61fcc9de76b88e55578eb5d79fc80f2b236df707",
"rev": "b1b1c68033840553f47f49e994b27a7d5dafa5e1",
"type": "github"
},
"original": {
@@ -43,11 +43,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1766070988,
"narHash": "sha256-G/WVghka6c4bAzMhTwT2vjLccg/awmHkdKSd2JrycLc=",
"lastModified": 1767767207,
"narHash": "sha256-Mj3d3PfwltLmukFal5i3fFt27L6NiKXdBezC1EBuZs4=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c6245e83d836d0433170a16eb185cefe0572f8b8",
"rev": "5912c1772a44e31bf1c63c0390b90501e5026886",
"type": "github"
},
"original": {
@@ -66,11 +66,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1766273987,
"narHash": "sha256-Y8hL2zGyt7xn5J1V806GJ9tMEk6NgVlU7xe4dS4fThE=",
"lastModified": 1767906546,
"narHash": "sha256-AoSWS8+P+7hQ/jIdv0wBjgH1MvnerdWBFXO4GV3JoQs=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "ff00fe1512dfcb31b01d770738de9299b434449b",
"rev": "7eb8f36f085b85a2aeff929aff52d0f6aa14e000",
"type": "github"
},
"original": {
@@ -86,11 +86,11 @@
]
},
"locked": {
"lastModified": 1766317205,
"narHash": "sha256-PYlMsenwZCG5TrxQSyTraPw8WQwk4FGnbyFdFMuAeYA=",
"lastModified": 1767907466,
"narHash": "sha256-uUAG4C5VOfqiuIpXELxKaAnoZO30n77oGexuPrlUM74=",
"owner": "noctalia-dev",
"repo": "noctalia-shell",
"rev": "51aa9fe16b0cc0dc4daa7c447843b36923434f2e",
"rev": "9fc7a597eb905b5d83235f71a4269c1d938634c3",
"type": "github"
},
"original": {

View File

@@ -1,5 +1,5 @@
{
description = "0x29a ecosystem NixOS flake";
description = "0x29a NixOS flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
@@ -28,8 +28,6 @@
./hosts/default/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.aaron.imports = [
nixvim.homeModules.nixvim
@@ -47,8 +45,6 @@
./hosts/neon/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.aaron.imports = [
nixvim.homeModules.nixvim

View File

@@ -4,10 +4,10 @@
imports = [
../../modules/nixos/audio.nix
../../modules/nixos/bootloader.nix
../../modules/nixos/compositor.nix
../../modules/nixos/gnupg.nix
../../modules/nixos/locales.nix
../../modules/nixos/networking.nix
../../modules/nixos/niri.nix
../../modules/nixos/noctalia.nix
../../modules/nixos/openssh.nix
../../modules/nixos/packages.nix

View File

@@ -9,6 +9,8 @@
dnsutils
ethtool
file
fwupd
fwupd-efi
ghostty
git
imagemagick
@@ -31,6 +33,7 @@
pciutils
sddm-astronaut
socat
sof-firmware
strace
sysstat
tree

View File

@@ -5,5 +5,6 @@
services = {
tuned.enable = true;
upower.enable = true;
fwupd.enable = true;
};
}

View File

@@ -1,8 +1,36 @@
{ config, lib, pkgs, ... }:
{
# use flakes and nix command
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nix = {
# nix settings
settings = {
# enable flakes and nix-command
experimental-features = [ "nix-command" "flakes" ];
# auto-optimize my nix-store
auto-optimise-store = true;
# use all cores
max-jobs = "auto";
# use all available cores per job
cores = 0;
# add trusted substituters (binary caches)
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
];
# add keys
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
};
# enable automatic garbage collection
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 7d";
};
};
# links /libexec from derivations to /run/current-system/sw
environment.pathsToLink = [ "/libexec" ];

View File

@@ -10,6 +10,10 @@
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
# add proton-glorious-eggroll
extraCompatPackages = with pkgs; [
proton-ge-bin
];
};
# fix black screen in steam when using xwayland-satellite