~ruther/guix-local

ref: 5a502d9abd549cf06a37c0a00a5200c6cd05269e guix-local/guix/scripts d---------
0f65f54e — Carlos Sánchez de La Lama 9 years ago
system: grub.cfg uses correct file names when store is not in root partition.

Fixes <http://bugs.gnu.org/24346>.
Reported by csanchezdll@gmail.com (Carlos Sánchez de La Lama).

* guix/scripts/system.scm (previous-grub-entries): Get the initrd file
name from PARAMS.
* gnu/system.scm (operating-system-grub.cfg): Use
'operating-system-initrd-file' to retrieve the initrd file name.
* gnu/system/grub.scm (strip-mount-point): New procedure.
(grub-configuration-file)[entry->gexp]: Call 'strip-mount-point' for
LINUX and INITRD.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
e465d9e1 — Ludovic Courtès 9 years ago
ui: Do not shadow '_' where it's used as a literal syntax match.

Fixes compilation with Guile 2.1.
Reported by Mu Lei.

* guix/ui.scm (report-load-error)
(warn-about-load-error, read/eval-package-expression): Use 'rest'
instead of '_' as the pattern variable name.
* gnu/packages.scm (%find-package): Likewise.
* guix/scripts/build.scm (transform-package-inputs): Likewise.
* guix/scripts/hash.scm (guix-hash): Likewise.
* guix/scripts/import/gnu.scm (%options, guix-import-gnu): Likewise.
* guix/scripts/import/nix.scm (guix-import-nix): Likewise.
* guix/scripts/offload.scm (build-machines): Likewise.
* guix/scripts/refresh.scm (%options): Likewise.
* guix/scripts/substitute.scm (narinfo-signature->canonical-sexp):
Likewise.
392a4e12 — Jan Nieuwenhuizen 9 years ago
guix hash: Add --exclude-vcs option.

* guix/scripts/hash.scm (show-help): Add help text for --exclude-vcs option.
(%options): Add --exclude-vcs option.
(guix-hash): Handle exclude-vcs option.
* doc/guix.texi ("Invoking guix hash"): Update doc.
* tests/guix-hash.sh: Add test.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
01afdab8 — Ludovic Courtès 9 years ago
packages: Add 'package-superseded' and associated support.

This provides a way to mark a package as superseded by another one.
Upgrades replace superseded packages with their replacement.

* guix/packages.scm (package-superseded, deprecated-package): New
procedures.
* gnu/packages.scm (%find-package): Check for 'package-superseded'.
* guix/scripts/package.scm (transaction-upgrade-entry)[supersede]: New
procedure.  Call it when 'package-superseded' is true.
* tests/guix-build.sh: Add test for a superseded package.
* tests/packages.scm ("package-superseded")
("transaction-upgrade-entry, superseded package"): New tests.
5239f3d9 — Ludovic Courtès 9 years ago
guix package: Build up the transaction incrementally.

* guix/scripts/package.scm (upgraded-manifest-entry): Rename to...
(transaction-upgrade-entry): ... this.  Add 'transaction' parameter and
return a transaction.
(options->installable): Likewise.
[to-upgrade]: Rename to...
[upgraded]: ... this, and change to be a transaction.  Return a
transaction.
(options->removable): Likewise.
(process-actions): Adjust accordingly.
* tests/packages.scm ("transaction-upgrade-entry, zero upgrades")
("transaction-upgrade-entry, one upgrade"): New tests.
dd721734 — Ludovic Courtès 9 years ago
guix package: Clarify upgrade code.

* guix/scripts/package.scm (upgradeable?): Rename to...
(upgraded-manifest-entry): ... this.  Change to take a <manifest-entry>
and to return a <manifest-entry>.
(options->installable)[to-upgrade]: Adjust accordingly.
4e49163f — Ludovic Courtès 9 years ago
guix build: Rewrite '--with-input' in terms of 'package-input-rewriting'.

* guix/scripts/build.scm (transform-package-inputs): Rewrite in terms of
'package-input-rewriting'.
7b44cae5 — Ludovic Courtès 9 years ago
services: shepherd: Add 'shepherd-service-upgrade', from 'guix system'.

* guix/scripts/system.scm (service-upgrade): Move to...
* gnu/services/shepherd.scm (shepherd-service-upgrade): ... here.
* tests/system.scm ("service-upgrade: nothing to do", "service-upgrade:
one unchanged, one upgraded, one new", "service-upgrade: service
depended on is not unloaded", "service-upgrade: obsolete services that
depend on each other"): Move to...
* tests/services.scm: ... here.  Adjust to 'service-upgrade' rename.
d4f8884f — Ludovic Courtès 9 years ago
guix system: Do not unload services depended on.

Reported by Mark H Weaver <mhw@netris.org>
at <https://lists.gnu.org/archive/html/guix-devel/2016-08/msg01470.html>.

* guix/scripts/system.scm (service-upgrade)[live-service-required?]: New
procedure.
[obsolete?]: Use it.
* tests/system.scm ("service-upgrade: service depended on is not
unloaded", "service-upgrade: obsolete services that depend on each
other"): New tests.
f20a7b86 — Ludovic Courtès 9 years ago
guix system: Use 'shepherd-service-lookup-procedure' in 'service-upgrade'.

* guix/scripts/system.scm (service-upgrade)[essential?]: SERVICE is now
a <live-service>.
[lookup-target, lookup-live, running?, stopped, obsolete?]: New
procedures.
[to-load, to-unload]: Use them.  TO-UNLOAD is now a list of
<live-service>.
(call-with-service-upgrade-info): Extract symbols from TO-UNLOAD.
* tests/system.scm ("service-upgrade: one unchanged, one upgraded, one
new"): Adjust accordingly.
b8692e46 — Ludovic Courtès 9 years ago
guix system: Extract and test the service upgrade procedure.

* guix/scripts/system.scm (service-upgrade): New procedure, with code
from...
(call-with-service-upgrade-info): ... here.  Use it.
* tests/system.scm (live-service, service-upgrade): New variables.
("service-upgrade: nothing to do", "service-upgrade: one unchanged, one
upgraded, one new"): New tests.
183605c8 — Ludovic Courtès 9 years ago
services: herd: Provide <live-service> objects.

* gnu/services/herd.scm (<live-service>): New record type.
(current-services): Change to return a single value: #f or a list of
<live-service>.
* guix/scripts/system.scm (call-with-service-upgrade-info): Adjust
accordingly.
* gnu/tests/base.scm (run-basic-test)["shepherd services"]: Adjust
accordingly.
83f18e06 — Eric Bavier 9 years ago
guix: lint: Check descriptions for trademark signs.

* guix/scripts/lint.scm (check-description-style): Emit a warning if
trademark signs found in description.
* tests/lint.scm (description: may not contain trademark signs): Add
test.
fd59105c — Roel Janssen 9 years ago
guix scripts: Disable grafting on dry runs.

* guix/scripts/archive.scm, guix/scripts/build.scm,
  guix/scripts/environment.scm, guix/scripts/system.scm,
  guix/scripts/package.scm: Disable grafting when a dry-run parameter is given.
c52bf877 — Mark H Weaver 9 years ago
system: Fix 'guix system' when root fs is named by UUID.

Fixes <https://bugs.gnu.org/23881>.

* guix/scripts/system.scm (previous-grub-entries)
(display-system-generation): Handle the case where the root device is
specified by UUID.
00677a7e — Ludovic Courtès 9 years ago
edit: Do not honor 'GUIX_BUILD_OPTIONS'.

* guix/scripts/edit.scm (guix-edit)[parse-arguments]: New procedure.
Use it.
9d1e56b7 — Ludovic Courtès 9 years ago
guix system: Fix the Shepherd error handling fix.

This is a followup to aa1e73a996ad170fecac848f203528aeb3d2173e.

* guix/scripts/system.scm (with-shepherd-error-handling): Return two
values when an exception is caught.
aa1e73a9 — Ludovic Courtès 9 years ago
guix system: Properly report Shepherd errors when upgrading services.

Fixes regression introduced in 8bf92e3904cb656d4c2160fc8befebaf21a65492.
Reported by myglc2 <myglc2@gmail.com> in <http://bugs.gnu.org/24135>.

* guix/scripts/system.scm (with-shepherd-error-handling): Rename 'body'
to 'mbody'.  Expand to a monadic procedure that runs MBODY.
8f9d70fc — David Craven 9 years ago
lint: 'inputs-should-be-native' checks for extra-cmake-modules and qttools.

* guix/scripts/lint.scm (check-inputs-should-be-native): Warn when
  extra-cmake-modules or qttools isn't a native-input.
9c97afe8 — David Craven 9 years ago
gnu-maintenance: Add KDE updater.

* guix/gnu-maintenance.scm (kde-package?, latest-kde-release): New private
  functions.
  (%kde-updater): New public variable.
* guix/scripts/refresh.scm (list-updaters): Add %kde-updater.
* doc/guix.texi (Invoking guix refresh): Mention the new updater.
Next