mirror of
https://gitlab.univ-nantes.fr/glicid-public/guix-glicid.git
synced 2025-04-29 21:58:36 +02:00
backporting master into devel (devel was behind master)
This commit is contained in:
parent
cc5cc2847f
commit
54560ad0ea
34 changed files with 10115 additions and 1803 deletions
29
README.md
Normal file
29
README.md
Normal file
|
@ -0,0 +1,29 @@
|
|||
guix-glicid
|
||||
===
|
||||
Description
|
||||
---
|
||||
We define in this repository packages that we use at GLiCID HPC that are etheir not in guix main channels or with custom definitions.
|
||||
|
||||
Two channels here :
|
||||
- main  : stable release of our channel
|
||||
- devel  : development release of our channel, things may get broken
|
||||
|
||||
How to use
|
||||
---
|
||||
To use the guix-glicid channel, add these lines to ~/.config/guix/channels.scm or /etc/guix/channels.scm :
|
||||
|
||||
For stable release :
|
||||
```
|
||||
(channel
|
||||
(name 'glicid)
|
||||
(url "https://gitlab.univ-nantes.fr/glicid-public/guix-glicid.git")
|
||||
(branch "main"))
|
||||
```
|
||||
|
||||
For devel release :
|
||||
```
|
||||
(channel
|
||||
(name 'glicid)
|
||||
(url "https://gitlab.univ-nantes.fr/glicid-public/guix-glicid.git")
|
||||
(branch "devel"))
|
||||
```
|
39
glicid/packages/admin.scm
Normal file
39
glicid/packages/admin.scm
Normal file
|
@ -0,0 +1,39 @@
|
|||
(define-module (glicid packages admin)
|
||||
#:use-module ((gnu packages admin) #:prefix gnu:)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cyrus-sasl)
|
||||
#:use-module (gnu packages groff)
|
||||
#:use-module (gnu packages hurd)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
)
|
||||
|
||||
|
||||
(define-public sudo
|
||||
(let* ((sudo-minimal gnu:sudo))
|
||||
(package
|
||||
(inherit sudo-minimal)
|
||||
(name (string-append (package-name sudo-minimal) "-with-ldap"))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments sudo-minimal)
|
||||
((#:configure-flags flags)
|
||||
`(append (list
|
||||
"--enable-sasl"
|
||||
"--with-ldap"
|
||||
"--enable-openssl"
|
||||
"--with-nsswitch")
|
||||
,flags))))
|
||||
(inputs (modify-inputs (package-inputs sudo-minimal)
|
||||
(append openldap
|
||||
openssl
|
||||
cyrus-sasl)))
|
||||
(native-inputs (modify-inputs (package-native-inputs sudo-minimal)
|
||||
(append pkg-config))))))
|
23
glicid/packages/algebra.scm
Normal file
23
glicid/packages/algebra.scm
Normal file
|
@ -0,0 +1,23 @@
|
|||
(define-module (glicid packages algebra)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages commencement)
|
||||
)
|
||||
|
||||
(define-public fftw-openmpi-with-fortran
|
||||
(package
|
||||
(inherit fftw-openmpi)
|
||||
(name "fftw-openmpi-with-fortran")
|
||||
(version "3.3.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.fftw.org/fftw-" version ".tar.gz"))
|
||||
(sha256 (base32 "0rv4w90b65b2kvjpj8g9bdkl4xqc42q20f5bzpxdrkajk1a35jan"))
|
||||
))
|
||||
(inputs `(
|
||||
("gfortran-toolchain", gfortran-toolchain)
|
||||
,@(package-inputs fftw-openmpi)
|
||||
))
|
||||
)
|
||||
)
|
|
@ -1,122 +1,141 @@
|
|||
(define-module (glicid packages benchmark)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (guix packages)
|
||||
#:use-module ((gnu packages benchmark) #:prefix gnu:)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages storage)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (glicid packages mpi)
|
||||
#:use-module (glicid packages gcc)
|
||||
|
||||
#:use-module (glicid utils)
|
||||
)
|
||||
|
||||
(define-public intel-mpi-benchmarks/openmpi-2021.3
|
||||
(package
|
||||
(inherit gnu:intel-mpi-benchmarks/openmpi)
|
||||
(name "intel-mpi-benchmarks-upstream")
|
||||
(version "2021.3")
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source gnu:intel-mpi-benchmarks/openmpi))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/intel/mpi-benchmarks")
|
||||
(commit (string-append "IMB-v" version))
|
||||
))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32 "04kczch2hlfzbgk929vcxx480kc6raba8rbz246j7d26k1z1zh8h"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public intel-mpi-benchmarks/openmpi-2021.3-libfabric-rdma
|
||||
(transform-package (
|
||||
(instead-of "openmpi" openmpi-glicid-libfabric-rdma-ucx)
|
||||
intel-mpi-benchmarks/openmpi-2021.3
|
||||
) "fab+rdma+ucx")
|
||||
)
|
||||
|
||||
(define intel-mpi-benchmark-transform-gcc-11
|
||||
(gcc11-instead-of-gcc intel-mpi-benchmarks/openmpi-2021.3-libfabric-rdma)
|
||||
)
|
||||
|
||||
(define intel-mpi-benchmarks/openmpi-2021.3-gcc-11
|
||||
(package
|
||||
(inherit intel-mpi-benchmark-transform-gcc-11)
|
||||
(version (string-append (package-version intel-mpi-benchmark-transform-gcc-11) "-gcc-11" ))
|
||||
)
|
||||
)
|
||||
|
||||
(define-public intel-mpi-benchmarks/openmpi-2021.3-all-ccipl
|
||||
(transform-package (
|
||||
(instead-of "openmpi" openmpi-glicid-libfabric-rdma-ucx-ccipl)
|
||||
intel-mpi-benchmarks/openmpi-2021.3
|
||||
) "ccipl")
|
||||
)
|
||||
|
||||
|
||||
;;;;;;;;
|
||||
|
||||
|
||||
(define-public glicid-intel-mpi-benchmarks
|
||||
(package
|
||||
(inherit intel-mpi-benchmarks/openmpi)
|
||||
(name "glicid-intel-mpi-benchmarks")
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-intel-mpi-benchmarks-gcc-11
|
||||
(package
|
||||
(inherit glicid-intel-mpi-benchmarks)
|
||||
(name "glicid-specific-intel-mpi-benchmarks")
|
||||
(inputs `(("openmpi", glicid-openmpi-gcc-11)
|
||||
("gcc",gcc-11)
|
||||
,@(package-inputs glicid-intel-mpi-benchmarks)))
|
||||
(define-public stream-benchmarks
|
||||
(package
|
||||
(name "stream-benchmarks")
|
||||
(version "5.10-jh")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/jeffhammond/STREAM.git")
|
||||
(commit "HEAD")
|
||||
)
|
||||
)
|
||||
(sha256 (base32 "1b5ka2h6rhp2103app6p0vq29y7qixcli9w874hb33y05ggjin8m"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure) ; no configure
|
||||
(delete 'check) ; no check
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Le Makefile du paquet ne fournit pas de règle « install »
|
||||
;; alors on le fait nous-mêmes.
|
||||
(let
|
||||
((bin (string-append (assoc-ref outputs "out") "/bin")))
|
||||
(install-file "stream_c.exe" bin)
|
||||
(install-file "stream_f.exe" bin)
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("gfortran-toolchain" ,gfortran-toolchain)
|
||||
))
|
||||
(synopsis "STREAM benchmark")
|
||||
(description "STREAM benchmark")
|
||||
(home-page "https://")
|
||||
(license "")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;;defined by gricad / PA Boutier
|
||||
|
||||
|
||||
;;; glicid/benchmark.scm ends here
|
||||
(define-public osu-benchmarks
|
||||
(package
|
||||
(name "osu-benchmarks")
|
||||
(version "5.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://mvapich.cse.ohio-state.edu/download/mvapich/osu-micro-benchmarks-" version ".tgz"))
|
||||
(sha256 (base32 "19a4wg0msipibkxsi8i0c34d07512yfaj2k37dxg5541ysdw690f"))
|
||||
))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'setenv
|
||||
(lambda _
|
||||
(setenv "CC" (which "mpicc"))
|
||||
(setenv "CXX" (which "mpic++"))
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(propagated-inputs `(
|
||||
("openmpi" ,openmpi)
|
||||
))
|
||||
(synopsis "OSU micro benchmarks")
|
||||
(description "OSU micro benchmark for mpi")
|
||||
(home-page "https://mvapich.cse.ohio-state.edu/benchmarks/")
|
||||
(license license:gpl2+)
|
||||
)
|
||||
)
|
||||
|
|
|
@ -97,7 +97,7 @@
|
|||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://oauth2:9i-PgbC2w_JEx6DUUqzf@gitlab.univ-nantes.fr/CCIPL/stages/2021/django-keycloak.git") (commit version)
|
||||
(url "https://oauth2:glpat-RsX2GjsD2WrzXubiJeou@gitlab.univ-nantes.fr/CCIPL/stages/2021/django-keycloak.git") (commit version)
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -550,8 +550,6 @@
|
|||
|
||||
)
|
||||
|
||||
|
||||
|
||||
(define-public glicid-clam
|
||||
(package
|
||||
(name "glicid-clam")
|
||||
|
@ -561,7 +559,7 @@
|
|||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://oauth2:9i-PgbC2w_JEx6DUUqzf@gitlab.univ-nantes.fr/CCIPL/stages/2021/cluster_account_manager.git") (commit version)
|
||||
(url "https://oauth2:glpat-RsX2GjsD2WrzXubiJeou@gitlab.univ-nantes.fr/CCIPL/stages/2021/cluster_account_manager.git") (commit version)
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -573,7 +571,6 @@
|
|||
)
|
||||
)
|
||||
)
|
||||
|
||||
; (build-system python-build-system)
|
||||
(build-system copy-build-system)
|
||||
;; XXX: The git repository has no tags, and the PyPI releases do not
|
||||
|
@ -582,7 +579,6 @@
|
|||
|
||||
;#:tests? #f
|
||||
; #:use-setuptools? #f ; uses custom distutils 'install' command
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'reset-gzip-timestamps 'make-files-writable
|
||||
|
@ -591,15 +587,8 @@
|
|||
(for-each make-file-writable
|
||||
(find-files out "\\.gz$"))
|
||||
#t))))))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
; )
|
||||
; )
|
||||
|
||||
(propagated-inputs `(("python-keycloak-client" , python-keycloak-client-0.2.3)
|
||||
("python-ecdsa", python-ecdsa)
|
||||
("python-django", python-django)
|
||||
|
|
|
@ -1,139 +1,58 @@
|
|||
(define-module (glicid packages cluster)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module ((gnu packages cluster) #:prefix gnu:)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid utils)
|
||||
)
|
||||
|
||||
|
||||
;;;;;;;;
|
||||
|
||||
(define-public keepalived
|
||||
(define-public keepalived-upstream-2.2.4
|
||||
(package
|
||||
(inherit gnu:keepalived)
|
||||
(name "keepalived-upstream")
|
||||
(version "2.2.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.keepalived.org/software/keepalived-"
|
||||
version ".tar.gz"))
|
||||
|
||||
(sha256
|
||||
(base32
|
||||
"1py1xdrxzdxn09yi8dx842rmhnc8lv7z09wmb2mfljylhy8dcf01"
|
||||
))))
|
||||
|
||||
|
||||
|
||||
)
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.keepalived.org/software/keepalived-" version ".tar.gz"))
|
||||
(sha256 (base32 "1py1xdrxzdxn09yi8dx842rmhnc8lv7z09wmb2mfljylhy8dcf01" ))
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
(define-public glicid-keepalived
|
||||
(define-public keepalived-upstream-2.2.7
|
||||
(package
|
||||
(inherit (latest-version keepalived gnu:keepalived))
|
||||
(name "glicid-keepalived")
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--enable-snmp")
|
||||
(string-append "--enable-snmp-checker")
|
||||
(string-append "--enable-snmp-rfc")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(inputs `(("net-snmp", net-snmp)
|
||||
,@(package-inputs keepalived)))
|
||||
)
|
||||
(inherit gnu:keepalived)
|
||||
(name "keepalived-upstream")
|
||||
(version "2.2.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.keepalived.org/software/keepalived-" version ".tar.gz"))
|
||||
(sha256 (base32 "17flnzcs8hpj1g8nhhqn6bwbvpksyizcyzk2ah55cjhmfkc406f6" ))
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
;;; glicid/cluster.scm ends here
|
||||
|
||||
(define local:keepalived keepalived-upstream-2.2.7)
|
||||
(define keepalived-latest (latest-version local:keepalived gnu:keepalived))
|
||||
|
||||
(define-public keepalived-glicid
|
||||
(package
|
||||
(inherit keepalived-latest)
|
||||
(name "keepalived-glicid")
|
||||
(version (string-append (package-version keepalived-latest) "-glicid" ))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list
|
||||
(string-append "--enable-snmp")
|
||||
(string-append "--enable-snmp-checker")
|
||||
(string-append "--enable-snmp-rfc")
|
||||
)
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("net-snmp", net-snmp)
|
||||
,@(package-inputs keepalived-latest)
|
||||
))
|
||||
)
|
||||
)
|
||||
|
|
|
@ -1,165 +1,74 @@
|
|||
(define-module (glicid packages fabric-management)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages gcc)
|
||||
#:use-module (guix packages)
|
||||
#:use-module ((gnu packages fabric-management) #:prefix gnu:)
|
||||
#:use-module (glicid packages linux)
|
||||
#:use-module (glicid utils)
|
||||
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-ucx
|
||||
(package
|
||||
(inherit ucx)
|
||||
(name "glicid-ucx")
|
||||
(version "1.11.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openucx/ucx/releases/download/v" version "/ucx-" version ".tar.gz" ))
|
||||
(sha256 (base32 "1py62vjr0hgyqsdpr04jhn918i8ccn6ghjalwpcjpz24admgisyy"))
|
||||
)
|
||||
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-ucx-gcc-11
|
||||
(package
|
||||
(inherit glicid-ucx)
|
||||
(name "glicid-ucx-gcc-11")
|
||||
|
||||
(inputs `(("gcc-11", gcc-11)
|
||||
("gfortran-11", gfortran-11)
|
||||
,@(package-inputs glicid-ucx)))
|
||||
(define-public ucx-upstream-1.11.2
|
||||
(package
|
||||
(inherit gnu:ucx)
|
||||
(name (string-append (package-name gnu:ucx) "-upstream" ))
|
||||
(version "1.11.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openucx/ucx/releases/download/v" version "/ucx-" version ".tar.gz" ))
|
||||
(sha256 (base32 "1py62vjr0hgyqsdpr04jhn918i8ccn6ghjalwpcjpz24admgisyy"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-ucx-gcc-10
|
||||
(package
|
||||
(inherit glicid-ucx)
|
||||
(name "glicid-ucx-gcc-10")
|
||||
|
||||
(inputs `(("gcc-10", gcc-10)
|
||||
("gfortran-10", gfortran-10)
|
||||
,@(package-inputs glicid-ucx)))
|
||||
(define-public ucx-upstream-1.12.0
|
||||
(package
|
||||
(inherit gnu:ucx)
|
||||
(name (string-append (package-name gnu:ucx) "-upstream" ))
|
||||
(version "1.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openucx/ucx/releases/download/v" version "/ucx-" version ".tar.gz" ))
|
||||
(sha256 (base32 "1djxsakwjwnw21hhzsr02w6h2jd2k16bm4pah4iz6k8s5pg99sck"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public ucx-upstream-1.12.1
|
||||
(package
|
||||
(inherit gnu:ucx)
|
||||
(name (string-append (package-name gnu:ucx) "-upstream" ))
|
||||
(version "1.12.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openucx/ucx/releases/download/v" version "/ucx-" version ".tar.gz" ))
|
||||
(sha256 (base32 "13mf30gdcqix8dyi0iwnsd5fn8b0syr03042y99s556swz44gd20"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-specific-ucx-gcc-11
|
||||
(package
|
||||
(inherit glicid-ucx)
|
||||
(name "glicid-specific-ucx-gcc-11")
|
||||
(version "1.10.0")
|
||||
(define local-ucx ucx-upstream-1.12.1)
|
||||
(define-public ucx-latest (latest-version local-ucx gnu:ucx))
|
||||
|
||||
(inputs `(("gcc", gcc-11)
|
||||
("gfortran", gfortran-11)
|
||||
("libfabric", glicid-libfabric-gcc-11)
|
||||
("rdma-core",glicid-rdma-core-gcc-11)
|
||||
|
||||
,@(package-inputs glicid-ucx)))
|
||||
(define-public ucx-latest-rdma
|
||||
(transform-package
|
||||
(
|
||||
(instead-of "rdma-core" rdma-core-latest)
|
||||
ucx-latest
|
||||
) "rdma"
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-ucx-gcc-10
|
||||
(package
|
||||
(inherit ucx)
|
||||
|
||||
(inputs `(("gcc", gcc-10)
|
||||
("gfortran", gfortran-10)
|
||||
("libfabric", glicid-libfabric-gcc-11)
|
||||
("rdma-core",glicid-rdma-core-gcc-11)
|
||||
|
||||
,@(package-inputs glicid-ucx)))
|
||||
(define-public ucx-latest-glicid
|
||||
(transform-package
|
||||
(
|
||||
(instead-of "libfabric" libfabric-latest)
|
||||
ucx-latest-rdma
|
||||
) "glicid"
|
||||
)
|
||||
)
|
||||
|
||||
;;; glicid/fabric-management.scm ends here
|
||||
|
|
95
glicid/packages/file-systems.scm
Normal file
95
glicid/packages/file-systems.scm
Normal file
|
@ -0,0 +1,95 @@
|
|||
(define-module (glicid packages file-systems)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages cyrus-sasl)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages onc-rpc)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages kerberos)
|
||||
#:use-module (gnu packages nfs)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
|
||||
)
|
||||
|
||||
(define-public autofs-glicid
|
||||
(package
|
||||
(name "autofs-glicid")
|
||||
(version "5.1.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/daemons/autofs/"
|
||||
"v" (version-major version) "/"
|
||||
"autofs-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1zf0fgf6kr9amxq5amlgsp1v13sizwl3wvx2xl7b4r2nhmci0gdk"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--enable-ignore-busy" ; during shutdown
|
||||
"--enable-sloppy-mount" ; support mount(8) -s
|
||||
"--with-libtirpc"
|
||||
(string-append "--with-openldap="
|
||||
(assoc-ref %build-inputs "openldap"))
|
||||
(string-append "--with-sasl="
|
||||
(assoc-ref %build-inputs "cyrus-sasl"))
|
||||
; "HAVE_SSS_AUTOFS=1" ; required to make sssldir click
|
||||
; (string-append "sssldir="
|
||||
; (assoc-ref %build-inputs "sssd")
|
||||
; "/lib/sssd/modules")
|
||||
)
|
||||
#:tests? #f ; no test suite
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'fix-hard-coded-search-path
|
||||
(lambda _
|
||||
(substitute* "configure"
|
||||
(("^searchpath=\".*\"")
|
||||
"searchpath=\"$PATH\""))))
|
||||
(add-before 'configure 'fix-rpath
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "Makefile.rules"
|
||||
(("^AUTOFS_LIB_LINK.*=" match)
|
||||
(string-append match " -Wl,-rpath=" out "/lib"))))))
|
||||
(add-before 'install 'omit-obsolete-lookup_nis.so-link
|
||||
;; Building lookup_yp.so depends on $(YPCLNT) but this doesn't,
|
||||
;; leading to a make error. Since it's broken, comment it out.
|
||||
(lambda _
|
||||
(substitute* "modules/Makefile"
|
||||
(("ln -fs lookup_yp.so" match)
|
||||
(string-append "# " match))))))))
|
||||
(native-inputs
|
||||
(list bison flex pkg-config rpcsvc-proto))
|
||||
(inputs
|
||||
(list cyrus-sasl
|
||||
e2fsprogs ; for e[234]fsck
|
||||
libtirpc
|
||||
libxml2 ; needed for LDAP, SASL
|
||||
mit-krb5 ; needed for LDAP, SASL
|
||||
nfs-utils ; for mount.nfs
|
||||
openldap
|
||||
openssl ; needed for SASL
|
||||
; sssd
|
||||
util-linux)) ; for mount, umount
|
||||
;; XXX A directory index is the closest thing this has to a home page.
|
||||
(home-page "https://www.kernel.org/pub/linux/daemons/autofs/")
|
||||
(synopsis "Kernel-based automounter for Linux")
|
||||
(description
|
||||
"Autofs is a kernel-based automounter for use with the Linux autofs4
|
||||
module. It automatically mounts selected file systems when they are used and
|
||||
unmounts them after a set period of inactivity. This provides
|
||||
centrally-managed, consistent file names for users and applications, even in a
|
||||
large and/or frequently changing (network) environment.")
|
||||
;; fedfs/ is GPL-2-only but not built.
|
||||
(license (list license:bsd-3 ; modules/cyrus-sasl.c
|
||||
license:gpl2+)))) ; the rest
|
|
@ -1,176 +1,32 @@
|
|||
(define-module (glicid packages gcc)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
|
||||
|
||||
|
||||
#:use-module (gnu packages commencement) ;; for make-gcc-toolchain
|
||||
#:use-module (gnu packages gcc) ;; for gcc-11
|
||||
)
|
||||
|
||||
;; beware : access to internal functions… this is probably not the right way to do it …
|
||||
|
||||
(define* (custom-gcc gcc name languages
|
||||
#:optional
|
||||
(search-paths (package-native-search-paths gcc))
|
||||
#:key (separate-lib-output? #t))
|
||||
"Return a custom version of GCC that supports LANGUAGES. Use SEARCH-PATHS as the 'native-search-paths' field."
|
||||
(package (inherit gcc)
|
||||
(name name)
|
||||
(outputs (if separate-lib-output?
|
||||
(package-outputs gcc)
|
||||
(delete "lib" (package-outputs gcc))))
|
||||
(native-search-paths search-paths)
|
||||
(properties (alist-delete 'hidden? (package-properties gcc)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments gcc)
|
||||
((#:modules modules %gnu-build-system-modules)
|
||||
`(,@modules
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26)
|
||||
(ice-9 regex)))
|
||||
((#:configure-flags flags)
|
||||
`(cons (string-append "--enable-languages="
|
||||
,(string-join languages ","))
|
||||
(remove (cut string-match "--enable-languages.*" <>)
|
||||
,flags)))
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'install 'remove-broken-or-conflicting-files
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(for-each delete-file
|
||||
(find-files (string-append (assoc-ref outputs "out") "/bin")
|
||||
".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)"))
|
||||
#t))))))))
|
||||
(define custom-gcc (@@ (gnu packages gcc) custom-gcc) )
|
||||
(define %generic-search-paths (@@ (gnu packages gcc) %generic-search-paths ))
|
||||
|
||||
(define %generic-search-paths
|
||||
;; This is the language-neutral search path for GCC. Entries in $CPATH are
|
||||
;; not considered "system headers", which means GCC can raise warnings for
|
||||
;; issues in those headers. 'CPATH' is the only one that works for
|
||||
;; front-ends not in the C family.
|
||||
(list (search-path-specification
|
||||
(variable "CPATH")
|
||||
(files '("include")))
|
||||
(search-path-specification
|
||||
(variable "LIBRARY_PATH")
|
||||
(files '("lib" "lib64")))))
|
||||
;;
|
||||
|
||||
(define-public gfortran-11
|
||||
(define-public gfortran-11
|
||||
(hidden-package
|
||||
(custom-gcc gcc-11 "gfortran" '("fortran")
|
||||
%generic-search-paths)))
|
||||
|
||||
|
||||
(define-public gfortran-10
|
||||
(hidden-package
|
||||
(custom-gcc gcc-10 "gfortran" '("fortran")
|
||||
%generic-search-paths)))
|
||||
|
||||
|
||||
(define-public gfortran-toolchain-10
|
||||
(package (inherit (make-gcc-toolchain gfortran-10))
|
||||
(synopsis "Complete GCC tool chain for fortean lang development")
|
||||
(description "This package provides a complete GCC tool chain for
|
||||
fortran lang development to be installed in user profiles. This includes
|
||||
fortran, as well as libc (headers and binaries, plus debugging symbols
|
||||
in the @code{debug} output), and binutils.")))
|
||||
(custom-gcc gcc-11 "gfortran" '("fortran")
|
||||
%generic-search-paths
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public gfortran-toolchain-11
|
||||
(package (inherit (make-gcc-toolchain gfortran-11))
|
||||
(synopsis "Complete GCC tool chain for fortean lang development")
|
||||
(package
|
||||
(inherit (make-gcc-toolchain gfortran-11))
|
||||
(synopsis "Complete GCC tool chain for fortran lang development")
|
||||
(description "This package provides a complete GCC tool chain for
|
||||
fortran lang development to be installed in user profiles. This includes
|
||||
fortran, as well as libc (headers and binaries, plus debugging symbols
|
||||
in the @code{debug} output), and binutils.")))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; glicid/gcc.scm ends here
|
||||
fortran lang development to be installed in user profiles. This includes
|
||||
fortran, as well as libc (headers and binaries, plus debugging symbols
|
||||
in the @code{debug} output), and binutils."
|
||||
)
|
||||
)
|
||||
)
|
||||
|
|
|
@ -90,7 +90,7 @@
|
|||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages storage)
|
||||
;; #:use-module (glicid packages storage)
|
||||
#:use-module (glicid packages mpi)
|
||||
#:use-module (glicid packages gcc)
|
||||
|
||||
|
@ -142,23 +142,6 @@
|
|||
)
|
||||
)
|
||||
|
||||
;(define-public glicid-gromacs-openmpi
|
||||
; (package
|
||||
; (inherit gromacs)
|
||||
; (name "glicid-gromacs-openmpi")
|
||||
; (inputs `(("openmpi", openmpi)
|
||||
; ,@(package-inputs gromacs)))
|
||||
; (build-system cmake-build-system)
|
||||
; (arguments
|
||||
; `(#:configure-flags configure-flags)
|
||||
; (append configure-flags (list "-DGMX_MPI=on"
|
||||
; "-DCMAKE_C_COMPILER=mpicc"
|
||||
; "-DCMAKE_CXX_COMPILER=mpiicxx"
|
||||
; ))
|
||||
; )
|
||||
; )
|
||||
;)
|
||||
|
||||
|
||||
(define-public glicid-gromacs-openmpi
|
||||
(package
|
||||
|
@ -227,39 +210,6 @@
|
|||
)
|
||||
|
||||
|
||||
|
||||
;; pour futures customisations.
|
||||
|
||||
;(define-public glicid-openmpi-gcc-10
|
||||
; (package
|
||||
; (inherit openmpi)
|
||||
; (name "glicid-openpmi-gcc-10")
|
||||
; (inputs `(("gcc-10", gcc-10)
|
||||
; ("gfortran-11", gfortran-11)
|
||||
; ,@(package-inputs openmpi)))
|
||||
; )
|
||||
;)
|
||||
|
||||
|
||||
(define-public glicid-gromacs-gcc-11
|
||||
(package
|
||||
(inherit gromacs)
|
||||
(name "glicid-gromacs-gcc-11")
|
||||
(version "2020.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://ftp.gromacs.org/pub/gromacs/gromacs-" version ".tar.gz"))
|
||||
(sha256 (base32 "1acjrhcfzpqy2dncblhj97602jbg9gdha4q1bgji9nrj25lq6cch"))
|
||||
))
|
||||
|
||||
(inputs `(("gcc-11", gcc-11)
|
||||
("gfortran-11", gfortran-11)
|
||||
("glicid-openmpi-gcc-11", glicid-openmpi-gcc-11)
|
||||
,@(package-inputs gromacs)))
|
||||
))
|
||||
|
||||
|
||||
(define-public glicid-python-nbxmpp
|
||||
(package
|
||||
(inherit python-nbxmpp)
|
||||
|
@ -290,89 +240,6 @@
|
|||
)
|
||||
)
|
||||
|
||||
(define-public glicid-specific-hdf5-parallel-openmpi
|
||||
(package/inherit glicid-specific-hdf5 ;use the latest
|
||||
(name "glicid-specific-hdf5-parallel-openmpi")
|
||||
(inputs
|
||||
`(("mpi" ,glicid-specific-openmpi)
|
||||
,@(package-inputs glicid-specific-hdf5)))
|
||||
(arguments
|
||||
|
||||
; `(
|
||||
; #:tests? #f
|
||||
|
||||
(
|
||||
substitute-keyword-arguments (package-arguments glicid-specific-hdf5)
|
||||
((#:configure-flags flags)
|
||||
``("--enable-parallel" "--disable-tests"
|
||||
,@(delete "--enable-cxx"
|
||||
(delete "--enable-threadsafe" ,flags))))
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'build 'mpi-setup
|
||||
,%openmpi-setup)
|
||||
(add-before 'check 'patch-tests
|
||||
(lambda _
|
||||
;; OpenMPI's mpirun will exit with non-zero status if it
|
||||
;; detects an "abnormal termination", i.e. any process not
|
||||
;; calling MPI_Finalize(). Since the test is explicitly
|
||||
;; avoiding MPI_Finalize so as not to have at_exit and thus
|
||||
;; H5C_flush_cache from being called, mpirun will always
|
||||
;; complain, so turn this test off.
|
||||
(substitute* "testpar/Makefile"
|
||||
(("(^TEST_PROG_PARA.*)t_pflush1(.*)" front back)
|
||||
(string-append front back "\n")))
|
||||
(substitute* "tools/test/h5diff/testph5diff.sh"
|
||||
(("/bin/sh") (which "sh")))
|
||||
#t))))
|
||||
|
||||
))
|
||||
|
||||
|
||||
|
||||
(synopsis "Management suite for data with parallel IO support")))
|
||||
|
||||
|
||||
|
||||
(define-public glicid-specific-openblas
|
||||
(package
|
||||
(inherit openblas)
|
||||
(name "glicid-specific-openblas")
|
||||
(inputs `(
|
||||
("fortran-lib",gfortran-11 "lib")
|
||||
,@(package-inputs openblas)))
|
||||
(native-inputs `(
|
||||
("gcc", gcc-11)
|
||||
("fortran" ,gfortran-11)
|
||||
,@(package-native-inputs openblas)))
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-vspecific-openblas
|
||||
(package
|
||||
(inherit openblas)
|
||||
(name "glicid-vspecific-openblas")
|
||||
(version "0.3.15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/xianyi/OpenBLAS/releases/download/v" version "/OpenBLAS-" version ".tar.gz" ))
|
||||
; (file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1gjbkrsh6n28hdp2ciyjigc8vg764d2r0jbzl63v753mjzn9va9h"))))
|
||||
|
||||
(name "glicid-specific-openblas")
|
||||
(inputs `(
|
||||
("fortran-lib",gfortran-11 "lib")
|
||||
,@(package-inputs openblas)))
|
||||
(native-inputs `(
|
||||
("gcc", gcc-11)
|
||||
("fortran" ,gfortran-11)
|
||||
,@(package-native-inputs openblas)))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-motif
|
||||
(package
|
||||
|
@ -427,8 +294,9 @@
|
|||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://oauth2:9i-PgbC2w_JEx6DUUqzf@gitlab.univ-nantes.fr/CCIPL/legacy_code_mirror/grace.git")
|
||||
(url "https://oauth2:glpat-RsX2GjsD2WrzXubiJeou@gitlab.univ-nantes.fr/CCIPL/legacy_code_mirror/grace.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32 "1wb8v0q8xa2akas0swpgdgw1s66i50k7kh1g2f894hnk91fzx56z"))
|
||||
)
|
||||
)
|
||||
|
@ -537,6 +405,6 @@
|
|||
)
|
||||
)
|
||||
|
||||
|
||||
;; python-glances is now upstreamed as glances in python-xyz
|
||||
|
||||
;;; glicid.scm ends here
|
||||
|
|
|
@ -1,113 +1,51 @@
|
|||
(define-module (glicid packages gnome)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages gnome)
|
||||
|
||||
#:use-module (glicid utils)
|
||||
#:use-module (glicid packages vpn)
|
||||
)
|
||||
|
||||
|
||||
;;;;;;;;
|
||||
|
||||
|
||||
(define-public glicid-terminator
|
||||
(package
|
||||
(inherit terminator)
|
||||
(name "glicid-terminator")
|
||||
(propagated-inputs
|
||||
`(
|
||||
("sssd" ,sssd)
|
||||
,@(package-propagated-inputs terminator)
|
||||
|
||||
))
|
||||
|
||||
)
|
||||
(package
|
||||
(inherit terminator)
|
||||
(name "glicid-terminator")
|
||||
(propagated-inputs
|
||||
`(
|
||||
("sssd" ,sssd)
|
||||
,@(package-propagated-inputs terminator)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public network-manager-openconnect-upstream
|
||||
(package
|
||||
(inherit network-manager-openconnect)
|
||||
(name "network-manager-openconnect-upstream")
|
||||
(version "1.2.8")
|
||||
; (version "1.2.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://gnome/sources/NetworkManager-openconnect/"
|
||||
(version-major+minor version)
|
||||
"/NetworkManager-openconnect-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1k6d6cv2c9v8gf0f2js6cklr3ijhaanbz0nhvlwy5n42bmwamvax"))))
|
||||
)
|
||||
)
|
||||
|
||||
(define-public network-manager-openconnect-glicid
|
||||
(transform-package
|
||||
(
|
||||
(instead-of "openconnect" openconnect-upstream)
|
||||
network-manager-openconnect
|
||||
) "glicid"
|
||||
)
|
||||
)
|
||||
|
||||
|
|
2911
glicid/packages/golang.scm
Normal file
2911
glicid/packages/golang.scm
Normal file
File diff suppressed because it is too large
Load diff
|
@ -2,145 +2,328 @@
|
|||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (gnu packages backup)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages golang)
|
||||
#:use-module ((gnu packages linux) #:prefix gnu:)
|
||||
#:use-module (gnu packages linux) ;; yes : redundant FIXIT
|
||||
#:use-module (gnu system uuid)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages gcc)
|
||||
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (glicid packages golang)
|
||||
#:use-module (glicid utils)
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-rdma-core
|
||||
(package
|
||||
(inherit rdma-core)
|
||||
(name "glicid-rdma-core")
|
||||
(define-public rdma-core-upstream-37.1
|
||||
(package
|
||||
(inherit gnu:rdma-core)
|
||||
(name (string-append (package-name gnu:rdma-core) "-upstream" ))
|
||||
(version "37.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/linux-rdma/rdma-core"
|
||||
"/releases/download/v" version "/rdma-core-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hjwagf5x48vgshy5s01qjlzjr8kmxpflfcvh8pgj3zbj82zzxiz"))))
|
||||
)
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/linux-rdma/rdma-core/releases/download/v" version "/rdma-core-" version ".tar.gz"))
|
||||
(sha256 (base32 "1hjwagf5x48vgshy5s01qjlzjr8kmxpflfcvh8pgj3zbj82zzxiz"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-rdma-core-gcc-11
|
||||
(package
|
||||
(inherit glicid-rdma-core)
|
||||
(name "glicid-rdma-core-gcc-11")
|
||||
(inputs `(("gcc-11", gcc-11)
|
||||
,@(package-inputs rdma-core)))
|
||||
)
|
||||
(define-public rdma-core-upstream-38.0
|
||||
(package
|
||||
(inherit gnu:rdma-core)
|
||||
(name (string-append (package-name gnu:rdma-core) "-upstream" ))
|
||||
(version "38.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/linux-rdma/rdma-core/releases/download/v" version "/rdma-core-" version ".tar.gz"))
|
||||
(sha256 (base32 "043vybwx9kz4mbbmnj0jzkzsw02vzhkkjc5j3yjdiiqkmsgwr3cs"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public rdma-core-upstream-39.0
|
||||
(package
|
||||
(inherit gnu:rdma-core)
|
||||
(name (string-append (package-name gnu:rdma-core) "-upstream" ))
|
||||
(version "39.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/linux-rdma/rdma-core/releases/download/v" version "/rdma-core-" version ".tar.gz"))
|
||||
(sha256 (base32 "0y13px3qgyh3szywjhikw183y54iym9sa60aw0sf51p3kzgg1spn"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-libfabric
|
||||
(package
|
||||
(inherit libfabric)
|
||||
(name "glicid-libfabric")
|
||||
(define local-rdma-core rdma-core-upstream-39.0)
|
||||
|
||||
(define-public rdma-core-latest (latest-version local-rdma-core gnu:rdma-core))
|
||||
|
||||
(define-public libfabric-upstream-1.13.1
|
||||
(package
|
||||
(inherit gnu:libfabric)
|
||||
(version "1.13.1")
|
||||
)
|
||||
(name (string-append (package-name gnu:libfabric) "-upstream" ))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/ofiwg/libfabric/releases/download/v" version "/libfabric-" version ".tar.bz2"))
|
||||
(sha256 (base32 "03nkhqjjyw3hwhxrn7rg30qc1gzc1r7p7lymyz5s96m3qhwfsvlf"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public libfabric-upstream-1.14.0
|
||||
(package
|
||||
(inherit gnu:libfabric)
|
||||
(version "1.14.0")
|
||||
(name (string-append (package-name gnu:libfabric) "-upstream" ))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/ofiwg/libfabric/releases/download/v" version "/libfabric-" version ".tar.bz2"))
|
||||
(sha256 (base32 "16klkzkg04wb699mqpi8mn2r8sqzj35zalynbdazyg4ghj4169pw"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public libfabric-upstream-1.14.1
|
||||
(package
|
||||
(inherit gnu:libfabric)
|
||||
(version "1.14.1")
|
||||
(name (string-append (package-name gnu:libfabric) "-upstream" ))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/ofiwg/libfabric/releases/download/v" version "/libfabric-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1vca7p5cczlrayglps8ibdy0fz9nb9pm04jj07cikr58pjabpykc"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-libfabric-gcc-11
|
||||
(package
|
||||
(inherit glicid-libfabric)
|
||||
(name "glicid-libfabric-gcc-11")
|
||||
|
||||
(inputs `(("gcc-11", gcc-11)
|
||||
("rdma-core", glicid-rdma-core-gcc-11)
|
||||
,@(package-inputs glicid-libfabric)))
|
||||
)
|
||||
(define-public libfabric-upstream-1.15.0
|
||||
(package
|
||||
(inherit gnu:libfabric)
|
||||
(version "1.15.0")
|
||||
(name (string-append (package-name gnu:libfabric) "-upstream" ))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/ofiwg/libfabric/releases/download/v" version "/libfabric-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1slvgih7y7mb30mvnvxm31k202z48pb3yh98vcfmpsyyx9c2r63h"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
;;; glicid/linux.scm ends here
|
||||
(define-public libfabric-opx-beta-upstream-1.14.0-c
|
||||
|
||||
(let ((commit "e127cd074bbfd8c50b9f3cfb5b8e24162f8076a4"))
|
||||
(package
|
||||
(inherit gnu:libfabric)
|
||||
(version "1.14.0c")
|
||||
(name (string-append (package-name gnu:libfabric) "-opx-beta-upstream" ))
|
||||
|
||||
(source
|
||||
(origin
|
||||
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ofiwg/libfabric.git")
|
||||
(commit commit)
|
||||
))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32 "0fh665l2xcl59zhbn63y5bm8v9s652gk5s8r094qb4if0bp3in04"))
|
||||
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("autoconf", autoconf)
|
||||
("automake", automake)
|
||||
("libtool", libtool)
|
||||
("libuuid" , util-linux "lib")
|
||||
("numactl" , gnu:numactl)
|
||||
("psm2" , gnu:psm2)
|
||||
,@(package-inputs gnu:libfabric)))
|
||||
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public libfabric-opx-beta-upstream-1.14.0-d
|
||||
|
||||
(let ((commit "e127cd074bbfd8c50b9f3cfb5b8e24162f8076a4"))
|
||||
(package
|
||||
(inherit gnu:libfabric)
|
||||
(version "1.14.0d")
|
||||
(name (string-append (package-name gnu:libfabric) "-opx-beta-upstream" ))
|
||||
|
||||
(source
|
||||
(origin
|
||||
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ofiwg/libfabric.git")
|
||||
(commit commit)
|
||||
))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32 "0fh665l2xcl59zhbn63y5bm8v9s652gk5s8r094qb4if0bp3in04"))
|
||||
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("autoconf", autoconf)
|
||||
("automake", automake)
|
||||
("libtool", libtool)
|
||||
("libuuid" , util-linux "lib")
|
||||
("numactl" , gnu:numactl)
|
||||
; ("psm2" , gnu:psm2) ; intended : no psm2
|
||||
,@(package-inputs gnu:libfabric)))
|
||||
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
;(define local-libfabric libfabric-opx-beta-upstream-1.14.0-c)
|
||||
;(define local-libfabric libfabric-opx-beta-upstream-1.14.0-d)
|
||||
;(define local-libfabric libfabric-upstream-1.14.1)
|
||||
(define local-libfabric libfabric-upstream-1.15.0)
|
||||
|
||||
(define-public libfabric-latest (latest-version local-libfabric gnu:libfabric))
|
||||
|
||||
;(define-public apptainer
|
||||
; (package
|
||||
; (name "apptainer")
|
||||
; (version "1.0.1")
|
||||
; (source
|
||||
; (origin
|
||||
; (method git-fetch)
|
||||
; (uri (git-reference
|
||||
; (url "https://github.com/apptainer/apptainer/")
|
||||
; (commit "a308dd1a664a0bf01ff74b39c69d07442c7fac4f")
|
||||
; ))
|
||||
; (sha256 (base32 "0k2fkwlvp72vh07a7m1sdzj1f3zml9y5mligzhnscs7zzlv5s28j"))
|
||||
; (modules '((srfi srfi-26)))
|
||||
; (snippet
|
||||
; '(call-with-output-file "VERSION" (cut display version <>))
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; (home-page "https://apptainer.org/")
|
||||
; (synopsis "THE CONTAINER SYSTEM FOR SECURE HIGH PERFORMANCE COMPUTING")
|
||||
; (description "Apptainer/Singularity is the most widely used container system for HPC.
|
||||
; It is designed to execute applications at bare-metal performance while
|
||||
; being secure, portable, and 100% reproducible. Apptainer is an
|
||||
; open-source project with a friendly community of developers and users.
|
||||
; The user base continues to expand, with Apptainer/Singularity now used
|
||||
; across industry and academia in many areas of work."
|
||||
; )
|
||||
; (license license:bsd-3)
|
||||
; (build-system gnu-build-system)
|
||||
; (inputs `(
|
||||
; ("libarchive", libarchive)
|
||||
; ("python", python-wrapper)
|
||||
; ("zlib", zlib)
|
||||
; ("squashfs-tools", squashfs-tools)
|
||||
; ("openssl", openssl)
|
||||
; ("libseccomp", gnu:libseccomp)
|
||||
; ("cryptsetup", cryptsetup)
|
||||
; ("go", go-1.17)
|
||||
; ("pkg-config", pkg-config)
|
||||
; ("go-github-com-netflix-go-expect-0.0.0-20220104043353-73e0943537d2", go-github-com-netflix-go-expect-0.0.0-20220104043353-73e0943537d2)
|
||||
; ("go-github-com-protonmail-go-crypto-0.0.0-20220113124808-70ae35bab23f", go-github-com-protonmail-go-crypto-0.0.0-20220113124808-70ae35bab23f)
|
||||
; ("go-github-com-adigunhammedolalekan-registry-auth-0.0.0-20200730122110-8cde180a3a60", go-github-com-adigunhammedolalekan-registry-auth-0.0.0-20200730122110-8cde180a3a60)
|
||||
; ("go-github-com-apex-log-1.9.0", go-github-com-apex-log-1.9.0)
|
||||
; ("go-github-com-apptainer-container-key-client-0.7.2", go-github-com-apptainer-container-key-client-0.7.2)
|
||||
; ("go-github-com-apptainer-container-library-client-1.2.2", go-github-com-apptainer-container-library-client-1.2.2)
|
||||
; ("go-github-com-apptainer-sif-v2-2.3.2", go-github-com-apptainer-sif-v2-2.3.2)
|
||||
; ("go-github-com-blang-semver-v4-4.0.0", go-github-com-blang-semver-v4-4.0.0)
|
||||
; ("go-github-com-buger-jsonparser-1.1.1", go-github-com-buger-jsonparser-1.1.1)
|
||||
; ("go-github-com-cenkalti-backoff-v4-4.1.2", go-github-com-cenkalti-backoff-v4-4.1.2)
|
||||
; ("go-github-com-containerd-cgroups-1.0.3", go-github-com-containerd-cgroups-1.0.3)
|
||||
; ("go-github-com-containerd-containerd-1.6.0", go-github-com-containerd-containerd-1.6.0)
|
||||
; ("go-github-com-containernetworking-cni-1.0.1", go-github-com-containernetworking-cni-1.0.1)
|
||||
; ("go-github-com-containernetworking-plugins-1.1.0", go-github-com-containernetworking-plugins-1.1.0)
|
||||
; ("go-github-com-containers-image-v5-5.19.1", go-github-com-containers-image-v5-5.19.1)
|
||||
; ("go-github-com-creack-pty-1.1.17", go-github-com-creack-pty-1.1.17)
|
||||
; ("go-github-com-cyphar-filepath-securejoin-0.2.3", go-github-com-cyphar-filepath-securejoin-0.2.3)
|
||||
; ("go-github-com-docker-docker-20.10.12+incompatible", go-github-com-docker-docker-20.10.12+incompatible)
|
||||
; ("go-github-com-fatih-color-1.13.0", go-github-com-fatih-color-1.13.0)
|
||||
; ("go-github-com-go-log-log-0.2.0", go-github-com-go-log-log-0.2.0)
|
||||
; ("go-github-com-google-uuid-1.3.0", go-github-com-google-uuid-1.3.0)
|
||||
; ("go-github-com-opencontainers-go-digest-1.0.0", go-github-com-opencontainers-go-digest-1.0.0)
|
||||
; ("go-github-com-opencontainers-image-spec-1.0.3-0.20211202193544-a5463b7f9c84", go-github-com-opencontainers-image-spec-1.0.3-0.20211202193544-a5463b7f9c84)
|
||||
; ("go-github-com-opencontainers-runtime-spec-1.0.3-0.20210326190908-1c3f411f0417", go-github-com-opencontainers-runtime-spec-1.0.3-0.20210326190908-1c3f411f0417)
|
||||
; ("go-github-com-opencontainers-runtime-tools-0.9.1-0.20210326182921-59cdde06764b", go-github-com-opencontainers-runtime-tools-0.9.1-0.20210326182921-59cdde06764b)
|
||||
; ("go-github-com-opencontainers-selinux-1.10.0", go-github-com-opencontainers-selinux-1.10.0)
|
||||
; ("go-github-com-opencontainers-umoci-0.4.7", go-github-com-opencontainers-umoci-0.4.7)
|
||||
; ("go-github-com-pelletier-go-toml-1.9.4", go-github-com-pelletier-go-toml-1.9.4)
|
||||
; ("go-github-com-pkg-errors-0.9.1", go-github-com-pkg-errors-0.9.1)
|
||||
; ("go-github-com-seccomp-containers-golang-0.6.0", go-github-com-seccomp-containers-golang-0.6.0)
|
||||
; ("go-github-com-seccomp-libseccomp-golang-0.9.2-0.20210429002308-3879420cc921", go-github-com-seccomp-libseccomp-golang-0.9.2-0.20210429002308-3879420cc921)
|
||||
; ("go-github-com-spf13-cobra-1.3.0", go-github-com-spf13-cobra-1.3.0)
|
||||
; ("go-github-com-spf13-pflag-1.0.5", go-github-com-spf13-pflag-1.0.5)
|
||||
; ("go-github-com-sylabs-json-resp-0.8.0", go-github-com-sylabs-json-resp-0.8.0)
|
||||
; ("go-github-com-vbauerster-mpb-v7-7.4.1", go-github-com-vbauerster-mpb-v7-7.4.1)
|
||||
; ("go-golang-org-x-sys-0.0.0-20220209214540-3681064d5158", go-golang-org-x-sys-0.0.0-20220209214540-3681064d5158)
|
||||
; ("go-golang-org-x-term-0.0.0-20210916214954-140adaaadfaf", go-golang-org-x-term-0.0.0-20210916214954-140adaaadfaf)
|
||||
; ("go-gopkg-in-yaml-v2-2.4.0", go-gopkg-in-yaml-v2-2.4.0)
|
||||
; ("go-gotest-tools-v3-3.1.0", go-gotest-tools-v3-3.1.0)
|
||||
; ("go-mvdan-cc-sh-v3-3.4.3-0.20220202175809-113ed667a8a7", go-mvdan-cc-sh-v3-3.4.3-0.20220202175809-113ed667a8a7)
|
||||
; ("go-oras-land-oras-go-1.1.0", go-oras-land-oras-go-1.1.0)
|
||||
; ("go-github-com-opencontainers-image-spec-1.0.2-0.20211117181255-693428a734f5", go-github-com-opencontainers-image-spec-1.0.2-0.20211117181255-693428a734f5)
|
||||
; ("go-github-com-moby-sys-0.0.0-20220308220145-03355939d693", go-github-com-moby-sys-0.0.0-20220308220145-03355939d693)
|
||||
; ("go-github-com-urfave-cli-1.22.5", go-github-com-urfave-cli-1.22.5)
|
||||
; ("go-github-com-xeipuuv-gojsonpointer-0.0.0-20190905194746-02993c407bfb", go-github-com-xeipuuv-gojsonpointer-0.0.0-20190905194746-02993c407bfb)
|
||||
; ("go-github-com-yvasiyarov-go-metrics-0.0.0-20150112132944-c25f46c4b940", go-github-com-yvasiyarov-go-metrics-0.0.0-20150112132944-c25f46c4b940)
|
||||
; ("go-github-com-yvasiyarov-gorelic-0.0.6", go-github-com-yvasiyarov-gorelic-0.0.6)
|
||||
; ("go-github-com-yvasiyarov-newrelic-platform-go-0.0.0-20160601141957-9c099fbc30e9", go-github-com-yvasiyarov-newrelic-platform-go-0.0.0-20160601141957-9c099fbc30e9)
|
||||
; ))
|
||||
; (arguments
|
||||
; `(#:phases
|
||||
; (modify-phases %standard-phases
|
||||
; (replace 'configure
|
||||
; (lambda* (#:key inputs native-inputs propagated-inputs configure-flags #:allow-other-keys)
|
||||
; (begin
|
||||
; (invoke "./mconfig" "--localstatedir=/var")
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; (replace 'build
|
||||
; (lambda* (#:key inputs native-inputs propagated-inputs configure-flags #:allow-other-keys)
|
||||
; (begin
|
||||
; (invoke "make" "-C" "builddir")
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; (replace 'install
|
||||
; (lambda* (#:key inputs native-inputs propagated-inputs configure-flags #:allow-other-keys)
|
||||
; (begin
|
||||
; (invoke "make" "-C" "builddir" "install")
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
;)
|
||||
;
|
||||
|
|
65
glicid/packages/maths.scm
Normal file
65
glicid/packages/maths.scm
Normal file
|
@ -0,0 +1,65 @@
|
|||
(define-module (glicid packages maths)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module ((gnu packages maths) #:prefix gnu:)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (glicid utils)
|
||||
)
|
||||
|
||||
(define-public scalapack-upstream
|
||||
(package
|
||||
(inherit gnu:scalapack)
|
||||
(name "scalapack-upstream")
|
||||
(version "2.1.0-new-upstream")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://oauth2:glpat-RsX2GjsD2WrzXubiJeou@gitlab.univ-nantes.fr/CCIPL/legacy_code_mirror/scalapack.git")
|
||||
(commit "myv2.0.2")
|
||||
)
|
||||
)
|
||||
(file-name "scalapack-univ-myv2")
|
||||
; (patches (search-patches "scalapack-blacs-mpi-deprecations.patch"))
|
||||
(sha256 (base32 "1ccic46psf2hl9wsyflvkn5rxg8k17q578m9mzimvm9brbggf0na" ))
|
||||
)
|
||||
)
|
||||
(arguments
|
||||
`(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'check 'mpi-setup
|
||||
,%openmpi-setup
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define local:scalapack scalapack-upstream)
|
||||
(define-public scalapack-latest (latest-version local:scalapack gnu:scalapack))
|
||||
|
||||
(define-public openblas-upstream-0.3.15
|
||||
(package
|
||||
(inherit gnu:openblas)
|
||||
(name "openblas-upstream")
|
||||
(version "0.3.15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/xianyi/OpenBLAS/releases/download/v" version "/OpenBLAS-" version ".tar.gz" ))
|
||||
(sha256 (base32 "1gjbkrsh6n28hdp2ciyjigc8vg764d2r0jbzl63v753mjzn9va9h"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define local:openblas openblas-upstream-0.3.15)
|
||||
(define-public scalapack-latest (latest-version local:openblas gnu:openblas))
|
||||
|
|
@ -1,138 +1,80 @@
|
|||
(define-module (glicid packages mpi)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages gcc)
|
||||
#:use-module ((gnu packages mpi) #:prefix gnu:)
|
||||
#:use-module (glicid packages linux)
|
||||
#:use-module (glicid packages fabric-management)
|
||||
|
||||
|
||||
|
||||
|
||||
#:use-module (glicid utils)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (glicid packages parallel)
|
||||
#:use-module (gnu packages)
|
||||
)
|
||||
|
||||
(define-public glicid-openmpi
|
||||
(package
|
||||
(inherit openmpi)
|
||||
(name "glicid-openpmi")
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-openmpi-gcc-11
|
||||
(package
|
||||
(inherit glicid-openmpi)
|
||||
(name "glicid-openpmi-gcc-11")
|
||||
|
||||
(inputs `(("gcc-11", gcc-11)
|
||||
("gfortran-11", gfortran-11)
|
||||
("glicid-ucx-gcc-11",glicid-ucx-gcc-11)
|
||||
("glicid-rdma-core-gcc-11",glicid-rdma-core-gcc-11)
|
||||
("libfabric",glicid-libfabric-gcc-11)
|
||||
,@(package-inputs openmpi)))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define-public glicid-specific-openmpi
|
||||
(define-public openmpi-upstream-4.1.2
|
||||
(package
|
||||
(inherit glicid-openmpi-gcc-11)
|
||||
(name "glicid-specific-openmpi")
|
||||
(inputs `(
|
||||
("gcc",gcc-11)
|
||||
("rdma-core",glicid-rdma-core-gcc-11)
|
||||
("ucx",glicid-ucx-gcc-10)
|
||||
("libfabric",glicid-libfabric-gcc-11)
|
||||
; ("slurm", glicid-specific-slurm)
|
||||
,@(package-inputs glicid-openmpi-gcc-11)))
|
||||
(inherit gnu:openmpi)
|
||||
(name "openmpi-upstream")
|
||||
(version "4.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.open-mpi.org/software/ompi/v"
|
||||
(version-major+minor version)
|
||||
"/downloads/openmpi-" version ".tar.bz2"))
|
||||
(sha256 (base32 "09xmlr4mfs02kwcf5cmdgkcdjj81fjwjmpa3rz2k28f3gz7wfy4v"))
|
||||
(patches (search-patches "openmpi-mtl-priorities.patch"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define local-openmpi openmpi-upstream-4.1.2)
|
||||
|
||||
(define-public openmpi-latest (latest-version local-openmpi gnu:openmpi))
|
||||
|
||||
|
||||
(define-public openmpi-glicid
|
||||
(package
|
||||
(inherit
|
||||
(transform-package ((instead-of "slurm" slurm-glicid) openmpi-latest) "glicid")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-libfabric
|
||||
(transform-package ((instead-of "libfabric" libfabric-latest) openmpi-glicid) "libfabric")
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-rdma
|
||||
(transform-package ((instead-of "rdma-core" rdma-core-latest) openmpi-glicid) "rdma-core")
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-ucx
|
||||
(transform-package ((instead-of "ucx" ucx-latest-glicid) openmpi-glicid) "ucx" )
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-libfabric-rdma
|
||||
(transform-package ((instead-of "rdma-core" rdma-core-latest) openmpi-glicid-libfabric) "rdma")
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-libfabric-ucx
|
||||
(transform-package ((instead-of "ucx" ucx-latest-glicid) openmpi-glicid-libfabric) "ucx")
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-libfabric-rdma-ucx
|
||||
(transform-package ((instead-of "ucx" ucx-latest-glicid) openmpi-glicid-libfabric-rdma) "ucx")
|
||||
)
|
||||
|
||||
(define-public openmpi-glicid-libfabric-rdma-ucx-ccipl
|
||||
(transform-package ((instead-of "slurm-glicid" slurm-ccipl) openmpi-glicid-libfabric-rdma-ucx) "ccipl")
|
||||
)
|
||||
|
||||
|
||||
(define openmpi-glicid-transform-gcc-11 (gcc11-instead-of-gcc openmpi-glicid))
|
||||
|
||||
(define-public openmpi-glicid-gcc-11
|
||||
(package
|
||||
(inherit openmpi-glicid-transform-gcc-11)
|
||||
(name (string-append (package-name openmpi-glicid-transform-gcc-11) "-gcc-11" ))
|
||||
)
|
||||
)
|
||||
|
|
21
glicid/packages/networking.scm
Normal file
21
glicid/packages/networking.scm
Normal file
|
@ -0,0 +1,21 @@
|
|||
(define-module (glicid packages networking)
|
||||
#:use-module ((gnu packages networking) #:prefix gnu:)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix packages)
|
||||
)
|
||||
|
||||
|
||||
(define-public squid
|
||||
(package
|
||||
(inherit gnu:squid)
|
||||
(name "squid")
|
||||
(version "5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.squid-cache.org/Versions/v5/squid-" version ".tar.xz"))
|
||||
(sha256 (base32 "0v0h949l4wd1hl87a8wkk1fkvj8j44wifyxi9myxdgbnci6lh7af"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
|
@ -4,213 +4,74 @@
|
|||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages shells)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages kerberos)
|
||||
#:use-module (gnu packages gsasl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages onc-rpc)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages storage)
|
||||
#:use-module (glicid packages mpi)
|
||||
#:use-module (glicid packages gcc)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages shells)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages kerberos)
|
||||
#:use-module (gnu packages gsasl)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages onc-rpc)
|
||||
|
||||
#:use-module (gnu packages storage)
|
||||
; #:use-module (glicid packages storage)
|
||||
)
|
||||
|
||||
|
||||
;; https://github.com/nfs-ganesha/nfs-ganesha/archive/refs/tags/V3.5.tar.gz
|
||||
|
||||
(define-public nfs-ganesha
|
||||
(package
|
||||
(name "nfs-ganesha")
|
||||
(version "3.5")
|
||||
(source (origin
|
||||
; (method url-fetch)
|
||||
; (uri (string-append
|
||||
; "https://github.com/nfs-ganesha/nfs-ganesha/archive/refs/tags/V" version ".tar.gz"))
|
||||
;
|
||||
;
|
||||
; (sha256 (base32 "0545c6snmx66vpa427ij21md81vi5xa2v77428i4pq6fk6mgm06r"))
|
||||
; )
|
||||
; )
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/nfs-ganesha/nfs-ganesha.git")
|
||||
(commit (string-append "V" version))
|
||||
(recursive? #t)
|
||||
)
|
||||
)
|
||||
(sha256 (base32 "0rdg3mjqrr4a8mywxkfis25gkbn4fylw42hg1d9cvp4dwrjk3hl4"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
|
||||
)
|
||||
)
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(
|
||||
;; #:validate-runpath? #f ;; we should know why
|
||||
#:configure-flags
|
||||
(list ;; Defaults to "lib64" on 64-bit archs.
|
||||
(string-append
|
||||
; "-DCMAKE_INSTALL_LIBDIR="
|
||||
; (assoc-ref %outputs "out") "/lib"
|
||||
|
||||
"-DLIB_INSTALL_DIR="
|
||||
(assoc-ref %outputs "out") "/lib"
|
||||
|
||||
; "-DCMAKE_INSTALL_RPATH="
|
||||
; (assoc-ref %outputs "out")
|
||||
; "/lib:"
|
||||
; (assoc-ref %outputs "out")
|
||||
; "/lib64"
|
||||
)
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/nfs-ganesha/nfs-ganesha.git")
|
||||
(commit (string-append "V" version))
|
||||
(recursive? #t)
|
||||
)
|
||||
)
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir (lambda _ (chdir "src") #t)
|
||||
|
||||
|
||||
)
|
||||
)
|
||||
)
|
||||
(sha256 (base32 "0rdg3mjqrr4a8mywxkfis25gkbn4fylw42hg1d9cvp4dwrjk3hl4"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
)
|
||||
|
||||
; (native-search-paths
|
||||
; (list
|
||||
; (search-path-specification
|
||||
; (variable "LIBRARY_PATH")
|
||||
; (files '("lib" "lib64"))
|
||||
; )
|
||||
; )
|
||||
; )
|
||||
|
||||
(inputs
|
||||
`(
|
||||
("perl", perl)
|
||||
("oksh",oksh)
|
||||
("python-3",python-3)
|
||||
("mit-krb5",mit-krb5)
|
||||
("gss",gss)
|
||||
("pkg-config",pkg-config)
|
||||
("jemalloc",jemalloc)
|
||||
("ceph:lib",ceph "lib") ;; will use latest gnu or glicid ceph
|
||||
("libnfsidmap",libnfsidmap)
|
||||
("libnfs",libnfs)
|
||||
; ("xfsprogs",xfsprogs)
|
||||
("liburcu",liburcu)
|
||||
("bison",bison)
|
||||
("flex",flex)
|
||||
("libnsl",libnsl)
|
||||
("util-linux" ,util-linux "lib") ;; uuid.h
|
||||
|
||||
)
|
||||
)
|
||||
|
||||
;; placeholders
|
||||
|
||||
(synopsis "nfs-ganesha")
|
||||
(description
|
||||
"NFS-Ganesha.
|
||||
bla.")
|
||||
(build-system cmake-build-system)
|
||||
(arguments `(
|
||||
#:configure-flags (list
|
||||
(string-append "-DLIB_INSTALL_DIR=" (assoc-ref %outputs "out") "/lib" )
|
||||
)
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir (
|
||||
lambda _ (chdir "src")
|
||||
#t
|
||||
))
|
||||
)
|
||||
))
|
||||
(inputs `(
|
||||
("perl", perl)
|
||||
("oksh", oksh)
|
||||
("python-3", python-3)
|
||||
("mit-krb5", mit-krb5)
|
||||
("gss", gss)
|
||||
("pkg-config", pkg-config)
|
||||
("jemalloc", jemalloc)
|
||||
("ceph:lib", ceph "lib")
|
||||
("libnfsidmap", libnfsidmap)
|
||||
("libnfs", libnfs)
|
||||
("liburcu", liburcu)
|
||||
("bison", bison)
|
||||
("flex", flex)
|
||||
("libnsl", libnsl)
|
||||
("util-linux", util-linux "lib")
|
||||
))
|
||||
(synopsis "nfs-ganesha")
|
||||
(description "NFS-Ganesha.")
|
||||
(home-page "https://")
|
||||
(license license:gpl3+))
|
||||
;)
|
||||
|
||||
; )
|
||||
;)
|
||||
(license license:gpl3+)
|
||||
)
|
||||
)
|
||||
;;; glicid/nfs.scm ends here
|
||||
|
|
|
@ -4,10 +4,11 @@
|
|||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:select (asl2.0))
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages geo)
|
||||
#:use-module (gnu packages pcre)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
|
@ -17,6 +18,88 @@
|
|||
#:use-module (glicid packages openldap)
|
||||
)
|
||||
|
||||
(define-public nginx
|
||||
(package
|
||||
(name "nginx")
|
||||
(version "1.21.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz"))
|
||||
(sha256 (base32 "1bh52jqqcaj5wlh2kvhxr00jhk2hnk8k97ki4pwyj4c8920p1p36"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list libxml2 libxslt openssl pcre zlib))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-/bin/sh
|
||||
(lambda _
|
||||
(substitute* "auto/feature"
|
||||
(("/bin/sh") (which "sh")))
|
||||
#t))
|
||||
(replace 'configure
|
||||
;; The configure script is hand-written, not from GNU autotools.
|
||||
(lambda* (#:key configure-flags inputs outputs #:allow-other-keys)
|
||||
(let ((flags
|
||||
(append (list (string-append "--prefix=" (assoc-ref outputs "out"))
|
||||
"--with-http_ssl_module"
|
||||
"--with-http_v2_module"
|
||||
"--with-http_xslt_module"
|
||||
"--with-http_gzip_static_module"
|
||||
"--with-http_gunzip_module"
|
||||
"--with-http_addition_module"
|
||||
"--with-http_sub_module"
|
||||
"--with-pcre-jit"
|
||||
"--with-debug"
|
||||
"--with-stream"
|
||||
;; Even when not cross-building, we pass the
|
||||
;; --crossbuild option to avoid customizing for the
|
||||
;; kernel version on the build machine.
|
||||
,(let ((system "Linux") ; uname -s
|
||||
(release "3.2.0") ; uname -r
|
||||
;; uname -m
|
||||
(machine (match (or (%current-target-system)
|
||||
(%current-system))
|
||||
("x86_64-linux" "x86_64")
|
||||
("i686-linux" "i686")
|
||||
("mips64el-linux" "mips64")
|
||||
(_ "UNSUPPORTED"))))
|
||||
(string-append "--crossbuild=" system ":" release ":" machine)
|
||||
))
|
||||
configure-flags)))
|
||||
(setenv "CC" ,(cc-for-target))
|
||||
(setenv "CFLAGS" ; CPPFLAGS is not respected
|
||||
(string-append "-I" (assoc-ref inputs "libxml2")
|
||||
"/include/libxml2"))
|
||||
(format #t "configure flags: ~s~%" flags)
|
||||
(apply invoke "./configure" flags)
|
||||
#t)))
|
||||
(add-after 'install 'install-man-page
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(man (string-append out "/share/man")))
|
||||
(install-file "objs/nginx.8" (string-append man "/man8"))
|
||||
#t)))
|
||||
(add-after 'install 'fix-root-dirs
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(share (string-append out "/share/nginx")))
|
||||
(rmdir (string-append out "/logs"))
|
||||
(mkdir-p share)
|
||||
(rename-file (string-append out "/conf")
|
||||
(string-append share "/conf"))
|
||||
(rename-file (string-append out "/html")
|
||||
(string-append share "/html"))
|
||||
#t))))))
|
||||
(home-page "https://nginx.org")
|
||||
(synopsis "HTTP and reverse proxy server")
|
||||
(description
|
||||
"Nginx (\"engine X\") is a high-performance web and reverse proxy server
|
||||
created by Igor Sysoev. It can be used both as a stand-alone web server
|
||||
and as a proxy to reduce the load on back-end HTTP or mail servers.")
|
||||
(license (list license:bsd-2 license:expat license:bsd-3 license:bsd-4))))
|
||||
|
||||
|
||||
(define-public nginx-ldap-auth-module
|
||||
(package
|
||||
(inherit nginx)
|
||||
|
@ -26,9 +109,9 @@
|
|||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/kvspb/nginx-auth-ldap")
|
||||
(commit version)
|
||||
)
|
||||
(url "https://github.com/kvspb/nginx-auth-ldap")
|
||||
(commit version)
|
||||
)
|
||||
)
|
||||
(file-name (git-file-name "nginx-ldap-auth-module" version))
|
||||
(sha256 (base32 "023zmdir7w92dnb508ggskkc7kmd7k71hc597sb7i4xfgpwxzq1s" ))
|
||||
|
@ -86,15 +169,14 @@
|
|||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://github.com/SpiderLabs/ModSecurity/releases/download/v" version "/modsecurity-v" version ".tar.gz")
|
||||
)
|
||||
)
|
||||
(string-append "https://github.com/SpiderLabs/ModSecurity/releases/download/v" version "/modsecurity-v" version ".tar.gz")
|
||||
))
|
||||
(sha256 (base32 "1sarp7bjvkkdlpky5j9axfi0qmb177vw2vn2s10c8fcdg9dgj6vm" ))
|
||||
)
|
||||
)
|
||||
(synopsis "modsecurity module for nginx")
|
||||
(description "modsecurity module for nginx.")
|
||||
(license asl2.0)
|
||||
(license license:asl2.0)
|
||||
(home-page "https://github.com/SpiderLabs/ModSecurity")
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(
|
||||
|
@ -128,9 +210,8 @@
|
|||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://github.com/SpiderLabs/ModSecurity-nginx/releases/download/v" version "/modsecurity-nginx-v" version ".tar.gz")
|
||||
)
|
||||
)
|
||||
(string-append "https://github.com/SpiderLabs/ModSecurity-nginx/releases/download/v" version "/modsecurity-nginx-v" version ".tar.gz")
|
||||
))
|
||||
(sha256 (base32 "0clcny8276d3j73ws661lh983vqq9m29rw7qb7gn132ha066d9j1" ))
|
||||
)
|
||||
)
|
||||
|
@ -177,4 +258,63 @@
|
|||
)
|
||||
)
|
||||
)
|
||||
nginx-modsecurity-module
|
||||
|
||||
(define-public nginx-geoip2-module
|
||||
(package
|
||||
(inherit nginx)
|
||||
(name "nginx-geoip2-module")
|
||||
(version "3.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://github.com/leev/ngx_http_geoip2_module/archive/refs/tags/" version ".tar.gz")
|
||||
))
|
||||
(sha256 (base32 "19vqzwr6gaqkh3b7zbxc61f87d044ykw9l39i2hi7qrkr0w88ds1" ))
|
||||
)
|
||||
)
|
||||
(synopsis "GeoIP2 module for nginx")
|
||||
(description "GeoIP2 module for nginx.")
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("nginx-sources" ,(package-source nginx))
|
||||
("libmaxminddb", libmaxminddb)
|
||||
,@(package-inputs nginx)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments
|
||||
`(#:configure-flags '("--add-dynamic-module=.")
|
||||
#:make-flags '("modules")
|
||||
,@(package-arguments nginx)
|
||||
)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'unpack-nginx-sources
|
||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||
(begin
|
||||
;; The nginx source code is part of the module’s source.
|
||||
(format #t "decompressing nginx source code~%")
|
||||
(let ((tar (assoc-ref inputs "tar")) (nginx-srcs (assoc-ref inputs "nginx-sources")))
|
||||
(invoke (string-append tar "/bin/tar") "xvf" nginx-srcs "--strip-components=1")
|
||||
)
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((modules-dir (string-append (assoc-ref outputs "out") "/etc/nginx/modules")))
|
||||
(install-file "objs/ngx_http_geoip2_module.so" modules-dir)
|
||||
(install-file "objs/ngx_stream_geoip2_module.so" modules-dir)
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
(delete 'fix-root-dirs)
|
||||
(delete 'install-man-page)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
|
|
@ -1,58 +1,67 @@
|
|||
(define-module (glicid packages openldap)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module ((gnu packages openldap) #:prefix gnu:)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cyrus-sasl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages groff)
|
||||
#:use-module (gnu packages kerberos)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module ((gnu packages openldap) #:prefix gnu:)
|
||||
#:use-module (gnu packages password-utils)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages tls)
|
||||
)
|
||||
|
||||
(define-public openldap
|
||||
(package
|
||||
(inherit gnu:openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.7")
|
||||
(version "2.6.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "http://gpl.savoirfairelinux.net/pub/mirrors/openldap/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "http://repository.linagora.org/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "ftp://ftp.ntua.gr/mirror/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "https://mirror-hk.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "https://mirror.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "https://mirror.lyrahosting.com/OpenLDAP/" "openldap-release/openldap-" version ".tgz")
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 ( base32 "1ayr76sa5hjwldqzis5v71sbp88hd3hysc00gw1raqn33c05g5za" ))
|
||||
(sha256 (base32 "11ygl4iilhkz5rhndh68lss4a33cqp9arb7mxj329dif4d2r7l41"))
|
||||
)
|
||||
)
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(
|
||||
("libltdl", libltdl)
|
||||
("pkg-config", pkg-config)
|
||||
("libevent", libevent)
|
||||
("openssl", openssl)
|
||||
("argon2", argon2)
|
||||
("wiredtiger", wiredtiger)
|
||||
("snappy", snappy)
|
||||
("lz4", lz4)
|
||||
,@(package-inputs gnu:openldap)
|
||||
))
|
||||
(inputs (list argon2 cyrus-sasl libevent libgcrypt libltdl lz4 openssl perl snappy unixodbc wiredtiger zlib))
|
||||
(native-inputs (list bdb groff libtool pkg-config))
|
||||
(arguments '(
|
||||
; this is needed because the make check does not work inside guix
|
||||
#:tests? #f
|
||||
#:configure-flags '(
|
||||
"--enable-debug" "--enable-dynamic" "--enable-syslog" "--enable-ipv6" "--enable-local" "--enable-slapd" "--enable-dynacl"
|
||||
"--enable-aci" "--enable-cleartext" "--enable-crypt" "--enable-spasswd" "--enable-modules" "--enable-rlookups" "--enable-slapi"
|
||||
"--enable-backends=mod" "--enable-overlays=mod" "--enable-argon2" "--enable-balancer" "--disable-static"
|
||||
"--enable-shared" "--with-tls=openssl"
|
||||
"--enable-debug"
|
||||
"--enable-dynamic"
|
||||
"--enable-syslog"
|
||||
"--enable-ipv6"
|
||||
"--enable-local"
|
||||
"--enable-slapd"
|
||||
"--enable-dynacl"
|
||||
"--enable-aci"
|
||||
"--enable-cleartext"
|
||||
"--enable-crypt"
|
||||
"--enable-spasswd"
|
||||
"--enable-modules"
|
||||
"--enable-rlookups"
|
||||
"--enable-slapi"
|
||||
"--enable-backends=mod"
|
||||
"--enable-overlays=mod"
|
||||
"--enable-argon2"
|
||||
"--enable-balancer"
|
||||
"--disable-static"
|
||||
"--enable-shared"
|
||||
"--with-tls=openssl"
|
||||
)
|
||||
#:make-flags '("STRIP=")
|
||||
#:phases (modify-phases %standard-phases
|
||||
|
@ -63,5 +72,267 @@
|
|||
)
|
||||
)
|
||||
))
|
||||
(synopsis "Implementation of the Lightweight Directory Access Protocol")
|
||||
(description "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.")
|
||||
(license license:openldap2.8)
|
||||
(home-page "https://www.openldap.org/")
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.4.58
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.4.58")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "0yzlz1l49jc7989k65994chv0xspq30i9mdkk9mbzl0mpra95dap"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.4.59
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.4.59")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "0d1gw898gbkv46mw0gll3q0w2j2y9midlzh6f320d0nq8xkpvwwr"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.4
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "0mmk9wz23z4ahaga7ri99gnnwhjjgmfmbaaga2g8bkbhil3krh31"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.5
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "1cznvccwgj9v3207l254wyfzm1v5prk93hkx5i6ha3pw5bdfzv3l"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.6
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "07y1r9a0k07z9s9w5m477bb6ib1hr3xx9qll8i57gn9vklx4489z"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.7
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "1ayr76sa5hjwldqzis5v71sbp88hd3hysc00gw1raqn33c05g5za"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.8
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "1p3jck2kh7rsz6mkrqaailaf9ky050hn72wph52dw0j2nb1s2vin"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.9
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "17pvwrj27jybbmjqpv0p7kd2qa4i6jnp134lz7cxa0sqrbs153n0"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.10
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "1ygxy2l3kv6gmcdc8hpz8fjbg39wp8v2xcqh56xrzp51gn4k326i"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.11
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "1wfp273g3dmw5bdnlllv43ydld2nrnap71bmm8wjx7yhfrvv054m"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.5.12
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.5.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "15kvwfq7ly8jai1v5s3fn50x8lj50nljk93h0ryzm5wmqjznq26m"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.6.0
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.6.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "0kqswk8pxgnlibh0kz6py3a2x3yh9pfk6pyr2nx9lgjpmh75h75p"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openldap-2.6.1
|
||||
(package
|
||||
(inherit openldap)
|
||||
(name "openldap")
|
||||
(version "2.6.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-" version ".tgz")
|
||||
))
|
||||
(sha256 (base32 "1wz6f3g3bbqgbbxs20zlappmmhapqbl791c0waibhz9djsk6wmwx"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public nss-pam-ldapd
|
||||
(package
|
||||
(name "nss-pam-ldapd")
|
||||
(version "0.9.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://arthurdejong.org/nss-pam-ldapd/nss-pam-ldapd-" version ".tar.gz"))
|
||||
(sha256 (base32 "050fzcmxmf6y15dlcffc4gxr3wkk7fliqqwhlwqzbjwk8vkn3mn6"))
|
||||
))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(
|
||||
#:configure-flags
|
||||
(list (string-append
|
||||
"--with-pam-seclib-dir=" (assoc-ref %outputs "out") "/lib/security/")
|
||||
"--with-ldap-conf-file=/etc/nslcd.conf"
|
||||
)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'override-nslcd.conf-install-path
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "Makefile.in"
|
||||
(
|
||||
("\\$\\(DESTDIR\\)\\$\\(NSLCD_CONF_PATH\\)")
|
||||
(string-append (assoc-ref outputs "out") "/etc/nslcd.conf.example")
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("linux-pam", linux-pam)
|
||||
("mit-krb5", mit-krb5)
|
||||
("openldap", openldap)
|
||||
("python", python)
|
||||
))
|
||||
(home-page "https://arthurdejong.org/nss-pam-ldapd")
|
||||
(synopsis "NSS and PAM modules for LDAP")
|
||||
(description "nss-pam-ldapd provides a @dfn{Name Service Switch} (NSS)
|
||||
module that allows your LDAP server to provide user account, group, host name,
|
||||
alias, netgroup, and basically any other information that you would normally
|
||||
get from @file{/etc} flat files or NIS. It also provides a @dfn{Pluggable
|
||||
Authentication Module} (PAM) to do identity and authentication management with
|
||||
an LDAP server.")
|
||||
(license license:lgpl2.1+)
|
||||
)
|
||||
)
|
||||
|
|
|
@ -1,206 +1,107 @@
|
|||
(define-module (glicid packages parallel)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
|
||||
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages haskell-xyz)
|
||||
#:use-module (gnu packages databases)
|
||||
)
|
||||
|
||||
(define-public glicid-pmix
|
||||
(package
|
||||
(name "glicid-pmix-3.1.5")
|
||||
(version "3.1.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openpmix/openpmix/releases/download/v" version "/pmix-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1xswdkfcrw123ghcr9gmrb852nzjbl4i6qwrid3xyma42yal34w8"))
|
||||
(define-public openpmix-3.1.5
|
||||
(package
|
||||
(name "openpmix")
|
||||
(version "3.1.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openpmix/openpmix/releases/download/v" version "/pmix-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1xswdkfcrw123ghcr9gmrb852nzjbl4i6qwrid3xyma42yal34w8"))
|
||||
)
|
||||
)
|
||||
)
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list
|
||||
(string-append "--with-hwloc=" (assoc-ref %build-inputs "hwloc") )
|
||||
)
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list
|
||||
(string-append "--with-hwloc=" (assoc-ref %build-inputs "hwloc"))
|
||||
)
|
||||
)
|
||||
)
|
||||
(synopsis "MPIX lib")
|
||||
(description"MPIX. More to come. FIXIT")
|
||||
(home-page "https://www.gnu.org/software/hello/")
|
||||
(license license:gpl3+)
|
||||
(inputs `(
|
||||
("libevent", libevent)
|
||||
("hwloc" ,hwloc-2 "lib")
|
||||
("perl", perl)
|
||||
))
|
||||
)
|
||||
(synopsis "MPIX lib")
|
||||
(description "MPIX. More to come. FIXIT")
|
||||
(home-page "https://www.gnu.org/software/hello/")
|
||||
(license license:gpl3+)
|
||||
(inputs `(
|
||||
("libevent", libevent)
|
||||
("hwloc" ,hwloc-2 "lib")
|
||||
("perl", perl)
|
||||
("gcc", gcc-11)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public openpmix-4.1.0
|
||||
(package
|
||||
(inherit openpmix-3.1.5)
|
||||
(version "4.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openpmix/openpmix/releases/download/v" version "/pmix-" version ".tar.bz2"))
|
||||
(sha256 (base32 "0bl4gkh87csm3yh418wvrih35mg6swavcxj78gyb7gr1qsk0apql"))
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("python", python)
|
||||
("zlib", zlib)
|
||||
("pandoc", pandoc)
|
||||
,@(package-inputs openpmix-3.1.5)
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-custom-slurm-19.05
|
||||
(package
|
||||
(inherit slurm)
|
||||
(name "glicid-custom-slurm-19.05")
|
||||
(version "19.05.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1kj79r8hng5gp98ickgvj3im4gr19nzd3p3p8g6rl75axb8jin7h"))
|
||||
))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--enable-pam" "--sysconfdir=/etc/slurm"
|
||||
"--disable-static"
|
||||
(string-append "--with-freeipmi=" (assoc-ref %build-inputs "freeipmi"))
|
||||
(string-append "--with-hwloc=" (assoc-ref %build-inputs "hwloc"))
|
||||
(string-append "--with-json=" (assoc-ref %build-inputs "json-c"))
|
||||
(string-append "--with-munge=" (assoc-ref %build-inputs "munge"))
|
||||
(string-append "--with-pmix=" (assoc-ref %build-inputs "glicid-pmix"))
|
||||
(define-public openpmix openpmix-4.1.0)
|
||||
|
||||
;; 32-bit support is marked as deprecated and needs to be
|
||||
;; explicitly enabled.
|
||||
;;;; ,@(if (target-64bit?) '() '("--enable-deprecated"))
|
||||
|
||||
)
|
||||
(define-public slurm-20.02-glicid
|
||||
(package
|
||||
(inherit slurm-20.02)
|
||||
(name "slurm-glicid")
|
||||
(version "20.02.7")
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source slurm-20.02))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1khlv69q41chgkcs1i7l651hvyx8sz3j9yhjbgky3gpqrgrmz1h6"))
|
||||
)
|
||||
)
|
||||
(inputs `(
|
||||
("gtk+-2", gtk+-2)
|
||||
("mariadb:dev", mariadb "dev")
|
||||
,@(package-inputs slurm-20.02)
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
(define-public slurm-20.11-glicid
|
||||
(package
|
||||
(inherit slurm-20.02-glicid)
|
||||
(name "slurm-glicid")
|
||||
(version "20.11.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
||||
(sha256 (base32 "0xq2d6dm285y541dyg1h66z7svsisrq8c81ag0f601xz1cn3mq9m"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(inputs `(("gtk+-2" ,gtk+-2)
|
||||
("gcc", gcc-11)
|
||||
("glicid-pmix", glicid-pmix)
|
||||
; ("glicid-specific-openmpi", glicid-specific-openmpi)
|
||||
,@(package-inputs slurm)
|
||||
|
||||
|
||||
))
|
||||
(propagated-inputs
|
||||
`(
|
||||
("sssd" ,sssd)
|
||||
))
|
||||
|
||||
))
|
||||
|
||||
|
||||
(define-public glicid-custom-slurm-20.02
|
||||
(package
|
||||
(inherit glicid-custom-slurm-19.05)
|
||||
(name "glicid-custom-slurm-20.02")
|
||||
(version "20.02.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1khlv69q41chgkcs1i7l651hvyx8sz3j9yhjbgky3gpqrgrmz1h6"))
|
||||
))
|
||||
))
|
||||
|
||||
|
||||
(define-public glicid-custom-slurm-20.11
|
||||
(package
|
||||
(inherit glicid-custom-slurm-20.02)
|
||||
(name "glicid-custom-slurm-20.11")
|
||||
(version "20.11.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
||||
(sha256 (base32 "1fdjihg1x7ks5l77yjv14a4mg6r0v8c3zk1dcxkhrhq3n4dc9nbs"))
|
||||
))
|
||||
))
|
||||
|
||||
(define-public glicid-specific-slurm glicid-custom-slurm-20.02)
|
||||
|
||||
|
||||
|
||||
(define-public slurm-glicid slurm-20.11-glicid)
|
||||
(define-public slurm-ccipl slurm-20.11-glicid)
|
||||
|
|
170
glicid/packages/patches/scalapack-blacs-mpi-deprecations.patch
Normal file
170
glicid/packages/patches/scalapack-blacs-mpi-deprecations.patch
Normal file
|
@ -0,0 +1,170 @@
|
|||
From f11c3f094ed5ca727ec819983425b6641db8227c Mon Sep 17 00:00:00 2001
|
||||
From: Eric Bavier <bavier@member.fsf.org>
|
||||
Date: Wed, 13 Feb 2019 09:32:11 -0600
|
||||
Subject: [PATCH] BLACS: Remove use of long-deprecated MPI1 functions.
|
||||
|
||||
* BLACS/SRC/blacs_get_.c: 'MPI_Attr_get' -> 'MPI_Comm_get_attr'.
|
||||
* BLACS/SRC/cgamn2d_.c, BLACS/SRC/cgamx2d_.c, BLACS/SRC/dgamn2d_.c,
|
||||
BLACS/SRC/dgamx2d_.c, BLACS/SRC/igamn2d_.c, BLACS/SRC/igamx2d_.c,
|
||||
BLACS/SRC/sgamn2d_.c, BLACS/SRC/sgamx2d_.c, BLACS/SRC/zgamn2d_.c,
|
||||
BLACS/SRC/zgamx2d_.c: 'MPI_Type_struct' -> 'MPI_Type_create_struct'.
|
||||
---
|
||||
BLACS/SRC/blacs_get_.c | 2 +-
|
||||
BLACS/SRC/cgamn2d_.c | 2 +-
|
||||
BLACS/SRC/cgamx2d_.c | 2 +-
|
||||
BLACS/SRC/dgamn2d_.c | 2 +-
|
||||
BLACS/SRC/dgamx2d_.c | 2 +-
|
||||
BLACS/SRC/igamn2d_.c | 2 +-
|
||||
BLACS/SRC/igamx2d_.c | 2 +-
|
||||
BLACS/SRC/sgamn2d_.c | 2 +-
|
||||
BLACS/SRC/sgamx2d_.c | 2 +-
|
||||
BLACS/SRC/zgamn2d_.c | 2 +-
|
||||
BLACS/SRC/zgamx2d_.c | 2 +-
|
||||
11 files changed, 11 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/BLACS/SRC/blacs_get_.c b/BLACS/SRC/blacs_get_.c
|
||||
index e979767..d4b04cf 100644
|
||||
--- a/BLACS/SRC/blacs_get_.c
|
||||
+++ b/BLACS/SRC/blacs_get_.c
|
||||
@@ -23,7 +23,7 @@ F_VOID_FUNC blacs_get_(int *ConTxt, int *what, int *val)
|
||||
case SGET_MSGIDS:
|
||||
if (BI_COMM_WORLD == NULL) Cblacs_pinfo(val, &val[1]);
|
||||
iptr = &val[1];
|
||||
- ierr=MPI_Attr_get(MPI_COMM_WORLD, MPI_TAG_UB, (BVOID **) &iptr,val);
|
||||
+ ierr=MPI_Comm_get_attr(MPI_COMM_WORLD, MPI_TAG_UB, (BVOID **) &iptr,val);
|
||||
val[0] = 0;
|
||||
val[1] = *iptr;
|
||||
break;
|
||||
diff --git a/BLACS/SRC/cgamn2d_.c b/BLACS/SRC/cgamn2d_.c
|
||||
index 2db6ccb..6958f32 100644
|
||||
--- a/BLACS/SRC/cgamn2d_.c
|
||||
+++ b/BLACS/SRC/cgamn2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC cgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/cgamx2d_.c b/BLACS/SRC/cgamx2d_.c
|
||||
index 707c0b6..f802d01 100644
|
||||
--- a/BLACS/SRC/cgamx2d_.c
|
||||
+++ b/BLACS/SRC/cgamx2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC cgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/dgamn2d_.c b/BLACS/SRC/dgamn2d_.c
|
||||
index dff23b4..a2627ac 100644
|
||||
--- a/BLACS/SRC/dgamn2d_.c
|
||||
+++ b/BLACS/SRC/dgamn2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC dgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/dgamx2d_.c b/BLACS/SRC/dgamx2d_.c
|
||||
index a51f731..2a644d0 100644
|
||||
--- a/BLACS/SRC/dgamx2d_.c
|
||||
+++ b/BLACS/SRC/dgamx2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC dgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/igamn2d_.c b/BLACS/SRC/igamn2d_.c
|
||||
index 16bc003..f6a7859 100644
|
||||
--- a/BLACS/SRC/igamn2d_.c
|
||||
+++ b/BLACS/SRC/igamn2d_.c
|
||||
@@ -218,7 +218,7 @@ F_VOID_FUNC igamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/igamx2d_.c b/BLACS/SRC/igamx2d_.c
|
||||
index 8165cbe..a7cfcc6 100644
|
||||
--- a/BLACS/SRC/igamx2d_.c
|
||||
+++ b/BLACS/SRC/igamx2d_.c
|
||||
@@ -218,7 +218,7 @@ F_VOID_FUNC igamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/sgamn2d_.c b/BLACS/SRC/sgamn2d_.c
|
||||
index d6c95e5..569c797 100644
|
||||
--- a/BLACS/SRC/sgamn2d_.c
|
||||
+++ b/BLACS/SRC/sgamn2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC sgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/sgamx2d_.c b/BLACS/SRC/sgamx2d_.c
|
||||
index 4b0af6f..8897ece 100644
|
||||
--- a/BLACS/SRC/sgamx2d_.c
|
||||
+++ b/BLACS/SRC/sgamx2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC sgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/zgamn2d_.c b/BLACS/SRC/zgamn2d_.c
|
||||
index 9de2b23..37897df 100644
|
||||
--- a/BLACS/SRC/zgamn2d_.c
|
||||
+++ b/BLACS/SRC/zgamn2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC zgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
diff --git a/BLACS/SRC/zgamx2d_.c b/BLACS/SRC/zgamx2d_.c
|
||||
index 414c381..0e9d474 100644
|
||||
--- a/BLACS/SRC/zgamx2d_.c
|
||||
+++ b/BLACS/SRC/zgamx2d_.c
|
||||
@@ -221,7 +221,7 @@ F_VOID_FUNC zgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n,
|
||||
{
|
||||
#endif
|
||||
i = 2;
|
||||
- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType);
|
||||
+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType);
|
||||
ierr=MPI_Type_commit(&MyType);
|
||||
bp->N = bp2->N = 1;
|
||||
bp->dtype = bp2->dtype = MyType;
|
||||
--
|
||||
2.20.1
|
||||
|
28
glicid/packages/perl.scm
Normal file
28
glicid/packages/perl.scm
Normal file
|
@ -0,0 +1,28 @@
|
|||
(define-module (glicid packages perl)
|
||||
#:use-module (guix build-system perl)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
)
|
||||
|
||||
(define-public perl-extutils-embed
|
||||
(package
|
||||
(name "perl-extutils-embed")
|
||||
(version "1.14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/D/DO/DOUGM/ExtUtils-Embed-" version ".tar.gz"))
|
||||
(sha256 (base32 "1w55q0wz6i4k9p500mc4wmr8jndnczb6qqrd2m1mrnx13v2mbr7h"))
|
||||
)
|
||||
)
|
||||
(build-system perl-build-system)
|
||||
(arguments '(
|
||||
#:tests? #f
|
||||
))
|
||||
(home-page "https://metacpan.org/release/ExtUtils-Embed")
|
||||
(synopsis "Utilities for embedding Perl in C/C++ applications")
|
||||
(description "Utilities for embedding Perl in C/C++ applications")
|
||||
(license #f)
|
||||
)
|
||||
)
|
4240
glicid/packages/rust.scm
Normal file
4240
glicid/packages/rust.scm
Normal file
File diff suppressed because it is too large
Load diff
|
@ -4,285 +4,177 @@
|
|||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
; #:use-module (guix licenses)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module ((guix utils) #:select (target-64bit?))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages storage)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages ssh)
|
||||
#:use-module (gnu packages hurd)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages chemistry)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages sssd)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages benchmark)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages cluster)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages authentication)
|
||||
#:use-module (gnu packages bdw-gc)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
;; #:use-module (gnu packages glicid)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (glicid packages storage)
|
||||
#:use-module (glicid packages mpi)
|
||||
#:use-module (glicid packages gcc)
|
||||
|
||||
#:use-module (gnu packages linux)
|
||||
)
|
||||
(define-public libcbor-0.8.0
|
||||
(package
|
||||
(name "libcbor")
|
||||
(version "0.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://github.com/PJK/libcbor/archive/refs/tags/v" version ".tar.gz"))
|
||||
(sha256 (base32 "12vw46ahhsc3ydnivkv5lvk1cn4sjjmcr639cjcl99d4dqb9g031"))
|
||||
)
|
||||
)
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list
|
||||
"-DCMAKE_CXX_FLAGS=-fPIE"
|
||||
"-DCMAKE_C_FLAGS=-fPIE"
|
||||
))
|
||||
)
|
||||
(synopsis "libfido2")
|
||||
(description "Todo")
|
||||
(home-page "toto")
|
||||
(license license:gpl2+)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
;;;;;;;;
|
||||
|
||||
|
||||
|
||||
|
||||
(use-modules (guix packages))
|
||||
(use-modules (guix download))
|
||||
(use-modules (gnu packages linux))
|
||||
(use-modules (gnu packages gcc))
|
||||
;;(use-modules (gnu packages glicid))
|
||||
(use-modules (gnu packages ssh))
|
||||
(use-modules (gnu packages hurd))
|
||||
(use-modules (guix build-system gnu))
|
||||
(use-modules (guix build-system cmake))
|
||||
(use-modules (gnu packages compression))
|
||||
(use-modules (gnu packages crypto))
|
||||
(use-modules (gnu packages tls))
|
||||
;;(use-modules (gnu packages glicid))
|
||||
(use-modules (gnu packages pkg-config))
|
||||
|
||||
|
||||
(use-modules ((guix licenses) #:prefix license:))
|
||||
|
||||
|
||||
(define-public glicid-libcbor
|
||||
(package
|
||||
(name "glicid-libcbor")
|
||||
(version "0.8.0")
|
||||
(source
|
||||
(origin
|
||||
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://github.com/PJK/libcbor/archive/refs/tags/v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12vw46ahhsc3ydnivkv5lvk1cn4sjjmcr639cjcl99d4dqb9g031"))
|
||||
|
||||
))
|
||||
(build-system cmake-build-system)
|
||||
|
||||
(arguments
|
||||
`(#:configure-flags (list "-DCMAKE_CXX_FLAGS=-fPIE"
|
||||
"-DCMAKE_C_FLAGS=-fPIE")))
|
||||
|
||||
|
||||
(synopsis "libfido2")
|
||||
(description "Todo")
|
||||
(home-page "toto")
|
||||
(license license:gpl2+)
|
||||
|
||||
|
||||
))
|
||||
|
||||
|
||||
(define-public glicid-libfido2
|
||||
(package
|
||||
|
||||
(name "glicid-libfido2")
|
||||
(version "1.8.0")
|
||||
(source
|
||||
(origin
|
||||
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://developers.yubico.com/libfido2/Releases/libfido2-"
|
||||
version ".tar.gz"))
|
||||
; (file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07gxyy5yzgfh5hg7q9fr77z5mkj0xjvd5ya7p5f5kar4iwc92hjm"))
|
||||
|
||||
|
||||
))
|
||||
|
||||
(build-system cmake-build-system)
|
||||
(arguments '(#:tests? #f))
|
||||
|
||||
|
||||
(inputs `(
|
||||
("glicid-libcbor",glicid-libcbor)
|
||||
("openssl",openssl)
|
||||
("zlib", zlib)
|
||||
("pkg-config", pkg-config) ; or cmake won't find zlib !
|
||||
("eudev", eudev)
|
||||
|
||||
))
|
||||
|
||||
(synopsis "libfido2")
|
||||
(description "Todo")
|
||||
(home-page "toto")
|
||||
(license license:gpl2+)
|
||||
(define-public libcbor-0.9.0
|
||||
(package
|
||||
(inherit libcbor-0.8.0)
|
||||
(version "0.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://github.com/PJK/libcbor/archive/refs/tags/v" version ".tar.gz"))
|
||||
(sha256 (base32 "1l8m7h84zwlx088gkz6gvg2fq11g0p3q6lblwba8c01y6gwy90fs"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public libcbor-latest libcbor-0.9.0)
|
||||
|
||||
(define-public libfido2-1.8.0
|
||||
(package
|
||||
(name "libfido2")
|
||||
(version "1.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://developers.yubico.com/libfido2/Releases/libfido2-" version ".tar.gz"))
|
||||
(sha256 (base32 "07gxyy5yzgfh5hg7q9fr77z5mkj0xjvd5ya7p5f5kar4iwc92hjm"))
|
||||
)
|
||||
)
|
||||
(build-system cmake-build-system)
|
||||
(arguments '(
|
||||
#:tests? #f
|
||||
))
|
||||
(inputs `(
|
||||
("libcbor",libcbor-latest)
|
||||
("openssl",openssl)
|
||||
("zlib", zlib)
|
||||
("pkg-config", pkg-config)
|
||||
("eudev", eudev)
|
||||
))
|
||||
(synopsis "libfido2")
|
||||
(description "Todo")
|
||||
(home-page "toto")
|
||||
(license license:gpl2+)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public libfido2-1.9.0
|
||||
(package
|
||||
(inherit libfido2-1.8.0)
|
||||
(version "1.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://developers.yubico.com/libfido2/Releases/libfido2-" version ".tar.gz"))
|
||||
(sha256 (base32 "1ln2b0zfvl35r03kn2k1i2aw1k3ypvivc71xmp4dzlin6ypy6fds"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define-public glicid-specific-openssh
|
||||
(define libfido2-latest libfido2-1.9.0)
|
||||
|
||||
(define-public openssh-with-fido2
|
||||
(package
|
||||
(inherit openssh)
|
||||
(name "glicid-specific-openssh")
|
||||
(arguments
|
||||
|
||||
`(#:test-target "tests"
|
||||
(name "openssh-with-fido2")
|
||||
(arguments `(
|
||||
#:test-target "tests"
|
||||
;; Otherwise, the test scripts try to use a nonexistent directory and
|
||||
;; fail.
|
||||
#:make-flags '("REGRESSTMP=\"$${BUILDDIR}/regress\"")
|
||||
|
||||
#:configure-flags `("--sysconfdir=/etc/ssh"
|
||||
|
||||
;; Default value of 'PATH' used by sshd.
|
||||
"--with-default-path=/run/current-system/profile/bin"
|
||||
|
||||
;; configure needs to find krb5-config.
|
||||
,(string-append "--with-kerberos5="
|
||||
(assoc-ref %build-inputs "mit-krb5")
|
||||
"/bin")
|
||||
|
||||
;; libedit is needed for sftp completion.
|
||||
"--with-libedit"
|
||||
;; for u2f
|
||||
"--with-security-key-builtin"
|
||||
; ,(string-append "--with-fido2=" (assoc-ref %build-inputs "libfido2"))
|
||||
|
||||
;; Enable PAM support in sshd.
|
||||
,,@(if (hurd-target?)
|
||||
'()
|
||||
'("--with-pam"))
|
||||
|
||||
;; "make install" runs "install -s" by default,
|
||||
;; which doesn't work for cross-compiled binaries
|
||||
;; because it invokes 'strip' instead of
|
||||
;; 'TRIPLET-strip'. Work around this.
|
||||
,,@(if (%current-target-system)
|
||||
'("--disable-strip")
|
||||
'()
|
||||
))
|
||||
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'configure 'reset-/var/empty
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "Makefile"
|
||||
(("PRIVSEP_PATH=/var/empty")
|
||||
(string-append "PRIVSEP_PATH=" out "/var/empty")))
|
||||
#t)))
|
||||
(add-before 'check 'patch-tests
|
||||
(lambda _
|
||||
(substitute* "regress/test-exec.sh"
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
;; Remove 't-exec' regress target which requires user 'sshd'.
|
||||
(substitute* (list "Makefile"
|
||||
"regress/Makefile")
|
||||
(("^(tests:.*) t-exec(.*)" all pre post)
|
||||
(string-append pre post)))
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs (make-flags '()) #:allow-other-keys)
|
||||
;; Install without host keys and system configuration files.
|
||||
(apply invoke "make" "install-nosysconf" make-flags)
|
||||
(install-file "contrib/ssh-copy-id"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/bin/"))
|
||||
(chmod (string-append (assoc-ref outputs "out")
|
||||
"/bin/ssh-copy-id") #o555)
|
||||
(install-file "contrib/ssh-copy-id.1"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/share/man/man1/"))
|
||||
#t))) ; ))
|
||||
|
||||
|
||||
)
|
||||
)
|
||||
|
||||
(inputs `(("glicid-libfido2", glicid-libfido2)
|
||||
("glicid-libcbor", glicid-libcbor)
|
||||
,@(package-inputs openssh)))
|
||||
|
||||
|
||||
|
||||
#:make-flags '("REGRESSTMP=\"$${BUILDDIR}/regress\"")
|
||||
#:configure-flags `(
|
||||
"--sysconfdir=/etc/ssh"
|
||||
;; Default value of 'PATH' used by sshd.
|
||||
"--with-default-path=/run/current-system/profile/bin"
|
||||
;; configure needs to find krb5-config.
|
||||
,(string-append "--with-kerberos5=" (assoc-ref %build-inputs "mit-krb5") "/bin")
|
||||
;; libedit is needed for sftp completion.
|
||||
"--with-libedit"
|
||||
;; for u2f
|
||||
"--with-security-key-builtin"
|
||||
;; Enable PAM support in sshd.
|
||||
,,@(if (hurd-target?)
|
||||
'()
|
||||
'("--with-pam")
|
||||
)
|
||||
;; "make install" runs "install -s" by default,
|
||||
;; which doesn't work for cross-compiled binaries
|
||||
;; because it invokes 'strip' instead of
|
||||
;; 'TRIPLET-strip'.Work around this.
|
||||
,,@(if (%current-target-system)
|
||||
'("--disable-strip")
|
||||
'()
|
||||
)
|
||||
)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'configure 'reset-/var/empty
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute*
|
||||
"Makefile"
|
||||
(("PRIVSEP_PATH=/var/empty") (string-append "PRIVSEP_PATH=" out "/var/empty"))
|
||||
)
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
(add-before 'check 'patch-tests
|
||||
(lambda _
|
||||
(substitute* "regress/test-exec.sh" (("/bin/sh") (which "sh")))
|
||||
;; Remove 't-exec' regress target which requires user 'sshd'.
|
||||
(substitute*
|
||||
(list "Makefile" "regress/Makefile")
|
||||
(("^(tests:.*) t-exec(.*)" all pre post) (string-append pre post))
|
||||
)
|
||||
#t
|
||||
)
|
||||
)
|
||||
(replace 'install
|
||||
(lambda*
|
||||
(
|
||||
#:key outputs (make-flags '())
|
||||
#:allow-other-keys
|
||||
)
|
||||
;; Install without host keys and system configuration files.
|
||||
(apply invoke "make" "install-nosysconf" make-flags)
|
||||
(install-file "contrib/ssh-copy-id" (string-append (assoc-ref outputs "out") "/bin/"))
|
||||
(chmod (string-append (assoc-ref outputs "out") "/bin/ssh-copy-id") #o555)
|
||||
(install-file "contrib/ssh-copy-id.1" (string-append (assoc-ref outputs "out") "/share/man/man1/"))
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
))
|
||||
(inputs `(
|
||||
("libfido2", libfido2-latest)
|
||||
("libcbor", libcbor-latest)
|
||||
,@(package-inputs openssh)
|
||||
))
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
||||
;;; glicid/ssh.scm ends here
|
||||
|
|
26
glicid/packages/sssd.scm
Normal file
26
glicid/packages/sssd.scm
Normal file
|
@ -0,0 +1,26 @@
|
|||
(define-module (glicid packages sssd)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((gnu packages sssd) #:prefix gnu:)
|
||||
)
|
||||
|
||||
(define-public sssd-upstream-orig
|
||||
(package
|
||||
(inherit gnu:sssd)
|
||||
(name "sssd-upstream")
|
||||
(version "1_16_5")
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source gnu:sssd))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/SSSD/sssd")
|
||||
(commit (string-append "sssd-" version))
|
||||
))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32 "0zbs04lkjbp7y92anmafl7gzamcnq1f147p13hc4byyvjk9rg6f7"))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
|
@ -2,29 +2,40 @@
|
|||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (gnu packages storage) ;; «regular» ceph is defined here
|
||||
#:use-module (glicid packages storage) ;; a «more up to date» version MAY be here
|
||||
#:use-module (gnu packages storage)
|
||||
; #:use-module (glicid packages storage)
|
||||
)
|
||||
|
||||
;;;;;;;;
|
||||
|
||||
(define-public qemu-with-rbd
|
||||
|
||||
(package
|
||||
(inherit qemu)
|
||||
(name "qemu-with-rbd")
|
||||
(arguments
|
||||
|
||||
(substitute-keyword-arguments
|
||||
`(#:tests? #f
|
||||
,@(package-arguments qemu)))
|
||||
(substitute-keyword-arguments `(
|
||||
#:tests? #f
|
||||
,@(package-arguments qemu)
|
||||
))
|
||||
)
|
||||
|
||||
(inputs `(("ceph:lib", ceph "lib" ) ;; will take the more up to date ceph
|
||||
,@(package-inputs qemu)))
|
||||
|
||||
(inputs `(
|
||||
("ceph:lib", ceph "lib")
|
||||
,@(package-inputs qemu)
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
;;; glicid/virtualizationvirtualization.scm ends here
|
||||
(define-public qemu-minimal-with-rbd
|
||||
(package
|
||||
(inherit qemu-minimal)
|
||||
(name "qemu-minimal-with-rbd")
|
||||
(arguments
|
||||
(substitute-keyword-arguments `(
|
||||
#:tests? #f
|
||||
,@(package-arguments qemu-minimal)
|
||||
))
|
||||
)
|
||||
(inputs `(
|
||||
("ceph:lib", ceph "lib" )
|
||||
,@(package-inputs qemu-minimal)
|
||||
))
|
||||
)
|
||||
)
|
||||
|
|
20
glicid/packages/vpn.scm
Normal file
20
glicid/packages/vpn.scm
Normal file
|
@ -0,0 +1,20 @@
|
|||
(define-module (glicid packages vpn)
|
||||
#:use-module (guix packages)
|
||||
#:use-module ((gnu packages vpn) #:prefix gnu:)
|
||||
#:use-module (guix download)
|
||||
)
|
||||
|
||||
(define-public openconnect-upstream
|
||||
(package
|
||||
(inherit gnu:openconnect)
|
||||
(version "8.20")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.infradead.org/openconnect/download/openconnect-" version ".tar.gz"))
|
||||
(sha256 (base32 "1cdsx4nsrwawbsisfkldfc9i4qn60g03vxb13nzppr2br9p4rrih"))
|
||||
)
|
||||
)
|
||||
(name "openconnect-upstream")
|
||||
)
|
||||
)
|
430
glicid/services/cuirass.scm
Normal file
430
glicid/services/cuirass.scm
Normal file
|
@ -0,0 +1,430 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify
|
||||
;;; it under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation, either version 3 of the License, or
|
||||
;;; (at your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful,
|
||||
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (glicid services cuirass)
|
||||
#:use-module (guix channels)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages ci)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services base)
|
||||
#:use-module (gnu services databases)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (gnu services admin)
|
||||
#:use-module (gnu system shadow)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (cuirass-remote-server-configuration
|
||||
cuirass-remote-server-configuration?
|
||||
|
||||
cuirass-configuration
|
||||
cuirass-configuration?
|
||||
cuirass-service-type
|
||||
|
||||
cuirass-remote-worker-configuration
|
||||
cuirass-remote-worker-configuration?
|
||||
cuirass-remote-worker-service-type))
|
||||
|
||||
;;;; Commentary:
|
||||
;;;
|
||||
;;; This module implements a service that to run instances of Cuirass, a
|
||||
;;; continuous integration tool.
|
||||
;;;
|
||||
;;;; Code:
|
||||
|
||||
(define %cuirass-default-database
|
||||
"dbname=cuirass")
|
||||
|
||||
(define-record-type* <cuirass-remote-server-configuration>
|
||||
cuirass-remote-server-configuration make-cuirass-remote-server-configuration
|
||||
cuirass-remote-server-configuration?
|
||||
(backend-port cuirass-remote-server-configuration-backend-port ;int
|
||||
(default 5555))
|
||||
(log-port cuirass-remote-server-configuration-log-port ;int
|
||||
(default 5556))
|
||||
(publish-port cuirass-remote-server-configuration-publish-port ;int
|
||||
(default 5557))
|
||||
(log-file cuirass-remote-server-log-file ;string
|
||||
(default "/var/log/cuirass-remote-server.log"))
|
||||
(cache cuirass-remote-server-configuration-cache ;string
|
||||
(default "/var/cache/cuirass/remote/"))
|
||||
(publish? cuirass-remote-server-configuration-publish? ;boolean
|
||||
(default #t))
|
||||
(trigger-url cuirass-remote-server-trigger-url ;string
|
||||
(default #f))
|
||||
(public-key cuirass-remote-server-configuration-public-key ;string
|
||||
(default #f))
|
||||
(private-key cuirass-remote-server-configuration-private-key ;string
|
||||
(default #f)))
|
||||
|
||||
(define-record-type* <cuirass-configuration>
|
||||
cuirass-configuration make-cuirass-configuration
|
||||
cuirass-configuration?
|
||||
(cuirass cuirass-configuration-cuirass ;file-like
|
||||
(default cuirass))
|
||||
(log-file cuirass-configuration-log-file ;string
|
||||
(default "/var/log/cuirass.log"))
|
||||
(web-log-file cuirass-configuration-web-log-file ;string
|
||||
(default "/var/log/cuirass-web.log"))
|
||||
(cache-directory cuirass-configuration-cache-directory ;string (dir-name)
|
||||
(default "/var/cache/cuirass"))
|
||||
(user cuirass-configuration-user ;string
|
||||
(default "cuirass"))
|
||||
(group cuirass-configuration-group ;string
|
||||
(default "cuirass"))
|
||||
(interval cuirass-configuration-interval ;integer (seconds)
|
||||
(default 60))
|
||||
(parameters cuirass-configuration-parameters ;string
|
||||
(default #f))
|
||||
(remote-server cuirass-configuration-remote-server
|
||||
(default #f))
|
||||
(database cuirass-configuration-database ;string
|
||||
(default %cuirass-default-database))
|
||||
(port cuirass-configuration-port ;integer (port)
|
||||
(default 8081))
|
||||
(host cuirass-configuration-host ;string
|
||||
(default "localhost"))
|
||||
(specifications cuirass-configuration-specifications)
|
||||
;gexp that evaluates to specification-alist
|
||||
(use-substitutes? cuirass-configuration-use-substitutes? ;boolean
|
||||
(default #f))
|
||||
(one-shot? cuirass-configuration-one-shot? ;boolean
|
||||
(default #f))
|
||||
(fallback? cuirass-configuration-fallback? ;boolean
|
||||
(default #f))
|
||||
(extra-options cuirass-configuration-extra-options
|
||||
(default '()))
|
||||
(http-proxy cuirass-configuration-http-proxy ;string
|
||||
(default ""))
|
||||
(https-proxy cuirass-configuration-https-proxy ;string
|
||||
(default ""))
|
||||
)
|
||||
|
||||
(define (cuirass-shepherd-service config)
|
||||
"Return a <shepherd-service> for the Cuirass service with CONFIG."
|
||||
(let ((cuirass (cuirass-configuration-cuirass config))
|
||||
(cache-directory (cuirass-configuration-cache-directory config))
|
||||
(web-log-file (cuirass-configuration-web-log-file config))
|
||||
(log-file (cuirass-configuration-log-file config))
|
||||
(user (cuirass-configuration-user config))
|
||||
(group (cuirass-configuration-group config))
|
||||
(interval (cuirass-configuration-interval config))
|
||||
(parameters (cuirass-configuration-parameters config))
|
||||
(remote-server (cuirass-configuration-remote-server config))
|
||||
(database (cuirass-configuration-database config))
|
||||
(port (cuirass-configuration-port config))
|
||||
(host (cuirass-configuration-host config))
|
||||
(specs (cuirass-configuration-specifications config))
|
||||
(use-substitutes? (cuirass-configuration-use-substitutes? config))
|
||||
(one-shot? (cuirass-configuration-one-shot? config))
|
||||
(fallback? (cuirass-configuration-fallback? config))
|
||||
(extra-options (cuirass-configuration-extra-options config))
|
||||
(http-proxy (cuirass-configuration-http-proxy config))
|
||||
(https-proxy (cuirass-configuration-https-proxy config)))
|
||||
`(,(shepherd-service
|
||||
(documentation "Run Cuirass.")
|
||||
(provision '(cuirass))
|
||||
(requirement '(guix-daemon postgres postgres-roles networking))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list (string-append #$cuirass "/bin/cuirass")
|
||||
"register"
|
||||
"--cache-directory" #$cache-directory
|
||||
"--specifications"
|
||||
#$(scheme-file "cuirass-specs.scm" specs)
|
||||
"--database" #$database
|
||||
"--interval" #$(number->string interval)
|
||||
#$@(if parameters
|
||||
(list (string-append
|
||||
"--parameters="
|
||||
parameters))
|
||||
'())
|
||||
#$@(if remote-server '("--build-remote") '())
|
||||
#$@(if use-substitutes? '("--use-substitutes") '())
|
||||
#$@(if one-shot? '("--one-shot") '())
|
||||
#$@(if fallback? '("--fallback") '())
|
||||
#$@extra-options)
|
||||
|
||||
#:environment-variables
|
||||
(list
|
||||
"GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt"
|
||||
(string-append "GIT_EXEC_PATH=" #$git "/libexec/git-core")
|
||||
(string-append "http_proxy=" #$http-proxy)
|
||||
(string-append "https_proxy=" #$http-proxy)
|
||||
;"http_proxy=http://proxy-upgrade.univ-nantes.prive:3128/"
|
||||
;"https_proxy=http://proxy-upgrade.univ-nantes.prive:3128/"
|
||||
)
|
||||
|
||||
#:user #$user
|
||||
#:group #$group
|
||||
#:log-file #$log-file))
|
||||
(stop #~(make-kill-destructor)))
|
||||
,(shepherd-service
|
||||
(documentation "Run Cuirass web interface.")
|
||||
(provision '(cuirass-web))
|
||||
(requirement '(cuirass))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list (string-append #$cuirass "/bin/cuirass")
|
||||
"web"
|
||||
"--database" #$database
|
||||
"--listen" #$host
|
||||
"--port" #$(number->string port)
|
||||
#$@(if parameters
|
||||
(list (string-append
|
||||
"--parameters="
|
||||
parameters))
|
||||
'())
|
||||
#$@extra-options)
|
||||
|
||||
#:user #$user
|
||||
#:group #$group
|
||||
#:log-file #$web-log-file))
|
||||
(stop #~(make-kill-destructor)))
|
||||
,@(if remote-server
|
||||
(match-record remote-server <cuirass-remote-server-configuration>
|
||||
(backend-port publish-port log-file cache publish?
|
||||
trigger-url public-key private-key)
|
||||
(list
|
||||
(shepherd-service
|
||||
(documentation "Run Cuirass remote build server.")
|
||||
(provision '(cuirass-remote-server))
|
||||
(requirement '(avahi-daemon cuirass))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list (string-append #$cuirass "/bin/cuirass")
|
||||
"remote-server"
|
||||
(string-append "--database=" #$database)
|
||||
(string-append "--cache=" #$cache)
|
||||
(string-append "--user=" #$user)
|
||||
#$@(if backend-port
|
||||
(list (string-append
|
||||
"--backend-port="
|
||||
(number->string backend-port)))
|
||||
'())
|
||||
#$@(if publish-port
|
||||
(list (string-append
|
||||
"--publish-port="
|
||||
(number->string publish-port)))
|
||||
'())
|
||||
#$@(if parameters
|
||||
(list (string-append
|
||||
"--parameters="
|
||||
parameters))
|
||||
'())
|
||||
#$@(if trigger-url
|
||||
(list
|
||||
(string-append
|
||||
"--trigger-substitute-url="
|
||||
trigger-url))
|
||||
'())
|
||||
#$@(if publish?
|
||||
'()
|
||||
(list "--no-publish"))
|
||||
#$@(if public-key
|
||||
(list
|
||||
(string-append "--public-key="
|
||||
public-key))
|
||||
'())
|
||||
#$@(if private-key
|
||||
(list
|
||||
(string-append "--private-key="
|
||||
private-key))
|
||||
'()))
|
||||
#:environment-variables
|
||||
(list
|
||||
"GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt"
|
||||
(string-append "GIT_EXEC_PATH=" #$git "/libexec/git-core")
|
||||
(string-append "http_proxy=" #$http-proxy)
|
||||
(string-append "https_proxy=" #$http-proxy)
|
||||
)
|
||||
#:log-file #$log-file))
|
||||
(stop #~(make-kill-destructor)))))
|
||||
'()))))
|
||||
|
||||
(define (cuirass-account config)
|
||||
"Return the user accounts and user groups for CONFIG."
|
||||
(let ((cuirass-user (cuirass-configuration-user config))
|
||||
(cuirass-group (cuirass-configuration-group config)))
|
||||
(list (user-group
|
||||
(name cuirass-group)
|
||||
(system? #t))
|
||||
(user-account
|
||||
(name cuirass-user)
|
||||
(group cuirass-group)
|
||||
(system? #t)
|
||||
(comment "Cuirass privilege separation user")
|
||||
(home-directory (string-append "/var/lib/" cuirass-user))
|
||||
(shell (file-append shadow "/sbin/nologin"))))))
|
||||
|
||||
(define (cuirass-postgresql-role config)
|
||||
(let ((user (cuirass-configuration-user config)))
|
||||
(list (postgresql-role
|
||||
(name user)
|
||||
(create-database? #t)))))
|
||||
|
||||
(define (cuirass-activation config)
|
||||
"Return the activation code for CONFIG."
|
||||
(let* ((cache (cuirass-configuration-cache-directory config))
|
||||
(remote-server (cuirass-configuration-remote-server config))
|
||||
(remote-cache (and remote-server
|
||||
(cuirass-remote-server-configuration-cache
|
||||
remote-server)))
|
||||
(user (cuirass-configuration-user config))
|
||||
(log "/var/log/cuirass")
|
||||
(profile (string-append "/var/guix/profiles/per-user/" user))
|
||||
(roots (string-append profile "/cuirass"))
|
||||
(group (cuirass-configuration-group config)))
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
(mkdir-p #$cache)
|
||||
(mkdir-p #$log)
|
||||
(mkdir-p #$roots)
|
||||
|
||||
(when #$remote-cache
|
||||
(mkdir-p #$remote-cache))
|
||||
|
||||
(let ((uid (passwd:uid (getpw #$user)))
|
||||
(gid (group:gid (getgr #$group))))
|
||||
(chown #$cache uid gid)
|
||||
(chown #$log uid gid)
|
||||
(chown #$roots uid gid)
|
||||
(chown #$profile uid gid)
|
||||
|
||||
(when #$remote-cache
|
||||
(chown #$remote-cache uid gid)))))))
|
||||
|
||||
(define (cuirass-log-rotations config)
|
||||
"Return the list of log rotations that corresponds to CONFIG."
|
||||
(list (log-rotation
|
||||
(files (list (cuirass-configuration-log-file config)
|
||||
(cuirass-configuration-web-log-file config)))
|
||||
(frequency 'weekly)
|
||||
(options '("rotate 40"))))) ;worth keeping
|
||||
|
||||
(define cuirass-service-type
|
||||
(service-type
|
||||
(name 'cuirass)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension profile-service-type ;for 'info cuirass'
|
||||
(compose list cuirass-configuration-cuirass))
|
||||
(service-extension rottlog-service-type cuirass-log-rotations)
|
||||
(service-extension activation-service-type cuirass-activation)
|
||||
(service-extension shepherd-root-service-type cuirass-shepherd-service)
|
||||
(service-extension account-service-type cuirass-account)
|
||||
;; Make sure postgresql and postgresql-role are instantiated.
|
||||
(service-extension postgresql-service-type (const #t))
|
||||
(service-extension postgresql-role-service-type
|
||||
cuirass-postgresql-role)))
|
||||
(description
|
||||
"Run the Cuirass continuous integration service.")))
|
||||
|
||||
(define-record-type* <cuirass-remote-worker-configuration>
|
||||
cuirass-remote-worker-configuration make-cuirass-remote-worker-configuration
|
||||
cuirass-remote-worker-configuration?
|
||||
(cuirass cuirass-remote-worker-configuration-cuirass ;file-like
|
||||
(default cuirass))
|
||||
(workers cuirass-remote-worker-workers ;int
|
||||
(default 1))
|
||||
(server cuirass-remote-worker-server ;string
|
||||
(default #f))
|
||||
(systems cuirass-remote-worker-systems ;list
|
||||
(default (list (%current-system))))
|
||||
(log-file cuirass-remote-worker-log-file ;string
|
||||
(default "/var/log/cuirass-remote-worker.log"))
|
||||
(publish-port cuirass-remote-worker-configuration-publish-port ;int
|
||||
(default 5558))
|
||||
(substitute-urls cuirass-remote-worker-configuration-substitute-urls
|
||||
(default %default-substitute-urls)) ;list of strings
|
||||
(public-key cuirass-remote-worker-configuration-public-key ;string
|
||||
(default #f))
|
||||
(private-key cuirass-remote-worker-configuration-private-key ;string
|
||||
(default #f)))
|
||||
|
||||
(define (cuirass-remote-worker-shepherd-service config)
|
||||
"Return a <shepherd-service> for the Cuirass remote worker service with
|
||||
CONFIG."
|
||||
(match-record config <cuirass-remote-worker-configuration>
|
||||
(cuirass workers server systems log-file publish-port
|
||||
substitute-urls public-key private-key)
|
||||
(list (shepherd-service
|
||||
(documentation "Run Cuirass remote build worker.")
|
||||
(provision '(cuirass-remote-worker))
|
||||
(requirement '(avahi-daemon guix-daemon networking))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list (string-append #$cuirass "/bin/cuirass")
|
||||
"remote-worker"
|
||||
(string-append "--workers="
|
||||
#$(number->string workers))
|
||||
#$@(if server
|
||||
(list (string-append "--server=" server))
|
||||
'())
|
||||
#$@(if systems
|
||||
(list (string-append
|
||||
"--systems="
|
||||
(string-join systems ",")))
|
||||
'())
|
||||
#$@(if publish-port
|
||||
(list (string-append
|
||||
"--publish-port="
|
||||
(number->string publish-port)))
|
||||
'())
|
||||
#$@(if substitute-urls
|
||||
(list (string-append
|
||||
"--substitute-urls="
|
||||
(string-join substitute-urls)))
|
||||
'())
|
||||
#$@(if public-key
|
||||
(list
|
||||
(string-append "--public-key="
|
||||
public-key))
|
||||
'())
|
||||
#$@(if private-key
|
||||
(list
|
||||
(string-append "--private-key="
|
||||
private-key))
|
||||
'()))
|
||||
#:environment-variables
|
||||
(list
|
||||
"GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt"
|
||||
(string-append "GIT_EXEC_PATH=" #$git "/libexec/git-core")
|
||||
(string-append "http_proxy=" #$http-proxy)
|
||||
(string-append "https_proxy=" #$http-proxy)
|
||||
)
|
||||
#:log-file #$log-file))
|
||||
(stop #~(make-kill-destructor))))))
|
||||
|
||||
(define cuirass-remote-worker-service-type
|
||||
(service-type
|
||||
(name 'cuirass-remote-worker)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension shepherd-root-service-type
|
||||
cuirass-remote-worker-shepherd-service)))
|
||||
(description
|
||||
"Run the Cuirass remote build worker service.")))
|
73
glicid/services/file-systems.scm
Normal file
73
glicid/services/file-systems.scm
Normal file
|
@ -0,0 +1,73 @@
|
|||
(define-module (glicid services file-systems)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (guix)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix records)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:export (
|
||||
%default-autofs-conf
|
||||
autofs-configuration
|
||||
autofs-configuration?
|
||||
autofs-service
|
||||
autofs-service-type
|
||||
)
|
||||
)
|
||||
|
||||
(define %default-autofs-conf
|
||||
(plain-file "autofs" "
|
||||
# Empty file as we do nothing by default
|
||||
")
|
||||
)
|
||||
|
||||
(define-record-type* <autofs-configuration>
|
||||
autofs-configuration make-autofs-configuration
|
||||
autofs-configuration?
|
||||
(autofs autofs-configuration-autofs
|
||||
(default autofs)
|
||||
)
|
||||
(config-file autofs-config-file
|
||||
(default %default-autofs-conf)
|
||||
)
|
||||
(log-file autofs-log-file
|
||||
(default "/var/log/autofs.log")
|
||||
)
|
||||
)
|
||||
|
||||
(define autofs-service
|
||||
(match-lambda
|
||||
(($ <autofs-configuration> autofs config-file log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(autofs) )
|
||||
(documentation "Run autofs.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append autofs "/sbin/automount")
|
||||
"-d" "-f"
|
||||
)
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define autofs-service-type
|
||||
(service-type (name 'autofs)
|
||||
(extensions
|
||||
(list (
|
||||
service-extension
|
||||
shepherd-root-service-type
|
||||
autofs-service
|
||||
))
|
||||
)
|
||||
(description "Run autofs")
|
||||
)
|
||||
)
|
||||
|
112
glicid/services/networking.scm
Normal file
112
glicid/services/networking.scm
Normal file
|
@ -0,0 +1,112 @@
|
|||
(define-module (glicid services networking)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (guix)
|
||||
#:use-module (guix records)
|
||||
#:use-module (ice-9 match)
|
||||
#: export (
|
||||
squid-configuration
|
||||
squid-configuration?
|
||||
squid-shepherd-service
|
||||
squid-service-type
|
||||
)
|
||||
)
|
||||
|
||||
(define-record-type* <squid-configuration>
|
||||
squid-configuration make-squid-configuration
|
||||
squid-configuration?
|
||||
(squid squid-configuration-squid
|
||||
(default squid)
|
||||
)
|
||||
(port squid-configuration-port
|
||||
(default 3128)
|
||||
)
|
||||
(pid-file squid-configuration-pid-file
|
||||
(default "/var/run/squid.pid")
|
||||
)
|
||||
(config-file squid-configuration-config-file
|
||||
(default (file-append squid "/etc/squid.conf"))
|
||||
)
|
||||
(log-file squid-configuration-log-file
|
||||
(default "/var/log/squid.log")
|
||||
)
|
||||
)
|
||||
|
||||
(define squid-shepherd-service
|
||||
(match-lambda
|
||||
(($ <squid-configuration> squid port pid-file config-file log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(squid) )
|
||||
(documentation "Run squid.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append squid "/sbin/squid")
|
||||
"-d ALL,1"
|
||||
"-a" #$port
|
||||
"-u" #$port
|
||||
"-f" #$config-file
|
||||
)
|
||||
#:pid-file #$pid-file
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(exec-command
|
||||
(list
|
||||
#$(file-append squid "/sbin/squid")
|
||||
"-d"
|
||||
"-a" #$port
|
||||
"-u" #$port
|
||||
"-k" "shutdown"
|
||||
"-f" #$config-file
|
||||
)
|
||||
#:pid-file #$pid-file
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(actions (list
|
||||
(shepherd-action
|
||||
(name 'reload)
|
||||
(documentation "Reload the settings file from disk.")
|
||||
(procedure #~(exec-command
|
||||
(list
|
||||
#$(file-append squid "/sbin/squid")
|
||||
"-d"
|
||||
"-a" #$port
|
||||
"-u" #$port
|
||||
"-k" "reconfigure"
|
||||
"-f" #$config-file
|
||||
)
|
||||
))
|
||||
)
|
||||
))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define %squid-activation
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p "/var/run/squid")
|
||||
(mkdir-p "/var/spool/squid")
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define squid-service-type
|
||||
(service-type (name 'squid)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension shepherd-root-service-type squid-shepherd-service)
|
||||
(service-extension activation-service-type (const %squid-activation))
|
||||
)
|
||||
)
|
||||
(description "Run @uref{http://www.squid-cache.org/, squid} community developped Squid software.")
|
||||
)
|
||||
)
|
|
@ -1,5 +1,5 @@
|
|||
(define-module (glicid services openldap)
|
||||
#:use-module (glicid packages openldap)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (guix)
|
||||
|
@ -8,73 +8,80 @@
|
|||
#: export (
|
||||
openldap-configuration
|
||||
openldap-configuration?
|
||||
%default-slapd.conf
|
||||
openldap-shepherd-service
|
||||
openldap-service-type
|
||||
)
|
||||
)
|
||||
|
||||
(define-record-type* <openldap-configuration>
|
||||
openldap-configuration make-openldap-configuration
|
||||
openldap-configuration?
|
||||
(openldap openldap-configuration-openldap ;<package>
|
||||
(default openldap-glicid)
|
||||
)
|
||||
(arguments openldap-configuration-arguments ;list of strings
|
||||
(default '())
|
||||
)
|
||||
(logflags openldap-configuration-logflags ;number
|
||||
(default "0")
|
||||
)
|
||||
(log-file openldap-configuration-log-file ; string
|
||||
(default "/var/log/slapd.log")
|
||||
)
|
||||
(pid-file openldap-configuration-pid-file ; string
|
||||
(default "/var/run/openldap/slapd.pid")
|
||||
)
|
||||
(config-file openldap-configuration-config-file ; string
|
||||
(default %default-slapd.conf)
|
||||
)
|
||||
(schema-dir openldap-configuration-schema-dir ; string
|
||||
(default '())
|
||||
)
|
||||
openldap-configuration make-openldap-configuration
|
||||
openldap-configuration?
|
||||
(openldap openldap-configuration-openldap
|
||||
(default openldap)
|
||||
)
|
||||
(uri openldap-configuration-uri
|
||||
(default "ldapi:// ldap://")
|
||||
)
|
||||
(logflags openldap-configuration-logflags
|
||||
(default "0")
|
||||
)
|
||||
(pid-file openldap-configuration-pid-file
|
||||
(default "/var/run/openldap/slapd.pid")
|
||||
)
|
||||
(config-file openldap-configuration-config-file
|
||||
(default (file-append openldap "/etc/openldap/slapd.conf"))
|
||||
)
|
||||
(log-file openldap-configuration-log-file
|
||||
(default "/var/log/slapd.log")
|
||||
)
|
||||
)
|
||||
(define %default-slapd.conf
|
||||
(plain-file "slapd.conf" "
|
||||
# Empty file for test
|
||||
"))
|
||||
(define schema_dir (local-file "ldap_schema" #:recursive? #t))
|
||||
|
||||
(define openldap-shepherd-service
|
||||
(match-lambda
|
||||
(($ <openldap-configuration> openldap arguments logflags log-file pid-file config-file schema-dir)
|
||||
(match-lambda
|
||||
(($ <openldap-configuration> openldap uri logflags pid-file config-file log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(slapd) )
|
||||
(documentation "Run openldap.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(slapd) )
|
||||
(documentation "Run openldap.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #f)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append openldap-glicid "/libexec/slapd")
|
||||
"-h 'ldap:/// ldaps:///'"
|
||||
"-d" #$logflags
|
||||
"-f" #$config-file
|
||||
)
|
||||
#:pid-file #$pid-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
#$(file-append openldap "/libexec/slapd")
|
||||
"-h" #$uri
|
||||
"-d" #$logflags
|
||||
"-f" #$config-file
|
||||
)
|
||||
#:pid-file #$pid-file
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(define %openldap-activation
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p "/var/run/openldap")
|
||||
(mkdir-p "/var/lib/ldap")
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define openldap-service-type
|
||||
(service-type (name 'slapd)
|
||||
(extensions
|
||||
(list (
|
||||
service-extension
|
||||
shepherd-root-service-type
|
||||
openldap-shepherd-service
|
||||
))
|
||||
)
|
||||
(description "Run @uref{https://www.openldap.org, Openldap} community developped LDAP software.")
|
||||
(service-type (name 'slapd)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension shepherd-root-service-type openldap-shepherd-service)
|
||||
(service-extension activation-service-type (const %openldap-activation))
|
||||
)
|
||||
)
|
||||
(description "Run @uref{https://www.openldap.org, Openldap} community developped LDAP software.")
|
||||
)
|
||||
)
|
||||
|
|
218
glicid/services/parallel.scm
Normal file
218
glicid/services/parallel.scm
Normal file
|
@ -0,0 +1,218 @@
|
|||
(define-module (glicid services parallel)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (guix)
|
||||
#:use-module (guix records)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:export (
|
||||
munged-configuration
|
||||
munged-configuration?
|
||||
munged-service
|
||||
munged-service-type
|
||||
slurmdbd-configuration
|
||||
slurmdbd-configuration?
|
||||
slurmdbd-service
|
||||
slurmdbd-service-type
|
||||
slurmctld-configuration
|
||||
slurmctld-configuration?
|
||||
slurmctld-service
|
||||
slurmctld-service-type
|
||||
)
|
||||
)
|
||||
|
||||
;
|
||||
; Munged
|
||||
;
|
||||
(define-record-type* <munged-configuration>
|
||||
munged-configuration make-munged-configuration
|
||||
munged-configuration?
|
||||
(munge munge-configuration-munge
|
||||
(default munge)
|
||||
)
|
||||
(key-file munged-key-file
|
||||
(default (file-append munge "/etc/munge/munged.key"))
|
||||
)
|
||||
(log-file munged-log-file
|
||||
(default "/var/log/munged.log")
|
||||
)
|
||||
)
|
||||
|
||||
(define munged-service
|
||||
(match-lambda
|
||||
(($ <munged-configuration> munge key-file log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(munged) )
|
||||
(documentation "Run munged.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append munge "/sbin/munged")
|
||||
"-F"
|
||||
"-f" ; until we fix the permissions
|
||||
"--key-file" #$key-file
|
||||
)
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define %munged-activation
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p "/var/run/munge")
|
||||
(mkdir-p "/var/lib/munge")
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define munged-service-type
|
||||
(service-type (name 'munged)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension shepherd-root-service-type munged-service)
|
||||
(service-extension activation-service-type (const %munged-activation))
|
||||
)
|
||||
)
|
||||
(description "Run munged")
|
||||
)
|
||||
)
|
||||
|
||||
;
|
||||
; slurmdbd
|
||||
;
|
||||
(define-record-type* <slurmdbd-configuration>
|
||||
slurmdbd-configuration make-slurmdbd-configuration
|
||||
slurmdbd-configuration?
|
||||
(slurm slurm-configuration-slurm
|
||||
(default slurm)
|
||||
)
|
||||
(slurmdbd-conf slurmdbd-slurmdbd-conf
|
||||
(default (file-append slurm "/etc/slurm/slurmdbd.conf"))
|
||||
)
|
||||
(log-file slurmdbd-log-file
|
||||
(default "/var/log/slurmdbd.log")
|
||||
)
|
||||
)
|
||||
|
||||
(define slurmdbd-service
|
||||
(match-lambda
|
||||
(($ <slurmdbd-configuration> slurm slurmdbd-conf log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(slurmdbd) )
|
||||
(documentation "Run slurmdbd.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append slurm "/sbin/slurmdbd")
|
||||
"-D"
|
||||
)
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define %slurmdbd-activation
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p "/var/log/slurm")
|
||||
(mkdir-p "/var/lib/slurm-archives")
|
||||
(mkdir-p "/var/lib/slurm")
|
||||
(chmod "0600" "/etc/slurm/slurmdbd.conf")
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define slurmdbd-service-type
|
||||
(service-type (name 'slurmdbd)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension shepherd-root-service-type slurmdbd-service)
|
||||
(service-extension activation-service-type (const %slurmdbd-activation))
|
||||
)
|
||||
)
|
||||
(description "Run slurmdbd")
|
||||
)
|
||||
)
|
||||
|
||||
;
|
||||
; slurmctld
|
||||
;
|
||||
(define-record-type* <slurmctld-configuration>
|
||||
slurmctld-configuration make-slurmctld-configuration
|
||||
slurmctld-configuration?
|
||||
(slurm slurm-configuration-slurm
|
||||
(default slurm)
|
||||
)
|
||||
(slurmctld-conf slurmctld-slurmctld-conf
|
||||
(default (file-append slurm "/etc/slurm/slurmctld.conf"))
|
||||
)
|
||||
(log-file slurmctld-log-file
|
||||
(default "/var/log/slurmctld.log")
|
||||
)
|
||||
)
|
||||
|
||||
(define slurmctld-service
|
||||
(match-lambda
|
||||
(($ <slurmctld-configuration> slurm slurmctld-conf log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(slurmctld) )
|
||||
(documentation "Run slurmctld.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append slurm "/sbin/slurmctld")
|
||||
"-D" "-R"
|
||||
"-f" #$slurmctld-conf
|
||||
)
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define %slurmctld-activation
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p "/var/log/slurm")
|
||||
(mkdir-p "/var/lib/slurm-archives")
|
||||
(mkdir-p "/var/lib/slurm")
|
||||
#t
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define slurmctld-service-type
|
||||
(service-type (name 'slurmctld)
|
||||
(extensions
|
||||
(list
|
||||
(service-extension shepherd-root-service-type slurmctld-service)
|
||||
(service-extension activation-service-type (const %slurmctld-activation))
|
||||
)
|
||||
)
|
||||
(description "Run slurmctld")
|
||||
)
|
||||
)
|
||||
|
71
glicid/services/rc-local.scm
Normal file
71
glicid/services/rc-local.scm
Normal file
|
@ -0,0 +1,71 @@
|
|||
(define-module (glicid services rc-local)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (guix)
|
||||
#:use-module (guix records)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (gnu packages bash)
|
||||
#:export (
|
||||
%default-rc-local-conf
|
||||
rc-local-configuration
|
||||
rc-local-configuration?
|
||||
rc-local-service
|
||||
rc-local-service-type
|
||||
)
|
||||
)
|
||||
|
||||
(define %default-rc-local-conf
|
||||
(plain-file "rc-local" "
|
||||
# Empty file as we do nothing by default
|
||||
")
|
||||
)
|
||||
|
||||
(define-record-type* <rc-local-configuration>
|
||||
rc-local-configuration make-rc-local-configuration
|
||||
rc-local-configuration?
|
||||
(config-file rc-local-config-file
|
||||
(default %default-rc-local-conf)
|
||||
)
|
||||
(log-file rc-local-log-file
|
||||
(default "/var/log/rc-local.log")
|
||||
)
|
||||
)
|
||||
|
||||
(define rc-local-service
|
||||
(match-lambda
|
||||
(($ <rc-local-configuration> config-file log-file)
|
||||
(list
|
||||
(shepherd-service
|
||||
(provision '(rc-local) )
|
||||
(documentation "Run rc-local.")
|
||||
(requirement '(user-processes))
|
||||
(respawn? #f)
|
||||
(one-shot? #t)
|
||||
(start #~(make-forkexec-constructor
|
||||
(list
|
||||
#$(file-append bash "/bin/bash")
|
||||
"-l"
|
||||
#$config-file
|
||||
)
|
||||
#:log-file #$log-file
|
||||
))
|
||||
(stop #~(make-kill-destructor))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(define rc-local-service-type
|
||||
(service-type (name 'rc-local)
|
||||
(extensions
|
||||
(list (
|
||||
service-extension
|
||||
shepherd-root-service-type
|
||||
rc-local-service
|
||||
))
|
||||
)
|
||||
(description "Run a script in a rc-local like form")
|
||||
)
|
||||
)
|
||||
|
|
@ -1,8 +1,43 @@
|
|||
(define-module (glicid utils)
|
||||
#:use-module (guix packages)
|
||||
#:export (latest-version)
|
||||
)
|
||||
;; helper function
|
||||
;; return latest version of 2 packages
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix transformations)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (glicid packages gcc)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages)
|
||||
#:export (latest-version)
|
||||
#:export (gcc11-instead-of-gcc)
|
||||
#:export (transform-package)
|
||||
#:export (instead-of)
|
||||
)
|
||||
;(define (latest-version v1 v2) (if (string> (package-version v1) (package-version v2)) v1 v2))
|
||||
|
||||
(define (latest-version v1 v2) (if (string> (package-version v1) (package-version v2)) v1 v2))
|
||||
(define (latest-version v1 v2)
|
||||
|
||||
(case (version-compare (package-version v1) (package-version v2))
|
||||
((>) v1)
|
||||
((=) v1)
|
||||
((<) v2)
|
||||
)
|
||||
)
|
||||
|
||||
(define gcc11-instead-of-gcc
|
||||
(package-input-rewriting `(
|
||||
(,gcc-toolchain . ,gcc-toolchain-11)
|
||||
(,gfortran-toolchain . ,gfortran-toolchain-11)
|
||||
))
|
||||
)
|
||||
|
||||
(define (transform-package original-package suffix)
|
||||
(package
|
||||
(inherit original-package)
|
||||
(name (string-append (package-name original-package) "-" suffix ))
|
||||
)
|
||||
)
|
||||
|
||||
(define (instead-of package-a-spec package-b)
|
||||
(package-input-rewriting/spec `(
|
||||
(,package-a-spec . ,(const package-b))
|
||||
))
|
||||
)
|
||||
|
|
Loading…
Add table
Reference in a new issue