diff --git a/home-config/home-configuration.scm b/home-config/home-configuration.scm index b89ff26..a3454cd 100644 --- a/home-config/home-configuration.scm +++ b/home-config/home-configuration.scm @@ -22,6 +22,8 @@ (ryan-config utils) (ryan-packages freedesktop) (ryan-packages calcurse) + (ryan-packages binaries) + (rosenthal packages binaries) (ryan-packages mozilla)) (define my-neovim @@ -127,7 +129,7 @@ ;"firefox" "signal-desktop" "git-lfs")) - (list my-neovim wl-mirror firefox-wrapped calcurse-fixed))) + (list my-neovim wl-mirror firefox-wrapped calcurse-fixed superfile-bin))) ;; Below is the list of Home services. To search for available ;; services, run 'guix home search KEYWORD' in a terminal. diff --git a/modules/ryan-packages/binaries.scm b/modules/ryan-packages/binaries.scm new file mode 100644 index 0000000..f05636d --- /dev/null +++ b/modules/ryan-packages/binaries.scm @@ -0,0 +1,55 @@ +(define-module (ryan-packages binaries) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix gexp) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system copy) + #:use-module (gnu packages base) + #:use-module (gnu packages bootstrap) + #:use-module (gnu packages compression) + #:use-module (gnu packages elf) + #:use-module (gnu packages gcc) + #:use-module (gnu packages glib)) + +(define-public superfile-bin + (package + (name "superfile-bin") + (version "1.1.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/yorukot/superfile" "/releases/download/v" + version "/superfile-linux-v" version "-amd64.tar.gz")) + (sha256 + (base32 + "1hnhkd6ihp0wcrn54ipyki500xmz1kapaj8sykg7ykh1vv8y6hmm")))) + (build-system copy-build-system) + (arguments + (list #:install-plan #~'((#$(string-append + "superfile-linux-v" (package-version this-package) "-amd64/spf") + "bin/spf")) + #:phases + #~(modify-phases %standard-phases + (delete 'strip) + (add-after 'install 'patch-elf + (lambda _ + (let ((spf (string-append #$output "/bin/spf"))) + (invoke "patchelf" "--set-interpreter" + (string-append #$(this-package-input "glibc") + #$(glibc-dynamic-linker)) + spf) + (invoke "patchelf" "--set-rpath" + (string-append (ungexp (this-package-input "gcc") + "lib") + "/lib") + spf))))))) + (supported-systems '("x86_64-linux")) + (native-inputs (list patchelf)) + (inputs (list `(,gcc "lib") glibc)) + (home-page "https://github.com/yorukot/superfile") + (synopsis "Pretty fancy and modern terminal file manager") + (description + "Terminal file-manager written in Go that is modern and extensible.") + (license license:expat))) + +superfile-bin diff --git a/modules/ryan-packages/wm.scm b/modules/ryan-packages/wm.scm index 3f951cc..407c5fb 100644 --- a/modules/ryan-packages/wm.scm +++ b/modules/ryan-packages/wm.scm @@ -97,7 +97,7 @@ (define-public hyprlock (package (name "hyprlock") - (version "0.2.0") + (version "0.3.0") (source (origin (method git-fetch) @@ -106,7 +106,7 @@ (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0vj8jfflc8zw769dqdqq7ms3dfafsirb2c0g37xsqkc4rzzri7nn")))) + (base32 "0w2a25hivn8xd8p05vc9xg57rd9siv12dwmr4skpqx4dcmxxbg5d")))) (build-system cmake-build-system) (native-inputs (list gcc-13 @@ -117,6 +117,7 @@ (list cairo pango libxkbcommon + libdrm hyprlang mesa wayland-protocols @@ -126,4 +127,4 @@ (synopsis "Screen locker for Hyprland") (description "Screen locker for hyprland."))) -waybar-new +hyprlock