.
This commit is contained in:
parent
e364049e5d
commit
20a811bbc2
3 changed files with 382 additions and 158 deletions
|
@ -21,7 +21,6 @@
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages build-tools)
|
#:use-module (gnu packages build-tools)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages cmake)
|
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages cpio)
|
#:use-module (gnu packages cpio)
|
||||||
#:use-module (gnu packages docbook)
|
#:use-module (gnu packages docbook)
|
||||||
|
@ -51,9 +50,10 @@
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module (gnu packages wm)
|
#:use-module (gnu packages wm)
|
||||||
#:use-module (gnu packages xorg))
|
#:use-module (gnu packages xorg)
|
||||||
|
#:use-module ((zilti packages utilities) #:prefix utils:))
|
||||||
|
|
||||||
(define-public tomlplusplus
|
(define-public tomlplusplus ;; SENT to Guix
|
||||||
(package
|
(package
|
||||||
(name "tomlplusplus")
|
(name "tomlplusplus")
|
||||||
(version "3.4.0")
|
(version "3.4.0")
|
||||||
|
@ -67,7 +67,7 @@
|
||||||
"1hvbifzcc97r9jwjzpnq31ynqnj5y93cjz4frmgddnkg8hxmp6w7"))))
|
"1hvbifzcc97r9jwjzpnq31ynqnj5y93cjz4frmgddnkg8hxmp6w7"))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python cmake))
|
(list python utils:cmake))
|
||||||
(arguments
|
(arguments
|
||||||
(list #:tests? #f))
|
(list #:tests? #f))
|
||||||
(home-page "https://marzer.github.io/tomlplusplus/")
|
(home-page "https://marzer.github.io/tomlplusplus/")
|
||||||
|
@ -75,30 +75,30 @@
|
||||||
(description "Header-only TOML config file parser and serializer for C++17.")
|
(description "Header-only TOML config file parser and serializer for C++17.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define udis86-for-hyprland
|
(define-public libliftoff
|
||||||
(let ((revision "186")
|
(package
|
||||||
(commit "5336633af70f3917760a6d441ff02d93477b0c86"))
|
(name "libliftoff")
|
||||||
(package
|
(version "0.4.1")
|
||||||
(name "udis86")
|
(source (origin
|
||||||
(version (git-version "1.7.2" revision commit))
|
(method git-fetch)
|
||||||
(source (origin
|
(uri (git-reference
|
||||||
(method git-fetch)
|
(url "https://gitlab.freedesktop.org/emersion/libliftoff")
|
||||||
(uri (git-reference
|
(commit (string-append "v" version))))
|
||||||
(url "https://github.com/canihavesomecoffee/udis86")
|
(sha256
|
||||||
(commit commit)))
|
(base32
|
||||||
(file-name (git-file-name name version))
|
"1ikjp638d655ycaqkdnzhb12d29kkbb3a46lqhbhsfc8vsqj3z1l"))))
|
||||||
(sha256
|
(build-system meson-build-system)
|
||||||
(base32
|
(native-inputs
|
||||||
"0y5z1169wff578jylpafsww4px4y6gickhcs885a9c660d8xs9qy"))))
|
(list utils:cmake
|
||||||
(build-system gnu-build-system)
|
pkg-config))
|
||||||
(native-inputs (list autoconf automake libtool python-minimal-wrapper))
|
(inputs
|
||||||
(home-page "https://github.com/canihavesomecoffee/udis86")
|
(list libdrm))
|
||||||
(synopsis "Disassembler Library for x86 and x86-64")
|
(home-page "https://gitlab.freedesktop.org/emersion/libliftoff/")
|
||||||
(description
|
(synopsis "Lightweight KMS plane library.")
|
||||||
"Udis86 is a disassembler for the x86 and x86-64 class of instruction
|
(description "libliftoff eases the use of KMS planes from userspace without standing in your
|
||||||
set architectures. It consists of a C library called @code{libudis86} and a
|
way. Users create \"virtual planes\" called layers, set KMS properties on them,
|
||||||
command line tool called @code{udcli} that incorporates the library.")
|
and libliftoff will pick hardware planes for these layers if possible.")
|
||||||
(license license:bsd-2))))
|
(license license:expat)))
|
||||||
|
|
||||||
(define cairo-for-hyprland
|
(define cairo-for-hyprland
|
||||||
(package
|
(package
|
||||||
|
@ -143,14 +143,14 @@ command line tool called @code{udcli} that incorporates the library.")
|
||||||
(base32
|
(base32
|
||||||
"1sxgvis0abkymc02nhx2svm60myiq3shvy759sphpxl5rp52g6y5"))))))
|
"1sxgvis0abkymc02nhx2svm60myiq3shvy759sphpxl5rp52g6y5"))))))
|
||||||
|
|
||||||
(define-public wlroots-for-hyprland
|
(define-public wlroots-hyprland
|
||||||
(let ((base wlroots)
|
(let ((base wlroots)
|
||||||
(revision "255")
|
(revision "255")
|
||||||
(commit "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b"))
|
(commit "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b"))
|
||||||
(package
|
(package
|
||||||
(inherit base)
|
(inherit base)
|
||||||
(name "wlroots")
|
(name "wlroots")
|
||||||
(version (git-version "0.18.0" revision commit))
|
(version (git-version "0.19.0" revision commit))
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
|
@ -184,15 +184,6 @@ command line tool called @code{udcli} that incorporates the library.")
|
||||||
(base32
|
(base32
|
||||||
"0yijzgg6rdsa68bz03sw0lcfa2nclv9m3as1cja50wkcyxim7x9v"))))))
|
"0yijzgg6rdsa68bz03sw0lcfa2nclv9m3as1cja50wkcyxim7x9v"))))))
|
||||||
|
|
||||||
(define hyprland-unbundle-wlroots-patch
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "https://github.com/hyprwm/Hyprland" "/raw/"
|
|
||||||
"c5e28ebcfe00a510922779b2c568cfa52a317445"
|
|
||||||
"/nix/patches/meson-build.patch"))
|
|
||||||
(sha256
|
|
||||||
(base32 "00i7c98ignfgkk3x1r1masmlj92xzb8cdb7nyfhivbfkdlfyzgpj"))))
|
|
||||||
|
|
||||||
(define-public hyprcursor
|
(define-public hyprcursor
|
||||||
(package
|
(package
|
||||||
(inherit rosenthal:hyprcursor)
|
(inherit rosenthal:hyprcursor)
|
||||||
|
@ -210,83 +201,75 @@ command line tool called @code{udcli} that incorporates the library.")
|
||||||
(modify-inputs (package-inputs rosenthal:hyprcursor)
|
(modify-inputs (package-inputs rosenthal:hyprcursor)
|
||||||
(append tomlplusplus)))))
|
(append tomlplusplus)))))
|
||||||
|
|
||||||
|
(define-public hyprlang
|
||||||
|
(package
|
||||||
|
(inherit rosenthal:hyprlang)
|
||||||
|
(name "hyprlang")
|
||||||
|
(version "0.5.1")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/hyprwm/hyprlang")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1vgvbnd6l5iymb66zdcslhs4w20a7i013qmf4jnxx10z1p8rfkg7"))))))
|
||||||
|
|
||||||
(define-public hyprland
|
(define-public hyprland
|
||||||
(package
|
(package
|
||||||
(name "hyprland")
|
(name "hyprland")
|
||||||
(version "0.38.1")
|
(version "0.39.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method git-fetch)
|
||||||
(uri (string-append "https://github.com/hyprwm/Hyprland"
|
(uri (git-reference
|
||||||
"/releases/download/v" version
|
(url "https://github.com/hyprwm/hyprland")
|
||||||
"/source-v" version ".tar.gz"))
|
(commit (string-append "v" version))
|
||||||
(modules '((guix build utils)))
|
(recursive? #t)))
|
||||||
(patches (list hyprland-unbundle-wlroots-patch))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1avkzdcgyk65p44nwl9w8sv4iq5xs13i7i66jsya9z06q1f3d1hs"))))
|
"0v6xadkrl138irq43s7y747krdirqz9fskw74jbizs5nij1qm9qi"))))
|
||||||
(build-system meson-build-system)
|
(build-system cmake-build-system )
|
||||||
(arguments
|
(arguments
|
||||||
(list #:build-type "release"
|
(list #:build-type "release"
|
||||||
|
#:cmake utils:cmake
|
||||||
#:parallel-build? #t
|
#:parallel-build? #t
|
||||||
#:configure-flags #~(list "-Dxwayland=enabled")
|
#:configure-flags #~(list "-DNO_XWAYLAND=1"
|
||||||
#:phases
|
"-DNO_SYSTEMD=1")
|
||||||
#~(modify-phases %standard-phases
|
#:phases #~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'fix-path
|
(delete 'check))))
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(substitute* (find-files "src" "\\.cpp$")
|
|
||||||
(("/usr/local(/bin/Hyprland)" _ path)
|
|
||||||
(string-append #$output path))
|
|
||||||
(("/usr") #$output)
|
|
||||||
(("(execAndGet\\(\")\\<(cat|fc-list|lspci)\\>"
|
|
||||||
_ pre cmd)
|
|
||||||
(string-append
|
|
||||||
pre (search-input-file
|
|
||||||
inputs (string-append "bin/" cmd))))
|
|
||||||
(("\\<cc\\>") (search-input-file inputs "bin/gcc"))
|
|
||||||
;; NOTE: Add binutils to inputs will override ld-wrapper.
|
|
||||||
(("(execAndGet\\(\\(\")\\<nm\\>" _ pre)
|
|
||||||
(string-append pre #$binutils "/bin/nm"))
|
|
||||||
(("\\<(addr2line|objcopy)\\>" _ cmd)
|
|
||||||
(string-append #$binutils "/bin/" cmd)))))
|
|
||||||
(add-after 'build 'install-headers
|
|
||||||
(lambda _
|
|
||||||
(copy-recursively
|
|
||||||
"protocols" "../hyprland-source/protocols")
|
|
||||||
(invoke "mkdir" "../hyprland-source/build")
|
|
||||||
(copy-file
|
|
||||||
"meson-private/hyprland.pc" "../hyprland-source/build/hyprland.pc")
|
|
||||||
(invoke "find" "." "-name" "hyprland.pc")
|
|
||||||
(with-directory-excursion
|
|
||||||
"../hyprland-source"
|
|
||||||
(invoke "sed" "-i" "/wlroots/d" "Makefile")
|
|
||||||
(invoke "make"
|
|
||||||
(string-append "PREFIX=" #$output)
|
|
||||||
"installheaders")))))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list cmake
|
(list cpio
|
||||||
cpio
|
meson
|
||||||
|
ninja
|
||||||
gcc-13
|
gcc-13
|
||||||
|
git
|
||||||
|
python-wrapper
|
||||||
jq
|
jq
|
||||||
pkg-config
|
pkg-config))
|
||||||
rosenthal:hyprland-protocols))
|
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list
|
(list
|
||||||
eglexternalplatform
|
egl-wayland
|
||||||
egl-wayland))
|
libglvnd))
|
||||||
(inputs
|
(inputs
|
||||||
(list cairo-for-hyprland
|
(list cairo-for-hyprland
|
||||||
|
eudev
|
||||||
gcc-13
|
gcc-13
|
||||||
|
hwdata-for-hyprland
|
||||||
hyprcursor
|
hyprcursor
|
||||||
|
hyprlang
|
||||||
|
libdisplay-info
|
||||||
|
libdrm-for-hyprland
|
||||||
|
libinput-minimal-1.24.0
|
||||||
|
libliftoff
|
||||||
|
libseat
|
||||||
libxcb
|
libxcb
|
||||||
rosenthal:hyprland-protocols
|
libxkbcommon
|
||||||
rosenthal:hyprlang
|
mesa
|
||||||
pango
|
pango
|
||||||
pciutils
|
pciutils
|
||||||
tomlplusplus
|
tomlplusplus
|
||||||
udis86-for-hyprland
|
wayland
|
||||||
wlroots-for-hyprland
|
wayland-protocols-for-hyprland))
|
||||||
xcb-util-wm
|
|
||||||
xorg-server-xwayland))
|
|
||||||
(home-page "https://hyprland.org")
|
(home-page "https://hyprland.org")
|
||||||
(synopsis "Dynamic tiling Wayland compositor based on wlroots")
|
(synopsis "Dynamic tiling Wayland compositor based on wlroots")
|
||||||
(description
|
(description
|
||||||
|
@ -314,18 +297,18 @@ more.")
|
||||||
#:configure-flags #~(list
|
#:configure-flags #~(list
|
||||||
"-Dcpp_std=none"
|
"-Dcpp_std=none"
|
||||||
(string-append "-Dcpp_args=-std=gnu++2b"
|
(string-append "-Dcpp_args=-std=gnu++2b"
|
||||||
" -I" #$(file-append wlroots-for-hyprland "/include")))
|
" -I" #$(file-append wlroots-hyprland "/include")))
|
||||||
#:phases #~(modify-phases %standard-phases
|
#:phases #~(modify-phases %standard-phases
|
||||||
(delete 'check))))
|
(delete 'check))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list cmake
|
(list utils:cmake
|
||||||
gcc-13
|
gcc-13
|
||||||
pkg-config
|
pkg-config
|
||||||
wlroots-for-hyprland))
|
wlroots-hyprland))
|
||||||
(inputs
|
(inputs
|
||||||
(list cairo-for-hyprland
|
(list cairo-for-hyprland
|
||||||
hyprland
|
hyprland
|
||||||
rosenthal:hyprlang
|
hyprlang
|
||||||
libdrm-for-hyprland
|
libdrm-for-hyprland
|
||||||
libinput
|
libinput
|
||||||
pixman))
|
pixman))
|
||||||
|
@ -372,12 +355,12 @@ more.")
|
||||||
mesa
|
mesa
|
||||||
rosenthal:hyprland-protocols
|
rosenthal:hyprland-protocols
|
||||||
wayland-protocols-for-hyprland
|
wayland-protocols-for-hyprland
|
||||||
wlroots-for-hyprland
|
wlroots-hyprland
|
||||||
file
|
file
|
||||||
libglvnd
|
libglvnd
|
||||||
libjpeg-turbo
|
libjpeg-turbo
|
||||||
libwebp
|
libwebp
|
||||||
rosenthal:hyprlang
|
hyprlang
|
||||||
pango
|
pango
|
||||||
wayland))
|
wayland))
|
||||||
(home-page "https://github.com/hyprwm/hyprpaper")
|
(home-page "https://github.com/hyprwm/hyprpaper")
|
||||||
|
@ -406,7 +389,7 @@ more.")
|
||||||
(list gcc-13
|
(list gcc-13
|
||||||
pkg-config))
|
pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list rosenthal:hyprlang
|
(list hyprlang
|
||||||
sdbus-c++
|
sdbus-c++
|
||||||
wayland-protocols-for-hyprland
|
wayland-protocols-for-hyprland
|
||||||
wayland))
|
wayland))
|
||||||
|
@ -455,7 +438,7 @@ more.")
|
||||||
libglvnd
|
libglvnd
|
||||||
libxkbcommon
|
libxkbcommon
|
||||||
wayland-protocols-for-hyprland
|
wayland-protocols-for-hyprland
|
||||||
rosenthal:hyprlang))
|
hyprlang))
|
||||||
(home-page "https://github.com/hyprwm/hyprlock")
|
(home-page "https://github.com/hyprwm/hyprlock")
|
||||||
(synopsis "Hyprland's GPU-accelerated screen locking utility")
|
(synopsis "Hyprland's GPU-accelerated screen locking utility")
|
||||||
(description "Hyprland's simple, yet multi-threaded and GPU-accelerated screen locking utility.")
|
(description "Hyprland's simple, yet multi-threaded and GPU-accelerated screen locking utility.")
|
||||||
|
@ -495,7 +478,7 @@ more.")
|
||||||
grim
|
grim
|
||||||
hyprland
|
hyprland
|
||||||
rosenthal:hyprland-protocols
|
rosenthal:hyprland-protocols
|
||||||
rosenthal:hyprlang
|
hyprlang
|
||||||
mesa
|
mesa
|
||||||
pipewire
|
pipewire
|
||||||
qtwayland
|
qtwayland
|
||||||
|
|
|
@ -1,14 +1,24 @@
|
||||||
(define-module
|
(define-module
|
||||||
(zilti packages utilities)
|
(zilti packages utilities)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(srfi srfi-1)
|
||||||
|
#:use-module
|
||||||
(guix download)
|
(guix download)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(guix git-download)
|
||||||
|
#:use-module
|
||||||
(guix gexp)
|
(guix gexp)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(guix search-paths)
|
||||||
|
#:use-module
|
||||||
(guix packages)
|
(guix packages)
|
||||||
#:use-module
|
#:use-module
|
||||||
(guix utils)
|
(guix utils)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(guix build-system cmake)
|
||||||
|
#:use-module
|
||||||
|
(guix build-system gnu)
|
||||||
|
#:use-module
|
||||||
(guix build-system trivial)
|
(guix build-system trivial)
|
||||||
#:use-module
|
#:use-module
|
||||||
(guix build-system glib-or-gtk)
|
(guix build-system glib-or-gtk)
|
||||||
|
@ -24,10 +34,18 @@
|
||||||
#:use-module
|
#:use-module
|
||||||
(gnu packages bison)
|
(gnu packages bison)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(gnu packages cmake)
|
||||||
|
#:use-module
|
||||||
(gnu packages compression)
|
(gnu packages compression)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(gnu packages cpp)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages crypto)
|
||||||
|
#:use-module
|
||||||
(gnu packages curl)
|
(gnu packages curl)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(gnu packages file)
|
||||||
|
#:use-module
|
||||||
(gnu packages freedesktop)
|
(gnu packages freedesktop)
|
||||||
#:use-module
|
#:use-module
|
||||||
(gnu packages gettext)
|
(gnu packages gettext)
|
||||||
|
@ -40,8 +58,12 @@
|
||||||
#:use-module
|
#:use-module
|
||||||
(gnu packages gtk)
|
(gnu packages gtk)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(gnu packages libevent)
|
||||||
|
#:use-module
|
||||||
(gnu packages linux)
|
(gnu packages linux)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(gnu packages ncurses)
|
||||||
|
#:use-module
|
||||||
(gnu packages networking)
|
(gnu packages networking)
|
||||||
#:use-module
|
#:use-module
|
||||||
(gnu packages package-management)
|
(gnu packages package-management)
|
||||||
|
@ -54,6 +76,12 @@
|
||||||
#:use-module
|
#:use-module
|
||||||
(gnu packages python-build)
|
(gnu packages python-build)
|
||||||
#:use-module
|
#:use-module
|
||||||
|
(gnu packages serialization)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages sphinx)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages texinfo)
|
||||||
|
#:use-module
|
||||||
(gnu packages tls)
|
(gnu packages tls)
|
||||||
#:use-module
|
#:use-module
|
||||||
(gnu packages virtualization)
|
(gnu packages virtualization)
|
||||||
|
@ -65,59 +93,57 @@
|
||||||
|
|
||||||
(define-public process-compose
|
(define-public process-compose
|
||||||
(package
|
(package
|
||||||
(name "process-compose")
|
(name "process-compose")
|
||||||
(version "0.88.0")
|
(version "0.88.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch/tarbomb)
|
(method url-fetch/tarbomb)
|
||||||
(uri
|
(uri
|
||||||
(string-append "https://github.com/F1bonacc1/process-compose/releases/download/v" version "/process-compose_linux_amd64.tar.gz"))
|
(string-append "https://github.com/F1bonacc1/process-compose/releases/download/v" version "/process-compose_linux_amd64.tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1fd6pb4gcja48xkxwb16vax884m9c6hddcnxgsvm4c8khfd082v0"))))
|
"1fd6pb4gcja48xkxwb16vax884m9c6hddcnxgsvm4c8khfd082v0"))))
|
||||||
(build-system trivial-build-system)
|
(build-system trivial-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:modules
|
#:modules
|
||||||
'((guix build utils))
|
'((guix build utils))
|
||||||
#:builder #~(let*
|
#:builder #~(let*
|
||||||
((source
|
((source
|
||||||
(assoc-ref %build-inputs "source"))
|
(assoc-ref %build-inputs "source"))
|
||||||
(output
|
(output
|
||||||
(assoc-ref %outputs "out"))
|
(assoc-ref %outputs "out"))
|
||||||
(out-bin
|
(out-bin
|
||||||
(string-append output "/bin")))
|
(string-append output "/bin")))
|
||||||
(use-modules
|
(use-modules
|
||||||
(guix build utils))
|
(guix build utils))
|
||||||
(install-file
|
(install-file
|
||||||
(string-append source "/process-compose")
|
(string-append source "/process-compose")
|
||||||
out-bin))))
|
out-bin))))
|
||||||
(home-page "https://f1bonacc1.github.io/process-compose")
|
(home-page "https://f1bonacc1.github.io/process-compose")
|
||||||
(synopsis "Scheduler and orchestrator for processes")
|
(synopsis "Scheduler and orchestrator for processes")
|
||||||
(description "Process Compose is a simple and flexible scheduler and orchestrator
|
(description "Process Compose is a simple and flexible scheduler and orchestrator
|
||||||
to manage non-containerized applications.")
|
to manage non-containerized applications.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public flatpak
|
(define-public flatpak
|
||||||
(package
|
(package
|
||||||
(name "flatpak")
|
(name "flatpak")
|
||||||
(version "1.14.5")
|
(version "1.14.5")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
(string-append "https://github.com/flatpak/flatpak/releases/download/"
|
(string-append "https://github.com/flatpak/flatpak/releases/download/"
|
||||||
version "/flatpak-" version ".tar.xz"))
|
version "/flatpak-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1b7z4wzh2zgphcal95vj4x7wbr9s89p2a4c0l0g4w4xcwx6ccw2v"))
|
"1b7z4wzh2zgphcal95vj4x7wbr9s89p2a4c0l0g4w4xcwx6ccw2v"))
|
||||||
(patches
|
(patches
|
||||||
(search-patches "flatpak-fix-path.patch"))))
|
(search-patches "flatpak-fix-path.patch"))))
|
||||||
|
|
||||||
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
|
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
|
||||||
;; find the TLS backend in glib-networking.
|
;; find the TLS backend in glib-networking.
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
|
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
|
@ -136,23 +162,31 @@ to manage non-containerized applications.")
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'fix-tests
|
(add-after 'unpack 'fix-tests
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda*
|
||||||
|
(#:key inputs #:allow-other-keys)
|
||||||
(copy-recursively
|
(copy-recursively
|
||||||
(search-input-directory inputs "lib/locale")
|
(search-input-directory inputs "lib/locale")
|
||||||
"/tmp/locale")
|
"/tmp/locale")
|
||||||
(for-each make-file-writable (find-files "/tmp"))
|
(for-each make-file-writable
|
||||||
|
(find-files "/tmp"))
|
||||||
(substitute* "tests/make-test-runtime.sh"
|
(substitute* "tests/make-test-runtime.sh"
|
||||||
(("cp `which.*") "echo guix\n")
|
(("cp `which.*")
|
||||||
|
"echo guix\n")
|
||||||
(("cp -r /usr/lib/locale/C\\.\\*")
|
(("cp -r /usr/lib/locale/C\\.\\*")
|
||||||
(string-append "mkdir ${DIR}/usr/lib/locale/en_US; \
|
(string-append "mkdir ${DIR}/usr/lib/locale/en_US; \
|
||||||
cp -r /tmp/locale/*/en_US.*")))
|
cp -r /tmp/locale/*/en_US.*")))
|
||||||
(substitute* "tests/libtest.sh"
|
(substitute* "tests/libtest.sh"
|
||||||
(("/bin/kill") (which "kill"))
|
(("/bin/kill")
|
||||||
(("/usr/bin/python3") (which "python3")))
|
(which "kill"))
|
||||||
|
(("/usr/bin/python3")
|
||||||
|
(which "python3")))
|
||||||
#t))
|
#t))
|
||||||
(add-after 'unpack 'p11-kit-fix
|
(add-after 'unpack 'p11-kit-fix
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda*
|
||||||
(let ((p11-path (search-input-file inputs "/bin/p11-kit")))
|
(#:key inputs #:allow-other-keys)
|
||||||
|
(let
|
||||||
|
((p11-path
|
||||||
|
(search-input-file inputs "/bin/p11-kit")))
|
||||||
(substitute* "session-helper/flatpak-session-helper.c"
|
(substitute* "session-helper/flatpak-session-helper.c"
|
||||||
(("\"p11-kit\",")
|
(("\"p11-kit\",")
|
||||||
(string-append "\"" p11-path "\","))
|
(string-append "\"" p11-path "\","))
|
||||||
|
@ -162,7 +196,8 @@ cp -r /tmp/locale/*/en_US.*")))
|
||||||
;; Many tests fail for unknown reasons, so we just run a few basic
|
;; Many tests fail for unknown reasons, so we just run a few basic
|
||||||
;; tests.
|
;; tests.
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda* (#:key tests? #:allow-other-keys)
|
(lambda*
|
||||||
|
(#:key tests? #:allow-other-keys)
|
||||||
(when tests?
|
(when tests?
|
||||||
(setenv "HOME" "/tmp")
|
(setenv "HOME" "/tmp")
|
||||||
(invoke "make" "check"
|
(invoke "make" "check"
|
||||||
|
@ -170,9 +205,10 @@ cp -r /tmp/locale/*/en_US.*")))
|
||||||
testcommon")))))))
|
testcommon")))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list bison
|
(list bison
|
||||||
dbus ; for dbus-daemon
|
dbus ; for dbus-daemon
|
||||||
gettext-minimal
|
gettext-minimal
|
||||||
`(,glib "bin") ; for glib-mkenums + gdbus-codegen
|
`(,glib "bin")
|
||||||
|
; for glib-mkenums + gdbus-codegen
|
||||||
(libc-utf8-locales-for-target)
|
(libc-utf8-locales-for-target)
|
||||||
gobject-introspection
|
gobject-introspection
|
||||||
libcap
|
libcap
|
||||||
|
@ -203,10 +239,158 @@ cp -r /tmp/locale/*/en_US.*")))
|
||||||
util-linux
|
util-linux
|
||||||
xdg-dbus-proxy
|
xdg-dbus-proxy
|
||||||
zstd))
|
zstd))
|
||||||
(propagated-inputs (list glib-networking gnupg gsettings-desktop-schemas))
|
(propagated-inputs
|
||||||
|
(list glib-networking gnupg gsettings-desktop-schemas))
|
||||||
(home-page "https://flatpak.org")
|
(home-page "https://flatpak.org")
|
||||||
(synopsis "System for building, distributing, and running sandboxed desktop
|
(synopsis "System for building, distributing, and running sandboxed desktop
|
||||||
applications")
|
applications")
|
||||||
(description "Flatpak is a system for building, distributing, and running
|
(description "Flatpak is a system for building, distributing, and running
|
||||||
sandboxed desktop applications on GNU/Linux.")
|
sandboxed desktop applications on GNU/Linux.")
|
||||||
(license license:lgpl2.1+)))
|
(license license:lgpl2.1+)))
|
||||||
|
|
||||||
|
;;;; CMake
|
||||||
|
|
||||||
|
;; Build phases shared between 'cmake-bootstrap' and the later variants
|
||||||
|
;; that use cmake-build-system.
|
||||||
|
#;
|
||||||
|
(define
|
||||||
|
(%common-build-phases)
|
||||||
|
`((add-after 'unpack 'split-package
|
||||||
|
;; Remove files that have been packaged in other package recipes.
|
||||||
|
(lambda _
|
||||||
|
(delete-file "Auxiliary/cmake-mode.el")
|
||||||
|
(substitute* "Auxiliary/CMakeLists.txt"
|
||||||
|
((".*cmake-mode.el.*")
|
||||||
|
""))))
|
||||||
|
,@(if
|
||||||
|
(target-x86-32?)
|
||||||
|
'((add-after 'unpack 'skip-cpack-txz-test
|
||||||
|
(lambda _
|
||||||
|
;; In 'RunCMake.CPack_TXZ', the 'TXZ/THREADED_ALL' test
|
||||||
|
;; would occasionally fail on i686 with "Internal error
|
||||||
|
;; initializing compression library: Cannot allocate
|
||||||
|
;; memory": <https://issues.guix.gnu.org/50617>. Skip it.
|
||||||
|
(substitute* "Tests/RunCMake/CPack/RunCMakeTest.cmake"
|
||||||
|
(("THREADED_ALL \"TXZ;DEB\"")
|
||||||
|
"THREADED_ALL \"DEB\"")))))
|
||||||
|
'())
|
||||||
|
(add-before 'configure 'patch-bin-sh
|
||||||
|
(lambda _
|
||||||
|
;; Replace "/bin/sh" by the right path in... a lot of
|
||||||
|
;; files.
|
||||||
|
(substitute*
|
||||||
|
'("Modules/CompilerId/Xcode-3.pbxproj.in"
|
||||||
|
"Modules/Internal/CPack/CPack.RuntimeScript.in"
|
||||||
|
"Source/cmGlobalXCodeGenerator.cxx"
|
||||||
|
"Source/cmLocalUnixMakefileGenerator3.cxx"
|
||||||
|
"Source/cmExecProgramCommand.cxx"
|
||||||
|
"Tests/CMakeLists.txt"
|
||||||
|
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
|
||||||
|
(("/bin/sh")
|
||||||
|
(which "sh")))))))
|
||||||
|
|
||||||
|
;;; The "user-facing" CMake, now with manuals and HTML documentation.
|
||||||
|
(define-public cmake
|
||||||
|
(package
|
||||||
|
(inherit cmake-minimal)
|
||||||
|
(version "3.29.2")
|
||||||
|
(name "cmake")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://gitlab.kitware.com/cmake/cmake")
|
||||||
|
(commit (string-append "v" version))
|
||||||
|
(recursive? #t)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0yjk4kqrln8smz457dxansfl69zyikr5015xm23xa4g7x1rihkgg"))))
|
||||||
|
(outputs
|
||||||
|
'("out" "doc"))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments
|
||||||
|
(package-arguments cmake-minimal)
|
||||||
|
;; Use cmake-minimal this time.
|
||||||
|
((#:cmake _ #f)
|
||||||
|
(if
|
||||||
|
(%current-target-system)
|
||||||
|
cmake-minimal-cross
|
||||||
|
cmake-minimal))
|
||||||
|
;; Enable debugging information for convenience.
|
||||||
|
((#:build-type _ #f)
|
||||||
|
"RelWithDebInfo")
|
||||||
|
((#:configure-flags flags
|
||||||
|
''())
|
||||||
|
#~(append
|
||||||
|
(list "-DSPHINX_INFO=ON" "-DSPHINX_MAN=ON" "-DSPHINX_HTML=ON"
|
||||||
|
(string-append "-DCMAKE_DOC_DIR=share/doc/cmake-"
|
||||||
|
#$(version-major+minor
|
||||||
|
(package-version
|
||||||
|
cmake-minimal)))
|
||||||
|
(string-append "-DCMake_INSTALL_VIMFILES_DIR=" #$output
|
||||||
|
"/share/vim/vimfiles/pack/guix/start/cmake")
|
||||||
|
"-DCMAKE_INFO_DIR=share/info"
|
||||||
|
"-DCMAKE_MAN_DIR=share/man")
|
||||||
|
#$flags))
|
||||||
|
((#:phases phases)
|
||||||
|
#~(modify-phases #$phases
|
||||||
|
(delete 'delete-help-documentation)
|
||||||
|
(add-after 'install 'move-html-doc
|
||||||
|
(lambda _
|
||||||
|
(let
|
||||||
|
((html
|
||||||
|
(string-append "/share/doc/cmake-"
|
||||||
|
#$(version-major+minor
|
||||||
|
(package-version cmake-minimal))
|
||||||
|
"/html")))
|
||||||
|
(copy-recursively
|
||||||
|
(string-append #$output html)
|
||||||
|
(string-append #$output:doc html))
|
||||||
|
(delete-file-recursively
|
||||||
|
(string-append #$output html)))))))))
|
||||||
|
(inputs
|
||||||
|
(modify-inputs
|
||||||
|
(package-inputs cmake-minimal)
|
||||||
|
(prepend ncurses)
|
||||||
|
(prepend cppdap)))
|
||||||
|
;required for ccmake
|
||||||
|
;; Extra inputs required to build the documentation.
|
||||||
|
(native-inputs
|
||||||
|
(modify-inputs
|
||||||
|
(package-native-inputs cmake-minimal)
|
||||||
|
(append python-sphinx
|
||||||
|
texinfo)))
|
||||||
|
(properties
|
||||||
|
(alist-delete 'hidden?
|
||||||
|
(package-properties cmake-minimal)))))
|
||||||
|
|
||||||
|
(define-public cppdap ;; SENT to Guix
|
||||||
|
(package
|
||||||
|
(name "cppdap")
|
||||||
|
(version "1.58.0-a")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri
|
||||||
|
(git-reference
|
||||||
|
(url "https://github.com/google/cppdap")
|
||||||
|
(commit (string-append "dap-" version))))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0fq2w35fw1lb5wya1nny45pk3a13b689k48calk1cmqmqpbcjn2b"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:configure-flags #~(list "-DCPPDAP_USE_EXTERNAL_NLOHMANN_JSON_PACKAGE=ON")
|
||||||
|
#:phases #~(modify-phases %standard-phases
|
||||||
|
(delete 'check))))
|
||||||
|
(propagated-inputs
|
||||||
|
(list nlohmann-json))
|
||||||
|
(home-page "https://github.com/google/cppdap")
|
||||||
|
(synopsis "C++ library for the Debug Adapter Protocol")
|
||||||
|
(description
|
||||||
|
"cppdap is a C++11 library (\"SDK\") implementation of the Debug Adapter Protocol,
|
||||||
|
providing an API for implementing a DAP client or server.
|
||||||
|
cppdap provides C++ type-safe structures for the full DAP specification, and provides
|
||||||
|
a simple way to add custom protocol messages.")
|
||||||
|
(license license:expat)))
|
||||||
|
|
57
zilti/packages/zig.scm
Normal file
57
zilti/packages/zig.scm
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
(define-module
|
||||||
|
(zilti packages zig)
|
||||||
|
#:use-module
|
||||||
|
(guix packages)
|
||||||
|
#:use-module
|
||||||
|
(guix utils)
|
||||||
|
#:use-module
|
||||||
|
(guix download)
|
||||||
|
#:use-module
|
||||||
|
(guix gexp)
|
||||||
|
#:use-module
|
||||||
|
(guix git-download)
|
||||||
|
#:use-module
|
||||||
|
(guix build-system zig)
|
||||||
|
#:use-module
|
||||||
|
((guix licenses) #:prefix license:)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages compression)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages llvm)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages llvm-meta)
|
||||||
|
#:use-module
|
||||||
|
(gnu packages zig)
|
||||||
|
)
|
||||||
|
|
||||||
|
(define-public zig-0.11
|
||||||
|
(package
|
||||||
|
(inherit zig-0.10)
|
||||||
|
(name "zig")
|
||||||
|
(version "0.11.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/ziglang/zig.git")
|
||||||
|
(commit version)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32 "0qh7c27cd4wcdjj0mbpkarvwypfk1js8hkyxs0z149qv75zkbrca"))))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments zig-0.10)
|
||||||
|
((#:parallel-build? _ #f) #t)))
|
||||||
|
(inputs
|
||||||
|
(modify-inputs (package-inputs zig-0.10)
|
||||||
|
(replace "clang" clang-16)
|
||||||
|
(replace "lld" lld-16)))
|
||||||
|
(propagated-inputs
|
||||||
|
(list clang-16))
|
||||||
|
(native-inputs
|
||||||
|
(modify-inputs (package-native-inputs zig-0.10)
|
||||||
|
(prepend clang-toolchain-16)
|
||||||
|
(replace "llvm" llvm-16)))
|
||||||
|
(properties `((max-silent-time . 9600)
|
||||||
|
,@(clang-compiler-cpu-architectures "16")))))
|
Loading…
Reference in a new issue