{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs"; zen-browser = { url = "github:youwen5/zen-browser-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; discord-music-presence = { url = "path:./discord-music-presence"; }; dms = { url = "github:AvengeMedia/DankMaterialShell"; inputs.nixpkgs.follows = "nixpkgs"; }; xremap-flake.url = "github:xremap/nix-flake"; }; outputs = { self, zen-browser, discord-music-presence, xremap-flake, ... }@inputs: let system = "x86_64-linux"; inherit (inputs) nixpkgs; eachSystem = nixpkgs.lib.genAttrs (import inputs.systems); pkgsFor = eachSystem (system: import nixpkgs { localSystem = system; }); in { nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { inherit system; modules = [ ./configuration.nix ./hardware-configuration.nix inputs.home-manager.nixosModules.home-manager inputs.xremap-flake.nixosModules.default { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { inherit self; inherit inputs; }; home-manager.users.user = import ./home-manager/home.nix; home-manager.backupFileExtension = "backup"; # xremap services.xremap.enable = true; services.xremap.withHypr = true; services.xremap.config.modmap = [ { name = "Global"; remap = { "CapsLock" = "Esc"; }; } ]; services.xremap.config.keymap = [ { name = "curly braces"; remap = { "KEY_SEMICOLON" = "RIGHTALT-KEY_7"; }; # ä -> } remap = { "KEY_APOSTROPHE" = "RIGHTALT-KEY_0"; }; # ö -> { remap = { "RIGHTALT-KEY_A" = "KEY_APOSTROPHE"; }; # altgr + a -> ä remap = { "RIGHTALT-KEY_W" = "KEY_SEMICOLON"; }; # altgr + w -> ö } ]; } ( let inputs = { zen = zen-browser; music-presence = discord-music-presence; }; in { config, pkgs, ... }: { environment.systemPackages = [ inputs.music-presence.packages.${pkgs.stdenv.hostPlatform.system}.discord-music-presence inputs.zen.packages.${pkgs.stdenv.hostPlatform.system}.default ]; } ) ]; }; }; }