diff options
author | Ludovic Courtès <ludovic.courtes@inria.fr> | 2023-08-10 22:19:55 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2023-08-11 00:50:47 +0200 |
commit | caa30ff2f13a149810e564ab9b1737e057345032 (patch) | |
tree | 6bb55dac1b8d2aee2dfd550821661ae284fb2cf9 /gnu/packages/simulation.scm | |
parent | 2a4047e5401a1b41c15803725f368483ab4377fa (diff) |
gnu: openfoam-org: Use 'git-fetch'.
So far the source was taken from an auto-generated, unstable tarball at
github.com. This fixes that.
* gnu/packages/simulation.scm (openfoam-org)[source]: Switch to
'git-fetch'.
[arguments]: Add 'rename-self' phase.
Diffstat (limited to 'gnu/packages/simulation.scm')
-rw-r--r-- | gnu/packages/simulation.scm | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index 1dd6dc63f7..db73812a41 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -84,6 +84,7 @@ #:use-module (guix gexp) #:use-module (guix utils) #:use-module (ice-9 ftw) + #:use-module (ice-9 match) #:use-module (ice-9 regex) #:use-module (srfi srfi-1)) @@ -92,14 +93,15 @@ (name "openfoam-org") (version "10.20230119") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/OpenFOAM/OpenFOAM-" - (version-major version) "/archive/" - (second (string-split version #\.)) - ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url (string-append "https://github.com/OpenFOAM/OpenFOAM-" + (version-major version))) + (commit (second (string-split version #\.))))) (sha256 (base32 - "1aw2vb5s7frg942ngd5x5x2dm67liyg6czff56qi567mshccpy46")) + "0icvwg7s6vnkgmdiczivia9pbrgx8nanw9a4j080fzfvdv9vxhzp")) + (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet `(begin ;; patch shell paths @@ -211,7 +213,24 @@ #~(modify-phases %standard-phases (add-before 'build 'patch-HOME-path (lambda _ - (setenv "HOME" "/tmp") #t)) + (setenv "HOME" "/tmp"))) + (add-before 'build 'rename-self + (lambda _ + ;; The script 'bin/foamEtcFile' derives the version name based + ;; on the current directory name (!), so make sure to follow the + ;; expected naming convention. + (let ((here (canonicalize-path ".")) + (target #$(string-append + "OpenFOAM-" + (string-map (match-lambda + (#\. #\-) + (chr chr)) + (package-version this-package))))) + (chdir "..") + (format #t "renaming '~a' to '~a'~%" + here target) + (rename-file here target) + (chdir target)))) (add-before 'build 'patch-scotch (lambda _ (substitute* "etc/config.sh/scotch" |