diff --git a/flake.lock b/flake.lock index 567d06c..72cc3be 100755 --- a/flake.lock +++ b/flake.lock @@ -120,23 +120,6 @@ "type": "gitlab" } }, - "eww-git": { - "flake": false, - "locked": { - "lastModified": 1692622179, - "narHash": "sha256-vxMGAa/RTsMADPK4dM/28SV2ktCT0DenYvGsHZ4IJ8c=", - "owner": "ralismark", - "repo": "eww", - "rev": "a82ed62c25ba50f28dc8c3d57efe440d51d6136b", - "type": "github" - }, - "original": { - "owner": "ralismark", - "ref": "tray-3", - "repo": "eww", - "type": "github" - } - }, "fenix": { "inputs": { "nixpkgs": [ @@ -569,7 +552,6 @@ "root": { "inputs": { "chaotic-nyx": "chaotic-nyx", - "eww-git": "eww-git", "fenix": "fenix", "fish-plugin-bobthefish": "fish-plugin-bobthefish", "fish-plugin-gruvbox-theme": "fish-plugin-gruvbox-theme", diff --git a/flake.nix b/flake.nix index b98aa80..cdd3707 100755 --- a/flake.nix +++ b/flake.nix @@ -64,12 +64,6 @@ inputs.nixpkgs.follows = "nixpkgs"; }; - eww-git = { - # url = "github:elkowar/eww"; - url = "github:ralismark/eww/tray-3"; - flake = false; - }; - openmw-git = { url = "gitlab:OpenMW/openmw"; flake = false; diff --git a/overlay.nix b/overlay.nix index 2946153..36eeb2c 100755 --- a/overlay.nix +++ b/overlay.nix @@ -2,7 +2,6 @@ { default = final: prev: { - eww-git = prev.callPackage ./pkgs/eww-systray { inherit inputs; withWayland = true; }; eww-hyprland-activewindow = prev.callPackage ./pkgs/eww-hyprland-activewindow { inherit inputs; }; gruvbox-plus-icon-pack = final.callPackage ./pkgs/gruvbox-plus-icon-pack { }; diff --git a/pkgs/eww-systray/default.nix b/pkgs/eww-systray/default.nix deleted file mode 100644 index 381ecb5..0000000 --- a/pkgs/eww-systray/default.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ lib -, rustPlatform -, fetchFromGitHub -, pkg-config -, gtk3 -, gdk-pixbuf -, libdbusmenu-gtk3 -, withWayland ? false -, gtk-layer-shell -, stdenv -, inputs -, makeRustPlatform -, system -}: - -(makeRustPlatform { - cargo = inputs.fenix.packages.${system}.minimal.toolchain; - rustc = inputs.fenix.packages.${system}.minimal.toolchain; -}).buildRustPackage rec { - pname = "eww"; - version = "unstable-2023-08-19"; - - src = inputs.eww-git; - cargoLock.lockFile = "${inputs.eww-git}/Cargo.lock"; - - nativeBuildInputs = [ pkg-config ]; - - buildInputs = [ gtk3 gdk-pixbuf libdbusmenu-gtk3 ] ++ lib.optional withWayland gtk-layer-shell; - - buildNoDefaultFeatures = true; - buildFeatures = [ - (if withWayland then "wayland" else "x11") - ]; - - cargoBuildFlags = [ "--bin" "eww" ]; - - cargoTestFlags = cargoBuildFlags; - - # requires unstable rust features - RUSTC_BOOTSTRAP = 1; - - meta = with lib; { - description = "ElKowars wacky widgets"; - homepage = "https://github.com/elkowar/eww"; - license = licenses.mit; - maintainers = with maintainers; [ figsoda lom ]; - mainProgram = "eww"; - broken = stdenv.isDarwin; - }; -} diff --git a/system/configuration.nix b/system/configuration.nix index 7dbfe67..e11d591 100755 --- a/system/configuration.nix +++ b/system/configuration.nix @@ -2,6 +2,8 @@ { imports = [ ./hardware-configuration.nix + ./services + ./programs ]; boot = { @@ -76,9 +78,7 @@ }; hardware.steam-hardware.enable = true; - programs.steam.enable = true; - chaotic.steam.extraCompatPackages = with pkgs; [ luxtorpeda proton-ge-custom ]; - + hardware.bluetooth.enable = true; hardware.sane = { enable = true; @@ -138,76 +138,6 @@ ]; }; - programs = { - dconf.enable = true; - hyprland.enable = true; - fish.enable = true; - kdeconnect.enable = true; - ssh.startAgent = true; - }; - - services = { - blueman.enable = true; - flatpak.enable = true; - fwupd.enable = true; - gnome.gnome-keyring.enable = true; - gvfs.enable = true; - openssh.enable = true; - udisks2.enable = true; - - udev = { - packages = [ pkgs.openrgb ]; - }; - - printing = { - enable = true; - drivers = [ pkgs.cnijfilter2 ]; - }; - - avahi = { - enable = true; - nssmdns = true; - }; - - mullvad-vpn = { - enable = true; - package = pkgs.mullvad-vpn; - }; - - pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - - locate = { - enable = true; - locate = pkgs.plocate; - localuser = null; - prunePaths = lib.mkOptionDefault [ ]; - interval = "hourly"; - }; - - fstrim = { - enable = true; - interval = "weekly"; - }; - }; - - virtualisation = { - podman.enable = true; - }; - - xdg.portal = { - enable = true; - xdgOpenUsePortal = true; - wlr.enable = false; #conflict with XDPH if enabled - extraPortals = [ - pkgs.xdg-desktop-portal-gtk - ]; - }; - systemd.extraConfig = '' DefaultTimeoutStopSec=10s ''; diff --git a/system/programs/default.nix b/system/programs/default.nix new file mode 100644 index 0000000..76ca165 --- /dev/null +++ b/system/programs/default.nix @@ -0,0 +1,13 @@ +{ pkgs, ... }: +{ + programs.steam.enable = true; + chaotic.steam.extraCompatPackages = with pkgs; [ luxtorpeda proton-ge-custom ]; + + programs = { + dconf.enable = true; + hyprland.enable = true; + fish.enable = true; + kdeconnect.enable = true; + ssh.startAgent = true; + }; +} diff --git a/system/services/avahi/default.nix b/system/services/avahi/default.nix new file mode 100644 index 0000000..4ad4613 --- /dev/null +++ b/system/services/avahi/default.nix @@ -0,0 +1,6 @@ +{ + services.avahi = { + enable = true; + nssmdns = true; + }; +} diff --git a/system/services/default.nix b/system/services/default.nix new file mode 100644 index 0000000..649bc7e --- /dev/null +++ b/system/services/default.nix @@ -0,0 +1,31 @@ +{ pkgs, ... }: +{ + imports = [ + ./avahi + ./locate + ./pipewire + ./printing + ./udev + ./xdg-portal + ]; + + services = { + blueman.enable = true; + flatpak.enable = true; + fwupd.enable = true; + gnome.gnome-keyring.enable = true; + gvfs.enable = true; + openssh.enable = true; + udisks2.enable = true; + + mullvad-vpn = { + enable = true; + package = pkgs.mullvad-vpn; + }; + + fstrim = { + enable = true; + interval = "weekly"; + }; + }; +} diff --git a/system/services/locate/default.nix b/system/services/locate/default.nix new file mode 100644 index 0000000..8b72693 --- /dev/null +++ b/system/services/locate/default.nix @@ -0,0 +1,10 @@ +{ pkgs, lib, ... }: +{ + services.locate = { + enable = true; + locate = pkgs.plocate; + localuser = null; + prunePaths = lib.mkOptionDefault [ ]; + interval = "hourly"; + }; +} diff --git a/system/services/pipewire/default.nix b/system/services/pipewire/default.nix new file mode 100644 index 0000000..24e9fb5 --- /dev/null +++ b/system/services/pipewire/default.nix @@ -0,0 +1,8 @@ +{ + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; +} diff --git a/system/services/printing/default.nix b/system/services/printing/default.nix new file mode 100644 index 0000000..5467b58 --- /dev/null +++ b/system/services/printing/default.nix @@ -0,0 +1,7 @@ +{ pkgs, ... }: +{ + services.printing = { + enable = true; + drivers = [ pkgs.cnijfilter2 ]; + }; +} diff --git a/system/services/udev/default.nix b/system/services/udev/default.nix new file mode 100644 index 0000000..ed468aa --- /dev/null +++ b/system/services/udev/default.nix @@ -0,0 +1,6 @@ +{ pkgs, ... }: +{ + services.udev = { + packages = [ pkgs.openrgb ]; + }; +} diff --git a/system/services/xdg-portal/default.nix b/system/services/xdg-portal/default.nix new file mode 100644 index 0000000..d9f76bd --- /dev/null +++ b/system/services/xdg-portal/default.nix @@ -0,0 +1,9 @@ +{ pkgs, ... }: +{ + xdg.portal = { + enable = true; + xdgOpenUsePortal = true; + wlr.enable = false; #conflict with XDPH if enabled + extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; + }; +} diff --git a/user/configs/wayland/eww/config.nix b/user/configs/wayland/eww/config.nix index a3118bf..3398da5 100644 --- a/user/configs/wayland/eww/config.nix +++ b/user/configs/wayland/eww/config.nix @@ -77,10 +77,11 @@ in :class "volume" volume)) - (box - :space-evenly false - :class "mpd" - mpd) + (eventbox + :onclick "${pkgs.mpc-cli}/bin/mpc toggle" + (box + :class "mpd" + mpd)) ) ) @@ -90,10 +91,6 @@ in :spacing 5 :halign "end" - ;; (box - ;; :class "tray" - ;; (tray)) - (box :space-evenly false :orientation "h" @@ -142,12 +139,6 @@ in :interval "1s" "date '+%a %d, %B %H:%M'") - (defwidget tray [] - (systray - :pack-direction "ltr" - :icon-size 22 - )) - (defwindow bar0 :monitor 0 :windowtype "dock" diff --git a/user/configs/wayland/eww/default.nix b/user/configs/wayland/eww/default.nix index 7cb872e..210afeb 100644 --- a/user/configs/wayland/eww/default.nix +++ b/user/configs/wayland/eww/default.nix @@ -6,8 +6,9 @@ let in { + home.packages = [ pkgs.eww-wayland ]; + xdg.configFile."eww/eww.yuck".text = "${eww-config}"; xdg.configFile."eww/eww.scss".text = "${eww-stylesheet}"; - home.packages = [ pkgs.eww-git ]; } diff --git a/user/configs/wayland/eww/stylesheet.nix b/user/configs/wayland/eww/stylesheet.nix index 82b0e25..3d45a18 100644 --- a/user/configs/wayland/eww/stylesheet.nix +++ b/user/configs/wayland/eww/stylesheet.nix @@ -12,14 +12,15 @@ * { all: unset; //Unsets everything so you can style everything from scratch + + font-family: "JetBrainsMono Nerd Font"; + font-size: 12px; } //Global Styles .bar { background-color: $bg; color: $fg; - font-family: "JetBrainsMono Nerd Font"; - font-size: 12px; } .window { diff --git a/user/configs/wayland/hyprland/default.nix b/user/configs/wayland/hyprland/default.nix index 636efa5..a356c0b 100755 --- a/user/configs/wayland/hyprland/default.nix +++ b/user/configs/wayland/hyprland/default.nix @@ -145,7 +145,7 @@ in exec = ${pkgs.xorg.xrandr}/bin/xrandr --output ${rightMonitor.display} --primary exec = ${wob-voldaemon}/bin/wob-volumeindicator.sh; - exec = ${pkgs.eww-git}/bin/eww kill; ${pkgs.eww-git}/bin/eww open-many bar0 bar1 + exec = ${pkgs.eww-wayland}/bin/eww kill; ${pkgs.eww-wayland}/bin/eww open-many bar0 bar1 exec = pkill swww; sleep 2 && ${pkgs.swww}/bin/swww init && ${pkgs.swww}/bin/swww img $(cat ~/.cache/swww/wallpaper.txt) #Set cursor @@ -208,6 +208,8 @@ in bind = ${modKey} SHIFT, C, exec, hyprctl reload layerrule = blur, notifications + layerrule = ignorezero, notifications + layerrule = blur, gtk-layer-shell diff --git a/user/configs/xdg-mime.nix b/user/configs/xdg-mime.nix index b6aaf6e..66b8703 100755 --- a/user/configs/xdg-mime.nix +++ b/user/configs/xdg-mime.nix @@ -6,9 +6,11 @@ "inode/directory" = "org.kde.dolphin.desktop"; "text/plain" = "nvim.desktop"; - "image/jpeg" = "sxiv.desktop"; - "image/png" = "sxiv.desktop"; - "image/svg" = "sxiv.desktop"; + "image/jpeg" = "imv.desktop"; + "image/png" = "imv.desktop"; + "image/svg" = "imv.desktop"; + + "x-scheme-handler/nxm" = "modorganizer2-nxm-handler.desktop"; }; }; } diff --git a/user/home.nix b/user/home.nix index 0f2619e..fe89f95 100755 --- a/user/home.nix +++ b/user/home.nix @@ -25,14 +25,16 @@ bottles bottom calcurse + discord gamescope_git gimp gnome.gnome-boxes + gnome.gnome-settings-daemon gnome.gvfs gnome.seahorse - gnome.gnome-settings-daemon gnome.simple-scan heroic + imv jq libsForQt5.ark libsForQt5.dolphin @@ -50,20 +52,18 @@ protontricks qbittorrent qt5ct - sc-im samba + sc-im signal-desktop sshfs steam-run steamtinkerlaunch - sxiv thunderbird tldr twemoji-color-font vimv vulkan-tools vulkan-validation-layers - discord xdg-utils ];