Commit graph

39024 commits

Author SHA1 Message Date
Mathieu Othacehe
dc5f3275ec
installer: Add configuration formatter.
* gnu/installer.scm (installer-steps): Add configuration-formatter procedures.
* gnu/installer/final.scm: New file.
* gnu/installer/locale.scm (locale->configuration): New exported procedure.
* gnu/installer/newt.scm (newt-installer): Add final page.
* gnu/installer/newt/final.scm: New file.
* gnu/installer/record.scm (installer): Add final-page field.
* gnu/installer/timezone.scm (posix-tz->configuration): New exported
procedure.
* gnu/installer/steps.scm (installer-step): Rename configuration-proc field to
configuration-formatter.
(%installer-configuration-file): New exported parameter,
(%installer-target-dir): ditto,
(%configuration-file-width): ditto,
(format-configuration): new exported procedure,
(configuration->file): new exported procedure.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
3ad8f7757c
installer: Add new utils.
* gnu/installer/utils.scm (nearest-exact-integer): New exported procedure,
(read-percentage): ditto,
(run-shell-command): ditto.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
5cdb6bd2db
installer: Remove "selection" from all titles.
* gnu/installer/newt/hostname.scm (run-hostname-page): Remove selection from
page title,
(run-variant-page): ditto.
* gnu/installer/newt/keymap.scm (run-layout-page): Ditto.
* gnu/installer/newt/locale.scm (run-layout-page): Ditto,
(run-territory-page): ditto,
(run-codeset-page): ditto,
(run-modifier-page): ditto
* gnu/installer/newt/network.scm (run-territory-page): Ditto.
* gnu/installer/newt/timezone.scm (run-timezone-page): Ditto.
* gnu/installer/newt/wifi.scm (run-wifi-page): Ditto.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
983abd2cf9
file-systems: Export read-partition-label and read-partition-uuid.
* gnu/build/file-systems.scm (read-partition-label): Export it,
(read-partition-uuid): ditto.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
a8307a178b
gnu: Add guile-parted.
* gnu/packages/guile.scm (guile-parted): New variable.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
7e3e6d721d
gnu: guile-newt: Update to revision 4.
* gnu/packages/guile.scm (guile-newt): Update to revision 4.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
ca0c43ecf0
services: herd: Allow to pass arguments to start-service.
* gnu/services/herd.scm (start-service)[arguments]: New optional argument.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
b08bea0497
build: syscalls: Add device-in-use?.
This new procedure uses BLKRRPART to determine whether or not a device is
busy. It is useful when a device does not appear as mounted but is maybe used
by the kernel. This is the case with overlayfs lowerdir backend device for
example.

* guix/build/syscalls.scm (device-in-use?): New exported procedure.
2019-01-17 14:04:22 +01:00
Mathieu Othacehe
4f83afd28a
tests: Rename %test-encrypted-os to %test-encrypted-root-os.
* gnu/tests/install.scm (%test-encrypted-os): Rename to
%test-encrypted-root-os for consistency with its system-test name.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
6b48825e4b
installer: Fix locale installation.
For some mysterious reason, calling 'setlocale' as first instruction of
installer-builder does not install unicode support correctly. So set LANG env
variable and start the installer until this is understood.

* gnu/installer.scm (installer-program): Wrap installer-builder to have the
opportunity to set LANG environment variable before starting the installer.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
a49d633c0c
installer: Move everything to the build side.
* gnu/installer.scm: Rename to ...
* gnu/installer/record.scm: ... this.
* gnu/installer/build-installer.scm: Move everything to the build side and
rename to gnu/installer.scm.
* gnu/installer/newt.scm: Remove all the gexps and add depencies to newt
modules as this code will only be used on the build side by now.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adapt it,
(dist_installer_DATA): New rule to install installer's aux-files.
* gnu/system/install.scm (%installation-services): Use only
'installer-program' from (gnu installer). The installer is now choosen on the
build side.
* guix/self.scm (*system-modules*): Restore previous behaviour and add all
installer files to #:extra-files field of the scheme-node.
* po/guix/POTFILES.in: Adapt it.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
113bdf6ae1
installer: Rewrite welcome page.
The welcome page is the only page using absolute positioning for the newt
components, so that the page occupies all the screen space. This is becoming
too hard to manage, so switch to grid management like elsewhere, even if the
result is less appealing.

