Compare commits

..

51 Commits

Author SHA1 Message Date
autumn-the-kitty-cat 9e83f0667c feat: ghostty -> havoc, fish -> yash, dwl -> river-classic, more minimal rofi configuration ; fix: nvim rust-analyzer ; docs: update preview screenshot 2026-04-26 00:38:28 -04:00
autumn-the-kitty-cat d549dc1eeb feat: update flake.lock 2026-04-26 00:38:28 -04:00
autumn-the-kitty-cat c0212faa5b feat: update flake.lock 2026-04-10 20:21:54 -04:00
autumn-the-kitty-cat 98fb9fae46 feat: remove unnecessary services / programs / packages, set TERM variable, add package list debugging 2026-04-10 20:20:51 -04:00
autumn-the-kitty-cat 0e268f0970 fix: handle the name switch of swww to awww 2026-04-10 20:20:06 -04:00
autumn-the-kitty-cat 0e419faa8e feat: remove unused packages, install jellyfin desktop, lmms, projectm sdl, signal desktop 2026-04-10 20:19:54 -04:00
autumn-the-kitty-cat c21670e4ec feat: switch from ghostty to foot terminal emulator, add catppuccin cursors 2026-04-10 20:18:51 -04:00
autumn-the-kitty-cat 670abe43d6 feat: add fish prompt nix shell indication, remove greeting, remove eza 2026-04-10 20:17:40 -04:00
autumn-the-kitty-cat 89e652cdc1 fix: disable unused programs 2026-04-10 20:17:11 -04:00
autumn-the-kitty-cat 13d4761595 feat: set yazi wrapper name to "y" 2026-03-09 23:52:41 -04:00
autumn-the-kitty-cat 3023e366e4 feat: neovim rounded window borders by default 2026-03-09 23:52:25 -04:00
autumn-the-kitty-cat e740f4051e feat: nvim make recompilation easier 2026-03-09 22:28:18 -04:00
autumn-the-kitty-cat 1efeacc92b feat: neovim oil.nvim 2026-03-09 21:34:02 -04:00
autumn-the-kitty-cat 31d19d5c7d feat: neovim easy terminal, colors.blue -> colors.pink, lualine 2026-03-09 21:25:21 -04:00
autumn-the-kitty-cat 5acdbaaa70 feat: baleia.nvim for compile-mode.nvim ansi color support 2026-03-09 15:54:20 -04:00
autumn-the-kitty-cat 57e2fe7ea7 feat: neovim better split direction, compile-mode.nvim, format config.lua 2026-03-09 15:44:17 -04:00
autumn-the-kitty-cat 7d8d0bb269 feat: remove vim tab line 2026-03-09 01:11:05 -04:00
autumn-the-kitty-cat 7f44dbfa7e fix: move to new neovim treesitter config, remove mini.base16 stuff 2026-03-09 01:03:46 -04:00
autumn-the-kitty-cat 0772a5baf0 feat: fish shell vi mode 2026-03-08 23:45:33 -04:00
autumn-the-kitty-cat 61552efc44 feat: automatic treesitter highlighting, haskell-language-server, treesitter comment italics 2026-03-08 23:44:05 -04:00
autumn-the-kitty-cat 869785d1c5 feat: include telescope.nvim 2026-03-08 18:19:10 -04:00
autumn-the-kitty-cat 1b771db0c8 feat: switch over to a neovim cofeat & fix & refactor: so many things. listed in desc
switch over to a neovim configuration in lua, btrtile for dwl, remove
unnecessary things, some browser addons, rofimoji, fix february flake
2026-03-08 04:50:14 -04:00
autumn-the-kitty-cat 8b0466f49b fix: resolve the errors in the february host configuration; feat: update flake.lock 2026-02-17 15:41:37 -05:00
autumn-the-kitty-cat 4f820f94ab docs: updated screenshot 2026-01-13 20:09:30 -05:00
autumn-the-kitty-cat 1155c43800 feat: complete overhaul. hyprland -> dwl; foot -> ghostty; nushell -> fish; stylix: completely custom again 2026-01-13 20:09:19 -05:00
autumn-the-kitty-cat 4d92882f4e fix: add userName argument to flake.nix 2025-12-19 02:44:02 -05:00
autumn-the-kitty-cat f082e5a1d3 feat: easy theme switching with stylix, specialisations, and a rofi script; feat: switch to kitty terminal 2025-12-18 20:49:12 -05:00
autumn-the-kitty-cat d708b43395 feat: switch theme with nix specialisations 2025-12-18 04:02:04 -05:00
autumn-the-kitty-cat 893030ef66 feat: stylix as a nixos module, replace bootloader with grub 2025-12-17 23:11:34 -05:00
autumn-the-kitty-cat 1c4c5d1be6 feat: give both monitors a hyprland workspace 2025-12-17 23:11:10 -05:00
autumn-the-kitty-cat 1fe42be1b4 docs: screenshots/preview.png up to date 2025-12-08 02:30:23 -05:00
autumn-the-kitty-cat 4324799e60 build: update flake.lock 2025-12-08 02:27:59 -05:00
autumn-the-kitty-cat 82fb86c945 feat: improve the waybar clock module's format 2025-12-08 02:27:40 -05:00
autumn-the-kitty-cat 52639559e3 style: make the colours in the comments in home/pc/common/stylix.nix proper hex codes forcolorizer.nvim 2025-12-08 02:27:11 -05:00
autumn-the-kitty-cat 50db8aec2c feat: change git from a package to a program, and declare git configuration in home/pc/common/programs/git.nix 2025-12-08 02:25:07 -05:00
autumn-the-kitty-cat 6a6f2fc67f refactor: home-manager directories for each machine 2025-12-01 18:33:37 -05:00
autumn-the-kitty-cat 6696d0a56a refactor: multi-system configuration in host 2025-12-01 17:55:12 -05:00
autumn-the-kitty-cat 9b216cf609 refactor: home-manager to home/autumn 2025-12-01 17:54:36 -05:00
autumn-the-kitty-cat c76b681700 feat: add a hyprland layer rule so slurp border is not present in screenshots, add monitor rule so portal works on a 1440p monitor 2025-11-28 18:07:05 -05:00
autumn-the-kitty-cat d55b2ef3d2 feat: install bitwarden-desktop, imagemagick, jellycli, live-server, localsend 2025-11-28 18:06:27 -05:00
autumn-the-kitty-cat c7ba15d42a fix: refactor flake.nix, home-manager/home.nix, nixos/configuration.nix to avoid home-manager.useGlobalPkgs conflict error 2025-11-28 18:06:06 -05:00
autumn-the-kitty-cat 629929b657 feat: change the colour of the selected workspace in waybar 2025-11-28 18:05:06 -05:00
autumn-the-kitty-cat 92e9b70b04 feat: no more nitro nonsense in discord 2025-11-28 18:04:38 -05:00
autumn-the-kitty-cat 3c404ce97c feat: add emmet.nvim and ts-autotag 2025-11-28 18:04:26 -05:00
autumn-the-kitty-cat 93784a1909 style: organize neovim lsp servers alphabetically 2025-11-28 18:04:08 -05:00
autumn-the-kitty-cat 158f5a744e refactor: use a function to reduce repitition in zen configuration 2025-11-17 23:04:01 -05:00
autumn-the-kitty-cat e4a5dd8061 refactor: switch to hostName variable | style: reorganize environment.systemPackages | style: fix whitespace formatting for udev rules | feat: add cloudflared to environment.systemPackages 2025-11-17 23:03:24 -05:00
autumn-the-kitty-cat e109b48cf6 refactor: hostName variable in flake.nix 2025-11-17 23:01:23 -05:00
autumn-the-kitty-cat b5549d2629 feat: add juggling lab to home-manager packages 2025-11-17 23:00:50 -05:00
autumn-the-kitty-cat ffe63a7a0d init: init 2025-11-17 22:58:39 -05:00
autumn-the-kitty-cat ae221986c7 Initial commit 2025-11-17 22:55:37 -05:00
29 changed files with 648 additions and 1119 deletions
Generated
+45 -45
View File
@@ -38,11 +38,11 @@
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1776754714,
"narHash": "sha256-E3OAK27smtATTmX45uoTSRsVD+Y+ZiVVfgM/tjpbtYg=",
"lastModified": 1760703920,
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "4d508123037e7851ad36ebf7d9c48b0e9e1eb581",
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
"type": "github"
},
"original": {
@@ -89,11 +89,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1776136500,
"narHash": "sha256-r0gN2brVWA351zwMV0Flmlcd6SGMvYqFbvC3DfKFM8Y=",
"lastModified": 1775176642,
"narHash": "sha256-2veEED0Fg7Fsh81tvVDNYR6SzjqQxa7hbi18Jv4LWpM=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "0f8ba203d475587f477e7ae12661bd8459e225b7",
"rev": "179704030c5286c729b5b0522037d1d51341022c",
"type": "github"
},
"original": {
@@ -126,11 +126,11 @@
]
},
"locked": {
"lastModified": 1778716662,
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
"lastModified": 1775087534,
"narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
"rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b",
"type": "github"
},
"original": {
@@ -256,11 +256,11 @@
]
},
"locked": {
"lastModified": 1779507042,
"narHash": "sha256-7wOwi8B6D0BYsieZCnHZZj2sNUzgJhLoIVSfkwB7lxQ=",
"lastModified": 1777151655,
"narHash": "sha256-Th3a5OZyEy4kCoyLfefnt+2dwRIrFQqYgMsayF9qzFw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "509ed3c603349a9d43de9e2ae6613baea6bd5b34",
"rev": "6f59831b23d03bbf4fbd13ad167ae25da294cc14",
"type": "github"
},
"original": {
@@ -277,11 +277,11 @@
]
},
"locked": {
"lastModified": 1778805320,
"narHash": "sha256-nGFJ01m2CTBKD4ABtcY4vLhHrRN91LKr/pn41PcU78A=",
"lastModified": 1776184304,
"narHash": "sha256-No6QGBmIv5ChiwKCcbkxjdEQ/RO2ZS1gD7SFy6EZ7rc=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "9846abe15e7d0d36b8acbd4d05f2b87461744c92",
"rev": "3c7524c68348ef79ce48308e0978611a050089b2",
"type": "github"
},
"original": {
@@ -297,11 +297,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1779494629,
"narHash": "sha256-VuZJ76qmY90clvY6RQfAPL5JHwhcf1jmyqBfKR7WQ7Q=",
"lastModified": 1777162024,
"narHash": "sha256-D0c1qWtSL49RY5K6cEXf6Bjksbiv5oLRefSwMr9Wh4s=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "9b46852004ed151b36e424de6d529a231c622561",
"rev": "2256cb2eecdce4ad75ac9a0320f874b900c00529",
"type": "github"
},
"original": {
@@ -313,11 +313,11 @@
"neovim-src": {
"flake": false,
"locked": {
"lastModified": 1779493669,
"narHash": "sha256-09xuVobnmU/uZLUZLr/lb3tir2v0lwWEj92gGuJIdKU=",
"lastModified": 1777159037,
"narHash": "sha256-k6uBXGmfdvpnpAUUY+jlCnz+MK0HURldSAkNGEMWABk=",
"owner": "neovim",
"repo": "neovim",
"rev": "f53d9ac90b7a5a0eefb22398a8ce4e249a3fc732",
"rev": "924dbf10b8e3bbc35eff629d12583bc9c944660b",
"type": "github"
},
"original": {
@@ -350,11 +350,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1779414690,
"narHash": "sha256-gOTcX/9MZVMUE0Xvb4IEcv+0TQJkZFNEnL757ljU360=",
"lastModified": 1776949667,
"narHash": "sha256-GMSVw35Q+294GlrTUKlx087E31z7KurReQ1YHSKp5iw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6dedf69f94d03cbe7bdde106f2d4c23ae2a853bf",
"rev": "01fbdeef22b76df85ea168fbfe1bfd9e63681b30",
"type": "github"
},
"original": {
@@ -366,11 +366,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1779357205,
"narHash": "sha256-cCO8aTqss5x9Ky8GWkpY0Hy5fyTZEbtifSUV8QjSzic=",
"lastModified": 1776877367,
"narHash": "sha256-EHq1/OX139R1RvBzOJ0aMRT3xnWyqtHBRUBuO1gFzjI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f83fc3c307e74bc5fd5adb7eb6b8b13ffd2a36e1",
"rev": "0726a0ecb6d4e08f6adced58726b95db924cef57",
"type": "github"
},
"original": {
@@ -392,11 +392,11 @@
]
},
"locked": {
"lastModified": 1777598946,
"narHash": "sha256-X239dAGaU1+gfDj8jKH8GzlqKMcxaVfXOio+uzBOkeE=",
"lastModified": 1775228139,
"narHash": "sha256-ebbeHmg+V7w8050bwQOuhmQHoLOEOfqKzM1KgCTexK4=",
"owner": "nix-community",
"repo": "NUR",
"rev": "5d55af01c0f86be583931fe99207fc56c14134b3",
"rev": "601971b9c89e0304561977f2c28fa25e73aa7132",
"type": "github"
},
"original": {
@@ -459,11 +459,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1779378391,
"narHash": "sha256-IsDb9erotvx9npI94UDosvMeYQK17p7/vmU2v9batrY=",
"lastModified": 1776893932,
"narHash": "sha256-AFD5cf9eNqXq1brHS63xeZy2xKZMgG9J86XJ9I2eLn8=",
"owner": "danth",
"repo": "stylix",
"rev": "c1456cc4ba3c9485e7b4158c909eeca5a752cd59",
"rev": "84971726c7ef0bb3669a5443e151cc226e65c518",
"type": "github"
},
"original": {
@@ -521,11 +521,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1777041405,
"narHash": "sha256-BAGZ7ObFV/9Z61OJZun7ifPyhkuHqNuW1QIhQ8LuzCo=",
"lastModified": 1772661346,
"narHash": "sha256-4eu3LqB9tPqe0Vaqxd4wkZiBbthLbpb7llcoE/p5HT0=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "5f868b3a338b6904c47f3833b9c411be641983a8",
"rev": "13b5b0c299982bb361039601e2d72587d6846294",
"type": "github"
},
"original": {
@@ -537,11 +537,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1777169200,
"narHash": "sha256-h7dDbIzP5hDr9v97w9PL6jdAgXawmj6krcH+959rqpU=",
"lastModified": 1772934010,
"narHash": "sha256-x+6+4UvaG+RBRQ6UaX+o6DjEg28u4eqhVRM9kpgJGjQ=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "f798c2dce44ef815bb6b8f05a82135c7942d35ac",
"rev": "c3529673a5ab6e1b6830f618c45d9ce1bcdd829d",
"type": "github"
},
"original": {
@@ -553,11 +553,11 @@
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1777463218,
"narHash": "sha256-Bhkozqtq3BKLqWTlmKm8uAptfX4aRGI8QX3eEL54Vpc=",
"lastModified": 1772909925,
"narHash": "sha256-jx/5+pgYR0noHa3hk2esin18VMbnPSvWPL5bBjfTIAU=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "5768d08ed2e7944a26a958868cdb073cb8856dae",
"rev": "b4d3a1b3bcbd090937ef609a0a3b37237af974df",
"type": "github"
},
"original": {
@@ -574,11 +574,11 @@
]
},
"locked": {
"lastModified": 1779455631,
"narHash": "sha256-svU6Ro4xiMxMA1KJGwQ/nfKwz3yXE/SONCw2Z1qTXHA=",
"lastModified": 1777138694,
"narHash": "sha256-yjAFuyqQyOtQ5entLYmSRf/1L0kuSDWQndS2QNBLQlc=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "5bcdfcef664bf62831dcb4b947004d9c5fbf7201",
"rev": "5ceb2bfc5671bfca6b1b363669309d6871043d66",
"type": "github"
},
"original": {
+1 -1
View File
@@ -45,10 +45,10 @@
hostName = "february";
inherit userName;
inherit inputs;
};
modules = [ ./host/pc/february/configuration.nix ];
};
};
"march" = inputs.nixpkgs.lib.nixosSystem {
specialArgs = {
+9 -12
View File
@@ -1,11 +1,4 @@
{ inputs, lib, pkgs, ... }:
let
cursorTheme = {
name = "Bibata-Modern-Ice";
package = pkgs.bibata-cursors;
size = 3;
};
in
{
imports = [
inputs.zen-browser.homeModules.default
@@ -21,7 +14,7 @@ in
home.username = "autumn";
home.homeDirectory = "/home/autumn";
home.stateVersion = "26.05";
home.stateVersion = "25.05";
# programs.ghostty.enable = true;
# programs.ghostty.settings.font-size = 24;
@@ -44,16 +37,20 @@ in
};
home.pointerCursor = {
name = cursorTheme.name;
package = cursorTheme.package;
size = cursorTheme.size;
name = "catppuccin-mocha-pink-cursors";
package = pkgs.catppuccin-cursors.mochaPink;
size = 6;
x11.enable = true;
gtk.enable = true;
};
gtk = {
enable = true;
inherit cursorTheme;
cursorTheme = {
name = "catppuccin-mocha-pink-cursors";
package = pkgs.catppuccin-cursors.mochaPink;
size = 6;
};
};
programs.home-manager.enable = true;
-5
View File
@@ -20,12 +20,7 @@
vial
vlc
wl-clipboard
xdg-desktop-portal
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
libdrm
fcft
];
}
+11 -6
View File
@@ -1,19 +1,24 @@
{...}:
{
imports = [
./eww
./nvim
./rofi
./zen
./btop.nix
./carapace.nix
./foot.nix
# ./fastfetch.nix
#./fish.nix
./git.nix
./havoc.nix
# ./hyfetch.nix
./mako.nix
./tcsh.nix
./tmux.nix
# ./ncspot.nix
# ./tmux.nix
./vesktop.nix
./waybar.nix
# ./yazi.nix
./yash.nix
./zathura.nix
./zen.nix
./zoxide.nix
];
}
-18
View File
@@ -1,18 +0,0 @@
{ config, lib, pkgs, ... }:
{
home.packages = [
pkgs.eww
pkgs.playerctl
pkgs.pamixer
pkgs.alsa-utils
];
xdg.configFile."eww/eww.yuck".source = ./eww.yuck;
xdg.configFile."eww/eww.scss".source =
let
colors = with config.lib.stylix.colors; {
inherit base00 base01 base02 base03 base04 base05 base06 base07 base08 base09 base0A base0B base0C base0D base0E base0F;
};
in
pkgs.replaceVars ./eww.scss colors;
}
-66
View File
@@ -1,66 +0,0 @@
$base00: #@base00@;
$base01: #@base01@;
$base02: #@base02@;
$base03: #@base03@;
$base04: #@base04@;
$base05: #@base05@;
$base06: #@base06@;
$base07: #@base07@;
$base08: #@base08@;
$base09: #@base09@;
$base0A: #@base0A@;
$base0B: #@base0B@;
$base0C: #@base0C@;
$base0D: #@base0D@;
$base0E: #@base0E@;
$base0F: #@base0F@;
* {
all: unset; // Unsets everything so you can style everything from scratch
}
// Global Styles
.bar {
background-color: $base01;
color: $base05;
padding: 5px;
font-size: large;
}
// Styles on classes (see eww.yuck for more information)
.sidestuff slider {
all: unset;
color: $base0D;
}
.metric scale trough highlight {
all: unset;
background-color: $base0D;
border-radius: 10px;
}
.metric scale trough {
all: unset;
background-color: $base04;
border-radius: 50px;
min-height: 3px;
min-width: 50px;
margin-left: 10px;
margin-right: 20px;
}
tooltip.background {
background-color: $base01;
font-size: large;
border: 2px solid $base0D;
}
.label-ram {
font-size: large;
}
.workspaces button:hover {
color: $base0D;
}
-76
View File
@@ -1,76 +0,0 @@
; https://github.com/elkowar/eww/blob/master/examples/eww-bar/
(defwidget bar []
(centerbox :orientation "h"
(workspaces)
(time)
(sidestuff)))
(defwidget sidestuff []
(box :class "sidestuff" :orientation "h" :space-evenly false :halign "end"
(metric :label " "
:tooltip "${volume}% volume"
:value {volume}
:onchange "wpctl set-volume @DEFAULT_SINK@ {}%")
(metric :label "󰍛"
:tooltip "${round(EWW_RAM.used_mem_perc, 0)}% of RAM used"
:value {EWW_RAM.used_mem_perc}
:onchange "")
(metric :label "󰻠"
:tooltip "${round(EWW_CPU.avg, 0)}% average CPU usage"
:value {round((EWW_CPU.avg), 0)}
:onchange "")
(metric :label "󱈑"
:tooltip "${round((EWW_BATTERY["BAT0"].capacity + EWW_BATTERY["BAT1"].capacity) / 2, 0)}% battery life"
:value {round((EWW_BATTERY["BAT0"].capacity + EWW_BATTERY["BAT1"].capacity) / 2, 0)}
:onchange "")))
(defwidget workspaces []
(box :class "workspaces"
:orientation "h"
:space-evenly true
:halign "start"
:spacing 10
(button :onclick "riverctl set-focused-tags 1" 1)
(button :onclick "riverctl set-focused-tags 2" 2)
(button :onclick "riverctl set-focused-tags 4" 3)
(button :onclick "riverctl set-focused-tags 8" 4)
(button :onclick "riverctl set-focused-tags 16" 5)
(button :onclick "riverctl set-focused-tags 32" 6)
(button :onclick "riverctl set-focused-tags 64" 7)
(button :onclick "riverctl set-focused-tags 128" 8)
(button :onclick "riverctl set-focused-tags 256" 9)))
(defwidget metric [?tooltip label value onchange]
(box :orientation "h"
:tooltip tooltip
:class "metric"
:space-evenly false
(box :class "label" label)
(scale :min 0
:max 101
:active {onchange != ""}
:value value
:onchange onchange)))
(defpoll volume :interval "1s"
"wpctl get-volume @DEFAULT_SINK@ | awk -F' ' '{print 100 * $2}'")
(defwidget time []
(label :text time-poll))
(defpoll time-poll :interval "10s"
"date '+%H:%M %b %d, %Y'")
(defwindow bar
:monitor 0
:exclusive true
:focusable "none"
:geometry (geometry :x "0%"
:y "0%"
:width "100%"
:height "10px"
:anchor "top center")
:reserve (struts :side "top" :distance "4%")
(bar))
-9
View File
@@ -1,9 +0,0 @@
{ lib, ... }:
{
programs.foot = {
enable = true;
settings.main.font = lib.mkForce "Caskaydia Cove Mono:size=24";
settings.main.font-size-adjustment = 1;
settings.main.shell = "tcsh";
};
}
+57
View File
@@ -0,0 +1,57 @@
{ pkgs, ... }:
{
home.packages = [ pkgs.havoc ];
xdg.configFile."havoc/havoc.cfg".text = ''
[child]
program=yash
[window]
margin=yes
[bind]
C-S-c=copy
C-S-v=paste
C-S-j=scroll down
C-S-k=scroll up
[font]
size=30
path=${pkgs.nerd-fonts.caskaydia-cove}/share/fonts/truetype/NerdFonts/CaskaydiaCove/CaskaydiaCoveNerdFontMono-Regular.ttf
[colors]
foreground=#cdd6f7
background=#11111b
# black
color0 = #45475a
color8 = #585b70
# red
color1 = #f38ba8
color9 = #f38ba8
# green
color2 = #a6e3a1
color10 = #a6e3a1
# yellow
color3 = #f9e2af
color11 = #f9e2af
# blue
color4 = #89b4fa
color12 = #89b4fa
# magenta
color5 = #f5c2e7
color13 = #f5c2e7
# cyan
color6 = #94e2d5
color14 = #94e2d5
# white
color7 = #bac2de
color15 = #a6adc8
'';
}
+278 -300
View File
@@ -10,22 +10,19 @@ vim.opt.softtabstop = 4
vim.opt.wildmenu = true
vim.opt.undofile = true
vim.opt.termguicolors = true
vim.opt.shell = "@shell@"
vim.opt.shell = "yash"
vim.opt.splitbelow = true
vim.opt.splitright = true
vim.opt.winborder = "rounded"
vim.o.list = true
vim.o.listchars = "eol:"
vim.g.mapleader = " "
vim.keymap.set("n", "<leader>n", "<cmd>e .<cr>", {})
-- Per nixvim generated configuration
vim.diagnostic.config({
float = { border = "rounded", source = "always" },
virtual_lines = false,
virtual_text = true,
virtual_lines = { current_line = true },
virtual_text = false,
})
vim.keymap.set("n", "<leader>q", function()
@@ -51,26 +48,6 @@ vim.pack.add({
"https://github.com/nvim-lualine/lualine.nvim",
"https://github.com/stevearc/oil.nvim",
"https://github.com/folke/lazydev.nvim",
"https://github.com/RRethy/base16-nvim",
})
require('base16-colorscheme').setup({
base00 = '#@base00@',
base01 = '#@base01@',
base02 = '#@base02@',
base03 = '#@base03@',
base04 = '#@base04@',
base05 = '#@base05@',
base06 = '#@base06@',
base07 = '#@base07@',
base08 = '#@base08@',
base09 = '#@base09@',
base0A = '#@base0A@',
base0B = '#@base0B@',
base0C = '#@base0C@',
base0D = '#@base0D@',
base0E = '#@base0E@',
base0F = '#@base0F@',
})
require("lazydev").setup({
@@ -143,6 +120,7 @@ cmp.setup({
},
sources = {
{ name = "nvim_lsp" },
{ name = "emoji" },
{ keywordLength = 3, name = "buffer", option = { get_bufnrs = vim.api.nvim_list_bufs } },
{ keywordLength = 3, name = "path" },
{ name = "lazydev" },
@@ -192,262 +170,262 @@ vim.lsp.enable("rust-analyzer")
vim.lsp.config("zls", { cmd = { "zls" }, filetypes = { "zig" } })
vim.lsp.enable("zls")
-- -- https://github.com/catppuccin/nvim/blob/main/lua/catppuccin/palettes/mocha.lua
-- -- https://github.com/Ronxvier/ymir.nvim/blob/main/lua/ymir/palette.lua
-- local colors = {
-- red = "#f38ba8",
-- orange = "#fab387",
-- green = "#a6e3a1",
-- yellow = "#f9e2af",
-- pink = "#f5c2e7",
-- magenta = "#cba6f7",
-- cyan = "#94e2d5",
--
-- bg = "#11111b",
-- fg = "#cdd6f4",
-- cursorline = "#181825",
-- selection = "#313244",
-- linenr = "#45475a",
-- comment = "#585b70",
--
-- -- Syntax
-- keyword = "#cba6f7",
-- Function = "#cba6f7",
-- string = "#f9e2af",
-- constant = "#cba6f7",
-- type = "#94e2d5",
-- number = "#fab387",
-- boolean = "#fab387",
-- operator = "#cdd6f4",
-- variable = "#cdd6f4",
--
-- -- TODO
-- -- UI
-- cursor = "#f5a97f",
-- visual = "#2e3c55",
-- search = "#f5c2e7",
-- statusline = "#1e293b",
-- menu_bg = "#1a2535",
-- menu_sel = "#3b4252",
-- fold = "#3e4a5a",
-- split = "#334155",
--
-- -- TODO
-- -- Diagnostics
-- diag_error = "#f38ba8",
-- diag_warn = "#fab387",
-- diag_info = "#89dceb",
-- diag_hint = "#b4befe",
-- }
--
-- -- https://github.com/Ronxvier/ymir.nvim/blob/main/lua/ymir/groups.lua
-- local groups = {
-- Normal = { fg = colors.fg, bg = colors.bg },
-- NormalFloat = { fg = colors.fg, bg = colors.bg },
-- Comment = { fg = colors.comment, italic = true },
-- Constant = { fg = colors.constant },
-- String = { fg = colors.string },
-- Character = { fg = colors.string },
-- Number = { fg = colors.number },
-- Boolean = { fg = colors.boolean },
-- Float = { fg = colors.number },
-- FloatBorder = { fg = colors.number },
-- Operator = { fg = colors.operator },
-- Keyword = { fg = colors.keyword },
-- Keywords = { fg = colors.keyword },
-- Identifier = { fg = colors.variable },
-- Function = { fg = colors.Function },
-- Statement = { fg = colors.keyword },
-- Conditional = { fg = colors.keyword },
-- Repeat = { fg = colors.keyword },
-- Label = { fg = colors.keyword },
-- Exception = { fg = colors.keyword },
-- PreProc = { fg = colors.keyword },
-- Include = { fg = colors.keyword },
-- Define = { fg = colors.keyword },
-- Title = { fg = colors.magenta },
-- Macro = { fg = colors.keyword },
-- PreCondit = { fg = colors.yellow },
-- Type = { fg = colors.type, italic = true },
-- StorageClass = { fg = colors.type, italic = true },
-- Structure = { fg = colors.type, italic = true },
-- TypeDef = { fg = colors.type, italic = true },
-- Special = { fg = colors.keyword, italic = true },
-- SpecialComment = { fg = colors.comment, italic = true },
-- Error = { fg = colors.red },
-- Todo = { fg = colors.yellow, bold = true, italic = true },
-- Underlined = { fg = colors.cyan, underline = true },
--
-- Cursor = { fg = colors.cursor },
-- CursorLineNr = { fg = colors.fg, bold = true },
--
-- SignColumn = { bg = colors.bg },
--
-- Conceal = { fg = colors.comment },
-- -- CursorColumn = { bg = colors.selection},
-- CursorLine = { bg = colors.selection },
-- ColorColumn = { bg = colors.selection },
--
-- StatusLine = { fg = colors.statusline, bg = colors.black },
-- StatusLineNC = { fg = colors.comment },
-- StatusLineTerm = { fg = colors.fg, bg = colors.black },
-- StatusLineTermNC = { fg = colors.comment },
--
-- Directory = { fg = colors.cyan },
-- DiffAdd = { fg = colors.bg, bg = colors.green },
-- DiffChange = { fg = colors.orange },
-- DiffDelete = { fg = colors.red },
-- DiffText = { fg = colors.comment },
--
-- ErrorMsg = { fg = colors.red },
-- VertSplit = { fg = colors.fg },
-- WinSeparator = { fg = colors.fg },
-- Folded = { fg = colors.comment },
-- FoldColumn = {},
-- Search = { fg = colors.fg, bg = colors.selection },
-- IncSearch = { fg = colors.fg, bg = colors.selection },
-- LineNr = { fg = colors.comment },
-- MatchParen = { fg = colors.cyan, underline = true },
-- NonText = { fg = colors.comment },
-- Pmenu = { fg = colors.fg, bg = colors.bg },
-- PmenuSel = { fg = colors.bg, bg = colors.fg },
-- PmenuSbar = { bg = colors.bg },
-- PmenuThumb = { bg = colors.bg },
--
-- Question = { fg = colors.magenta },
-- QuickFixLine = { fg = colors.bg, bg = colors.yellow },
-- SpecialKey = { fg = colors.comment },
--
-- SpellBad = { fg = colors.red, underline = true },
-- SpellCap = { fg = colors.yellow },
-- SpellLocal = { fg = colors.yellow },
-- SpellRare = { fg = colors.yellow },
--
-- TabLine = { fg = colors.comment },
-- TabLineSel = { fg = colors.fg },
-- TabLineFill = { bg = colors.bg },
-- Terminal = { fg = colors.fg, bg = colors.black },
-- Visual = { bg = colors.visual },
-- VisualNOS = { fg = colors.visual },
-- WarningMsg = { fg = colors.yellow },
-- WildMenu = { fg = colors.black, bg = colors.white },
--
-- -- TreeSitter
-- ["@comment"] = { fg = colors.comment, italic = true },
-- ["@error"] = { fg = colors.red },
-- ["@punctuation.delimiter"] = { fg = colors.fg },
-- ["@punctuation.bracket"] = { fg = colors.fg },
-- ["@punctuation.special"] = { fg = colors.cyan },
--
-- ["@constant"] = { fg = colors.constant },
-- ["@constant.builtin"] = { fg = colors.constant },
-- ["@symbol"] = { fg = colors.operator },
--
-- ["@constant.macro"] = { fg = colors.keyword },
-- ["@string.regex"] = { fg = colors.string },
-- ["@string"] = { fg = colors.string },
-- ["@string.escape"] = { fg = colors.green },
-- ["@character"] = { fg = colors.string },
-- ["@number"] = { fg = colors.number },
-- ["@boolean"] = { fg = colors.boolean },
-- ["@float"] = { fg = colors.number },
-- ["@annotation"] = { fg = colors.yellow },
-- ["@attribute"] = { fg = colors.cyan },
-- ["@namespace"] = { fg = colors.cyan },
--
-- ["@function.builtin"] = { fg = colors.Function },
-- ["@function"] = { fg = colors.Function },
-- ["@function.macro"] = { fg = colors.Function },
-- ["@parameter"] = { fg = colors.number },
-- ["@parameter.reference"] = { fg = colors.number },
-- ["@method"] = { fg = colors.number },
-- ["@field"] = { fg = colors.number },
-- ["@property"] = { fg = colors.type },
-- ["@constructor"] = { fg = colors.cyan },
--
-- ["@conditional"] = { fg = colors.pink },
-- ["@repeat"] = { fg = colors.pink },
-- ["@label"] = { fg = colors.cyan },
--
-- ["@keyword"] = { fg = colors.keyword },
-- ["@keyword.function"] = { fg = colors.Function },
-- ["@keyword.function.ruby"] = { fg = colors.Function },
-- --["@keyword.operator"] = { fg = colors.pink },
-- --["@operator"] = { fg = colors.pink },
-- ["@exception"] = { fg = colors.magenta },
-- ["@type"] = { fg = colors.bright_cyan },
-- ["@type.builtin"] = { fg = colors.cyan, italic = true },
-- ["@type.qualifier"] = { fg = colors.pink },
-- ["@structure"] = { fg = colors.magenta },
-- ["@include"] = { fg = colors.pink },
--
-- ["@variable"] = { fg = colors.variable },
-- ["@variable.builtin"] = { fg = colors.variable },
--
-- ["@text"] = { fg = colors.number },
-- ["@text.strong"] = { fg = colors.number, bold = true }, -- bold
-- ["@text.emphasis"] = { fg = colors.yellow, italic = true }, -- italic
-- ["@text.underline"] = { fg = colors.number },
-- ["@text.title"] = { fg = colors.pink, bold = true }, -- title
-- ["@text.literal"] = { fg = colors.number }, -- inline code
-- ["@text.uri"] = { fg = colors.yellow, italic = true, underline = true }, -- urls
-- ["@text.reference"] = { fg = colors.number, bold = true },
--
-- ["@tag"] = { fg = colors.cyan },
-- ["@tag.attribute"] = { fg = colors.number },
-- ["@tag.delimiter"] = { fg = colors.pink },
--
-- -- Semantic
-- ["@class"] = { fg = colors.cyan },
-- ["@struct"] = { fg = colors.cyan },
-- ["@enum"] = { fg = colors.cyan },
-- ["@enumMember"] = { fg = colors.magenta },
-- ["@event"] = { fg = colors.cyan },
-- ["@interface"] = { fg = colors.cyan },
-- ["@modifier"] = { fg = colors.cyan },
-- ["@regexp"] = { fg = colors.yellow },
-- ["@typeParameter"] = { fg = colors.cyan },
-- ["@decorator"] = { fg = colors.cyan },
--
-- -- LSP Semantic (0.9+)
-- ["@lsp.type.class"] = { fg = colors.type },
-- ["@lsp.type.enum"] = { fg = colors.type },
-- ["@lsp.type.decorator"] = { fg = colors.number },
-- ["@lsp.type.enumMember"] = { fg = colors.type },
-- ["@lsp.type.function"] = { fg = colors.Function },
-- ["@lsp.type.interface"] = { fg = colors.keyword },
-- ["@lsp.type.macro"] = { fg = colors.keyword },
-- ["@lsp.type.method"] = { fg = colors.keyword },
-- ["@lsp.type.namespace"] = { fg = colors.keyword },
-- ["@lsp.type.parameter"] = { fg = colors.keyword },
-- ["@lsp.type.property"] = { fg = colors.keyword },
-- ["@lsp.type.struct"] = { fg = colors.type },
-- ["@lsp.type.type"] = { fg = colors.type },
-- ["@lsp.type.variable"] = { fg = colors.variable },
--
-- -- HTML
-- htmlArg = { fg = colors.orange },
-- htmlBold = { fg = colors.yellow, bold = true },
-- htmlEndTag = { fg = colors.cyan },
-- htmlH1 = { fg = colors.pink },
-- htmlH2 = { fg = colors.pink },
-- htmlH3 = { fg = colors.pink },
-- htmlH4 = { fg = colors.pink },
-- htmlH5 = { fg = colors.pink },
-- htmlH6 = { fg = colors.pink },
-- htmlItalic = { fg = colors.magenta, italic = true },
-- htmlLink = { fg = colors.magenta, underline = true },
-- htmlSpecialChar = { fg = colors.yellow },
-- htmlSpecialTagName = { fg = colors.cyan },
-- htmlTag = { fg = colors.cyan },
-- htmlTagN = { fg = colors.cyan },
-- htmlTagName = { fg = colors.cyan },
-- htmlTitle = { fg = colors.white },
-- }
--
-- for group, setting in pairs(groups) do
-- vim.api.nvim_set_hl(0, group, setting)
-- end
-- https://github.com/catppuccin/nvim/blob/main/lua/catppuccin/palettes/mocha.lua
-- https://github.com/Ronxvier/ymir.nvim/blob/main/lua/ymir/palette.lua
local colors = {
red = "#f38ba8",
orange = "#fab387",
green = "#a6e3a1",
yellow = "#f9e2af",
pink = "#f5c2e7",
magenta = "#cba6f7",
cyan = "#94e2d5",
bg = "#11111b",
fg = "#cdd6f4",
cursorline = "#181825",
selection = "#313244",
linenr = "#45475a",
comment = "#585b70",
-- Syntax
keyword = "#cba6f7",
Function = "#cba6f7",
string = "#f9e2af",
constant = "#cba6f7",
type = "#94e2d5",
number = "#fab387",
boolean = "#fab387",
operator = "#cdd6f4",
variable = "#cdd6f4",
-- TODO
-- UI
cursor = "#f5a97f",
visual = "#2e3c55",
search = "#f5c2e7",
statusline = "#1e293b",
menu_bg = "#1a2535",
menu_sel = "#3b4252",
fold = "#3e4a5a",
split = "#334155",
-- TODO
-- Diagnostics
diag_error = "#f38ba8",
diag_warn = "#fab387",
diag_info = "#89dceb",
diag_hint = "#b4befe",
}
-- https://github.com/Ronxvier/ymir.nvim/blob/main/lua/ymir/groups.lua
local groups = {
Normal = { fg = colors.fg, bg = colors.bg },
NormalFloat = { fg = colors.fg, bg = colors.bg },
Comment = { fg = colors.comment, italic = true },
Constant = { fg = colors.constant },
String = { fg = colors.string },
Character = { fg = colors.string },
Number = { fg = colors.number },
Boolean = { fg = colors.boolean },
Float = { fg = colors.number },
FloatBorder = { fg = colors.number },
Operator = { fg = colors.operator },
Keyword = { fg = colors.keyword },
Keywords = { fg = colors.keyword },
Identifier = { fg = colors.variable },
Function = { fg = colors.Function },
Statement = { fg = colors.keyword },
Conditional = { fg = colors.keyword },
Repeat = { fg = colors.keyword },
Label = { fg = colors.keyword },
Exception = { fg = colors.keyword },
PreProc = { fg = colors.keyword },
Include = { fg = colors.keyword },
Define = { fg = colors.keyword },
Title = { fg = colors.magenta },
Macro = { fg = colors.keyword },
PreCondit = { fg = colors.yellow },
Type = { fg = colors.type, italic = true },
StorageClass = { fg = colors.type, italic = true },
Structure = { fg = colors.type, italic = true },
TypeDef = { fg = colors.type, italic = true },
Special = { fg = colors.keyword, italic = true },
SpecialComment = { fg = colors.comment, italic = true },
Error = { fg = colors.red },
Todo = { fg = colors.yellow, bold = true, italic = true },
Underlined = { fg = colors.cyan, underline = true },
Cursor = { fg = colors.cursor },
CursorLineNr = { fg = colors.fg, bold = true },
SignColumn = { bg = colors.bg },
Conceal = { fg = colors.comment },
-- CursorColumn = { bg = colors.selection},
CursorLine = { bg = colors.selection },
ColorColumn = { bg = colors.selection },
StatusLine = { fg = colors.statusline, bg = colors.black },
StatusLineNC = { fg = colors.comment },
StatusLineTerm = { fg = colors.fg, bg = colors.black },
StatusLineTermNC = { fg = colors.comment },
Directory = { fg = colors.cyan },
DiffAdd = { fg = colors.bg, bg = colors.green },
DiffChange = { fg = colors.orange },
DiffDelete = { fg = colors.red },
DiffText = { fg = colors.comment },
ErrorMsg = { fg = colors.red },
VertSplit = { fg = colors.fg },
WinSeparator = { fg = colors.fg },
Folded = { fg = colors.comment },
FoldColumn = {},
Search = { fg = colors.fg, bg = colors.selection },
IncSearch = { fg = colors.fg, bg = colors.selection },
LineNr = { fg = colors.comment },
MatchParen = { fg = colors.cyan, underline = true },
NonText = { fg = colors.comment },
Pmenu = { fg = colors.fg, bg = colors.bg },
PmenuSel = { fg = colors.bg, bg = colors.fg },
PmenuSbar = { bg = colors.bg },
PmenuThumb = { bg = colors.bg },
Question = { fg = colors.magenta },
QuickFixLine = { fg = colors.bg, bg = colors.yellow },
SpecialKey = { fg = colors.comment },
SpellBad = { fg = colors.red, underline = true },
SpellCap = { fg = colors.yellow },
SpellLocal = { fg = colors.yellow },
SpellRare = { fg = colors.yellow },
TabLine = { fg = colors.comment },
TabLineSel = { fg = colors.fg },
TabLineFill = { bg = colors.bg },
Terminal = { fg = colors.fg, bg = colors.black },
Visual = { bg = colors.visual },
VisualNOS = { fg = colors.visual },
WarningMsg = { fg = colors.yellow },
WildMenu = { fg = colors.black, bg = colors.white },
-- TreeSitter
["@comment"] = { fg = colors.comment, italic = true },
["@error"] = { fg = colors.red },
["@punctuation.delimiter"] = { fg = colors.fg },
["@punctuation.bracket"] = { fg = colors.fg },
["@punctuation.special"] = { fg = colors.cyan },
["@constant"] = { fg = colors.constant },
["@constant.builtin"] = { fg = colors.constant },
["@symbol"] = { fg = colors.operator },
["@constant.macro"] = { fg = colors.keyword },
["@string.regex"] = { fg = colors.string },
["@string"] = { fg = colors.string },
["@string.escape"] = { fg = colors.green },
["@character"] = { fg = colors.string },
["@number"] = { fg = colors.number },
["@boolean"] = { fg = colors.boolean },
["@float"] = { fg = colors.number },
["@annotation"] = { fg = colors.yellow },
["@attribute"] = { fg = colors.cyan },
["@namespace"] = { fg = colors.cyan },
["@function.builtin"] = { fg = colors.Function },
["@function"] = { fg = colors.Function },
["@function.macro"] = { fg = colors.Function },
["@parameter"] = { fg = colors.number },
["@parameter.reference"] = { fg = colors.number },
["@method"] = { fg = colors.number },
["@field"] = { fg = colors.number },
["@property"] = { fg = colors.type },
["@constructor"] = { fg = colors.cyan },
["@conditional"] = { fg = colors.pink },
["@repeat"] = { fg = colors.pink },
["@label"] = { fg = colors.cyan },
["@keyword"] = { fg = colors.keyword },
["@keyword.function"] = { fg = colors.Function },
["@keyword.function.ruby"] = { fg = colors.Function },
--["@keyword.operator"] = { fg = colors.pink },
--["@operator"] = { fg = colors.pink },
["@exception"] = { fg = colors.magenta },
["@type"] = { fg = colors.bright_cyan },
["@type.builtin"] = { fg = colors.cyan, italic = true },
["@type.qualifier"] = { fg = colors.pink },
["@structure"] = { fg = colors.magenta },
["@include"] = { fg = colors.pink },
["@variable"] = { fg = colors.variable },
["@variable.builtin"] = { fg = colors.variable },
["@text"] = { fg = colors.number },
["@text.strong"] = { fg = colors.number, bold = true }, -- bold
["@text.emphasis"] = { fg = colors.yellow, italic = true }, -- italic
["@text.underline"] = { fg = colors.number },
["@text.title"] = { fg = colors.pink, bold = true }, -- title
["@text.literal"] = { fg = colors.number }, -- inline code
["@text.uri"] = { fg = colors.yellow, italic = true, underline = true }, -- urls
["@text.reference"] = { fg = colors.number, bold = true },
["@tag"] = { fg = colors.cyan },
["@tag.attribute"] = { fg = colors.number },
["@tag.delimiter"] = { fg = colors.pink },
-- Semantic
["@class"] = { fg = colors.cyan },
["@struct"] = { fg = colors.cyan },
["@enum"] = { fg = colors.cyan },
["@enumMember"] = { fg = colors.magenta },
["@event"] = { fg = colors.cyan },
["@interface"] = { fg = colors.cyan },
["@modifier"] = { fg = colors.cyan },
["@regexp"] = { fg = colors.yellow },
["@typeParameter"] = { fg = colors.cyan },
["@decorator"] = { fg = colors.cyan },
-- LSP Semantic (0.9+)
["@lsp.type.class"] = { fg = colors.type },
["@lsp.type.enum"] = { fg = colors.type },
["@lsp.type.decorator"] = { fg = colors.number },
["@lsp.type.enumMember"] = { fg = colors.type },
["@lsp.type.function"] = { fg = colors.Function },
["@lsp.type.interface"] = { fg = colors.keyword },
["@lsp.type.macro"] = { fg = colors.keyword },
["@lsp.type.method"] = { fg = colors.keyword },
["@lsp.type.namespace"] = { fg = colors.keyword },
["@lsp.type.parameter"] = { fg = colors.keyword },
["@lsp.type.property"] = { fg = colors.keyword },
["@lsp.type.struct"] = { fg = colors.type },
["@lsp.type.type"] = { fg = colors.type },
["@lsp.type.variable"] = { fg = colors.variable },
-- HTML
htmlArg = { fg = colors.orange },
htmlBold = { fg = colors.yellow, bold = true },
htmlEndTag = { fg = colors.cyan },
htmlH1 = { fg = colors.pink },
htmlH2 = { fg = colors.pink },
htmlH3 = { fg = colors.pink },
htmlH4 = { fg = colors.pink },
htmlH5 = { fg = colors.pink },
htmlH6 = { fg = colors.pink },
htmlItalic = { fg = colors.magenta, italic = true },
htmlLink = { fg = colors.magenta, underline = true },
htmlSpecialChar = { fg = colors.yellow },
htmlSpecialTagName = { fg = colors.cyan },
htmlTag = { fg = colors.cyan },
htmlTagN = { fg = colors.cyan },
htmlTagName = { fg = colors.cyan },
htmlTitle = { fg = colors.white },
}
for group, setting in pairs(groups) do
vim.api.nvim_set_hl(0, group, setting)
end
-- nixvim stuff
do
@@ -507,27 +485,27 @@ end
-- }}
-- https://github.com/nvim-lualine/lualine.nvim/blob/master/examples/bubbles.lua
-- local bubbles_theme = {
-- normal = {
-- a = { fg = colors.bg, bg = colors.magenta },
-- b = { fg = colors.bg, bg = colors.magenta },
-- c = { fg = colors.bg, bg = colors.bg },
-- },
--
-- insert = { a = { fg = colors.bg, bg = colors.green } },
-- visual = { a = { fg = colors.bg, bg = colors.cyan } },
-- replace = { a = { fg = colors.bg, bg = colors.red } },
--
-- inactive = {
-- a = { fg = colors.fg, bg = colors.bg },
-- b = { fg = colors.fg, bg = colors.bg },
-- c = { fg = colors.fg },
-- },
-- }
local bubbles_theme = {
normal = {
a = { fg = colors.bg, bg = colors.magenta },
b = { fg = colors.bg, bg = colors.magenta },
c = { fg = colors.bg, bg = colors.bg },
},
insert = { a = { fg = colors.bg, bg = colors.green } },
visual = { a = { fg = colors.bg, bg = colors.cyan } },
replace = { a = { fg = colors.bg, bg = colors.red } },
inactive = {
a = { fg = colors.fg, bg = colors.bg },
b = { fg = colors.fg, bg = colors.bg },
c = { fg = colors.fg },
},
}
require('lualine').setup {
options = {
-- theme = bubbles_theme,
theme = bubbles_theme,
component_separators = '',
section_separators = { left = '', right = '' },
},
+3 -13
View File
@@ -1,19 +1,9 @@
{ config, pkgs, inputs, ... }:
{ pkgs, inputs, ... }:
{
programs.neovim =
let
# colors = config.stylix.base16Scheme.palette;
colors = with config.lib.stylix.colors; {
inherit base00 base01 base02 base03 base04 base05 base06 base07 base08 base09 base0A base0B base0C base0D base0E base0F;
};
in {
programs.neovim = {
enable = true;
package = inputs.neovim-nightly-overlay.packages.${pkgs.stdenv.hostPlatform.system}.default;
initLua = builtins.readFile (
pkgs.replaceVars ./config.lua ({
shell = "tcsh";
} // colors)
);
extraLuaConfig = builtins.readFile ./config.lua;
defaultEditor = true;
};
}
+1 -1
View File
@@ -1,6 +1,6 @@
{ config, ... }:
{
xdg.configFile."rofi/theme.rasi".text = with config.lib.stylix.colors; ''
xdg.configFile."rofi/theme.rasi".text = with config.stylix.base16Scheme.palette; ''
* {
bg-col: #${base00};
bg-col-light: #${base01};
-18
View File
@@ -1,18 +0,0 @@
{ pkgs, ... }:
{
home.packages = [ pkgs.tcsh ];
home.file.".cshrc".text = ''
set noclobber
set color
set autolist
set history = 10000
set savehist = (10000 merge)
set e="`echo x | tr x '\033'`"
set prompt = "%{\e[35m%}[%h] %~ :3%{\e[0m%} "
alias ls 'ls --color=auto'
alias l 'ls -alh --color=auto'
'';
}
+1 -1
View File
@@ -1,7 +1,7 @@
{ config, ... }:
{
home.file.".config/vesktop/themes/base16.css".text =
with config.lib.stylix.colors;
with config.stylix.base16Scheme.palette;
with config.stylix.fonts;
''
@import url('https://refact0r.github.io/midnight-discord/build/midnight.css');
+137
View File
@@ -0,0 +1,137 @@
{ config, ... }:
{
home.file.".config/waybar/config".text = ''
{
"position": "top",
"spacing": 4,
"modules-left": ["custom/icon", "dwl/tags", "tray"],
"modules-center": ["clock"],
"modules-right": ["pulseaudio", "cpu", "memory", "temperature", "battery"],
"custom/icon": {
"format": " ",
"tooltip": false
},
"tray": {
"spacing": 10
},
"clock": {
"format": "{:%Y/%m/%d - %A - %R}",
"tooltip": false
},
"cpu": {
"format": " {usage}%",
"tooltip": false
},
"memory": {
"format": " {}%"
},
"temperature": {
"thermal-zone": 2,
"critical-threshold": 80,
"format-critical": "{icon} {temperatureC}°C",
"format": "{icon} {temperatureC}°C",
"format-icons": ["", "", ""]
},
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-charging": " {capacity}%",
"format-plugged": " {capacity}%",
"format-alt": "{icon} {time}",
"format-icons": ["", "", "", "", ""]
},
"pulseaudio": {
"scroll-step": 5, // %, can be a float
"format": "{icon} {volume}% {format_source}",
"format-bluetooth": " {icon} {volume}% {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": " {volume}%",
"format-source-muted": "",
"format-icons": {
"default": ["", "", ""]
},
"on-click-right": "pavucontrol",
},
}
'';
programs.waybar = {
enable = true;
style = ''
* {
font-family: "${config.stylix.fonts.serif.name}";
font-size: 16px;
min-height: 16px;
}
window#waybar {
margin-top: 6px;
padding-left: 10px;
padding-right: 10px;
}
#custom-icon,
#tray,
#clock,
#pulseaudio,
#cpu,
#memory,
#temperature,
#battery {
margin-top: 6px;
margin-left: 8px;
padding-left: 10px;
margin-bottom: 0px;
padding-right: 10px;
color: #${config.stylix.base16Scheme.palette.base05};
background: #${config.stylix.base16Scheme.palette.base00};
border: 2px solid #${config.stylix.base16Scheme.palette.base0D};
}
#custom-icon {
margin-left: 10px;
}
#memory {
margin-right: 10px;
}
#battery.critical:not(.charging) {
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@keyframes blink {
to {
background-color: #${config.stylix.base16Scheme.palette.base08};
}
}
#tags {
margin-top: 6px;
margin-left: 8px;
padding-left: 10px;
margin-bottom: 0px;
padding-right: 10px;
border: 2px solid #${config.stylix.base16Scheme.palette.base0D};
}
#tags button.occupied {
color: #${config.stylix.base16Scheme.palette.base0B};
background: #${config.stylix.base16Scheme.palette.base00};
}
#tags button.focused {
color: #${config.stylix.base16Scheme.palette.base0D};
background: #${config.stylix.base16Scheme.palette.base00};
}
'';
};
}
+1 -1
View File
@@ -2,7 +2,7 @@
{
programs.zathura = {
enable = true;
options = with config.lib.stylix.colors; {
options = with config.stylix.base16Scheme.palette; {
font = "${config.stylix.fonts.serif.name} 14";
default-fg = "#${base05}";
+3 -8
View File
@@ -15,7 +15,7 @@ let
};
replaceWithStylixColours =
textFile:
with config.lib.stylix.colors;
with config.stylix.base16Scheme.palette;
builtins.replaceStrings
[
"1e1e2e"
@@ -65,12 +65,10 @@ let
installation_mode = "force_installed";
};
};
profileName = "6dypj11h.Default Profile";
in
{
home.file.".zen/${profileName}/chrome/userChrome.css".text = userChromeText;
home.file.".zen/${profileName}/chrome/userContent.css".text = userContentText;
home.file.".zen/default/chrome/userChrome.css".text = userChromeText;
home.file.".zen/default/chrome/userContent.css".text = userContentText;
programs.zen-browser = {
enable = true;
policies = {
@@ -120,9 +118,6 @@ in
# Hide shorts for Youtube
"{88ebde3a-4581-4c6b-8019-2a05a9e3e938}"
# Vimium
"{d7742d87-e61d-4b78-b8a1-b469842139fa}"
]
);
};
-165
View File
@@ -1,165 +0,0 @@
{ config, pkgs, ... }:
let
betterfox = pkgs.fetchFromGitHub {
owner = "yokoffing";
repo = "Betterfox";
rev = "116.1";
hash = "sha256-Ai8Szbrk/4FhGhS4r5gA2DqjALFRfQKo2a/TwWCIA6g=";
};
catppuccinUserChrome = pkgs.fetchFromGitHub {
owner = "catppuccin";
repo = "zen-browser";
rev = "0893393f721facb884365a318111c4a7fce96b45";
hash = "sha256-+Nf7TUairZBnhYCFVBqiQW9QodV/xWSOnH6X9o6S7rM=";
};
replaceWithStylixColours =
textFile:
with config.lib.stylix.colors;
builtins.replaceStrings
[
"1e1e2e"
"181825"
"313244"
"45475a"
"585b70"
"cdd6f4"
"f5e0dc"
"b4befe"
"f38ba8"
"fab387"
"f9e2af"
"a6e3a1"
"94e2d5"
"89b4fa"
"cba6f7"
"f2cdcd"
"rgb(204, 190, 246)"
]
[
base00
base01
base02
base03
base04
base05
base06
base07
base08
base09
base0A
base0B
base0C
base0D
base0E
base0F
"#${base0E}"
]
(builtins.readFile textFile);
#userChromeText = replaceWithStylixColours "${catppuccinUserChrome}/themes/Mocha/Mauve/userChrome.css";
userChromeText = builtins.readFile (
with config.lib.stylix.colors;
pkgs.replaceVars ./userChrome.css {
inherit
base00
base01
base02
# base03
# base04
base05
base06
# base07
base08
base09
base0A
base0B
base0C
base0D
base0E
# base0F
;
}
);
userContentText = replaceWithStylixColours "${catppuccinUserChrome}/themes/Mocha/Mauve/userContent.css";
installExtension = name: {
inherit name;
value = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/${name}/latest.xpi";
installation_mode = "force_installed";
};
};
profileName = "tvqbzcy7.Default Profile";
in
{
home.file.".zen/${profileName}/chrome/userChrome.css".text = userChromeText;
home.file.".zen/${profileName}/chrome/userContent.css".text = userContentText;
programs.zen-browser = {
enable = true;
policies = {
DisableTelemtry = true;
DisableFirefoxStudies = true;
EnableTrackingProtection = {
Value = true;
Locked = true;
Cryptomining = true;
Fingerprinting = true;
};
DisablePocket = true;
DisableFirefoxAccounts = true;
DisableAccounts = true;
DisableFirefoxScreenshots = true;
OverrideFirstRunPage = "";
OverridePostUpdatePage = "";
DontCheckDefaultBrowser = true;
DisplayBookmarksToolbar = "never";
DisplayMenuBar = "default-off";
SearchBar = "unified";
ExtensionSettings = builtins.listToAttrs (
builtins.map (name: installExtension name) [
# BitWarden
"{446900e4-71c2-419f-a6a7-df9c091e268b}"
# Catppuccin Mocha Mauve
"{76aabc99-c1a8-4c1e-832b-d4f2941d5a7a}"
# Dark Reader
"addon@darkreader.org"
# Language Tool
"languagetool-webextension@languagetool.org"
# Return dislikes to YouTube
"{762f9885-5a13-4abd-9c77-433dcd38b8fd}"
# SponsorBlocker
"sponsorBlocker@ajay.app"
# uBlock Origin:
"uBlock0@raymondhill.net"
# Shinigami Eyes
"shinigamieyes@shinigamieyes"
# Hide shorts for Youtube
"{88ebde3a-4581-4c6b-8019-2a05a9e3e938}"
# Vimium
"{d7742d87-e61d-4b78-b8a1-b469842139fa}"
]
);
};
profiles.default = {
id = 0;
isDefault = true;
extraConfig = builtins.concatStringsSep "\n" [
(builtins.readFile "${betterfox}/Securefox.js")
(builtins.readFile "${betterfox}/Fastfox.js")
(builtins.readFile "${betterfox}/Peskyfox.js")
];
};
};
}
-128
View File
@@ -1,128 +0,0 @@
/* https://github.com/catppuccin/zen-browser/blob/main/themes/Mocha/Pink/userChrome.css */
:root {
--zen-colors-primary: #@base02@ !important;
--zen-primary-color: #@base0D@ !important;
--zen-colors-secondary: #@base02@ !important;
--zen-colors-tertiary: #@base01@ !important;
--zen-colors-border: #base0D# !important;
--toolbarbutton-icon-fill: #@base0D@ !important;
--lwt-text-color: #@base05@ !important;
--toolbar-field-color: #@base05@ !important;
--tab-selected-textcolor: #@base06@ !important;
--toolbar-field-focus-color: #@base05@ !important;
--toolbar-color: #@base05@ !important;
--newtab-text-primary-color: #@base05@ !important;
--arrowpanel-color: #@base05@ !important;
--arrowpanel-background: #@base01@ !important;
--sidebar-text-color: #@base05@ !important;
--lwt-sidebar-text-color: #@base05@ !important;
--lwt-sidebar-background-color: #@base00@ !important;
--toolbar-bgcolor: #@base02@ !important;
--newtab-background-color: #@base01@ !important;
--zen-themed-toolbar-bg: #@base01@ !important;
--zen-main-browser-background: #@base01@ !important;
--toolbox-bgcolor-inactive: #@base01@ !important;
}
#permissions-granted-icon {
color: #@base01@ !important;
}
.sidebar-placesTree {
background-color: #@base01@ !important;
}
#zen-workspaces-button {
background-color: #@base01@ !important;
}
#TabsToolbar {
background-color: #@base01@ !important;
}
.urlbar-background {
background-color: #@base01@ !important;
}
.content-shortcuts {
background-color: #@base01@ !important;
border-color: #@base0D@ !important;
}
.urlbarView-url {
color: #@base0D@ !important;
}
#zenEditBookmarkPanelFaviconContainer {
background: #@base00@ !important;
}
#zen-media-controls-toolbar {
& #zen-media-progress-bar {
&::-moz-range-track {
background: #@base02@ !important;
}
}
}
toolbar .toolbarbutton-1 {
&:not([disabled]) {
&:is([open], [checked])
> :is(
.toolbarbutton-icon,
.toolbarbutton-text,
.toolbarbutton-badge-stack
) {
fill: #@base00@;
}
}
}
.identity-color-blue {
--identity-tab-color: #@base0D@ !important;
--identity-icon-color: #@base0D@ !important;
}
.identity-color-turquoise {
--identity-tab-color: #@base0C@ !important;
--identity-icon-color: #@base0C@ !important;
}
.identity-color-green {
--identity-tab-color: #@base0B@ !important;
--identity-icon-color: #@base0B@ !important;
}
.identity-color-yellow {
--identity-tab-color: #@base0A@ !important;
--identity-icon-color: #@base0A@ !important;
}
.identity-color-orange {
--identity-tab-color: #@base09@ !important;
--identity-icon-color: #@base09@ !important;
}
.identity-color-red {
--identity-tab-color: #@base08@ !important;
--identity-icon-color: #@base08@ !important;
}
.identity-color-pink {
--identity-tab-color: #@base0D@ !important;
--identity-icon-color: #@base0D@ !important;
}
.identity-color-purple {
--identity-tab-color: #@base0E@ !important;
--identity-icon-color: #@base0E@ !important;
}
hbox#titlebar {
background-color: #@base01@ !important;
}
#zen-appcontent-navbar-container {
background-color: #@base01@ !important;
}
+2 -25
View File
@@ -1,34 +1,11 @@
{ pkgs, wallpaper, ... }:
{
config,
hostName,
lib,
pkgs,
wallpaper,
...
}:
let
wawa = pkgs.callPackage ./wawa.nix { };
in
{
home.packages = [ pkgs.river-bsp-layout ];
home.packages = [ pkgs.rivercarro ];
xdg.configFile."river/init" = {
source = pkgs.replaceVars ./init.sh {
inherit wallpaper;
inherit hostName;
inherit wawa;
inherit (config.lib.stylix.colors) base0D base02;
cursorName = config.home.pointerCursor.name;
cursorSize = config.home.pointerCursor.size;
};
executable = true;
};
home.activation.reinitRiver =
with config.lib.stylix.colors;
lib.hm.dag.entryAnywhere ''
${pkgs.river-classic}/bin/riverctl border-color-focused 0x${base0D}
${pkgs.river-classic}/bin/riverctl border-color-unfocused 0x${base02}
${wawa}/bin/wawa fill ${wallpaper} &
'';
}
+11 -31
View File
@@ -2,14 +2,8 @@
# https://codeberg.org/river/river-classic/src/branch/main/example/init
@wawa@/bin/wawa fill @wallpaper@ &
riverctl map normal Super Q spawn foot
riverctl map normal Super B spawn zen-beta
riverctl map normal Super Q spawn havoc
riverctl map normal Super D spawn "rofi -show run"
riverctl map normal Super+Shift P spawn "rofi -show pm -modi pm:rofi-power-menu"
riverctl map normal Super+Shift S spawn "gscreenshot -c -s"
riverctl map normal Super C close
riverctl map normal Super+Shift M exit
@@ -63,40 +57,26 @@ do
riverctl map normal Super+Shift $i set-view-tags $tags
done
# focus all tags at once
riverctl map normal Super A set-focused-tags 511
riverctl map normal Super F toggle-fullscreen
riverctl focus-follows-cursor normal
riverctl set-cursor-warp on-focus-change
riverctl border-color-focused 0x@base0D@
riverctl border-color-unfocused 0x@base02@
riverctl border-width 2
riverctl xcursor-theme @cursorName@ @cursorSize@
#TODO: stylix it
riverctl border-color-focused 0xf5c2e7
riverctl border-color-unfocused 0x313244
riverctl set-repeat 30 300
riverctl default-layout bsp-layout
river-bsp-layout --inner-gap 0 --outer-gap 0 --split-perc 0.5 &
riverctl default-layout rivercarro
rivercarro -inner-gaps 6 -outer-gaps 0 &
riverctl rule-add ssd
riverctl rule-add -app-id "vesktop" output HDMI-A-2
wlr-randr --output DP-2 --mode 2560x1440@180Hz
export XDG_CURRENT_DESKTOP=river
systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=river
systemctl --user restart xdg-desktop-portal
dbus-update-activation-environment --systemd WAYLAND_DISPLAY "XDG_CURRENT_DESKTOP=sway"
awww-daemon &
awww img @wallpaper@ -t none
if [ "@hostName@" = "february" ]; then
riverctl keyboard-layout -variant colemak us
else
vesktop &
fi
eww daemon
eww open bar
riverctl focus-output left
-28
View File
@@ -1,28 +0,0 @@
{ pkgs, ... }:
pkgs.stdenv.mkDerivation {
name = "wawa";
version = "1.0";
src = pkgs.fetchFromCodeberg {
owner = "sewn";
repo = "wawa";
rev = "988c5d10a1535b0243a0191f71d522e9abeea2de";
hash = "sha256-nu8BjALjrlcm0AnBcRZxMjn+soozAU58nvqLuiN3UHk=";
};
buildInputs = with pkgs; [
pkg-config
wayland
wayland-protocols
wayland-scanner
];
makeFlags = [
"DESTDIR=$(out)"
"PREFIX="
];
patchPhase = ''
runHook prePatch
sed -i '15s/-Wall/-Wall -Wno-incompatible-pointer-types -D_GNU_SOURCE/' Makefile
runHook postPatch
'';
}
+11 -110
View File
@@ -1,6 +1,5 @@
{
config,
lib,
inputs,
hostName,
pkgs,
@@ -15,23 +14,9 @@
inputs.base16.nixosModule
./stylix.nix
./river.nix
./dwl/dwl.nix
];
boot.loader.grub = {
enable = true;
efiSupport = true;
device = "nodev";
useOSProber = true;
};
documentation.man = {
enable = true;
cache = {
enable = true;
};
};
environment.etc."current-system-packages".text =
let
packages = map (p: "${p.name}") config.environment.systemPackages;
@@ -40,6 +25,8 @@
in
formatted;
services.flatpak.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.tmp.cleanOnBoot = true;
@@ -62,28 +49,8 @@
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
'';
security.polkit = {
enable = true;
extraConfig = ''
// https://github.com/frasertajima/tailscale_shortcuts/blob/0d1f3992890114c5ea6dfb972fcc782325681e3d/V2_CAUTION/reboot_polkit.md?plain=1#L33
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") &&
(action.id == "org.freedesktop.login1.reboot" ||
action.id == "org.freedesktop.login1.suspend" ||
action.id == "org.freedesktop.login1.power-off" ||
action.id == "org.freedesktop.login1.shutdown")) {
return polkit.Result.YES;
}
});
'';
};
home-manager = {
extraSpecialArgs = {
inherit inputs;
inherit hostName;
wallpaper = config.stylix.image;
};
extraSpecialArgs = { inherit inputs; };
users = {
${userName} = import (../../.. + "/home/pc/${hostName}/home.nix");
};
@@ -99,9 +66,10 @@
services.gnome.glib-networking.enable = true;
services.displayManager.lemurs = {
#services.desktopManager.plasma6.enable = true;
services.displayManager.ly = {
enable = true;
settings.environment_switcher.include_tty_shell = true;
};
programs.steam = {
@@ -121,14 +89,7 @@
pkgs.xdg-desktop-portal-wlr
pkgs.xdg-desktop-portal-gtk
];
wlr = {
enable = true;
settings.screencast = {
max_fps = 180;
chooser_type = "simple";
chooser_cmd = "${pkgs.slurp}/bin/slurp -f 'Monitor: %o' -or";
};
};
wlr.enable = true;
};
services.blueman.enable = true;
@@ -151,87 +112,30 @@
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = true;
# programs.fish.enable = true;
programs.fish.enable = true;
users.users.${userName} = {
isNormalUser = true;
extraGroups = [
"networkmanager"
"wheel"
"seat"
"audio"
];
packages = [ ];
shell = pkgs.tcsh;
shell = pkgs.fish;
};
environment.shells = [ pkgs.tcsh ];
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
environment.etc."csh.cshrc" = {
enable = true;
text =
# https://github.com/NixOS/nixpkgs/blob/736c1381347ac3cbb2031159f4df254f49a619fd/nixos/modules/config/shells-environment.nix
let
cfg = config.environment;
absoluteVariables = lib.mapAttrs (n: lib.toList) cfg.variables;
suffixedVariables = lib.flip lib.mapAttrs cfg.profileRelativeEnvVars (
envVar: listSuffixes:
lib.concatMap (profile: map (suffix: "${profile}${suffix}") listSuffixes) cfg.profiles
);
allVariables = lib.zipAttrsWith (n: lib.concatLists) [
absoluteVariables
suffixedVariables
];
exportVariables = lib.mapAttrsToList (
n: v: ''set ${n} = "${lib.concatStringsSep ":" v}"''
) allVariables;
exportedEnvVars = lib.concatStringsSep "\n" exportVariables;
in
''
set XDG_CONFIG_HOME = /home/autumn/.config;
set XDG_DATA_HOME = /home/autumn/.local/share;
set XDG_CACHE_HOME = /home/autumn/.local/cache;
set XDG_STATE_HOME = /home/autumn/.local/state;
# DO NOT EDIT -- this file has been generated automatically.
# Prevent this file from being sourced by child shells.
set __NIXOS_SET_ENVIRONMENT_DONE = 1
${exportedEnvVars}
# removed extraInit ; keep that in mind !!
${lib.optionalString cfg.homeBinInPath ''
# ~/bin if it exists overrides other bin directories.
set PATH = "$HOME/bin:$PATH"
''}
${lib.optionalString cfg.localBinInPath ''
set PATH = "$HOME/.local/bin:$PATH"
''}
'';
};
environment.systemPackages = with pkgs; [
tcsh
cloudflared
gparted
networkmanagerapplet
nh
pavucontrol
wget
slurp
];
fonts = {
@@ -256,11 +160,8 @@
EDITOR = "nvim";
SUDO_EDITOR = "nvim";
BROWSER = "zen";
SHELL = "tcsh";
SHELL = "fish";
TERM = "foot";
XDG_CURRENT_DESKTOP = "river";
LIBSEAT_BACKEND = "seatd";
};
system.stateVersion = "24.05";
+1 -7
View File
@@ -1,11 +1,5 @@
{ pkgs, ... }:
{ ... }:
{
environment.systemPackages = with pkgs; [
gscreenshot
wlr-randr
awww
];
programs.river-classic = {
enable = true;
xwayland.enable = true;
+50 -34
View File
@@ -6,22 +6,22 @@
...
}:
let
makeScheme =
scheme:
(builtins.fromJSON (
builtins.readFile "${
pkgs.stdenv.mkDerivation {
jsonSchemes = pkgs.stdenv.mkDerivation {
name = "fromYAML";
phases = "buildPhase";
buildPhase = ''
mkdir -p $out/
FILE=${pkgs.base16-schemes}/share/themes/${scheme}.yaml
#for FILE in ${pkgs.base16-schemes}/share/themes/*; do
FILE=${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml
FILEBASENAME="$(basename $FILE .yaml).json"
cat $FILE | ${pkgs.yaml2json}/bin/yaml2json | sed s/#//g > $out/$FILEBASENAME
#done
ls -l $out/
'';
}
}/${scheme}.json"
)).palette;
};
json2Palette =
jsonScheme: (builtins.fromJSON (builtins.readFile "${jsonSchemes}/${jsonScheme}.json")).palette;
font = {
package = pkgs.nerd-fonts.caskaydia-cove;
@@ -33,12 +33,10 @@ let
name = "DejaVu Sans Mono";
};
makeTheme =
scheme: polarity:
jsonScheme: polarity:
let
palette = makeScheme scheme;
palette = json2Palette jsonScheme;
in
{
enable = true;
@@ -70,32 +68,43 @@ let
"${wallpaper}/share/wallpapers/nixos-wallpaper.png";
};
palette = {
base00 = "1C2023";
base01 = "393F45";
base02 = "565E65";
base03 = "747C84";
base04 = "ADB3BA";
base05 = "C7CCD1";
base06 = "DFE2E5";
base07 = "F3F4F5";
base08 = "C7AE95";
base09 = "C7C795";
base0A = "AEC795";
base0B = "95C7AE";
base0C = "95AEC7";
base0D = "AE95C7";
base0E = "C795AE";
base0F = "C79595";
};
in
{
# stylix = makeTheme "ashen" "dark";
#stylix = makeTheme "catppuccin-mocha" "dark";
stylix = {
#specialisation = {
# catppuccin-mocha.configuration.stylix = lib.mkForce (makeTheme "catppuccin-mocha" "dark");
# catppuccin-latte.configuration.stylix = lib.mkForce (makeTheme "catppuccin-latte" "light");
# gruvbox-dark-hard.configuration.stylix = lib.mkForce (makeTheme "gruvbox-dark-hard" "dark");
# heetch.configuration.stylix = lib.mkForce (makeTheme "heetch" "dark");
#};
stylix =
let
palette = {
base00 = "11111a"; # #11111a
base01 = "181825"; # #181825
base02 = "313244"; # #313244
base03 = "45475a"; # #45475a
base04 = "585b70"; # #585b70
base05 = "cdd6f4"; # #cdd6f4
base06 = "f5e0dc"; # #f5e0dc
base07 = "b4befe"; # #b4befe
base08 = "f38ba8"; # #f38ba8
base09 = "fab387"; # #fab387
base0A = "f9e2af"; # #f9e2af
base0B = "a6e3a1"; # #a6e3a1
base0C = "94e2d5"; # #94e2d5
base0D = "f5c2e7"; # #f5c2e7
base0E = "cba6f7"; # #cba6f7
base0F = "f2cdcd"; # #f2cdcd
};
polarity = "dark";
in
{
enable = true;
base16Scheme.palette = palette;
polarity = "dark";
inherit polarity;
fonts = {
emoji = emojiFont;
monospace = font;
@@ -121,4 +130,11 @@ in
in
"${wallpaper}/share/wallpapers/nixos-wallpaper.png";
};
#security.sudo.extraConfig = ''
# ${userName} ALL = (root) NOPASSWD: /nix/var/nix/profiles/system/specialisation/catppuccin-mocha/bin/switch-to-configuration
# ${userName} ALL = (root) NOPASSWD: /nix/var/nix/profiles/system/specialisation/catppuccin-latte/bin/switch-to-configuration
# ${userName} ALL = (root) NOPASSWD: /nix/var/nix/profiles/system/specialisation/gruvbox-dark-hard/bin/switch-to-configuration
# ${userName} ALL = (root) NOPASSWD: /nix/var/nix/profiles/system/specialisation/heetch/bin/switch-to-configuration
#'';
}
+7
View File
@@ -4,4 +4,11 @@
./hardware-configuration.nix
../common/configuration.nix
];
boot.loader.grub = {
enable = true;
efiSupport = true;
device = "nodev";
useOSProber = true;
};
}
+10 -2
View File
@@ -14,18 +14,26 @@
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-label/NIXROOT";
{ device = "/dev/disk/by-uuid/90aaba2e-42f2-4b98-8df6-bd4a72f6d688";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-label/NIXBOOT";
{ device = "/dev/disk/by-uuid/F8E0-7E32";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp10s0.useDHCP = lib.mkDefault true;
# networking.interfaces.enp18s0f4u1.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 469 KiB

After

Width:  |  Height:  |  Size: 774 KiB