Commit graph

960 commits

Author SHA1 Message Date
Zheng Junjie
5c68817813
examples: Add plasma operating-system example template.
* gnu/system/examples/plasma.tmpl: New file.
* Makefile.am (EXAMPLES): register it.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2023-08-03 17:38:10 +08:00
Maxim Cournoyer
8d785c43ba
services: wireguard: Implement a dynamic IP monitoring feature.
* gnu/services/vpn.scm (<wireguard-configuration>)
[monitor-ips?, monitor-ips-internal]: New fields.
* gnu/services/vpn.scm (define-with-source): New syntax.
(wireguard-service-name, strip-port/maybe)
(ipv4-address?, ipv6-address?, host-name?)
(endpoint-host-names): New procedure.
(wireguard-monitoring-jobs): Likewise.
(wireguard-service-type): Register it.
* tests/services/vpn.scm: New file.
* Makefile.am (SCM_TESTS): Register it.
* doc/guix.texi (VPN Services): Update doc.

Reviewed-by: Bruno Victal <mirai@makinata.eu>
2023-07-21 11:58:44 -04:00
Leo Famulari
49f74b67a4
gnu: Add linux-libre 6.4
* gnu/packages/linux.scm (linux-libre-6.4-version, linux-libre-6.4-gnu-revision,
deblob-scripts-6.4, linux-libre-6.4-pristine-source, linux-libre-6.4-source,
linux-libre-headers-6.4, linux-libre-6.4: New variables.
* gnu/packages/aux-files/linux-libre/6.4-arm.conf,
* gnu/packages/aux-files/linux-libre/6.4-arm64.conf,
* gnu/packages/aux-files/linux-libre/6.4-i686.conf,
* gnu/packages/aux-files/linux-libre/6.4-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2023-07-15 14:02:40 -04:00
Ludovic Courtès
1b7aabbc79
Add 'guix locate'.
* guix/scripts/locate.scm, tests/guix-locate.sh: New files.
* Makefile.am (MODULES): Add 'guix/scripts/locate.scm'.
(SH_TESTS): Add 'tests/guix-locate.sh'.
* po/guix/POTFILES.in: Add it.
* doc/guix.texi (Invoking guix locate): New node.

Co-authored-by: Antoine R. Dumont <antoine.romain.dumont@gmail.com>
2023-06-18 23:44:29 +02:00
Josselin Poiret
80d1228321
build-system: New agda-build-system.
* guix/build-system/agda.scm: New file.
* guix/build/agda-build-system.scm: New file.
* Makefile.am (MODULES): Register them.
* doc/guix.texi (Build Systems): Add documentation for agda-build-system.
2023-06-04 10:59:34 +02:00
Leo Famulari
13e2138c23
gnu: Remove linux-libre 6.2.
This kernel series is no longer supported upstream.

* gnu/packages/linux.scm (linux-libre-6.2-version, linux-libre-6.2-gnu-revision,
deblob-scripts-6.2, linux-libre-6.2-pristine-source, linux-libre-6.2-source,
linux-libre-headers-6.2, linux-libre-6.2): Remove variables.
* gnu/packages/aux-files/linux-libre/6.2-arm.conf,
gnu/packages/aux-files/linux-libre/6.2-arm64.conf,
gnu/packages/aux-files/linux-libre/6.2-i686.conf,
gnu/packages/aux-files/linux-libre/6.2-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2023-05-31 21:21:25 -04:00
Leo Famulari
c8e599b939
gnu: Add linux-libre 6.3.
* gnu/packages/linux.scm (linux-libre-6.3-version, linux-libre-6.3-gnu-revision,
deblob-scripts-6.3, linux-libre-6.3-pristine-source, linux-libre-6.3-source,
linux-libre-headers-6.3, linux-libre-6.3): New variables.
* gnu/packages/aux-files/linux-libre/6.3-arm.conf,
gnu/packages/aux-files/linux-libre/6.3-arm64.conf,
gnu/packages/aux-files/linux-libre/6.3-i686.conf,
gnu/packages/aux-files/linux-libre/6.3-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2023-05-16 13:15:13 -04:00
Mekeor Melire
7f8575c97a
Makefile.am: Use --add flag to "git config".
Without the "--add" flag to "git config include.path ...", the command fails
if the user already has a configuration entry of "include.path".

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-05-07 09:12:47 -04:00
Maxim Cournoyer
ed0f0204b2
Makefile.am: Only auto-configure Git when available.
* Makefile.am (.git/hooks/pre-push): Only run recipe if the '.git' directory
exists.  Make it silent.
(.git/config): Likewise, and also check if the 'git' command is available.

Reported-by: Brian Cully <bjc@spork.org>
2023-05-06 23:21:11 -04:00
Ludovic Courtès
5aa1f3aa4a
build: Do not fail when '.git' is missing.
This is a followup to a5d719012e.

* Makefile.am (.git/hooks/pre-push): Add dash.
2023-05-04 18:51:20 +02:00
Ludovic Courtès
a5d719012e
build: Do not fail when 'git' is missing.
This is a followup to 8b972da068.

* Makefile.am (.git/config): Add dash.
2023-05-04 18:43:28 +02:00
Maxim Cournoyer
8b972da068
Makefile.am: Auto-configure Git on 'make'.
This means we do not need to worry anymore about manually syncing the pre-push
git hook or the Guix-provided git configuration.

* etc/git/gitconfig: Augment configuration template with useful options to
allow for auto-configuration.
* Makefile.am (.git/hooks/pre-push, .git/config): New targets.
(nodist_noinst_DATA): New primary variable holding the above targets.
2023-05-01 12:39:11 -04:00
Keisuke Kurosawa
08675129aa
build: Undo "guix/scripts/import/cpan.scm" which was removed in commit 3aae8145a7.
* Makefile.am (MODULES): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-04-30 23:19:43 +02:00
Bruno Victal
9a03afbe17
gnu: docbook-xml-4.1.2: Add missing catalog.xml.
* gnu/packages/aux-files/xml/docbook-xml/catalog-4.1.2.xml: New file.
* Makefile.am: Register it.
* gnu/packages/docbook.scm (docbook-xml-4.1.2)[arguments]: Use prebuilt catalog.xml.
[native-inputs]: Add libxml2.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-04-21 00:44:01 -04:00
Bruno Victal
e9ba6d2c47
gnu: docbook-xml: Use XSLT to patch catalog.xml.
(sxml transforms) are unsuited here due to guile-bug #20339.

* gnu/packages/aux-files/xml/patch-catalog-xml.xsl: New file.
* Makefile.am: Register it.
* gnu/packages/docbook.scm (docbook-xml-5)[native-inputs]: Add libxslt.
[arguments]: Add phase to patch catalog.xml using XSLT.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-04-21 00:44:00 -04:00
Maxim Cournoyer
3c8a4d64ff
maint: Merge sanity-check-next.py into sanity-check.py.
* gnu/packages/aux-files/python/sanity-check-next.py: Rename to...
* gnu/packages/aux-files/python/sanity-check.py: ... this.
* guix/build-system/pyproject.scm (sanity-check.py): Adjust file name.
* Makefile.am (AUX_FILES): De-register sanity-check-next.py.
2023-04-14 21:01:34 -04:00
Andreas Enge
ccb62d8feb
Merge remote-tracking branch 'origin/master' into core-updates 2023-03-20 18:49:06 +01:00
Leo Famulari
e6ed6ab7f3
gnu: Add linux-libre 6.2.
* gnu/packages/linux.scm (linux-libre-6.2-version, linux-libre-6.2-gnu-revision,
deblob-scripts-6.2, linux-libre-6.2-pristine-source, linux-libre-6.2-source,
linux-libre-headers-6.2, linux-libre-6.2): New variables.
* gnu/packages/aux-files/linux-libre/6.2-arm.conf,
gnu/packages/aux-files/linux-libre/6.2-arm64.conf,
gnu/packages/aux-files/linux-libre/6.2-i686.conf,
gnu/packages/aux-files/linux-libre/6.2-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2023-03-06 18:15:07 -05:00
Christopher Baines
7df09ee0ab
Merge remote-tracking branch 'savannah/master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/autotools.scm
	gnu/packages/cmake.scm
	gnu/packages/gnuzilla.scm
	gnu/packages/haskell.scm
	gnu/packages/pdf.scm
	gnu/packages/python-xyz.scm
	gnu/packages/samba.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/wxwidgets.scm
2023-03-02 10:55:08 +00:00
Maxim Cournoyer
598f4c509b
pack: Add RPM format.
* guix/rpm.scm: New file.
* guix/scripts/pack.scm (rpm-archive): New procedure.
(%formats): Register it.
(show-formats): Add it.
(guix-pack): Register supported extra-options for the rpm format.
* tests/pack.scm (rpm-for-tests): New variable.
("rpm archive can be installed/uninstalled"): New test.
* tests/rpm.scm: New test.
* doc/guix.texi (Invoking guix pack): Document it.
2023-02-19 21:13:23 -05:00
Pierre Langlois
dbd4d2d070
build-system: Add tree-sitter-build-system.
* guix/build-system/tree-sitter.scm: New module.
* guix/build/tree-sitter-build-system.scm: Likewise.
* Makefile.am (MODULES): Add them.
* doc/guix.texi: Document it.

Signed-off-by: Andrew Tropin <andrew@trop.in>
2023-02-12 11:32:20 +04:00
Efraim Flashner
4cf1acc7f3
Merge remote-tracking branch 'origin/master' into core-updates
Conflicts:
	doc/guix.texi
	gnu/local.mk
	gnu/packages/admin.scm
	gnu/packages/base.scm
	gnu/packages/chromium.scm
	gnu/packages/compression.scm
	gnu/packages/databases.scm
	gnu/packages/diffoscope.scm
	gnu/packages/freedesktop.scm
	gnu/packages/gnome.scm
	gnu/packages/gnupg.scm
	gnu/packages/guile.scm
	gnu/packages/inkscape.scm
	gnu/packages/llvm.scm
	gnu/packages/openldap.scm
	gnu/packages/pciutils.scm
	gnu/packages/ruby.scm
	gnu/packages/samba.scm
	gnu/packages/sqlite.scm
	gnu/packages/statistics.scm
	gnu/packages/syndication.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/version-control.scm
	gnu/packages/xml.scm
	guix/build-system/copy.scm
	guix/scripts/home.scm
2023-01-30 12:39:40 +02:00
Leo Famulari
9ea37eb9f5
gnu: Remove linux-libre 6.0.
This kernel series is no longer supported upstream.

* gnu/packages/linux.scm (linux-libre-6.0-version, linux-libre-6.0-gnu-revision,
deblob-scripts-6.0, linux-libre-6.0-pristine-source, linux-libre-6.0-source,
linux-libre-headers-6.0, linux-libre-6.0): Remove variables.
* gnu/packages/aux-files/linux-libre/6.0-arm.conf,
gnu/packages/aux-files/linux-libre/6.0-arm64.conf,
gnu/packages/aux-files/linux-libre/6.0-i686.conf,
gnu/packages/aux-files/linux-libre/6.0-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2023-01-13 19:08:40 -05:00
Leo Famulari
064c5b7e45
gnu: Remove linux-libre 4.9.
This kernel series is no longer supported upstream:
https://lkml.iu.edu/hypermail/linux/kernel/2301.0/06398.html
https://www.kernel.org/category/releases.html

* gnu/packages/aux-files/linux-libre/4.9-i686.conf,
gnu/packages/aux-files/linux-libre/4.9-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
* gnu/packages/linux.scm (linux-libre-4.9-version, linux-libre-4.9-gnu-revision,
deblob-scripts-4.9, linux-libre-4.9-pristine-source, linux-libre-4.9-source,
linux-libre-headers-4.9, linux-libre-4.9): Remove variables.
* gnu/tests/base.scm (%test-linux-libre-4.9): Likewise.
2023-01-08 15:15:09 -05:00
Ludovic Courtès
04f247be81
refresh: Add CLI tests.
* guix/import/test.scm, tests/guix-refresh.sh: New files.
* Makefile.am (MODULES, SH_TESTS): Add them.
2023-01-08 16:11:45 +01:00
Leo Famulari
cfce55bf4f
gnu: Add linux-libre 6.1.
* gnu/packages/linux.scm (linux-libre-6.1-version, linux-libre-6.1-gnu-revision,
deblob-scripts-6.1, linux-libre-6.1-source, linux-libre-headers-6.1,
linux-libre-6.1): New variables.
* gnu/packages/aux-files/linux-libre/6.1-arm.conf,
gnu/packages/aux-files/linux-libre/6.1-arm64.conf,
gnu/packages/aux-files/linux-libre/6.1-i686.conf,
gnu/packages/aux-files/linux-libre/6.1-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2023-01-03 12:07:46 -05:00
Leo Famulari
d07d6ea31a
maint: Add a manifest for everything related to linux-libre.
* etc/kernels-manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2022-12-29 13:51:58 -05:00
Ludovic Courtès
7fde166715
Merge branch 'version-1.4.0' 2022-12-05 15:51:04 +01:00
Ludovic Courtès
90612b9f1f
build: Add 'sanity-check-next.py' to the distribution.
Reported by Vagrant Cascadian <vagrant@debian.org>.

* Makefile.am (AUX_FILES): Add 'sanity-check-next.py'.
2022-12-03 18:50:10 +01:00
Ludovic Courtès
020184fd39
maint: Adjust sed script from 'release' target.
This is a followup to fdafd40432.  This
effect would to set 'GUIX_DISPLAYED_VERSION' to the empty string.

* Makefile.am (release): Remove '/v' from sed script for
GUIX_DISPLAYED_VERSION.
2022-11-30 20:02:41 +01:00
Ludovic Courtès
1aa7ee52c6
build: Build gnu/packages/*.go in two passes.
This works around <https://issues.guix.gnu.org/59717>, whereby heap
usage would go beyond what's reasonable, preventing compilation of the
'guix' package on armhf-linux.

This is a followup to ef82ba9dd9.

* Makefile.am (MODULES_PACKAGES1, MODULES_PACKAGES): New variables.
(MODULES_PACKAGES): Define in terms of them and use :=.
(MODULES_CORE, MODULES_SYSTEM, MODULES_CLI, MODULES_PO): Define with :=.
2022-11-30 19:58:33 +01:00
Stefan
c7793b82ef
gnu: raspberry-pi: Add a bootloader-chain for the Raspberry Pi and os examples.
* gnu/packages/raspberry-pi.scm (grub-efi-bootloader-chain-raspi-64): New
bootloader variable, capable to boot a Raspberry Pi over network or from a
local storage.
* gnu/system/examples/raspberry-pi-64.tmpl: New operating-system example.
* gnu/system/examples/raspberry-pi-64-nfs-root.tmpl: New operating-system
example for booting over network.
* Makefile.am (EXAMPLES): Register the new files.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:29 -05:00
Stefan
a3f638e748
build: kconfig: Add new module to modify defconfig files.
* guix/build/kconfig.scm: New file.
* Makefile.am: Register it.
* gnu/packages/bootloaders.scm (make-u-boot-package)
(make-u-boot-sunxi64-package): Add DEFCONFIGS and CONFIGS arguments.  Remove
dead code.
(u-boot-am335x-boneblack, u-boot-pinebook)
(u-boot-novena,u-boot-rockpro64-rk3399): Simplify packages by using the new
keyword arguments.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 11:57:06 -05:00
Maxim Cournoyer
8934827014
Makefile.am: Sort EXTRA_DIST entries.
* Makefile.am (EXTRA_DIST): Sort.
2022-11-15 14:15:10 -05:00
Leo Famulari
c52cdd18d6
gnu: Remove linux-libre 5.19.
* gnu/packages/linux.scm (linux-libre-5.19-version,
linux-libre-5.19-gnu-revision, deblob-scripts-5.19,
linux-libre-5.19-pristine-source, linux-libre-5.19-source,
linux-libre-headers-5.19, linux-libre-5.19): Remove variables.
* gnu/packages/aux-files/linux-libre/5.19-arm.conf,
gnu/packages/aux-files/linux-libre/5.19-arm64.conf,
gnu/packages/aux-files/linux-libre/5.19-i686.conf,
gnu/packages/aux-files/linux-libre/5.19-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2022-11-08 12:54:32 -05:00
Leo Famulari
2fde8cf399
gnu: linux-libre: Add linux-libre 6.0.6.
* gnu/packages/linux.scm (linux-libre-6.0-version,
linux-libre-6.0-pristine-source, linux-libre-6.0-source,
linux-libre-headers-6.0, linux-libre-6.0): New variables.
* gnu/packages/aux-files/linux-libre/6.0-arm.conf,
gnu/packages/aux-files/linux-libre/6.0-arm64.conf,
gnu/packages/aux-files/linux-libre/6.0-i686.conf,
gnu/packages/aux-files/linux-libre/6.0-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2022-11-02 01:01:51 -04:00
Lars-Dominik Braun
400a7a4c80
build-system: Add pyproject-build-system.
This is an experimental build system based on python-build-system
that implements PEP 517-compliant builds.

* doc/guix.texi (Build Systems): Add pyproject-build-system section.
* doc/contributing.texi (Python Modules): Mention pyproject.toml and the
PYTHON-TOOLCHAIN package, as well as differences to python-build-system.
* guix/build-system/pyproject.scm,
guix/build/pyproject-build-system.scm,
gnu/packages/aux-files/python/sanity-check-next.py,
gnu/packages/python-commencement.scm: New files.
* Makefile.am (MODULES): Register the new build systems.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add python-commencement.scm.
* gnu/packages/python.scm (python-sans-pip, python-sans-pip-wrapper): New
variables.

Co-authored-by: Marius Bakke <marius@gnu.org>
2022-10-27 19:43:06 +02:00
Marius Bakke
884548b476
Merge branch 'staging' into core-updates 2022-09-08 21:12:52 +02:00
Leo Famulari
0f2776399e
gnu: Remove linux-libre 5.18.
* gnu/packages/linux.scm (linux-libre-5.18-version,
linux-libre-5.18-gnu-revision, deblob-scripts-5.18,
linux-libre-5.18-pristine-source, linux-libre-5.18-source,
linux-libre-headers-5.18, linux-libre-5.18): Remove variables.
* gnu/packages/aux-files/linux-libre/5.18-arm.conf,
gnu/packages/aux-files/linux-libre/5.18-arm64.conf,
gnu/packages/aux-files/linux-libre/5.18-i686.conf,
gnu/packages/aux-files/linux-libre/5.18-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2022-09-06 08:58:13 -04:00
Marius Bakke
58863b93b0
Merge branch 'staging' into core-updates 2022-09-01 23:26:57 +02:00
Leo Famulari
58ff455328
gnu: Add linux-libre 5.19.
* gnu/packages/linux.scm (linux-libre-5.19-version,
linux-libre-5.19-gnu-revision, deblob-scripts-5.19,
linux-libre-5.19-pristine-source, linux-libre-5.19-source,
linux-libre-headers-5.19, linux-libre-5.19): New variables.
* gnu/packages/aux-files/linux-libre/5.19-arm.conf,
gnu/packages/aux-files/linux-libre/5.19-arm64.conf,
gnu/packages/aux-files/linux-libre/5.19-i686.conf,
gnu/packages/aux-files/linux-libre/5.19-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2022-08-31 15:00:45 -04:00
Marius Bakke
59c136ef61
Merge branch 'staging' into core-updates 2022-08-30 20:18:55 +02:00
Maxim Cournoyer
0ea62e84a7
services: Add lightdm-service-type.
* gnu/services/lightdm.scm: New service.
* tests/services/lightdm.scm: Test it.
* doc/guix.texi (X Window): Document it.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register it.

Co-authored-by: L p R n d n <guix@lprndn.info>
Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2022-08-28 22:28:47 -04:00
Marius Bakke
77eb3008e3
Merge branch 'staging' into core-updates 2022-08-11 23:36:10 +02:00
Ludovic Courtès
fdafd40432
maint: Use a pretty version string in ISO and VM images.
* gnu/system/examples/vm-image.tmpl: Use the 'GUIX_DISPLAYED_VERSION'
environment variable in 'label'.
* gnu/system/install.scm (%installation-os): Likewise.
* Makefile.am (release): Set 'GUIX_DISPLAYED_VERSION'.
2022-08-09 15:16:06 +02:00
Ludovic Courtès
95a03aa5c5
system: install: Always use 'current-guix'.
Fixes <https://issues.guix.gnu.org/53210>.
Reported by Mathieu Othacehe <othacehe@gnu.org>.

* gnu/system/install.scm (%installation-services): Set 'guix' to
use (current-guix) in 'guix-configuration'.
* gnu/system/examples/vm-image.tmpl: Likewise.
* gnu/tests/install.scm (operating-system-with-current-guix): Remove.
(run-install, installation-os-for-gui-tests): Remove its uses.
* Makefile.am (release): Remove intermediate use of
'update-guix-package.scm' and subsequent 'git commit' invocation.
2022-08-09 15:16:06 +02:00
Ludovic Courtès
5bce4c8242
build-system: Add 'channel-build-system'.
* gnu/ci.scm (channel-build-system, channel-source->package): Remove.
* gnu/packages/package-management.scm (channel-source->package): New
procedure, moved from (gnu ci).
* guix/build-system/channel.scm: New file, with code moved from (gnu ci).
* doc/guix.texi (Build Systems): Document it.
2022-08-09 15:16:06 +02:00
Ludovic Courtès
a15542d26d
style: Add '--whole-file' option.
* guix/scripts/style.scm (format-whole-file): New procedure.
(%options, show-help): Add '--whole-file'.
(guix-style): Honor it.
* tests/guix-style.sh: New file.
* Makefile.am (SH_TESTS): Add it.
* doc/guix.texi (Invoking guix style): Document it.
2022-08-08 11:53:33 +02:00
Ludovic Courtès
5817e222fa
style: Move reader and printer to (guix read-print).
* guix/scripts/style.scm (<comment>, read-with-comments)
(vhashq, %special-forms, %newline-forms, prefix?)
(special-form-lead, newline-form?, escaped-string)
(string-width, canonicalize-comment, pretty-print-with-comments)
(object->string*): Move to...
* guix/read-print.scm: ... here.  New file.
* guix/scripts/import.scm: Adjust accordingly.
* tests/style.scm: Move 'test-pretty-print' and tests to...
* tests/read-print.scm: ... here.  New file.
* Makefile.am (MODULES): Add 'guix/read-print.scm'.
(SCM_TESTS): Add 'tests/read-print.scm'.
2022-08-08 11:22:31 +02:00
Marius Bakke
9044b086dd
Merge branch 'staging' into core-updates 2022-07-22 01:09:14 +02:00