7 Commits

6 changed files with 62 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": 1767048910,
"narHash": "sha256-KLFTeA/xquN+F3XHLAXcserk0L0nijbhzuldxNDF1eE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "61fcc9de76b88e55578eb5d79fc80f2b236df707",
"rev": "d99b4ca5debaa082c7d76015aa2b7f3fc7e8b5f7",
"type": "github"
},
"original": {
@@ -43,11 +43,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1766070988,
"narHash": "sha256-G/WVghka6c4bAzMhTwT2vjLccg/awmHkdKSd2JrycLc=",
"lastModified": 1766902085,
"narHash": "sha256-coBu0ONtFzlwwVBzmjacUQwj3G+lybcZ1oeNSQkgC0M=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c6245e83d836d0433170a16eb185cefe0572f8b8",
"rev": "c0b0e0fddf73fd517c3471e546c0df87a42d53f4",
"type": "github"
},
"original": {
@@ -66,11 +66,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1766273987,
"narHash": "sha256-Y8hL2zGyt7xn5J1V806GJ9tMEk6NgVlU7xe4dS4fThE=",
"lastModified": 1767002962,
"narHash": "sha256-HGFRwMRUwt56E+SiVX9YQOzpOwHy0/rtEqMoEbkF8Yg=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "ff00fe1512dfcb31b01d770738de9299b434449b",
"rev": "63c957603751f0a107c4d9c2cbaff1c8749fc9f1",
"type": "github"
},
"original": {
@@ -86,11 +86,11 @@
]
},
"locked": {
"lastModified": 1766317205,
"narHash": "sha256-PYlMsenwZCG5TrxQSyTraPw8WQwk4FGnbyFdFMuAeYA=",
"lastModified": 1767099893,
"narHash": "sha256-Z39jG7z4XD+H2KPSgWR0rQS3di1mTblRI5kyqcL3g7w=",
"owner": "noctalia-dev",
"repo": "noctalia-shell",
"rev": "51aa9fe16b0cc0dc4daa7c447843b36923434f2e",
"rev": "015ff66fbd85abda4573d864466ecf9fc64f233b",
"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

@@ -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" ];