All checks were successful
Discord / discord commits (push) Has been skipped
Flake Inputs: • Updated input 'custom-sidebar-src': 'github:elchininet/custom-sidebar' (2025-03-03) rev: cbb692bb9ff914de0c08929243723ab76dc05f3e → 'github:elchininet/custom-sidebar' (2025-03-09) rev: 24eba4a1bb562bffc86311c609fb386e474982e7 • Updated input 'home-manager': 'github:nix-community/home-manager' (2025-03-08) rev: 7f4c60a3d6e548dbc13666565c22cb3f8dcdad44 → 'github:nix-community/home-manager' (2025-03-09) rev: cf47e7ea2182c5638fdd1b42de329cc7d185cf8b • Updated input 'kompass': 'github:kotontrion/kompass' (2025-03-07) rev: c3079b5d96c2d0b450c718f971264974a5071f9a → 'github:kotontrion/kompass' (2025-03-09) rev: ba7cd8f69ade8aade3d354d5f68b4ccec0b4284f • Updated input 'nix-gaming': 'github:fufexan/nix-gaming' (2025-03-07) rev: 0e78e723bdf5a13dc45f3a6b994715b871c3f650 → 'github:fufexan/nix-gaming' (2025-03-09) rev: 6413c80d27072c5e714f48d0f0c3ba332397b7a0 • Updated input 'nix-index-db': 'github:Mic92/nix-index-database' (2025-03-08) rev: eeaf10849c3a0435323216885c0df7569dc95cb9 → 'github:Mic92/nix-index-database' (2025-03-09) rev: 296a2c992a28b37427d062ade6e20d467e479e3f • Updated input 'nixpkgs': 'github:NixOS/nixpkgs' (2025-03-06) rev: 10069ef4cf863633f57238f179a0297de84bd8d3 → 'github:NixOS/nixpkgs' (2025-03-07) rev: 36fd87baa9083f34f7f5027900b62ee6d09b1f2f • Updated input 'nixpkgs-wayland': 'github:nix-community/nixpkgs-wayland' (2025-03-08) rev: 9383414b9769faee22cedf0ff2b4e52cd7615b74 → 'github:nix-community/nixpkgs-wayland' (2025-03-09) rev: 1308354da1b065cf245faa237cbfc2946b98660e • Updated input 'spotifyplus-src': 'github:thlucas1/homeassistantcomponent_spotifyplus' (2025-03-07) rev: 54faa6eb694ddba31274036dfb60f6e63c57f56a → 'github:thlucas1/homeassistantcomponent_spotifyplus' (2025-03-09) rev: 2c2742e98d53f00bc9f0e5293f4e384b86ef24a9 • Updated input 'spotifywebapi-src': 'github:thlucas1/SpotifyWebApiPython' (2025-03-08) rev: 0afe814eaf7faac6a8992266e0525a23dae8cbf1 → 'github:thlucas1/SpotifyWebApiPython' (2025-03-08) rev: 341d10a4f9dc0d424f78f2f5833515b0abdf2876 • Updated input 'tuya-local-src': 'github:make-all/tuya-local' (2025-03-06) rev: 934321b6d681783a8c21a97bc8346dd94ffa6fef → 'github:make-all/tuya-local' (2025-03-09) rev: 88ec0d65cd3734e7aa0ef28dd666d4c5291d0dcf • Updated input 'vimplugin-roslyn-nvim-src': 'github:seblj/roslyn.nvim' (2025-02-20) rev: 633a61c30801a854cf52f4492ec8702a8c4ec0e9 → 'github:seblj/roslyn.nvim' (2025-03-09) rev: 9502d5eea9fe6919deb9f5a1732a1e1cfae6860a
96 lines
2.3 KiB
Nix
96 lines
2.3 KiB
Nix
self: {
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
inherit (self.inputs) ags astal virtualkeyboard-adapter;
|
|
inherit (lib) hasPrefix mkIf removePrefix;
|
|
|
|
# Configs
|
|
cfgDesktop = config.roles.desktop;
|
|
flakeDir = config.environment.variables.FLAKE;
|
|
|
|
agsConfigDir = "${removePrefix "/home/${cfgDesktop.user}/" flakeDir}/modules/ags/config";
|
|
|
|
hmOpts = {lib, ...}: {
|
|
options.programs.ags = {
|
|
package = lib.mkOption {
|
|
type = with lib.types; nullOr package;
|
|
default = null;
|
|
};
|
|
|
|
astalLibs = lib.mkOption {
|
|
type = with lib.types; nullOr (listOf package);
|
|
default = null;
|
|
};
|
|
|
|
lockPkg = lib.mkOption {
|
|
type = with lib.types; nullOr package;
|
|
default = null;
|
|
};
|
|
|
|
configDir = lib.mkOption {
|
|
type = lib.types.str;
|
|
default = agsConfigDir;
|
|
};
|
|
};
|
|
};
|
|
in {
|
|
config = mkIf cfgDesktop.ags.enable {
|
|
assertions = [
|
|
{
|
|
assertion = hasPrefix "/home/${cfgDesktop.user}/" flakeDir;
|
|
message = ''
|
|
Your $FLAKE environment variable needs to point to a directory in
|
|
the main users' home to use the AGS module.
|
|
'';
|
|
}
|
|
];
|
|
|
|
# Machine config
|
|
security.pam.services.astal-auth = {};
|
|
services.upower.enable = true;
|
|
|
|
nixpkgs.overlays = [
|
|
ags.overlays.default
|
|
astal.overlays.default
|
|
virtualkeyboard-adapter.overlays.default
|
|
|
|
# FIXME: https://pr-tracker.nelim.org/?pr=388345
|
|
(final: prev: {
|
|
gtk4-layer-shell = prev.gtk4-layer-shell.overrideAttrs (o: rec {
|
|
version = "1.1.0";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "wmww";
|
|
repo = "gtk4-layer-shell";
|
|
rev = "v${version}";
|
|
hash = "sha256-UGhFeaBBIfC4ToWdyoX+oUzLlqJsjF++9U7mtszE0y0=";
|
|
};
|
|
});
|
|
})
|
|
];
|
|
|
|
i18n.inputMethod = mkIf cfgDesktop.isTouchscreen {
|
|
enable = true;
|
|
type = "fcitx5";
|
|
|
|
fcitx5 = {
|
|
waylandFrontend = true;
|
|
plasma6Support = true;
|
|
addons = [
|
|
pkgs.virtualkeyboard-adapter
|
|
];
|
|
};
|
|
};
|
|
|
|
home-manager.users.${cfgDesktop.user}.imports = [
|
|
hmOpts
|
|
(import ./packages.nix self)
|
|
(import ./hyprland.nix self)
|
|
];
|
|
};
|
|
|
|
# For accurate stack trace
|
|
_file = ./default.nix;
|
|
}
|