commit ac28f7e59f8593dd34b6155957bb1e1b3fa52975
parent 48f7d54ab6df2acc51b679e44695bc76ee581696
Author: vin <git@vineetk.net>
Date: Wed, 23 Jul 2025 16:09:16 -0400
modify guix's st and dwm
just doing inherit didn't really work when changing the source
Diffstat:
1 file changed, 90 insertions(+), 4 deletions(-)
diff --git a/epistemia/packages/suckless.scm b/epistemia/packages/suckless.scm
@@ -1,9 +1,95 @@
(define-module (epistemia packages suckless)
- #:use-module (gnu packages suckless)
+ #:use-module (gnu packages fontutils)
+ #:use-module (gnu packages ncurses)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix utils)
#:export (vin-dwm))
(define-public vin-dwm
(package
- (inherit dwm)
- (name "dwm")
- (source (local-file "dwm" #:recursive? #t))))
+ (name "vin-dwm")
+ (version "6.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "/data/src/private/suckless/dwm")
+ (commit "904dc786815d3530f76e62ba3af4736e83370870")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1q07dnw33zr14nnih4ldx1aqmg5dxvp8fvj3qa0fi3qy312pfhfg"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f
+ #:make-flags (list (string-append "FREETYPEINC="
+ (assoc-ref %build-inputs "freetype")
+ "/include/freetype2"))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (substitute* "Makefile" (("\\$\\{CC\\}") "gcc"))
+ #t))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (invoke "make" "install"
+ (string-append "DESTDIR=" out) "PREFIX=")))))))
+ (inputs
+ (list freetype libx11 libxft libxinerama))
+ (home-page "https://dwm.suckless.org/")
+ (synopsis "Dynamic window manager")
+ (description
+ "dwm is a dynamic window manager for X. It manages windows in tiled,
+monocle and floating layouts. All of the layouts can be applied dynamically,
+optimising the environment for the application in use and the task performed.")
+ (license license:x11)))
+
+(define-public vin-st
+ (package
+ (name "vin-st")
+ (version "0.9.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "/data/src/private/suckless/st")
+ (commit "0b6ef824637c77e00b26369bfe77c3e3311f7eed")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ylqaarkkrqx26aiqcz4nhp68k6dmrqbhn7knx10d9j7v1vpjcnh"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no tests
+ #:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "TERMINFO="
+ (assoc-ref %outputs "out")
+ "/share/terminfo")
+ (string-append "PREFIX=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs
+ `(("libx11" ,libx11)
+ ("libxft" ,libxft)
+ ("fontconfig" ,fontconfig)
+ ("freetype" ,freetype)))
+ (native-inputs
+ (list ncurses ;provides tic program
+ pkg-config))
+ (home-page "https://st.suckless.org/")
+ (synopsis "Simple terminal emulator")
+ (description
+ "St implements a simple and lightweight terminal emulator. It
+implements 256 colors, most VT10X escape sequences, utf8, X11 copy/paste,
+antialiased fonts (using fontconfig), fallback fonts, resizing, and line
+drawing.")
+ (license (list license:x11
+ license:expat))))