Merge branch 'master' into staging
commit
0c518f974e
|
@ -38494,7 +38494,7 @@ image -t qcow2} on x86_64 hardware:
|
||||||
@example
|
@example
|
||||||
$ qemu-system-x86_64 \
|
$ qemu-system-x86_64 \
|
||||||
-nic user,model=virtio-net-pci \
|
-nic user,model=virtio-net-pci \
|
||||||
-enable-kvm -m 1024 \
|
-enable-kvm -m 2048 \
|
||||||
-device virtio-blk,drive=myhd \
|
-device virtio-blk,drive=myhd \
|
||||||
-drive if=none,file=/tmp/qemu-image,id=myhd
|
-drive if=none,file=/tmp/qemu-image,id=myhd
|
||||||
@end example
|
@end example
|
||||||
|
@ -38521,7 +38521,7 @@ virtual machine support (KVM) of the Linux kernel will make things run
|
||||||
faster.
|
faster.
|
||||||
|
|
||||||
@c To run Xfce + 'guix pull', we need at least 1G of RAM.
|
@c To run Xfce + 'guix pull', we need at least 1G of RAM.
|
||||||
@item -m 1024
|
@item -m 2048
|
||||||
RAM available to the guest OS, in mebibytes. Defaults to 128@tie{}MiB,
|
RAM available to the guest OS, in mebibytes. Defaults to 128@tie{}MiB,
|
||||||
which may be insufficient for some operations.
|
which may be insufficient for some operations.
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2020, 2021 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -26,6 +26,7 @@
|
||||||
((guix platform) #:select (targets))
|
((guix platform) #:select (targets))
|
||||||
((gnu services xorg) #:select (%default-xorg-modules))
|
((gnu services xorg) #:select (%default-xorg-modules))
|
||||||
(guix utils)
|
(guix utils)
|
||||||
|
(guix gexp)
|
||||||
(srfi srfi-1)
|
(srfi srfi-1)
|
||||||
(srfi srfi-26))
|
(srfi srfi-26))
|
||||||
|
|
||||||
|
@ -142,9 +143,16 @@ TARGET."
|
||||||
(if (target-mingw? target)
|
(if (target-mingw? target)
|
||||||
%packages-to-cross-build-for-mingw
|
%packages-to-cross-build-for-mingw
|
||||||
%packages-to-cross-build)))
|
%packages-to-cross-build)))
|
||||||
;; XXX: Important bits like libsigsegv and libffi don't support
|
(fold delete (targets)
|
||||||
;; RISCV at the moment, so don't require RISCV support.
|
'(;; Like in (gnu ci), dismiss cross-compilation to x86:
|
||||||
(delete "riscv64-linux-gnu" (targets)))))
|
;; it's pointless.
|
||||||
|
"x86_64-linux-gnu"
|
||||||
|
"i686-linux-gnu"
|
||||||
|
|
||||||
|
;; XXX: Important bits like libsigsegv and libffi don't
|
||||||
|
;; support RISCV at the moment, so don't require RISCV
|
||||||
|
;; support.
|
||||||
|
"riscv64-linux-gnu")))))
|
||||||
|
|
||||||
(define %cross-bootstrap-manifest
|
(define %cross-bootstrap-manifest
|
||||||
(manifest
|
(manifest
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
;;; Copyright © 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;; Copyright © 2019, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2019, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2022 Josselin Poiret <dev@jpoiret.xyz>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -983,6 +984,11 @@ exists."
|
||||||
(for-each
|
(for-each
|
||||||
(lambda (partition)
|
(lambda (partition)
|
||||||
(and (data-partition? partition)
|
(and (data-partition? partition)
|
||||||
|
;; Do not remove logical partitions ourselves, since
|
||||||
|
;; disk-remove-partition* will remove all the logical partitions
|
||||||
|
;; residing on an extended partition, which would lead to a
|
||||||
|
;; double-remove and ensuing SEGFAULT.
|
||||||
|
(not (logical-partition? partition))
|
||||||
(disk-remove-partition* disk partition)))
|
(disk-remove-partition* disk partition)))
|
||||||
non-boot-partitions)
|
non-boot-partitions)
|
||||||
|
|
||||||
|
|
|
@ -947,7 +947,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ceph-disable-cpu-optimizations.patch \
|
%D%/packages/patches/ceph-disable-cpu-optimizations.patch \
|
||||||
%D%/packages/patches/ceph-boost-compat.patch \
|
%D%/packages/patches/ceph-boost-compat.patch \
|
||||||
%D%/packages/patches/ceph-rocksdb-compat.patch \
|
%D%/packages/patches/ceph-rocksdb-compat.patch \
|
||||||
%D%/packages/patches/cheese-vala-update.patch \
|
|
||||||
%D%/packages/patches/chmlib-inttypes.patch \
|
%D%/packages/patches/chmlib-inttypes.patch \
|
||||||
%D%/packages/patches/cl-asdf-config-directories.patch \
|
%D%/packages/patches/cl-asdf-config-directories.patch \
|
||||||
%D%/packages/patches/clamav-config-llvm-libs.patch \
|
%D%/packages/patches/clamav-config-llvm-libs.patch \
|
||||||
|
@ -1172,8 +1171,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ghostscript-no-header-uuid.patch \
|
%D%/packages/patches/ghostscript-no-header-uuid.patch \
|
||||||
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
||||||
%D%/packages/patches/giara-fix-login.patch \
|
%D%/packages/patches/giara-fix-login.patch \
|
||||||
%D%/packages/patches/glade-gls-set-script-name.patch \
|
|
||||||
%D%/packages/patches/glade-test-widget-null-icon.patch \
|
|
||||||
%D%/packages/patches/glib-appinfo-watch.patch \
|
%D%/packages/patches/glib-appinfo-watch.patch \
|
||||||
%D%/packages/patches/glib-networking-gnutls-binding.patch \
|
%D%/packages/patches/glib-networking-gnutls-binding.patch \
|
||||||
%D%/packages/patches/glib-networking-32-bit-time.patch \
|
%D%/packages/patches/glib-networking-32-bit-time.patch \
|
||||||
|
|
|
@ -5843,7 +5843,7 @@ and DSD streams.")
|
||||||
(define-public qpwgraph
|
(define-public qpwgraph
|
||||||
(package
|
(package
|
||||||
(name "qpwgraph")
|
(name "qpwgraph")
|
||||||
(version "0.3.4")
|
(version "0.3.5")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
|
@ -5852,7 +5852,7 @@ and DSD streams.")
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
|
"01f4zabn22dp0yl7szxck6gkbayk1p5iqajfgzls7mdkba7515b6"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments (list #:tests? #f)) ;; no tests
|
(arguments (list #:tests? #f)) ;; no tests
|
||||||
(inputs (list alsa-lib
|
(inputs (list alsa-lib
|
||||||
|
|
|
@ -519,6 +519,18 @@ complexity of working with shared libraries across platforms.")
|
||||||
(license gpl3+)
|
(license gpl3+)
|
||||||
(home-page "https://www.gnu.org/software/libtool/")))
|
(home-page "https://www.gnu.org/software/libtool/")))
|
||||||
|
|
||||||
|
(define-public libtool-2.4.7
|
||||||
|
(package
|
||||||
|
(inherit libtool)
|
||||||
|
(version "2.4.7")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnu/libtool/libtool-"
|
||||||
|
version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0pb3l4x37k6fj1lwnpzws55gi3pxl0hx56jm4bzmbrkw0mzj2zsg"))))))
|
||||||
|
|
||||||
(define-public config
|
(define-public config
|
||||||
(let ((revision "1")
|
(let ((revision "1")
|
||||||
(commit "c8ddc8472f8efcadafc1ef53ca1d863415fddd5f"))
|
(commit "c8ddc8472f8efcadafc1ef53ca1d863415fddd5f"))
|
||||||
|
|
|
@ -123,6 +123,7 @@
|
||||||
"third_party/ced" ;BSD-3
|
"third_party/ced" ;BSD-3
|
||||||
"third_party/cld_3" ;ASL2.0
|
"third_party/cld_3" ;ASL2.0
|
||||||
"third_party/closure_compiler" ;ASL2.0
|
"third_party/closure_compiler" ;ASL2.0
|
||||||
|
"third_party/content_analysis_sdk" ;BSD-3
|
||||||
"third_party/cpuinfo" ;BSD-2
|
"third_party/cpuinfo" ;BSD-2
|
||||||
"third_party/crashpad" ;ASL2.0
|
"third_party/crashpad" ;ASL2.0
|
||||||
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
|
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
|
||||||
|
@ -316,7 +317,7 @@
|
||||||
;; run the Blink performance tests, just remove everything to save ~70MiB.
|
;; run the Blink performance tests, just remove everything to save ~70MiB.
|
||||||
'("third_party/blink/perf_tests"))
|
'("third_party/blink/perf_tests"))
|
||||||
|
|
||||||
(define %chromium-version "104.0.5112.101")
|
(define %chromium-version "105.0.5195.52")
|
||||||
(define %ungoogled-revision (string-append %chromium-version "-1"))
|
(define %ungoogled-revision (string-append %chromium-version "-1"))
|
||||||
(define %debian-revision "debian/102.0.5005.61-1")
|
(define %debian-revision "debian/102.0.5005.61-1")
|
||||||
|
|
||||||
|
@ -328,7 +329,7 @@
|
||||||
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
|
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0jy5hjn61p5mnbqns3jlybim7iy8w9cmzm3i84wn68cyyx1bk25m"))))
|
"1smzgnd3zmh57pz7sk9nb7m31wbhx1x9y3ll3m4zaxwrrb41kghn"))))
|
||||||
|
|
||||||
(define %debian-origin
|
(define %debian-origin
|
||||||
(origin
|
(origin
|
||||||
|
@ -343,18 +344,45 @@
|
||||||
(base32
|
(base32
|
||||||
"1ln6r1qzlr7dsgvcbssvvc34my4mpkwv9hmvlb2dhjncs7isp65j"))))
|
"1ln6r1qzlr7dsgvcbssvvc34my4mpkwv9hmvlb2dhjncs7isp65j"))))
|
||||||
|
|
||||||
(define (debian-patch name)
|
(define %chromium-gcc-patchset
|
||||||
|
(let ((commit "chromium-105-patchset-1"))
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/stha09/chromium-patches")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name "chromium-gcc-patches"
|
||||||
|
(string-drop commit 9)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"08c3pbdqjdqi7rmyqkkh6q429611ikakf4gkzwg1gr07vyknwkfa")))))
|
||||||
|
|
||||||
|
(define (origin-file origin file)
|
||||||
(computed-file
|
(computed-file
|
||||||
(basename name)
|
(basename file)
|
||||||
#~(symlink (string-append #$%debian-origin "/debian/patches/" #$name)
|
#~(symlink (string-append #$origin "/" #$file)
|
||||||
#$output)))
|
#$output)))
|
||||||
|
|
||||||
|
(define (debian-patch name)
|
||||||
|
(origin-file %debian-origin (string-append "/debian/patches/" name)))
|
||||||
|
|
||||||
(define %debian-patches
|
(define %debian-patches
|
||||||
(map debian-patch
|
(map debian-patch
|
||||||
'("system/jsoncpp.patch"
|
'("system/jsoncpp.patch"
|
||||||
"system/zlib.patch"
|
"system/zlib.patch"
|
||||||
"system/openjpeg.patch")))
|
"system/openjpeg.patch")))
|
||||||
|
|
||||||
|
(define (gcc-patch name)
|
||||||
|
(origin-file %chromium-gcc-patchset name))
|
||||||
|
|
||||||
|
(define %gcc-patches
|
||||||
|
(map gcc-patch
|
||||||
|
'("chromium-105-AdjustMaskLayerGeometry-ceilf.patch"
|
||||||
|
"chromium-105-Bitmap-include.patch"
|
||||||
|
"chromium-105-browser_finder-include.patch"
|
||||||
|
"chromium-105-raw_ptr-noexcept.patch"
|
||||||
|
"chromium-105-Trap-raw_ptr.patch")))
|
||||||
|
|
||||||
;; Take a patch from Arch that reverts a change which requires an unreleased
|
;; Take a patch from Arch that reverts a change which requires an unreleased
|
||||||
;; version of ffmpeg.
|
;; version of ffmpeg.
|
||||||
(define %ungoogled-chromium-unroll-ffmpeg.patch
|
(define %ungoogled-chromium-unroll-ffmpeg.patch
|
||||||
|
@ -405,7 +433,8 @@
|
||||||
(for-each (lambda (patch)
|
(for-each (lambda (patch)
|
||||||
(invoke "patch" "-p1" "--force" "--input"
|
(invoke "patch" "-p1" "--force" "--input"
|
||||||
patch "--no-backup-if-mismatch"))
|
patch "--no-backup-if-mismatch"))
|
||||||
(append '#+%debian-patches '#+%guix-patches))
|
(append '#+%debian-patches '#+%guix-patches
|
||||||
|
'#+%gcc-patches))
|
||||||
|
|
||||||
(invoke "patch" "-Rp1" "--force" "--input" "--no-backup-if-mismatch"
|
(invoke "patch" "-Rp1" "--force" "--input" "--no-backup-if-mismatch"
|
||||||
"--input" #$%ungoogled-chromium-unroll-ffmpeg.patch)
|
"--input" #$%ungoogled-chromium-unroll-ffmpeg.patch)
|
||||||
|
@ -477,7 +506,7 @@
|
||||||
%chromium-version ".tar.xz"))
|
%chromium-version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0nrghgngxdn9richjnxii9y94dg5zpwc3gd3vx609r4xaphibw30"))
|
"0hkwjilzy0x28knm6nrkywnsmldhz4kgpnxka2iaghihkjzb4wfw"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet (force ungoogled-chromium-snippet))))
|
(snippet (force ungoogled-chromium-snippet))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
@ -611,25 +640,25 @@
|
||||||
"sandbox/linux/syscall_broker/broker_host.cc")
|
"sandbox/linux/syscall_broker/broker_host.cc")
|
||||||
(("include \"base/third_party/valgrind/") "include \"valgrind/"))
|
(("include \"base/third_party/valgrind/") "include \"valgrind/"))
|
||||||
|
|
||||||
(for-each (lambda (file)
|
(substitute*
|
||||||
(substitute* file
|
(append
|
||||||
;; Fix opus include path.
|
'("media/audio/audio_opus_encoder.h")
|
||||||
;; Do not substitute opus_private.h.
|
(find-files (string-append "third_party/webrtc/modules"
|
||||||
(("#include \"opus\\.h\"")
|
"/audio_coding/codecs/opus")))
|
||||||
"#include \"opus/opus.h\"")
|
;; Fix opus include path.
|
||||||
(("#include \"opus_custom\\.h\"")
|
;; Do not substitute opus_private.h.
|
||||||
"#include \"opus/opus_custom.h\"")
|
(("#include \"opus\\.h\"")
|
||||||
(("#include \"opus_defines\\.h\"")
|
"#include \"opus/opus.h\"")
|
||||||
"#include \"opus/opus_defines.h\"")
|
(("#include \"opus_custom\\.h\"")
|
||||||
(("#include \"opus_multistream\\.h\"")
|
"#include \"opus/opus_custom.h\"")
|
||||||
"#include \"opus/opus_multistream.h\"")
|
(("#include \"opus_defines\\.h\"")
|
||||||
(("#include \"opus_types\\.h\"")
|
"#include \"opus/opus_defines.h\"")
|
||||||
"#include \"opus/opus_types.h\"")))
|
(("#include \"opus_multistream\\.h\"")
|
||||||
(find-files (string-append "third_party/webrtc/modules"
|
"#include \"opus/opus_multistream.h\"")
|
||||||
"/audio_coding/codecs/opus")))
|
(("#include \"opus_types\\.h\"")
|
||||||
(substitute* "media/audio/audio_opus_encoder.h"
|
"#include \"opus/opus_types.h\"")
|
||||||
(("\"third_party/opus/src/include/opus.h\"")
|
(("\"third_party/opus/src/include/([a-z_-]+\\.h)\"" _ header)
|
||||||
"<opus/opus.h>"))
|
(string-append "<opus/" header ">")))
|
||||||
|
|
||||||
(substitute* "third_party/webrtc/rtc_base/strings/json.h"
|
(substitute* "third_party/webrtc/rtc_base/strings/json.h"
|
||||||
(("#include \"third_party/jsoncpp/")
|
(("#include \"third_party/jsoncpp/")
|
||||||
|
|
|
@ -205,32 +205,46 @@ driver.")
|
||||||
"02jf052qj1nl47ppqrgz3s9qapq4pajgkf6lbj5rxr5sshlrw44n"))))
|
"02jf052qj1nl47ppqrgz3s9qapq4pajgkf6lbj5rxr5sshlrw44n"))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list #:configure-flags #~(list "--wrap-mode=nofallback"
|
(list
|
||||||
"-Dsystemd=false"
|
#:configure-flags #~(list "--wrap-mode=nofallback"
|
||||||
(string-append "-Defi_os_dir="
|
"-Dsystemd=false"
|
||||||
#$gnu-efi "/lib")
|
(string-append "-Defi_os_dir="
|
||||||
"-Defi_binary=false"
|
#$gnu-efi "/lib")
|
||||||
(string-append "-Dudevdir="
|
"-Defi_binary=false"
|
||||||
#$output "/lib/udev")
|
(string-append "-Dudevdir="
|
||||||
"--localstatedir=/var"
|
#$output "/lib/udev")
|
||||||
(string-append "--libexecdir="
|
"--localstatedir=/var"
|
||||||
#$output "/libexec")
|
(string-append "--libexecdir="
|
||||||
"-Dsupported_build=true")
|
#$output "/libexec")
|
||||||
#:glib-or-gtk? #t ;To wrap binaries and/or compile schemas
|
"-Dsupported_build=true"
|
||||||
#:phases #~(modify-phases %standard-phases
|
;; Disable LVFS, because it contains
|
||||||
(add-after 'unpack 'make-source-writable
|
;; nonfree firmwares.
|
||||||
(lambda _
|
"-Dlvfs=disabled")
|
||||||
(for-each make-file-writable
|
#:glib-or-gtk? #t ;To wrap binaries and/or compile schemas
|
||||||
(find-files "."))
|
#:phases
|
||||||
(substitute* "src/fu-self-test.c"
|
#~(modify-phases %standard-phases
|
||||||
(("/bin/sh")
|
(add-after 'unpack 'make-source-writable
|
||||||
(which "sh")))))
|
(lambda _
|
||||||
(add-before 'build 'setup-home
|
(for-each make-file-writable
|
||||||
(lambda _
|
(find-files "."))
|
||||||
(setenv "HOME" "/tmp")))
|
(substitute* "src/fu-self-test.c"
|
||||||
(add-before 'install 'no-polkit-magic
|
(("/bin/sh")
|
||||||
(lambda _
|
(which "sh")))))
|
||||||
(setenv "PKEXEC_UID" "something"))))))
|
(add-before 'build 'setup-home
|
||||||
|
(lambda _
|
||||||
|
(setenv "HOME" "/tmp")))
|
||||||
|
(add-before 'install 'no-polkit-magic
|
||||||
|
(lambda _
|
||||||
|
(setenv "PKEXEC_UID" "something")))
|
||||||
|
(add-after 'install 'ensure-all-remotes-are-disabled
|
||||||
|
;; Because no remote currently promises to offer only free
|
||||||
|
;; software firmwares, disable them to prevent a user to
|
||||||
|
;; unknowingly install proprietary firmware updates.
|
||||||
|
(lambda _
|
||||||
|
(substitute* (find-files (string-append #$output "/etc")
|
||||||
|
"\\.conf$")
|
||||||
|
(("Enabled=true")
|
||||||
|
"Enabled=false")))))))
|
||||||
(native-inputs (list gobject-introspection
|
(native-inputs (list gobject-introspection
|
||||||
python-pygobject
|
python-pygobject
|
||||||
python-pillow
|
python-pillow
|
||||||
|
|
|
@ -977,30 +977,30 @@ cloud integration is offered through GNOME Online Accounts.")
|
||||||
`("GUIX_PYTHONPATH" =
|
`("GUIX_PYTHONPATH" =
|
||||||
(,(getenv "GUIX_PYTHONPATH") ,pylib)))))))))
|
(,(getenv "GUIX_PYTHONPATH") ,pylib)))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("desktop-file-utils" ,desktop-file-utils)
|
(list desktop-file-utils
|
||||||
("gettext" ,gettext-minimal)
|
gettext-minimal
|
||||||
("glib:bin" ,glib "bin")
|
`(,glib "bin")
|
||||||
("gobject-introspection" ,gobject-introspection)
|
gobject-introspection
|
||||||
("gtk+:bin" ,gtk+ "bin")
|
`(,gtk+ "bin")
|
||||||
("itstools" ,itstool)
|
itstool
|
||||||
("pkg-config" ,pkg-config)))
|
pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
`(("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
(list `(,gnome-online-accounts "lib")
|
||||||
("grilo" ,grilo)
|
grilo
|
||||||
("grilo-plugins" ,grilo-plugins)
|
grilo-plugins
|
||||||
("gst-plugins-base" ,gst-plugins-base)
|
gst-plugins-base
|
||||||
("gst-plugins-good" ,gst-plugins-good)
|
gst-plugins-good
|
||||||
("gstreamer" ,gstreamer)
|
gstreamer
|
||||||
("gvfs" ,gvfs)
|
gvfs
|
||||||
("json-glib" ,json-glib)
|
json-glib
|
||||||
("libdazzle" ,libdazzle)
|
libdazzle
|
||||||
("libmediaart" ,libmediaart)
|
libmediaart
|
||||||
("libsoup" ,libsoup-minimal-2)
|
libsoup-minimal-2
|
||||||
("pycairo" ,python-pycairo)
|
python-pycairo
|
||||||
("pygobject" ,python-pygobject)
|
python-pygobject
|
||||||
("python" ,python)
|
python
|
||||||
("tracker" ,tracker)
|
tracker
|
||||||
("tracker-miners" ,tracker-miners)))
|
tracker-miners))
|
||||||
(synopsis "Simple music player for GNOME desktop")
|
(synopsis "Simple music player for GNOME desktop")
|
||||||
(description "GNOME Music is the new GNOME music playing application that
|
(description "GNOME Music is the new GNOME music playing application that
|
||||||
aims to combine an elegant and immersive browsing experience with simple
|
aims to combine an elegant and immersive browsing experience with simple
|
||||||
|
@ -3121,7 +3121,7 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
|
||||||
(define-public glade3
|
(define-public glade3
|
||||||
(package
|
(package
|
||||||
(name "glade")
|
(name "glade")
|
||||||
(version "3.38.2")
|
(version "3.40.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||||
|
@ -3129,68 +3129,56 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1dxsiz9ahqkxg2a1dw9sbd8jg59y5pdz4c1gvnbmql48gmj8gz4q"))
|
"171x7vshhw0nqgnhkcaqfylpr5qrmhclwmkva6wjm5s9m2pavj9i"))))
|
||||||
(patches (search-patches
|
|
||||||
"glade-gls-set-script-name.patch"
|
|
||||||
"glade-test-widget-null-icon.patch"))))
|
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
(list
|
||||||
(modify-phases %standard-phases
|
#:phases
|
||||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
#~(modify-phases %standard-phases
|
||||||
;; Don't create 'icon-theme.cache'.
|
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||||
(lambda _
|
;; Don't create 'icon-theme.cache'.
|
||||||
(substitute* "meson_post_install.py"
|
(lambda _
|
||||||
(("gtk-update-icon-cache") "true"))))
|
(substitute* "meson_post_install.py"
|
||||||
|
(("gtk-update-icon-cache") "true"))))
|
||||||
|
|
||||||
,@(if (this-package-native-input "gjs")
|
#$@(if (this-package-input "gjs")
|
||||||
'()
|
'()
|
||||||
'((add-after 'unpack 'skip-gjs-test
|
'((add-after 'unpack 'skip-gjs-test
|
||||||
(lambda _
|
(lambda _
|
||||||
;; When the optional dependency on GJS is missing, skip
|
;; When the optional dependency on GJS is missing, skip
|
||||||
;; the GJS plugin tests.
|
;; the GJS plugin tests.
|
||||||
(substitute* "tests/modules.c"
|
(substitute* "tests/modules.c"
|
||||||
(("g_test_add.*JavaScript.*" all)
|
(("g_test_add.*JavaScript.*" all)
|
||||||
(string-append "// " all "\n")))
|
(string-append "// " all "\n")))
|
||||||
(delete-file "tests/catalogs/gjsplugin.xml")))))
|
(delete-file "tests/catalogs/gjsplugin.xml")))))
|
||||||
|
(add-before 'check 'pre-check
|
||||||
(add-before 'configure 'fix-docbook
|
(lambda _
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(setenv "HOME" "/tmp")
|
||||||
(substitute* "man/meson.build"
|
;; Tests require a running X server.
|
||||||
(("http://docbook.sourceforge.net/release/xsl/\
|
(system "Xvfb :1 &")
|
||||||
current/manpages/docbook.xsl")
|
(setenv "DISPLAY" ":1"))))))
|
||||||
(string-append (assoc-ref inputs "docbook-xsl")
|
|
||||||
"/xml/xsl/docbook-xsl-"
|
|
||||||
,(package-version docbook-xsl)
|
|
||||||
"/manpages/docbook.xsl")))))
|
|
||||||
(add-before 'check 'pre-check
|
|
||||||
(lambda _
|
|
||||||
(setenv "HOME" "/tmp")
|
|
||||||
;; Tests require a running X server.
|
|
||||||
(system "Xvfb :1 &")
|
|
||||||
(setenv "DISPLAY" ":1"))))))
|
|
||||||
(inputs
|
(inputs
|
||||||
(list gtk+ libxml2))
|
(append
|
||||||
|
;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
|
||||||
|
;; dependency on other platforms (FIXME).
|
||||||
|
(if (target-x86-64?)
|
||||||
|
(list gjs)
|
||||||
|
'())
|
||||||
|
(list gtk+ libxml2)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("hicolor-icon-theme" ,hicolor-icon-theme)
|
(list docbook-xml-4.2
|
||||||
("intltool" ,intltool)
|
docbook-xsl
|
||||||
("itstool" ,itstool)
|
gettext-minimal
|
||||||
("libxslt" ,libxslt) ;for xsltproc
|
`(,glib "bin")
|
||||||
("docbook-xml" ,docbook-xml-4.2)
|
gobject-introspection
|
||||||
("docbook-xsl" ,docbook-xsl)
|
hicolor-icon-theme
|
||||||
("glib:bin" ,glib "bin")
|
itstool
|
||||||
("python" ,python)
|
libxml2 ;for XML_CATALOG_FILES
|
||||||
("python-pygobject" ,python-pygobject)
|
libxslt ;for xsltproc
|
||||||
("gobject-introspection" ,gobject-introspection)
|
python
|
||||||
|
python-pygobject
|
||||||
;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
|
pkg-config
|
||||||
;; dependency on other platforms (FIXME).
|
xorg-server-for-tests))
|
||||||
,@(if (target-x86-64?)
|
|
||||||
`(("gjs" ,gjs))
|
|
||||||
'())
|
|
||||||
|
|
||||||
("pkg-config" ,pkg-config)
|
|
||||||
("xorg-server" ,xorg-server-for-tests)))
|
|
||||||
(home-page "https://glade.gnome.org")
|
(home-page "https://glade.gnome.org")
|
||||||
(synopsis "GTK+ rapid application development tool")
|
(synopsis "GTK+ rapid application development tool")
|
||||||
(description "Glade is a rapid application development (RAD) tool to
|
(description "Glade is a rapid application development (RAD) tool to
|
||||||
|
@ -8202,7 +8190,7 @@ Cisco's AnyConnect SSL VPN.")
|
||||||
(define-public network-manager-applet
|
(define-public network-manager-applet
|
||||||
(package
|
(package
|
||||||
(name "network-manager-applet")
|
(name "network-manager-applet")
|
||||||
(version "1.22.0")
|
(version "1.28.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnome/sources/network-manager-applet/"
|
(uri (string-append "mirror://gnome/sources/network-manager-applet/"
|
||||||
|
@ -8210,18 +8198,18 @@ Cisco's AnyConnect SSL VPN.")
|
||||||
"network-manager-applet-" version ".tar.xz"))
|
"network-manager-applet-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1gj6lqqi613j2m49v9i82lqg1rv7kwwc8z4nxjcwpaa0ins803f7"))))
|
"17742kgmbj9w545zwnirgr0i40zl0xzp8jx7b8c1krp93mc4h0sw"))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:glib-or-gtk? #t
|
`(#:glib-or-gtk? #t
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
'("-Dappindicator=yes")))
|
'("-Dappindicator=yes")))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("intltool" ,intltool)
|
(list gettext-minimal
|
||||||
("glib:bin" ,glib "bin") ; for glib-compile-resources, etc.
|
`(,glib "bin") ; for glib-compile-resources, etc.
|
||||||
("gobject-introspection" ,gobject-introspection)
|
gobject-introspection
|
||||||
("gtk-doc" ,gtk-doc/stable)
|
gtk-doc/stable
|
||||||
("pkg-config" ,pkg-config)))
|
pkg-config))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
;; libnm-gtk.pc refers to all these.
|
;; libnm-gtk.pc refers to all these.
|
||||||
(list dbus-glib gtk+ network-manager
|
(list dbus-glib gtk+ network-manager
|
||||||
|
@ -8875,7 +8863,7 @@ like switching to windows and launching applications.")
|
||||||
(define-public gtk-vnc
|
(define-public gtk-vnc
|
||||||
(package
|
(package
|
||||||
(name "gtk-vnc")
|
(name "gtk-vnc")
|
||||||
(version "1.0.0")
|
(version "1.2.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -8884,36 +8872,38 @@ like switching to windows and launching applications.")
|
||||||
(version-major+minor version) "/"
|
(version-major+minor version) "/"
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1060ws037v556rx1qhfrcg02859rscksrzr8fq11himdg4d1y6m8"))))
|
(base32 "0jmr6igyzcj2wmx5v5ywaazvdz3hx6a6rys26yb4l4s71l281bvs"))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas
|
`(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
|
(append
|
||||||
;; dependency on other platforms (FIXME).
|
;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
|
||||||
,@(if (target-x86-64?)
|
;; dependency on other platforms (FIXME).
|
||||||
`(("gjs" ,gjs))
|
(if (target-x86-64?)
|
||||||
'())
|
(list gjs)
|
||||||
("glib:bin" ,glib "bin")
|
'())
|
||||||
("gobject-introspection" ,gobject-introspection)
|
(list gettext-minimal
|
||||||
("intltool" ,intltool)
|
`(,glib "bin")
|
||||||
("node" ,node)
|
gobject-introspection
|
||||||
("perl" ,perl)
|
node
|
||||||
("pkg-config" ,pkg-config)
|
perl
|
||||||
("python" ,python-wrapper)
|
pkg-config
|
||||||
("vala" ,vala)))
|
python-wrapper
|
||||||
|
vala)))
|
||||||
(inputs
|
(inputs
|
||||||
`(("cairo" ,cairo)
|
(list cairo (librsvg-for-system)))
|
||||||
("librsvg" ,(librsvg-for-system))
|
|
||||||
("glib" ,glib)
|
|
||||||
("gnutls" ,gnutls)
|
|
||||||
("libgcrypt" ,libgcrypt)
|
|
||||||
("libsasl" ,cyrus-sasl)
|
|
||||||
("pulseaudio" ,pulseaudio)
|
|
||||||
("x11" ,libx11)
|
|
||||||
("zlib" ,zlib)))
|
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list gtk+))
|
;; These are all in Requires or Requires.private of the .pc files.
|
||||||
|
(list cyrus-sasl
|
||||||
|
gdk-pixbuf
|
||||||
|
glib
|
||||||
|
gnutls
|
||||||
|
gtk+
|
||||||
|
libgcrypt
|
||||||
|
libx11
|
||||||
|
pulseaudio
|
||||||
|
zlib))
|
||||||
(synopsis "VNC client viewer widget for GTK+")
|
(synopsis "VNC client viewer widget for GTK+")
|
||||||
(description "GTK-VNC is a project providing client side APIs for the RFB
|
(description "GTK-VNC is a project providing client side APIs for the RFB
|
||||||
protocol / VNC remote desktop technology. It is built using coroutines allowing
|
protocol / VNC remote desktop technology. It is built using coroutines allowing
|
||||||
|
@ -10749,7 +10739,7 @@ photo-booth-like software, such as Cheese.")
|
||||||
(define-public cheese
|
(define-public cheese
|
||||||
(package
|
(package
|
||||||
(name "cheese")
|
(name "cheese")
|
||||||
(version "3.38.0")
|
(version "41.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||||
|
@ -10757,8 +10747,7 @@ photo-booth-like software, such as Cheese.")
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0vyim2avlgq3a48rgdfz5g21kqk11mfb53b2l883340v88mp7ll8"))
|
"1y92glc0d6w323x2bdbc0gdh1jdffvkbv6cwlwm1rx0wgvv1svqh"))))
|
||||||
(patches (search-patches "cheese-vala-update.patch"))))
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:glib-or-gtk? #t
|
`(#:glib-or-gtk? #t
|
||||||
;; Tests require GDK.
|
;; Tests require GDK.
|
||||||
|
@ -10771,15 +10760,6 @@ photo-booth-like software, such as Cheese.")
|
||||||
(substitute* "meson_post_install.py"
|
(substitute* "meson_post_install.py"
|
||||||
(("gtk-update-icon-cache") (which "true")))
|
(("gtk-update-icon-cache") (which "true")))
|
||||||
#t))
|
#t))
|
||||||
(add-after 'unpack 'patch-docbook-xml
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
;; Avoid a network connection attempt during the build.
|
|
||||||
(substitute* '("docs/reference/cheese.xml"
|
|
||||||
"docs/reference/cheese-docs.xml")
|
|
||||||
(("http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd")
|
|
||||||
(string-append (assoc-ref inputs "docbook-xml")
|
|
||||||
"/xml/dtd/docbook/docbookx.dtd")))
|
|
||||||
#t))
|
|
||||||
(add-after 'install 'wrap-cheese
|
(add-after 'install 'wrap-cheese
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out"))
|
(let ((out (assoc-ref outputs "out"))
|
||||||
|
@ -10789,16 +10769,16 @@ photo-booth-like software, such as Cheese.")
|
||||||
#t)))))
|
#t)))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("docbook-xsl" ,docbook-xsl)
|
(list docbook-xsl
|
||||||
("docbook-xml" ,docbook-xml-4.3)
|
docbook-xml-4.3
|
||||||
("gettext" ,gettext-minimal)
|
gettext-minimal
|
||||||
("glib:bin" ,glib "bin")
|
`(,glib "bin")
|
||||||
("gtk-doc" ,gtk-doc/stable)
|
gtk-doc/stable
|
||||||
("itstool" ,itstool)
|
itstool
|
||||||
("libxml2" ,libxml2)
|
libxml2
|
||||||
("libxslt" ,libxslt)
|
libxslt
|
||||||
("pkg-config" ,pkg-config)
|
pkg-config
|
||||||
("vala" ,vala)))
|
vala))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list gnome-video-effects
|
(list gnome-video-effects
|
||||||
clutter
|
clutter
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2015, 2016, 2021 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2015, 2016, 2021, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2015 Tomáš Čech <sleep_walker@gnu.org>
|
;;; Copyright © 2015 Tomáš Čech <sleep_walker@gnu.org>
|
||||||
;;; Copyright © 2016, 2019 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2016, 2019 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||||
|
@ -771,11 +771,21 @@ applications, including the \"half\" 16-bit floating-point type.")
|
||||||
(patches (search-patches "ilmbase-fix-tests.patch"))))
|
(patches (search-patches "ilmbase-fix-tests.patch"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
(list #:phases #~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'change-directory
|
(add-after 'unpack 'change-directory
|
||||||
(lambda _
|
(lambda _
|
||||||
(chdir "IlmBase")
|
(chdir "IlmBase")
|
||||||
#t)))))
|
#t))
|
||||||
|
#$@(if (target-x86-32?)
|
||||||
|
#~((add-after 'change-directory 'skip-test
|
||||||
|
(lambda _
|
||||||
|
;; XXX: This test fails on i686,
|
||||||
|
;; possibly due to excess precision when
|
||||||
|
;; comparing floats. Skip it.
|
||||||
|
(substitute* "ImathTest/testFun.cpp"
|
||||||
|
(("assert \\(bit_cast<unsigned>.*" all)
|
||||||
|
(string-append "// " all "\n"))))))
|
||||||
|
#~()))))
|
||||||
(home-page "https://www.openexr.com/")
|
(home-page "https://www.openexr.com/")
|
||||||
(synopsis "Utility C++ libraries for threads, maths, and exceptions")
|
(synopsis "Utility C++ libraries for threads, maths, and exceptions")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -8716,7 +8716,7 @@ of Linux application development.")
|
||||||
(package
|
(package
|
||||||
(inherit pipewire)
|
(inherit pipewire)
|
||||||
(name "pipewire")
|
(name "pipewire")
|
||||||
(version "0.3.43")
|
(version "0.3.56")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
|
@ -8725,17 +8725,13 @@ of Linux application development.")
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0gp2h0sidapcqmnifl0iipdmbzb18bdh8zdi7pfywr9gsksh0cxy"))))
|
"066g4ri2k8pdflclvr2919f6x98gmqrqyj1xyiingw2nn2pwgcf1"))))
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags
|
'(#:configure-flags
|
||||||
(list (string-append "-Dudevrulesdir=" (assoc-ref %outputs "out")
|
(list (string-append "-Dudevrulesdir=" (assoc-ref %outputs "out")
|
||||||
"/lib/udev/rules.d")
|
"/lib/udev/rules.d")
|
||||||
"-Dsystemd=disabled"
|
"-Dsystemd=disabled"
|
||||||
"-Dsession-managers=[]")
|
"-Dsession-managers=[]")))
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
;; Skip shrink-runpath, otherwise validate-runpath fails.
|
|
||||||
(delete 'shrink-runpath))))
|
|
||||||
(inputs (modify-inputs (package-inputs pipewire)
|
(inputs (modify-inputs (package-inputs pipewire)
|
||||||
(prepend avahi
|
(prepend avahi
|
||||||
bluez
|
bluez
|
||||||
|
@ -8748,7 +8744,7 @@ of Linux application development.")
|
||||||
(define-public wireplumber
|
(define-public wireplumber
|
||||||
(package
|
(package
|
||||||
(name "wireplumber")
|
(name "wireplumber")
|
||||||
(version "0.4.6")
|
(version "0.4.11")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
|
@ -8758,7 +8754,7 @@ of Linux application development.")
|
||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0g7xkgkjlxrhs49hqkwrjk2hb478gq55wwydafvvbsv78vsa7qfb"))))
|
(base32 "09pg5cki1xn9bwn3bcjdc54z7b4iqkk1dhn560qyjcglq8xg7nnw"))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags '("-Dsystemd=disabled"
|
`(#:configure-flags '("-Dsystemd=disabled"
|
||||||
|
|
|
@ -1,180 +0,0 @@
|
||||||
Taken from upstream:
|
|
||||||
https://gitlab.gnome.org/GNOME/cheese/-/commit/7cf6268e54620bbbe5e6e61800c50fb0cb4bea57.patch.
|
|
||||||
|
|
||||||
From 7cf6268e54620bbbe5e6e61800c50fb0cb4bea57 Mon Sep 17 00:00:00 2001 From:
|
|
||||||
=?UTF-8?q?Corentin=20No=C3=ABl?= <corentin@elementary.io> Date: Fri, 16 Oct
|
|
||||||
2020 19:56:26 +0200 Subject: [PATCH] Change GLib.PtrArray into
|
|
||||||
GLib.GenericArray
|
|
||||||
|
|
||||||
This is the vala-friendly way of handling GPtrArray.
|
|
||||||
Fix several memory leaks on the go and unnecessary reference increase.
|
|
||||||
---
|
|
||||||
src/cheese-preferences.vala | 26 ++++++++++++--------------
|
|
||||||
src/cheese-window.vala | 22 +++++++++++-----------
|
|
||||||
src/vapi/cheese-common.vapi | 2 +-
|
|
||||||
3 files changed, 24 insertions(+), 26 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/cheese-preferences.vala b/src/cheese-preferences.vala
|
|
||||||
index f56af7e0..80a92431 100644
|
|
||||||
--- a/src/cheese-preferences.vala
|
|
||||||
+++ b/src/cheese-preferences.vala
|
|
||||||
@@ -100,7 +100,7 @@ public PreferencesDialog (Cheese.Camera camera)
|
|
||||||
*/
|
|
||||||
private void initialize_camera_devices ()
|
|
||||||
{
|
|
||||||
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
|
|
||||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
|
|
||||||
camera_model = new Gtk.ListStore (2, typeof (string), typeof (Cheese.CameraDevice));
|
|
||||||
|
|
||||||
source_combo.model = camera_model;
|
|
||||||
@@ -357,13 +357,13 @@ public PreferencesDialog (Cheese.Camera camera)
|
|
||||||
*/
|
|
||||||
private void on_camera_update_num_camera_devices ()
|
|
||||||
{
|
|
||||||
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
|
|
||||||
- Cheese.CameraDevice dev;
|
|
||||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
|
|
||||||
+ unowned Cheese.CameraDevice dev;
|
|
||||||
|
|
||||||
// Add (if) / Remove (else) a camera device.
|
|
||||||
- if (devices.len > camera_model.iter_n_children (null))
|
|
||||||
+ if (devices.length > camera_model.iter_n_children (null))
|
|
||||||
{
|
|
||||||
- dev = (Cheese.CameraDevice) devices.index (devices.len - 1);
|
|
||||||
+ dev = devices.get (devices.length - 1);
|
|
||||||
add_camera_device(dev);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
@@ -382,12 +382,11 @@ public PreferencesDialog (Cheese.Camera camera)
|
|
||||||
bool device_removed = false;
|
|
||||||
devices.foreach ((device) =>
|
|
||||||
{
|
|
||||||
- var old_device = (Cheese.CameraDevice) device;
|
|
||||||
Cheese.CameraDevice new_device;
|
|
||||||
camera_model.get (iter, 1, out new_device, -1);
|
|
||||||
|
|
||||||
// Found the device that was removed.
|
|
||||||
- if (old_device != new_device)
|
|
||||||
+ if (device != new_device)
|
|
||||||
{
|
|
||||||
remove_camera_device (iter, new_device, active_device);
|
|
||||||
device_removed = true;
|
|
||||||
@@ -418,17 +417,16 @@ public PreferencesDialog (Cheese.Camera camera)
|
|
||||||
*
|
|
||||||
* @param device a Cheese.CameraDevice to add to the device combo box model
|
|
||||||
*/
|
|
||||||
- private void add_camera_device (void *device)
|
|
||||||
+ private void add_camera_device (Cheese.CameraDevice device)
|
|
||||||
{
|
|
||||||
TreeIter iter;
|
|
||||||
- Cheese.CameraDevice dev = (Cheese.CameraDevice) device;
|
|
||||||
|
|
||||||
camera_model.append (out iter);
|
|
||||||
camera_model.set (iter,
|
|
||||||
- 0, dev.get_name (),
|
|
||||||
- 1, dev);
|
|
||||||
+ 0, device.get_name (),
|
|
||||||
+ 1, device);
|
|
||||||
|
|
||||||
- if (camera.get_selected_device () == dev)
|
|
||||||
+ if (camera.get_selected_device () == device)
|
|
||||||
source_combo.set_active_iter (iter);
|
|
||||||
|
|
||||||
if (camera_model.iter_n_children (null) > 1)
|
|
||||||
@@ -445,12 +443,12 @@ public PreferencesDialog (Cheese.Camera camera)
|
|
||||||
private void remove_camera_device (TreeIter iter, Cheese.CameraDevice device_node,
|
|
||||||
Cheese.CameraDevice active_device_node)
|
|
||||||
{
|
|
||||||
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
|
|
||||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
|
|
||||||
|
|
||||||
// Check if the camera that we want to remove, is the active one
|
|
||||||
if (device_node == active_device_node)
|
|
||||||
{
|
|
||||||
- if (devices.len > 0)
|
|
||||||
+ if (devices.length > 0)
|
|
||||||
set_new_available_camera_device (iter);
|
|
||||||
else
|
|
||||||
this.hide ();
|
|
||||||
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
|
|
||||||
index ff069808..cc119b68 100644
|
|
||||||
--- a/src/cheese-window.vala
|
|
||||||
+++ b/src/cheese-window.vala
|
|
||||||
@@ -1216,9 +1216,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
|
||||||
*/
|
|
||||||
public void on_switch_camera_clicked ()
|
|
||||||
{
|
|
||||||
- Cheese.CameraDevice selected;
|
|
||||||
- Cheese.CameraDevice next = null;
|
|
||||||
- GLib.PtrArray cameras;
|
|
||||||
+ unowned Cheese.CameraDevice selected;
|
|
||||||
+ unowned Cheese.CameraDevice next = null;
|
|
||||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
|
|
||||||
uint i;
|
|
||||||
|
|
||||||
if (camera == null)
|
|
||||||
@@ -1235,9 +1235,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
|
||||||
|
|
||||||
cameras = camera.get_camera_devices ();
|
|
||||||
|
|
||||||
- for (i = 0; i < cameras.len; i++)
|
|
||||||
+ for (i = 0; i < cameras.length; i++)
|
|
||||||
{
|
|
||||||
- next = (Cheese.CameraDevice )cameras.index (i);
|
|
||||||
+ next = cameras.get (i);
|
|
||||||
|
|
||||||
if (next == selected)
|
|
||||||
{
|
|
||||||
@@ -1245,13 +1245,13 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (i + 1 < cameras.len)
|
|
||||||
+ if (i + 1 < cameras.length)
|
|
||||||
{
|
|
||||||
- next = (Cheese.CameraDevice )cameras.index (i + 1);
|
|
||||||
+ next = cameras.get (i + 1);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
- next = (Cheese.CameraDevice )cameras.index (0);
|
|
||||||
+ next = cameras.get (0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (next == selected)
|
|
||||||
@@ -1269,8 +1269,8 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
|
||||||
*/
|
|
||||||
public void set_switch_camera_button_state ()
|
|
||||||
{
|
|
||||||
- Cheese.CameraDevice selected;
|
|
||||||
- GLib.PtrArray cameras;
|
|
||||||
+ unowned Cheese.CameraDevice selected;
|
|
||||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
|
|
||||||
|
|
||||||
if (camera == null)
|
|
||||||
{
|
|
||||||
@@ -1288,7 +1288,7 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
|
||||||
|
|
||||||
cameras = camera.get_camera_devices ();
|
|
||||||
|
|
||||||
- if (cameras.len > 1)
|
|
||||||
+ if (cameras.length > 1)
|
|
||||||
{
|
|
||||||
switch_camera_button.set_visible (true);
|
|
||||||
return;
|
|
||||||
diff --git a/src/vapi/cheese-common.vapi b/src/vapi/cheese-common.vapi
|
|
||||||
index 6517cdfc..e4ae7ad3 100644
|
|
||||||
--- a/src/vapi/cheese-common.vapi
|
|
||||||
+++ b/src/vapi/cheese-common.vapi
|
|
||||||
@@ -35,7 +35,7 @@ namespace Cheese
|
|
||||||
[CCode (has_construct_function = false)]
|
|
||||||
public Camera (Clutter.Actor video_texture, string camera_device_node, int x_resolution, int y_resolution);
|
|
||||||
public bool get_balance_property_range (string property, double min, double max, double def);
|
|
||||||
- public unowned GLib.PtrArray get_camera_devices ();
|
|
||||||
+ public GLib.GenericArray<unowned Cheese.CameraDevice> get_camera_devices ();
|
|
||||||
public unowned Cheese.VideoFormat get_current_video_format ();
|
|
||||||
public int get_num_camera_devices ();
|
|
||||||
public unowned Cheese.CameraDevice get_selected_device ();
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
Taken from upstream:
|
|
||||||
https://gitlab.gnome.org/GNOME/glade/-/commit/eb0429d318c017b57b9e59de1d5b3f142a0f455e.
|
|
||||||
|
|
||||||
From 6cf1d3e11d4f8035f33c3003d33f6465896025a5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
|
|
||||||
Date: Tue, 18 May 2021 19:54:50 +0200
|
|
||||||
Subject: [PATCH] plugins: Define an invalid but non-null file path as script
|
|
||||||
path
|
|
||||||
|
|
||||||
This is following the gjs applications behaviors, setting a valid string
|
|
||||||
as the script path that will be shown in JS stack traces, even though
|
|
||||||
won't load a real file through g_file_new_for_commandline_arg()
|
|
||||||
---
|
|
||||||
plugins/gjs/glade-gjs.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/plugins/gjs/glade-gjs.c b/plugins/gjs/glade-gjs.c
|
|
||||||
index e1779665..aeae9906 100644
|
|
||||||
--- a/plugins/gjs/glade-gjs.c
|
|
||||||
+++ b/plugins/gjs/glade-gjs.c
|
|
||||||
@@ -93,7 +93,7 @@ glade_gjs_init (const gchar *name)
|
|
||||||
|
|
||||||
/* Importing the module will create all the GTypes so that glade can use them at runtime */
|
|
||||||
retval = gjs_context_eval (gjs_context_get_current (),
|
|
||||||
- import_sentence, -1, NULL,
|
|
||||||
+ import_sentence, -1, "<glade-gjs>",
|
|
||||||
&exit_status,
|
|
||||||
&error);
|
|
||||||
if (!retval && error)
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
Taken from upstream:
|
|
||||||
https://gitlab.gnome.org/GNOME/glade/-/commit/6cf1d3e11d4f8035f33c3003d33f6465896025a5.
|
|
||||||
|
|
||||||
From eb0429d318c017b57b9e59de1d5b3f142a0f455e Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
|
|
||||||
Date: Wed, 19 May 2021 00:10:29 +0200
|
|
||||||
Subject: [PATCH] tests: Do not create a file icon when no filename is provided
|
|
||||||
|
|
||||||
This would fail otherwise as GFileIcon requires a GFile parameter on
|
|
||||||
construction.
|
|
||||||
---
|
|
||||||
tests/create-widgets.c | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/tests/create-widgets.c b/tests/create-widgets.c
|
|
||||||
index 2094059d..db8311f8 100644
|
|
||||||
--- a/tests/create-widgets.c
|
|
||||||
+++ b/tests/create-widgets.c
|
|
||||||
@@ -106,6 +106,8 @@ main (int argc,
|
|
||||||
if (G_TYPE_IS_INSTANTIATABLE (adaptor_type) && !G_TYPE_IS_ABSTRACT (adaptor_type) &&
|
|
||||||
/* FIXME: can not create a themed icon without a name */
|
|
||||||
!g_type_is_a (adaptor_type, G_TYPE_THEMED_ICON) &&
|
|
||||||
+ /* FIXME: can not create a file icon without a file name */
|
|
||||||
+ !g_type_is_a (adaptor_type, G_TYPE_FILE_ICON) &&
|
|
||||||
/* FIXME: GtkPopoverMenu gives a few warnings */
|
|
||||||
!g_type_is_a (adaptor_type, GTK_TYPE_POPOVER_MENU) &&
|
|
||||||
/* FIXME: GtkFileChooserNative is hard to test here */
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
|
@ -743,6 +743,25 @@ variables into the markdown template")
|
||||||
Markdown. All extensions are found under the module namespace of pymdownx.")
|
Markdown. All extensions are found under the module namespace of pymdownx.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public python-plotille
|
||||||
|
(package
|
||||||
|
(name "python-plotille")
|
||||||
|
(version "4.0.2")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "plotille" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0fvsk6glxfphhqy405h05rj3v95jd1byl5hv2fyd5l31wln23shj"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(native-inputs (list python-six))
|
||||||
|
(home-page "https://github.com/tammoippen/plotille")
|
||||||
|
(synopsis "Plot in the terminal using braille dots")
|
||||||
|
(description
|
||||||
|
"Plotille provides a figure class and graphing functions to create plots,
|
||||||
|
scatter plots, histograms and heatmaps in the terminal using braille dots.")
|
||||||
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public python-mdx-gh-links
|
(define-public python-mdx-gh-links
|
||||||
(package
|
(package
|
||||||
(name "python-mdx-gh-links")
|
(name "python-mdx-gh-links")
|
||||||
|
|
|
@ -1945,59 +1945,76 @@ defined radio with support for rtl-sdr.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public csdr
|
(define-public csdr
|
||||||
;; No release since 2017, use commit directly.
|
(package
|
||||||
(let ((commit "6ef2a74206887155290a54c7117636f66742f858")
|
(name "csdr")
|
||||||
(revision "1"))
|
(version "0.18.0")
|
||||||
(package
|
(source
|
||||||
(name "csdr")
|
(origin
|
||||||
(version (git-version "0.15" revision commit))
|
(method git-fetch)
|
||||||
(source
|
(uri (git-reference
|
||||||
(origin
|
(url "https://github.com/jketterl/csdr")
|
||||||
(method git-fetch)
|
(commit version)))
|
||||||
(uri (git-reference
|
(file-name (git-file-name name version))
|
||||||
(url "https://github.com/ha7ilm/csdr")
|
(sha256
|
||||||
(commit commit)))
|
(base32 "0sdni0p9qcf4yw1wf5jz1pyb9wv6wmdblirh2q6s7jblh50vfwz1"))))
|
||||||
(file-name (git-file-name name version))
|
(build-system cmake-build-system)
|
||||||
(sha256
|
(native-inputs
|
||||||
(base32 "0ic35130lf66lk3wawgc5bcg711l7chv9al1hzdc1xrmq9qf9hri"))))
|
(list pkg-config))
|
||||||
(build-system gnu-build-system)
|
(inputs
|
||||||
(inputs
|
(list fftwf libsamplerate))
|
||||||
(list fftwf))
|
(arguments
|
||||||
(arguments
|
(list #:tests? #f)) ; No check phase
|
||||||
`(#:make-flags
|
(home-page "https://github.com/jketterl/csdr")
|
||||||
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
(synopsis "DSP for software defined radio")
|
||||||
;; Don't print summary of SIMD optimized functions.
|
(description
|
||||||
"PARSEVECT=no")
|
"This package includes the @code{libcsdr} library of
|
||||||
#:tests? #f ; No check phase
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(replace 'configure
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(substitute* "Makefile"
|
|
||||||
(("PARAMS_MISC = -Wno-unused-result" all)
|
|
||||||
;; The 'validate-runpath' phase fails without this.
|
|
||||||
(string-append
|
|
||||||
all " -Wl,-rpath=" (assoc-ref outputs "out") "/lib"))
|
|
||||||
(("PARAMS_SIMD =.*")
|
|
||||||
;; Disable to make reproducibility and cross-compilation work.
|
|
||||||
"")
|
|
||||||
(("gcc ")
|
|
||||||
,(string-append (cc-for-target) " "))
|
|
||||||
(("g\\+\\+ ")
|
|
||||||
,(string-append (cxx-for-target) " ")))))
|
|
||||||
(add-before 'install 'make-installation-directories
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let ((out (assoc-ref outputs "out")))
|
|
||||||
(mkdir-p (string-append out "/bin"))
|
|
||||||
(mkdir-p (string-append out "/lib"))))))))
|
|
||||||
(home-page "https://github.com/ha7ilm/csdr")
|
|
||||||
(synopsis "DSP for software defined radio")
|
|
||||||
(description
|
|
||||||
"This package includes the @code{libcsdr} library of
|
|
||||||
@acronym{DSP, Digital Signal Processing} functions for
|
@acronym{DSP, Digital Signal Processing} functions for
|
||||||
@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
|
@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
|
||||||
program that can be used to build simple signal processing flow graphs.")
|
program that can be used to build simple signal processing flow graphs.")
|
||||||
(license license:gpl3+))))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public convert-samples
|
||||||
|
(package
|
||||||
|
(name "convert-samples")
|
||||||
|
(version "3.0.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/glv2/convert-samples")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32 "1d9w9m5agi8fiv1wk8nhjrbm2jkm2fks4ymbxkn0xphbwj3gwr7i"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs
|
||||||
|
(list autoconf automake))
|
||||||
|
(inputs
|
||||||
|
(list liquid-dsp))
|
||||||
|
(synopsis "SDR samples converter")
|
||||||
|
(description
|
||||||
|
"@code{convert-samples} is a command-line program to convert samples
|
||||||
|
received from software defined radios from one format to another.
|
||||||
|
|
||||||
|
Supported formats:
|
||||||
|
@itemize
|
||||||
|
@item s8: signed 8 bit integer
|
||||||
|
@item u8: unsigned 8 bit integer
|
||||||
|
@item s16: signed 16 bit integer
|
||||||
|
@item u16: unsigned 16 bit integer
|
||||||
|
@item s32: signed 32 bit integer
|
||||||
|
@item u32: unsigned 32 bit integer
|
||||||
|
@item f32: 32 bit float
|
||||||
|
@item cs8: complex made of signed 8 bit integers
|
||||||
|
@item cu8: complex made of unsigned 8 bit integers
|
||||||
|
@item cs16: complex made of signed 16 bit integers
|
||||||
|
@item cu16: complex made of unsigned 16 bit integers
|
||||||
|
@item cs32: complex made of signed 32 bit integers
|
||||||
|
@item cu32: complex made of unsigned 32 bit integers
|
||||||
|
@item cf32: complex made of 32 bit floats
|
||||||
|
@end itemize")
|
||||||
|
(home-page "https://github.com/glv2/convert-samples")
|
||||||
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public serialdv
|
(define-public serialdv
|
||||||
(package
|
(package
|
||||||
|
|
|
@ -1549,6 +1549,9 @@ also walk each side of a merge and test those changes individually.")
|
||||||
(assoc-ref inputs "inetutils")
|
(assoc-ref inputs "inetutils")
|
||||||
"/bin/logger\"")))
|
"/bin/logger\"")))
|
||||||
|
|
||||||
|
(substitute* "src/lib/Gitolite/Cache.pm"
|
||||||
|
(("/usr/sbin/redis-server") "redis-server"))
|
||||||
|
|
||||||
(substitute* "src/commands/svnserve"
|
(substitute* "src/commands/svnserve"
|
||||||
(("/usr/bin/svnserve") "svnserve"))))
|
(("/usr/bin/svnserve") "svnserve"))))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
#:use-module (ice-9 rdelim)
|
#:use-module (ice-9 rdelim)
|
||||||
#:use-module (ice-9 vlist)
|
#:use-module (ice-9 vlist)
|
||||||
#:use-module (srfi srfi-1)
|
#:use-module (srfi srfi-1)
|
||||||
|
#:use-module (srfi srfi-26)
|
||||||
#:use-module (srfi srfi-34)
|
#:use-module (srfi srfi-34)
|
||||||
#:use-module (srfi srfi-35)
|
#:use-module (srfi srfi-35)
|
||||||
#:use-module (guix i18n)
|
#:use-module (guix i18n)
|
||||||
|
@ -426,6 +427,34 @@ each line except the first one (they're assumed to be already there)."
|
||||||
(display (make-string indent #\space) port)
|
(display (make-string indent #\space) port)
|
||||||
(loop tail)))))
|
(loop tail)))))
|
||||||
|
|
||||||
|
(define %symbols-followed-by-octal-integers
|
||||||
|
;; Symbols for which the following integer must be printed as octal.
|
||||||
|
'(chmod umask mkdir mkstemp))
|
||||||
|
|
||||||
|
(define %symbols-followed-by-hexadecimal-integers
|
||||||
|
;; Likewise, for hexadecimal integers.
|
||||||
|
'(logand logior logxor lognot))
|
||||||
|
|
||||||
|
(define (integer->string integer context)
|
||||||
|
"Render INTEGER as a string using a base suitable based on CONTEXT."
|
||||||
|
(define base
|
||||||
|
(match context
|
||||||
|
((head . tail)
|
||||||
|
(cond ((memq head %symbols-followed-by-octal-integers) 8)
|
||||||
|
((memq head %symbols-followed-by-hexadecimal-integers)
|
||||||
|
(if (any (cut memq <> %symbols-followed-by-octal-integers)
|
||||||
|
tail)
|
||||||
|
8
|
||||||
|
16))
|
||||||
|
(else 10)))
|
||||||
|
(_ 10)))
|
||||||
|
|
||||||
|
(string-append (match base
|
||||||
|
(10 "")
|
||||||
|
(16 "#x")
|
||||||
|
(8 "#o"))
|
||||||
|
(number->string integer base)))
|
||||||
|
|
||||||
(define* (pretty-print-with-comments port obj
|
(define* (pretty-print-with-comments port obj
|
||||||
#:key
|
#:key
|
||||||
(format-comment
|
(format-comment
|
||||||
|
@ -661,9 +690,12 @@ FORMAT-VERTICAL-SPACE; a useful value of 'canonicalize-vertical-space'."
|
||||||
(display ")" port)
|
(display ")" port)
|
||||||
(+ column 1)))))
|
(+ column 1)))))
|
||||||
(_
|
(_
|
||||||
(let* ((str (if (string? obj)
|
(let* ((str (cond ((string? obj)
|
||||||
(escaped-string obj)
|
(escaped-string obj))
|
||||||
(object->string obj)))
|
((integer? obj)
|
||||||
|
(integer->string obj context))
|
||||||
|
(else
|
||||||
|
(object->string obj))))
|
||||||
(len (string-width str)))
|
(len (string-width str)))
|
||||||
(if (and (> (+ column 1 len) max-width)
|
(if (and (> (+ column 1 len) max-width)
|
||||||
(not delimited?))
|
(not delimited?))
|
||||||
|
|
|
@ -247,6 +247,14 @@ mnopqrstuvwxyz.\")"
|
||||||
(+ a b))))
|
(+ a b))))
|
||||||
(list x y z))")
|
(list x y z))")
|
||||||
|
|
||||||
|
(test-pretty-print "\
|
||||||
|
(begin
|
||||||
|
(chmod \"foo\" #o750)
|
||||||
|
(chmod port
|
||||||
|
(logand #o644
|
||||||
|
(lognot (umask))))
|
||||||
|
(logand #x7f xyz))")
|
||||||
|
|
||||||
(test-pretty-print "\
|
(test-pretty-print "\
|
||||||
(substitute-keyword-arguments (package-arguments x)
|
(substitute-keyword-arguments (package-arguments x)
|
||||||
((#:phases phases)
|
((#:phases phases)
|
||||||
|
|
Reference in New Issue