From ca920737c5c49c494b2878270684418026d920a0 Mon Sep 17 00:00:00 2001 From: Charlie Root Date: Mon, 6 May 2024 23:17:31 +0200 Subject: [PATCH] added even more hyprland stuff --- hosts/vali/mars/configuration.nix | 18 ++----- hosts/vali/mars/hyprland/hyprland.nix | 72 ++++++++++++--------------- hosts/vali/mars/programs.nix | 13 +++-- modules/gui/cursor.nix | 39 --------------- modules/gui/default.nix | 1 - modules/gui/gtk.nix | 14 +++--- modules/gui/kitty.nix | 3 +- modules/gui/stylix.nix | 17 +++++-- 8 files changed, 68 insertions(+), 109 deletions(-) delete mode 100644 modules/gui/cursor.nix diff --git a/hosts/vali/mars/configuration.nix b/hosts/vali/mars/configuration.nix index 842309c..be67e2f 100644 --- a/hosts/vali/mars/configuration.nix +++ b/hosts/vali/mars/configuration.nix @@ -28,6 +28,8 @@ security.polkit.enable = true; programs.kdeconnect.enable = true; programs.dconf.enable = true; + boot.kernelModules = [ "v4l2loopback" ]; + boot.extraModulePackages = [ pkgs.linuxPackages.v4l2loopback ]; # services.picom.enable = true; modules = { other = { @@ -59,23 +61,11 @@ pipewire.enable = true; }; themes = { - cursor = { - enable = false; - package = pkgs.bibata-cursors; - name = "Bibata-Modern-Classic"; - size = 24; - }; gtk = { - enable = false; - package = pkgs.materia-theme; - name = "Materia-dark"; - # iconTheme = { - # name = "Papirus-Dark"; - # package = pkgs.catppuccin-papirus-folders; - # }; + enable = true; }; qt = { - enable = false; + enable = true; package = pkgs.kde-gruvbox; name = "Gruvbox-Dark"; }; diff --git a/hosts/vali/mars/hyprland/hyprland.nix b/hosts/vali/mars/hyprland/hyprland.nix index 0094c3e..fcac2c3 100644 --- a/hosts/vali/mars/hyprland/hyprland.nix +++ b/hosts/vali/mars/hyprland/hyprland.nix @@ -12,6 +12,9 @@ in { config = mkIf cfg.enable { environment.sessionVariables = { + LIBVA_DRIVER_NAME = "nvidia"; + GTK_USE_PORTAL = "1"; + NIXOS_XDG_OPEN_USE_PORTAL = "1"; XDG_CURRENT_DESKTOP = "Hyprland"; XDG_SESSION_TYPE = "wayland"; XDG_SESSION_DESKTOP = "Hyprland"; @@ -45,20 +48,20 @@ in { monitor = [ "DP-2,1920x1080,0x0,1" "HDMI-A-2,1920x1080,1920x0,1" - "DP-1,1920x1080,3480x0,1" + "HDMI-A-1,1920x1080,3840x0,1" "Unknown-1,disable" ]; workspace = [ - "1, monitor:DP-2, default:true" - "2, monitor:DP-2" - "3, monitor:DP-2" - "4, monitor:DP-2" - "5, monitor:DP-2" - "6, monitor:DP-2" - "7, monitor:DP-2" - "8, monitor:DP-2" - "9, monitor:DP-2" - "10, monitor:DP-2" + "1, monitor:HDMI-A-1, default:true" + "2, monitor:HDMI-A-1" + "3, monitor:HDMI-A-1" + "4, monitor:HDMI-A-1" + "5, monitor:HDMI-A-1" + "6, monitor:HDMI-A-1" + "7, monitor:HDMI-A-1" + "8, monitor:HDMI-A-1" + "9, monitor:HDMI-A-1" + "10, monitor:HDMI-A-1" "11, monitor:HDMI-A-2, default:true" "12, monitor:HDMI-A-2" @@ -72,16 +75,16 @@ in { "20, monitor:HDMI-A-2" - "21, monitor:DP-1, default:true" - "22, monitor:DP-1" - "23, monitor:DP-1" - "24, monitor:DP-1" - "25, monitor:DP-1" - "26, monitor:DP-1" - "27, monitor:DP-1" - "28, monitor:DP-1" - "29, monitor:DP-1" - "30, monitor:DP-1" + "21, monitor:DP-2, default:true" + "22, monitor:DP-2" + "23, monitor:DP-2" + "24, monitor:DP-2" + "25, monitor:DP-2" + "26, monitor:DP-2" + "27, monitor:DP-2" + "28, monitor:DP-2" + "29, monitor:DP-2" + "30, monitor:DP-2" # scratchpads "special:btop, decorate:false" @@ -125,11 +128,13 @@ in { shadow_ignore_window = 1; shadow_offset = "2 4"; shadow_scale = 1; + active_opacity = 0.90; + inactive_opacity = 0.90; #"col.shadow" = "0xAF1E1E2E"; }; bezier = [ - "dupa, 0.1, 0..9, 0.1, 1.05" + "dupa, 0.1, 0.9, 0.1, 1.05" "apf,0.76,0,0.24,1" "fast,0.34,1.56,0.64,1" ]; @@ -137,11 +142,10 @@ in { enabled = true; animation = [ "windows, 1, 4, dupa, popin" - "windowsIn, 1, 4, dupa, popin" - "windowsOut, 1, 4, dupa, popin" + "windowsOut, 1, 4, dupa, slide" "border, 1, 15, default" "fade, 1, 10, default" - "workspaces, 1, 5, dupa, slidefadevert" + "workspaces, 1, 5, dupa, slidevert" ]; }; dwindle = { @@ -181,6 +185,7 @@ in { "$mainMod, F, fullscreen, 0" "$mainMod, D, exec, ${pkgs.procps}/bin/pkill anyrun || ${anyrun}/bin/anyrun" "$mainMod, SPACE, togglefloating, active" + "$mainMod, O, exec, obsidian --ozone-platform=wayland --enable-features=UseOzonePlatform --enable-features=WaylandWindowDecorations --enable-features=WebRTCPipeWireCpaturer --disable-gpu" # workspaces "$mainMod, 1, split-workspace, 1" "$mainMod, 2, split-workspace, 2" @@ -251,26 +256,15 @@ in { pass_mouse_when_bound = false; movefocus_cycles_fullscreen = false; }; - exec-once = let - handle_hyprland_events = pkgs.writeShellScriptBin "handle_hyprland_events" '' - #!/bin/sh - - handle() { - case $1 in - configreloaded*) - ${hyprland}/bin/hyprctl notify 1 2500 "" " Reloading Hyprland..." - ;; - esac - } - ''; - in [ + exec-once = [ + #start waybar "${waybar}/bin/waybar" # run persistent special workspace windows "[workspace special:nixos silent;tile] ${pkgs.kitty}/bin/kitty -d ~/repos/nichts -e nvim" "[workspace special:keepassxc silent;tile] ${pkgs.keepassxc}/bin/keepassxc" - "${swww}/bin/swww init" + "${swww}/bin/swww-daemon" "${wlsunset}/bin/wlsunset -S 06:00 -s 20:00" ]; diff --git a/hosts/vali/mars/programs.nix b/hosts/vali/mars/programs.nix index 244a45d..d60c27f 100644 --- a/hosts/vali/mars/programs.nix +++ b/hosts/vali/mars/programs.nix @@ -1,10 +1,10 @@ { config, inputs, pkgs, ... }: let fenix = inputs.fenix.packages.${pkgs.system}; + nixpkgs-wayland = inputs.nixpkgs-wayland.packages.${pkgs.system}; username = config.modules.other.system.username; in { environment.systemPackages = with pkgs; [ - alacritty alsa-utils android-tools asciinema @@ -28,10 +28,9 @@ in { "rustfmt" ]) ffmpeg-full - fftw flameshot + fftw + flameshot grimblast - heroic - imv gcc gdb gnumake @@ -39,10 +38,12 @@ in { grimblast git helvum + heroic httpie i3lock imagemagick img2pdf + imv keepassxc krita lazygit @@ -56,8 +57,11 @@ in { nextcloud-client nicotine-plus nitrogen + nixpkgs-wayland.swww nmap notesnook + obs-studio + obsidian onlyoffice-bin pamixer pavucontrol @@ -91,6 +95,7 @@ in { tree unzip util-linux + v4l-utils ventoy-full vlc weechat diff --git a/modules/gui/cursor.nix b/modules/gui/cursor.nix deleted file mode 100644 index 1f39448..0000000 --- a/modules/gui/cursor.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - config, - lib, - ... -}: with lib; let - cfg = config.modules.themes.cursor; - username = config.modules.other.system.username; -in { - options.modules.themes.cursor = { - enable = mkEnableOption "cursor theming"; - package = mkOption { - description = "cursor theme package"; - type = types.package; - }; - name = mkOption { - description = "cursor theme name"; - type = types.str; - }; - size = mkOption { - description = "cursor size"; - type = types.int; - }; - }; - - config = mkIf cfg.enable { - environment.sessionVariables = { - XCURSOR_THEME = "${cfg.name}"; - XCURSOR_SIZE = "${toString cfg.size}"; - }; - - home-manager.users.${username} = { - home.pointerCursor = { - inherit (cfg) package name size; - gtk.enable = true; - x11.enable = true; - }; - }; - }; -} diff --git a/modules/gui/default.nix b/modules/gui/default.nix index 3b99d36..ca21122 100644 --- a/modules/gui/default.nix +++ b/modules/gui/default.nix @@ -1,7 +1,6 @@ _: { imports = [ ./vesktop.nix - ./cursor.nix ./gtk.nix ./mpv.nix ./qt.nix diff --git a/modules/gui/gtk.nix b/modules/gui/gtk.nix index a01be28..180d78e 100644 --- a/modules/gui/gtk.nix +++ b/modules/gui/gtk.nix @@ -36,16 +36,16 @@ in { gtk = { enable = true; theme = { - # inherit (cfg) name package; - package = pkgs.gruvbox-gtk-theme; - name = "Gruvbox-Dark-BL"; + #package = pkgs.gruvbox-gtk-theme; + #name = "Gruvbox-Dark-BL"; + }; + iconTheme = { + name = "Papirus-Dark"; + package = pkgs.catppuccin-papirus-folders; }; - # iconTheme = { - # inherit (cfg.iconTheme) name package; - # }; }; home.sessionVariables = { - GTK_THEME = "Gruvbox-Dark-BL"; + #GTK_THEME = "Gruvbox-Dark-BL"; # GTK_USE_PORTAL = "1"; diff --git a/modules/gui/kitty.nix b/modules/gui/kitty.nix index 98183e3..4ed8860 100644 --- a/modules/gui/kitty.nix +++ b/modules/gui/kitty.nix @@ -17,7 +17,7 @@ in { #background_opacity = "0.9"; confirm_os_window_close = "0"; #font_family = "JetBrainsMono Nerd Font"; - +/* cursor_text_color = "background"; url_color = "#83a598"; @@ -69,6 +69,7 @@ in { # white (fg4/fg3) color7 = "#a89984"; color15 = "#bdae93"; + */ }; }; diff --git a/modules/gui/stylix.nix b/modules/gui/stylix.nix index 1d538ad..58acc0b 100644 --- a/modules/gui/stylix.nix +++ b/modules/gui/stylix.nix @@ -21,7 +21,6 @@ in { zathura.enable = true; gtk.enable = true; hyprland.enable = true; - }; }; }; @@ -35,6 +34,7 @@ in { name = "Bibata-Modern-Classic"; size = 24; }; + targets.plymouth.enable = true; opacity = { applications = 0.7; popups = 0.7; @@ -46,13 +46,22 @@ in { popups = 14; }; - sansSerif = config.stylix.fonts.monospace; - serif = config.stylix.fonts.monospace; - emoji = config.stylix.fonts.monospace; monospace = { package = (pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];}); name = "JetBrainsMono"; }; + serif = { + package = (pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];}); + name = "JetBrainsMono"; + }; + sansSerif = { + package = (pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];}); + name = "JetBrainsMono"; + }; + emoji = { + package = pkgs.noto-fonts-emoji; + name = "Noto Color Emoji"; + }; }; };