Merge branch 'master' into staging

This commit is contained in:
Marius Bakke 2022-11-20 21:09:53 +01:00
commit c37a426038
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
33 changed files with 724 additions and 322 deletions

View file

@ -1587,6 +1587,7 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/nyacc-binary-literals.patch \
%D%/packages/patches/oath-toolkit-xmlsec-compat.patch \
%D%/packages/patches/obs-modules-location.patch \
%D%/packages/patches/ocaml-dose3-add-unix-dependency.patch \
%D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \

View file

@ -2872,7 +2872,7 @@ (define bin (string-append (assoc-ref outputs "out") "/bin"))
(list openssh
openssl
python-mock
python-pycrypto
python-pycryptodome
python-pytest
python-pytest-forked
python-pytest-mock

View file

@ -12,6 +12,7 @@
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Andy Tai <atai@atai.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -132,14 +133,14 @@ (define-public yasm
(define-public lightning
(package
(name "lightning")
(version "2.1.3")
(version "2.2.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/lightning/lightning-"
version ".tar.gz"))
(sha256
(base32
"1jgxbq2cm51dzi3zhz38mmgwdcgs328mfl8iviw8dxn6dn36p1gd"))))
"03kwvn00qggys203vpzb2kq2asy0ql7x84ajk05a62yg3kzq8faf"))))
(build-system gnu-build-system)
(native-inputs (list zlib))
(arguments

View file

@ -3111,6 +3111,8 @@ (define-public openal
through the EFX extension. It also facilitates streaming audio, multi-channel
buffers, and audio capture.")
(home-page "https://openal-soft.org/")
(properties
'((upstream-name . "openal-soft")))
(license license:lgpl2.0+)))
(define-public freealut

View file

@ -43,6 +43,7 @@ (define-public oath-toolkit
(method url-fetch)
(uri (string-append "https://download.savannah.nongnu.org/releases/"
name "/" name "-" version ".tar.gz"))
(patches (search-patches "oath-toolkit-xmlsec-compat.patch"))
(sha256
(base32 "1aa620k05lsw3l3slkp2mzma40q3p9wginspn9zk8digiz7dzv9n"))))
(build-system gnu-build-system)

View file

@ -76,7 +76,7 @@ (define-public chezmoi
go-github-com-muesli-reflow-padding
go-github-com-muesli-termenv
go-github-com-google-goterm
go-golang-org-colorful
go-github-com-lucasb-eyer-go-colorful
go-github-com-mattn-go-isatty
go-github.com-mattn-go-runewidth
go-github-com-olekukonko-tablewriter

View file

@ -1222,17 +1222,17 @@ (define-public galera
(license license:gpl2))) ;'COPYING' says "version 2" only
;; Don't forget to update the other postgresql packages when upgrading this one.
(define-public postgresql-14
(define-public postgresql-15
(package
(name "postgresql")
(version "14.4")
(version "15.1")
(source (origin
(method url-fetch)
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"0slg7ld5mldmv3pn1wxxwglm4s3xc6c91ixx24apj713qlvn4fy2"))
"1bi19sqmri569hyjvbk8grlws7f5dalsqz87wkgx1yjafcyz5zb4"))
(patches (search-patches "postgresql-disable-resolve_symlinks.patch"))))
(build-system gnu-build-system)
(arguments
@ -1284,30 +1284,43 @@ (define-public postgresql-14
pictures, sounds, or video.")
(license (license:x11-style "file://COPYRIGHT"))))
(define-public postgresql-14
(package
(inherit postgresql-15)
(name "postgresql")
(version "14.4")
(source (origin
(inherit (package-source postgresql-15))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"0slg7ld5mldmv3pn1wxxwglm4s3xc6c91ixx24apj713qlvn4fy2"))))))
(define-public postgresql-13
(package
(inherit postgresql-14)
(version "13.6")
(version "13.9")
(source (origin
(inherit (package-source postgresql-14))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s"))))))
"05d46dzkya6s0qbaxvksc5j12syb514q5lha6z9vx7z4lp06c6gg"))))))
(define-public postgresql-11
(package
(inherit postgresql-13)
(name "postgresql")
(version "11.16")
(version "11.18")
(source (origin
(inherit (package-source postgresql-13))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d"))))
"013m1x53qfxcry7l033ahhxjc3lflb7fj8fapk7qm49fqppj0kyj"))))
(native-inputs
(modify-inputs (package-native-inputs postgresql-13)
(replace "docbook-xml" docbook-xml-4.2)))))
@ -1315,14 +1328,14 @@ (define-public postgresql-11
(define-public postgresql-10
(package
(inherit postgresql-11)
(version "10.21")
(version "10.23")
(source (origin
(inherit (package-source postgresql-11))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"1la5dx4hhy5yaznwk9gwdsymih3sd23fyhh6spssdaajdn2rh8fk"))))
"1sgfssjc9lnzijhn108r6z26fri655k413f1c9b8wibjhd9b594l"))))
(native-inputs
(modify-inputs (package-native-inputs postgresql-11)
(append opensp docbook-sgml-4.2)

View file

@ -386,34 +386,35 @@ (define-public inkbox
(package
(name "inkbox")
(version "1.7")
(home-page "https://github.com/Kobo-InkBox/inkbox")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://alpinekobox.ddns.net/InkBox/inkbox/")
(url home-page)
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "126cqn0ixcn608lv2hd9f7zmzj4g448bnpxc7wv9cvg83qqajh5n"))))
(build-system qt-build-system)
(arguments
'(#:tests? #f ; no test suite
#:make-flags
(list (string-append "PREFIX="
(assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(list
#:tests? #f ; no test suite
#:make-flags
#~(list (string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prefix-opt
(lambda* (#:key outputs #:allow-other-keys)
(lambda _
(substitute* "inkbox.pro"
(("/opt/\\$\\$\\{TARGET\\}") (string-append (assoc-ref outputs "out"))))))
(("/opt/\\$\\$\\{TARGET\\}")
#$output))))
(replace 'configure
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke (cons "qmake" make-flags)))))))
(native-inputs
(list qtbase-5))
(home-page "https://alpinekobox.ddns.net/InkBox/inkbox/")
(synopsis "EBook reader")
(description "This package provides InkBox eBook reader.")
(license license:gpl3)))

View file

