Compare commits

...
Author SHA1 Message Date
dfa5f7c65c use gruber theme 2026-07-29 20:43:30 +02:00
abfe4bdc54 add devenv hook to zsh and remove bash from configuration.nix 2026-07-27 23:06:34 +02:00
937581ffcb update flake lockfile 2026-07-27 23:02:06 +02:00
3b0744f177 change nixvim keybind for toggleterm 2026-07-27 22:56:01 +02:00
2eaff572ea switch to zsh 2026-07-27 22:53:42 +02:00
c554cfc440 Merge branch 'main' of lucy.rip:nixos 2026-07-27 00:31:27 +02:00
1a9a6355b3 disable hdr 2026-07-26 16:30:20 +02:00
7abe721ab1 add spicetify 2026-07-26 16:04:31 +02:00
060b2c9015 remove shit from syncthing config 2026-07-26 15:26:12 +02:00
be60afd714 swap to rose pine 2026-07-26 15:22:17 +02:00
9d22e2eff0 add function to disable useless shit 2026-07-26 15:16:04 +02:00
72681708c2 Merge branch 'main' of lucy.rip:nixos 2026-07-26 09:16:25 +02:00
b970a64328 disable hdr 2026-07-26 09:16:19 +02:00
ee492efb2a add pc config 2026-07-25 17:28:34 +02:00
34aefaa867 create hw configs folder and remove iosevka 2026-07-24 21:56:40 +02:00
3ee6ff9a55 go to linux kernel 7 and enable steam 2026-07-24 21:26:35 +02:00
6771d059ae shit fuck 2026-07-23 16:07:33 +02:00
3ae45e8ce7 make foot padding bigger 2026-07-23 15:22:52 +02:00
1fdebac787 move bash config to configuration.ix and add devenv hook 2026-07-23 15:16:43 +02:00
b156f81901 Merge branch 'main' of lucy.rip:nixos
say gex
2026-07-23 15:03:15 +02:00
9bd4826cb6 add devenv and switch to plugin for prettier colors 2026-07-23 15:02:52 +02:00
092746e150 remove framebuffer res service 2026-07-22 13:19:12 +02:00
e6c8afe447 fix git config 2026-07-22 01:42:02 +02:00
992e2bd191 remove gitignore file 2026-07-22 01:40:21 +02:00
a37905dd17 add git config 2026-07-22 01:39:22 +02:00
5fca60fb3d add git config 2026-07-22 01:39:03 +02:00
685ee01619 update gitignore again 2026-07-19 15:10:20 +02:00
04e8785836 update gitignore 2026-07-19 15:08:22 +02:00
26d45c8fff add gitgnore 2026-07-19 15:06:15 +02:00
f2260c6eaf add res forcing for pc 2026-07-19 10:32:20 +02:00
c4cc430c06 fix laptop part of flake 2026-07-19 01:46:06 +02:00
c0972def8c add systemD boot config 2026-07-18 21:56:22 +02:00
782387d9dd move power management options to laptop flake 2026-07-18 21:05:06 +02:00
d744cfe4ee add blueman and remove useless packages 2026-07-18 18:08:40 +02:00
5c1b244bc1 fix up things 2026-07-17 23:31:58 +02:00
f9a9e03360 silence xdg portal warnings 2026-07-17 23:23:48 +02:00
ab1453a501 update lockfile and use hyprland.lua symlink 2026-07-17 23:14:05 +02:00
ca752d89f4 add special ws to hyprland config 2026-07-17 15:29:50 +02:00
122918fe71 add powermanagement 2026-07-16 22:56:42 +02:00
82f6cb8038 add upower to make qs happy 2026-07-16 22:51:34 +02:00
a9aef735eb fix typo in hyprland.lua 2026-07-16 22:35:24 +02:00
2c2b8c8570 clean up hyprland.lua 2026-07-16 22:31:22 +02:00
b541f1891b change hyprland config 2026-07-16 22:24:58 +02:00
7b2450ebb3 change anim style 2026-07-16 22:10:38 +02:00
ad18a1b353 switch to foot 2026-07-16 22:04:54 +02:00
e2f042f7d3 fix up nixvim config 2026-07-16 12:32:14 +02:00
bc68b735a7 change hl keybinds AGAIN 2026-07-16 09:58:04 +02:00
e537db4d9f change hl keybinds AGAIN 2026-07-16 09:56:19 +02:00
c8a7d357b7 change hl keybinds 2026-07-16 09:54:39 +02:00
1ca4fe4692 add padding to ghostty 2026-07-16 09:50:34 +02:00
5c966f1a5b change services and enable fuzzel in stylix 2026-07-16 09:45:31 +02:00
91b3af91e0 hl config changes 2026-07-16 08:56:52 +02:00
039dce42b7 add packages and switch to ly 2026-07-16 08:47:50 +02:00
04b83bdce0 fix hyprland.lua 2026-07-16 08:44:36 +02:00
698031f03a bundle hyprland.lua and enable stylix for hypr 2026-07-16 08:41:37 +02:00
7f37db417a update lockfile 2026-07-16 08:33:16 +02:00
9d078f6719 remove late 2026-07-16 08:31:29 +02:00
c7186cb4a2 add hyprland to flake 2026-07-16 08:23:34 +02:00
501af7ae72 formatting and package changes 2026-07-16 08:03:00 +02:00
98db82fede fix rebuild issues and add nice utils to system packages 2026-07-15 21:58:28 +02:00
14 changed files with 566 additions and 290 deletions

View file

@ -1,6 +1,5 @@
{ {
config, inputs,
lib,
pkgs, pkgs,
... ...
}: }:
@ -10,9 +9,12 @@
./nixvim/nixvim.nix ./nixvim/nixvim.nix
]; ];
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot = {
edk2-uefi-shell.enable = true;
configurationLimit = 5;
};
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
boot.kernelPackages = pkgs.linuxPackages; boot.kernelPackages = pkgs.linuxPackages_latest;
nix.settings.experimental-features = [ nix.settings.experimental-features = [
"nix-command" "nix-command"
"flakes" "flakes"
@ -35,17 +37,23 @@
LC_TELEPHONE = "de_DE.UTF-8"; LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8"; LC_TIME = "de_DE.UTF-8";
}; };
services.xserver.enable = true;
services.xserver.xkb = { services.xserver.xkb = {
layout = "eu"; layout = "eu";
variant = ""; variant = "";
}; };
services = { services.displayManager.ly.enable = true;
desktopManager.plasma6.enable = true; programs.steam = {
displayManager.sddm.enable = true; enable = true;
displayManager.sddm.wayland.enable = true; remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
};
programs.hyprland = {
package = pkgs.hyprland;
enable = true;
withUWSM = true; # recommended for most users
xwayland.enable = true; # Xwayland can be disabled.
}; };
security.doas.enable = true; security.doas.enable = true;
security.sudo.enable = false; security.sudo.enable = false;
security.doas.extraRules = [ security.doas.extraRules = [
@ -60,9 +68,15 @@
} }
]; ];
programs.bash.interactiveShellInit = '' programs.zsh = {
complete -F _command doas enable = true;
''; enableCompletion = true;
autosuggestions.enable = true;
syntaxHighlighting.enable = true;
ohMyZsh.enable = true;
ohMyZsh.theme = "gentoo";
interactiveShellInit = ''eval "$(devenv hook zsh)"'';
};
# Enable CUPS to print documents. # Enable CUPS to print documents.
services.printing.enable = true; services.printing.enable = true;
@ -79,7 +93,7 @@
# Enable touchpad support (enabled default in most desktopManager). # Enable touchpad support (enabled default in most desktopManager).
services.libinput.enable = true; services.libinput.enable = true;
programs.xppen = { programs.xppen = {
enable = false; enable = true;
package = pkgs.xppen_4.overrideAttrs (old: { package = pkgs.xppen_4.overrideAttrs (old: {
src = pkgs.fetchurl { src = pkgs.fetchurl {
url = "https://download01.xp-pen.com/file/2026/04/XPPenLinux4.0.15-260422.tar.gz"; url = "https://download01.xp-pen.com/file/2026/04/XPPenLinux4.0.15-260422.tar.gz";
@ -97,45 +111,10 @@
noto-fonts noto-fonts
noto-fonts-cjk-sans noto-fonts-cjk-sans
noto-fonts-color-emoji noto-fonts-color-emoji
(iosevka.override {
set = "Custom";
privateBuildPlan = ''
[buildPlans.IosevkaCustom]
family = "Iosevka Custom"
spacing = "fontconfig-mono"
serifs = "slab"
noCvSs = true
exportGlyphNames = false
[buildPlans.IosevkaCustom.variants]
inherits = "ss12"
[buildPlans.IosevkaCustom.weights.Regular]
shape = 400
menu = 400
css = 400
[buildPlans.IosevkaCustom.weights.Bold]
shape = 700
menu = 700
css = 700
[buildPlans.IosevkaCustom.slopes.Upright]
angle = 0
shape = "upright"
menu = "upright"
css = "normal"
[buildPlans.IosevkaCustom.slopes.Italic]
angle = 9.4
shape = "italic"
menu = "italic"
css = "italic"
'';
})
nerd-fonts.symbols-only nerd-fonts.symbols-only
]; ];
users.users."lucy" = { users.users."lucy" = {
shell = pkgs.zsh;
isNormalUser = true; isNormalUser = true;
description = "lucy"; description = "lucy";
extraGroups = [ extraGroups = [
@ -148,18 +127,17 @@
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
wl-clipboard
btop
ripgrep
fd
bat
grimblast
git git
kdePackages.discover # Optional: Software center for Flatpaks/firmware updates blueman
kdePackages.kcalc # Calculator devenv
kdePackages.kcharselect # Character map inetutils
kdePackages.kclock # Clock app filezilla
kdePackages.kcolorchooser # Color picker
kdePackages.kolourpaint # Simple paint program
kdePackages.ksystemlog # System log viewer
kdePackages.sddm-kcm # SDDM configuration module
kdePackages.isoimagewriter # Write hybrid ISOs to USB
kdePackages.partitionmanager # Disk and partition management
hardinfo2 # System benchmarks and hardware info
]; ];
hardware.bluetooth = { hardware.bluetooth = {
enable = true; enable = true;

192
flake.lock generated
View file

@ -86,11 +86,11 @@
"firefox-gnome-theme": { "firefox-gnome-theme": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1779670703, "lastModified": 1782007937,
"narHash": "sha256-UdfMivNMwCCqQsYDg5pSz8X2IOaOrIZLIIy+Bg3CO2o=", "narHash": "sha256-PbnJr+eB+9Czol3ReI83dUgEhcn0sDK6TSy6ODTQm88=",
"owner": "rafaelmardojai", "owner": "rafaelmardojai",
"repo": "firefox-gnome-theme", "repo": "firefox-gnome-theme",
"rev": "942159e73e40bf785816f7f1f5feed9ef3d7c8f9", "rev": "981bd332015397fb1ca033fa982bd61635160c78",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -176,11 +176,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1778716662, "lastModified": 1782949081,
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=", "narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb", "rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -189,24 +189,6 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fromYaml": { "fromYaml": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -248,18 +230,20 @@
"gnome-shell": { "gnome-shell": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1767737596, "host": "gitlab.gnome.org",
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=", "lastModified": 1776175984,
"narHash": "sha256-RJFlFW8GiMei6oqUGrMkGEvVqOH8U7Q8abc1yK4VKD8=",
"owner": "GNOME", "owner": "GNOME",
"repo": "gnome-shell", "repo": "gnome-shell",
"rev": "ef02db02bf0ff342734d525b5767814770d85b49", "rev": "e0fdc4c13250e9a9b8ea9594c83925274f4a5dca",
"type": "github" "type": "gitlab"
}, },
"original": { "original": {
"host": "gitlab.gnome.org",
"owner": "GNOME", "owner": "GNOME",
"ref": "50.1",
"repo": "gnome-shell", "repo": "gnome-shell",
"rev": "ef02db02bf0ff342734d525b5767814770d85b49", "type": "gitlab"
"type": "github"
} }
}, },
"home-manager": { "home-manager": {
@ -269,11 +253,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1783823409, "lastModified": 1785168662,
"narHash": "sha256-OI4IkRjRXa1e7hYmCGJDPDq5H/kPwhsyoS80cNUF9fI=", "narHash": "sha256-kGJTc0oEUQuEwV66lSlMxYtOEtpk9N/HS43k+rFAvs8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "7566825d4652a1b885bd4ce65bd9e8def432fec9", "rev": "cbb77679b3d992c8b62f884cd3a84af534a28621",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -306,28 +290,6 @@
"type": "github" "type": "github"
} }
}, },
"late-sh": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
],
"rust-overlay": "rust-overlay_2"
},
"locked": {
"lastModified": 1783895121,
"narHash": "sha256-w98u6zKAdIGmbKHrbCEo2dA26k/LjU95ev1eCxzV/5k=",
"owner": "mpiorowski",
"repo": "late-sh",
"rev": "8355402e86f7dda93d79c5f0d9228e4a6378400a",
"type": "github"
},
"original": {
"owner": "mpiorowski",
"repo": "late-sh",
"type": "github"
}
},
"nix-easyroam": { "nix-easyroam": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -335,11 +297,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1781526487, "lastModified": 1784038797,
"narHash": "sha256-pZ8xS3GGXUyzEN8JicUSpW7qRa22wPIPHOO15pS7jd4=", "narHash": "sha256-td6Ko5RV/TFw7ALmYP9YUVXMS1b7hW7vDqabrGXyzUo=",
"owner": "0x5a4", "owner": "0x5a4",
"repo": "nix-easyroam", "repo": "nix-easyroam",
"rev": "e519fa1db92ee5f3ffb1aabe504ca9863febc6dc", "rev": "a6c72d25edc3b210bf6b2b46395c88be7efac147",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -358,11 +320,11 @@
"nixpkgs-nixcord": "nixpkgs-nixcord" "nixpkgs-nixcord": "nixpkgs-nixcord"
}, },
"locked": { "locked": {
"lastModified": 1783764089, "lastModified": 1785174508,
"narHash": "sha256-AzoohteEEymQ+m3fAXlQJ+mkFLQ9XjPRqSlgqJ7TLGY=", "narHash": "sha256-lnLPM02rSg8LxRwbNh0vfkB4OsBE5FYnVhy3dz2CPjI=",
"owner": "FlameFlag", "owner": "FlameFlag",
"repo": "nixcord", "repo": "nixcord",
"rev": "f3c556542c423b5e790a94d0337a80cede816620", "rev": "3708bb6f9e6c0e65b10741eab6ac55e701c09625",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -373,11 +335,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1783816212, "lastModified": 1785141334,
"narHash": "sha256-2aZisVTVGSFEk3MYcOiWQp3zvwyzbqpktB69Rcfp150=", "narHash": "sha256-kh35kIx7el4Jk8Ki3BH9/Pn1eZYSYLJ6LMALos0zOy0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3b32825de172d0bc85664f495edb096b10862524", "rev": "38a4887411571457d700c51c64a6e49ead2ed5ab",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -404,11 +366,11 @@
}, },
"nixpkgs-nixcord": { "nixpkgs-nixcord": {
"locked": { "locked": {
"lastModified": 1782999065, "lastModified": 1784432872,
"narHash": "sha256-5Dgj5+pIQYZKrXUGaLCk7CKfN3MmpwIhO94++WVxvng=", "narHash": "sha256-n3gKTBIV4ZA5VQpUakffBe3KGu4+mhPoA34rrqS0GkA=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "80d591ed473cfc46329932c2aadac9b435342c7c", "rev": "fd1462031fdee08f65fd0b4c6b64e22239a77870",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -420,11 +382,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1783791668, "lastModified": 1784555310,
"narHash": "sha256-zbcZ1dmBTPfJ7Mlqh/yLEPGpgJnwuv4Xr1xucy2WqMA=", "narHash": "sha256-/FCliTPgiuV1owejZFNx3Ch9irdvkOfOFl+HHZ+DrtM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "716c7a2664ca8325617b8a7fbb609273f2c4cae7", "rev": "421eebfd0ec7bccd4abe826ce62d7e6e83129493",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -438,14 +400,14 @@
"inputs": { "inputs": {
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"systems": "systems_2" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1783869492, "lastModified": 1785001306,
"narHash": "sha256-47qs7UofgjxU6m7c90RycaHjvEXnVM5DeVEAtaPVPUA=", "narHash": "sha256-xWqmquUtqKXLeDZ1oQUO+rV4sjA9TShIJhLL8M5Bozo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "4ef28e447b9003b67ff7fa9488a3be93c43312db", "rev": "48409beb41e8e28b64e8160ca82d8a93fb628963",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -466,11 +428,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780281641, "lastModified": 1783439237,
"narHash": "sha256-M/+hUKoKbHXpV0xGVfELbN1Ds1aoe3pL5p5/t46YhVo=", "narHash": "sha256-WUr8JF2v3n4Y30E5dxv4sAgNJXpVDBoCQNoQ/V4+n4o=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "30f9ae2f04174de63ba8bcf3580ca90843b28a01", "rev": "b70bb66c7bcd162642f3a609bc16843c7059f503",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -506,11 +468,11 @@
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"lanzaboote": "lanzaboote", "lanzaboote": "lanzaboote",
"late-sh": "late-sh",
"nix-easyroam": "nix-easyroam", "nix-easyroam": "nix-easyroam",
"nixcord": "nixcord", "nixcord": "nixcord",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixvim": "nixvim", "nixvim": "nixvim",
"spicetify-nix": "spicetify-nix",
"stylix": "stylix" "stylix": "stylix"
} }
}, },
@ -535,24 +497,24 @@
"type": "github" "type": "github"
} }
}, },
"rust-overlay_2": { "spicetify-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"late-sh",
"nixpkgs" "nixpkgs"
] ],
"systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1776222810, "lastModified": 1785048222,
"narHash": "sha256-5TD8MYqLMcJi9yV/9jq2dVUPtnu/lKZPD61esQCgvqs=", "narHash": "sha256-LjFVfwxensz76SjnvofF1Jsw+xTLd8Qp31W0J6nh2XI=",
"owner": "oxalica", "owner": "Gerg-L",
"repo": "rust-overlay", "repo": "spicetify-nix",
"rev": "4d6fee71fea68418a48992409b47f1183d0dd111", "rev": "17e524f330c282d31c32dfe076222d4a12277886",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "oxalica", "owner": "Gerg-L",
"repo": "rust-overlay", "repo": "spicetify-nix",
"type": "github" "type": "github"
} }
}, },
@ -576,11 +538,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1783358511, "lastModified": 1784676123,
"narHash": "sha256-/F85cBWvU8b2hpawuCog464065ZTJtdMgVPWwJ9yHjE=", "narHash": "sha256-ndyanKzw90yX2nUVFmTuYqXidUNymtMfgmIHyNdhht0=",
"owner": "nix-community", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"rev": "14814ef555d8148ab82eba5054e654cd9eae3a1f", "rev": "66714e5ce44269ecc58c20d9196da8dbe1b27a31",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -590,21 +552,6 @@
} }
}, },
"systems": { "systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": { "locked": {
"lastModified": 1774449309, "lastModified": 1774449309,
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=", "narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
@ -620,6 +567,21 @@
"type": "github" "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"
}
},
"systems_3": { "systems_3": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
@ -654,11 +616,11 @@
"tinted-schemes": { "tinted-schemes": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1777806186, "lastModified": 1781968807,
"narHash": "sha256-PDF0/wObw4nIsSBeXVYLsloXOiphXCgIdsrNcVXguKs=", "narHash": "sha256-yYO3Vw2M0y3TAUqt+9+Mj0zwP3XDTF5/PXcPhhFQ1ZM=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "schemes", "repo": "schemes",
"rev": "0c94645546f4f3ddac77a1a5fce54eb95bf50795", "rev": "2ccef2f4b22e3cab5a9292811f7133a07eeba4a7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -670,11 +632,11 @@
"tinted-tmux": { "tinted-tmux": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1778379944, "lastModified": 1782012462,
"narHash": "sha256-wPDFzMGSlARlw0Sfsn48Q2+jPSfk6N0Ng6BC/d+7Q24=", "narHash": "sha256-2iDiD8DQLwS1lGuD9TS8WlvNyDoTs6krWntJbtB2zGo=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "tinted-tmux", "repo": "tinted-tmux",
"rev": "fe0203a198690e71a5ff11e08812a4673de3678d", "rev": "8c4e750f738a742bd73377ee41d3dadedebedef4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -686,11 +648,11 @@
"tinted-zed": { "tinted-zed": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1778378178, "lastModified": 1782009766,
"narHash": "sha256-OXPXRIQgGwV77HjYRryOHguh4ALX96jkg+tseLkGgHA=", "narHash": "sha256-VUhBjpGvWqHI7rWeyMYb/u87YJSXHKfVV6S+IelWeO8=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "base16-zed", "repo": "base16-zed",
"rev": "9cd816033ff969415b190722cddf134e78a5665f", "rev": "5e8350bcd354e3241ab681a265fa6ef060c40be1",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -22,14 +22,14 @@
url = "github:nix-community/stylix"; url = "github:nix-community/stylix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
late-sh = {
url = "github:mpiorowski/late-sh";
inputs.nixpkgs.follows = "nixpkgs";
};
lanzaboote = { lanzaboote = {
url = "github:nix-community/lanzaboote/v1.1.0"; url = "github:nix-community/lanzaboote/v1.1.0";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
spicetify-nix = {
url = "github:Gerg-L/spicetify-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = outputs =
@ -44,10 +44,12 @@
}: }:
{ {
nixosConfigurations.seele = nixpkgs.lib.nixosSystem { nixosConfigurations.seele = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [ modules = [
./easyroam.nix ./easyroam.nix
./configuration.nix ./configuration.nix
./nixvim/nixvim.nix ./nixvim/nixvim.nix
./hw-configs/laptop.nix
nix-easyroam.nixosModules.nix-easyroam nix-easyroam.nixosModules.nix-easyroam
stylix.nixosModules.stylix stylix.nixosModules.stylix
nixvim.nixosModules.nixvim nixvim.nixosModules.nixvim
@ -59,19 +61,33 @@
home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.extraSpecialArgs = { inherit inputs; };
} }
({ lib, ... }: { ({ lib, ... }: {
boot.loader.systemd-boot.enable = true;
networking.hostName = lib.mkForce "seele"; networking.hostName = lib.mkForce "seele";
imports = [ powerManagement.powertop.enable = true;
./hardware-configuration-laptop.nix services.upower.enable = true;
]; services.tlp = {
enable = true;
settings = {
CPU_SCALING_GOVERNOR_ON_AC = "performance";
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
CPU_MIN_PERF_ON_AC = 0;
CPU_MAX_PERF_ON_AC = 100;
CPU_MIN_PERF_ON_BAT = 0;
CPU_MAX_PERF_ON_BAT = 20;
};
};
}) })
]; ];
}; };
nixosConfigurations.nerv = nixpkgs.lib.nixosSystem { nixosConfigurations.nerv = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [ modules = [
./configuration.nix ./configuration.nix
./nixvim/nixvim.nix ./nixvim/nixvim.nix
./hw-configs/desktop.nix
lanzaboote.nixosModules.lanzaboote lanzaboote.nixosModules.lanzaboote
nix-easyroam.nixosModules.nix-easyroam nix-easyroam.nixosModules.nix-easyroam
stylix.nixosModules.stylix stylix.nixosModules.stylix
@ -84,22 +100,35 @@
home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.extraSpecialArgs = { inherit inputs; };
} }
({ pkgs, lib, ... }: { (
imports = [ {
./hardware-configuration-desktop.nix config,
]; pkgs,
networking.hostName = lib.mkForce "nerv"; lib,
environment.systemPackages = [ ...
# For debugging and troubleshooting Secure Boot. }:
pkgs.sbctl {
]; networking.hostName = lib.mkForce "nerv";
boot.loader.systemd-boot.enable = lib.mkForce false; environment.systemPackages = [
pkgs.sbctl
];
boot.kernelParams = [
"video=card2-DP-5:2560x1440@60"
];
boot.loader.systemd-boot.enable = lib.mkForce false;
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = {
modesetting.enable = true;
open = true;
package = config.boot.kernelPackages.nvidiaPackages.latest;
};
boot.lanzaboote = { boot.lanzaboote = {
enable = true; enable = true;
pkiBundle = "/var/lib/sbctl"; pkiBundle = "/var/lib/sbctl";
}; };
}) }
)
]; ];
}; };
}; };

View file

@ -1,50 +0,0 @@
# 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,
...
}:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [
"nvme"
"ahci"
"xhci_pci"
"usbhid"
"usb_storage"
"sd_mod"
];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" = {
device = "/dev/disk/by-uuid/64a37727-0c5f-41d4-afac-dc26978916c1";
fsType = "xfs";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/F424-0E3E";
fsType = "vfat";
options = [
"fmask=0077"
"dmask=0077"
];
};
swapDevices = [ ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia.open = true; # see the note above
boot.loader.systemd-boot.configurationLimit = 5;
}

View file

@ -8,33 +8,38 @@
imports = [ imports = [
./stylix.nix ./stylix.nix
./fastfetch.nix ./fastfetch.nix
./hyprland.nix
inputs.nixcord.homeModules.nixcord inputs.nixcord.homeModules.nixcord
inputs.spicetify-nix.homeManagerModules.spicetify
]; ];
programs.spicetify = {
enable = true;
wayland = true;
};
# Home Manager needs a bit of information about you and the # Home Manager needs a bit of information about you and the
# paths it should manage. # paths it should manage.
home.packages = with pkgs; [ home.packages = with pkgs; [
rnote
xournalpp xournalpp
git
inputs.late-sh.packages.${stdenv.hostPlatform.system}.late
spotify
fastfetch fastfetch
hyfetch hyfetch
nemo
pavucontrol
material-symbols
]; ];
home.pointerCursor.enable = true;
home.username = "lucy"; home.username = "lucy";
home.homeDirectory = "/home/lucy"; home.homeDirectory = "/home/lucy";
services.syncthing = { services.syncthing.enable = true;
programs.git = {
enable = true; enable = true;
settings = { settings = {
devices = { user.name = "lucy";
cyberia = { user.email = "lucykaufmann@protonmail.com";
id = "OOJBAJU-AAIKLHO-BKMMHBU-2NXE75Z-HE64A6V-LET4ZXB-Q2FT2Y4-GZON3AD"; init.defaultBranch = "main";
autoAcceptFolders = true;
name = "cyberia";
};
};
}; };
}; };
programs.quickshell.enable = true;
programs.fuzzel.enable = true;
programs.nixcord = { programs.nixcord = {
enable = true; enable = true;
discord.vencord.enable = true; discord.vencord.enable = true;
@ -45,33 +50,15 @@
}; };
}; };
}; };
programs.bash = {
enable = true;
enableCompletion = true;
bashrcExtra = ''
PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
'';
};
programs.google-chrome.enable = true; programs.google-chrome.enable = true;
programs.firefox = { programs.foot = {
enable = false; enable = true;
profiles = { settings = {
lucy = { main = {
isDefault = true; pad = "20x20";
extensions.force = true;
path = "lucy";
id = 0;
settings = {
default = true;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
};
}; };
}; };
}; };
programs.ghostty = {
enable = true;
};
# DANGER ZONE # DANGER ZONE
programs.home-manager.enable = true; programs.home-manager.enable = true;
home.stateVersion = "26.05"; home.stateVersion = "26.05";

225
home/hyprland.lua Normal file
View file

@ -0,0 +1,225 @@
hl.monitor({
output = "",
mode = "preferred",
position = "auto",
scale = "1",
})
hl.monitor({
output = "eDP-1",
mode = "preferred",
position = "auto",
scale = "1",
})
hl.monitor({
output = "DP-5",
mode = "2560x1440@165",
position = "auto",
scale = "1",
})
-- Set programs that you use
local terminal = "foot"
local fileManager = "nemo"
local menu = "fuzzel"
hl.on("hyprland.start", function()
hl.exec_cmd("qs")
hl.exec_cmd("/usr/libexec/hyprpolkitagent")
end)
hl.config({
general = {
gaps_in = 5,
gaps_out = 10,
border_size = 2,
resize_on_border = false,
allow_tearing = false,
layout = "master",
},
decoration = {
rounding = 18,
rounding_power = 2,
active_opacity = 1.0,
inactive_opacity = 1.0,
shadow = {
enabled = true,
range = 4,
render_power = 3,
color = 0xee1a1a1a,
},
blur = {
enabled = true,
size = 3,
passes = 2,
vibrancy = 0.1696,
},
},
animations = {
enabled = true,
},
})
-- Default curves and animations, see https://wiki.hypr.land/Configuring/Advanced-and-Cool/Animations/
hl.curve("easeOutQuint", { type = "bezier", points = { { 0.23, 1 }, { 0.32, 1 } } })
hl.curve("easeInOutCubic", { type = "bezier", points = { { 0.65, 0.05 }, { 0.36, 1 } } })
hl.curve("linear", { type = "bezier", points = { { 0, 0 }, { 1, 1 } } })
hl.curve("almostLinear", { type = "bezier", points = { { 0.5, 0.5 }, { 0.75, 1 } } })
hl.curve("quick", { type = "bezier", points = { { 0.15, 0 }, { 0.1, 1 } } })
-- Default springs
hl.curve("easy", { type = "spring", mass = 1, stiffness = 71.2633, dampening = 15.8273644 })
hl.animation({ leaf = "global", enabled = true, speed = 5, bezier = "easeInOutCubic" })
hl.animation({ leaf = "windows", enabled = true, speed = 4, bezier = "easeOutQuint", style = "slide" })
hl.animation({ leaf = "fade", enabled = true, speed = 3, bezier = "quick" })
hl.animation({ leaf = "layers", enabled = true, speed = 4, bezier = "easeOutQuint" })
hl.animation({ leaf = "workspaces", enabled = true, speed = 2, bezier = "easeOutQuint", style = "slidevert" })
hl.animation({ leaf = "border", enabled = false, speed = 2, bezier = "easeOutQuint", style = "slidevert" })
hl.animation({ leaf = "zoomFactor", enabled = true, speed = 7, bezier = "quick" })
hl.config({
master = {
new_status = "slave",
},
})
---------------
---- INPUT ----
---------------
hl.config({
input = {
kb_layout = "eu",
kb_variant = "",
kb_model = "",
kb_options = "",
kb_rules = "",
follow_mouse = 1,
sensitivity = 0, -- -1.0 - 1.0, 0 means no modification.
accel_profile = "flat",
touchpad = {
natural_scroll = false,
},
},
})
hl.gesture({
fingers = 3,
direction = "vertical",
action = "workspace",
})
local mainMod = "SUPER" -- Sets "Windows" key as main modifier
local aux_mod = "ALT"
-- Example binds, see https://wiki.hypr.land/Configuring/Basics/Binds/ for more
hl.bind(mainMod .. " + Return", hl.dsp.exec_cmd(terminal))
hl.bind(mainMod .. " + Q", hl.dsp.window.close())
hl.bind(
mainMod .. " + M",
hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch 'hl.dsp.exit()'")
)
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd(fileManager))
hl.bind(mainMod .. " + V", hl.dsp.window.float({ action = "toggle" }))
hl.bind(mainMod .. " + Space", hl.dsp.exec_cmd(menu))
-- Move focus with mainMod + arrow keys
hl.bind(mainMod .. " + left", hl.dsp.focus({ direction = "left" }))
hl.bind(mainMod .. " + right", hl.dsp.focus({ direction = "right" }))
hl.bind(mainMod .. " + up", hl.dsp.focus({ direction = "up" }))
hl.bind(mainMod .. " + down", hl.dsp.focus({ direction = "down" }))
hl.bind(mainMod .. " + h", hl.dsp.focus({ direction = "left" }))
hl.bind(mainMod .. " + l", hl.dsp.focus({ direction = "right" }))
hl.bind(mainMod .. " + k", hl.dsp.focus({ direction = "up" }))
hl.bind(mainMod .. " + j", hl.dsp.focus({ direction = "down" }))
for i = 1, 10 do
local key = i % 10 -- 10 maps to key 0
hl.bind(mainMod .. " + " .. key, hl.dsp.focus({ workspace = i }))
hl.bind(mainMod .. " + SHIFT + " .. key, hl.dsp.window.move({ workspace = i }))
end
-- Move/resize windows with mainMod + LMB/RMB and dragging
hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
hl.bind(aux_mod .. " + mouse:272", hl.dsp.window.resize(), { mouse = true })
-- Laptop multimedia keys for volume and LCD brightness
hl.bind(
"XF86AudioRaiseVolume",
hl.dsp.exec_cmd("wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"),
{ locked = true, repeating = true }
)
hl.bind(
"XF86AudioLowerVolume",
hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"),
{ locked = true, repeating = true }
)
hl.bind(
"XF86AudioMute",
hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"),
{ locked = true, repeating = true }
)
hl.bind(
"XF86AudioMicMute",
hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"),
{ locked = true, repeating = true }
)
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("brightnessctl set 5%+"), { locked = true, repeating = true })
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd("brightnessctl set 5%-"), { locked = true, repeating = true })
-- Requires playerctl
hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl next"), { locked = true })
hl.bind("XF86AudioPause", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true })
hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true })
hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), { locked = true })
-- Screenshot binds
hl.bind(aux_mod .. "+ SHIFT + S", hl.dsp.exec_cmd("grimblast copy output -n -c"))
hl.bind(mainMod .. "+ SHIFT + S", hl.dsp.exec_cmd("grimblast copy area -n -f"))
-- misc binds
hl.bind(mainMod .. " + w", hl.dsp.exec_cmd("/etc/bash/bashrc.d/90-qs.bash switch-wall fuzzel"))
hl.bind(mainMod .. " + t", hl.dsp.exec_cmd("/etc/bash/bashrc.d/90-qs.bash switch-theme fuzzel"))
hl.bind(mainMod .. "+ SHIFT + minus", hl.dsp.window.move({ workspace = "special:scratchpad" }))
hl.bind(mainMod .. " + minus", hl.dsp.workspace.toggle_special("scratchpad"))
hl.window_rule({
-- Ignore maximize requests from all apps. You'll probably like this.
name = "suppress-maximize-events",
match = { class = ".*" },
suppress_event = "maximize",
})
hl.window_rule({
-- Fix some dragging issues with XWayland
name = "fix-xwayland-drags",
match = {
class = "^$",
title = "^$",
xwayland = true,
float = true,
fullscreen = false,
pin = false,
},
no_focus = true,
})
hl.window_rule({
name = "discord-to-ws6",
match = { class = "^(discord)$" },
workspace = "6 silent",
})
hl.window_rule({
name = "spotify-to-ws7",
match = { class = "^(Spotify)$" },
workspace = "7 silent",
})

31
home/hyprland.nix Normal file
View file

@ -0,0 +1,31 @@
{
config,
inputs,
pkgs,
...
}:
{
wayland.windowManager.hyprland = {
enable = true;
package = null;
systemd.enable = false;
extraConfig = ''
require("main")
'';
portalPackage =
pkgs.xdg-desktop-portal-hyprland;
};
xdg.configFile."hypr/main.lua".source =
config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos/home/hyprland.lua";
xdg.portal.config = {
common = {
default = [ "gtk" ];
};
hyprland = {
default = [ "hyprland" ];
"org.freedesktop.impl.portal.Secret" = [
"gnome-keyring"
];
};
};
}

View file

@ -1,18 +1,48 @@
{ {
lib,
inputs,
...
}:
let
keep = [
"spicetify"
"neovim"
"qt"
"gtk"
"hyprland"
"hyprpaper"
"foot"
"fuzzel"
"discord"
"console"
];
dir = "${inputs.stylix}/modules";
drop = builtins.filter (n: !(builtins.elem n keep)) (
builtins.attrNames (lib.filterAttrs (_: t: t == "directory") (builtins.readDir dir))
);
disable =
platform:
map (n: "${dir}/${n}/${platform}.nix") (
builtins.filter (n: builtins.pathExists "${dir}/${n}/${platform}.nix") drop
);
in
{
disabledModules = disable "hm";
stylix = { stylix = {
enable = true; enable = true;
autoEnable = false; autoEnable = false;
targets = { targets = {
gtk.enable = true; gtk.enable = true;
ghostty.enable = true;
firefox.enable = true;
firefox.profileNames = [ "lucy" ];
firefox.colorTheme.enable = true;
nixcord.enable = true; nixcord.enable = true;
xresources.enable = true;
kde.enable = true;
kde.useWallpaper = false;
qt.enable = true; qt.enable = true;
hyprland.enable = true;
hyprland.hyprpaper.enable = false;
fuzzel.enable = true;
foot.enable = true;
spicetify.enable = true;
}; };
}; };
} }

31
hw-configs/desktop.nix Normal file
View file

@ -0,0 +1,31 @@
# 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, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "ahci" "xhci_pci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/64a37727-0c5f-41d4-afac-dc26978916c1";
fsType = "xfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/F424-0E3E";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -14,18 +14,18 @@
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" =
{ device = "/dev/disk/by-uuid/624609f3-6d1c-4e9c-adcb-0c4d66de25c3"; { device = "/dev/disk/by-uuid/751981d7-36b5-4759-b0eb-7db70b5d7b8c";
fsType = "xfs"; fsType = "xfs";
}; };
fileSystems."/boot" = fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/298C-5081"; { device = "/dev/disk/by-uuid/65BD-721E";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ]; options = [ "fmask=0077" "dmask=0077" ];
}; };
swapDevices = swapDevices =
[ { device = "/dev/disk/by-uuid/9d98be55-ea0d-465f-967e-29c83c4127a9"; } [ { device = "/dev/disk/by-uuid/889d88f6-0a64-482a-88e1-7a091a019373"; }
]; ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";

View file

@ -6,7 +6,7 @@
action = "<cmd> lua vim.lsp.buf.format() <cr>"; action = "<cmd> lua vim.lsp.buf.format() <cr>";
} }
{ {
key = "<leader>t"; key = "<c-t>";
action = "<cmd>ToggleTerm size=10<cr>"; action = "<cmd>ToggleTerm size=10<cr>";
} }
{ {

View file

@ -21,6 +21,7 @@
''; '';
opts = { opts = {
relativenumber = true; relativenumber = true;
number = true;
tabstop = 8; tabstop = 8;
shiftwidth = 8; shiftwidth = 8;
expandtab = true; expandtab = true;

View file

@ -38,6 +38,7 @@
lualine = { lualine = {
enable = true; enable = true;
settings = { settings = {
extensions = [ "toggleterm" ];
options = { options = {
section_separators = { section_separators = {
left = "▎"; left = "▎";
@ -48,6 +49,25 @@
right = ""; right = "";
}; };
}; };
inactive_sections = {
lualine_a = [
"mode"
];
lualine_b = [
"filename"
"filetype"
];
lualine_c = [
"diagnostics"
];
lualine_x = [
"lsp_status"
];
lualine_y = [ ];
lualine_z = [
"location"
];
};
sections = { sections = {
lualine_a = [ lualine_a = [
"mode" "mode"

View file

@ -1,9 +1,36 @@
{ {
inputs,
config, config,
pkgs, pkgs,
lib,
... ...
}: }:
let
keep = [
"neovim"
"qt"
"gtk"
"hyprland"
"foot"
"fuzzel"
"nixcord"
"console"
];
dir = "${inputs.stylix}/modules";
drop = builtins.filter (n: !(builtins.elem n keep)) (
builtins.attrNames (lib.filterAttrs (_: t: t == "directory") (builtins.readDir dir))
);
disable =
platform:
map (n: "${dir}/${n}/${platform}.nix") (
builtins.filter (n: builtins.pathExists "${dir}/${n}/${platform}.nix") drop
);
in
{ {
disabledModules = disable "nixos";
stylix.opacity = { stylix.opacity = {
terminal = 0.8; terminal = 0.8;
desktop = 1.0; desktop = 1.0;
@ -23,14 +50,18 @@
stylix = { stylix = {
enable = true; enable = true;
autoEnable = false; autoEnable = false;
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark.yaml"; base16Scheme = "${pkgs.base16-schemes}/share/themes/gruber.yaml";
polarity = "dark"; polarity = "dark";
image = ./wallpaper.png; image = ./wallpaper.png;
targets = { targets = {
console.enable = true; console.enable = true;
gtk.enable = true; gtk.enable = true;
qt.enable = true; qt.enable = true;
nixvim.enable = true; qt.platform = lib.mkForce "qtct";
nixvim = {
enable = true;
plugin = "base16-nvim";
};
}; };
fonts = { fonts = {
sizes = { sizes = {
@ -47,7 +78,8 @@
name = config.stylix.fonts.monospace.name; name = config.stylix.fonts.monospace.name;
}; };
monospace = { monospace = {
name = "Iosevka Custom"; name = "Maple Mono";
package = pkgs.maple-mono.truetype;
}; };
emoji = { emoji = {