Also add an info text to the page with a mention on how to switch back to the
original installer.

* gnu/installer/newt/welcome.scm (run-menu-page): Use a vertically stacked
grid instead of hard window placement.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
a79617468e
gnu: installer: Launch the installer as kmscon login-program.
Source /etc/environment just before starting the installer. The login program
is supposed to load the environment variables of this file through PAM, but as
we replace it by the installer, they are no longer available. This is mostly
useful for the LANG environment variable.

* gnu/installer/build-installer.scm (installer-program-launcher): New exported
procedure.
* gnu/system/install.scm (%installation-services): Restore most of the origin
code. kmscon is only started on TTY1, and the graphical installer is the
login-program.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
16006a05a1
guix: self: Do not install (gnu system install).
As we do not want to add a dependency to newt and the graphical installer
in (guix self), do not install (gnu system install).

* guix/self.scm (*system-modules*): Remove (gnu system install) from
"guix-system" scheme-node.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
2e7addd20b
doc: Document the graphical installer.
* doc/guix.texi (Preparing for Installation): Mention the graphical installer.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
7d328e341a
configure: Disable installer build by default.
Only build installer if "--enable-installer" is passed. In that case only, the
support for Guile-newt becomes mandatory.

* configure.ac: Add --enable-installer argument. Export ENABLE_INSTALLER
conditional according to the argument value.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove installer modules and build them
only if ENABLE_INSTALLER is set.
2019-01-17 14:04:21 +01:00
Mathieu Othacehe
9b9a5e3283
installer: newt: Locate the logo within local-file.
* gnu/installer/newt.scm (logo): Remove it,
(welcome-page): Use a relative path to locate the logo.
2019-01-17 14:04:20 +01:00
Mathieu Othacehe
ba32109a28
installer: newt: Use scheme-modules* instead of scheme-modules.
* gnu/installer/newt.scm (modules): Use scheme-modules*.
2019-01-17 14:04:20 +01:00
Mathieu Othacehe
d0f3a672dc
gnu: Add graphical installer support.
* configure.ac: Require that guile-newt is available.
* gnu/installer.scm: New file.
* gnu/installer/aux-files/logo.txt: New file.
* gnu/installer/build-installer.scm: New file.
* gnu/installer/connman.scm: New file.
* gnu/installer/keymap.scm: New file.
* gnu/installer/locale.scm: New file.
* gnu/installer/newt.scm: New file.
* gnu/installer/newt/ethernet.scm: New file.
* gnu/installer/newt/hostname.scm: New file.
* gnu/installer/newt/keymap.scm: New file.
* gnu/installer/newt/locale.scm: New file.
* gnu/installer/newt/menu.scm: New file.
* gnu/installer/newt/network.scm: New file.
* gnu/installer/newt/page.scm: New file.
* gnu/installer/newt/timezone.scm: New file.
* gnu/installer/newt/user.scm: New file.
* gnu/installer/newt/utils.scm: New file.
* gnu/installer/newt/welcome.scm: New file.
* gnu/installer/newt/wifi.scm: New file.
* gnu/installer/steps.scm: New file.
* gnu/installer/timezone.scm: New file.
* gnu/installer/utils.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add previous files.
* gnu/system.scm: Export %root-account.
* gnu/system/install.scm (%installation-services): Use kmscon instead of linux
VT for all tty.
(installation-os)[users]: Add the graphical installer as shell of the root
account.
[packages]: Add font related packages.
* po/guix/POTFILES.in: Add installer files.
2019-01-17 14:04:20 +01:00
Mathieu Othacehe
08af580bde
gnu: kmscon: Add runtime keymap update support.
* gnu/packages/patches/kmscon-runtime-keymap-switch.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/terminals.scm (kmscon)[source]: Add patch.
2019-01-17 14:04:20 +01:00
Mathieu Othacehe
76421cf0d2
services: kmscon: Remove virtual-terminal requirement.
kmscon does not require that virtual terminals run in UTF-8 mode.

* gnu/services/base.scm (kmscon-service-type): Remove virtual-terminal from
requirement list.
2019-01-17 14:04:20 +01:00
Mathieu Othacehe
15f0719e67
guile: newt: Update revision to 3.
* gnu/packages/guile.scm (guile-newt): Update revision to 3.
2019-01-17 14:04:20 +01:00
Gabriel Hondet
57cd7d92d8
gnu: Add ghc-tldr.
* gnu/packages/haskell.scm (ghc-tldr): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-01-17 14:04:20 +01:00
Marius Bakke
073f5f2057
Revert "Revert "gnu: man-db: Embed absolute reference to 'preconv'.""
This reverts commit ccb15b343e.

Now that we've fixed the segfault with groff's preconv (see
73b2ce8795), it's safe to re-apply this fix.
2019-01-17 12:29:40 +01:00
Pierre Neidhardt
3d540c48e7
gnu: Add emacs-edbi-sqlite.
* gnu/packages/emacs-xyz.scm (emacs-edbi-sqlite): New variable.
2019-01-17 12:20:55 +01:00
Pierre Neidhardt
c010ec65ae
gnu: Add emacs-edbi.
* gnu/packages/emacs-xyz.scm (emacs-edbi): New variable.
2019-01-17 12:20:54 +01:00
Pierre Neidhardt
8c98ce92b9
gnu: Add emacs-epc.
* gnu/packages/emacs-xyz.scm (emacs-epc): New variable.
2019-01-17 12:20:54 +01:00
Pierre Neidhardt
3e1fcc5ef4
gnu: Add emacs-ctable.
* gnu/packages/emacs-xyz.scm (emacs-ctable): New variable.
2019-01-17 12:20:54 +01:00
Pierre Neidhardt
5544a07fb5
gnu: Add emacs-e2wm.
* gnu/packages/emacs-xyz.scm (emacs-e2wm): New variable.
2019-01-17 12:20:54 +01:00
Pierre Neidhardt
9830f1a249
gnu: Add emacs-window-layout.
* gnu/packages/emacs-xyz.scm (emacs-window-layout): New variable.
2019-01-17 12:20:54 +01:00
Pierre Neidhardt
2c114220aa
gnu: Add perl-rpc-epc-service.
* gnu/packages/libevent.scm (perl-rpc-epc-service): New variable.
2019-01-17 12:20:54 +01:00
Pierre Neidhardt
cbffb56cd4
gnu: Add perl-data-sexpression.
* gnu/packages/perl.scm (perl-data-sexpression): New variable.
2019-01-17 12:20:54 +01:00
Danny Milosavljevic
73b2ce8795
gnu: groff-minimal: Disable relocatability.
* gnu/packages/groff.scm (groff-minimal)[arguments]<#:phases>
[disable-relocatability]: New phase.
2019-01-17 10:07:07 +01:00
Gabriel Hondet
6c4a951a6e
gnu: gauche: Remove number of packages from description.
* gnu/packages/scheme.scm (gauche)[description]: Remove number of packages.
[arguments]: Remove useless code.
2019-01-17 08:24:30 +01:00
Hartmut Goebel
2615ee9520
gnu: kwindowsystem: Enable test-suite.
* gnu/package/kde-frameworks.scm(kwindowsystem)
  [inputs]: Add openbox.
  [arguments] <#:tests?> Remove.
  <#:phases> 'blacklist-failing-tests: New phase.
  <#:phases> 'check: Start openbox, don't set QT_PLUGIN_PATH, use invkove,
  simplify and cleanup code. No longer move 'check behind install.
2019-01-17 00:19:33 +01:00
Hartmut Goebel
e11553f742
gnu: knewstuff: Enable test-suite.
Without anything changed the test-suite now passes, thus can be enabled.

* gnu/package/kde-frameworks.scm(knewstuff)[arguments]<#:tests?>: Remove.
2019-01-17 00:19:33 +01:00
Hartmut Goebel
048c557d66
gnu: kemoticons: Enable test-suite.
Without anything changed the test-suite now passes, thus can be enabled.

* gnu/package/kde-frameworks.scm(kemoticons)[arguments]<#:tests?>: Remove.
2019-01-17 00:19:33 +01:00
Hartmut Goebel
8c81e9f2db
gnu: kpackage: Enable test-suite.
* gnu/package/kde-frameworks.scm(kpackage)[arguments]
  <#:tests?>: Remove. <#:phases>: Add phase 'patch-tests.
2019-01-17 00:19:33 +01:00
Hartmut Goebel
6ca3218812
gnu: kirigami: Enable test-suite.
The error which inhibited running the tests no longer occurs
in 5.49.0, although now no tests are found at all.  Since no tests
are found now, the phase 'check-setup can be removed, too,
and thus the 'arguments' at all.

* gnu/packages/kde-frameworks.scm(kirigami)[arguments]: Remove.
2019-01-17 00:19:32 +01:00
Hartmut Goebel
2d4589ffb9
gnu: kcoreaddons: Enable test-suite.
Enable running the tests and blacklist the one failing test.

* gnu/package/kde-frameworks.scm(kcoreaddons)[arguments]
  <#:tests?>: Remove. <#:phases>: Add phase 'blacklist-failing-test.
2019-01-17 00:19:32 +01:00
Julien Lepiller
22fe911061
gnu: php: Update to 7.3.1.
* gnu/packages/php.scm (php): Update to 7.3.1.
2019-01-16 20:35:41 +01:00
Gabriel Hondet
4d390cad25
gnu: Add ocaml-ppxlib.
* gnu/packages/ocaml.scm (ocaml-ppxlib): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:44 +01:00
Gabriel Hondet
3f623d00a7
gnu: Add ocaml-ppx-derivers.
* gnu/packages/ocaml.scm (ocaml-ppx-derivers): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:37 +01:00
Gabriel Hondet
b5bab81c10
gnu: Add ocaml-migrate-parsetree.
* gnu/packages/ocaml.scm (ocaml-migrate-parsetree): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:35 +01:00
Gabriel Hondet
ac06a773f5
gnu: Add ocaml-compiler-libs.
* gnu/packages/ocaml.scm (ocaml-compiler-libs): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:33 +01:00
Gabriel Hondet
22074259d2
gnu: Add ocaml-base.
* gnu/packages/ocaml.scm (ocaml-base): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:30 +01:00
Gabriel Hondet
7cca1fd400
gnu: Add ocaml-sexplib.
* gnu/packages/ocaml.scm (ocaml-sexplib): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:28 +01:00
Gabriel Hondet
7726124ae2
gnu: Add ocaml-parsexp.
* gnu/packages/ocaml.scm (ocaml-parsexp): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:26 +01:00
Gabriel Hondet
5fa01e8aaa
gnu: Add ocaml-sexplib0.
* gnu/packages/ocaml.scm (ocaml-sexplib0): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-01-16 20:08:21 +01:00
Efraim Flashner
5f2122fb21
gnu: gnurl: Add properties for updater.
* gnu/packages/gnunet.scm (gnurl)[properties]: New field.
2019-01-16 19:48:02 +02:00