Merge branch 'macbook-hyprland'
This commit is contained in:
@@ -10,6 +10,8 @@ keys:
|
|||||||
- &pi5 age1t2d5scrukk0guva5sr97a8tge5j8kd865adezrcru7p269pzwvpsamkgje
|
- &pi5 age1t2d5scrukk0guva5sr97a8tge5j8kd865adezrcru7p269pzwvpsamkgje
|
||||||
- &deck age1c8qw59ffcq9l77gfmtyc3djtvt3md0u6dwhrjcgsm98ntyf72ufqugj7cg
|
- &deck age1c8qw59ffcq9l77gfmtyc3djtvt3md0u6dwhrjcgsm98ntyf72ufqugj7cg
|
||||||
- &steamdeck age1er5qucsc2mugrzrr7n3xhzv7kemkrqrw4m84r544fkk7nkg5g5eswxkqj0
|
- &steamdeck age1er5qucsc2mugrzrr7n3xhzv7kemkrqrw4m84r544fkk7nkg5g5eswxkqj0
|
||||||
|
- &matt_macbook-pro age1xg6mvj3x6s3t8058c6rsk3q4kskvm6nsffwckxkkjzhyn7r6tczqgkj23p
|
||||||
|
- &macbook-pro age1rdn39ywgzmc8wlsl5lrfe77e652wzjmjx58gx4k2ydghd35kdqvqscrf3h
|
||||||
creation_rules:
|
creation_rules:
|
||||||
- path_regex: secrets/[^/]+\.(yaml|json|env|ini)$
|
- path_regex: secrets/[^/]+\.(yaml|json|env|ini)$
|
||||||
key_groups:
|
key_groups:
|
||||||
@@ -24,6 +26,8 @@ creation_rules:
|
|||||||
- *pi5
|
- *pi5
|
||||||
- *deck
|
- *deck
|
||||||
- *steamdeck
|
- *steamdeck
|
||||||
|
- *matt_macbook-pro
|
||||||
|
- *macbook-pro
|
||||||
- path_regex: nas-secrets/[^/]+\.(yaml|json|env|ini)$
|
- path_regex: nas-secrets/[^/]+\.(yaml|json|env|ini)$
|
||||||
key_groups:
|
key_groups:
|
||||||
- age:
|
- age:
|
||||||
|
|||||||
158
flake.lock
generated
158
flake.lock
generated
@@ -293,6 +293,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_3": {
|
"flake-compat_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1688025799,
|
||||||
|
"narHash": "sha256-ktpB4dRtnksm9F5WawoIkEneh1nrEvuxb5lJFt1iOyw=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "8bf105319d44f6b9f0d764efa4fdef9f1cc9ba1c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_4": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747046372,
|
"lastModified": 1747046372,
|
||||||
@@ -308,7 +323,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_4": {
|
"flake-compat_5": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746162366,
|
"lastModified": 1746162366,
|
||||||
@@ -324,7 +339,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_5": {
|
"flake-compat_6": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
@@ -340,7 +355,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_6": {
|
"flake-compat_7": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746162366,
|
"lastModified": 1746162366,
|
||||||
@@ -356,7 +371,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_7": {
|
"flake-compat_8": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
@@ -707,6 +722,96 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"mac-home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"mac-nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1751303539,
|
||||||
|
"narHash": "sha256-NiG8ZE40RrYdwVeK2a2XsM44h/YuGiLucnA3CBhV+wo=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "ee2189cb2f6c9e2b9c734a839faa20ed2ba8b577",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mac-impermanence": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1737831083,
|
||||||
|
"narHash": "sha256-LJggUHbpyeDvNagTUrdhe/pRVp4pnS6wVKALS782gRI=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "impermanence",
|
||||||
|
"rev": "4b3e914cdf97a5b536a889e939fb2fd2b043a170",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "impermanence",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mac-nixos-apple-silicon": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_3",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1748659443,
|
||||||
|
"narHash": "sha256-dav2hzyCmXZ3n6lEZrfZBG51+g6PUhkzRl3d6Ypd9x0=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixos-apple-silicon",
|
||||||
|
"rev": "3ddc251d2acce5019b0fa770e224d068610a34e4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixos-apple-silicon",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mac-nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1751011381,
|
||||||
|
"narHash": "sha256-krGXKxvkBhnrSC/kGBmg5MyupUUT5R6IBCLEzx9jhMM=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "30e2e2857ba47844aa71991daa6ed1fc678bcbb7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mac-sops-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"mac-nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1750119275,
|
||||||
|
"narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=",
|
||||||
|
"owner": "Mic92",
|
||||||
|
"repo": "sops-nix",
|
||||||
|
"rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Mic92",
|
||||||
|
"repo": "sops-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"napalm": {
|
"napalm": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": [
|
"flake-utils": [
|
||||||
@@ -736,7 +841,7 @@
|
|||||||
"nas-authentik-nix": {
|
"nas-authentik-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"authentik-src": "authentik-src",
|
"authentik-src": "authentik-src",
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_4",
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_2",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"napalm": "napalm",
|
"napalm": "napalm",
|
||||||
@@ -764,7 +869,7 @@
|
|||||||
},
|
},
|
||||||
"nas-cosmic": {
|
"nas-cosmic": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_4",
|
"flake-compat": "flake-compat_5",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nas-nixpkgs-stable"
|
"nas-nixpkgs-stable"
|
||||||
],
|
],
|
||||||
@@ -844,7 +949,7 @@
|
|||||||
"nas-lanzaboote": {
|
"nas-lanzaboote": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane_2",
|
"crane": "crane_2",
|
||||||
"flake-compat": "flake-compat_5",
|
"flake-compat": "flake-compat_6",
|
||||||
"flake-parts": "flake-parts_3",
|
"flake-parts": "flake-parts_3",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nas-nixpkgs"
|
"nas-nixpkgs"
|
||||||
@@ -870,7 +975,7 @@
|
|||||||
"nas-nix-vscode-extensions": {
|
"nas-nix-vscode-extensions": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_3",
|
"flake-utils": "flake-utils_3",
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749002682,
|
"lastModified": 1749002682,
|
||||||
@@ -889,7 +994,7 @@
|
|||||||
"nas-nixai": {
|
"nas-nixai": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_4",
|
"flake-utils": "flake-utils_4",
|
||||||
"nixpkgs": "nixpkgs_3"
|
"nixpkgs": "nixpkgs_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749000216,
|
"lastModified": 1749000216,
|
||||||
@@ -1091,7 +1196,7 @@
|
|||||||
"inputs": {
|
"inputs": {
|
||||||
"argononed": "argononed",
|
"argononed": "argononed",
|
||||||
"nixos-images": "nixos-images",
|
"nixos-images": "nixos-images",
|
||||||
"nixpkgs": "nixpkgs_4"
|
"nixpkgs": "nixpkgs_5"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749156319,
|
"lastModified": 1749156319,
|
||||||
@@ -1267,6 +1372,22 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1748460289,
|
||||||
|
"narHash": "sha256-7doLyJBzCllvqX4gszYtmZUToxKvMUrg45EUWaUYmBg=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "96ec055edbe5ee227f28cdbc3f1ddf1df5965102",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1744868846,
|
"lastModified": 1744868846,
|
||||||
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
|
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
|
||||||
@@ -1282,7 +1403,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748693115,
|
"lastModified": 1748693115,
|
||||||
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
|
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
|
||||||
@@ -1298,7 +1419,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748882666,
|
"lastModified": 1748882666,
|
||||||
"narHash": "sha256-z2uanxifOXGEqdiprquIGZu0XaRYih3FHXDQwLc1xis=",
|
"narHash": "sha256-z2uanxifOXGEqdiprquIGZu0XaRYih3FHXDQwLc1xis=",
|
||||||
@@ -1314,7 +1435,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750506804,
|
"lastModified": 1750506804,
|
||||||
"narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=",
|
"narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=",
|
||||||
@@ -1440,7 +1561,7 @@
|
|||||||
},
|
},
|
||||||
"pi5-cosmic": {
|
"pi5-cosmic": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_6",
|
"flake-compat": "flake-compat_7",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"pi5-nixpkgs"
|
"pi5-nixpkgs"
|
||||||
],
|
],
|
||||||
@@ -1711,6 +1832,11 @@
|
|||||||
"desktop-nixpkgs": "desktop-nixpkgs",
|
"desktop-nixpkgs": "desktop-nixpkgs",
|
||||||
"desktop-sops-nix": "desktop-sops-nix",
|
"desktop-sops-nix": "desktop-sops-nix",
|
||||||
"desktop-steam-rom-manager": "desktop-steam-rom-manager",
|
"desktop-steam-rom-manager": "desktop-steam-rom-manager",
|
||||||
|
"mac-home-manager": "mac-home-manager",
|
||||||
|
"mac-impermanence": "mac-impermanence",
|
||||||
|
"mac-nixos-apple-silicon": "mac-nixos-apple-silicon",
|
||||||
|
"mac-nixpkgs": "mac-nixpkgs",
|
||||||
|
"mac-sops-nix": "mac-sops-nix",
|
||||||
"nas-authentik-nix": "nas-authentik-nix",
|
"nas-authentik-nix": "nas-authentik-nix",
|
||||||
"nas-cosmic": "nas-cosmic",
|
"nas-cosmic": "nas-cosmic",
|
||||||
"nas-crowdsec": "nas-crowdsec",
|
"nas-crowdsec": "nas-crowdsec",
|
||||||
@@ -1925,7 +2051,7 @@
|
|||||||
"flake-schemas": "flake-schemas_2",
|
"flake-schemas": "flake-schemas_2",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
"jovian": "jovian_2",
|
"jovian": "jovian_2",
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_6",
|
||||||
"rust-overlay": "rust-overlay_7"
|
"rust-overlay": "rust-overlay_7"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -2023,7 +2149,7 @@
|
|||||||
"steamdeck-lanzaboote": {
|
"steamdeck-lanzaboote": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane_3",
|
"crane": "crane_3",
|
||||||
"flake-compat": "flake-compat_7",
|
"flake-compat": "flake-compat_8",
|
||||||
"flake-parts": "flake-parts_4",
|
"flake-parts": "flake-parts_4",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"steamdeck-nixpkgs"
|
"steamdeck-nixpkgs"
|
||||||
|
|||||||
22
flake.nix
22
flake.nix
@@ -722,6 +722,7 @@
|
|||||||
system = "aarch64-linux";
|
system = "aarch64-linux";
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit inputs outputs;
|
inherit inputs outputs;
|
||||||
|
hyprlandSettings = import ./hosts/mac-nixos/hyprland-settings.nix;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/base/base-nogui
|
./hosts/base/base-nogui
|
||||||
@@ -748,14 +749,14 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hosts/mac/home.nix
|
./hosts/mac-nixos/home.nix
|
||||||
./modules/home/defaults.nix
|
./modules/home/defaults.nix
|
||||||
./modules/home/git.nix
|
./modules/home/git.nix
|
||||||
./modules/home/gnome.nix
|
# ./modules/home/gnome.nix
|
||||||
./modules/home/librewolf.nix
|
# ./modules/home/librewolf.nix
|
||||||
./modules/home/office.nix
|
./modules/home/office.nix
|
||||||
./modules/home/shell.nix
|
./modules/home/shell.nix
|
||||||
./modules/home/vscode.nix
|
# ./modules/home/vscode.nix
|
||||||
mac-sops-nix.homeManagerModules.sops
|
mac-sops-nix.homeManagerModules.sops
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
@@ -805,6 +806,19 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
packages.aarch64-linux.vmware-horizon-fhs =
|
||||||
|
let
|
||||||
|
pkgs = import mac-nixpkgs { system = "aarch64-linux"; };
|
||||||
|
x64 = import mac-nixpkgs { system = "x86_64-linux"; config.allowUnfree = true; };
|
||||||
|
in
|
||||||
|
pkgs.buildFHSEnv {
|
||||||
|
name = "horizon-client-x64";
|
||||||
|
targetPkgs = _pkgs: with x64; [
|
||||||
|
vmware-horizon-client gtk3 xorg.libX11 libxml2
|
||||||
|
];
|
||||||
|
runScript = "box64 vmware-view";
|
||||||
|
};
|
||||||
|
|
||||||
# Expose the package set, including overlays, for convenience.
|
# Expose the package set, including overlays, for convenience.
|
||||||
darwinPackages = self.darwinConfigurations."MacBook-Pro".pkgs;
|
darwinPackages = self.darwinConfigurations."MacBook-Pro".pkgs;
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.18";
|
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10";
|
update-switch = "sudo nixos-rebuild switch --max-jobs 10";
|
||||||
update-flake = "nix flake update steamdeck-nixpkgs steamdeck-chaotic steamdeck-home-manager steamdeck-impermanence steamdeck-jovian steamdeck-lanzaboote steamdeck-nixos-hardware steamdeck-sops-nix steamdeck-steam-rom-manager --flake /etc/nixos";
|
update-flake = "nix flake update steamdeck-nixpkgs steamdeck-chaotic steamdeck-home-manager steamdeck-impermanence steamdeck-jovian steamdeck-lanzaboote steamdeck-nixos-hardware steamdeck-sops-nix steamdeck-steam-rom-manager --flake /etc/nixos";
|
||||||
nas-ssh = "ssh admin@10.0.1.18";
|
nas-ssh = "ssh admin@10.0.1.3";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -39,19 +39,19 @@ in
|
|||||||
|
|
||||||
# Network shares
|
# Network shares
|
||||||
"/media/nas/backup" = {
|
"/media/nas/backup" = {
|
||||||
device = "//10.0.1.18/Backup";
|
device = "//10.0.1.3/Backup";
|
||||||
fsType = "cifs";
|
fsType = "cifs";
|
||||||
options = defaultNetworkShareOptions;
|
options = defaultNetworkShareOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
"/media/nas/isos" = {
|
"/media/nas/isos" = {
|
||||||
device = "//10.0.1.18/isos";
|
device = "//10.0.1.3/isos";
|
||||||
fsType = "cifs";
|
fsType = "cifs";
|
||||||
options = defaultNetworkShareOptions;
|
options = defaultNetworkShareOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
"/media/nas/3d_printer" = {
|
"/media/nas/3d_printer" = {
|
||||||
device = "//10.0.1.18/3d_printer";
|
device = "//10.0.1.3/3d_printer";
|
||||||
fsType = "cifs";
|
fsType = "cifs";
|
||||||
options = defaultNetworkShareOptions;
|
options = defaultNetworkShareOptions;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.18";
|
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.18";
|
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-flake = "nix flake update desktop-nixpkgs desktop-chaotic desktop-home-manager desktop-impermanence desktop-lanzaboote desktop-nixos-hardware desktop-sops-nix desktop-steam-rom-manager --flake /etc/nixos";
|
update-flake = "nix flake update desktop-nixpkgs desktop-chaotic desktop-home-manager desktop-impermanence desktop-lanzaboote desktop-nixos-hardware desktop-sops-nix desktop-steam-rom-manager --flake /etc/nixos";
|
||||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.18 --build-host admin@10.0.1.18 --flake ~/nix-config#jallen-nas";
|
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ in
|
|||||||
openssh
|
openssh
|
||||||
];
|
];
|
||||||
script = ''
|
script = ''
|
||||||
rsync -rtpogvPlHzs --ignore-existing --exclude={'/home/matt/Games', '/home/matt/1TB', '/home/matt/Downloads/*', '/home/matt/.cache'} -e ssh /home/matt admin@10.0.1.18:/media/nas/main/backup/desktop-nix/home
|
rsync -rtpogvPlHzs --ignore-existing --exclude={'/home/matt/Games', '/home/matt/1TB', '/home/matt/Downloads/*', '/home/matt/.cache'} -e ssh /home/matt admin@10.0.1.3:/media/nas/main/backup/desktop-nix/home
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
let
|
let
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
ll = "ls -alh";
|
ll = "ls -alh";
|
||||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.18";
|
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.18";
|
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-flake = "sudo nix flake update ~/nix-config";
|
update-flake = "sudo nix flake update ~/nix-config";
|
||||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.18 --build-host admin@10.0.1.18 --flake ~/nix-config#jallen-nas";
|
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||||
nas-ssh = "kitten ssh admin@10.0.1.18";
|
nas-ssh = "kitten ssh admin@10.0.1.3";
|
||||||
ducks = "du -cksh * | sort -hr | head -n 15";
|
ducks = "du -cksh * | sort -hr | head -n 15";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -258,7 +258,7 @@ in
|
|||||||
use_x_forwarded_for = true;
|
use_x_forwarded_for = true;
|
||||||
trusted_proxies = [
|
trusted_proxies = [
|
||||||
"172.30.33.0/24"
|
"172.30.33.0/24"
|
||||||
"10.0.1.18"
|
"10.0.1.3"
|
||||||
"10.0.1.0/24"
|
"10.0.1.0/24"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|||||||
34
hosts/mac-nixos/boot.nix
Normal file
34
hosts/mac-nixos/boot.nix
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{ pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
# Use the systemd-boot EFI boot loader.
|
||||||
|
boot = {
|
||||||
|
loader = {
|
||||||
|
systemd-boot = {
|
||||||
|
enable = true;
|
||||||
|
configurationLimit = 15;
|
||||||
|
consoleMode = lib.mkDefault "max";
|
||||||
|
};
|
||||||
|
efi.canTouchEfiVariables = lib.mkForce false;
|
||||||
|
};
|
||||||
|
|
||||||
|
kernelParams = [
|
||||||
|
"apple_dcp.show_notch=1"
|
||||||
|
];
|
||||||
|
|
||||||
|
extraModprobeConfig = ''
|
||||||
|
options hid_apple iso_layout=0
|
||||||
|
'';
|
||||||
|
|
||||||
|
binfmt.registrations. "x86_64-linux" = {
|
||||||
|
magicOrExtension = ''\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x3e\x00'';
|
||||||
|
mask = ''\xff\xff\xff\xff\xff\xfe\xfe\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff'';
|
||||||
|
openBinary = true;
|
||||||
|
interpreter = "${pkgs.box64}/bin/box64";
|
||||||
|
preserveArgvZero = true;
|
||||||
|
matchCredentials = true;
|
||||||
|
fixBinary = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
zramSwap.enable = true;
|
||||||
|
}
|
||||||
@@ -8,94 +8,58 @@ let
|
|||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
# Include the results of the hardware scan.
|
./boot.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
./networking.nix
|
||||||
|
./services.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.asahi = {
|
hardware.asahi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
useExperimentalGPUDriver = true;
|
useExperimentalGPUDriver = true;
|
||||||
peripheralFirmwareDirectory = ./firmware;
|
peripheralFirmwareDirectory = ./firmware;
|
||||||
# extractPeripheralFirmware = false;
|
|
||||||
setupAsahiSound = true;
|
setupAsahiSound = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
hardware.graphics.enable32Bit = lib.mkForce false;
|
||||||
boot.loader = {
|
|
||||||
systemd-boot = {
|
|
||||||
enable = true;
|
|
||||||
configurationLimit = 3;
|
|
||||||
};
|
|
||||||
efi.canTouchEfiVariables = lib.mkForce false;
|
|
||||||
};
|
|
||||||
|
|
||||||
boot.extraModprobeConfig = ''
|
nixpkgs.config.allowUnfree = true;
|
||||||
options hid_apple iso_layout=0
|
nixpkgs.config.allowUnsupportedSystem = true;
|
||||||
'';
|
|
||||||
|
|
||||||
boot.binfmt.emulatedSystems = [ "x86_64-linux" ];
|
|
||||||
|
|
||||||
# Networking configs
|
|
||||||
networking = {
|
|
||||||
hostName = "macbook-pro-nixos";
|
|
||||||
|
|
||||||
# Enable Network Manager
|
|
||||||
networkmanager = {
|
|
||||||
enable = lib.mkDefault true;
|
|
||||||
wifi.powersave = lib.mkDefault false;
|
|
||||||
settings.connectivity.uri = lib.mkDefault "http://nmcheck.gnome.org/check_network_status.txt";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
|
||||||
displayManager.sddm.wayland.enable = lib.mkDefault plasma;
|
|
||||||
displayManager.sddm.enable = lib.mkDefault plasma;
|
|
||||||
desktopManager.plasma6.enable = lib.mkDefault plasma;
|
|
||||||
desktopManager.gnome.enable = lib.mkForce true;
|
|
||||||
displayManager.gdm.enable = lib.mkForce true;
|
|
||||||
|
|
||||||
# enable auto discovery of printers
|
|
||||||
avahi = {
|
|
||||||
enable = true;
|
|
||||||
nssmdns4 = true;
|
|
||||||
openFirewall = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable Flatpak
|
|
||||||
flatpak.enable = lib.mkDefault false;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
users.users.matt = {
|
users.users.matt = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
|
extraGroups = [
|
||||||
|
"wheel"
|
||||||
|
"keys"
|
||||||
|
"networkmanager"
|
||||||
|
"ratbagd"
|
||||||
|
"input"
|
||||||
|
"scanner"
|
||||||
|
"lp"
|
||||||
|
"video"
|
||||||
|
"i2c"
|
||||||
|
]; # Enable ‘sudo’ for the user.
|
||||||
shell = pkgs.zsh;
|
shell = pkgs.zsh;
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
firefox
|
firefox
|
||||||
tree
|
tree
|
||||||
neofetch
|
|
||||||
gdm
|
|
||||||
git
|
git
|
||||||
box64
|
box64
|
||||||
#minecraft
|
|
||||||
prismlauncher
|
prismlauncher
|
||||||
distrobox
|
distrobox
|
||||||
podman
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.java.enable = true;
|
virtualisation = {
|
||||||
|
containers.enable = true;
|
||||||
virtualisation.containers.enable = true;
|
podman.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
# List packages installed in system profile. To search, run:
|
# List packages installed in system profile. To search, run:
|
||||||
# $ nix search wget
|
# $ nix search wget
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
apple-cursor
|
micro
|
||||||
gnomeExtensions.dash-to-dock
|
|
||||||
gnomeExtensions.arcmenu
|
|
||||||
gnomeExtensions.appindicator
|
|
||||||
gnomeExtensions.tiling-assistant
|
|
||||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
wget
|
wget
|
||||||
];
|
];
|
||||||
@@ -103,30 +67,4 @@ in
|
|||||||
environment.sessionVariables = {
|
environment.sessionVariables = {
|
||||||
DBX_CONTAINER_MANAGER = "podman";
|
DBX_CONTAINER_MANAGER = "podman";
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.config.allowUnsupportedSystem = true;
|
|
||||||
|
|
||||||
# Copy the NixOS configuration file and link it from the resulting system
|
|
||||||
# (/run/current-system/configuration.nix). This is useful in case you
|
|
||||||
# accidentally delete configuration.nix.
|
|
||||||
# system.copySystemConfiguration = true;
|
|
||||||
|
|
||||||
# This option defines the first version of NixOS you have installed on this particular machine,
|
|
||||||
# and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
|
|
||||||
#
|
|
||||||
# Most users should NEVER change this value after the initial install, for any reason,
|
|
||||||
# even if you've upgraded your system to a new NixOS release.
|
|
||||||
#
|
|
||||||
# This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
|
|
||||||
# so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
|
|
||||||
# to actually do that.
|
|
||||||
#
|
|
||||||
# This value being lower than the current NixOS release does NOT mean your system is
|
|
||||||
# out of date, out of support, or vulnerable.
|
|
||||||
#
|
|
||||||
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
|
||||||
# and migrated your data accordingly.
|
|
||||||
#
|
|
||||||
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
|
||||||
system.stateVersion = "24.05"; # Did you read the comment?
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,39 +19,39 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/root" =
|
fileSystems."/root" =
|
||||||
{ device = "/dev/disk/by-uuid/69fa608d-1dd2-408a-9907-7d0881db5b4a";
|
{ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=root" ];
|
options = [ "compress=zstd" "noatime" "subvol=root" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/etc" =
|
fileSystems."/etc" =
|
||||||
{ device = "/dev/disk/by-uuid/69fa608d-1dd2-408a-9907-7d0881db5b4a";
|
{ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=etc" ];
|
options = [ "compress=zstd" "noatime" "subvol=etc" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/tmp" =
|
fileSystems."/tmp" =
|
||||||
{ device = "/dev/disk/by-uuid/69fa608d-1dd2-408a-9907-7d0881db5b4a";
|
{ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=tmp" ];
|
options = [ "compress=zstd" "noatime" "subvol=tmp" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/nix" =
|
fileSystems."/nix" =
|
||||||
{ device = "/dev/disk/by-uuid/69fa608d-1dd2-408a-9907-7d0881db5b4a";
|
{ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=nix" ];
|
options = [ "compress=zstd" "noatime" "subvol=nix" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/var/log" =
|
fileSystems."/var/log" =
|
||||||
{ device = "/dev/disk/by-uuid/69fa608d-1dd2-408a-9907-7d0881db5b4a";
|
{ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=log" ];
|
options = [ "compress=zstd" "noatime" "subvol=log" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/home" =
|
fileSystems."/home" =
|
||||||
{ device = "/dev/disk/by-uuid/69fa608d-1dd2-408a-9907-7d0881db5b4a";
|
{ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=home" ];
|
options = [ "compress=zstd" "subvol=home" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" =
|
||||||
@@ -60,7 +60,12 @@
|
|||||||
options = [ "fmask=0022" "dmask=0022" ];
|
options = [ "fmask=0022" "dmask=0022" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [ ];
|
swapDevices = [
|
||||||
|
{
|
||||||
|
device = "/tmp/swapfile";
|
||||||
|
randomEncryption.enable = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
# 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
|
||||||
|
|||||||
@@ -1,69 +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.
|
|
||||||
{ lib, modulesPath, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "sdhci_pci" ];
|
|
||||||
boot.initrd.kernelModules = [ ];
|
|
||||||
boot.kernelModules = [ ];
|
|
||||||
boot.extraModulePackages = [ ];
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "none";
|
|
||||||
fsType = "tmpfs";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/etc" = {
|
|
||||||
device = "/dev/disk/by-uuid/19b99a76-0285-443a-a83c-a00a5fab54f5";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=etc" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/disk/by-uuid/19b99a76-0285-443a-a83c-a00a5fab54f5";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=nix" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/var/log" = {
|
|
||||||
device = "/dev/disk/by-uuid/19b99a76-0285-443a-a83c-a00a5fab54f5";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=log" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/home" = {
|
|
||||||
device = "/dev/disk/by-uuid/19b99a76-0285-443a-a83c-a00a5fab54f5";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=home" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/root" = {
|
|
||||||
device = "/dev/disk/by-uuid/19b99a76-0285-443a-a83c-a00a5fab54f5";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=root" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/F4A1-C77F";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
# fileSystems."/boot" =
|
|
||||||
# { device = "/dev/disk/by-uuid/3aaa1d0e-057d-4b7d-b2fe-ef02db373e9f";
|
|
||||||
# fsType = "ext4";
|
|
||||||
# };
|
|
||||||
|
|
||||||
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.wlp1s0f0.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
|
|
||||||
}
|
|
||||||
@@ -4,4 +4,11 @@
|
|||||||
home.username = "matt";
|
home.username = "matt";
|
||||||
home.homeDirectory = "/home/matt";
|
home.homeDirectory = "/home/matt";
|
||||||
home.stateVersion = "23.11";
|
home.stateVersion = "23.11";
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
iw
|
||||||
|
iwd
|
||||||
|
orca-slicer
|
||||||
|
vscodium
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
44
hosts/mac-nixos/hyprland-settings.nix
Normal file
44
hosts/mac-nixos/hyprland-settings.nix
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
{
|
||||||
|
monitor = [
|
||||||
|
"eDP-1,3456x2234@60.00000,0x0,1.0,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
|
||||||
|
];
|
||||||
|
|
||||||
|
workspace = [
|
||||||
|
"name:firefox, monitor:eDP-1, default:false, special, class:(.*firefox.*)"
|
||||||
|
"name:discord, monitor:eDP-1, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
|
||||||
|
"name:steam, monitor:eDP-1, default:false, special, class:(.*[Ss]team.*)"
|
||||||
|
];
|
||||||
|
|
||||||
|
windowRule = [
|
||||||
|
# "tag +fakefull, fullscreen: 0"
|
||||||
|
# "float, tag:fakefull"
|
||||||
|
# "size 3356 2160, tag:fakefull"
|
||||||
|
# "move 100 74, tag:fakefull"
|
||||||
|
# "noanim, tag:fakefull"
|
||||||
|
# "noblur, tag:fakefull"
|
||||||
|
# "norounding, tag:fakefull"
|
||||||
|
# "noshadow, tag:fakefull"
|
||||||
|
# "immediate, tag:fakefull"
|
||||||
|
# "noborder, tag:fakefull"
|
||||||
|
# "nodim, tag:fakefull"
|
||||||
|
# "idleinhibit, tag:fakefull"
|
||||||
|
"size 2160 3356, tag:horizonrdp"
|
||||||
|
];
|
||||||
|
|
||||||
|
waybar = {
|
||||||
|
modules-right = [
|
||||||
|
"tray"
|
||||||
|
"temperature"
|
||||||
|
"temperature#gpu"
|
||||||
|
"keyboard-state#capslock"
|
||||||
|
"keyboard-state#numlock"
|
||||||
|
"wireplumber#sink"
|
||||||
|
# "wireplumber#source"
|
||||||
|
"bluetooth"
|
||||||
|
"network"
|
||||||
|
"clock"
|
||||||
|
"battery"
|
||||||
|
"custom/weather"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
37
hosts/mac-nixos/networking.nix
Normal file
37
hosts/mac-nixos/networking.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{ pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
# Networking configs
|
||||||
|
networking = {
|
||||||
|
hostName = "macbook-pro-nixos";
|
||||||
|
|
||||||
|
wireless.iwd = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
General = {
|
||||||
|
EnableNetworkConfiguration = true;
|
||||||
|
};
|
||||||
|
Rank = {
|
||||||
|
BandModifier2_4GHz = 1.0;
|
||||||
|
BandModifier5GHz = 5.0;
|
||||||
|
BandModifier6GHz = 10.0;
|
||||||
|
};
|
||||||
|
# DriverQuirks = {
|
||||||
|
# PowerSaveDisable = "hci_bcm4377,brcmfmac";
|
||||||
|
# };
|
||||||
|
Network = {
|
||||||
|
AutoConnect = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable Network Manager
|
||||||
|
networkmanager = {
|
||||||
|
enable = lib.mkForce false;
|
||||||
|
wifi = {
|
||||||
|
backend = lib.mkForce "iwd";
|
||||||
|
powersave = lib.mkDefault false;
|
||||||
|
};
|
||||||
|
settings.connectivity.uri = lib.mkDefault "http://nmcheck.gnome.org/check_network_status.txt";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
123
hosts/mac-nixos/omnissa.nix
Normal file
123
hosts/mac-nixos/omnissa.nix
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
{ stdenv
|
||||||
|
, lib
|
||||||
|
, buildFHSEnv
|
||||||
|
, fetchurl
|
||||||
|
, makeWrapper
|
||||||
|
, gsettings-desktop-schemas
|
||||||
|
, opensc
|
||||||
|
, writeTextDir
|
||||||
|
, configText ? ""
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "2503-8.15.0";
|
||||||
|
sysArch = "armhf";
|
||||||
|
mainProgram = "horizon-client";
|
||||||
|
|
||||||
|
wrapBinCommands = path: name: ''
|
||||||
|
makeWrapper "$out/${path}/${name}" "$out/bin/${name}_wrapper" \
|
||||||
|
--set GTK_THEME Adwaita \
|
||||||
|
--suffix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" \
|
||||||
|
--suffix LD_LIBRARY_PATH : "$out/lib/omnissa/horizon:$out/lib/omnissa/horizon/vdpService:$out/lib/omnissa"
|
||||||
|
'';
|
||||||
|
|
||||||
|
omnissaHorizonClientFiles = stdenv.mkDerivation {
|
||||||
|
pname = "omnissa-horizon-armhf-files";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://download3.omnissa.com/software/CART26FQ1_LIN_2503_TARBALL/Omnissa-Horizon-Client-Linux-2503-8.15.0-14256322247.tar.gz";
|
||||||
|
sha256 = "sha256-x98ITXF9xwzlPq375anQ2qBpMbZAcCqDVXBfvZPha7Q=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir ext
|
||||||
|
tar -xzf $src
|
||||||
|
cd Omnissa-Horizon-Client-Linux-*/${sysArch}
|
||||||
|
|
||||||
|
mkdir -p ext
|
||||||
|
for archive in *.tar.gz; do
|
||||||
|
tar -C ext --strip-components=1 -xf "$archive"
|
||||||
|
done
|
||||||
|
|
||||||
|
chmod -R u+w ext/usr/lib
|
||||||
|
|
||||||
|
mkdir -p $out
|
||||||
|
mv ext/usr $out
|
||||||
|
mv ext/${sysArch}/lib $out/
|
||||||
|
mv ext/${sysArch}/include $out/
|
||||||
|
|
||||||
|
mkdir -p $out/lib/omnissa/horizon/pkcs11
|
||||||
|
ln -s ${opensc}/lib/pkcs11/opensc-pkcs11.so $out/lib/omnissa/horizon/pkcs11/libopenscpkcs11.so
|
||||||
|
|
||||||
|
chmod +x "$out/usr/bin/horizon-client"
|
||||||
|
${wrapBinCommands "usr/bin" "horizon-client"}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
omnissaFHSUserEnv =
|
||||||
|
pname:
|
||||||
|
buildFHSEnv {
|
||||||
|
inherit pname version;
|
||||||
|
|
||||||
|
runScript = "${omnissaHorizonClientFiles}/bin/${pname}_wrapper";
|
||||||
|
|
||||||
|
targetPkgs = pkgs: with pkgs; [
|
||||||
|
atk
|
||||||
|
cairo
|
||||||
|
dbus
|
||||||
|
file
|
||||||
|
fontconfig
|
||||||
|
freetype
|
||||||
|
gdk-pixbuf
|
||||||
|
glib
|
||||||
|
gtk3
|
||||||
|
libjpeg
|
||||||
|
libpng
|
||||||
|
libpulseaudio
|
||||||
|
libtiff
|
||||||
|
libuuid
|
||||||
|
libv4l
|
||||||
|
libxml2
|
||||||
|
pango
|
||||||
|
pcsclite
|
||||||
|
pixman
|
||||||
|
udev
|
||||||
|
omnissaHorizonClientFiles
|
||||||
|
xorg.libX11
|
||||||
|
xorg.libXau
|
||||||
|
xorg.libXcursor
|
||||||
|
xorg.libXext
|
||||||
|
xorg.libXi
|
||||||
|
xorg.libXrandr
|
||||||
|
xorg.libXrender
|
||||||
|
xorg.libXtst
|
||||||
|
zlib
|
||||||
|
|
||||||
|
(writeTextDir "etc/omnissa/config" configText)
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "omnissa-horizon-client";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
ln -s ${omnissaFHSUserEnv "horizon-client"}/bin/horizon-client $out/bin/
|
||||||
|
ln -s ${omnissaFHSUserEnv "horizon-eucusbarbitrator"}/bin/horizon-eucusbarbitrator $out/bin/
|
||||||
|
'';
|
||||||
|
|
||||||
|
passthru.unwrapped = omnissaHorizonClientFiles;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Omnissa Horizon Client for ARM";
|
||||||
|
homepage = "https://www.omnissa.com/products/horizon-8/";
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
platforms = [ "aarch64-linux" "armv7l-linux" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
83
hosts/mac-nixos/services.nix
Normal file
83
hosts/mac-nixos/services.nix
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
{ lib, ... }:
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
auto-cpufreq = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
# settings for when connected to a power source
|
||||||
|
charger = {
|
||||||
|
# see available governors by running: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
|
||||||
|
# preferred governor
|
||||||
|
governor = "performance";
|
||||||
|
|
||||||
|
# minimum cpu frequency (in kHz)
|
||||||
|
# example: for 800 MHz = 800000 kHz --> scaling_min_freq = 800000
|
||||||
|
# see conversion info: https://www.rapidtables.com/convert/frequency/mhz-to-hz.html
|
||||||
|
# to use this feature, uncomment the following line and set the value accordingly
|
||||||
|
# scaling_min_freq = 800000
|
||||||
|
|
||||||
|
# maximum cpu frequency (in kHz)
|
||||||
|
# example: for 1GHz = 1000 MHz = 1000000 kHz -> scaling_max_freq = 1000000
|
||||||
|
# see conversion info: https://www.rapidtables.com/convert/frequency/mhz-to-hz.html
|
||||||
|
# to use this feature, uncomment the following line and set the value accordingly
|
||||||
|
# scaling_max_freq = 1000000
|
||||||
|
|
||||||
|
# turbo boost setting. possible values: always, auto, never
|
||||||
|
turbo = "auto";
|
||||||
|
};
|
||||||
|
# settings for when using battery power
|
||||||
|
battery = {
|
||||||
|
# see available governors by running: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
|
||||||
|
# preferred governor
|
||||||
|
governor = "schedutil";
|
||||||
|
|
||||||
|
# minimum cpu frequency (in kHz)
|
||||||
|
# example: for 800 MHz = 800000 kHz --> scaling_min_freq = 800000
|
||||||
|
# see conversion info: https://www.rapidtables.com/convert/frequency/mhz-to-hz.html
|
||||||
|
# to use this feature, uncomment the following line and set the value accordingly
|
||||||
|
# scaling_min_freq = 800000
|
||||||
|
|
||||||
|
# maximum cpu frequency (in kHz)
|
||||||
|
# see conversion info: https://www.rapidtables.com/convert/frequency/mhz-to-hz.html
|
||||||
|
# example: for 1GHz = 1000 MHz = 1000000 kHz -> scaling_max_freq = 1000000
|
||||||
|
# to use this feature, uncomment the following line and set the value accordingly
|
||||||
|
# scaling_max_freq = 1000000
|
||||||
|
|
||||||
|
# turbo boost setting (always, auto, or never)
|
||||||
|
turbo = "auto";
|
||||||
|
|
||||||
|
# battery charging threshold
|
||||||
|
# reference: https://github.com/AdnanHodzic/auto-cpufreq/#battery-charging-thresholds
|
||||||
|
#enable_thresholds = true
|
||||||
|
#start_threshold = 20
|
||||||
|
#stop_threshold = 80
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
displayManager = {
|
||||||
|
sddm = {
|
||||||
|
enable = lib.mkForce true;
|
||||||
|
wayland.enable = lib.mkForce true;
|
||||||
|
};
|
||||||
|
gdm.enable = lib.mkForce false;
|
||||||
|
};
|
||||||
|
|
||||||
|
desktopManager = {
|
||||||
|
plasma6.enable = lib.mkForce false;
|
||||||
|
gnome.enable = lib.mkForce false;
|
||||||
|
};
|
||||||
|
|
||||||
|
logind = {
|
||||||
|
lidSwitch = "suspend";
|
||||||
|
lidSwitchExternalPower = "ignore";
|
||||||
|
powerKey = "suspend";
|
||||||
|
powerKeyLongPress = "poweroff";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable Flatpak
|
||||||
|
flatpak.enable = lib.mkDefault false;
|
||||||
|
|
||||||
|
gvfs.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,4 +1,7 @@
|
|||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
settings = import ./settings.nix;
|
||||||
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./apps/actual
|
./apps/actual
|
||||||
@@ -69,7 +72,7 @@
|
|||||||
crowdsec = {
|
crowdsec = {
|
||||||
enable = true;
|
enable = true;
|
||||||
port = 9898;
|
port = 9898;
|
||||||
apiAddress = "10.0.1.18";
|
apiAddress = settings.hostAddress;
|
||||||
apiKey = "1daH89qmJ41r2Lpd9hvDw4sxtOAtBzaj3aKFOFqE";
|
apiKey = "1daH89qmJ41r2Lpd9hvDw4sxtOAtBzaj3aKFOFqE";
|
||||||
dataDir = "/media/nas/ssd/nix-app-data/crowdsec";
|
dataDir = "/media/nas/ssd/nix-app-data/crowdsec";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,8 +2,9 @@
|
|||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.nas-apps.actual;
|
cfg = config.nas-apps.actual;
|
||||||
|
settings = import ../settings.nix;
|
||||||
dataDir = "/data";
|
dataDir = "/data";
|
||||||
hostAddress = "10.0.1.18";
|
hostAddress = settings.hostAddress;
|
||||||
actualUserId = config.users.users.nix-apps.uid;
|
actualUserId = config.users.users.nix-apps.uid;
|
||||||
actualGroupId = config.users.groups.jallen-nas.gid;
|
actualGroupId = config.users.groups.jallen-nas.gid;
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.nas-apps.arrs;
|
cfg = config.nas-apps.arrs;
|
||||||
|
settings = import ../settings.nix;
|
||||||
radarrDataDir = "/var/lib/radarr";
|
radarrDataDir = "/var/lib/radarr";
|
||||||
downloadDir = "/downloads";
|
downloadDir = "/downloads";
|
||||||
incompleteDir = "/downloads-incomplete";
|
incompleteDir = "/downloads-incomplete";
|
||||||
@@ -29,7 +30,7 @@ in
|
|||||||
containers.arrs = {
|
containers.arrs = {
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
privateNetwork = true;
|
privateNetwork = true;
|
||||||
hostAddress = "10.0.1.18";
|
hostAddress = settings.hostAddress;
|
||||||
localAddress = cfg.localAddress;
|
localAddress = cfg.localAddress;
|
||||||
|
|
||||||
config =
|
config =
|
||||||
|
|||||||
@@ -2,7 +2,8 @@
|
|||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.nas-apps.gitea;
|
cfg = config.nas-apps.gitea;
|
||||||
hostAddress = "10.0.1.18";
|
settings = import ../settings.nix;
|
||||||
|
hostAddress = settings.hostAddress;
|
||||||
# localAddress = "10.0.4.18";
|
# localAddress = "10.0.4.18";
|
||||||
# httpPort = 3000;
|
# httpPort = 3000;
|
||||||
# sshPort = 2222;
|
# sshPort = 2222;
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
let
|
let
|
||||||
|
settings = import ../settings.nix;
|
||||||
immichPort = 2283;
|
immichPort = 2283;
|
||||||
dataDir = "/media/nas/main/photos";
|
dataDir = "/media/nas/main/photos";
|
||||||
dbPassword = config.sops.secrets."jallen-nas/immich/db-password".path;
|
dbPassword = config.sops.secrets."jallen-nas/immich/db-password".path;
|
||||||
@@ -15,7 +16,7 @@ in
|
|||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
IMMICH_HOST = lib.mkForce "0.0.0.0";
|
IMMICH_HOST = lib.mkForce "0.0.0.0";
|
||||||
IMMICH_TRUSTED_PROXIES = "10.0.1.18";
|
IMMICH_TRUSTED_PROXIES = settings.hostAddress;
|
||||||
TZ = "America/Chicago";
|
TZ = "America/Chicago";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -3,12 +3,13 @@
|
|||||||
let
|
let
|
||||||
jellyseerrPort = 5055;
|
jellyseerrPort = 5055;
|
||||||
dataDir = "/var/lib/private/jellyseerr";
|
dataDir = "/var/lib/private/jellyseerr";
|
||||||
|
settings = import ../settings.nix;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
containers.jellyseerr = {
|
containers.jellyseerr = {
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
privateNetwork = true;
|
privateNetwork = true;
|
||||||
hostAddress = "10.0.1.18";
|
hostAddress = settings.hostAddress;
|
||||||
localAddress = "10.0.1.52";
|
localAddress = "10.0.1.52";
|
||||||
hostAddress6 = "fc00::1";
|
hostAddress6 = "fc00::1";
|
||||||
localAddress6 = "fc00::4";
|
localAddress6 = "fc00::4";
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
let
|
let
|
||||||
|
settings = import ../settings.nix;
|
||||||
adminpass = config.sops.secrets."jallen-nas/nextcloud/adminpassword".path;
|
adminpass = config.sops.secrets."jallen-nas/nextcloud/adminpassword".path;
|
||||||
secretsFile = config.sops.secrets."jallen-nas/nextcloud/smtp_settings".path;
|
secretsFile = config.sops.secrets."jallen-nas/nextcloud/smtp_settings".path;
|
||||||
jwtSecretFile = config.sops.secrets."jallen-nas/onlyoffice-key".path;
|
jwtSecretFile = config.sops.secrets."jallen-nas/onlyoffice-key".path;
|
||||||
nextcloudUserId = config.users.users.nix-apps.uid;
|
nextcloudUserId = config.users.users.nix-apps.uid;
|
||||||
nextcloudGroupId = config.users.groups.jallen-nas.gid;
|
nextcloudGroupId = config.users.groups.jallen-nas.gid;
|
||||||
nextcloudPackage = pkgs.unstable.nextcloud31;
|
nextcloudPackage = pkgs.unstable.nextcloud31;
|
||||||
hostAddress = "10.0.1.18";
|
hostAddress = settings.hostAddress;
|
||||||
localAddress = "10.0.2.18";
|
localAddress = "10.0.2.18";
|
||||||
nextcloudPortExtHttp = 9988;
|
nextcloudPortExtHttp = 9988;
|
||||||
nextcloudPortExtHttps = 9943;
|
nextcloudPortExtHttps = 9943;
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
|
settings = import ../settings.nix;
|
||||||
paperlessPort = 28981;
|
paperlessPort = 28981;
|
||||||
paperlessUserId = config.users.users.nix-apps.uid;
|
paperlessUserId = config.users.users.nix-apps.uid;
|
||||||
paperlessGroupId = config.users.groups.jallen-nas.gid;
|
paperlessGroupId = config.users.groups.jallen-nas.gid;
|
||||||
@@ -14,7 +15,7 @@ in
|
|||||||
containers.paperless = {
|
containers.paperless = {
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
privateNetwork = true;
|
privateNetwork = true;
|
||||||
hostAddress = "10.0.1.18";
|
hostAddress = settings.hostAddress;
|
||||||
localAddress = "10.0.1.20";
|
localAddress = "10.0.1.20";
|
||||||
hostAddress6 = "fc00::1";
|
hostAddress6 = "fc00::1";
|
||||||
localAddress6 = "fc00::20";
|
localAddress6 = "fc00::20";
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
let
|
let
|
||||||
|
settings = import ../settings.nix;
|
||||||
domain = "mjallen.dev";
|
domain = "mjallen.dev";
|
||||||
serverIp = "10.0.1.18";
|
serverIp = settings.hostAddress;
|
||||||
|
|
||||||
# Forward services
|
# Forward services
|
||||||
authUrl = "http://${serverIp}:9000/outpost.goauthentik.io";
|
authUrl = "http://${serverIp}:9000/outpost.goauthentik.io";
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
let
|
let
|
||||||
hostname = "jallen-nas";
|
settings = import ./settings.nix;
|
||||||
ports = [
|
ports = [
|
||||||
8008 # restic
|
8008 # restic
|
||||||
9000 # authentik
|
9000 # authentik
|
||||||
@@ -27,7 +27,7 @@ in
|
|||||||
{
|
{
|
||||||
# Networking configs
|
# Networking configs
|
||||||
networking = {
|
networking = {
|
||||||
hostName = hostname;
|
hostName = settings.hostname;
|
||||||
|
|
||||||
useNetworkd = true;
|
useNetworkd = true;
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@ in
|
|||||||
type = "wifi";
|
type = "wifi";
|
||||||
};
|
};
|
||||||
ipv4 = {
|
ipv4 = {
|
||||||
address1 = "10.0.1.18/24";
|
address1 = "${settings.hostAddress}/24";
|
||||||
dns = "10.0.1.1";
|
dns = "10.0.1.1";
|
||||||
gateway = "10.0.1.1";
|
gateway = "10.0.1.1";
|
||||||
method = "manual";
|
method = "manual";
|
||||||
|
|||||||
@@ -29,7 +29,7 @@
|
|||||||
trusted_proxies = [
|
trusted_proxies = [
|
||||||
"127.0.0.0/8"
|
"127.0.0.0/8"
|
||||||
"::1/128"
|
"::1/128"
|
||||||
"10.0.1.18"
|
"10.0.1.3"
|
||||||
];
|
];
|
||||||
cache_optimistic = true;
|
cache_optimistic = true;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
let
|
let
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
ll = "ls -alh";
|
ll = "ls -alh";
|
||||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.18";
|
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.18";
|
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-flake = "nix flake update pi4-nixpkgs pi4-home-manager pi4-impermanence pi4-sops-nix pi4-nixos-hardware pi4-nixos-raspberrypi pi4-disko --flake /etc/nixos";
|
update-flake = "nix flake update pi4-nixpkgs pi4-home-manager pi4-impermanence pi4-sops-nix pi4-nixos-hardware pi4-nixos-raspberrypi pi4-disko --flake /etc/nixos";
|
||||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.18 --build-host admin@10.0.1.18 --flake ~/nix-config#jallen-nas";
|
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||||
nas-ssh = "kitten ssh admin@10.0.1.18";
|
nas-ssh = "kitten ssh admin@10.0.1.3";
|
||||||
ducks = "du -cksh * | sort -hr | head -n 15";
|
ducks = "du -cksh * | sort -hr | head -n 15";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
let
|
let
|
||||||
hostAddress = "10.0.1.18";
|
hostAddress = "10.0.1.3";
|
||||||
localAddress = "10.0.5.18";
|
localAddress = "10.0.5.18";
|
||||||
hassPort = 8192;
|
hassPort = 8192;
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
{ pkgs, lib, config, ... }:
|
{ pkgs, lib, config, ... }:
|
||||||
let
|
let
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.18";
|
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.18";
|
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||||
update-flake = "nix flake update pi5-nixpkgs pi5-home-manager pi5-impermanence pi5-nixos-hardware pi5-sops-nix nixos-raspberrypi --flake /etc/nixos";
|
update-flake = "nix flake update pi5-nixpkgs pi5-home-manager pi5-impermanence pi5-nixos-hardware pi5-sops-nix nixos-raspberrypi --flake /etc/nixos";
|
||||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.18 --build-host admin@10.0.1.18 --flake ~/nix-config#jallen-nas";
|
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||||
nas-ssh = "kitten ssh admin@10.0.1.18";
|
nas-ssh = "kitten ssh admin@10.0.1.3";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ in
|
|||||||
CLIENT_ENDPOINT = "https://your-spotify.mjallen.dev";
|
CLIENT_ENDPOINT = "https://your-spotify.mjallen.dev";
|
||||||
SPOTIFY_PUBLIC = "e270589d72a6494680a17d325af8670d";
|
SPOTIFY_PUBLIC = "e270589d72a6494680a17d325af8670d";
|
||||||
SPOTIFY_SECRET = "423cb7b69fe8486e89eccd01e0c22924";
|
SPOTIFY_SECRET = "423cb7b69fe8486e89eccd01e0c22924";
|
||||||
MONGO_ENDPOINT = "mongodb://10.0.1.18:27017";
|
MONGO_ENDPOINT = "mongodb://10.0.1.3:27017";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
drawer = "nwg-drawer -fm nautilus -term kitty -mb 10 -mt 10 -ml 10 -mr 10 -pbuseicontheme -i ${settings.iconTheme}";
|
drawer = "nwg-drawer -fm nautilus -term kitty -mb 10 -mt 10 -ml 10 -mr 10 -pbuseicontheme -i ${settings.iconTheme}";
|
||||||
@@ -35,16 +35,18 @@ in
|
|||||||
bind = [
|
bind = [
|
||||||
"$mod, Return, exec, ${settings.defaultApps.terminal.pname}"
|
"$mod, Return, exec, ${settings.defaultApps.terminal.pname}"
|
||||||
"$mod, SPACE, exec, wofi --show drun"
|
"$mod, SPACE, exec, wofi --show drun"
|
||||||
|
", xf86Search, exec, wofi --show drun"
|
||||||
"$mod, Q, killactive, "
|
"$mod, Q, killactive, "
|
||||||
"$mod, M, exec, wlogout --protocol layer-shell"
|
"$mod, M, exec, wlogout --protocol layer-shell"
|
||||||
"$mod, E, exec, nautilus"
|
"$mod, E, exec, ${settings.defaultApps.fileExplorer.pname}"
|
||||||
"$mod, V, togglefloating, "
|
"$mod, V, togglefloating, "
|
||||||
"$mod, D, exec, ${drawer}"
|
"$mod, D, exec, ${drawer}"
|
||||||
"$mod, P, pseudo, " # dwindle
|
"$mod, P, pseudo, " # dwindle
|
||||||
"$mod, S, togglesplit, " # dwindle
|
"$mod, S, togglesplit, " # dwindle
|
||||||
"$mod SHIFT, Q, exec, hyprlock"
|
"$mod SHIFT, Q, exec, hyprlock"
|
||||||
"$mod SHIFT, 4, exec, hyprshot -m region --clipboard-only"
|
"$mod SHIFT, 4, exec, hyprshot -m region --clipboard-only"
|
||||||
"$mod,F,exec,hyprctl dispatch fullscreen active"
|
"$mod, F, fullscreen, 1"
|
||||||
|
"$mod SHIFT, F, fullscreen, 0"
|
||||||
"$mod SHIFT, E, exec, smile"
|
"$mod SHIFT, E, exec, smile"
|
||||||
|
|
||||||
"$mod, mouse:276, movecurrentworkspacetomonitor, ${settings.displayLeft.input}"
|
"$mod, mouse:276, movecurrentworkspacetomonitor, ${settings.displayLeft.input}"
|
||||||
@@ -112,12 +114,20 @@ in
|
|||||||
", XF86AudioPlay, exec, playerctl play-pause"
|
", XF86AudioPlay, exec, playerctl play-pause"
|
||||||
", XF86AudioPrev, exec, playerctl previous"
|
", XF86AudioPrev, exec, playerctl previous"
|
||||||
", XF86AudioNext, exec, playerctl next"
|
", XF86AudioNext, exec, playerctl next"
|
||||||
|
", XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
|
||||||
|
|
||||||
|
", XF86MonBrightnessUp, exec, brightnessctl set +5%"
|
||||||
|
", XF86MonBrightnessDown, exec, brightnessctl set 5%-"
|
||||||
|
|
||||||
|
"$mod, XF86MonBrightnessUp, exec, brightnessctl -d kbd_backlight set +10%"
|
||||||
|
"$mod, XF86MonBrightnessDown, exec, brightnessctl -d kbd_backlight set 10%-"
|
||||||
];
|
];
|
||||||
|
|
||||||
monitor = [
|
# monitor = [
|
||||||
"${settings.displayLeft.input},${settings.displayLeft.resolution}@${settings.displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
|
# "${settings.displayLeft.input},${settings.displayLeft.resolution}@${settings.displayLeft.refreshRate},0x0,1.0,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
|
||||||
"${settings.displayRight.input},${settings.displayRight.resolution}@${settings.displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98"
|
# ];
|
||||||
];
|
|
||||||
|
monitor = hyprlandSettings.monitor;
|
||||||
|
|
||||||
render = {
|
render = {
|
||||||
cm_fs_passthrough = 1;
|
cm_fs_passthrough = 1;
|
||||||
@@ -183,11 +193,7 @@ in
|
|||||||
force_default_wallpaper = 0;
|
force_default_wallpaper = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
workspace = [
|
workspace = hyprlandSettings.workspace;
|
||||||
"name:firefox, monitor:${settings.displayRight.input}, default:false, special, class:(.*firefox.*)"
|
|
||||||
"name:discord, monitor:${settings.displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
|
|
||||||
"name:steam, monitor:${settings.displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
|
|
||||||
];
|
|
||||||
|
|
||||||
windowrule = [
|
windowrule = [
|
||||||
"float, title:(file_progress)"
|
"float, title:(file_progress)"
|
||||||
@@ -255,11 +261,11 @@ in
|
|||||||
"renderunfocused, tag:horizonrdp"
|
"renderunfocused, tag:horizonrdp"
|
||||||
"idleinhibit, tag:horizonrdp"
|
"idleinhibit, tag:horizonrdp"
|
||||||
"float, tag:horizonrdp"
|
"float, tag:horizonrdp"
|
||||||
"size 2160 7680, tag:horizonrdp"
|
# "size 2160 7680, tag:horizonrdp"
|
||||||
# "move onscreen 0 0, tag:horizonrdp"
|
# "move onscreen 0 0, tag:horizonrdp"
|
||||||
# float the vmware window cause its annoying to use in fullscreen
|
# float the vmware window cause its annoying to use in fullscreen
|
||||||
"float, class:(.*[Vv][Mm]ware-view),title:([Vv][Mm]ware [Hh]orizon [Cc]lient)"
|
"float, class:(.*[Vv][Mm]ware-view),title:([Vv][Mm]ware [Hh]orizon [Cc]lient)"
|
||||||
];
|
] ++ hyprlandSettings.windowRule;
|
||||||
|
|
||||||
input = {
|
input = {
|
||||||
kb_layout = "us";
|
kb_layout = "us";
|
||||||
@@ -274,7 +280,8 @@ in
|
|||||||
follow_mouse = 1;
|
follow_mouse = 1;
|
||||||
|
|
||||||
touchpad = {
|
touchpad = {
|
||||||
natural_scroll = "no";
|
clickfinger_behavior = 1;
|
||||||
|
natural_scroll = "yes";
|
||||||
};
|
};
|
||||||
|
|
||||||
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
||||||
@@ -296,11 +303,6 @@ in
|
|||||||
exec-once = xhost +SI:localuser:root
|
exec-once = xhost +SI:localuser:root
|
||||||
exec-once = nwg-look -a
|
exec-once = nwg-look -a
|
||||||
exec-once = nwg-dock-hyprland -d
|
exec-once = nwg-dock-hyprland -d
|
||||||
exec-once = nm-applet
|
|
||||||
exec-once = [silent] firefox
|
|
||||||
exec-once = [silent] vesktop
|
|
||||||
exec-once = [silent] chromium --app="https://music.apple.com"
|
|
||||||
exec-once = [silent] steam
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,24 +1,33 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
|
|
||||||
defaultOpacity = "opacity: 0.85;";
|
defaultOpacity = "opacity: 0.85;";
|
||||||
defaultBorderRadius = "border-radius: 1rem;";
|
defaultBorderRadius = "border-radius: 1rem;";
|
||||||
defaultCenterOptions = ''
|
defaultCenterOptions = ''
|
||||||
padding: 0.5rem 1rem;
|
padding-top: 0.5rem;
|
||||||
margin: 5px 0;
|
padding-bottom: 0.5rem;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
margin: 3px 0;
|
||||||
'';
|
'';
|
||||||
borderRight = ''
|
borderRight = ''
|
||||||
padding: 0.5rem 1rem;
|
padding-top: 0.5rem;
|
||||||
margin: 5px 0;
|
padding-bottom: 0.5rem;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
margin: 3px 0;
|
||||||
border-radius: 0rem 1rem 1rem 0rem;
|
border-radius: 0rem 1rem 1rem 0rem;
|
||||||
margin-right: 1rem;
|
margin-right: 0.5rem;
|
||||||
'';
|
'';
|
||||||
borderLeft = ''
|
borderLeft = ''
|
||||||
padding: 0.5rem 1rem;
|
padding-top: 0.5rem;
|
||||||
margin: 5px 0;
|
padding-bottom: 0.5rem;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
margin: 3px 0;
|
||||||
border-radius: 1rem 0rem 0rem 1rem;
|
border-radius: 1rem 0rem 0rem 1rem;
|
||||||
margin-left: 1rem;
|
margin-left: 0.5rem;
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
@@ -34,7 +43,7 @@ in
|
|||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
mainBar = {
|
mainBar = {
|
||||||
layer = "bottom";
|
layer = "top";
|
||||||
position = "top";
|
position = "top";
|
||||||
mod = "dock";
|
mod = "dock";
|
||||||
exclusive = true;
|
exclusive = true;
|
||||||
@@ -47,20 +56,22 @@ in
|
|||||||
|
|
||||||
modules-center = [ "hyprland/window" ];
|
modules-center = [ "hyprland/window" ];
|
||||||
|
|
||||||
modules-right = [
|
# modules-right = [
|
||||||
"tray"
|
# "tray"
|
||||||
"custom/lights"
|
# "custom/lights"
|
||||||
"temperature"
|
# "temperature"
|
||||||
"temperature#gpu"
|
# "temperature#gpu"
|
||||||
"keyboard-state#capslock"
|
# "keyboard-state#capslock"
|
||||||
"keyboard-state#numlock"
|
# "keyboard-state#numlock"
|
||||||
"wireplumber#sink"
|
# "wireplumber#sink"
|
||||||
"wireplumber#source"
|
# "wireplumber#source"
|
||||||
"bluetooth"
|
# "bluetooth"
|
||||||
"idle_inhibitor"
|
# "idle_inhibitor"
|
||||||
"clock"
|
# "clock"
|
||||||
"custom/weather"
|
# "custom/weather"
|
||||||
];
|
# ];
|
||||||
|
|
||||||
|
modules-right = hyprlandSettings.waybar.modules-right;
|
||||||
|
|
||||||
# Module Definitions
|
# Module Definitions
|
||||||
# Left
|
# Left
|
||||||
@@ -204,6 +215,19 @@ in
|
|||||||
tooltip-format-enumerate-connected = { };
|
tooltip-format-enumerate-connected = { };
|
||||||
};
|
};
|
||||||
|
|
||||||
|
network = {
|
||||||
|
interface = "wlan0";
|
||||||
|
format = "{ifname}";
|
||||||
|
format-wifi = ""; # "{essid} ({signalStrength}%) ";
|
||||||
|
format-ethernet = ""; # "{ipaddr}/{cidr} ";
|
||||||
|
format-disconnected = "" ; # An empty format will hide the module.
|
||||||
|
tooltip-format = "{ifname} via {gwaddr} ";
|
||||||
|
tooltip-format-wifi = "{essid} ({signalStrength}%) ";
|
||||||
|
tooltip-format-ethernet = "{ifname} ";
|
||||||
|
tooltip-format-disconnected = "Disconnected";
|
||||||
|
max-length = 50;
|
||||||
|
};
|
||||||
|
|
||||||
idle_inhibitor = {
|
idle_inhibitor = {
|
||||||
format = "{icon}";
|
format = "{icon}";
|
||||||
format-icons = {
|
format-icons = {
|
||||||
@@ -226,6 +250,18 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
battery = {
|
||||||
|
# bat = "macsmc-ac";
|
||||||
|
interval = 60;
|
||||||
|
states = {
|
||||||
|
warning = 30;
|
||||||
|
critical = 15;
|
||||||
|
};
|
||||||
|
format = "{capacity}% {icon}";
|
||||||
|
format-icons = ["" "" "" "" ""];
|
||||||
|
max-length = 25;
|
||||||
|
};
|
||||||
|
|
||||||
"custom/weather" = {
|
"custom/weather" = {
|
||||||
tooltip = true;
|
tooltip = true;
|
||||||
format = { };
|
format = { };
|
||||||
@@ -301,8 +337,8 @@ in
|
|||||||
${defaultOpacity}
|
${defaultOpacity}
|
||||||
${defaultBorderRadius}
|
${defaultBorderRadius}
|
||||||
${defaultCenterOptions}
|
${defaultCenterOptions}
|
||||||
margin-left: 6rem;
|
margin-left: 4rem;
|
||||||
margin-right: 6rem;
|
margin-right: 100rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
#custom-weather {
|
#custom-weather {
|
||||||
@@ -312,6 +348,14 @@ in
|
|||||||
${borderRight}
|
${borderRight}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
color: ${settings.nord.aurora.nord15};
|
||||||
|
background-color: ${settings.nord.polarNight.nord0};
|
||||||
|
${defaultOpacity}
|
||||||
|
${defaultCenterOptions}
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
#clock {
|
#clock {
|
||||||
color: ${settings.nord.frost.nord9};
|
color: ${settings.nord.frost.nord9};
|
||||||
background-color: ${settings.nord.polarNight.nord0};
|
background-color: ${settings.nord.polarNight.nord0};
|
||||||
@@ -328,6 +372,14 @@ in
|
|||||||
${borderRight}
|
${borderRight}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
color: ${settings.nord.aurora.nord15};
|
||||||
|
background-color: ${settings.nord.polarNight.nord0};
|
||||||
|
${defaultOpacity}
|
||||||
|
${borderRight}
|
||||||
|
padding-right: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
#bluetooth {
|
#bluetooth {
|
||||||
color: ${settings.nord.frost.nord9};
|
color: ${settings.nord.frost.nord9};
|
||||||
background-color: ${settings.nord.polarNight.nord0};
|
background-color: ${settings.nord.polarNight.nord0};
|
||||||
@@ -380,8 +432,7 @@ in
|
|||||||
color: ${settings.nord.frost.nord9};
|
color: ${settings.nord.frost.nord9};
|
||||||
background-color: ${settings.nord.polarNight.nord0};
|
background-color: ${settings.nord.polarNight.nord0};
|
||||||
${defaultOpacity}
|
${defaultOpacity}
|
||||||
${defaultCenterOptions}
|
${borderLeft}
|
||||||
border-radius: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#custom-lights {
|
#custom-lights {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ../../settings.nix { inherit pkgs; };
|
settings = import ../../settings.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, lib, ... }:
|
{ config, pkgs, lib, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ./settings.nix { inherit pkgs; };
|
settings = import ./settings.nix { inherit pkgs; };
|
||||||
|
|
||||||
@@ -19,7 +19,9 @@ in
|
|||||||
./environment.nix
|
./environment.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users."${settings.user}" = import ./home.nix;
|
environment.systemPackages = [ bing-wallpaper pkgs.jq ];
|
||||||
|
|
||||||
|
home-manager.users."${settings.user}" = (import ./home.nix {inherit lib pkgs hyprlandSettings;});
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
displayManager = {
|
displayManager = {
|
||||||
@@ -152,8 +154,8 @@ in
|
|||||||
|
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wlr.enable = false;
|
wlr.enable = true;
|
||||||
xdgOpenUsePortal = false;
|
xdgOpenUsePortal = true;
|
||||||
extraPortals = [
|
extraPortals = [
|
||||||
pkgs.xdg-desktop-portal-hyprland
|
pkgs.xdg-desktop-portal-hyprland
|
||||||
pkgs.xdg-desktop-portal-gnome
|
pkgs.xdg-desktop-portal-gnome
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
box64
|
||||||
|
brightnessctl
|
||||||
ddcutil
|
ddcutil
|
||||||
dunst
|
dunst
|
||||||
egl-wayland
|
egl-wayland
|
||||||
@@ -24,6 +26,7 @@
|
|||||||
hyprsysteminfo
|
hyprsysteminfo
|
||||||
kdePackages.qtmultimedia
|
kdePackages.qtmultimedia
|
||||||
libnotify
|
libnotify
|
||||||
|
libz
|
||||||
mako
|
mako
|
||||||
meson
|
meson
|
||||||
nautilus
|
nautilus
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, hyprlandSettings, ... }:
|
||||||
let
|
let
|
||||||
settings = import ./settings.nix { inherit pkgs; };
|
settings = import ./settings.nix { inherit pkgs hyprlandSettings; };
|
||||||
wallpaper = "/run/wallpaper.jpg";
|
wallpaper = "/run/wallpaper.jpg";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./config.nix
|
./config.nix
|
||||||
./config/btop
|
./config/btop
|
||||||
./config/hypr
|
(import ./config/hypr {inherit pkgs hyprlandSettings;})
|
||||||
./config/kitty
|
./config/kitty
|
||||||
./config/mako
|
./config/mako
|
||||||
./config/waybar
|
(import ./config/waybar {inherit pkgs hyprlandSettings;})
|
||||||
./config/wofi
|
./config/wofi
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -20,9 +20,9 @@ in
|
|||||||
|
|
||||||
# Displays
|
# Displays
|
||||||
displayLeft = {
|
displayLeft = {
|
||||||
input = "DP-1";
|
input = "eDP-1";
|
||||||
resolution = "3840x2160";
|
resolution = "3456x2234"; # "3356x2160";
|
||||||
refreshRate = "240.00000";
|
refreshRate = "60.00000";
|
||||||
};
|
};
|
||||||
displayRight = {
|
displayRight = {
|
||||||
input = "DP-2";
|
input = "DP-2";
|
||||||
@@ -81,6 +81,13 @@ in
|
|||||||
catppuccin-sddm
|
catppuccin-sddm
|
||||||
colloid-gtk-theme
|
colloid-gtk-theme
|
||||||
colloid-icon-theme
|
colloid-icon-theme
|
||||||
|
nemo
|
||||||
|
nemo-python
|
||||||
|
nemo-emblems
|
||||||
|
nemo-preview
|
||||||
|
nemo-seahorse
|
||||||
|
nemo-fileroller
|
||||||
|
nemo-qml-plugin-dbus
|
||||||
papirus-folders
|
papirus-folders
|
||||||
sddm-astronaut
|
sddm-astronaut
|
||||||
];
|
];
|
||||||
@@ -88,6 +95,7 @@ in
|
|||||||
defaultApps = {
|
defaultApps = {
|
||||||
browser = pkgs.firefox;
|
browser = pkgs.firefox;
|
||||||
editor = pkgs.micro;
|
editor = pkgs.micro;
|
||||||
|
fileExplorer = pkgs.nemo;
|
||||||
visual = pkgs.vscodium;
|
visual = pkgs.vscodium;
|
||||||
terminal = pkgs.kitty;
|
terminal = pkgs.kitty;
|
||||||
office = pkgs.onlyoffice-bin_latest;
|
office = pkgs.onlyoffice-bin_latest;
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
hideMounts = true;
|
hideMounts = true;
|
||||||
directories = [
|
directories = [
|
||||||
"/var/lib/bluetooth"
|
"/var/lib/bluetooth"
|
||||||
|
"/var/lib/iwd"
|
||||||
"/var/lib/nixos"
|
"/var/lib/nixos"
|
||||||
"/var/lib/libvirt"
|
"/var/lib/libvirt"
|
||||||
"/var/lib/waydroid"
|
"/var/lib/waydroid"
|
||||||
|
|||||||
Reference in New Issue
Block a user