This commit is contained in:
Miguel Palhas
2026-06-16 11:42:33 +01:00
parent bb42e115d5
commit 8a7439fe1d
9 changed files with 225 additions and 790 deletions
+2 -1
View File
@@ -39,7 +39,8 @@
"WebFetch(domain:docs.pipewire.org)",
"Bash(wpctl status:*)",
"WebFetch(domain:bugs.chromium.org)",
"WebFetch(domain:gitlab.freedesktop.org)"
"WebFetch(domain:gitlab.freedesktop.org)",
"Bash(python3 -c ' *)"
]
},
"sandbox": {
Generated
+131 -176
View File
@@ -20,11 +20,11 @@
]
},
"locked": {
"lastModified": 1777499565,
"narHash": "sha256-nU55VWk99Pn1QzQDDjFISocC4SgDZ3Xp+zb6ji3JclM=",
"lastModified": 1780756231,
"narHash": "sha256-tXQxKdG5716uB9/LIkLQqQwHKf5mRSpHoZhz3lyI2Cg=",
"owner": "hyprwm",
"repo": "aquamarine",
"rev": "813c1e8981893c11e118b19c125d6bc282f51765",
"rev": "6ecde03f47172753fe5a2f334f9d3facfb7e6784",
"type": "github"
},
"original": {
@@ -39,11 +39,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1778199440,
"narHash": "sha256-neEu92AczcHfO4tENmyFnzQXvk5b/Tp+VM7hsevCYOk=",
"lastModified": 1781560224,
"narHash": "sha256-+4c90gzrBDnPtTs2B2M5xcDC5h0lN7lOg7dmxlPWteA=",
"owner": "sadjow",
"repo": "claude-code-nix",
"rev": "bacfe205bb986634fe4c60d2aaf3e3ce2fe40c11",
"rev": "c411244f49e20360939644a2228f6cb0789f97f6",
"type": "github"
},
"original": {
@@ -124,7 +124,7 @@
},
"flake-utils_3": {
"inputs": {
"systems": "systems_5"
"systems": "systems_4"
},
"locked": {
"lastModified": 1731533236,
@@ -146,11 +146,11 @@
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1778225528,
"narHash": "sha256-7pgppviD+sy2VnrDKuJ+WlH7ybq2flLssfC1rALmPsI=",
"lastModified": 1781514265,
"narHash": "sha256-JuwVe1E7ISnTf5BBaq43a+wwbE3pojyJzoHN2Mk35UE=",
"owner": "shazow",
"repo": "foundry.nix",
"rev": "bd136cffb887f2234d6a98aa6701c232955b227b",
"rev": "a4814804b19b1cbbc6349249b568e6a71d8e6ed7",
"type": "github"
},
"original": {
@@ -182,12 +182,15 @@
}
},
"hardware": {
"inputs": {
"nixpkgs": "nixpkgs_5"
},
"locked": {
"lastModified": 1778143761,
"narHash": "sha256-lkesY6x2X2qxlqLM7CT2iM/0rP2JB7fruPN3h8POXmI=",
"lastModified": 1781168557,
"narHash": "sha256-LOnLQ2tpYF9gqIDDr3+j3DbpJJr/QCH6zPRT2GzEUOE=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "3bcaa367d4c550d687a17ac792fd5cda214ee871",
"rev": "6358ff76821101c178e3ab4919a62799bfe3652e",
"type": "github"
},
"original": {
@@ -204,11 +207,11 @@
]
},
"locked": {
"lastModified": 1778144356,
"narHash": "sha256-dGM+QCstz/DyLB68+JK5GWyMx4QSqmOJEVgZmy63d/g=",
"lastModified": 1781557312,
"narHash": "sha256-QOIRYSUFSq7L5mY3dZymaVhcnne3tPgoR9riB0WocjA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e4419d3123b780d5f4c0bceeace450424387638c",
"rev": "c03e4752899e55705dfa63979abd885c582a5c48",
"type": "github"
},
"original": {
@@ -225,11 +228,11 @@
]
},
"locked": {
"lastModified": 1778805320,
"narHash": "sha256-nGFJ01m2CTBKD4ABtcY4vLhHrRN91LKr/pn41PcU78A=",
"lastModified": 1780515920,
"narHash": "sha256-8KX2hEeOX6KP3hBBJJI8dGWVrzbOOf1rBPmg/GUG24U=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "9846abe15e7d0d36b8acbd4d05f2b87461744c92",
"rev": "4c5c1e8ba14f1c7475fa31ff11bc1c19cd220974",
"type": "github"
},
"original": {
@@ -307,17 +310,17 @@
"hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner",
"hyprwire": "hyprwire",
"nixpkgs": "nixpkgs_5",
"nixpkgs": "nixpkgs_6",
"pre-commit-hooks": "pre-commit-hooks",
"systems": "systems_3",
"xdph": "xdph"
},
"locked": {
"lastModified": 1778199997,
"narHash": "sha256-L+jaxpUg7l8dThBsuXddzd5rv1QKMiKLENuwM/aG3aA=",
"lastModified": 1781551294,
"narHash": "sha256-xTVp7kSmB2qZExF34oT3DDPDqIetU6nf8CQ/zHPqkUY=",
"ref": "refs/heads/main",
"rev": "de9f8dc9831d921cd1ee30d5d14f45f0e345a8ca",
"revCount": 7275,
"rev": "88262e1f860adc56f528ef68b2909ee33a27186b",
"revCount": 7477,
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
@@ -434,7 +437,7 @@
"rose-pine-hyprcursor",
"nixpkgs"
],
"systems": "systems_6"
"systems": "systems_5"
},
"locked": {
"lastModified": 1709914708,
@@ -514,11 +517,11 @@
]
},
"locked": {
"lastModified": 1778179779,
"narHash": "sha256-Ri6rVf54CRD3aISHLhSY6H4tBScVjm9ebkv7rF2lcZM=",
"lastModified": 1780251518,
"narHash": "sha256-fG9xbb1SOAAJ+2kJRakp3ch+BmA/3dEg/K3PoAZTKkw=",
"owner": "hyprwm",
"repo": "hyprutils",
"rev": "3e170e5ad010602671f5f25b327e8bdb8fdd532c",
"rev": "40ede2e7bdec80ba5d4c443160d905e9f841ae5f",
"type": "github"
},
"original": {
@@ -568,11 +571,11 @@
]
},
"locked": {
"lastModified": 1777388329,
"narHash": "sha256-40YxVGF2rA9iH3D7am5fy4EOSBbMgpJtJ9yhl0Cx+qI=",
"lastModified": 1778410714,
"narHash": "sha256-o6RzFj4nJXaPRY7EM01siuCQeT41RfwwmcmFQqwFJJg=",
"owner": "hyprwm",
"repo": "hyprwire",
"rev": "04be2897e05f9b271d532b5ae56ca088d2eeac02",
"rev": "85148a8e612808cf5ddb25d0b3c5840f3498a7dc",
"type": "github"
},
"original": {
@@ -583,11 +586,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1778124196,
"narHash": "sha256-pYEytCNic/czazbV9r3tbQ6BZzqRBg/41x2dIC5ymOo=",
"lastModified": 1781454065,
"narHash": "sha256-d2xfDjnfRuf/xYGdu9VVRHiav/2w5hDL/5cw2TuVAXw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "68a8af93ff4297686cb68880845e61e5e2e41d92",
"rev": "9eac87a12312b8f60dd52e1c6e1a265f6fc7f5fc",
"type": "github"
},
"original": {
@@ -597,6 +600,22 @@
"type": "github"
}
},
"nixpkgs_10": {
"locked": {
"lastModified": 1780243769,
"narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "331800de5053fcebacf6813adb5db9c9dca22a0c",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1752480373,
@@ -645,37 +664,50 @@
},
"nixpkgs_5": {
"locked": {
"lastModified": 1777954456,
"narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1",
"type": "github"
"lastModified": 1767892417,
"narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=",
"rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre924538.3497aa5c9457/nixexprs.tar.xz"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
"type": "tarball",
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1777954456,
"narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=",
"owner": "nixos",
"lastModified": 1780749050,
"narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1",
"rev": "a799d3e3886da994fa307f817a6bc705ae538eeb",
"type": "github"
},
"original": {
"owner": "nixos",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1781074563,
"narHash": "sha256-md8WlXOlfnIeHeOScMTTHFyf2d6iaTwPl2apR5EQ3P4=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": {
"lastModified": 1710272261,
"narHash": "sha256-g0bDwXFmTE7uGDOs9HcJsfLFhH7fOsASbAuOzDC+fhQ=",
@@ -691,48 +723,31 @@
"type": "github"
}
},
"nixpkgs_8": {
"nixpkgs_9": {
"locked": {
"lastModified": 1777578337,
"narHash": "sha256-fN6ynMvcdwPDB09LpWJNO5ogu+HFydrBWXJywoI/NNg=",
"rev": "15f4ee454b1dce334612fa6843b3e05cf546efab",
"lastModified": 1781074563,
"narHash": "sha256-d34lhgOet4IqYMnCxbIvwFBMOyTV6PT4TyNEOP0/ZhU=",
"rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre990025.15f4ee454b1d/nixexprs.tar.xz"
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1014179.9ae611a455b9/nixexprs.tar.xz"
},
"original": {
"type": "tarball",
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
}
},
"nixpkgs_9": {
"locked": {
"lastModified": 1778443072,
"narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"noctalia": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"noctalia-qs": "noctalia-qs"
]
},
"locked": {
"lastModified": 1778104114,
"narHash": "sha256-+tbqLv7IW5Aem8kGF6cp4n3MtNBcwqmuGlMt6S1kQjs=",
"lastModified": 1781581126,
"narHash": "sha256-GXzO08gNKZsEuVgMhIfuUvc5G4Xh1rNot8KWjZsKNos=",
"owner": "noctalia-dev",
"repo": "noctalia-shell",
"rev": "eb2b53ddaa7564f5c93031cbe65cd5b6ef3c12a9",
"rev": "de82488dc60db736acd5bf95fb448405ea99f404",
"type": "github"
},
"original": {
@@ -741,37 +756,14 @@
"type": "github"
}
},
"noctalia-qs": {
"inputs": {
"nixpkgs": [
"noctalia",
"nixpkgs"
],
"systems": "systems_4",
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1777773024,
"narHash": "sha256-pLU+KB84A0Jei/vTD6pOS4Ovkmq3QDfPQHg1MlKsRqM=",
"owner": "noctalia-dev",
"repo": "noctalia-qs",
"rev": "d3e26ccd9eecde9139be00caf5dc2d4260fb31ee",
"type": "github"
},
"original": {
"owner": "noctalia-dev",
"repo": "noctalia-qs",
"type": "github"
}
},
"nvchad-starter": {
"flake": false,
"locked": {
"lastModified": 1774716235,
"narHash": "sha256-p5XuXq2aGiNIyMd1H/H9GPCQDldO12JXr3HX6KJu3kc=",
"lastModified": 1781540169,
"narHash": "sha256-WInj893sq8gTtIvSu0EY/5/3EiYpy2SPcNetjpKO68o=",
"owner": "naps62",
"repo": "nvchad-starter",
"rev": "7c227632f116a26b47f212eafd734cc6197f38c8",
"rev": "35370b831c42d0d4b2ca7291df6f4e53e2e48573",
"type": "github"
},
"original": {
@@ -791,11 +783,11 @@
]
},
"locked": {
"lastModified": 1778070131,
"narHash": "sha256-EedXCyi5QiavlU08WPPnspk/AM8e+WD410aV8QQF7dU=",
"lastModified": 1781363098,
"narHash": "sha256-uhidFg3n92Lh9JKQJQExEPNRe+fTzhC7/G9XebdzSYU=",
"owner": "nix-community",
"repo": "nix4nvchad",
"rev": "45fffa011c9c5dcb764763f29e0c3b6b5206a6cd",
"rev": "55d95057021c5d285d95c5f254006f4fa9c3084b",
"type": "github"
},
"original": {
@@ -814,11 +806,11 @@
]
},
"locked": {
"lastModified": 1776796298,
"narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=",
"lastModified": 1778507602,
"narHash": "sha256-kTwur1wV+01SdqskVMSo6JMEpg71ps3HpbFY2GsflKs=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad",
"rev": "61ab0e80d9c7ab14c256b5b453d8b3fb0189ba0a",
"type": "github"
},
"original": {
@@ -835,20 +827,20 @@
"hardware": "hardware",
"home-manager": "home-manager",
"hyprland": "hyprland",
"nixpkgs": "nixpkgs_6",
"nixpkgs": "nixpkgs_7",
"noctalia": "noctalia",
"nvchad-starter": "nvchad-starter",
"nvchad4nix": "nvchad4nix",
"rose-pine-hyprcursor": "rose-pine-hyprcursor",
"spicetify-nix": "spicetify-nix",
"systems": "systems_9",
"systems": "systems_8",
"zen-browser": "zen-browser"
}
},
"rose-pine-hyprcursor": {
"inputs": {
"hyprlang": "hyprlang_2",
"nixpkgs": "nixpkgs_7",
"nixpkgs": "nixpkgs_8",
"utils": "utils_2"
},
"locked": {
@@ -885,15 +877,15 @@
},
"spicetify-nix": {
"inputs": {
"nixpkgs": "nixpkgs_8",
"systems": "systems_8"
"nixpkgs": "nixpkgs_9",
"systems": "systems_7"
},
"locked": {
"lastModified": 1777789800,
"narHash": "sha256-XHCvLGu/bEEZRzXVKFu1i+2YB102Nr00n8e7xrzsfVs=",
"lastModified": 1781425310,
"narHash": "sha256-GTBka4Df/ZOacmisI/DI2LICyNChEqn/giah83LucdM=",
"owner": "Gerg-L",
"repo": "spicetify-nix",
"rev": "d0e921cc48aab6137d203a3eab19601dc2bdc0c3",
"rev": "aeaf7c81a45d3761da61cb05bfc370ac6d1b0441",
"type": "github"
},
"original": {
@@ -948,21 +940,6 @@
}
},
"systems_4": {
"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_5": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
@@ -977,7 +954,7 @@
"type": "github"
}
},
"systems_6": {
"systems_5": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
@@ -992,6 +969,21 @@
"type": "github"
}
},
"systems_6": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_7": {
"locked": {
"lastModified": 1681028828,
@@ -1008,21 +1000,6 @@
}
},
"systems_8": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_9": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
@@ -1037,28 +1014,6 @@
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"noctalia",
"noctalia-qs",
"nixpkgs"
]
},
"locked": {
"lastModified": 1775636079,
"narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"utils": {
"inputs": {
"systems": "systems_2"
@@ -1079,7 +1034,7 @@
},
"utils_2": {
"inputs": {
"systems": "systems_7"
"systems": "systems_6"
},
"locked": {
"lastModified": 1710146030,
@@ -1123,11 +1078,11 @@
]
},
"locked": {
"lastModified": 1777585783,
"narHash": "sha256-JTeWRy42VElroJ0rVdZuVXSoTLsx+NzQfGPKMbtn3SU=",
"lastModified": 1780133819,
"narHash": "sha256-0YPKIY3dlnR7SPq7Z8ekFVvzFsfeiAtEj+QUI3KHrlI=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "fa50d6fbaff8f42c61071b87b034a90d82a33558",
"rev": "4a170c0ba96fd37374f93d8f91c9ed91814828ac",
"type": "github"
},
"original": {
@@ -1139,14 +1094,14 @@
"zen-browser": {
"inputs": {
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_9"
"nixpkgs": "nixpkgs_10"
},
"locked": {
"lastModified": 1779649538,
"narHash": "sha256-k256zgHyqJ/0siFdq5y4GSwJyYKhQnW83N9K8S7OMKo=",
"lastModified": 1781426426,
"narHash": "sha256-yzxJMNgv/sLishhCT9G2lm7W9CjHSlXWkfbWC7vfjqc=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "e8fbde26a92a8c078fb1355c9f7c8dba5f7eb9d6",
"rev": "df336067c1a8af3bfce3f0b88b66dc1c57411b4e",
"type": "github"
},
"original": {
+2 -3
View File
@@ -44,7 +44,6 @@
];
};
programs.noctalia-shell.settings.bar = {
density = "comfortable";
};
# v4 `bar.density` has no v5 equivalent; spacing is tuned via
# bar.main.padding / widget_spacing / thickness if needed.
}
-1
View File
@@ -7,7 +7,6 @@
{
home.packages = with pkgs; [
blender
openscad
prusa-slicer
google-fonts
];
+2 -2
View File
@@ -32,7 +32,7 @@
fi
'';
noctalia-theme = ''
noctalia-shell ipc call darkMode setDark
noctalia msg theme-mode-set dark
'';
};
lightModeScripts = {
@@ -61,7 +61,7 @@
fi
'';
noctalia-theme = ''
noctalia-shell ipc call darkMode setLight
noctalia msg theme-mode-set light
'';
};
};
+7 -7
View File
@@ -131,12 +131,12 @@ in
"hyprctl setcursor Nordzy-cursors ${toString cfg.cursorSize}"
"hyprsunset"
"nerd-dictation begin --simulate-input-tool WTYPE --suspend-on-start && touch ~/.cache/nerd-dictation-suspended"
"noctalia-shell"
"noctalia"
];
layerrule = [
"blur 1, match:namespace noctalia-background-.*"
"ignore_alpha 0.5, match:namespace noctalia-background-.*"
"blur 1, match:namespace noctalia-wallpaper"
"ignore_alpha 0.5, match:namespace noctalia-wallpaper"
];
workspace = [
# no gaps when only window
@@ -203,14 +203,14 @@ in
"$mod" = "SUPER";
bind = [
"$mod, n, exec, noctalia-shell ipc call controlCenter toggle"
"$mod, n, exec, noctalia msg panel-toggle control-center"
"$mod, t, exec, kitty"
"$mod, v, togglefloating"
"$mod, q, killactive"
"$mod, f, fullscreen, 0"
"$mod SHIFT, f, fullscreen, 1"
"$mod, space, exec, noctalia-shell ipc call launcher toggle"
"$mod, space, exec, noctalia msg panel-toggle launcher"
# printscreen
", Print, exec, hyprshot -m region --raw | satty --filename - --output-filename ~/downloads/screenshots/$(date +%Y-%m-%d_%H-%M-%S).png"
@@ -285,12 +285,12 @@ in
general = {
after_sleep_cmd = "hyprctl dispatch dpms on";
ignore_dbus_inhibit = false;
lock_cmd = "noctalia-shell ipc call lockScreen lock";
lock_cmd = "noctalia msg session lock";
};
listener = [
{
timeout = 900;
on-timeout = "noctalia-shell ipc call lockScreen lock";
on-timeout = "noctalia msg session lock";
}
{
timeout = 1200;
@@ -14,589 +14,76 @@ in
{
imports = [ inputs.noctalia.homeModules.default ];
programs.noctalia-shell = {
# Noctalia v5 rewrote the config schema (TOML, snake_case, flat sections).
# The v4 settings (appLauncher.*, bar.widgets.*, controlCenter.shortcuts.*, etc.)
# have no v5 equivalents — most must now be tweaked through the in-shell
# Settings UI. See docs.noctalia.dev/v5 and example.toml in the upstream repo.
programs.noctalia = {
enable = true;
settings = {
appLauncher = {
autoPasteClipboard = false;
clipboardWatchImageCommand = "wl-paste --type image --watch cliphist store";
clipboardWatchTextCommand = "wl-paste --type text --watch cliphist store";
clipboardWrapText = true;
customLaunchPrefix = "";
customLaunchPrefixEnabled = false;
density = "default";
enableClipPreview = true;
enableClipboardHistory = true;
enableSessionSearch = true;
enableSettingsSearch = true;
enableWindowsSearch = true;
iconMode = "tabler";
ignoreMouseInput = false;
overviewLayer = true;
pinnedApps = [ ];
position = "center";
screenshotAnnotationTool = "";
showCategories = true;
showIconBackground = false;
sortByMostUsed = true;
terminalCommand = "kitty -e";
useApp2Unit = false;
viewMode = "list";
};
audio = {
cavaFrameRate = 30;
mprisBlacklist = [ ];
preferredPlayer = "spotify";
visualizerType = "linear";
volumeFeedback = false;
volumeOverdrive = false;
volumeStep = 5;
};
bar = {
autoHideDelay = 500;
autoShowDelay = 150;
backgroundOpacity = 0.93;
barType = "simple";
capsuleColorKey = "none";
capsuleOpacity = 1;
displayMode = "auto_hide";
floating = false;
frameRadius = 12;
frameThickness = 8;
hideOnOverview = false;
marginHorizontal = 4;
marginVertical = 4;
monitors = [ ];
outerCorners = true;
position = "top";
screenOverrides = [ ];
showCapsule = true;
showOutline = false;
useSeparateOpacity = false;
widgets = {
center = [
{
colorizeIcons = false;
hideMode = "hidden";
id = "ActiveWindow";
maxWidth = 145;
scrollingMode = "hover";
showIcon = true;
textColor = "none";
useFixedWidth = false;
}
{
colorName = "primary";
hideWhenIdle = true;
id = "AudioVisualizer";
width = 200;
}
];
left = [
{
characterCount = 2;
colorizeIcons = false;
emptyColor = "secondary";
enableScrollWheel = true;
focusedColor = "primary";
followFocusedScreen = false;
groupedBorderOpacity = 1;
hideUnoccupied = true;
iconScale = 0.8;
id = "Workspace";
labelMode = "name";
occupiedColor = "secondary";
pillSize = 0.75;
showApplications = false;
showBadge = true;
showLabelsOnlyWhenOccupied = true;
unfocusedIconsOpacity = 1;
}
];
right = [
{
blacklist = [ ];
chevronColor = "none";
colorizeIcons = true;
drawerEnabled = false;
hidePassive = true;
id = "Tray";
pinned = [ ];
}
{
displayMode = "alwaysShow";
iconColor = "none";
id = "Network";
textColor = "none";
}
{
displayMode = "alwaysShow";
iconColor = "none";
id = "Bluetooth";
textColor = "none";
}
{
deviceNativePath = "__default__";
displayMode = "graphic-clean";
hideIfIdle = false;
hideIfNotDetected = true;
id = "Battery";
showNoctaliaPerformance = false;
showPowerProfiles = false;
}
{
displayMode = "onhover";
iconColor = "none";
id = "Volume";
middleClickCommand = "pwvucontrol || pavucontrol";
textColor = "none";
}
{
displayMode = "onhover";
iconColor = "none";
id = "Brightness";
textColor = "none";
}
{
deviceNativePath = "__default__";
displayMode = "graphic-clean";
hideIfIdle = false;
hideIfNotDetected = true;
id = "Battery";
showNoctaliaPerformance = false;
showPowerProfiles = false;
}
{
clockColor = "none";
customFont = "";
formatHorizontal = "HH:mm ddd, MMM dd";
formatVertical = "HH mm - dd MM";
id = "Clock";
tooltipFormat = "HH:mm ddd, MMM dd";
useCustomFont = false;
}
{
colorizeDistroLogo = false;
colorizeSystemIcon = "none";
customIconPath = "";
enableColorization = true;
icon = "noctalia";
id = "ControlCenter";
useDistroLogo = true;
}
];
};
};
brightness = {
brightnessStep = 5;
enableDdcSupport = false;
enforceMinimum = true;
};
calendar = {
cards = [
{
enabled = true;
id = "calendar-header-card";
}
{
enabled = true;
id = "calendar-month-card";
}
{
enabled = true;
id = "weather-card";
}
];
};
colorSchemes = {
darkMode = true;
generationMethod = "tonal-spot";
manualSunrise = "06:30";
manualSunset = "18:30";
monitorForColors = "";
predefinedScheme = "Nord";
schedulingMode = "off";
useWallpaperColors = false;
};
controlCenter = {
cards = [
{
enabled = true;
id = "profile-card";
}
{
enabled = true;
id = "shortcuts-card";
}
{
enabled = true;
id = "audio-card";
}
{
enabled = false;
id = "brightness-card";
}
{
enabled = true;
id = "weather-card";
}
{
enabled = true;
id = "media-sysmon-card";
}
];
diskPath = "/";
position = "close_to_bar_button";
shortcuts = {
left = [
{ id = "Network"; }
{ id = "Bluetooth"; }
{ id = "WallpaperSelector"; }
{ id = "NoctaliaPerformance"; }
];
right = [
{ id = "Notifications"; }
{ id = "PowerProfile"; }
{ id = "KeepAwake"; }
{ id = "NightLight"; }
];
};
};
desktopWidgets = {
enabled = false;
gridSnap = false;
monitorWidgets = [ ];
};
dock = {
animationSpeed = 1;
backgroundOpacity = 1;
colorizeIcons = false;
deadOpacity = 0.6;
displayMode = "auto_hide";
dockType = "floating";
enabled = false;
floatingRatio = 0;
inactiveIndicators = true;
monitors = [ ];
onlySameOutput = true;
pinnedApps = [ ];
pinnedStatic = false;
position = "bottom";
showFrameIndicator = true;
sitOnFrame = false;
size = 1.5;
};
general = {
allowPanelsOnScreenWithoutBar = true;
allowPasswordWithFprintd = true;
animationDisabled = false;
animationSpeed = 1;
autoStartAuth = true;
avatarImage = "${config.home.homeDirectory}/.face";
boxRadiusRatio = 1;
clockFormat = "hh\\nmm";
clockStyle = "custom";
compactLockScreen = false;
dimmerOpacity = 0.4;
enableLockScreenCountdown = true;
enableShadows = true;
forceBlackScreenCorners = false;
iRadiusRatio = 1;
keybinds = {
keyDown = [ "Down" ];
keyEnter = [ "Return" ];
keyEscape = [ "Esc" ];
keyLeft = [ "Left" ];
keyRemove = [ "Del" ];
keyRight = [ "Right" ];
keyUp = [ "Up" ];
};
language = "";
lockOnSuspend = true;
lockScreenAnimations = true;
lockScreenBlur = 0;
lockScreenCountdownDuration = 10000;
lockScreenMonitors = [ ];
lockScreenTint = 0;
radiusRatio = 1;
reverseScroll = false;
scaleRatio = 1;
screenRadiusRatio = 1;
shadowDirection = "bottom_right";
shadowOffsetX = 2;
shadowOffsetY = 3;
showChangelogOnStartup = false;
showHibernateOnLockScreen = true;
showScreenCorners = false;
showSessionButtonsOnLockScreen = true;
telemetryEnabled = false;
};
hooks = {
darkModeChange = "";
enabled = false;
performanceModeDisabled = "";
performanceModeEnabled = "";
screenLock = "";
screenUnlock = "";
session = "";
startup = "";
wallpaperChange = "";
};
location = {
analogClockInCalendar = true;
firstDayOfWeek = -1;
hideWeatherCityName = false;
hideWeatherTimezone = false;
name = "Braga, Portugal";
showCalendarEvents = true;
showCalendarWeather = true;
showWeekNumberInCalendar = false;
use12hourFormat = false;
useFahrenheit = false;
weatherEnabled = true;
weatherShowEffects = true;
};
network = {
airplaneModeEnabled = false;
bluetoothDetailsViewMode = "grid";
bluetoothHideUnnamedDevices = false;
bluetoothRssiPollIntervalMs = 60000;
bluetoothRssiPollingEnabled = false;
disableDiscoverability = false;
wifiDetailsViewMode = "grid";
wifiEnabled = true;
};
nightLight = {
autoSchedule = true;
dayTemp = "6500";
enabled = true;
forced = false;
manualSunrise = "06:30";
manualSunset = "18:30";
nightTemp = "4000";
};
notifications = {
backgroundOpacity = 1;
clearDismissed = true;
criticalUrgencyDuration = 15;
density = "compact";
enableBatteryToast = true;
enableKeyboardLayoutToast = true;
enableMarkdown = true;
enableMediaToast = true;
enabled = true;
location = "top_right";
lowUrgencyDuration = 3;
monitors = [ ];
normalUrgencyDuration = 8;
overlayLayer = true;
respectExpireTimeout = false;
saveToHistory = {
critical = true;
low = true;
normal = true;
};
sounds = {
criticalSoundFile = "";
enabled = false;
excludedApps = "discord,firefox,chrome,chromium,edge";
lowSoundFile = "";
normalSoundFile = "";
separateSounds = false;
volume = 0.5;
};
};
osd = {
autoHideMs = 2000;
backgroundOpacity = 1;
enabled = true;
enabledTypes = [
0
1
2
3
];
location = "top";
monitors = [ ];
overlayLayer = true;
};
plugins = {
autoUpdate = false;
};
sessionMenu = {
countdownDuration = 10000;
enableCountdown = true;
largeButtonsLayout = "single-row";
largeButtonsStyle = true;
position = "center";
powerOptions = [
{
action = "lock";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "1";
}
{
action = "suspend";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "2";
}
{
action = "hibernate";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "3";
}
{
action = "reboot";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "4";
}
{
action = "logout";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "5";
}
{
action = "shutdown";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "6";
}
{
action = "rebootToUefi";
command = "";
countdownEnabled = true;
enabled = true;
keybind = "";
}
];
showHeader = true;
showKeybinds = true;
};
settingsVersion = 53;
systemMonitor = {
batteryCriticalThreshold = 5;
batteryWarningThreshold = 20;
cpuCriticalThreshold = 90;
cpuWarningThreshold = 80;
criticalColor = "";
diskAvailCriticalThreshold = 10;
diskAvailWarningThreshold = 20;
diskCriticalThreshold = 90;
diskWarningThreshold = 80;
enableDgpuMonitoring = false;
externalMonitor = "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor";
gpuCriticalThreshold = 90;
gpuWarningThreshold = 80;
memCriticalThreshold = 90;
memWarningThreshold = 80;
swapCriticalThreshold = 90;
swapWarningThreshold = 80;
tempCriticalThreshold = 90;
tempWarningThreshold = 80;
useCustomColors = false;
warningColor = "";
};
templates = {
activeTemplates = [
{
enabled = true;
id = "zenBrowser";
}
{
enabled = true;
id = "hyprland";
}
{
enabled = true;
id = "kitty";
}
{
enabled = true;
id = "yazi";
}
{
enabled = true;
id = "zathura";
}
{
enabled = true;
id = "gtk";
}
{
enabled = true;
id = "qt";
}
{
enabled = true;
id = "btop";
}
{
enabled = true;
id = "spicetify";
}
];
enableUserTheming = false;
};
ui = {
bluetoothDetailsViewMode = "grid";
bluetoothHideUnnamedDevices = false;
boxBorderEnabled = false;
fontDefault = "Sans Serif";
fontFixed = "monospace";
networkPanelView = "wifi";
panelBackgroundOpacity = 0.93;
panelsAttachedToBar = true;
settingsPanelMode = "attached";
tooltipsEnabled = true;
wifiDetailsViewMode = "grid";
shell = {
font_family = "Sans Serif";
avatar_path = "${config.home.homeDirectory}/.face";
telemetry_enabled = false;
polkit_agent = true;
};
wallpaper = {
automationEnabled = true;
directory = "${config.home.homeDirectory}/.cache/wallpapers/3840x2160";
enabled = true;
favorites = [ ];
fillColor = "#5e81ac";
fillMode = "crop";
hideWallpaperFilenames = false;
monitorDirectories = [ ];
overviewBlur = 0.4;
overviewEnabled = false;
overviewTint = 0.6;
panelPosition = "follow_bar";
randomIntervalSec = 21600;
setWallpaperOnAllMonitors = true;
showHiddenFiles = false;
skipStartupTransition = false;
solidColor = "#1a1a2e";
sortOrder = "name";
transitionDuration = 1500;
transitionEdgeSmoothness = 0.05;
transitionType = "fade";
useSolidColor = false;
useWallhaven = false;
viewMode = "browse";
wallhavenApiKey = "";
wallhavenCategories = "111";
wallhavenOrder = "desc";
wallhavenPurity = "100";
wallhavenQuery = "";
wallhavenRatios = "";
wallhavenResolutionHeight = "";
wallhavenResolutionMode = "atleast";
wallhavenResolutionWidth = "";
wallhavenSorting = "relevance";
wallpaperChangeMode = "random";
fill_mode = "crop";
directory = "${config.home.homeDirectory}/.cache/wallpapers/3840x2160";
transition = [ "fade" ];
transition_duration = 1500;
automation = {
enabled = true;
interval_minutes = 360;
order = "random";
recursive = true;
};
};
theme = {
mode = "dark";
source = "builtin";
builtin = "Nord";
templates = {
enable_builtin_templates = true;
builtin_ids = [
"btop"
"gtk3"
"gtk4"
"hyprland"
"kitty"
"qt"
];
};
};
notification.enable_daemon = true;
weather = {
enabled = true;
unit = "celsius";
};
location = {
auto_locate = false;
address = "Braga, Portugal";
};
nightlight = {
enabled = true;
temperature_day = 6500;
temperature_night = 4000;
};
bar.main = {
position = "top";
background_opacity = 0.93;
radius = 12;
start = [ "launcher" "wallpaper" "workspaces" ];
center = [ "media" "clock" ];
end = [ "tray" "notifications" "network" "bluetooth" "volume" "brightness" "battery" "control-center" "session" ];
};
};
};
@@ -607,8 +94,16 @@ in
xdg.configFile."hypr/hyprland.conf".force = true;
xdg.configFile."gtk-3.0/gtk.css".force = true;
# source noctalia-generated color theme in hyprland
# source noctalia-generated color theme in hyprland (v5 path).
# Hyprland globs every source path, so a missing file errors as
# "globbing error: found no match" — pre-create an empty placeholder
# so the first boot doesn't fail before noctalia has run.
home.activation.ensureNoctaliaHyprConf = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
run mkdir -p "$HOME/.config/hypr"
run touch "$HOME/.config/hypr/noctalia.conf"
'';
wayland.windowManager.hyprland.settings.source = [
"~/.config/hypr/noctalia/noctalia-colors.conf"
"~/.config/hypr/noctalia.conf"
];
}
+5 -19
View File
@@ -73,25 +73,11 @@
};
programs.noctalia-shell.settings = {
bar = {
density = "spacious";
};
notifications = {
monitors = [ "DP-1" ];
};
ui = {
fontDefaultScale = 1.25;
fontFixedScale = 1.25;
};
wallpaper = {
enableMultiMonitorDirectories = true;
monitorDirectories = [
{ monitor = "HDMI-A-1"; directory = "${config.home.homeDirectory}/.cache/wallpapers/3840x2160"; }
{ monitor = "DP-1"; directory = "${config.home.homeDirectory}/.cache/wallpapers/3840x2160"; }
{ monitor = "DP-2"; directory = "${config.home.homeDirectory}/.cache/wallpapers/2160x3840"; }
];
};
programs.noctalia.settings = {
shell.ui_scale = 1.25;
notification.monitors = [ "DP-1" ];
# NOTE: v5 has no per-monitor wallpaper directories; only directory_light /
# directory_dark. Re-add via Settings UI if upstream gains support.
};
programs.kitty.settings.font_size = 16;
+1 -1
View File
@@ -8,7 +8,7 @@ pkgs.stdenv.mkDerivation {
owner = "mahaveergurjar";
repo = "sddm";
rev = "noctalia";
sha256 = "sha256-q/aw4PLSHhS2jKjRl8F1JIBZn1aBV/QBEDgZ+2Oyo2A=";
sha256 = "sha256-e/gYI6znHXxlDCOVh4p265x3kO0nQUU897hCY1yEz88=";
};
installPhase = ''