This commit is contained in:
2025-09-03 10:21:42 +02:00
parent 46badb6493
commit d40cba92ff
18 changed files with 6441 additions and 41 deletions

View File

@@ -42,9 +42,6 @@
system = "x86_64-linux";
in
{
#formatter
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt;
# legolas
nixosConfigurations.legolas = nixpkgs.lib.nixosSystem {
inherit system;

View File

@@ -47,6 +47,7 @@
"systemctl"
"tmux"
"yarn"
"vim"
];
common_prefix = [ "sudo" ];
};

View File

@@ -1,9 +1,5 @@
{
pkgs,
config,
nix-colors,
...
}:
# home.nix
{ pkgs, config, nix-colors, ... }:
let
nix-colors-lib = nix-colors.lib.contrib { inherit pkgs; };
@@ -146,6 +142,7 @@ let
@define-color tooltip_bg_color #${c.base01};
@define-color tooltip_fg_color #${c.base05};
'';
};
in
{
@@ -154,7 +151,7 @@ in
colorScheme = {
slug = "teal-green-dark";
name = "Teal Green Dark";
author = "Autogenerated";
author = "Adrian";
palette = {
# Base16 TealGreen Dark Theme - Enhanced Teal Version
base00 = "0c1f1d"; # Default background - deeper teal base
@@ -173,15 +170,71 @@ in
base0D = "2aa198"; # Functions, headings - classic teal
base0E = "3cb4ac"; # Keywords, selectors - teal-blue
base0F = "70d0c0"; # Deprecated tags - light teal
};
};
# GTK configuration with custom theme
gtk = {
enable = true;
theme = {
name = "Adwaita-dark";
package = pkgs.gnome-themes-extra;
font = {
name = "Sans";
size = 11;
};
theme = {
name = "TealGreenDark";
package = customGtkTheme;
};
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
cursorTheme = {
name = "Adwaita";
package = pkgs.adwaita-icon-theme;
size = 24;
};
gtk3.extraConfig = {
# Additional GTK3 settings
"gtk-application-prefer-dark-theme" = 1;
};
gtk4.extraConfig = {
# Additional GTK4 settings
"gtk-application-prefer-dark-theme" = 1;
};
gtk2.extraConfig = ''
style "custom-dark" {
# Background, foreground, and base colors for different states
bg[NORMAL] = "#${c.base00}"
bg[PRELIGHT] = "#${c.base02}"
bg[ACTIVE] = "#${c.base01}"
bg[SELECTED] = "#${c.base0D}"
bg[INSENSITIVE] = "#${c.base01}"
fg[NORMAL] = "#${c.base05}"
fg[PRELIGHT] = "#${c.base06}"
fg[ACTIVE] = "#${c.base07}"
fg[SELECTED] = "#${c.base07}"
fg[INSENSITIVE] = "#${c.base03}"
base[NORMAL] = "#${c.base01}"
base[PRELIGHT] = "#${c.base02}"
base[ACTIVE] = "#${c.base0D}"
base[SELECTED] = "#${c.base0D}"
base[INSENSITIVE] = "#${c.base00}"
text[NORMAL] = "#${c.base05}"
text[PRELIGHT] = "#${c.base06}"
text[ACTIVE] = "#${c.base07}"
text[SELECTED] = "#${c.base07}"
text[INSENSITIVE] = "#${c.base03}"
}
# Apply the style to all widgets
widget_class "*" style "custom-dark"
gtk-application-prefer-dark-theme="true"
'';
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = true;
@@ -195,25 +248,24 @@ in
gtk4.extraCss = gtkColorOverrides;
};
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
icon-theme = "Papirus-Dark";
};
};
home.packages = with pkgs; [
gnome-themes-extra # already present
libsForQt5.qt5ct
kdePackages.qt6ct
libsForQt5.qtstyleplugins # for qt5 extra GTK integration
kdePackages.qtstyleplugin-kvantum
papirus-icon-theme
gnome-themes-extra
adwaita-icon-theme
];
qt = {
enable = true;
# Make Qt follow your GTK theme
platformTheme.name = "gtk"; # "gtk3" is not valid, just use "gtk"
# Use Adwaita Dark for Qt
style = {
name = "adwaita-dark";
package = pkgs.adwaita-qt;
};
platformTheme.name = "gtk";
style.name = "gtk";
};
}

View File

