summaryrefslogtreecommitdiff
path: root/modules/freya
diff options
context:
space:
mode:
Diffstat (limited to 'modules/freya')
-rw-r--r--modules/freya/packages/wm.scm171
-rw-r--r--modules/freya/system.scm176
2 files changed, 236 insertions, 111 deletions
diff --git a/modules/freya/packages/wm.scm b/modules/freya/packages/wm.scm
index f333fcb..0d355e4 100644
--- a/modules/freya/packages/wm.scm
+++ b/modules/freya/packages/wm.scm
@@ -12,6 +12,8 @@
#:use-module (gnu packages gl)
#:use-module (gnu packages linux)
#:use-module (gnu packages pciutils)
+ #:use-module (gnu packages image)
+ #:use-module (gnu packages glib)
#:use-module (guix download)
#:use-module (guix packages)
#:use-module (guix gexp)
@@ -39,6 +41,46 @@
(inputs (modify-inputs (package-inputs swaylock-effects) (delete "linux-pam")))))
+(define-public waybar-new
+ (package
+ (inherit waybar)
+ (name "waybar-new")
+ (version "0.10.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Alexays/Waybar")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04xd61ycn1nisq1s5ch14zkbsjcfcy6n29nkjn68s2ribmws0iid"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "--wrap-mode=nodownload" "-Dexperimental=true")))))
+
+
+(define cairo-for-hyprland
+ (package
+ (inherit cairo)
+ (name "cairo")
+ (version "1.18.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://cairographics.org/releases/cairo-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0r0by563s75xyzz0d0j1nmjqmdrk2x9agk7r57p3v8vqp4v0ffi4"))))
+ (build-system meson-build-system)
+ (arguments
+ (list #:tests? #f
+ #:glib-or-gtk? #t
+ #:configure-flags
+ #~(list "-Dspectre=disabled")))
+ (outputs '("out"))))
+
+
(define hwdata-for-hyprland
(package
(inherit hwdata)
@@ -63,22 +105,6 @@
"0yijzgg6rdsa68bz03sw0lcfa2nclv9m3as1cja50wkcyxim7x9v"))))))
-(define wayland-protocols-new
- (package
- (inherit wayland-protocols)
- (name "wayland-protocols")
- (version "1.36")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://gitlab.freedesktop.org/wayland/wayland-protocols"
- "/-/releases/" version "/downloads/"
- "wayland-protocols-" version ".tar.xz"))
- (sha256
- (base32
- "14kyxywpfkgpjpkrybs28q1s2prnz30k1b4zap5a3ybrbvh4vzbi"))))))
-
-
(define hyprland-unbundle-wlroots-patch
(origin
(method url-fetch)
@@ -141,25 +167,6 @@
(replace "hwdata" `(,hwdata-for-hyprland "out")))))))
-(define-public hyprland-new
- (package
- (inherit hyprland)
- (version "0.40.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/hyprwm/Hyprland"
- "/releases/download/v" version
- "/source-v" version ".tar.gz"))
- (patches (list hyprland-unbundle-wlroots-patch))
- (sha256
- (base32
- "0f4hs8qzmfmg4lr491b2inanb02xn4xa0gwb8a0ks3m64iwzx589"))))
- (inputs
- (modify-inputs
- (package-inputs hyprland)
- (append tomlplusplus)))))
-
-
(define-public hyprland-plugin-hy3
(package
(name "hyprland-plugin-hy3")
@@ -183,10 +190,10 @@
pango
gcc-13
libinput
- hyprland-new
hyprland-protocols
hyprwayland-scanner
hyprlang
+ hyprland
wayland
wlroots-for-hyprland))
(license license:gpl3)
@@ -224,10 +231,10 @@
(list pango
gcc-13
libinput
- hyprland-new
hyprland-protocols
hyprwayland-scanner
hyprlang
+ hyprland
wayland
wlroots-for-hyprland))
(license license:bsd-3)
@@ -253,25 +260,99 @@
(base32 "19cg8vj4sgz5pxib9m08af1lilay9bckjhlr6h333s014l7y09sw"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f))
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-egl
+ (lambda _
+ (substitute* (list "src/core/Egl.hpp"
+ "src/renderer/DMAFrame.cpp")
+ (("#include <EGL/eglext.h>" include)
+ (string-append include "\n#include <EGL/eglmesaext.h>\n")))
+ #t)))))
(native-inputs
(list gcc-13
pkg-config
- mesa-headers
- wayland))
+ mesa-headers))
(inputs
- (list cairo
+ (list cairo-for-hyprland
pango
libxkbcommon
hyprlang
mesa
- wayland-protocols
- linux-pam))
- (propagated-inputs
- (list libdrm
+ wayland-protocols-for-hyprland
+ wlroots-for-hyprland
+ linux-pam
+ libdrm-for-hyprland
libglvnd))
(home-page "https://github.com/hyprwm/hyprlock")
(license license:bsd-3)
(synopsis "Screen locker for Hyprland")
(description "Screen locker for hyprland."))))
+
+(define-public hyprpaper
+ (package
+ (name "hyprpaper")
+ (version "0.7.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/hyprwm/hyprpaper"
+ "/archive/refs/tags/v" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d23nsj5hzyxwvhkg9a7x1b8jgyqwzad91zb1894jnxr2d844h28"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f))
+ (native-inputs
+ (list gcc-13
+ pkg-config))
+ (inputs
+ (list hyprlang
+ wayland-protocols-for-hyprland
+ wayland
+ cairo-for-hyprland
+ libjpeg-turbo
+ libwebp
+ mesa
+ pango
+ libglvnd))
+ (home-page "https://github.com/hyprwm/hyprpaper")
+ (license license:bsd-3)
+ (synopsis "Hyprpaper is a blazing fast wayland wallpaper utility with IPC controls.")
+ (description "Hyprpaper is a blazing fast wayland wallpaper utility with IPC controls.")))
+
+
+(define-public hypridle
+ (package
+ (name "hypridle")
+ (version "0.1.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/hyprwm/hypridle"
+ "/archive/refs/tags/v" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ybwip7yq9q569naz5bnrvcdz99648c4pln2zi30z21y333hpas0"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f))
+ (native-inputs
+ (list gcc-13
+ pkg-config))
+ (inputs
+ (list hyprlang
+ wayland-protocols-for-hyprland
+ wayland
+ sdbus-c++))
+ (home-page "https://github.com/hyprwm/hypridle")
+ (license license:bsd-3)
+ (synopsis "Hyprland's idle daemon ")
+ (description "Hyprland's idle daemon ")))
+
+
+
+
+
+
diff --git a/modules/freya/system.scm b/modules/freya/system.scm
index 6ff5d19..1432b5a 100644
--- a/modules/freya/system.scm
+++ b/modules/freya/system.scm
@@ -51,7 +51,9 @@
(define-public base-operating-system
(operating-system
(kernel linux)
- (firmware (list linux-firmware amd-microcode sof-firmware))
+ (firmware (list linux-firmware
+ amd-microcode
+ sof-firmware))
(locale "en_US.utf8")
(timezone "America/New_York")
(keyboard-layout (keyboard-layout "us"))
@@ -64,78 +66,120 @@
(group "users")
(home-directory "/home/freya")
(shell (file-append zsh "/bin/zsh"))
- (supplementary-groups '("wheel" "audio" "lp" "docker" "plugdev" "libvirt" "kvm" "netdev" "video" "tty")))
+ (supplementary-groups '("wheel"
+ "audio"
+ "lp"
+ "docker"
+ "plugdev"
+ "libvirt"
+ "kvm"
+ "netdev"
+ "video"
+ "tty")))
%base-user-accounts))
- (packages (append (map specification->package (list "swayfx"
- "swaybg"
- "wlogout"
- "cage"
- "sof-firmware"
- "amd-microcode"
- "alsa-utils"
- "chrony"
- "swayidle"
- "dconf"
- "alacritty"
- "kitty"
- "gnome-themes-extra"
- "adwaita-icon-theme"
- "hicolor-icon-theme"
- "git"
- "gvfs"
- "gnupg"
- "light"
- "waybar"
- "avahi"
- "mako"
- "grim"
- "slurp"
- "wl-clipboard"
- "bluez"
- "blueman"
- "opendoas"
- "wireguard-tools"
- "xdg-desktop-portal"
- "xdg-desktop-portal-wlr"
- "xdg-desktop-portal-hyprland"
- "v4l2loopback-linux-module"
- "docker"
- "linux-pam"
- "pulseaudio"
- "libx11"
- "xorg-server-xwayland"
- "fprintd"
- "wireplumber"
- "qemu"
- "spice"
- "xf86-video-qxl"
- "zsh"
- "mesa"
- "mesa-utils"
- "glu"
- "vulkan-loader"
- "vulkan-validationlayers"
- "vulkan-tools"
- "vulkan-headers"
- "spirv-tools"
- "spirv-headers"
- "sdl2"
- "openal"
- "freealut"
- "wxwidgets"
- "libpcap"
- "v4l2loopback-linux-module"
- "neovim"
- "gtk+"
- "font-jetbrains-mono"))
+ (packages (append (specifications->packages (list ; desktop
+ "swayfx"
+ "swaybg"
+ "swayidle"
+ "hyprland"
+ "cage"
+ "libnotify"
+
+ ; gtk
+ "wxwidgets"
+ "gtk+"
+ "dconf"
+ "gnome-themes-extra"
+ "adwaita-icon-theme"
+ "hicolor-icon-theme"
+
+ ; wayland x11
+ "wl-clipboard"
+ "libx11"
+ "xorg-server-xwayland"
+ "xf86-video-qxl"
+
+ ; video audio
+ "mesa"
+ "mesa-utils"
+ "glu"
+ "libglvnd"
+ "vulkan-loader"
+ "vulkan-validationlayers"
+ "vulkan-tools"
+ "vulkan-headers"
+ "spirv-tools"
+ "spirv-headers"
+ "sdl2"
+ "openal"
+ "freealut"
+
+ ; xdg
+ "xdg-utils"
+ "xdg-desktop-portal"
+ "xdg-desktop-portal-wlr"
+ "xdg-desktop-portal-hyprland"
+
+ ; firmware
+ "sof-firmware"
+ "amd-microcode"
+ "v4l2loopback-linux-module"
+
+ ; needed programs
+ "qemu"
+ "pulseaudio"
+ "alsa-utils"
+ "neovim"
+
+ ; basic utils
+ "curl"
+ "htop"
+ "git"
+ "zsh"
+ "opendoas"
+ "linux-pam"
+ "bind:utils"
+ "unzip"
+ "p7zip"
+ "acpi"
+ "tree"
+ "rlwrap"
+ "netcat"
+ "ripgrep"
+ "ncurses"
+ "jq"
+ "openssl"
+
+ ; system daemons
+ "chrony"
+ "docker"
+ "avahi"
+ "gnupg"
+ "pinentry"
+ "light"
+ "brightnessctl"
+ "bluez"
+ "blueman"
+ "wireguard-tools"
+ "fprintd"
+ "wireplumber"
+ "libpcap"
+
+ ; fonts
+ "font-fira-mono"
+ "font-google-noto-sans-cjk"
+ "font-jetbrains-mono"
+ "font-dejavu"))
(list swaylock-effects-new
+ waybar-new
virt-manager-new
freya-ca-certs
- hyprland-new
hyprland-plugin-hy3
hyprland-plugin-hyprbars
- hyprlock)
+ hyprlock
+ hyprpaper
+ hypridle)
%my-base-packages))
;; Below is the list of system services. TO search for available