mirror of
https://github.com/harryssecret/homelab-nix.git
synced 2025-08-08 06:30:18 +02:00
Compare commits
2 commits
7ca03bacd4
...
1251054fd6
Author | SHA1 | Date | |
---|---|---|---|
1251054fd6 | |||
4d7601861d |
6 changed files with 154 additions and 92 deletions
90
flake.lock
generated
90
flake.lock
generated
|
@ -128,11 +128,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738453229,
|
||||
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
|
||||
"lastModified": 1740872218,
|
||||
"narHash": "sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
|
||||
"rev": "3876f6b87db82f33775b1ef5ea343986105db764",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -150,11 +150,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1736143030,
|
||||
"narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=",
|
||||
"lastModified": 1738453229,
|
||||
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de",
|
||||
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -188,11 +188,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737465171,
|
||||
"narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
|
||||
"lastModified": 1740870877,
|
||||
"narHash": "sha256-LWDIJvKWMW0tiih1jTcAK0ncTi3S9IF3gOhpCT1ydik=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
|
||||
"rev": "25d4946dfc2021584f5bde1fbd2aa97353384a95",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -232,11 +232,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738237977,
|
||||
"narHash": "sha256-oJN/yvRL7G0WlR/hTkQIjFbPkzCV+sFnNB/38Tb9RL4=",
|
||||
"lastModified": 1739595404,
|
||||
"narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "hercules-ci-effects",
|
||||
"rev": "6d1b6d5d59758b4f5f05745f774fc13cdc59da43",
|
||||
"rev": "06519cec8fb32d219006da6eacd255504a9996af",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -252,11 +252,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1736373539,
|
||||
"narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
|
||||
"lastModified": 1739757849,
|
||||
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
|
||||
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -277,11 +277,11 @@
|
|||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739060572,
|
||||
"narHash": "sha256-b66lHmfaZ4lKAG5VW8wC7fba2vUs6OMRlJumO4xMEfc=",
|
||||
"lastModified": 1740874225,
|
||||
"narHash": "sha256-sdBT6Njf1MDVnb4kLbGhCpXQ2P7E+50TRW1mIdujFEE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "neovim-nightly-overlay",
|
||||
"rev": "4452574d52632a36458cd9c80f6303f556460221",
|
||||
"rev": "ee3854351ae89ad79eb148d4253263aeaa936913",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -293,11 +293,11 @@
|
|||
"neovim-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1739058097,
|
||||
"narHash": "sha256-QNlqRh8BnmSgJ6e5CRII9og+Z7fBfMAUbL3g66O8ZXg=",
|
||||
"lastModified": 1740870130,
|
||||
"narHash": "sha256-nrKnJhmplq4QMcenY/bpD6SHOsiN3VS2toUtsO9NfII=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "59edd7c88a13d793501b88c55803da8a0ba7c739",
|
||||
"rev": "13513835798c732554de277229d4c6744df11502",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -313,11 +313,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739034224,
|
||||
"narHash": "sha256-Mj/8jDzh1KNmUhWqEeVlW3hO9MZkxqioJGnmR7rivaE=",
|
||||
"lastModified": 1740755725,
|
||||
"narHash": "sha256-amZbqP84H/ApugaT+TADXTB3NbjkVHI9Vac1saIk0kE=",
|
||||
"owner": "LnL7",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "0b6f96a6b9efcfa8d3cc8023008bcbcd1b9bc1a4",
|
||||
"rev": "5d6e0851b60508cffd66b4a6982440a40720338d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -381,11 +381,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737057290,
|
||||
"narHash": "sha256-3Pe0yKlCc7EOeq1X/aJVDH0CtNL+tIBm49vpepwL1MQ=",
|
||||
"lastModified": 1740947705,
|
||||
"narHash": "sha256-Co2kAD2SZalOm+5zoxmzEVZNvZ17TyafuFsD46BwSdY=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"rev": "d002ce9b6e7eb467cd1c6bb9aef9c35d191b5453",
|
||||
"rev": "507911df8c35939050ae324caccc7cf4ffb76565",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -396,11 +396,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1739019272,
|
||||
"narHash": "sha256-7Fu7oazPoYCbDzb9k8D/DdbKrC3aU1zlnc39Y8jy/s8=",
|
||||
"lastModified": 1740791350,
|
||||
"narHash": "sha256-igS2Z4tVw5W/x3lCZeeadt0vcU9fxtetZ/RyrqsCRQ0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fa35a3c8e17a3de613240fea68f876e5b4896aec",
|
||||
"rev": "199169a2135e6b864a888e89a2ace345703c025d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -412,11 +412,11 @@
|
|||
},
|
||||
"nixpkgsSmall": {
|
||||
"locked": {
|
||||
"lastModified": 1739055578,
|
||||
"narHash": "sha256-2MhC2Bgd06uI1A0vkdNUyDYsMD0SLNGKtD8600mZ69A=",
|
||||
"lastModified": 1740932899,
|
||||
"narHash": "sha256-F0qDu2egq18M3edJwEOAE+D+VQ+yESK6YWPRQBfOqq8=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a45fa362d887f4d4a7157d95c28ca9ce2899b70e",
|
||||
"rev": "1546c45c538633ae40b93e2d14e0bb6fd8f13347",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -428,11 +428,11 @@
|
|||
},
|
||||
"nixpkgsUnstable": {
|
||||
"locked": {
|
||||
"lastModified": 1739020877,
|
||||
"narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=",
|
||||
"lastModified": 1740828860,
|
||||
"narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a79cfe0ebd24952b580b1cf08cd906354996d547",
|
||||
"rev": "303bd8071377433a2d8f76e684ec773d70c5b642",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -444,11 +444,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1738843498,
|
||||
"narHash": "sha256-7x+Q4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i+jBHE=",
|
||||
"lastModified": 1740865531,
|
||||
"narHash": "sha256-h00vGIh/jxcGl8aWdfnVRD74KuLpyY3mZgMFMy7iKIc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f5a32fa27df91dfc4b762671a0e0a859a8a0058f",
|
||||
"rev": "5ef6c425980847c78a80d759abc476e941a9bf42",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -512,11 +512,11 @@
|
|||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738291974,
|
||||
"narHash": "sha256-wkwYJc8cKmmQWUloyS9KwttBnja2ONRuJQDEsmef320=",
|
||||
"lastModified": 1739262228,
|
||||
"narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "4c1251904d8a08c86ac6bc0d72cc09975e89aef7",
|
||||
"rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -548,11 +548,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738953846,
|
||||
"narHash": "sha256-yrK3Hjcr8F7qS/j2F+r7C7o010eVWWlm4T1PrbKBOxQ=",
|
||||
"lastModified": 1739829690,
|
||||
"narHash": "sha256-mL1szCeIsjh6Khn3nH2cYtwO5YXG6gBiTw1A30iGeDU=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "4f09b473c936d41582dd744e19f34ec27592c5fd",
|
||||
"rev": "3d0579f5cc93436052d94b73925b48973a104204",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -1,4 +1,11 @@
|
|||
{ config, pkgs, lib, osConfig, inputs, ... }:
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
osConfig,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
# Home Manager needs a bit of information about you and the paths it should
|
||||
|
@ -15,7 +22,9 @@
|
|||
# release notes.
|
||||
home.stateVersion = "24.05"; # Please read the comment before changing.
|
||||
|
||||
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||
nixpkgs.config.allowUnfreePredicate =
|
||||
pkg:
|
||||
builtins.elem (lib.getName pkg) [
|
||||
"vscode"
|
||||
];
|
||||
|
||||
|
@ -26,7 +35,6 @@
|
|||
# # "Hello, world!" when run.
|
||||
# pkgs.hello
|
||||
|
||||
|
||||
# # It is sometimes useful to fine-tune packages, for example, by applying
|
||||
# # overrides. You can do that directly here, just don't forget the
|
||||
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of
|
||||
|
@ -84,6 +92,10 @@
|
|||
|
||||
pkgs.libsixel
|
||||
pkgs.walker
|
||||
pkgs.unzip
|
||||
pkgs.p7zip
|
||||
|
||||
pkgs.nixfmt-rfc-style
|
||||
# # You can also create simple shell scripts directly inside your
|
||||
# # configuration. For example, this adds a command 'my-hello' to your
|
||||
# # environment:
|
||||
|
@ -124,7 +136,7 @@
|
|||
};
|
||||
|
||||
programs.zoxide.enable = true;
|
||||
programs.zoxide.enableBashIntegration= true;
|
||||
programs.zoxide.enableBashIntegration = true;
|
||||
programs.zoxide.options = [
|
||||
"--cmd cd"
|
||||
];
|
||||
|
@ -165,7 +177,7 @@
|
|||
name = "miku-cursor-linux";
|
||||
size = 32;
|
||||
gtk.enable = true;
|
||||
package = pkgs.callPackage ../packages/miku-cursor.nix {};
|
||||
package = pkgs.callPackage ../packages/miku-cursor.nix { };
|
||||
};
|
||||
|
||||
programs.git = {
|
||||
|
@ -183,7 +195,7 @@
|
|||
latitude = 49.0;
|
||||
longitude = 8.4;
|
||||
};
|
||||
/*
|
||||
/*
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = {
|
||||
|
@ -195,7 +207,7 @@
|
|||
"application/pdf" = "org.pwmt.zathura-pdf-mupdf.desktop";
|
||||
};
|
||||
};
|
||||
*/
|
||||
*/
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
server.enable = true;
|
||||
|
|
|
@ -2,15 +2,22 @@
|
|||
# your system. Help is available in the configuration.nix(5) man page, on
|
||||
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
imports = [
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
../../features/client/tailscale.nix
|
||||
../../features/client/sway.nix
|
||||
./features/default.nix
|
||||
./overlays/foot-overlay.nix
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
@ -18,7 +25,7 @@
|
|||
efi.canTouchEfiVariables = true;
|
||||
grub = {
|
||||
enable = true;
|
||||
devices = ["nodev"];
|
||||
devices = [ "nodev" ];
|
||||
efiSupport = true;
|
||||
useOSProber = true;
|
||||
};
|
||||
|
@ -42,16 +49,22 @@
|
|||
|
||||
# mount compression
|
||||
fileSystems = {
|
||||
"/".options = ["compress=zstd"];
|
||||
"/home".options = ["compress=zstd"];
|
||||
"/nix".options = ["compress=zstd" "noatime"];
|
||||
"/".options = [ "compress=zstd" ];
|
||||
"/home".options = [ "compress=zstd" ];
|
||||
"/nix".options = [
|
||||
"compress=zstd"
|
||||
"noatime"
|
||||
];
|
||||
#"/swap".options = ["compress=zstd"];
|
||||
};
|
||||
|
||||
services.btrfs.autoScrub.enable = true;
|
||||
services.btrfs.autoScrub.interval = "weekly";
|
||||
|
||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
# Configure keymap in X11
|
||||
# services.xserver.xkb.layout = "us";
|
||||
# services.xserver.xkb.options = "eurosign:e,caps:escape";
|
||||
|
@ -65,7 +78,11 @@
|
|||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.harry123 = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "audio" "video" ]; # Enable ‘sudo’ for the user.
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
"audio"
|
||||
"video"
|
||||
]; # Enable ‘sudo’ for the user.
|
||||
packages = with pkgs; [
|
||||
firefox
|
||||
tailscale
|
||||
|
@ -96,10 +113,9 @@
|
|||
enableSSHSupport = true;
|
||||
};
|
||||
|
||||
services.udisks2.enable = true ;
|
||||
services.udisks2.enable = true;
|
||||
|
||||
|
||||
security.pam.services.swaylock = {};
|
||||
security.pam.services.swaylock = { };
|
||||
|
||||
# cleaning old builds
|
||||
nix.gc = {
|
||||
|
@ -107,6 +123,7 @@
|
|||
randomizedDelaySec = "14m";
|
||||
options = "--delete-older-than 10d";
|
||||
};
|
||||
|
||||
# List services that you want to enable:
|
||||
|
||||
# Enable the OpenSSH daemon.
|
||||
|
@ -138,4 +155,3 @@
|
|||
system.stateVersion = "24.05"; # Did you read the comment?
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
{config, ...}:
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [
|
||||
./bluetooth.nix
|
||||
./pipewire.nix
|
||||
./nvidia.nix
|
||||
./ios-phone-support.nix
|
||||
];
|
||||
}
|
||||
|
|
14
hosts/goober/features/hardware/ios-phone-support.nix
Normal file
14
hosts/goober/features/hardware/ios-phone-support.nix
Normal file
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
services.usbmuxd = {
|
||||
enable = true;
|
||||
package = pkgs.usbmuxd2;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
libimobiledevice
|
||||
usbutils
|
||||
ifuse # optional, to mount using 'ifuse'
|
||||
];
|
||||
|
||||
}
|
19
overlays/foot-overlay.nix
Normal file
19
overlays/foot-overlay.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
let foot-next = pkgs.foot.overrideAttrs (oldAttrs: rec {
|
||||
inherit (oldAttrs) name;
|
||||
version = "1.20.2";
|
||||
src = pkgs.fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "dnkl";
|
||||
repo = "foot";
|
||||
rev = version;
|
||||
hash = "sha256-tnBoRRKHcuvBSnqvJ/772UWuepvpUiSg6t+gx4MZ0VQ=";
|
||||
};
|
||||
}) in
|
||||
nixpkgs.overlays = [(
|
||||
final: previous: {
|
||||
foot = foot-next;
|
||||
}
|
||||
)];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue