This commit is contained in:
alsaiduq-lab 2025-03-16 23:44:16 -06:00
parent 1e9033f823
commit b9fe4ae3c7
8 changed files with 92 additions and 35 deletions

View file

@ -2,11 +2,9 @@
{ {
imports = [ imports = [
./modules/cava.nix
./modules/dunst.nix ./modules/dunst.nix
./modules/fish.nix ./modules/fish.nix
./modules/ghostty.nix ./modules/ghostty.nix
./modules/i3.nix
./modules/lazygit.nix ./modules/lazygit.nix
./modules/nvim.nix ./modules/nvim.nix
./modules/picom.nix ./modules/picom.nix
@ -27,10 +25,10 @@
gnused gnused
gnugrep gnugrep
findutils findutils
yazi
htop htop
btop btop
nvtopPackages.full nvtopPackages.full
arandr arandr
nitrogen
]; ];
} }

View file

@ -1,7 +0,0 @@
{ config, pkgs, lib, ... }:
{
home.packages = with pkgs; [
cava
];
}

View file

@ -1,13 +0,0 @@
{ config, pkgs, lib, ... }:
{
home.packages = with pkgs; [
dmenu
i3status
i3lock
i3blocks
feh
yazi
udiskie
];
}

View file

@ -1,18 +1,38 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
neovim neovim
ripgrep ripgrep
fd fd
fzf
nodejs nodejs
gcc gcc
git
lua
luajit
luaPackages.luarocks
nil
lua-language-server
curl
unzip
]))
];
home.sessionVariables = {
LUA_PATH = "${pkgs.luajit}/share/lua/5.1/?.lua;;";
LUA_CPATH = "${pkgs.luajit}/lib/lua/5.1/?.so;;";
};
home.sessionPath = [
"$HOME/.local/share/nvim/mason/bin"
]; ];
xdg.configFile."nvim" = { xdg.configFile."nvim" = {
source = builtins.fetchGit { source = builtins.fetchGit {
url = "https://github.com/alsaiduq-lab/dotfiles.git"; url = "https://github.com/alsaiduq-lab/nvim-dotfiles.git";
ref = "dev"; ref = "master";
rev = "99e2cab828459373bc7524690668fdd209b3f517"; rev = "71155b4a4b63d9974f1bc3b66303d6f7e5e06871";
}; };
recursive = true; recursive = true;
}; };

View file

@ -81,7 +81,6 @@ in
cloudflared cloudflared
# Rust ecosystem # Rust ecosystem
rustup rustup
rust-analyzer
cargo-edit cargo-edit
cargo-watch cargo-watch
cargo-outdated cargo-outdated

View file

@ -11,7 +11,7 @@
EDITOR = "nvim"; EDITOR = "nvim";
VISUAL = "nvim"; VISUAL = "nvim";
TERM = "ghostty"; TERM = "ghostty";
GTK_THEME = "Adwaita:dark"; GTK_THEME = lib.mkDefault "Adwaita:dark";
CC = "${pkgs.gcc}/bin/gcc"; CC = "${pkgs.gcc}/bin/gcc";
PKG_CONFIG_PATH = lib.makeSearchPath "lib/pkgconfig" [ PKG_CONFIG_PATH = lib.makeSearchPath "lib/pkgconfig" [
pkgs.openssl.dev pkgs.openssl.dev

View file

@ -1,5 +1,20 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
let
clear-sans = pkgs.stdenv.mkDerivation {
name = "clear-sans";
src = pkgs.fetchurl {
url = "https://raw.githubusercontent.com/resir014/Clear-Sans-Webfont/97eec13/fonts/TTF/ClearSans-Regular.ttf";
sha256 = "0vzhy3l056gj5vkcs1kglr4mr0546fq093v78i4ri8xni7w1m0dv";
};
dontUnpack = true;
installPhase = ''
mkdir -p $out/share/fonts/truetype
cp $src $out/share/fonts/truetype/ClearSans-Regular.ttf
'';
};
in
{ {
fonts = { fonts = {
packages = with pkgs; [ packages = with pkgs; [
@ -10,7 +25,7 @@
(nerdfonts.override { fonts = [ "0xProto" "FiraCode" "JetBrainsMono" "Hack" "Noto" "NerdFontsSymbolsOnly" ]; }) (nerdfonts.override { fonts = [ "0xProto" "FiraCode" "JetBrainsMono" "Hack" "Noto" "NerdFontsSymbolsOnly" ]; })
ipafont ipafont
kochi-substitute kochi-substitute
# Custom BinaryClock font clear-sans
(stdenv.mkDerivation { (stdenv.mkDerivation {
name = "binary-clock-font"; name = "binary-clock-font";
src = fetchurl { src = fetchurl {
@ -27,8 +42,8 @@
fontconfig = { fontconfig = {
enable = true; enable = true;
defaultFonts = { defaultFonts = {
monospace = [ "JetBrains Mono" "Noto Sans Mono CJK JP" ]; monospace = [ "0xProto Nerd Font" "Noto Sans Mono CJK JP" ];
sansSerif = [ "Noto Sans" "Noto Sans CJK JP" ]; sansSerif = [ "Clear Sans" "Noto Sans CJK JP" ];
serif = [ "Noto Serif" "Noto Serif CJK JP" ]; serif = [ "Noto Serif" "Noto Serif CJK JP" ];
emoji = [ "Noto Color Emoji" ]; emoji = [ "Noto Color Emoji" ];
}; };

View file

@ -9,6 +9,7 @@ in
layout = "us"; layout = "us";
variant = ""; variant = "";
}; };
services.xserver.windowManager.i3 = { services.xserver.windowManager.i3 = {
enable = true; enable = true;
package = pkgs.i3-gaps; package = pkgs.i3-gaps;
@ -27,27 +28,50 @@ in
extraSessionCommands = '' extraSessionCommands = ''
# Set random wallpaper # Set random wallpaper
${pkgs.feh}/bin/feh --randomize --bg-fill ~/wallpapers/* || ${pkgs.feh}/bin/feh --bg-fill ${pkgs.nixos-artwork.wallpapers.nineish-dark-gray}/share/backgrounds/nixos/nineish-dark-gray.png & ${pkgs.feh}/bin/feh --randomize --bg-fill ~/wallpapers/* || ${pkgs.feh}/bin/feh --bg-fill ${pkgs.nixos-artwork.wallpapers.nineish-dark-gray}/share/backgrounds/nixos/nineish-dark-gray.png &
export GTK_THEME="Tokyonight-Dark"
export XCURSOR_THEME="Vivid-Dark-Icons"
export XCURSOR_SIZE="24"
export QT_STYLE_OVERRIDE="adwaita-dark"
${pkgs.gtk3}/bin/gsettings set org.gnome.desktop.interface gtk-theme "Tokyonight-Dark"
${pkgs.gtk3}/bin/gsettings set org.gnome.desktop.interface icon-theme "Vivid-Dark-Icons"
''; '';
}; };
services.xserver.desktopManager.xfce = { services.xserver.desktopManager.xfce = {
enable = true; enable = true;
noDesktop = true; noDesktop = true;
enableXfwm = false; enableXfwm = false;
}; };
services.xserver.displayManager.lightdm = { services.xserver.displayManager.lightdm = {
enable = true; enable = true;
background = "#000000"; background = "#000000";
greeters.gtk = { greeters.gtk = {
enable = true; enable = true;
theme.name = "Tokyonight-Dark"; theme = {
iconTheme.name = "Vivid-Dark-Icons"; package = customPkgs.tokyo-night-gtk;
name = "Tokyonight-Dark";
};
iconTheme = {
package = customPkgs.vivid-icons;
name = "Vivid-Dark-Icons";
};
extraConfig = ''
[greeter]
theme-name=Tokyonight-Dark
icon-theme-name=Vivid-Dark-Icons
font-name=Clear Sans 10
cursor-theme-name=Vivid-Dark-Icons
'';
}; };
}; };
services.displayManager.defaultSession = "xfce+i3"; services.displayManager.defaultSession = "xfce+i3";
services.displayManager.autoLogin = { services.displayManager.autoLogin = {
enable = true; enable = true;
user = "cobray"; user = "cobray";
}; };
environment.etc."xdg/autostart/i3-setup.desktop" = { environment.etc."xdg/autostart/i3-setup.desktop" = {
text = '' text = ''
[Desktop Entry] [Desktop Entry]
@ -59,29 +83,50 @@ in
''; '';
mode = "0644"; mode = "0644";
}; };
qt.enable = true; qt.enable = true;
qt.platformTheme = "qt5ct"; qt.platformTheme = "qt5ct";
qt.style = "adwaita-dark"; qt.style = "adwaita-dark";
environment.etc."gtk-2.0/gtkrc".text = ''
gtk-theme-name="Tokyonight-Dark"
gtk-icon-theme-name="Vivid-Dark-Icons"
gtk-font-name="Clear Sans 10"
'';
environment.etc."gtk-3.0/settings.ini".text = '' environment.etc."gtk-3.0/settings.ini".text = ''
[Settings] [Settings]
gtk-application-prefer-dark-theme=1 gtk-application-prefer-dark-theme=1
gtk-theme-name=Tokyonight-Dark gtk-theme-name=Tokyonight-Dark
gtk-icon-theme-name=Vivid-Dark-Icons gtk-icon-theme-name=Vivid-Dark-Icons
gtk-font-name=Sans 10 gtk-font-name=Clear Sans 10
''; '';
environment.etc."gtk-4.0/settings.ini".text = '' environment.etc."gtk-4.0/settings.ini".text = ''
[Settings] [Settings]
gtk-application-prefer-dark-theme=1 gtk-application-prefer-dark-theme=1
gtk-theme-name=Tokyonight-Dark gtk-theme-name=Tokyonight-Dark
gtk-icon-theme-name=Vivid-Dark-Icons gtk-icon-theme-name=Vivid-Dark-Icons
gtk-font-name=Sans 10 gtk-font-name=Clear Sans 10
''; '';
environment.variables = {
GTK_THEME = "Tokyonight-Dark";
XCURSOR_THEME = "Vivid-Dark-Icons";
XCURSOR_SIZE = "24";
QT_STYLE_OVERRIDE = "adwaita-dark";
GTK2_RC_FILES = "$HOME/.gtkrc-2.0";
};
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
arandr arandr
nitrogen nitrogen
xclip xclip
lxappearance lxappearance
libsForQt5.qt5ct libsForQt5.qt5ct
gnome-themes-extra
gsettings-desktop-schemas
adwaita-qt
arc-theme arc-theme
arc-icon-theme arc-icon-theme
papirus-icon-theme papirus-icon-theme