- Add `noctalia` input to flake and lock it in `flake.lock`. - Include `noctalia` and `quickshell` modules in `flake.nix`. - Extend core packages to accept `inputs` and `system`; add `quickshell.nix` with required Qt6 packages and environment variables. - Enable `upower` service for battery handling. - Add home modules `noctalia.nix` and `overview.nix` (QML UI, README, assets, widgets, services) to provide a workspace overview. - Comment out unused rofi and web‑search binds; update `exec‑once` to start the overview daemon and `noctalia-shell`. - Provide `restart.noctalia` script and its Nix wrapper. - Enable `noctalia-shell` in `stylix` configuration.
107 lines
2.5 KiB
Nix
107 lines
2.5 KiB
Nix
{
|
|
description = "GarandOS";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/master";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
stylix = {
|
|
url = "github:danth/stylix";
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
|
|
nur.inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
flake-parts.follows = "stylix/flake-parts";
|
|
};
|
|
};
|
|
};
|
|
|
|
auto-cpufreq = {
|
|
url = "github:AdnanHodzic/auto-cpufreq";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
firefox-addons = {
|
|
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
prismlauncher-cracked = {
|
|
url = "github:Diegiwg/PrismLauncher-Cracked";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
affinity-nix = {
|
|
url = "github:mrshmllow/affinity-nix";
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
treefmt-nix.inputs.nixpkgs.follows = "nixpkgs";
|
|
git-hooks.inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
gitignore.inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
};
|
|
|
|
nix-flatpak.url = "github:gmodena/nix-flatpak?ref=latest";
|
|
|
|
garandos-tui = {
|
|
url = "git+https://gitea.garandplg.com/GarandPLG/garandos-tui?ref=main";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
wrappers = {
|
|
url = "github:lassulus/wrappers";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
noctalia = {
|
|
url = "github:noctalia-dev/noctalia-shell";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = {
|
|
nixpkgs,
|
|
nix-flatpak,
|
|
auto-cpufreq,
|
|
garandos-tui,
|
|
...
|
|
} @ inputs: let
|
|
hostDirs = builtins.attrNames (builtins.readDir ./hosts);
|
|
|
|
mkHost = hostName: let
|
|
inherit
|
|
(import ./hosts/${hostName}/variables.nix)
|
|
host
|
|
username
|
|
profile
|
|
system
|
|
;
|
|
in
|
|
nixpkgs.lib.nixosSystem {
|
|
inherit system;
|
|
specialArgs = {
|
|
inherit inputs;
|
|
inherit username;
|
|
inherit host;
|
|
inherit profile;
|
|
inherit system;
|
|
};
|
|
modules = [
|
|
./profiles/${profile}
|
|
nix-flatpak.nixosModules.nix-flatpak
|
|
auto-cpufreq.nixosModules.default
|
|
garandos-tui.nixosModules.garandos-tui
|
|
];
|
|
};
|
|
in {
|
|
nixosConfigurations = nixpkgs.lib.genAttrs hostDirs mkHost;
|
|
};
|
|
}
|