fix: update installer and tribes source packages

This commit is contained in:
2026-04-06 07:31:34 +02:00
parent 6e34b9eb22
commit 7c061b8b2a
3 changed files with 31 additions and 14 deletions

View File

@@ -24,6 +24,7 @@
"diffutils" "diffutils"
"findutils" "findutils"
"gawk" "gawk"
"git-minimal"
"grep" "grep"
"gzip" "gzip"
"inetutils" "inetutils"

View File

@@ -153,15 +153,14 @@ MIX-FOD-DEPS as a pre-fetched dependency tree."
(file-append input "/share/aclocal")) (file-append input "/share/aclocal"))
aclocal-inputs)) aclocal-inputs))
(default-configure-gexp (default-configure-gexp
#~(invoke "mix" "deps.compile" "--no-deps-check" #~(invoke "mix" "deps.compile" "--skip-umbrella-children"))
"--skip-umbrella-children"))
(default-build-gexp (default-build-gexp
#~(invoke "mix" "compile" "--no-deps-check" #$@compile-flags)) #~(invoke "mix" "compile" #$@compile-flags))
(default-install-gexp (default-install-gexp
(if (string=? mix-release-name "") (if (string=? mix-release-name "")
#~(invoke "mix" "release" "--no-deps-check" "--path" out) #~(invoke "mix" "release" "--path" out)
#~(invoke "mix" "release" #$mix-release-name #~(invoke "mix" "release" #$mix-release-name
"--no-deps-check" "--path" out))) "--path" out)))
(configure-gexp (or configure-gexp default-configure-gexp)) (configure-gexp (or configure-gexp default-configure-gexp))
(build-gexp (or build-gexp default-build-gexp)) (build-gexp (or build-gexp default-build-gexp))
(install-gexp (or install-gexp default-install-gexp)) (install-gexp (or install-gexp default-install-gexp))

View File

