build: use flakes for config

This commit is contained in:
matt1432 2023-09-29 23:46:34 -04:00
parent 0fb2341372
commit 045287e682
21 changed files with 613 additions and 110 deletions

View file

@ -3,12 +3,9 @@
what is currently not working:
- plymouth theme has no login prompt
- sddm theme flashes white
- autosign in to keyring
what i want to do:
- learn flakes
- add auto-rotate widget in ags control center
- when multiple widgets open, clicking on a background one puts it forward

View file

@ -4,11 +4,15 @@
boot = {
kernelPackages = pkgs.linuxPackages_latest;
consoleLogLevel = 0;
initrd.verbose = false;
initrd.systemd.enable = true;
initrd = {
verbose = false;
systemd.enable = true;
};
loader = {
efi.canTouchEfiVariables = true;
timeout = 2;
grub = {
enable = true;
device = "nodev";
@ -19,15 +23,12 @@
# Because it still draws that image otherwise
splashImage = null;
};
timeout = 2;
};
extraModulePackages = with config.boot.kernelPackages; [
v4l2loopback
];
kernelModules = [ "kvm-amd" ];
kernelParams = [
"quiet"
"splash"

View file

@ -1,4 +1,4 @@
{ config, pkgs, ... }:
{ pkgs, ... }:
{
hardware.bluetooth = {
@ -12,17 +12,19 @@
services = {
udev.extraRules = ''
# give permanent path to keyboard XF86* binds
SUBSYSTEMS=="input", ATTRS{id/product}=="0006", ATTRS{id/vendor}=="0000", SYMLINK += "video-bus"
'';
# give permanent path to keyboard XF86* binds
SUBSYSTEMS=="input", ATTRS{id/product}=="0006", ATTRS{id/vendor}=="0000", SYMLINK += "video-bus"
'';
fwupd.enable = true;
# Enable CUPS to print documents.
printing.enable = true;
printing.drivers = with pkgs; [
hplip
];
printing = {
enable = true;
drivers = with pkgs; [
hplip
];
};
pipewire = {
enable = true;

View file

@ -1,4 +1,4 @@
{ config, pkgs, ... }:
{ ... }:
{
imports = [
@ -6,5 +6,5 @@
./extra-hardware.nix
./security.nix
./packages.nix
];
];
}

View file

@ -1,4 +1,4 @@
{config, pkgs, lib, ...}:
{ pkgs, hyprland, ... }:
{
systemd.user.services.protonmail-bridge = {
@ -30,10 +30,10 @@
};
};
sessionPackages = [
(builtins.getFlake "github:hyprwm/Hyprland").packages.x86_64-linux.default
hyprland.packages.x86_64-linux.default
];
defaultSession = "hyprland";
autoLogin = { # logs out after a minute
autoLogin = {
enable = true;
user = "matt";
};

View file

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }:
{ pkgs, lib, ... }:
{
services.fprintd.enable = true;
@ -11,7 +11,7 @@
services.logind.lidSwitch = "lock";
services.gnome.gnome-keyring.enable = true;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
@ -23,7 +23,7 @@
'';
security.pam.services = {
gtklock = {};
# all the changes in /etc/pam.d/*

View file

@ -1,13 +1,12 @@
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./overlays/list.nix
./cfg/main.nix
./home/main.nix
];
imports = [
./hardware-configuration.nix
./overlays/list.nix
./cfg/main.nix
./home/main.nix
];
networking = {
hostName = "wim";
@ -25,20 +24,17 @@
keyMap = "ca";
#useXkbConfig = true; # use xkbOptions in tty.
};
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nixpkgs.config.allowUnfree = true;
environment.sessionVariables = {
NIXPKGS_ALLOW_UNFREE = "1";
GTK_THEME = "Dracula";
QT_QPA_PLATFORMTHEME = "qt5ct";
QT_FONT_DPI = "125";
};
system.autoUpgrade.channel = "https://nixos.org/channels/nixos-unstable";
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. It's perfectly fine and recommended to leave
@ -46,5 +42,4 @@
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.05"; # Did you read the comment?
}

496
nixos/flake.lock Normal file
View file

@ -0,0 +1,496 @@
{
"nodes": {
"ags": {
"inputs": {
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1695899342,
"narHash": "sha256-Tv/92TnnfehaNRugaLUAzJL/HP3D/AMo4QfkLOp9qqQ=",
"owner": "Aylur",
"repo": "ags",
"rev": "70041f3f9e5a1136727ac15fa7a5179a9d1b1213",
"type": "github"
},
"original": {
"owner": "Aylur",
"repo": "ags",
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"neovim-nightly-overlay",
"nixpkgs"
]
},
"locked": {
"lastModified": 1693611461,
"narHash": "sha256-aPODl8vAgGQ0ZYFIRisxYG5MOGSkIczvu2Cd8Gb9+1Y=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "7f53fdb7bdc5bb237da7fefef12d099e4fd611ca",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1688466019,
"narHash": "sha256-VeM2akYrBYMsb4W/MmBo1zmaMfgbL4cH3Pu8PGyIwJ0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8e8d955c22df93dbe24f19ea04f47a74adbdc5ec",
"type": "github"
},
"original": {
"id": "flake-parts",
"type": "indirect"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"neovim-nightly-overlay",
"hercules-ci-effects",
"hercules-ci-agent",
"nixpkgs"
]
},
"locked": {
"lastModified": 1688466019,
"narHash": "sha256-VeM2akYrBYMsb4W/MmBo1zmaMfgbL4cH3Pu8PGyIwJ0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8e8d955c22df93dbe24f19ea04f47a74adbdc5ec",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1685518550,
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"haskell-flake": {
"locked": {
"lastModified": 1684780604,
"narHash": "sha256-2uMZsewmRn7rRtAnnQNw1lj0uZBMh4m6Cs/7dV5YF08=",
"owner": "srid",
"repo": "haskell-flake",
"rev": "74210fa80a49f1b6f67223debdbf1494596ff9f2",
"type": "github"
},
"original": {
"owner": "srid",
"ref": "0.3.0",
"repo": "haskell-flake",
"type": "github"
}
},
"hercules-ci-agent": {
"inputs": {
"flake-parts": "flake-parts_3",
"haskell-flake": "haskell-flake",
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1688568579,
"narHash": "sha256-ON0M56wtY/TIIGPkXDlJboAmuYwc73Hi8X9iJGtxOhM=",
"owner": "hercules-ci",
"repo": "hercules-ci-agent",
"rev": "367dd8cd649b57009a6502e878005a1e54ad78c5",
"type": "github"
},
"original": {
"id": "hercules-ci-agent",
"type": "indirect"
}
},
"hercules-ci-effects": {
"inputs": {
"flake-parts": "flake-parts_2",
"hercules-ci-agent": "hercules-ci-agent",
"nixpkgs": [
"neovim-nightly-overlay",
"nixpkgs"
]
},
"locked": {
"lastModified": 1695684520,
"narHash": "sha256-yORqGB0i1OtEf9MOCCT2BIbOd8txPZn216CM+ylMmhY=",
"owner": "hercules-ci",
"repo": "hercules-ci-effects",
"rev": "91fae5824f5f1199f61693c6590b4a89abaed9d7",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "hercules-ci-effects",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1695984718,
"narHash": "sha256-LQwKgaaaFOkIcxarf0xQXeDJFwZ5BZWcgmPeo3xp2CM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "4f02e35f9d150573e1a710afa338846c2f6d850c",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"hyprgrass": {
"inputs": {
"hyprland": [
"hyprland"
]
},
"locked": {
"lastModified": 1696036840,
"narHash": "sha256-eApMKsB2IuGeX0zlQSxyHNWuH4mKRHm48Zr9DjoYbMQ=",
"owner": "horriblename",
"repo": "hyprgrass",
"rev": "1edd66df6c02894cc5ef4d00d604dd46528b5045",
"type": "github"
},
"original": {
"owner": "horriblename",
"repo": "hyprgrass",
"type": "github"
}
},
"hyprland": {
"inputs": {
"hyprland-protocols": "hyprland-protocols",
"nixpkgs": "nixpkgs_2",
"systems": "systems",
"wlroots": "wlroots",
"xdph": "xdph"
},
"locked": {
"lastModified": 1696036148,
"narHash": "sha256-7KCxZLMEQhjQXZVqVPZCxUR3lE+Z5heU7MmQjEtFFqU=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "86e8ed038f5b195cdf2548bc469f8f8bbc0caca8",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "Hyprland",
"type": "github"
}
},
"hyprland-protocols": {
"inputs": {
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1691753796,
"narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
"rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprland-protocols",
"type": "github"
}
},
"neovim-flake": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"neovim-nightly-overlay",
"nixpkgs"
]
},
"locked": {
"dir": "contrib",
"lastModified": 1695942321,
"narHash": "sha256-a1U2X9f+zJwVHVS6PyKVqaSN5HBiWDbpP9cyZZ59TGA=",
"owner": "neovim",
"repo": "neovim",
"rev": "b917db062fc673dfbbc6a8c722b05101319ab44e",
"type": "github"
},
"original": {
"dir": "contrib",
"owner": "neovim",
"repo": "neovim",
"type": "github"
}
},
"neovim-nightly-overlay": {
"inputs": {
"flake-compat": "flake-compat",
"flake-parts": "flake-parts",
"hercules-ci-effects": "hercules-ci-effects",
"neovim-flake": "neovim-flake",
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1695945818,
"narHash": "sha256-qOELV+8oAukFHOxezqEBpplwAfTNTpWkD9B2P+G76wE=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "6fb6984f0bf3fcd4fd1c375bf879c15f2770f8aa",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1693471703,
"narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"dir": "lib",
"lastModified": 1688049487,
"narHash": "sha256-100g4iaKC9MalDjUW9iN6Jl/OocTDtXdeAj7pEGIRh4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4bc72cae107788bf3f24f30db2e2f685c9298dc9",
"type": "github"
},
"original": {
"dir": "lib",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1694767346,
"narHash": "sha256-5uH27SiVFUwsTsqC5rs3kS7pBoNhtoy9QfTP9BmknGk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ace5093e36ab1e95cb9463863491bee90d5a4183",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1688322751,
"narHash": "sha256-eW62dC5f33oKZL7VWlomttbUnOTHrAbte9yNUNW8rbk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "0fbe93c5a7cac99f90b60bdf5f149383daaa615f",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1695806987,
"narHash": "sha256-fX5kGs66NZIxCMcpAGIpxuftajHL8Hil1vjHmjjl118=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f3dab3509afca932f3f4fd0908957709bb1c1f57",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1695830400,
"narHash": "sha256-gToZXQVr0G/1WriO83olnqrLSHF2Jb8BPcmCt497ro0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "8a86b98f0ba1c405358f1b71ff8b5e1d317f5db2",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"ags": "ags",
"home-manager": "home-manager",
"hyprgrass": "hyprgrass",
"hyprland": "hyprland",
"neovim-nightly-overlay": "neovim-nightly-overlay",
"nixpkgs": "nixpkgs_5"
}
},
"systems": {
"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_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"wlroots": {
"flake": false,
"locked": {
"host": "gitlab.freedesktop.org",
"lastModified": 1695919988,
"narHash": "sha256-4RBgIZHaVqH0m1POnfzYRzwCWxifIKH4xQ0kCn2LGkA=",
"owner": "wlroots",
"repo": "wlroots",
"rev": "c2aa7fd965cb7ee8bed24f4122b720aca8f0fc1e",
"type": "gitlab"
},
"original": {
"host": "gitlab.freedesktop.org",
"owner": "wlroots",
"repo": "wlroots",
"rev": "c2aa7fd965cb7ee8bed24f4122b720aca8f0fc1e",
"type": "gitlab"
}
},
"xdph": {
"inputs": {
"hyprland-protocols": [
"hyprland",
"hyprland-protocols"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1694628480,
"narHash": "sha256-Qg9hstRw0pvjGu5hStkr2UX1D73RYcQ9Ns/KnZMIm9w=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "8f45a6435069b9e24ebd3160eda736d7a391cbf2",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

33
nixos/flake.nix Normal file
View file

@ -0,0 +1,33 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland.url = "github:hyprwm/Hyprland";
hyprgrass = {
url = "github:horriblename/hyprgrass";
inputs.hyprland.follows = "hyprland";
};
ags.url = "github:Aylur/ags";
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
};
outputs = { self, nixpkgs, home-manager, ... }@attrs: {
nixosConfigurations.wim = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = attrs;
modules = [
./configuration.nix
home-manager.nixosModules.home-manager {
home-manager.extraSpecialArgs = attrs;
}
];
};
};
}

View file

@ -1,29 +1,27 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ config, lib, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/6ae4d722-dacf-485a-8d29-b276f540dc91";
fsType = "btrfs";
};
fileSystems."/" = {
device = "/dev/disk/by-uuid/6ae4d722-dacf-485a-8d29-b276f540dc91";
fsType = "btrfs";
};
boot.initrd.luks.devices."root".device = "/dev/disk/by-uuid/ab82b477-2477-453f-b95f-28e5553ad10d";
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/F6E1-006D";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/F6E1-006D";
fsType = "vfat";
};
swapDevices = [ ];

View file

@ -1,4 +1,4 @@
{ pkgs, ... }:
{ ... }:
{
programs.bash = { # TODO: deal with root dotfiles
@ -29,8 +29,8 @@
"cdspell"
"dirspell"
"dotglob"
]
;
];
shellAliases = {
sudo = "sudo ";
frick = "sudo $(fc -ln -1)";

View file

@ -6,21 +6,21 @@ in
{
xdg.configFile = {
"swayosd/style.css".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/swayosd/style.css";
"swayosd/style.css".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/swayosd/style.css";
"gtklock/config.ini".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/gtklock/config.ini";
"gtklock/style.css".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/gtklock/style.css";
"gtklock/config.ini".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/gtklock/config.ini";
"gtklock/style.css".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/gtklock/style.css";
"ripgrep".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/ripgrep";
"ripgrep".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/ripgrep";
"discord/settings.json".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/discord/settings.json";
"dolphinrc".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/dolphinrc";
"kdeglobals".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/kdeglobals";
"kiorc".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/kiorc";
"mimeapps.list".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/mimeapps.list";
"neofetch".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/neofetch";
"swappy".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/swappy";
"dolphinrc".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/dolphinrc";
"kdeglobals".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/kdeglobals";
"kiorc".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/kiorc";
"mimeapps.list".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/mimeapps.list";
"neofetch".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/neofetch";
"swappy".source = config.lib.file.mkOutOfStoreSymlink "${configDir}/swappy";
};
programs = {

View file

@ -1,15 +1,5 @@
{ pkgs, config, ... }: let
{ pkgs, config, hyprland, hyprgrass, ags, ... }: let
configDir = "/home/matt/.nix/config";
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
hyprland = (import flake-compat {
src = builtins.fetchTarball "https://github.com/hyprwm/Hyprland/archive/master.tar.gz";
}).defaultNix;
ags = (builtins.getFlake "github:Aylur/ags");
in
{
home.packages = [
@ -25,15 +15,16 @@ in
programs.ags = {
enable = true;
package = ags.packages.x86_64-linux.default;
configDir = config.lib.file.mkOutOfStoreSymlink "${configDir}/ags";
};
wayland.windowManager.hyprland = {
enable = true;
package = (builtins.getFlake "github:horriblename/hyprgrass").inputs.hyprland.packages.x86_64-linux.default;
package = hyprland.packages.x86_64-linux.default;
plugins = [
"${(builtins.getFlake "github:horriblename/hyprgrass").packages.x86_64-linux.default}/lib/libhyprgrass.so"
"${hyprgrass.packages.x86_64-linux.default}/lib/libhyprgrass.so"
];
extraConfig = ''

View file

@ -1,14 +1,11 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{ home-manager, ... }:
{
## Global config to add home-manager module
#############################################################################
imports =
[
(import "${home-manager}/nixos")
];
imports = [
home-manager.nixosModules.default
];
# Define a user account. Don't forget to set a password with 'passwd'.
users.users.matt = {

View file

@ -26,7 +26,7 @@
};
};
home.packages = with pkgs;
home.packages = with pkgs;
(with python311Packages; [
python
pyclip
@ -40,6 +40,12 @@
(with plasma5Packages; [
polkit-kde-agent
qtstyleplugin-kvantum
ark
kcharselect
kdenlive
okular
# Dolphin & co
dolphin
dolphin-plugins
kdegraphics-thumbnailers
@ -47,11 +53,7 @@
kio
kio-admin # needs to be both here and in system pkgs
kio-extras
ark
kcharselect
kdenlive
kmime
okular
]) ++
(with gnome; [
@ -59,8 +61,8 @@
seahorse
adwaita-icon-theme
]) ++
[
]) ++ [
(writeShellScriptBin "Gparted" ''
(
sleep 1.5
@ -79,9 +81,10 @@
# School
virt-manager
gradle
gradle-completion
gradle-completion # not working
jdk19_headless
#camunda-modeler
#
protonmail-bridge
thunderbird
input-emulator
@ -102,7 +105,6 @@
qt6.qtwayland
bottles-unwrapped
zscroll
httrack
lisgd
zeal
acpi
@ -115,7 +117,6 @@
xdg-utils
pavucontrol # TODO: open on left click
gimp-with-plugins
jdk19_headless
bluez-tools
vlc
discord
@ -149,6 +150,5 @@
squeekboard
glib
appimage-run
gparted # doesn't open without sudo
];
}

View file

@ -1,4 +1,4 @@
{ config, pkgs, ... }:
{ neovim-nightly-overlay, ... }:
{
nixpkgs.overlays = [
@ -25,8 +25,6 @@
coloryou = final.callPackage ./pkgs/coloryou/default.nix {};
})
(import (builtins.fetchTarball {
url = "https://github.com/nix-community/neovim-nightly-overlay/archive/master.tar.gz";
}))
neovim-nightly-overlay.overlay
];
}

View file

@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, pkgs
}:
stdenv.mkDerivation {

View file

@ -1,5 +1,4 @@
{ lib
, stdenv
{ stdenv
, meson
, ninja
, pkg-config

View file

@ -1,8 +1,6 @@
### test package
{ lib
, stdenv
{ stdenv
, fetchFromGitHub
, pkgs
}:
stdenv.mkDerivation {

View file

@ -1,5 +1,4 @@
{ lib
, stdenv
{ stdenv
, meson
, ninja
, pkg-config
@ -36,7 +35,7 @@ stdenv.mkDerivation rec {
pam
libpam-wrapper
];
mesonFlags = [
"-Dpam_modules_dir=${placeholder "out"}/lib/security"
"-Dsysconfdir=${placeholder "out"}/etc"

View file

@ -1,13 +1,13 @@
final: prev: {
swayosd = prev.swayosd.overrideAttrs (oldAttrs: rec {
src = prev.fetchFromGitHub {
owner = "ErikReider";
repo = "SwayOSD";
rev = "8159c9e9962ce19f6fb78201d4d34e5817f53b45";
hash = "sha256-kGd4/eQkhvxEL3/LToBDjE/JIR8m6w9vdFUrRTyylCE=";
};
cargoDeps = oldAttrs.cargoDeps.overrideAttrs (prev.lib.const {
name = "swayosd-vendor.tar.gz";
inherit src;