major rewrite

This commit is contained in:
Charlie Root 2024-08-16 16:03:47 +02:00
commit 4adf705a13
20 changed files with 50 additions and 294 deletions

231
flake.lock generated
View file

@ -55,120 +55,6 @@
"type": "github"
}
},
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1708890466,
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "665b3c6748534eb766c777298721cece9453fdae",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1720809814,
"narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "34f41987bec14c0f3f6b2155c19787b1f6489625",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1716150083,
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-vim",
"type": "github"
}
},
"crane": {
"inputs": {
"nixpkgs": [
@ -331,22 +217,6 @@
"type": "github"
}
},
"flake-compat_6": {
"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": [
@ -609,39 +479,6 @@
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1689549921,
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1713702291,
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "46.1",
"repo": "gnome-shell",
"type": "github"
}
},
"helix": {
"inputs": {
"crane": "crane",
@ -729,27 +566,6 @@
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715930644,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"hyprcursor": {
"inputs": {
"hyprlang": [
@ -1446,22 +1262,6 @@
}
},
"nixpkgs_10": {
"locked": {
"lastModified": 1714912032,
"narHash": "sha256-clkcOIkg8G4xuJh+1onLG4HPMpbtzdLv4rHxFzgsH9c=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_11": {
"locked": {
"lastModified": 1720957393,
"narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=",
@ -3315,7 +3115,6 @@
"schizofox": "schizofox",
"spicetify-nix": "spicetify-nix",
"split-monitor-workspaces": "split-monitor-workspaces",
"stylix": "stylix",
"treefmt-nix": "treefmt-nix_2"
}
},
@ -3464,34 +3263,6 @@
"type": "github"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat_6",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_3",
"nixpkgs": "nixpkgs_10"
},
"locked": {
"lastModified": 1722946882,
"narHash": "sha256-mxtnMye8gs82tdQbVC+g6v3aPOZlH150f9WyntHIkTg=",
"owner": "danth",
"repo": "stylix",
"rev": "5853f1a8bd072f2ebabfc3de3973084353cf6f1e",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1689347949,
@ -3636,7 +3407,7 @@
},
"treefmt-nix_2": {
"inputs": {
"nixpkgs": "nixpkgs_11"
"nixpkgs": "nixpkgs_10"
},
"locked": {
"lastModified": 1723656612,

View file

@ -82,9 +82,6 @@
inputs.nixpkgs.follows = "nixpkgs";
};
# I do not like stylix, but have no time to get rid of it.
stylix.url = "github:danth/stylix";
quickshell = {
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
inputs.nixpkgs.follows = "nixpkgs";

View file

@ -2,7 +2,6 @@ _: {
imports = [
../../../options/boot/grub-boot.nix
../../../options/common/bluetooth.nix
../../../options/desktop/fonts.nix
../../../options/common/networking.nix
../../../options/common/gpu/nvidia.nix
../../../options/desktop/monitors.nix

View file

@ -35,6 +35,9 @@ in {
# systemd-nspawn containers
# ./containers.nix
# monitor configuration
./monitors.nix
];
config = {
warnings = mkMerge [
@ -89,6 +92,8 @@ in {
video = {
enable = mkEnableOption "video drivers and programs that require a graphical user interface";
nvidia = mkOption "Nvidia graphics drivers";
amd = mkOption "AMD graphics drivers";
};
bluetooth = {

View file

@ -1,8 +1,4 @@
{
config,
lib,
...
}:
{lib, ...}:
with lib; {
options.modules.other.system.monitors = mkOption {
description = "\n List of monitors to use\n ";

View file

@ -0,0 +1,19 @@
{
config,
lib,
...
}: let
inherit (config.modules.system.hardware.sound) pipewire;
inherit (lib) mkIf;
in {
config = mkIf pipewire.enable {
services.pipewire = {
enable = true;
audio.enable = true;
pulse.enable = true;
jack.enable = true;
alsa.enable = true;
};
};
}

View file

@ -7,6 +7,7 @@
imports = [
./documentation.nix # nixos documentation
./nixpkgs.nix # global nixpkgs configuration.nix
./registry.nix
];
nix = {

View file

@ -0,0 +1,22 @@
{
inputs,
pkgs,
...
}: let
inherit (inputs) nixpkgs;
nixpkgsPath = nixpkgs.outPath;
in {
# Big thanks to Dianimo for this!
nix = {
registry = {
nixpkgs.flake = inputs.nixpkgs;
default.flake = inputs.nixpkgs;
};
nixPath = [
"nixpkgs=${nixpkgsPath}"
"n=${nixpkgsPath}"
"default=${nixpkgsPath}"
];
};
}

View file

@ -46,7 +46,7 @@ in {
home-manager.users.${username} = {
wayland.windowManager.hyprland = {
enable = true;
# inherit (cfg) package;
inherit (cfg) package;
# Split-monitor-workspaces provides awesome-like workspace behaviour
plugins = [

View file

View file

View file

View file

@ -1,8 +0,0 @@
_: {
hardware.bluetooth = {
enable = true;
powerOnBoot = true;
};
services.blueman.enable = true;
}

View file

@ -1,16 +0,0 @@
{config, ...}: {
services.xserver.videoDrivers = ["nvidia"];
hardware = {
graphics = {
enable = true;
};
nvidia = {
modesetting.enable = true;
open = false;
powerManagement.enable = true;
powerManagement.finegrained = false;
nvidiaSettings = false;
package = config.boot.kernelPackages.nvidiaPackages.beta;
};
};
}

View file

@ -1,22 +0,0 @@
{
config,
lib,
...
}: let
inherit (config.modules.other.system) username;
inherit (lib) mkForce;
in {
networking = {
enableIPv6 = true;
networkmanager = {
enable = true;
plugins = mkForce []; # Bloated as hell, plugins be gone
dns = "systemd-resolved";
};
};
services.resolved = {
enable = true;
fallbackDns = ["9.9.9.9" "2620::fe::fe"];
};
users.users.${username}.extraGroups = ["networkmanager"];
}

View file

@ -1,7 +0,0 @@
{
inputs,
lib,
...
}: {
nix.registry = lib.mapAttrs (_: v: {flake = v;}) inputs;
}

View file

@ -1 +0,0 @@
{self, ...}: {environment.etc."current-flake".source = self;}