mirror of
https://github.com/thegeneralist01/config.git
synced 2026-05-30 08:37:01 +02:00
Compare commits
No commits in common. "eac37f953505358513e21e4a91da579173a89a1d" and "6d5689d68a2dc6886db0f78530fbea3a0652c445" have entirely different histories.
eac37f9535
...
6d5689d68a
12 changed files with 57 additions and 690 deletions
208
flake.lock
generated
208
flake.lock
generated
|
|
@ -153,7 +153,7 @@
|
||||||
},
|
},
|
||||||
"flake-utils_4": {
|
"flake-utils_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_6"
|
"systems": "systems_5"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1731533236,
|
||||||
|
|
@ -287,64 +287,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"niri": {
|
|
||||||
"inputs": {
|
|
||||||
"niri-stable": "niri-stable",
|
|
||||||
"niri-unstable": "niri-unstable",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
|
||||||
"xwayland-satellite-stable": "xwayland-satellite-stable",
|
|
||||||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773725889,
|
|
||||||
"narHash": "sha256-htkVJrtaWJS7wQSXg8d26RR6jF3Iab2bYTNfvTgv05Q=",
|
|
||||||
"owner": "sodiboo",
|
|
||||||
"repo": "niri-flake",
|
|
||||||
"rev": "9987baf8f935a1b3b2aa89a44c13b3239ecc640e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "sodiboo",
|
|
||||||
"repo": "niri-flake",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"niri-stable": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1756556321,
|
|
||||||
"narHash": "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=",
|
|
||||||
"owner": "YaLTeR",
|
|
||||||
"repo": "niri",
|
|
||||||
"rev": "01be0e65f4eb91a9cd624ac0b76aaeab765c7294",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "YaLTeR",
|
|
||||||
"ref": "v25.08",
|
|
||||||
"repo": "niri",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"niri-unstable": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773130184,
|
|
||||||
"narHash": "sha256-3bwx4WqCB06yfQIGB+OgIckOkEDyKxiTD5pOo4Xz2rI=",
|
|
||||||
"owner": "YaLTeR",
|
|
||||||
"repo": "niri",
|
|
||||||
"rev": "b07bde3ee82dd73115e6b949e4f3f63695da35ea",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "YaLTeR",
|
|
||||||
"repo": "niri",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nix-darwin": {
|
"nix-darwin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -456,22 +398,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773705440,
|
|
||||||
"narHash": "sha256-xB30bbAp0e7ogSEYyc126mAJMt4FRFh8wtm6ADE1xuM=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "48652e9d5aea46e555b3df87354280d4f29cd3a3",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-25.11",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1741865919,
|
"lastModified": 1741865919,
|
||||||
|
|
@ -521,22 +447,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1755186698,
|
|
||||||
"narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_5": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1769789167,
|
"lastModified": 1769789167,
|
||||||
"narHash": "sha256-kKB3bqYJU5nzYeIROI82Ef9VtTbu4uA3YydSk/Bioa8=",
|
"narHash": "sha256-kKB3bqYJU5nzYeIROI82Ef9VtTbu4uA3YydSk/Bioa8=",
|
||||||
|
|
@ -552,55 +462,10 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"noctalia": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"noctalia-qs": [
|
|
||||||
"noctalia-qs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773670009,
|
|
||||||
"narHash": "sha256-LEiA7ntxR6Biep4fgD2Jh9bB1g2olRNAToFUS51szDs=",
|
|
||||||
"owner": "noctalia-dev",
|
|
||||||
"repo": "noctalia-shell",
|
|
||||||
"rev": "9511f1fce45ffe763d7954f3207e3dfd644c97f2",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "noctalia-dev",
|
|
||||||
"repo": "noctalia-shell",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"noctalia-qs": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"systems": "systems_5",
|
|
||||||
"treefmt-nix": "treefmt-nix"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773629133,
|
|
||||||
"narHash": "sha256-9/GtCljeEYQAQlU4LB/o8cTJ8TzYvNCzf4ILnW5Rs3g=",
|
|
||||||
"owner": "noctalia-dev",
|
|
||||||
"repo": "noctalia-qs",
|
|
||||||
"rev": "5794d3a88fced826e1903164d77a7b07bdb93ff6",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "noctalia-dev",
|
|
||||||
"repo": "noctalia-qs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"readlater-bot": {
|
"readlater-bot": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_4",
|
"flake-utils": "flake-utils_4",
|
||||||
"nixpkgs": "nixpkgs_5"
|
"nixpkgs": "nixpkgs_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772524468,
|
"lastModified": 1772524468,
|
||||||
|
|
@ -625,13 +490,10 @@
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"homebrew-cask": "homebrew-cask",
|
"homebrew-cask": "homebrew-cask",
|
||||||
"homebrew-core": "homebrew-core",
|
"homebrew-core": "homebrew-core",
|
||||||
"niri": "niri",
|
|
||||||
"nix-darwin": "nix-darwin",
|
"nix-darwin": "nix-darwin",
|
||||||
"nix-homebrew": "nix-homebrew",
|
"nix-homebrew": "nix-homebrew",
|
||||||
"nix-openclaw": "nix-openclaw",
|
"nix-openclaw": "nix-openclaw",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_3",
|
||||||
"noctalia": "noctalia",
|
|
||||||
"noctalia-qs": "noctalia-qs",
|
|
||||||
"readlater-bot": "readlater-bot"
|
"readlater-bot": "readlater-bot"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -713,21 +575,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_5": {
|
"systems_5": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1689347949,
|
|
||||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_6": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
|
@ -742,57 +589,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"treefmt-nix": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_4"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1772660329,
|
|
||||||
"narHash": "sha256-IjU1FxYqm+VDe5qIOxoW+pISBlGvVApRjiw/Y/ttJzY=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "treefmt-nix",
|
|
||||||
"rev": "3710e0e1218041bbad640352a0440114b1e10428",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "treefmt-nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xwayland-satellite-stable": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1755491097,
|
|
||||||
"narHash": "sha256-m+9tUfsmBeF2Gn4HWa6vSITZ4Gz1eA1F5Kh62B0N4oE=",
|
|
||||||
"owner": "Supreeeme",
|
|
||||||
"repo": "xwayland-satellite",
|
|
||||||
"rev": "388d291e82ffbc73be18169d39470f340707edaa",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "Supreeeme",
|
|
||||||
"ref": "v0.7",
|
|
||||||
"repo": "xwayland-satellite",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xwayland-satellite-unstable": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773622265,
|
|
||||||
"narHash": "sha256-wToKwH7IgWdGLMSIWksEDs4eumR6UbbsuPQ42r0oTXQ=",
|
|
||||||
"owner": "Supreeeme",
|
|
||||||
"repo": "xwayland-satellite",
|
|
||||||
"rev": "a879e5e0896a326adc79c474bf457b8b99011027",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "Supreeeme",
|
|
||||||
"repo": "xwayland-satellite",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"zig": {
|
"zig": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
|
|
|
||||||
18
flake.nix
18
flake.nix
|
|
@ -17,10 +17,12 @@
|
||||||
nix-homebrew.url = "github:zhaofengli/nix-homebrew";
|
nix-homebrew.url = "github:zhaofengli/nix-homebrew";
|
||||||
homebrew-core = {
|
homebrew-core = {
|
||||||
url = "github:homebrew/homebrew-core";
|
url = "github:homebrew/homebrew-core";
|
||||||
|
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
homebrew-cask = {
|
homebrew-cask = {
|
||||||
url = "github:homebrew/homebrew-cask";
|
url = "github:homebrew/homebrew-cask";
|
||||||
|
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -44,11 +46,6 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
niri = {
|
|
||||||
url = "github:sodiboo/niri-flake";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
helium = {
|
helium = {
|
||||||
# url = "github:FKouhai/helium2nix/main";
|
# url = "github:FKouhai/helium2nix/main";
|
||||||
url = "github:AlvaroParker/helium-nix";
|
url = "github:AlvaroParker/helium-nix";
|
||||||
|
|
@ -58,17 +55,6 @@
|
||||||
readlater-bot = {
|
readlater-bot = {
|
||||||
url = "github:thegeneralist01/bookkeeper";
|
url = "github:thegeneralist01/bookkeeper";
|
||||||
};
|
};
|
||||||
|
|
||||||
noctalia = {
|
|
||||||
url = "github:noctalia-dev/noctalia-shell";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
inputs.noctalia-qs.follows = "noctalia-qs";
|
|
||||||
};
|
|
||||||
|
|
||||||
noctalia-qs = {
|
|
||||||
url = "github:noctalia-dev/noctalia-qs";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,7 @@
|
||||||
# your system. Help is available in the configuration.nix(5) man page, on
|
# 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`).
|
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||||
|
|
||||||
{
|
{ config, pkgs, inputs, ... }:
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ./hardware-configuration.nix ];
|
imports = [ ./hardware-configuration.nix ];
|
||||||
|
|
@ -15,20 +10,12 @@
|
||||||
users.users.thegeneralist = {
|
users.users.thegeneralist = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "thegeneralist";
|
description = "thegeneralist";
|
||||||
extraGroups = [
|
extraGroups = [ "wheel" "audio" "video" "input" "scanner" ];
|
||||||
"wheel"
|
shell = pkgs.nushell;
|
||||||
"audio"
|
|
||||||
"video"
|
|
||||||
"input"
|
|
||||||
"scanner"
|
|
||||||
];
|
|
||||||
shell = pkgs.zsh;
|
|
||||||
home = "/home/thegeneralist";
|
home = "/home/thegeneralist";
|
||||||
openssh.authorizedKeys.keys =
|
openssh.authorizedKeys.keys = let
|
||||||
let
|
inherit (import ../../keys.nix) thegeneralist;
|
||||||
inherit (import ../../keys.nix) thegeneralist;
|
in [ thegeneralist ];
|
||||||
in
|
|
||||||
[ thegeneralist ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
|
|
@ -42,12 +29,10 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
age.secrets.hostkey.file = ./hostkey.age;
|
age.secrets.hostkey.file = ./hostkey.age;
|
||||||
services.openssh.hostKeys = [
|
services.openssh.hostKeys = [{
|
||||||
{
|
type = "ed25519";
|
||||||
type = "ed25519";
|
path = config.age.secrets.hostkey.path;
|
||||||
path = config.age.secrets.hostkey.path;
|
}];
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
# Some programs
|
# Some programs
|
||||||
services.libinput.enable = true;
|
services.libinput.enable = true;
|
||||||
|
|
@ -67,3 +52,4 @@
|
||||||
|
|
||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
inputs: self:
|
inputs: self:
|
||||||
let
|
let
|
||||||
inherit (inputs.nixpkgs.lib)
|
inherit (inputs.nixpkgs.lib)
|
||||||
hasSuffix filesystem attrValues filter getAttrFromPath
|
hasSuffix filesystem attrValues filter getAttrFromPath
|
||||||
hasAttrByPath mapAttrsToList concatMap;
|
hasAttrByPath mapAttrsToList concatMap;
|
||||||
|
|
||||||
# Helper to collect all .nix files recursively in a directory
|
# Helper to collect all .nix files recursively in a directory
|
||||||
collectModules = path:
|
collectModules = path:
|
||||||
if builtins.pathExists path
|
if builtins.pathExists path
|
||||||
then filter (hasSuffix ".nix") (filesystem.listFilesRecursive path)
|
then filter (hasSuffix ".nix") (filesystem.listFilesRecursive path)
|
||||||
else [];
|
else [];
|
||||||
|
|
@ -29,7 +29,7 @@ let
|
||||||
|
|
||||||
# Collect platform-specific modules
|
# Collect platform-specific modules
|
||||||
modulesCommon = collectModules ../modules/common;
|
modulesCommon = collectModules ../modules/common;
|
||||||
modulesLinux = collectModules ../modules/linux;
|
modulesLinux = collectModules ../modules/linux;
|
||||||
modulesDarwin = collectModules ../modules/darwin;
|
modulesDarwin = collectModules ../modules/darwin;
|
||||||
|
|
||||||
# Collect input modules by platform
|
# Collect input modules by platform
|
||||||
|
|
@ -47,10 +47,10 @@ in
|
||||||
# Main system builder function
|
# Main system builder function
|
||||||
mkSystem = os: configFile:
|
mkSystem = os: configFile:
|
||||||
let
|
let
|
||||||
systemBuilder = if os == "darwin"
|
systemBuilder = if os == "darwin"
|
||||||
then inputs.nix-darwin.lib.darwinSystem
|
then inputs.nix-darwin.lib.darwinSystem
|
||||||
else inputs.nixpkgs.lib.nixosSystem;
|
else inputs.nixpkgs.lib.nixosSystem;
|
||||||
|
|
||||||
platformModules = if os == "darwin"
|
platformModules = if os == "darwin"
|
||||||
then modulesDarwin ++ inputModulesDarwin
|
then modulesDarwin ++ inputModulesDarwin
|
||||||
else modulesLinux ++ inputModulesNixos;
|
else modulesLinux ++ inputModulesNixos;
|
||||||
|
|
@ -59,7 +59,7 @@ in
|
||||||
specialArgs = inputs // {
|
specialArgs = inputs // {
|
||||||
inherit inputs self os;
|
inherit inputs self os;
|
||||||
};
|
};
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
overlayModule
|
overlayModule
|
||||||
configFile
|
configFile
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@
|
||||||
"https://cache.thegeneralist01.com/"
|
"https://cache.thegeneralist01.com/"
|
||||||
"https://cache.garnix.io/"
|
"https://cache.garnix.io/"
|
||||||
"https://cache.nixos.org/"
|
"https://cache.nixos.org/"
|
||||||
"https://niri.cachix.org"
|
|
||||||
];
|
];
|
||||||
in {
|
in {
|
||||||
# todo: gc
|
# todo: gc
|
||||||
|
|
@ -24,7 +23,6 @@ in {
|
||||||
extra-trusted-public-keys = [
|
extra-trusted-public-keys = [
|
||||||
"cache.thegeneralist01.com:jkKcenR877r7fQuWq6cr0JKv2piqBWmYLAYsYsSJnT4="
|
"cache.thegeneralist01.com:jkKcenR877r7fQuWq6cr0JKv2piqBWmYLAYsYsSJnT4="
|
||||||
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||||
"niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964="
|
|
||||||
];
|
];
|
||||||
|
|
||||||
trusted-users = [ "thegeneralist" "central" "root" "@build" "@wheel" "@admin" "jellyfin" "git" ];
|
trusted-users = [ "thegeneralist" "central" "root" "@build" "@wheel" "@admin" "jellyfin" "git" ];
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@ let
|
||||||
|
|
||||||
unstable = import (builtins.fetchTarball {
|
unstable = import (builtins.fetchTarball {
|
||||||
url = "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz";
|
url = "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz";
|
||||||
sha256 = if (config.isServer) then "sha256:0fgmdh1j6qrx64wq8wk2hry2rjh3rkvz9pch29l8zn49nlndvxy2" else (if (config.onLinux) then "sha256:03plivnr4cg0h8v7djf9g2jra09r45pmdiirmy4lvl2n1d4yb7ac" else "sha256:16xi1yijq2ccbp8254zc0b5fgz0igxvyf4yn349wj2ggk4cl6dgn");
|
sha256 = if (config.isServer) then "sha256:0fgmdh1j6qrx64wq8wk2hry2rjh3rkvz9pch29l8zn49nlndvxy2" else (if (config.onLinux) then "sha256:0fgmdh1j6qrx64wq8wk2hry2rjh3rkvz9pch29l8zn49nlndvxy2" else "sha256:16xi1yijq2ccbp8254zc0b5fgz0igxvyf4yn349wj2ggk4cl6dgn");
|
||||||
}) { system = pkgs.system; };
|
}) { system = pkgs.system; };
|
||||||
package = unstable.nushell;
|
package = unstable.nushell;
|
||||||
in
|
in
|
||||||
|
|
|
||||||
|
|
@ -71,12 +71,12 @@ in
|
||||||
if config.isDarwin then
|
if config.isDarwin then
|
||||||
''[ -z "$INTELLIJ_ENVIRONMENT_READER" ] && [ -z "$skip" ]''
|
''[ -z "$INTELLIJ_ENVIRONMENT_READER" ] && [ -z "$skip" ]''
|
||||||
else
|
else
|
||||||
''[ -z "$INTELLIJ_ENVIRONMENT_READER" ] && [ -z "$skip" ] && [ -z "$SSH_TTY" ]'';
|
''[ -z "$INTELLIJ_ENVIRONMENT_READER" ] && [ -z "$skip" ] && [ -n "$SSH_TTY" ]'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
home.file.".zshrc".text = # zsh
|
home.file.".zshrc".text = # zsh
|
||||||
''
|
''
|
||||||
export PATH="$HOME/.local/bin:/run/wrappers/bin:/run/current-system/sw/bin:/nix/var/nix/profiles/default/bin:/etc/profiles/per-user/$USER/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin''${PATH:+:}''${PATH}"
|
export PATH="$HOME/.local/bin:/run/current-system/sw/bin:/nix/var/nix/profiles/default/bin:/etc/profiles/per-user/$USER/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin''${PATH:+:}''${PATH}"
|
||||||
source ${config'.home.sessionVariablesPackage}/etc/profile.d/hm-session-vars.sh
|
source ${config'.home.sessionVariablesPackage}/etc/profile.d/hm-session-vars.sh
|
||||||
|
|
||||||
if ${nuExecCondition}; then
|
if ${nuExecCondition}; then
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,6 @@ return {
|
||||||
r = { "<cmd>:lua vim.lsp.buf.format()<cr>", "Fo[R]mat" },
|
r = { "<cmd>:lua vim.lsp.buf.format()<cr>", "Fo[R]mat" },
|
||||||
t = { "<cmd>:lua Snacks.picker.todo_comments()<cr>", "TODOs" },
|
t = { "<cmd>:lua Snacks.picker.todo_comments()<cr>", "TODOs" },
|
||||||
},
|
},
|
||||||
prefix = "<leader>",
|
|
||||||
--conf end
|
--conf end
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -99,6 +99,3 @@ end)
|
||||||
vim.keymap.set("n", "<leader>lr", "<cmd>LspRestart<CR>", { desc = "Restart LSP" })
|
vim.keymap.set("n", "<leader>lr", "<cmd>LspRestart<CR>", { desc = "Restart LSP" })
|
||||||
vim.keymap.set("n", "<leader>le", "<cmd>LspStart<CR>", { desc = "Start LSP" })
|
vim.keymap.set("n", "<leader>le", "<cmd>LspStart<CR>", { desc = "Start LSP" })
|
||||||
vim.keymap.set("n", "<leader>ld", "<cmd>LspStop<CR>", { desc = "Stop LSP" })
|
vim.keymap.set("n", "<leader>ld", "<cmd>LspStop<CR>", { desc = "Stop LSP" })
|
||||||
|
|
||||||
vim.keymap.set("n", "<leader>fr", "<cmd>:lua vim.lsp.buf.format()<CR>", { desc = "Fo[R]mat" })
|
|
||||||
vim.keymap.set("n", "<leader>ft", "<cmd>:lua Snacks.picker.todo_comments()<CR>", { desc = "TODOs" })
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
{ pkgs, inputs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = [
|
|
||||||
inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
|
|
||||||
];
|
|
||||||
|
|
||||||
home-manager.sharedModules = [{
|
|
||||||
imports = [
|
|
||||||
inputs.noctalia.homeModules.default
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
}
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) concatStringsSep const flatten getAttr mapAttrsToList unique;
|
inherit (lib) concatStringsSep const flatten getAttr mapAttrsToList unique;
|
||||||
in {
|
in {
|
||||||
# users.defaultUserShell = pkgs.zsh;
|
users.defaultUserShell = pkgs.zsh;
|
||||||
|
|
||||||
# environment.sessionVariables.SHELLS = config.home-manager.users
|
environment.sessionVariables.SHELLS = config.home-manager.users
|
||||||
# |> mapAttrsToList (const <| getAttr "shellsByPriority")
|
|> mapAttrsToList (const <| getAttr "shellsByPriority")
|
||||||
# |> flatten
|
|> flatten
|
||||||
# |> map (drv: "${drv}${drv.shellPath}")
|
|> map (drv: "${drv}${drv.shellPath}")
|
||||||
# |> unique
|
|> unique
|
||||||
# |> concatStringsSep ":";
|
|> concatStringsSep ":";
|
||||||
|
|
||||||
# environment.shellAliases = {
|
# environment.shellAliases = {
|
||||||
# ls = mkForce null;
|
# ls = mkForce null;
|
||||||
|
|
|
||||||
|
|
@ -1,393 +1,10 @@
|
||||||
{ inputs, pkgs, ... }:
|
{ pkgs, lib, ... }: let
|
||||||
{
|
inherit (lib) optionalAttrs;
|
||||||
imports = [
|
in {
|
||||||
./noctalia.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
# May God help us
|
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
|
||||||
xdgOpenUsePortal = true;
|
|
||||||
extraPortals = [
|
|
||||||
pkgs.xdg-desktop-portal-gtk
|
|
||||||
pkgs.xdg-desktop-portal-gnome
|
|
||||||
];
|
|
||||||
config.common.default = "*";
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.sharedModules = [
|
|
||||||
inputs.niri.homeModules.niri
|
|
||||||
|
|
||||||
{
|
|
||||||
gtk = {
|
|
||||||
enable = true;
|
|
||||||
theme = {
|
|
||||||
name = "adw-gtk3-dark";
|
|
||||||
package = pkgs.adw-gtk3;
|
|
||||||
};
|
|
||||||
iconTheme = {
|
|
||||||
name = "Papirus-Dark";
|
|
||||||
package = pkgs.papirus-icon-theme;
|
|
||||||
};
|
|
||||||
cursorTheme = {
|
|
||||||
name = "Adwaita";
|
|
||||||
package = pkgs.adwaita-icon-theme;
|
|
||||||
size = 24;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.pointerCursor = {
|
|
||||||
name = "Adwaita";
|
|
||||||
package = pkgs.adwaita-icon-theme;
|
|
||||||
size = 24;
|
|
||||||
gtk.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
GTK_THEME = "adw-gtk3-dark";
|
|
||||||
XCURSOR_THEME = "Adwaita";
|
|
||||||
XCURSOR_SIZE = "24";
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg = {
|
|
||||||
enable = true;
|
|
||||||
mimeApps = {
|
|
||||||
enable = true;
|
|
||||||
defaultApplications = {
|
|
||||||
# NOTE: replace "helium.desktop" with the actual .desktop filename
|
|
||||||
# find it with: ls ~/.nix-profile/share/applications/ | grep -i helium
|
|
||||||
"text/html" = "helium.desktop";
|
|
||||||
"x-scheme-handler/http" = "helium.desktop";
|
|
||||||
"x-scheme-handler/https" = "helium.desktop";
|
|
||||||
"x-scheme-handler/about" = "helium.desktop";
|
|
||||||
"x-scheme-handler/unknown" = "helium.desktop";
|
|
||||||
"application/pdf" = "helium.desktop";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.niri = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.niri;
|
|
||||||
settings = {
|
|
||||||
layout = {
|
|
||||||
focus-ring = {
|
|
||||||
enable = false;
|
|
||||||
};
|
|
||||||
tab-indicator = {
|
|
||||||
enable = false;
|
|
||||||
};
|
|
||||||
border = {
|
|
||||||
enable = false;
|
|
||||||
};
|
|
||||||
# border = "off";
|
|
||||||
};
|
|
||||||
spawn-at-startup = [
|
|
||||||
{
|
|
||||||
command = [ "noctalia-shell" ];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
binds = {
|
|
||||||
# Shortcuts Pane
|
|
||||||
"Mod+Shift+Escape".action.show-hotkey-overlay = { };
|
|
||||||
|
|
||||||
# Application Shortcuts
|
|
||||||
"Mod+Return" = {
|
|
||||||
hotkey-overlay.title = "Open Terminal: ghostty";
|
|
||||||
action.spawn = [ "ghostty" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+B" = {
|
|
||||||
hotkey-overlay.title = "Open Browser: helium";
|
|
||||||
action.spawn = [ "helium" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+Alt+B" = {
|
|
||||||
hotkey-overlay.title = "Open Secondary Browser: firefox";
|
|
||||||
action.spawn = [ "firefox" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+Shift+Q" = {
|
|
||||||
hotkey-overlay.title = "Lock Screen: gtklock";
|
|
||||||
action.spawn = [ "gtklock" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+D" = {
|
|
||||||
hotkey-overlay.title = "Open App Launcher: fuzzel";
|
|
||||||
action.spawn = [
|
|
||||||
"fuzzel"
|
|
||||||
"toggle"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+E" = {
|
|
||||||
hotkey-overlay.title = "File Manager: Thunar";
|
|
||||||
action.spawn = [ "thunar" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+O" = {
|
|
||||||
hotkey-overlay.title = "Obsidian";
|
|
||||||
action.spawn = [ "sh" "-c" "obsidian" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+N" = {
|
|
||||||
hotkey-overlay.title = "X Notifications";
|
|
||||||
action.spawn = [ "helium" "https://x.com/i/notifications" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+Alt+E" = {
|
|
||||||
hotkey-overlay.title = "File Manager: Yazi";
|
|
||||||
action.spawn = [ "yazi" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Media Keys
|
|
||||||
"XF86AudioRaiseVolume" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"wpctl"
|
|
||||||
"set-volume"
|
|
||||||
"@DEFAULT_AUDIO_SINK@"
|
|
||||||
"5%+"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86AudioLowerVolume" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"wpctl"
|
|
||||||
"set-volume"
|
|
||||||
"@DEFAULT_AUDIO_SINK@"
|
|
||||||
"5%-"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
# "XF86MonBrightnessUp" = {
|
|
||||||
# allow-when-locked = true;
|
|
||||||
# action.spawn = [ "mediactl" "brightness_up" ];
|
|
||||||
# };
|
|
||||||
|
|
||||||
# "XF86MonBrightnessDown" = {
|
|
||||||
# allow-when-locked = true;
|
|
||||||
# action.spawn = [ "mediactl" "brightness_down" ];
|
|
||||||
# };
|
|
||||||
|
|
||||||
"XF86AudioMute" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"wpctl"
|
|
||||||
"set-mute"
|
|
||||||
"@DEFAULT_AUDIO_SINK@"
|
|
||||||
"toggle"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86AudioMicMute" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"wpctl"
|
|
||||||
"set-mute"
|
|
||||||
"@DEFAULT_AUDIO_SOURCE@"
|
|
||||||
"toggle"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86AudioNext" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"playerctl"
|
|
||||||
"next"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86AudioPause" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"playerctl"
|
|
||||||
"play-pause"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86AudioPlay" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"playerctl"
|
|
||||||
"play-pause"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86AudioPrev" = {
|
|
||||||
allow-when-locked = true;
|
|
||||||
action.spawn = [
|
|
||||||
"playerctl"
|
|
||||||
"previous"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Window Management
|
|
||||||
"Mod+Q".action.close-window = { };
|
|
||||||
|
|
||||||
"Mod+H".action.focus-column-left = { };
|
|
||||||
"Mod+J".action.focus-workspace-down = { };
|
|
||||||
"Mod+K".action.focus-workspace-up = { };
|
|
||||||
"Mod+L".action.focus-column-right = { };
|
|
||||||
|
|
||||||
"Mod+Left".action.focus-column-left = { };
|
|
||||||
"Mod+Down".action.focus-window-down = { };
|
|
||||||
"Mod+Up".action.focus-window-up = { };
|
|
||||||
"Mod+Right".action.focus-column-right = { };
|
|
||||||
|
|
||||||
# Move windows within workspace
|
|
||||||
"Mod+Shift+Left".action.move-column-left = { };
|
|
||||||
"Mod+Shift+Down".action.move-window-down = { };
|
|
||||||
"Mod+Shift+Up".action.move-window-up = { };
|
|
||||||
"Mod+Shift+Right".action.move-column-right = { };
|
|
||||||
|
|
||||||
"Mod+Shift+H".action.move-column-left = { };
|
|
||||||
"Mod+Shift+J".action.move-column-to-workspace-down = { };
|
|
||||||
"Mod+Shift+K".action.move-column-to-workspace-up = { };
|
|
||||||
"Mod+Shift+L".action.move-column-right = { };
|
|
||||||
|
|
||||||
# Move to workspace edges
|
|
||||||
"Mod+Shift+Home".action.move-column-to-first = { };
|
|
||||||
"Mod+Shift+End".action.move-column-to-last = { };
|
|
||||||
|
|
||||||
"Mod+Home".action.focus-column-first = { };
|
|
||||||
"Mod+End".action.focus-column-last = { };
|
|
||||||
|
|
||||||
# Monitor Management - Move between monitors
|
|
||||||
"Mod+Ctrl+Left".action.focus-monitor-left = { };
|
|
||||||
"Mod+Ctrl+Right".action.focus-monitor-right = { };
|
|
||||||
"Mod+Ctrl+Up".action.focus-monitor-up = { };
|
|
||||||
"Mod+Ctrl+Down".action.focus-monitor-down = { };
|
|
||||||
|
|
||||||
"Mod+Ctrl+H".action.focus-monitor-left = { };
|
|
||||||
"Mod+Ctrl+L".action.focus-monitor-right = { };
|
|
||||||
"Mod+Ctrl+K".action.focus-monitor-up = { };
|
|
||||||
"Mod+Ctrl+J".action.focus-monitor-down = { };
|
|
||||||
|
|
||||||
# Move windows to different monitors
|
|
||||||
"Mod+Shift+Ctrl+Left".action.move-column-to-monitor-left = { };
|
|
||||||
"Mod+Shift+Ctrl+Right".action.move-column-to-monitor-right = { };
|
|
||||||
"Mod+Shift+Ctrl+Up".action.move-column-to-monitor-up = { };
|
|
||||||
"Mod+Shift+Ctrl+Down".action.move-column-to-monitor-down = { };
|
|
||||||
|
|
||||||
"Mod+Shift+Ctrl+H".action.move-column-to-monitor-left = { };
|
|
||||||
"Mod+Shift+Ctrl+L".action.move-column-to-monitor-right = { };
|
|
||||||
"Mod+Shift+Ctrl+K".action.move-column-to-monitor-up = { };
|
|
||||||
"Mod+Shift+Ctrl+J".action.move-column-to-monitor-down = { };
|
|
||||||
|
|
||||||
# Workspace Management
|
|
||||||
"Mod+Escape" = {
|
|
||||||
hotkey-overlay.title = "Open Overview";
|
|
||||||
repeat = false;
|
|
||||||
action.toggle-overview = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+WheelScrollDown" = {
|
|
||||||
cooldown-ms = 100;
|
|
||||||
action.focus-workspace-down = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+WheelScrollUp" = {
|
|
||||||
cooldown-ms = 100;
|
|
||||||
action.focus-workspace-up = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
# Move windows to different workspaces
|
|
||||||
"Mod+Shift+WheelScrollDown" = {
|
|
||||||
cooldown-ms = 100;
|
|
||||||
action.move-column-to-workspace-down = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+Shift+WheelScrollUp" = {
|
|
||||||
cooldown-ms = 100;
|
|
||||||
action.move-column-to-workspace-up = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
# Column navigation with mouse
|
|
||||||
"Mod+WheelScrollRight".action.focus-column-right = { };
|
|
||||||
"Mod+WheelScrollLeft".action.focus-column-left = { };
|
|
||||||
"Mod+Ctrl+WheelScrollRight".action.move-column-right = { };
|
|
||||||
"Mod+Ctrl+WheelScrollLeft".action.move-column-left = { };
|
|
||||||
|
|
||||||
# Numbered Workspaces
|
|
||||||
"Mod+1".action.focus-workspace = 1;
|
|
||||||
"Mod+2".action.focus-workspace = 2;
|
|
||||||
"Mod+3".action.focus-workspace = 3;
|
|
||||||
"Mod+4".action.focus-workspace = 4;
|
|
||||||
"Mod+5".action.focus-workspace = 5;
|
|
||||||
"Mod+6".action.focus-workspace = 6;
|
|
||||||
"Mod+7".action.focus-workspace = 7;
|
|
||||||
"Mod+8".action.focus-workspace = 8;
|
|
||||||
"Mod+9".action.focus-workspace = 9;
|
|
||||||
|
|
||||||
# Move windows to numbered workspaces
|
|
||||||
"Mod+Shift+1".action.move-column-to-workspace = 1;
|
|
||||||
"Mod+Shift+2".action.move-column-to-workspace = 2;
|
|
||||||
"Mod+Shift+3".action.move-column-to-workspace = 3;
|
|
||||||
"Mod+Shift+4".action.move-column-to-workspace = 4;
|
|
||||||
"Mod+Shift+5".action.move-column-to-workspace = 5;
|
|
||||||
"Mod+Shift+6".action.move-column-to-workspace = 6;
|
|
||||||
"Mod+Shift+7".action.move-column-to-workspace = 7;
|
|
||||||
"Mod+Shift+8".action.move-column-to-workspace = 8;
|
|
||||||
"Mod+Shift+9".action.move-column-to-workspace = 9;
|
|
||||||
|
|
||||||
"Mod+Tab".action.focus-workspace-previous = { };
|
|
||||||
|
|
||||||
# Layout Controls
|
|
||||||
"Mod+C".action.center-column = { };
|
|
||||||
"Mod+Ctrl+C".action.center-visible-columns = { };
|
|
||||||
"Mod+BracketLeft".action.set-column-width = "-10%";
|
|
||||||
"Mod+BracketRight".action.set-column-width = "+10%";
|
|
||||||
"Mod+Shift+BracketLeft".action.set-window-height = "-10%";
|
|
||||||
"Mod+Shift+BracketRight".action.set-window-height = "+10%";
|
|
||||||
|
|
||||||
# Window resizing with mouse
|
|
||||||
"Mod+Ctrl+WheelScrollDown".action.set-window-height = "-5%";
|
|
||||||
"Mod+Ctrl+WheelScrollUp".action.set-window-height = "+5%";
|
|
||||||
|
|
||||||
# Window Modes
|
|
||||||
"Mod+T".action.toggle-window-floating = { };
|
|
||||||
"Mod+F".action.fullscreen-window = { };
|
|
||||||
"Mod+M".action.maximize-column = { };
|
|
||||||
|
|
||||||
# Utils
|
|
||||||
"Mod+S".action.screenshot = { };
|
|
||||||
|
|
||||||
"Mod+Shift+S".action.screenshot-screen = {
|
|
||||||
write-to-disk = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+Ctrl+S".action.screenshot-window = {
|
|
||||||
write-to-disk = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+P".action.spawn = [
|
|
||||||
"sh"
|
|
||||||
"-c"
|
|
||||||
"pgrep -x hyprpicker >/dev/null || hyprpicker"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
environment.sessionVariables = {
|
|
||||||
NIXOS_OZONE_WL = "1";
|
|
||||||
};
|
|
||||||
virtualisation.vmware.guest.enable = true;
|
virtualisation.vmware.guest.enable = true;
|
||||||
|
|
||||||
programs.niri = {
|
environment.systemPackages = [ pkgs.fuzzel ];
|
||||||
enable = true;
|
programs.niri.enable = true;
|
||||||
package = pkgs.niri;
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages = [
|
|
||||||
pkgs.fuzzel
|
|
||||||
pkgs.xfce.thunar
|
|
||||||
pkgs.playerctl
|
|
||||||
pkgs.wireplumber
|
|
||||||
];
|
|
||||||
|
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -407,25 +24,25 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# windowManager.i3 = optionalAttrs (false) {
|
windowManager.i3 = optionalAttrs (false) {
|
||||||
# enable = true;
|
enable = true;
|
||||||
# package = pkgs.i3;
|
package = pkgs.i3;
|
||||||
# configFile = ../dotfiles/i3/config;
|
configFile = ../dotfiles/i3/config;
|
||||||
#
|
|
||||||
# extraPackages = with pkgs; [
|
extraPackages = with pkgs; [
|
||||||
# i3
|
i3
|
||||||
# i3status
|
i3status
|
||||||
# rofi
|
rofi
|
||||||
# dmenu
|
dmenu
|
||||||
# feh
|
feh
|
||||||
# picom # transparency effects compositor
|
picom # transparency effects compositor
|
||||||
# dunst # notification daemon
|
dunst # notification daemon
|
||||||
# xfce.thunar
|
xfce.thunar
|
||||||
# nemo
|
nemo
|
||||||
# arandr # screen conf
|
arandr # screen conf
|
||||||
# lxappearance
|
lxappearance
|
||||||
# ];
|
];
|
||||||
# };
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# home.file.".xprofile".text = ''
|
# home.file.".xprofile".text = ''
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue