diff options
author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2023-08-11 17:49:18 -0400 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2023-08-22 12:32:20 -0400 |
commit | 0b994bb9b10b381376f1dfd8bd2bc9173ede2a66 (patch) | |
tree | e5dc14bac80c478749c871591417e4a1aa981da4 /etc | |
parent | 1717c8a233b7fda3a10aabc061168c71317f883e (diff) |
etc: Add Qt manifests for Qt maintenance.
* etc/teams/qt/common.scm: New file.
* etc/teams/qt/qt-manifest.scm: Likewise.
* etc/teams/qt/qt5-manifest.scm: Likewise.
Diffstat (limited to 'etc')
-rw-r--r-- | etc/teams/qt/common.scm | 50 | ||||
-rw-r--r-- | etc/teams/qt/qt-manifest.scm | 34 | ||||
-rw-r--r-- | etc/teams/qt/qt5-manifest.scm | 34 |
3 files changed, 118 insertions, 0 deletions
diff --git a/etc/teams/qt/common.scm b/etc/teams/qt/common.scm new file mode 100644 index 0000000000..8e11ac220b --- /dev/null +++ b/etc/teams/qt/common.scm @@ -0,0 +1,50 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +;;; This file returns a manifest of packages related to linux-libre. +;;; Simplistically, it selects packages whose names begin with "linux-libre". +;;; It is used to assist continuous integration of the kernel packages. + +(use-modules (guix packages) + (guix profiles) + (guix utils) + (gnu packages)) + +(define* (qt-packages-manifest #:key major-version negate-version-test?) + "Return a manifest of Qt packages for MAJOR-VERSION, or any version if left +unspecified. If NEGATE-VERSION-TEST? is true, select all the Qt packages +*not* matching MAJOR-VERSION." + (manifest + (map package->manifest-entry + (fold-packages + (lambda (package lst) + (let ((uri (and=> (package-source package) + (lambda (x) + (and (origin? x) + (origin-uri x)))))) + (if (and uri + (string? uri) + (string-prefix? "mirror://qt/" uri) + (if major-version + ((if negate-version-test? not identity) + (string=? major-version (version-major + (package-version package)))) + #t)) + (cons package lst) + lst))) + '())))) diff --git a/etc/teams/qt/qt-manifest.scm b/etc/teams/qt/qt-manifest.scm new file mode 100644 index 0000000000..0d8fa95bfe --- /dev/null +++ b/etc/teams/qt/qt-manifest.scm @@ -0,0 +1,34 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +;;; This file returns a manifest of packages related to linux-libre. +;;; Simplistically, it selects packages whose names begin with "linux-libre". +;;; It is used to assist continuous integration of the kernel packages. + +(load "common.scm") + +;;; Commentary: +;;; +;;; This manifest can be used to update the latest Qt packages collection, via +;;; e.g.: +;;; +;;; ./pre-inst-env guix refresh -u -m etc/teams/qt/qt-manifest.scm +;;; +;;; Code: + +(qt-packages-manifest #:major-version "5" #:negate-version-test? #t) diff --git a/etc/teams/qt/qt5-manifest.scm b/etc/teams/qt/qt5-manifest.scm new file mode 100644 index 0000000000..34fdf479bf --- /dev/null +++ b/etc/teams/qt/qt5-manifest.scm @@ -0,0 +1,34 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +;;; This file returns a manifest of packages related to linux-libre. +;;; Simplistically, it selects packages whose names begin with "linux-libre". +;;; It is used to assist continuous integration of the kernel packages. + +(load "common.scm") + +;;; Commentary: +;;; +;;; This manifest can be used to update the Qt 5 packages collection, via +;;; e.g.: +;;; +;;; ./pre-inst-env guix refresh -u -m etc/teams/qt/qt5-manifest.scm --target-version=5.15.10 +;;; +;;; Code: + +(qt-packages-manifest #:major-version "5") |