@@ -6,14 +6,18 @@
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages commencement) #:use-module (gnu packages commencement)
#:use-module (gnu packages compression)
#:use-module (gnu packages gawk) #:use-module (gnu packages gawk)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages m4) #:use-module (gnu packages m4)
#:use-module (gnu packages node) #:use-module (gnu packages node)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages version-control)
#:use-module ((tribes packages mix) #:prefix mix:) #:use-module ((tribes packages mix) #:prefix mix:)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-13) #:use-module (srfi srfi-13)
@@ -28,25 +32,25 @@
;; from the current Tribes mix.lock, with git metadata stripped except for ;; from the current Tribes mix.lock, with git metadata stripped except for
;; .git/HEAD in SCM dependencies. ;; .git/HEAD in SCM dependencies.
(define %tribes-raw-mix-deps-sha256 (define %tribes-raw-mix-deps-sha256
"0mv4jva8zkx8cq1b84hn65bl913nnhkvf25g6fi93z3jm35jy0pc") "0s26zx8sf0dshpyy3dgk0yw7fndy9wc8kj82nqw8x7b74h8nkqv7")
;; Recursive sha256 of the Tribes-specific prepared deps tree, after injecting ;; Recursive sha256 of the Tribes-specific prepared deps tree, after injecting
;; the upstream secp256k1 source into the Hex package and patching its build ;; the upstream secp256k1 source into the Hex package and patching its build
;; recipe to avoid build-time network access. ;; recipe to avoid build-time network access.
(define %tribes-mix-deps-sha256 (define %tribes-mix-deps-sha256
"0ksjnc9gnjijp1nbz3jlvl9kz8w7hx1a0ssms1dvd15rr25gn0d4") "0wfi6xwn9d1b1121p8zmn23fyrkgwzy1kflbwc0mrkkjmc1xwhx5")
;; Recursive sha256 of assets/node_modules generated from assets/package-lock.json ;; Recursive sha256 of assets/node_modules generated from assets/package-lock.json
;; in an isolated build environment, with local file dependencies resolved from ;; in an isolated build environment, with local file dependencies resolved from
;; the vendored Mix dependency tree. ;; the vendored Mix dependency tree.
(define %tribes-npm-deps-sha256 (define %tribes-npm-deps-sha256
"1bfzs67ffhwcm0dwdkb1jqnbn3fpgj22zfhd2y907w8daj62gahv") "1my46nw162265y8xh0xxfhbm3hd1d9vj3nkd9s1nrrida66siw91")
(define %tribes-home-page (define %tribes-home-page
"https://git.teralink.net/tribes/tribes.git") "https://git.teralink.net/tribes/tribes.git")
(define %tribes-commit (define %tribes-commit
"1e026a60fdabcec8b9ec0a850a03f903d02496e7") "db539690ccb06df16141763c01e69b50ed899909")
(define %tribes-revision "1") (define %tribes-revision "1")
@@ -54,7 +58,7 @@
(git-version "0.2.0" %tribes-revision %tribes-commit)) (git-version "0.2.0" %tribes-revision %tribes-commit))
(define %tribes-source-sha256 (define %tribes-source-sha256
"1lqls1ngy3vpf0hh9jn44h1g9rx1hglj9ik3zi1ywcr4q01pmv68") "1d7h9948zm6xwr2kqg5f7d41d56b68xkqb1kvg1wxf3jh0fvpj0h")
(define %tribes-upstream-source (define %tribes-upstream-source
(origin (origin
@@ -210,7 +214,12 @@ with local file dependencies resolved from MIX-FOD-DEPS."
(mkdir-p (getenv "npm_config_cache")) (mkdir-p (getenv "npm_config_cache"))
(with-directory-excursion assets-dir (with-directory-excursion assets-dir
(invoke "npm" "ci" "--ignore-scripts" "--no-audit" "--no-fund")) (invoke "npm"
"ci"
"--include=dev"
"--ignore-scripts"
"--no-audit"
"--no-fund"))
(mkdir-p out) (mkdir-p out)
(copy-recursively (string-append assets-dir "/node_modules") (copy-recursively (string-append assets-dir "/node_modules")
@@ -396,7 +405,7 @@ mix.lock and assets/package-lock.json."
(invoke "mix" "deps.compile")) (invoke "mix" "deps.compile"))
#:build-gexp #:build-gexp
#~(begin #~(begin
(invoke "mix" "compile" "--no-deps-check") (invoke "mix" "compile")
(let ((assets-node-modules "assets/node_modules")) (let ((assets-node-modules "assets/node_modules"))
(when (file-exists? assets-node-modules) (when (file-exists? assets-node-modules)
@@ -417,7 +426,15 @@ mix.lock and assets/package-lock.json."
assets-node-modules assets-node-modules
"-type" "f" "-type" "f"
"-path" "*/.bin/*" "-path" "*/.bin/*"
"-exec" "chmod" "+x" "{}" "+")) "-exec" "chmod" "+x" "{}" "+")
;; npm-installed CLI launchers assume /usr/bin/env exists, which is
;; not true in the Guix build sandbox.
(for-each
(lambda (script)
(patch-shebang script
(list #$(file-append node "/bin"))))
(find-files (string-append assets-node-modules "/.bin"))))
(let ((heroicons-dir "deps/heroicons")) (let ((heroicons-dir "deps/heroicons"))
(when (file-exists? heroicons-dir) (when (file-exists? heroicons-dir)
@@ -441,7 +458,7 @@ mix.lock and assets/package-lock.json."
(invoke "mix" "phx.digest")) (invoke "mix" "phx.digest"))
#:install-gexp #:install-gexp
#~(begin #~(begin
(invoke "mix" "release" "--no-deps-check" "--path" out) (invoke "mix" "release" "--path" out)
(let ((launcher (string-append out "/bin/" #$name)) (let ((launcher (string-append out "/bin/" #$name))
(launcher-app (string-append out "/bin/" #$name "-app"))) (launcher-app (string-append out "/bin/" #$name "-app")))
(when (file-exists? launcher) (when (file-exists? launcher)