@ -380,9 +380,10 @@ (define-public gzochi
(substitute* (find-files "." "^Makefile\\.in$")
(("-Werror") ""))
#t)))))
(native-inputs `(("pkgconfig" ,pkg-config)))
(native-inputs (list pkg-config))
(inputs (list bdb
glib
gmp
guile-3.0
libmicrohttpd
ncurses
@ -2444,12 +2445,20 @@ (define-public chipmunk
(commit (string-append "Chipmunk-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1qmkn01g06p3rnhmbyffmjns6wj5vhgf9cscigk3wzxcpwv1hyxb"))))
(base32 "1qmkn01g06p3rnhmbyffmjns6wj5vhgf9cscigk3wzxcpwv1hyxb"))
(modules '((guix build utils)))
(snippet
#~(begin
;; This is fixed in the upstream repository but the fix
;; has not been released.
(substitute* "src/cpHastySpace.c"
(("#include <sys/sysctl.h>") ""))))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;no test
#:configure-flags '("-DBUILD_STATIC=OFF"
"-DBUILD_DEMOS=OFF")))
(list #:tests? #f ;no test
#:configure-flags
#~(list "-DBUILD_STATIC=OFF"
"-DBUILD_DEMOS=OFF")))
(inputs
(list freeglut libxmu libxrandr))
(home-page "https://chipmunk-physics.net/")

View file

@ -828,7 +828,7 @@ (define-public bsd-games
(home-page "https://github.com/vattam/BSDGames")
(synopsis "Collection of the old text-based games and amusements")
(description
"These are the BSD games. See the fortune-mod package for fortunes.
"These are the BSD games.
Action: atc (keep the airplanes safe), hack (explore the dangerous Dungeon),
hunt (kill the others for the Pair of Boots, multi-player only), robots (avoid

View file

@ -5894,9 +5894,9 @@ (define-public go-github-com-go-sql-driver-mysql
golang's database/sql package.")
(license license:mpl2.0)))
(define-public go-golang-org-colorful
(define-public go-github-com-lucasb-eyer-go-colorful
(package
(name "go-golang-org-colorful")
(name "go-github-com-lucasb-eyer-go-colorful")
(version "1.2.0")
(source (origin
(method git-fetch)
@ -5908,17 +5908,20 @@ (define-public go-golang-org-colorful
(base32
"08c3fkf27r16izjjd4w94xd1z7w1r4mdalbl53ms2ka2j465s3qs"))))
(build-system go-build-system)
(propagated-inputs (list go-golang-org-x-image))
(arguments
'(#:import-path "github.com/lucasb-eyer/go-colorful"))
(native-inputs
(list go-golang-org-sql-mock))
(synopsis "Convert between colorspaces and generate colors")
(description "This package implements Go's @code{color.Color} interface
and provides a means of converting colors stored as RGB to various
colorspaces.")
(list #:import-path "github.com/lucasb-eyer/go-colorful"))
(home-page "https://github.com/lucasb-eyer/go-colorful")
(synopsis "Library for playing with colors in Go")
(description
"The colorful package provides a library for using colors in Go.
It stores colors in RGB and provides methods for converting these to
various color spaces.")
(license license:expat)))
(define-public go-golang-org-colorful
(deprecated-package "go-golang-org-colorful" go-github-com-lucasb-eyer-go-colorful))
(define-public go-github-com-gdamore-encoding
(package
(name "go-github-com-gdamore-encoding")
@ -5966,8 +5969,10 @@ (define-public go-github-com-gdamore-tcell
(arguments
`(#:import-path "github.com/gdamore/tcell"))
(inputs
(list go-github.com-mattn-go-runewidth go-golang-org-colorful
go-golang-org-x-text go-github-com-gdamore-encoding))
(list go-github.com-mattn-go-runewidth
go-github-com-lucasb-eyer-go-colorful
go-golang-org-x-text
go-github-com-gdamore-encoding))
(home-page "https://github.com/gdamore/tcell")
(synopsis "Provide a cell-based view for text terminals")
(description "This package includes a full parser and expander for
@ -6006,6 +6011,36 @@ (define-public go-github-com-gdamore-tcell-v2
(modify-inputs (package-inputs go-github-com-gdamore-tcell)
(prepend go-golang-org-x-term go-golang-org-x-sys)))))
(define-public go-github-com-rivo-tview
(package
(name "go-github-com-rivo-tview")
(version "0.0.0-20220703182358-a13d901d3386")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rivo/tview")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"0gf1m3ndbc3kgxpv0ryq9a1ahijg6m896sc9k7dvwfjd8vy0q0yd"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/rivo/tview"))
(propagated-inputs (list go-golang-org-x-term
go-golang-org-x-sys
go-github-com-rivo-uniseg
go-github-com-mattn-go-runewidth
go-github-com-lucasb-eyer-go-colorful
go-github-com-gdamore-tcell-v2))
(home-page "https://github.com/rivo/tview")
(synopsis "Rich Interactive Widgets for Terminal UIs")
(description
"The tview package implements rich widgets for terminal based user
interfaces. The widgets provided with this package are useful for data
exploration and data entry.")
(license license:expat)))
(define-public go-github-com-xo-terminfo
(package
(name "go-github-com-xo-terminfo")
@ -7716,8 +7751,10 @@ (define-public go-github-com-muesli-termenv
(arguments
`(#:import-path "github.com/muesli/termenv"))
(native-inputs
(list go-github-com-google-goterm go-golang-org-colorful
go-github-com-mattn-go-isatty go-github.com-mattn-go-runewidth))
(list go-github-com-google-goterm
go-github-com-lucasb-eyer-go-colorful
go-github-com-mattn-go-isatty
go-github.com-mattn-go-runewidth))
(home-page "https://github.com/muesli/termenv/")
(synopsis "Advanced styling options on the terminal")
(description "termenv lets you safely use advanced styling options on the
@ -7846,7 +7883,7 @@ (define-public go-github-com-charmbracelet-glamour
go-github.com-mattn-go-runewidth
go-github-com-muesli-termenv
go-github-com-google-goterm
go-golang-org-colorful
go-github-com-lucasb-eyer-go-colorful
go-github-com-mattn-go-isatty
go-github-com-olekukonko-tablewriter
go-github-com-yuin-goldmark
@ -9693,7 +9730,7 @@ (define-public go-github-com-charmbracelet-bubbletea
("github.com/mattn/go-runewidth" ,go-github.com-mattn-go-runewidth)
("go-github-com-muesli-reflow-indent" ,go-github-com-muesli-reflow-indent)
("go-github-com-muesli-reflow-ansi" ,go-github-com-muesli-reflow-ansi)
("go-golang-org-colorful" ,go-golang-org-colorful)
("go-github-com-lucasb-eyer-go-colorful" ,go-github-com-lucasb-eyer-go-colorful)
("github.com/containerd/console" ,go-github-com-containerd-console)
("go-github-com-muesli-reflow-truncate" ,go-github-com-muesli-reflow-truncate)
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
@ -10045,6 +10082,27 @@ (define-public go-gopkg-in-ini
(home-page "https://gopkg.in/ini.v1")
(license license:asl2.0)))
;;; XXX: Since commit bfb61065f05a6eac0cf63b16db43d0c3e864c658, the
;;; canonical name of the ini package is `go-github-com-go-ini-ini`,
;;; not `go-gopkg-in-ini`.
(define-public go-github-com-go-ini-ini
(package
(inherit go-gopkg-in-ini)
(name "go-github-com-go-ini-ini")
(version "1.66.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-ini/ini")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0kqg13606hnw8f75cb59fsy1m85kiqf3csi2g7q2512avdmaphc9"))))
(arguments
(list #:import-path "github.com/go-ini/ini"))
(propagated-inputs (list go-github-com-stretchr-testify))))
(define-public go-github-com-skratchdot-open-golang
(let ((commit "79abb63cd66e41cb1473e26d11ebdcd68b04c8e5")
(revision "0"))
@ -10448,7 +10506,7 @@ (define-public go-github-com-zenhack-go-notmuch
(lambda* (#:key inputs import-path
#:allow-other-keys)
(invoke "tar" "xf"
#$notmuch-fixtures "-C"
#+notmuch-fixtures "-C"
(string-append "src/" import-path
"/fixtures")))))))
(inputs (list notmuch))
@ -10459,6 +10517,34 @@ (define-public go-github-com-zenhack-go-notmuch
email library.")
(license license:gpl3+)))
(define-public go-github-com-jaytaylor-html2text
(package
(name "go-github-com-jaytaylor-html2text")
(version "0.0.0-20211105163654-bc68cce691ba")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jaytaylor/html2text")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"12ckgkp8xqgp0fh6019nwp4ssg2k1rv1a67cpk37ian4q5zrvppm"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/jaytaylor/html2text"
;; Tests are broken: <https://github.com/jaytaylor/html2text/issues/53>
#:tests? #f))
(propagated-inputs (list go-golang-org-x-net
go-github-com-olekukonko-tablewriter
go-github-com-ssor-bom))
(home-page "https://github.com/jaytaylor/html2text")
(synopsis "Convert HTML emails to text")
(description
"The html2text package converts HTML emails to plain text, allowing
text-only mail clients to display them.")
(license license:expat)))
(define-public go-github-com-creack-pty
(package
(name "go-github-com-creack-pty")
@ -10556,6 +10642,52 @@ (define-public go-github-com-kyoh86-xdg
Specification.")
(license license:expat)))
(define-public go-github-com-ssor-bom
(package
(name "go-github-com-ssor-bom")
(version "0.0.0-20170718123548-6386211fdfcf")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ssor/bom")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"09g5496ifwqxqclh2iw58plcwcz0sczlnxwqxzwmnl4shdl371ld"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/ssor/bom"))
(home-page "https://github.com/ssor/bom")
(synopsis "Cleaning BOMs in Go")
(description
"The bom package provides small tools for cleaning BOMs from a byte
array or reader.")
(license license:expat)))
(define-public go-github-com-gogs-chardet
(package
(name "go-github-com-gogs-chardet")
(version "0.0.0-20211120154057-b7413eaefb8f")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gogs/chardet")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"12j8q5wc9m4n51v2j2m40nahqdl9bh3hzpdp26clzq91kc2amiz0"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/gogs/chardet"))
(home-page "https://github.com/gogs/chardet")
(synopsis "Character set detection for Go")
(description
"The chardet package ports character set detection from
ICU to Go.")
(license license:expat)))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar

View file

@ -532,7 +532,7 @@ (define-public pixterm
'(#:import-path "github.com/eliukblau/pixterm/cmd/pixterm"
#:unpack-path "github.com/eliukblau/pixterm"))
(inputs (list go-github-com-disintegration-imaging
go-golang-org-colorful
go-github-com-lucasb-eyer-go-colorful
go-golang-org-x-crypto
go-golang-org-x-image))
(home-page "https://github.com/eliukblau/pixterm")

View file

@ -8866,7 +8866,7 @@ (define-public wireplumber
(define-public ell
(package
(name "ell")
(version "0.48")
(version "0.54")
(source (origin
(method git-fetch)
(uri (git-reference
@ -8875,7 +8875,7 @@ (define-public ell
(file-name (git-file-name name version))
(sha256
(base32
"0lxjizby3zdyhzad5a0gbz4m2pp44jf1j4l1pn18d04rw9mr2gqy"))))
"1vsv5ibiyli1cvk32l5avms6ngv6i0jxxqd5vw5kbfcp6ph94brs"))))
(build-system gnu-build-system)
(arguments
;; Tests launch dbus-daemon instances that all try to bind to

View file

@ -7095,6 +7095,46 @@ (define-public ecl-type-i
;; The tests get stuck indefinitly
'(#:tests? #f))))
(define-public sbcl-simplified-types
(let ((commit "8fd0727a70a9de76289ac62c1567b8d278e7434e")
(revision "0"))
(package
(name "sbcl-simplified-types")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/marcoheisig/simplified-types")
(commit commit)))
(file-name (git-file-name "cl-simplified-types" version))
(sha256
(base32 "1hdwmn5lz717aj6qdqmfmr3cbjl8l3giwn0fb5ca9pj83cx7fg8y"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria
sbcl-introspect-environment
sbcl-trivia))
(home-page "https://github.com/marcoheisig/simplified-types")
(synopsis "Simplify Common Lisp type specifiers")
(description
"Simplified-Types is a library that provides functions for simplifying
Common Lisp type specifiers. The API consists of two functions:
@itemize
@item @code{simplify-type} takes a type specifier and, optionally, an
environment, and returns the corresponding simplified type.
@item @code{simplified-type-of} takes an object and returns the simplified
type of that object.
@end itemize")
(license license:expat))))
(define-public cl-simplified-types
(sbcl-package->cl-source-package sbcl-simplified-types))
(define-public ecl-simplified-types
(sbcl-package->ecl-package sbcl-simplified-types))
(define-public sbcl-typo
(let ((commit "0e883490f81edf2a1be4e5b101d1caec78d7853b")
(revision "0"))
@ -19164,6 +19204,77 @@ (define-public ecl-trial
(define-public cl-trial
(sbcl-package->cl-source-package sbcl-trial))
(define-public sbcl-virality
(package
(name "sbcl-virality")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bufferswap/ViralityEngine")
(commit (string-append "v" version))))
(file-name (git-file-name "cl-virality" version))
(sha256
(base32 "0hvjcvyd628jh4if6swk1wrfb9qdlnpk9ax1y3jarr8ms7ghfcdb"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:asd-systems '("virality"
"vorigin"
"vorigin.test"
"vshadow"
"vumbra"
"vutils")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'delete-examples
(lambda _
;; Don't install the big "examples" directory.
(delete-file-recursively "examples"))))))
(inputs
(list sbcl-3b-bmfont
sbcl-babel
sbcl-cl-cpus
sbcl-cl-graph
sbcl-cl-opengl
sbcl-cl-ppcre
sbcl-cl-slug
sbcl-closer-mop
sbcl-fast-io
sbcl-global-vars
sbcl-glsl-packing
sbcl-jsown
sbcl-lparallel
sbcl-pngload
sbcl-printv
sbcl-queues
sbcl-sdl2
sbcl-serapeum
sbcl-split-sequence
sbcl-static-vectors
sbcl-trivial-features
sbcl-varjo))
(home-page "https://github.com/bufferswap/ViralityEngine")
(synopsis "Component-based game engine written in Common Lisp")
(description
"Virality Engine provides a system and workflow that helps describe the
elements needed to write 2D or 3D games. It was designed with several domain
specific languages that make it easier to describe, manipulate, and use assets
commonly found in game making. Such assets include (but are not limited to)
textures, materials, shader programs, and scene trees of actors that are
available for instantiation. Virality Engine also knows how to accept input
from keyboards and most joysticks and gamepads.
The component system is a hybrid model between an ECS and an object model. The
components are defined similar to CLOS defclass, and regular generic methods
can be used with them. Components are added to Actors which represent game
concepts like players, scenery, effects, etc. We define a component protocol
invoked by Virality Engine to move your components to the next state and
render them each frame.")
(license license:expat)))
(define-public cl-virality
(sbcl-package->cl-source-package sbcl-virality))
(define-public sbcl-cl-liballegro
(let ((commit "49f632ce97fc4f835bf5d450588793234b980a64")
(revision "1"))
@ -20364,6 +20475,46 @@ (define-public cl-clop
(define-public ecl-clop
(sbcl-package->ecl-package sbcl-clop))
(define-public sbcl-pp-toml
(let ((commit "54f7d08c939d18b24363342c98c19b6812d7afb9")
(revision "0"))
(package
(name "sbcl-pp-toml")
(version (git-version "1.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pnathan/pp-toml")
(commit commit)))
(file-name (git-file-name "cl-pp-toml" version))
(sha256
(base32 "136d7jzz7l2ck9wwld0ac46jmpm94lvja6m50sy73s232slka2hg"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-fiveam))
(inputs
(list sbcl-alexandria
sbcl-cl-ppcre
sbcl-esrap
sbcl-generic-comparability
sbcl-local-time
sbcl-parse-number
sbcl-split-sequence))
(home-page "https://github.com/pnathan/pp-toml")
(synopsis "TOML parser for Common Lisp")
(description
"PP-TOML is a Common Lisp library for parsing strings in the TOML
configuration file format. It implements only the 0.1.0 specification of
TOML.")
(license license:llgpl))))
(define-public cl-pp-toml
(sbcl-package->cl-source-package sbcl-pp-toml))
(define-public ecl-pp-toml
(sbcl-package->ecl-package sbcl-pp-toml))
(define-public sbcl-linedit
(let ((commit "0561c97dfca2f5854fcc66558a567a9875ddcb8f")
(revision "1"))

View file

@ -5558,13 +5558,12 @@ (define-public fmit
,(map (lambda (label)
(string-append (assoc-ref inputs label)
"/lib/qt5/plugins"))
'("qtbase" "qtmultimedia-5" "qtsvg-5")))
'("qtbase" "qtmultimedia" "qtsvg")))
`("QML2_IMPORT_PATH" ":" prefix
,(map (lambda (label)
(string-append (assoc-ref inputs label)
"/lib/qt5/qml"))
'("qtmultimedia-5"))))
#t))))))
'("qtmultimedia"))))))))))
(inputs
(list alsa-lib
fftw
@ -5574,10 +5573,7 @@ (define-public fmit
qtmultimedia-5
qtsvg-5))
(native-inputs
`(("gettext" ,gettext-minimal)
("hicolor-icon-theme" ,hicolor-icon-theme)
("itstool" ,itstool)
("qttools-5" ,qttools-5)))
(list gettext-minimal hicolor-icon-theme itstool qttools-5))
(synopsis "Musical instrument tuner")
(description "FMIT is a graphical utility for tuning musical instruments,
with error and volume history, and advanced features.")

View file

@ -3856,7 +3856,7 @@ (define-public bird
(define-public iwd
(package
(name "iwd")
(version "1.24")
(version "2.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3865,7 +3865,7 @@ (define-public iwd
(file-name (git-file-name name version))
(sha256
(base32
"1sdi7008j5jhlg2rqpczh1pzb8zay6mc9dpnjjsmdnsmrcr3v7wi"))))
"0icrmd0361yy24sa7wdd388ykaknv1va4678h9ksysz1dmykdr7m"))))
(build-system gnu-build-system)
(inputs
(list dbus ell (package-source ell) readline))

View file

@ -0,0 +1,79 @@
Adjust tests for compatibility with newer xmlsec.
Taken from upstream:
https://gitlab.com/oath-toolkit/oath-toolkit/-/commit/0ae59b9c72f69ee21044e736e292b73051df3272
diff --git a/libpskc/examples/pskc-hotp-signed.xml b/libpskc/examples/pskc-hotp-signed.xml
index 359dd4723cf2b5ae1ca53d793cc6900a15bd4969..396e0829ff245b3ad6953cc3523d77568c8a18f4 100644
--- a/libpskc/examples/pskc-hotp-signed.xml
+++ b/libpskc/examples/pskc-hotp-signed.xml
@@ -38,7 +38,8 @@ rIXbwqKhnBP943U4Ch31oEbZtbo+XRbiq11wv6dLNsi76TNGDqsjTKgEcSIYI6Vd
rMxnil6ChoIBvSSPGHhJuj1bW1EPW92JtIa6byrAj1m4RwSviQy2i65YoIdtrhRt
CWekj2zuL/0szv5rZMCCvxioOCA8znqELEPMfs0Aa/cACD2MZcC4gGXehNCvzYJr
TmB6lFpxP6f0g6eO7PVcqYN9NCwECxb5Cvx2j2uNlereY35/9oPR6YJx+V7sL+DB
-n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4</X509Certificate>
+n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4
+</X509Certificate>
</X509Data>
</KeyInfo>
</Signature></KeyContainer>
diff --git a/pskctool/tests/pskc-all-signed.xml b/pskctool/tests/pskc-all-signed.xml
index 39cf8af5bb00e34fa5e1acb97cea59ff742758f4..5d44e72d928ccf1f46975e6ccca58297e235be95 100644
--- a/pskctool/tests/pskc-all-signed.xml
+++ b/pskctool/tests/pskc-all-signed.xml
@@ -38,7 +38,8 @@ rIXbwqKhnBP943U4Ch31oEbZtbo+XRbiq11wv6dLNsi76TNGDqsjTKgEcSIYI6Vd
rMxnil6ChoIBvSSPGHhJuj1bW1EPW92JtIa6byrAj1m4RwSviQy2i65YoIdtrhRt
CWekj2zuL/0szv5rZMCCvxioOCA8znqELEPMfs0Aa/cACD2MZcC4gGXehNCvzYJr
TmB6lFpxP6f0g6eO7PVcqYN9NCwECxb5Cvx2j2uNlereY35/9oPR6YJx+V7sL+DB
-n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4</X509Certificate>
+n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4
+</X509Certificate>
</X509Data>
</KeyInfo>
</Signature></KeyContainer>
diff --git a/pskctool/tests/tst_libexamples.sh b/pskctool/tests/tst_libexamples.sh
index 0e8e558b4cbefbac9f2ca301fddb2ac4b8cfbdfa..5cb52ce44f40a78ab886ff12d2eac64e5b5c4c7e 100755
--- a/pskctool/tests/tst_libexamples.sh
+++ b/pskctool/tests/tst_libexamples.sh
@@ -1,7 +1,7 @@
#!/bin/sh
# tst_libexamples.sh - keep pskctool output in GTK-DOC manual up to date
-# Copyright (C) 2012-2021 Simon Josefsson
+# Copyright (C) 2012-2022 Simon Josefsson
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -45,7 +45,8 @@ fi
$PSKCTOOL --sign --sign-key $srcdir/pskc-ee-key.pem \
--sign-crt $srcdir/pskc-ee-crt.pem \
- $srcdir/../../libpskc/examples/pskc-hotp.xml > foo
+ $srcdir/../../libpskc/examples/pskc-hotp.xml \
+ | sed 's,4</X509Cert,4\n</X509Cert,' > foo
if ! diff -ur $srcdir/../../libpskc/examples/pskc-hotp-signed.xml foo; then
echo "FAIL: pskctool --sign output change, commit updated file."
exit 1
diff --git a/pskctool/tests/tst_sign.sh b/pskctool/tests/tst_sign.sh
index b62757336061394746d60f706369127fe1db466d..2d452d69f2e6595ff85a34540939801324dbdfea 100755
--- a/pskctool/tests/tst_sign.sh
+++ b/pskctool/tests/tst_sign.sh
@@ -1,7 +1,7 @@
#!/bin/sh
# tst_sign.sh - test that pskctool can sign and verify
-# Copyright (C) 2012-2021 Simon Josefsson
+# Copyright (C) 2012-2022 Simon Josefsson
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -32,7 +32,7 @@ $PSKCTOOL --info --strict --debug $pskc_all > tmp-pre-human.txt
$PSKCTOOL --sign \
--sign-key $pskc_ee_key \
--sign-crt $pskc_ee_crt \
- $pskc_all > tmp-signed.xml
+ $pskc_all | sed 's,4</X509Cert,4\n</X509Cert,' > tmp-signed.xml
diff -ur $pskc_all_signed tmp-signed.xml

View file

@ -212,10 +212,9 @@ (define-public protobuf-2
(sha256
(base32
"040rcs9fpv4bslhiy43v7dcrzakz4vwwpyqg4jp8bn24sl95ci7f"))))
(arguments (substitute-keyword-arguments (package-arguments protobuf)
((#:phases phases)
#~(modify-phases #$phases
(delete 'disable-broken-tests)))))))
(build-system gnu-build-system)
(arguments '())
(outputs '("out"))))
(define-public protobuf-c
(package

View file

@ -1002,14 +1002,14 @@ (define pycryptodome-unbundle-tomcrypt-snippet
(define-public python-pycryptodome
(package
(name "python-pycryptodome")
(version "3.11.0")
(version "3.15.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pycryptodome" version))
(sha256
(base32
"1l3a80z3lxcj1q0hzj1d3plavy2d51y4vzcd85zj0zm7yyxrd022"))
"1f0qc0ns3ppybkr7wi66gsl5wfkcx1fdklmh3362nn84spddsdci"))
(modules '((guix build utils)))
(snippet pycryptodome-unbundle-tomcrypt-snippet)))
(build-system python-build-system)
@ -1064,7 +1064,7 @@ (define-public python-pycryptodomex
(method url-fetch)
(uri (pypi-uri "pycryptodomex" version))
(sha256
(base32 "0vcd65ylri2a4pdqcc1897jasj7wfmqklj8x3pdynmdvark3d603"))
(base32 "1vf0xbsqvcp4k3cl8cmxrlij9a88hajw6d3z0jhd3c5d5nxz2hbk"))
(modules '((guix build utils)))
(snippet pycryptodome-unbundle-tomcrypt-snippet)))
(description

View file

@ -3881,7 +3881,7 @@ (define-public python-flask-restful
(substitute* "flask_restful/__init__.py"
(("flask\\.helpers") "flask.scaffold")))))))
(propagated-inputs
(list python-aniso8601 python-flask python-pycrypto python-pytz))
(list python-aniso8601 python-flask python-pytz))
(native-inputs
(list ;; Optional dependency of Flask. Tests need it.
python-blinker python-mock ; For tests

View file

@ -19274,8 +19274,6 @@ (define-public python-pbkdf2
(replace 'check
(lambda _
(invoke "python" "test/test_pbkdf2.py"))))))
(propagated-inputs
(list python-pycrypto)) ; optional
(home-page "https://www.dlitz.net/software/python-pbkdf2/")
(synopsis "Password-based key derivation")
(description "This module implements the password-based key derivation

View file

@ -3741,35 +3741,32 @@ (define-public dotherside
@end itemize\n")
(license license:lgpl3))) ;version 3 only (+ exception)
;; There have been no public releases yet.
(define-public qtcolorwidgets
(let ((commit "a95f72e935fe9e046061a1d1c3930cbfbcb533e0")
(revision "1"))
(package
(name "qtcolorwidgets")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/mattia.basaglia/Qt-Color-Widgets")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0dkiwlqh2gwhlp78c1fmchj3shl4p9inspcl96ya5aa8mn6kydy8"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; There are no tests
(native-inputs
(list qttools-5))
(inputs
(list qtbase-5))
(home-page "https://gitlab.com/mattia.basaglia/Qt-Color-Widgets")
(synopsis "Color management widgets")
(description "QtColorWidgets provides a Qt color dialog that is more
(package
(name "qtcolorwidgets")
(version "2.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/mattia.basaglia/Qt-Color-Widgets")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1fp7sr5a56bjp2abc6ng331q0bwvk6mf2nxdga81aj6cd9afs22q"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;there are no tests
(native-inputs
(list qttools-5))
(inputs
(list qtbase-5))
(home-page "https://gitlab.com/mattia.basaglia/Qt-Color-Widgets")
(synopsis "Color management widgets")
(description "QtColorWidgets provides a Qt color dialog that is more
user-friendly than the default @code{QColorDialog} and several other
color-related widgets.")
;; Includes a license exception for combining with GPL2 code.
(license license:lgpl3+))))
;; Includes a license exception for combining with GPL2 code.
(license license:lgpl3+)))
(define-public qcustomplot
(package

View file

@ -28,7 +28,6 @@
;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2022 Leo Nikkilä <hello@lnikki.la>
;;;
;;; This file is part of GNU Guix.
;;;

View file

@ -1153,14 +1153,14 @@ (define-public xmlto
(define-public xmlsec
(package
(name "xmlsec")
(version "1.2.32")
(version "1.2.36")
(source (origin
(method url-fetch)
(uri (string-append "https://www.aleksey.com/xmlsec/download/"
"xmlsec1-" version ".tar.gz"))
(sha256
(base32
"0hy0nwz57n9r5wwab9xa66gzwlwvzs54nhlfn3jh8q13acl710z3"))))
"100wsklff8x30rsg0xp191kg8p3z5va2d0q3iy08a791ic07xngh"))))
(build-system gnu-build-system)
(propagated-inputs ; according to xmlsec1.pc
(list libxml2 libxslt))
@ -1175,6 +1175,8 @@ (define-public xmlsec
supports XML security standards such as XML Signature, XML Encryption,
Canonical XML (part of Libxml2) and Exclusive Canonical XML (part of
Libxml2).")
(properties
'((upstream-name . "xmlsec1")))
(license (license:x11-style "file://COPYING"
"See 'COPYING' in the distribution."))))
@ -1182,12 +1184,10 @@ (define-public xmlsec-nss
(package/inherit xmlsec
(name "xmlsec-nss")
(native-inputs
;; For tests.
`(("nss:bin" ,nss "bin") ; for certutil
,@(package-native-inputs xmlsec)))
(modify-inputs (package-native-inputs xmlsec)
(prepend `(,nss "bin")))) ;certutil, for tests
(inputs
`(("nss" ,nss)
("libltdl" ,libltdl)))
(list nss libltdl))
(arguments
;; NSS no longer supports MD5 since 3.59, don't attempt to use it.
'(#:configure-flags '("--disable-md5")))
@ -1197,8 +1197,7 @@ (define-public xmlsec-openssl
(package/inherit xmlsec
(name "xmlsec-openssl")
(inputs
`(("openssl" ,openssl)
("libltdl" ,libltdl)))
(list openssl libltdl))
(synopsis "XML Security Library (using OpenSSL instead of GnuTLS)")))
(define-public minixml

View file

@ -6,8 +6,9 @@
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2021 David Larsson <david.larsson@selfhosted.xyz>
;;; Copyright © 2021 Aljosha Papsch <ep@stern-data.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -29,6 +30,7 @@ (define-module (gnu services databases)
#:use-module (gnu services shepherd)
#:use-module (gnu system shadow)
#:use-module (gnu packages admin)
#:use-module (gnu packages base)
#:use-module (gnu packages databases)
#:use-module (guix build-system trivial)
#:use-module (guix build union)
@ -532,6 +534,7 @@ (define-record-type* <mysql-configuration>
(bind-address mysql-configuration-bind-address (default "127.0.0.1"))
(port mysql-configuration-port (default 3306))
(socket mysql-configuration-socket (default "/run/mysqld/mysqld.sock"))
(datadir mysql-configuration-datadir (default "/var/lib/mysql"))
(extra-content mysql-configuration-extra-content (default ""))
(extra-environment mysql-configuration-extra-environment (default #~'()))
(auto-upgrade? mysql-configuration-auto-upgrade? (default #t)))
@ -549,112 +552,114 @@ (define %mysql-accounts
(define mysql-configuration-file
(match-lambda
(($ <mysql-configuration> mysql bind-address port socket extra-content)
(($ <mysql-configuration> mysql bind-address port socket datadir extra-content)
(mixed-text-file "my.cnf" "[mysqld]
datadir=/var/lib/mysql
datadir=" datadir "
socket=" socket "
bind-address=" bind-address "
port=" (number->string port) "
" extra-content "
"))))
(define (%mysql-activation config)
"Return an activation gexp for the MySQL or MariaDB database server."
(let ((mysql (mysql-configuration-mysql config))
(my.cnf (mysql-configuration-file config)))
#~(begin
(use-modules (ice-9 popen)
(guix build utils))
(let* ((mysqld (string-append #$mysql "/bin/mysqld"))
(user (getpwnam "mysql"))
(uid (passwd:uid user))
(gid (passwd:gid user))
(datadir "/var/lib/mysql")
(rundir "/run/mysqld"))
(mkdir-p datadir)
(chown datadir uid gid)
(mkdir-p rundir)
(chown rundir uid gid)
;; Initialize the database when it doesn't exist.
(when (not (file-exists? (string-append datadir "/mysql")))
(if (string-prefix? "mysql-" (strip-store-file-name #$mysql))
;; For MySQL.
(system* mysqld
(string-append "--defaults-file=" #$my.cnf)
"--initialize"
"--user=mysql")
;; For MariaDB.
;; XXX: The 'mysql_install_db' script doesn't work directly
;; due to missing 'mkdir' in PATH.
(let ((p (open-pipe* OPEN_WRITE mysqld
(string-append
"--defaults-file=" #$my.cnf)
"--bootstrap"
"--user=mysql")))
;; Create the system database, as does by 'mysql_install_db'.
(display "create database mysql;\n" p)
(display "use mysql;\n" p)
(for-each
(lambda (sql)
(call-with-input-file
(string-append #$mysql:lib "/share/mysql/" sql)
(lambda (in) (dump-port in p))))
'("mysql_system_tables.sql"
"mysql_performance_tables.sql"
"mysql_system_tables_data.sql"
"fill_help_tables.sql"))
;; Remove the anonymous user and disable root access from
;; remote machines, as does by 'mysql_secure_installation'.
(display "
DELETE FROM user WHERE User='';
DELETE FROM user WHERE User='root' AND
Host NOT IN ('localhost', '127.0.0.1', '::1');
FLUSH PRIVILEGES;
" p)
(close-pipe p))))))))
(define (mysqld-wrapper config)
"Start mysqld, and initialize the system tables if necessary."
(program-file
"mysqld-wrapper"
(with-imported-modules (source-module-closure
'((guix build utils)))
(let ((mysql (mysql-configuration-mysql config))
(datadir (mysql-configuration-datadir config))
(my.cnf (mysql-configuration-file config)))
#~(begin
(use-modules (guix build utils))
(let* ((mysqld (string-append #$mysql "/bin/mysqld"))
(user (getpwnam "mysql"))
(uid (passwd:uid user))
(gid (passwd:gid user))
(rundir "/run/mysqld"))
(mkdir-p #$datadir)
(chown #$datadir uid gid)
(mkdir-p rundir)
(chown rundir uid gid)
(unless (file-exists? (string-append #$datadir "/mysql"))
(let ((init (system* #$(mysql-install config))))
(unless (= 0 (status:exit-val init))
(throw 'system-error "MySQL initialization failed."))))
;; Drop privileges and start the server.
(setgid gid) (setuid uid)
(execl mysqld mysqld
(string-append "--defaults-file=" #$my.cnf))))))))
(define (mysql-shepherd-service config)
(list (shepherd-service
(provision '(mysql))
(requirement '(user-processes))
(documentation "Run the MySQL server.")
(start (let ((mysql (mysql-configuration-mysql config))
(start (let ((mysql (mysql-configuration-mysql config))
(extra-env (mysql-configuration-extra-environment config))
(my.cnf (mysql-configuration-file config)))
#~(make-forkexec-constructor
(list (string-append #$mysql "/bin/mysqld")
(string-append "--defaults-file=" #$my.cnf))
#:user "mysql" #:group "mysql"
#:log-file "/var/log/mysqld.log"
#:environment-variables #$extra-env)))
(list #$(mysqld-wrapper config))
#:log-file "/var/log/mysqld.log"
#:environment-variables #$extra-env)))
(stop #~(make-kill-destructor)))))
(define (mysql-upgrade-wrapper mysql socket-file)
(define (mysql-install config)
"Install MySQL system database and secure the installation."
(let ((mysql (mysql-configuration-mysql config))
(my.cnf (mysql-configuration-file config)))
(program-file
"mysql-install"
(with-imported-modules (source-module-closure
'((guix build utils)))
#~(begin
(use-modules (guix build utils))
;; Make sed, mkdir, uname, etc available for mariadb-install-db.
(set-path-environment-variable "PATH" '("bin")
(list #$sed #$coreutils))
(if (string=? "mariadb" #$(package-name mysql))
;; For MariaDB.
(system* #$(file-append mysql "/bin/mariadb-install-db")
(string-append "--defaults-file=" #$my.cnf)
"--skip-test-db"
"--user=mysql")
;; For MySQL.
(system* #$(file-append mysql "/bin/mysqld")
(string-append "--defaults-file=" #$my.cnf)
"--initialize"
"--user=mysql")))))))
(define (mysql-upgrade-wrapper config)
;; The MySQL socket and PID file may appear before the server is ready to
;; accept connections. Ensure the socket is responsive before attempting
;; to run the upgrade script.
(program-file
"mysql-upgrade-wrapper"
#~(begin
(let ((mysql-upgrade #$(file-append mysql "/bin/mysql_upgrade"))
(timeout 10))
(begin
(let loop ((i 0))
(catch 'system-error
(lambda ()
(let ((sock (socket PF_UNIX SOCK_STREAM 0)))
(connect sock AF_UNIX #$socket-file)
(close-port sock)
;; The socket is ready!
(execl mysql-upgrade mysql-upgrade
(string-append "--socket=" #$socket-file))))
(lambda args
(if (< i timeout)
(begin
(sleep 1)
(loop (+ 1 i)))
;; No luck, give up.
(throw 'timeout-error
"MySQL server did not appear in time!"))))))))))
(let ((mysql (mysql-configuration-mysql config))
(socket-file (mysql-configuration-socket config))
(config-file (mysql-configuration-file config)))
(program-file
"mysql-upgrade-wrapper"
#~(begin
(let ((mysql-upgrade #$(file-append mysql "/bin/mysql_upgrade"))
(timeout 20))
(begin
(let loop ((i 0))
(catch 'system-error
(lambda ()
(let ((sock (socket PF_UNIX SOCK_STREAM 0)))
(connect sock AF_UNIX #$socket-file)
(close-port sock)
;; The socket is ready!
(execl mysql-upgrade mysql-upgrade
(string-append "--defaults-file=" #$config-file)
"--user=mysql")))
(lambda args
(if (< i timeout)
(begin
(sleep 1)
(loop (+ 1 i)))
;; No luck, give up.
(throw 'timeout-error
"MySQL server did not appear in time!")))))))))))
(define (mysql-upgrade-shepherd-service config)
(list (shepherd-service
@ -662,17 +667,17 @@ (define (mysql-upgrade-shepherd-service config)
(requirement '(mysql))
(one-shot? #t)
(documentation "Upgrade MySQL database schemas.")
(start (let ((mysql (mysql-configuration-mysql config))
(socket (mysql-configuration-socket config)))
#~(make-forkexec-constructor
(list #$(mysql-upgrade-wrapper mysql socket))
#:user "mysql" #:group "mysql"))))))
(start #~(make-forkexec-constructor
(list #$(mysql-upgrade-wrapper config))
#:user "mysql" #:group "mysql"
#:log-file "/var/log/mysql_upgrade.log")))))
(define (mysql-shepherd-services config)
(if (mysql-configuration-auto-upgrade? config)
(append (mysql-shepherd-service config)
(mysql-upgrade-shepherd-service config))
(mysql-shepherd-service config)))
(let ((mysql-services (mysql-shepherd-service config)))
(if (mysql-configuration-auto-upgrade? config)
(append mysql-services
(mysql-upgrade-shepherd-service config))
mysql-services)))
(define mysql-service-type
(service-type
@ -680,8 +685,6 @@ (define mysql-service-type
(extensions
(list (service-extension account-service-type
(const %mysql-accounts))
(service-extension activation-service-type
%mysql-activation)
(service-extension shepherd-root-service-type
mysql-shepherd-services)))
(default-value (mysql-configuration))

View file

@ -333,31 +333,38 @@ (define (guix-build-coordinator-shepherd-services config)
(documentation "Guix Build Coordinator")
(provision '(guix-build-coordinator))
(requirement '(networking))
(start #~(make-forkexec-constructor
(list #$(make-guix-build-coordinator-start-script
database-uri-string
allocation-strategy
"/var/run/guix-build-coordinator/pid"
package
#:agent-communication-uri-string
agent-communication-uri-string
#:client-communication-uri-string
client-communication-uri-string
#:hooks hooks
#:parallel-hooks parallel-hooks
#:guile guile))
#:user #$user
#:group #$group
#:pid-file "/var/run/guix-build-coordinator/pid"
;; Allow time for migrations to run
#:pid-file-timeout 60
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8"
"PATH=/run/current-system/profile/bin") ; for hooks
#:log-file "/var/log/guix-build-coordinator/coordinator.log"))
(stop #~(make-kill-destructor))))))
(start #~(lambda args
(parameterize ((%current-logfile-date-format ""))
(apply
make-forkexec-constructor
(list #$(make-guix-build-coordinator-start-script
database-uri-string
allocation-strategy
"/var/run/guix-build-coordinator/pid"
package
#:agent-communication-uri-string
agent-communication-uri-string
#:client-communication-uri-string
client-communication-uri-string
#:hooks hooks
#:parallel-hooks parallel-hooks
#:guile guile))
#:user #$user
#:group #$group
#:pid-file "/var/run/guix-build-coordinator/pid"
;; Allow time for migrations to run
#:pid-file-timeout 60
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8"
"PATH=/run/current-system/profile/bin") ; for hooks
#:log-file "/var/log/guix-build-coordinator/coordinator.log"
args))))
(stop #~(make-kill-destructor))
(modules
`((shepherd comm)
,@%default-modules))))))
(define (guix-build-coordinator-activation config)
#~(begin
@ -419,61 +426,67 @@ (define (guix-build-coordinator-agent-shepherd-services config)
(documentation "Guix Build Coordinator Agent")
(provision '(guix-build-coordinator-agent))
(requirement '(networking))
(start #~(make-forkexec-constructor
(list #$(file-append package "/bin/guix-build-coordinator-agent")
#$(string-append "--coordinator=" coordinator)
#$@(match authentication
(($ <guix-build-coordinator-agent-password-auth>
uuid password)
#~(#$(string-append "--uuid=" uuid)
#$(string-append "--password=" password)))
(($ <guix-build-coordinator-agent-password-file-auth>
uuid password-file)
#~(#$(string-append "--uuid=" uuid)
#$(string-append "--password-file="
password-file)))
(($ <guix-build-coordinator-agent-dynamic-auth>
agent-name token)
#~(#$(string-append "--name=" agent-name)
#$(string-append "--dynamic-auth-token=" token)))
(($
<guix-build-coordinator-agent-dynamic-auth-with-file>
agent-name token-file)
#~(#$(string-append "--name=" agent-name)
#$(string-append "--dynamic-auth-token-file="
token-file))))
#$(simple-format #f "--max-parallel-builds=~A"
max-parallel-builds)
#$@(if max-allocated-builds
#~(#$(simple-format #f "--max-allocated-builds=~A"
max-allocated-builds))
#~())
#$@(if max-1min-load-average
#~(#$(simple-format #f "--max-1min-load-average=~A"
max-1min-load-average))
#~())
#$@(if derivation-substitute-urls
#~(#$(string-append
"--derivation-substitute-urls="
(start
#~(lambda _
(parameterize ((%current-logfile-date-format ""))
(fork+exec-command
(list #$(file-append package "/bin/guix-build-coordinator-agent")
#$(string-append "--coordinator=" coordinator)
#$@(match authentication
(($ <guix-build-coordinator-agent-password-auth>
uuid password)
#~(#$(string-append "--uuid=" uuid)
#$(string-append "--password=" password)))
(($ <guix-build-coordinator-agent-password-file-auth>
uuid password-file)
#~(#$(string-append "--uuid=" uuid)
#$(string-append "--password-file="
password-file)))
(($ <guix-build-coordinator-agent-dynamic-auth>
agent-name token)
#~(#$(string-append "--name=" agent-name)
#$(string-append "--dynamic-auth-token=" token)))
(($
<guix-build-coordinator-agent-dynamic-auth-with-file>
agent-name token-file)
#~(#$(string-append "--name=" agent-name)
#$(string-append "--dynamic-auth-token-file="
token-file))))
#$(simple-format #f "--max-parallel-builds=~A"
max-parallel-builds)
#$@(if max-allocated-builds
#~(#$(simple-format #f "--max-allocated-builds=~A"
max-allocated-builds))
#~())
#$@(if max-1min-load-average
#~(#$(simple-format #f "--max-1min-load-average=~A"
max-1min-load-average))
#~())
#$@(if derivation-substitute-urls
#~(#$(string-append
"--derivation-substitute-urls="
(string-join derivation-substitute-urls " ")))
#~())
#$@(if non-derivation-substitute-urls
#~(#$(string-append
"--non-derivation-substitute-urls="
(string-join non-derivation-substitute-urls " ")))
#~())
#$@(map (lambda (system)
(string-append "--system=" system))
(or systems '())))
#:user #$user
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
;; XDG_CACHE_HOME is used by Guix when caching narinfo files
"XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent"
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-build-coordinator/agent.log"))
(stop #~(make-kill-destructor))))))
#~())
#$@(if non-derivation-substitute-urls
#~(#$(string-append
"--non-derivation-substitute-urls="
(string-join non-derivation-substitute-urls " ")))
#~())
#$@(map (lambda (system)
(string-append "--system=" system))
(or systems '())))
#:user #$user
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
;; XDG_CACHE_HOME is used by Guix when caching narinfo files
"XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent"
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-build-coordinator/agent.log"))))
(stop #~(make-kill-destructor))
(modules
`((shepherd comm)
,@%default-modules))))))
(define (guix-build-coordinator-agent-activation config)
#~(begin
@ -526,39 +539,44 @@ (define (guix-build-coordinator-queue-builds-shepherd-services config)
(provision '(guix-build-coordinator-queue-builds))
(requirement '(networking))
(start
#~(make-forkexec-constructor
(list
#$(file-append
package
"/bin/guix-build-coordinator-queue-builds-from-guix-data-service")
#$(string-append "--coordinator=" coordinator)
#$@(map (lambda (system)
(string-append "--system=" system))
(or systems '()))
#$@(map (match-lambda
((system . target)
(string-append "--system-and-target=" system "=" target)))
(or systems-and-targets '()))
#$@(if guix-data-service
#~(#$(string-append "--guix-data-service=" guix-data-service))
#~())
#$@(if guix-data-service-build-server-id
#~(#$(simple-format
#f
"--guix-data-service-build-server-id=~A"
guix-data-service-build-server-id))
#~())
#$@(if processed-commits-file
#~(#$(string-append "--processed-commits-file="
processed-commits-file))
#~()))
#:user #$user
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-build-coordinator/queue-builds.log"))
(stop #~(make-kill-destructor))))))
#~(lambda _
(parameterize ((%current-logfile-date-format ""))
(fork+exec-command
(list
#$(file-append
package
"/bin/guix-build-coordinator-queue-builds-from-guix-data-service")
#$(string-append "--coordinator=" coordinator)
#$@(map (lambda (system)
(string-append "--system=" system))
(or systems '()))
#$@(map (match-lambda
((system . target)
(string-append "--system-and-target=" system "=" target)))
(or systems-and-targets '()))
#$@(if guix-data-service
#~(#$(string-append "--guix-data-service=" guix-data-service))
#~())
#$@(if guix-data-service-build-server-id
#~(#$(simple-format
#f
"--guix-data-service-build-server-id=~A"
guix-data-service-build-server-id))
#~())
#$@(if processed-commits-file
#~(#$(string-append "--processed-commits-file="
processed-commits-file))
#~()))
#:user #$user
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-build-coordinator/queue-builds.log"))))
(stop #~(make-kill-destructor))
(modules
`((shepherd comm)
,@%default-modules))))))
(define (guix-build-coordinator-queue-builds-activation config)
#~(begin

View file

@ -4,6 +4,7 @@
;;; Copyright © 2020,2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2022 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2022 Leo Nikkilä <hello@lnikki.la>
;;;
;;; This file is part of GNU Guix.
;;;

View file

@ -430,6 +430,9 @@ (define marionette
(test-assert "mysql_upgrade completed"
(wait-for-file "/var/lib/mysql/mysql_upgrade_info" marionette))
(test-assert "socket is ready"
(wait-for-unix-socket "/run/mysqld/mysqld.sock" marionette))
(test-eq "create database"
0
(marionette-eval

View file

@ -67,7 +67,7 @@ (define-module (guix import egg)
;;;
;;; * Support for CHICKEN 4?
;;;
;;; * Some packages will specify a specific version of a depencency in the
;;; * Some packages will specify a specific version of a dependency in the
;;; PACKAGE.egg file, how should we handle this?
;;;
;;; Code:

View file

@ -705,7 +705,7 @@ (define service-type-name*
(define (service-type-description-string type)
"Return the rendered and localised description of TYPE, a service type."
(and=> (service-type-description type)
(compose texi->plain-text P_)))
(compose texi->plain-text G_)))
(define %service-type-metrics
;; Metrics used to estimate the relevance of a search result.

View file

@ -127,7 +127,7 @@ (define highlighting*
(parameterize ((%text-width width*))
(texi->plain-text
(string-append "description: "
(or (and=> (service-type-description type) P_)
(or (and=> (service-type-description type) G_)
""))))
#\newline)))))
@ -144,7 +144,7 @@ (define highlighting*
(define (service-type-description-string type)
"Return the rendered and localised description of TYPE, a service type."
(and=> (service-type-description type)
(compose texi->plain-text P_)))
(compose texi->plain-text G_)))
(define %service-type-metrics
;; Metrics used to estimate the relevance of a search result.

View file

@ -4,10 +4,14 @@ gnu.scm
gnu/packages.scm
gnu/services.scm
gnu/system.scm
gnu/services/base.scm
gnu/services/certbot.scm
gnu/services/configuration.scm
gnu/services/file-sharing.scm
gnu/services/networking.scm
gnu/services/shepherd.scm
gnu/services/samba.scm
gnu/services/version-control.scm
gnu/home/services.scm
gnu/home/services/ssh.scm
gnu/home/services/symlink-manager.scm

View file

@ -57,8 +57,3 @@ gnu/packages/webkit.scm
gnu/packages/web.scm
gnu/packages/wordnet.scm
gnu/packages/xiph.scm
gnu/services/base.scm
gnu/services/certbot.scm
gnu/services/file-sharing.scm
gnu/services/networking.scm
gnu/services/version-control.scm