@@ -10,8 +10,7 @@
fcitx5-mozc
fcitx5-gtk
fcitx5-configtool
libsForQt5.fcitx5-qt
fcitx5-tokyonight
fcitx5-material-color # Add the theme package
];
settings = {
@@ -20,6 +19,15 @@
TriggerKey = "Control+space";
};
# Addon settings for the theme
addons.classicui = {
globalSection = {
Theme = "Material-Color-Dark";
DarkTheme = "Material-Color-Dark";
UseDarkTheme = true;
};
};
inputMethod = {
"Groups/0" = {
Name = "Default";

6248
home/gtk.css Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -15,6 +15,7 @@
./colors.nix
./fuzzel.nix
./swaylock.nix
./swayidle.nix
./waybar.nix
./wlogout.nix
./niri.nix

View File

@@ -12,11 +12,17 @@
set backspace=indent,eol,start
syntax on
set tabstop=2 softtabstop=0 autoindent expandtab shiftwidth=2 smarttab
" Use <Tab> completion instead of ctrl n and ctrl p
inoremap <expr> <Tab> pumvisible() ? "\<C-y>" : "\<Tab>"
inoremap <expr> <S-Tab> "\<Tab>"
'';
extraLuaConfig = ''
vim.wo.number = true
-- vim.wo.relativenumber = true
vim.api.nvim_set_option("clipboard", "unnamedplus")
'';
extraPackages = [ pkgs.fzf ]; # For fzf-vim functionality
@@ -27,7 +33,10 @@
vim-yaml
fzf-vim
chadtree
typst-vim
typst-preview-nvim
#magma-nvim #jupyter
#molten-nvim #jupyter
];
# CoC configuration (replacing coc-rust-analyzer plugin)

View File

@@ -235,7 +235,8 @@ let
spawn-at-startup "mako"
spawn-at-startup "swww-daemon"
spawn-at-startup "waybar"
spawn-at-startup "swayidle" "-w" "timeout" "601" "niri msg action power-off-monitors" "timeout" "600" "swaylock -f" "before-sleep" "swaylock -f"
spawn-at-startup "sh" "-c" "while true; do swww img -t random --transition-step 2 \"$(find ~/Pictures/wallpapers/ -type f | shuf -n 1)\"; sleep 270; done"
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
// If the client will specifically ask for CSD, the request will be honored.

36
home/swayidle.nix Normal file
View File

@@ -0,0 +1,36 @@
{
pkgs,
inputs,
lib,
config,
...
}:
{
services.swayidle = {
enable = true;
timeouts = [
{
timeout = 180;
command = "swaylock -f";
resumeCommand = null;
}
{
timeout = 210;
command = "niri msg action power-off-monitors";
resumeCommand = null;
}
];
events = [
{
event = "before-sleep";
command = "swaylock -f";
}
];
extraArgs = [ "-w" ];
package = pkgs.swayidle;
systemdTarget = "graphical-session.target";
};
}

View File

@@ -22,7 +22,7 @@ in
# authentication grace
grace = 3; # --grace
submit-on-touch = true; # --submit-on-touch
submit-on-touch = false; # --submit-on-touch
# clock
clock = true; # --clock

View File

@@ -42,8 +42,7 @@ in
"modules-left": ["custom/overview", "custom/launcher", "custom/keyboard", "sway/workspaces", "niri/workspaces"],
"modules-center": ["niri/window"],
"modules-right": [
"idle_inhibitor", "backlight", "pulseaudio", "keyboard-state",
"network", "cpu", "memory", "temperature", "battery",
"idle_inhibitor", "backlight", "pulseaudio", "cpu", "memory", "temperature", "battery",
"power-profiles-daemon", "clock", "tray", "custom/power"
],

View File

@@ -25,9 +25,11 @@
../../modules/pam.nix
../../modules/tailscale.nix
../../modules/podman.nix
../../modules/desktopApplications.nix
../../modules/develPackages.nix
../../modules/steam.nix
../../modules/bluetooth.nix
../../modules/powerprofiles.nix
../../modules/develPackages.nix
../../modules/desktopApplications.nix
];

View File

@@ -8,7 +8,9 @@
{
imports = [ ];
environment.systemPackages = with pkgs; [ bluez ];
environment.systemPackages = with pkgs; [
bluez
];
hardware.bluetooth.enable = lib.mkDefault true;
hardware.bluetooth.settings = lib.mkDefault {

View File

@@ -76,6 +76,5 @@
noto-fonts-cjk-sans
];
programs.dconf.enable = lib.mkDefault true;
programs.dconf.enable = true;
}

View File

@@ -4,7 +4,10 @@
lib,
...
}:
<<<<<<< Updated upstream
=======
>>>>>>> Stashed changes
{
environment.systemPackages = with pkgs; [
gdb
@@ -17,8 +20,8 @@
libcap
libcutl
cmake
autoconf
i2pd-tools
autoconf
xorg-autoconf
automake
autobuild
@@ -33,7 +36,8 @@
rustfmt
treefmt
python3Full
jupyter
python3
python3Packages.numpy
python3Packages.sympy
python3Packages.scipy
@@ -58,5 +62,8 @@
];
<<<<<<< Updated upstream
=======
programs.dconf.enable = lib.mkDefault true;
>>>>>>> Stashed changes
}

View File

@@ -10,6 +10,8 @@
security.polkit.enable = true;
security.pam.services.gtklock = { };
security.pam.services.swaylock = { };
security.pam.services.swaylock-effects = { };

15
modules/powerprofiles.nix Normal file
View File

@@ -0,0 +1,15 @@
{
config,
pkgs,
lib,
...
}:
{
environment.systemPackages = with pkgs; [
power-profiles-daemon
];
services.power-profiles-daemon.enable = true;
}

21
modules/steam.nix Normal file
View File

@@ -0,0 +1,21 @@
{ pkgs, lib, ... }:
{
nixpkgs.config.allowUnfreePredicate =
pkg:
builtins.elem (lib.getName pkg) [
"steam"
"steam-original"
"steam-run"
];
programs.steam = {
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
};
environment.systemPackages = [
pkgs.steam-run
];
}