Compare commits
No commits in common. "d0cfc409852925b3ff2c246fe6e99ed473c5d6f1" and "3d1a754d06ce978993617534bbcdd87176395b5d" have entirely different histories.
d0cfc40985
...
3d1a754d06
12 changed files with 42 additions and 179 deletions
16
flake.nix
16
flake.nix
|
|
@ -56,14 +56,18 @@
|
|||
} @ inputs: let
|
||||
inherit (nixpkgs) lib;
|
||||
|
||||
systemFromHardwareConf = hostname: let
|
||||
systemFromHardwareConf =
|
||||
hostname:
|
||||
let
|
||||
hardware = import ./hosts/${hostname}/hardware-configuration.nix;
|
||||
args = builtins.functionArgs hardware // { lib.mkDefault = lib.id; };
|
||||
in
|
||||
(hardware args).nixpkgs.hostPlatform;
|
||||
|
||||
importNixpkgs = system: nixpkgs: let
|
||||
config.allowUnfreePredicate = pkg:
|
||||
importNixpkgs = system: nixpkgs:
|
||||
let
|
||||
config.allowUnfreePredicate =
|
||||
pkg:
|
||||
builtins.elem (lib.getName pkg) (import ./unfree.nix).allowed;
|
||||
in
|
||||
import nixpkgs { inherit system config; };
|
||||
|
|
@ -86,11 +90,7 @@
|
|||
nixosConfigurations = lib.pipe ./hosts [
|
||||
builtins.readDir
|
||||
(lib.filterAttrs (_: type: type == "directory"))
|
||||
(lib.filterAttrs (
|
||||
name: _:
|
||||
builtins.pathExists ./hosts/${name}/default.nix
|
||||
&& builtins.pathExists ./hosts/${name}/hardware-configuration.nix
|
||||
))
|
||||
# (lib.filterAttrs (name: _: builtins.pathExists ./hosts/${name}/default.nix && builtins.pathExists ./hosts/${name}/hardware.nix && builtins.pathExists ./hosts/${name}/config.nix))
|
||||
(builtins.mapAttrs (name: _: makeHost name (systemFromHardwareConf name)))
|
||||
];
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{sops-nix, ...}: {
|
||||
{ sops-nix, stylix, ...}: {
|
||||
imports = [
|
||||
sops-nix.homeManagerModules.sops
|
||||
|
||||
|
|
@ -9,14 +9,13 @@
|
|||
|
||||
./env.nix
|
||||
|
||||
#zen-browser (WIP)
|
||||
# ./firefox
|
||||
./firefox
|
||||
|
||||
./alacritty.nix
|
||||
./clipman.nix
|
||||
./common.nix
|
||||
./direnv.nix
|
||||
./firefox.nix
|
||||
# ./firefox.nix
|
||||
./fzf.nix
|
||||
./git.nix
|
||||
./gpg.nix
|
||||
|
|
@ -26,7 +25,7 @@
|
|||
./sops.nix
|
||||
./ssh.nix
|
||||
./stylix.nix
|
||||
# ./thunderbird.nix
|
||||
./thunderbird.nix
|
||||
./zsh
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.helix = {
|
||||
|
|
@ -32,10 +31,6 @@
|
|||
];
|
||||
separator = "|";
|
||||
};
|
||||
inline-diagnostics = {
|
||||
cursor-line = "hint";
|
||||
other-lines = "warning";
|
||||
};
|
||||
lsp = {
|
||||
display-messages = true;
|
||||
display-inlay-hints = true;
|
||||
|
|
@ -53,51 +48,5 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
languages = {
|
||||
language-server = {
|
||||
rust-analyzer = {
|
||||
config = {
|
||||
checkOnSave.command = "clippy";
|
||||
cargo.features = "all";
|
||||
cargo.unsetTest = [];
|
||||
};
|
||||
};
|
||||
pyright = {
|
||||
command = "${pkgs.pyright}/bin/pyright-langserver";
|
||||
args = ["--stdio"];
|
||||
config = {};
|
||||
};
|
||||
nil.command = "${pkgs.nil}/bin/nil";
|
||||
bash-language-server = {
|
||||
command = "${pkgs.bash-language-server}/bin/bash-language-server";
|
||||
args = ["start"];
|
||||
};
|
||||
};
|
||||
|
||||
language = [
|
||||
{
|
||||
name = "python";
|
||||
auto-format = true;
|
||||
language-servers = [{name = "pyright";}];
|
||||
formatter = {
|
||||
command = "/bin/sh";
|
||||
args = [
|
||||
"-c"
|
||||
"${pkgs.isort}/bin/isort - | ${pkgs.black}/bin/black -q -l 120 -C -"
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "nix";
|
||||
auto-format = true;
|
||||
language-servers = [{name = "nil";}];
|
||||
formatter = {
|
||||
command = lib.getExe pkgs.nixfmt-rfc-style;
|
||||
args = ["-s"];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,23 +1,20 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
{lib, config, ... }: {
|
||||
data = {
|
||||
directories = [
|
||||
".config/syncthing"
|
||||
".config/sops"
|
||||
".config/keepassxc"
|
||||
".config/obsidian"
|
||||
".config/vesktop"
|
||||
".gnupg"
|
||||
".ssh"
|
||||
|
||||
".thunderbird"
|
||||
".mozilla"
|
||||
".zen"
|
||||
|
||||
"nixos"
|
||||
"sync"
|
||||
"obsidian"
|
||||
"code"
|
||||
".keepass"
|
||||
".local/share/PrismLauncher"
|
||||
|
|
@ -31,9 +28,11 @@
|
|||
cache = {
|
||||
directories = [
|
||||
".cache/nix"
|
||||
".cache/spotify"
|
||||
".cache/keepassxc"
|
||||
".cargo"
|
||||
".local/state/wireplumber"
|
||||
"tmp"
|
||||
];
|
||||
files = [];
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,17 +0,0 @@
|
|||
{lib, ...}: let
|
||||
mkHostOverride = lib.mkOverride 75;
|
||||
in {
|
||||
system.stateVersion = "24.11";
|
||||
|
||||
desktop.enable = true;
|
||||
gaming.enable = false;
|
||||
nfs.client.enable = true;
|
||||
auto_styling.enable = true;
|
||||
|
||||
home-manager.users."lilith".wayland.windowManager.hyprland.settings = {
|
||||
monitor = mkHostOverride [
|
||||
"eDP-1, 1920x1080, 0x0, 1"
|
||||
", perferred, auto, 1"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/080fa116-424e-4079-a2a6-658a230e2721";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/40E8-A12D";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# 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
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
user:
|
||||
password: ENC[AES256_GCM,data:k4BAMMKgSsNAnCy5RJfhQPJG4P49hHTFVJDvc8ArqY3VeEH60XPK+m+b8vAHc4nUCt7dNRxuMG365/9jJhZI+DiX6614fe+Iug==,iv:PmNOUnu2eBhdtWB4Gkpj4RbHwV5Ac/UPJSF0XifWSzE=,tag:MeoLAKHM0hiylaFBOqpNPw==,type:str]
|
||||
ssh:
|
||||
public: ENC[AES256_GCM,data:4bA7PVMd8UY1D93A85S6yPIIbAt4FfbQN72lOZ3Pf+su4MGQvz9UcN6a+b+p/Qo8us4sjXutfdPiv5qDEnsDvc0uuS9R8avSw/vqzfF4rQ7NAn59/fjAJwcaPwwTqsTiBXFhcOs=,iv:qZKApe16ElXdw8MOePyvo1wqpXnTD651w0122omu+ik=,tag:P9fxALfO74yK8aSazgX68g==,type:str]
|
||||
private: ENC[AES256_GCM,data:INtOHRiH+lTGH6zTtjzO/VoYsNRVFBDaWpTjAnHEv+YgXAslHTF7AvFoM9XKvjLCe3x3celD8r4yd//vof6WRuGpr4foIN09CXS0VO0fEkcNo224ajNc+FGEUNzeWjCqDW8Jvlyq7tEE+ywjVM4MF/IeyHM3Oh93gTprq+ZjzXYfXuqElVzlcLJaOGIAXmqWqUtzmGh7xx2TXfapkCi8oHm3cx7/A8FG7kBxyCcJ/3aIzrWZo5zHdts8l+qB5hc86vwHVZ3WVBfuXKpTaXCzQHRRaw7vaIP5O2V8bpU8p56TxYDl9N8GrbF5S38AxwtW+FHZKLXD33I3uQk4qztpvT8AvStnMM4x2D8JIhWN7LYmbMFuJng5UfzwLveIVPl5MIHAtVvk2W/QTw/5+kbqHIud3UWv5o/vbnm8l88q5WlO0U9CgRmV0FPTK/hdEj+tEUR6AzFi/Ea6Qiv0BGVGLOHWYszfXzKA1mss+MteR9k+PQqx4wsQM9nWnMOTQGf99RMyeHG1u68gsKy55dvEMXx0lo2iUcdBttVHZaUP5baiOhr6VS74rBxpeLBN03Vzj6A6fG1b2u6V5vSZ6sC1MFlgL1gjwLzGlqi3thVAV9g=,iv:CHie+Sns7HefRwBqdo2Gw1UexHS+W1y6t4etbHA//5Y=,tag:X3U1+wHVzRBUOl8sNo8jtg==,type:str]
|
||||
syncthing:
|
||||
cert.pem: ENC[AES256_GCM,data:zVGfurUvMA28jtWqBBHmlz+ujHGd9/ogZYLL1AMb8njzi5BJZHW0+QaHhLqjw7BKNs9CDmpIhIytvkY9WFoQ6zJe477ndXr7lPDdpoLkEDCZKXypVjAOuqHXTXJ44RI6hU87347bq2BP1Ph9847hryA4iWicdhYLj0SrFcQVu2MnGWJZ75k1eUqELjgT6rqmR7jzRs0Z4mGaGRwrG1Bi76mkfrOe0SVV6iE8Kk3U3iYDcqraWbS3Y3Fdr+UgPuK7uJ5RO5MFMjS1CHmUvo+K/tgcH74r2NS7FQBHnG5Ec0MMW1r08W5odd93oAJUC/PWYUW4giSahp1G+GyGMO3NSmTMW5PJ524I8izRRVg2jO9usv6ukxC9oUV4DIz9kpj9yVnHA7MJCw6yJTveLQMumYxKyorQUxkPDAyYty56D56mOnaxgRT7GsDkuj6VJ5aujqvzUq1f7bwxe43g75IY5BQpzWOufsCvnGt76dmZw3+gdsw4noQEv+Hm3FOvLnBA8H0hzDAtIs0Yy4GdviZj0687ZqAdM8y6+hOvC6UxSm5OkplCAi2E5yte5OS6csvMWR2atT6D13jZFU3PL7aIw0Z8y2Gx/jVlr68UHOn6jvonQzc2+fZmcQJL8aHW6jsDroIYHbl98OAFg+WE/Yp/lV3ffczhfzoH25qL8AHiHXwsBPOVkkpFSBxrNO2XFeDIEkl73amjCvkM1X3AxHBTgCgK2Y2kkvpwOiwUQdt5/YcLGgIWkpHpPDfGiqOkkMsWZbGcGPQtkUnhu16ul4+NUFDwiE2CYaw5+cPpdLq8DWv//V0iKcHP4jinYM+ZaUIh1loupdinhGKIeX+xNFcf9kB6dcdjR7TliN7gb5ekynSxjHM3i3EFp47bhkMbQpLVzOKZ8vgeb/eVU+t97lPNxhioHAeRPwIoxq8lnLHhY7p7AN0gzsfOeDKz2BuxaaFI0DCg63aJC2nHpvy+5lWtWYto6rUB2q4JTA9oKm6RLDcDaYTLfpQtM9sdH9N5TDsCukPVm+e6gr9AbjG8IFt9QUGb0UxzkqY20bI=,iv:XIhlEi02Il+RdKPjqRIPCg1ooij8ipTbbUZlupijTVg=,tag:7mU3OWolhHxtsN6rHs8vIQ==,type:str]
|
||||
key.pem: ENC[AES256_GCM,data:fo8ejY1p+oBwy4L5WiecLQLkwKVdVEi7fzKb8/ACD+7qKXMk+MChW1MeUrFjWCHtHIdw3Ld7SrCmEC/3cqL87aFiZFBOv/cV4Jkvy1kEmZLuKo8wM5Vn+7Ec4WVDAbqhiT5MEgaWHdSgmv2kvkeUnH4LJSx9uohRTgKlO0eIqY9aXO5PqZEPLuHvvTrUi1OCvadaAsKHx3yqTm2tuqK7mPzOL2A4WLQRMKSlQIbzgTz2CShql8D6/crzIAoQVnXf+/KbqzRw3NKtIzQA0aSx1tA4DjPSugWkx+sqjUShYOfZ8Rnbto5/Nbmk4QTaCkvsOli4lazGAKmPtMVBXfbFvZUXiZ/QoawVmsw1MMCCtaRpV7cEAKHJCZ+lRA4CUoJm,iv:JQHPAdW1gJxpZaBcY/BdRBweEYAAj0ZWwAeHFR4J5zo=,tag:i5VWdxTu+Wez3poflwGiog==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age1mqw75xvd2gnhx2wsmkr8yctegjfym6xkypwjh82s3yws2glk4vms3cxqaz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKRWRJOWZQY1ZpWGQ4ZXND
|
||||
RC83eEZGZkVjelkxZDNkdlMvODN6a0dnWFRRCmxGT0U1dWJ1bWJDQVRHYmlQMHZQ
|
||||
Z0Rza3dYNi9iTFZLSUVuL0UwUzVZNk0KLS0tIDd2eDNWYjd5MC9mcTd3clFBdmpY
|
||||
OW5yTndZYU16NTYrdDZRUjZJS25VbEUKmD4HAa0e2p8SRw5mlzgh+ByFqCDhj8wv
|
||||
QumEed0Hb9jve8aO8K9MEayxi5jIULFYuYWD8D1RF/74UGrgBTAykA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-03-15T23:51:41Z"
|
||||
mac: ENC[AES256_GCM,data:ey5F1mZf8Ndm+9hJo38X6dhD6cVZ1T+YjtHSQsCjzpT9va8/zmsic5VMS5rlxCsR7TtiJG+sN6xQ9rsvQjE/mCSb8raQTCRa0XufpO7Yqekwyi8fOWdVf6tBIbdSOkJDARD4AVmmGRZWpTHAX2oMnH/rYT0+MOZQ6Q6LQ7lumq8=,iv:6hntrUy0jlkdp5MIV6GNvGbNYFrcOgKoWaIU/vORg88=,tag:7rcHIuubqZk1RlppgXYiZQ==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-03-15T23:51:35Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hF4DCgMW7d7co2gSAQdAbaGKvZ8a7yxQcjrCPON8SFJC1rlZDdKZfZ9LXQubbkMw
|
||||
e94lKw5Tq2cn5iwGgRvYG6CmxLXmX6rk9ylVyKPWzHPjiA3Pk1eiTZ6neStFoKWG
|
||||
1GgBCQIQjsaVzLGjQWWxc87gRkwpTHTS2GCSnUz06E4gD42JuUKO5Au/IHWwLmua
|
||||
HDrwSNqAlns1mALRm7Nb0R68EFouc532WQdpUK1F8T0454wHyOnMvE1fzBkiGSrq
|
||||
9g50Dinv/s3ALQ==
|
||||
=Sk/E
|
||||
-----END PGP MESSAGE-----
|
||||
fp: 3586D8D6689B9C9ECD598C588712A0F317C37175
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.2
|
||||
3
hosts/lilith-pc/config.nix
Normal file
3
hosts/lilith-pc/config.nix
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
system = "x86_64-linux";
|
||||
}
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
{lib, ...}: let
|
||||
mkHostOverride = lib.mkOverride 75;
|
||||
in {
|
||||
{ config, lib, ...}: {
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
|
||||
desktop.enable = true;
|
||||
|
|
@ -8,13 +7,16 @@ in {
|
|||
nfs.client.enable = true;
|
||||
auto_styling.enable = true;
|
||||
|
||||
home-manager.users."lilith".wayland.windowManager.hyprland.settings = {
|
||||
input.kb_layout = mkHostOverride "us";
|
||||
|
||||
monitor = mkHostOverride [
|
||||
|
||||
home-manager.users."lilith".wayland.windowManager.hyprland.settings = {
|
||||
input.kb_layout = lib.mkForce "us";
|
||||
|
||||
monitor = lib.mkForce [
|
||||
"DP-3, 3840x2160, 0x0, 1.5"
|
||||
"DP-4, 2560x1440, 2560x0, 1"
|
||||
",preferred,auto,1"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{...}: {
|
||||
{ zen-browser, ...}: {
|
||||
imports = [
|
||||
./audio.nix
|
||||
./bluetooth.nix
|
||||
|
|
@ -15,5 +15,6 @@
|
|||
./syncthing.nix
|
||||
./users.nix
|
||||
./zsh.nix
|
||||
zen-browser.nixosModules.zen-browser
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{...}: {
|
||||
{ lib, ...}: {
|
||||
nix = {
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
|
@ -12,4 +12,8 @@
|
|||
trusted-users = ["root" "@wheel"];
|
||||
};
|
||||
};
|
||||
|
||||
# nixpkgs.config.allowUnfreePredicate = (pkg: builtins.elem (lib.getName pkg) [
|
||||
# "steam"
|
||||
# ]);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,4 +3,5 @@
|
|||
./core
|
||||
./optional
|
||||
];
|
||||
# system.stateVersion = "24.11";
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue