build: use flakes for config
This commit is contained in:
parent
0fb2341372
commit
045287e682
21 changed files with 613 additions and 110 deletions
|
@ -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
|
||||
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, pkgs, ... }:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
|
@ -6,5 +6,5 @@
|
|||
./extra-hardware.nix
|
||||
./security.nix
|
||||
./packages.nix
|
||||
];
|
||||
];
|
||||
}
|
||||
|
|
|
@ -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";
|
||||
};
|
||||
|
|
|
@ -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/*
|
||||
|
|
|
@ -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
496
nixos/flake.lock
Normal 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
33
nixos/flake.nix
Normal 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;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -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 = [ ];
|
||||
|
||||
|
|
|
@ -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)";
|
||||
|
|
|
@ -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 = {
|
||||
|
|
|
@ -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 = ''
|
||||
|
|
|
@ -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 = {
|
||||
|
|
|
@ -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
|
||||
];
|
||||
}
|
||||
|
|
|
@ -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
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, pkgs
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
{ stdenv
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
### test package
|
||||
{ lib
|
||||
, stdenv
|
||||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, pkgs
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue