Age | Commit message (Expand) | Author |
2020-11-17 | installer: Fix device synchronization....Reported by Florian Pelz:
https://lists.gnu.org/archive/html/guix-devel/2020-11/msg00326.html.
* gnu/installer/utils.scm (call-with-time): New procedure,
(let/time): new macro.
* gnu/installer/parted.scm (with-delay-device-in-use?): Increase the retry
count to 16.
(non-install-devices): Remove the call to with-delay-device-in-use? as it
doesn't return the expected result, and would block much longer now.
(free-parted): Log the time required to sync each device.
| Mathieu Othacehe |
2020-11-08 | installer: parted: Add debug output....* gnu/installer/parted.scm (mkpart): Log partition creation.
| Mathieu Othacehe |
2020-11-07 | installer: parameters: Add a reboot button....Suggested by: zimoun <zimon.toutoune@gmail.com>.
* gnu/installer/newt/parameters.scm (run-parameters-page): Add a reboot
button.
| Mathieu Othacehe |
2020-11-07 | installer: Edit partitioning warning message....* gnu/installer/newt/partition.scm (draw-formatting-page): Add an extra new
line.
| Mathieu Othacehe |
2020-11-07 | installer: Limit listbox height....Fixes: <https://issues.guix.gnu.org/44428>.
* gnu/installer/newt.scm (init): Print screen size.
* gnu/installer/newt/page.scm (default-listbox-height): New variable.
(run-listbox-selection-page): Use it.
* gnu/installer/newt/wifi.scm (wifi-listbox-height): Ditto.
* gnu/installer/newt/network.scm (run-technology-page): Set the maximum
listbox height to 5.
* gnu/installer/newt/ethernet.scm (run-ethernet-page): Ditto.
* gnu/installer/newt/final.scm (run-config-display-page): Change listbox
height.
* gnu/installer/newt/partition.scm (run-disk-page): Ditto.
* gnu/installer/newt/welcome.scm (display-logo?): New procedure.
(run-menu-page): Use it.
* gnu/installer/steps.scm (%configuration-file-width): Remove it.
| Mathieu Othacehe |
2020-11-02 | installer: Report to the user the formatted partitions....* gnu/installer/newt/partitions.scm (define-module): Use (ice-9 format).
(draw-formatting-page): Add parameter partitions and provide the list of
formatted partitions to the user.
(run-partitioning-page): Provide user-partitions to draw-formatting-page.
| Miguel Ángel Arruga Vivas |
2020-11-01 | installer: parted: Internationalize the partition handling code....* gnu/installer/parted.scm (user-partition-description): Use 'format'
and 'G_' for i18n.
| Ludovic Courtès |
2020-10-30 | installer: Use UUIDs in the 'swap-devices' field....Note: This change requires an updated 'guix' package that contains
Linux-swap support in (gnu build file-systems).
* gnu/installer/parted.scm (user-partitions->configuration): Use UUIDs
in the 'swap-devices' field.
* gnu/installer/newt/final.scm (run-final-page)[wait-for-clients]: New
procedure. Use it.
* gnu/installer/tests.scm (choose-partitioning): Wait for
'starting-final-step' message and move configuration file dialog
handling to...
(conclude-installation): ... here. Send over PORT the reply
corresponding to 'starting-final-step'.
* gnu/tests/install.scm (gui-test-program): When ENCRYPTED? is false,
invoke 'swaplabel' in the marionette.
(installation-target-os-for-gui-tests): When ENCRYPTED? is false, except
a fixed UUID.
| Ludovic Courtès |
2020-10-28 | installer: Log partition formatting....* gnu/installer/newt/partition.scm (run-partitioning-page): Add 'syslog' call.
| Ludovic Courtès |
2020-10-23 | installer: Make the network management selection window tighter....* gnu/installer/newt/services.scm (run-network-management-page): Pass
#:listbox-height.
| Ludovic Courtès |
2020-10-19 | installer: Create bios_grub partition when it is needed....* gnu/installer/parted.scm (auto-partition!): Only check for ESP on EFI
installations.
| Miguel Ángel Arruga Vivas |
2020-10-13 | installer: Add Emacs EXWM desktop environment....Suggested by zenny via IRC.
* gnu/installer/services.scm (%system-services): Add emacs, emacs-exwm,
emacs-desktop-environment.
* etc/release-manifest.scm (%system-packages): Likewise.
* gnu/system/examples/lightweight-desktop.tmpl: Likewise.
* gnu/tests/install.scm (installation-target-desktop-os-for-gui-tests)
[packages]: Likewise
* gnu/installer/newt/services.scm (run-desktop-environments-cbt-page): Make
one entry taller.
| Jan (janneke) Nieuwenhuizen |
2020-09-21 | installer: Rename RUN-PARTIONING-PAGE....* gnu/installer/newt/partition.scm (run-partioning-page): Rename to
run-partitioning-page. Adjust all callers.
| Tobias Geerinckx-Rice |
2020-09-21 | installer: Fix docstring typoes....* gnu/installer/connman.scm (connman-state, run-locale-page)
(start-swapping, stop-swapping, run-installer-steps): Fix typo in
docstring.
| Tobias Geerinckx-Rice |
2020-09-10 | installer: final: Introduce call-with-mnt-container....* gnu/installer/final.scm (call-with-mnt-container): New procedure,
(install-system): use it instead of call-with-container, to make sure that the
container is not jailed.
| Mathieu Othacehe |
2020-09-02 | installer: Run the installation inside a container....When the store overlay is mounted, other processes such as kmscon, udev
and guix-daemon may open files from the store, preventing the
underlying install support from being umounted. See:
https://lists.gnu.org/archive/html/guix-devel/2018-12/msg00161.html.
To avoid this situation, mount the store overlay inside a container,
and run the installation from within that container.
* gnu/build/shepherd.scm (fork+exec-command/container): New procedure.
* gnu/services/base.scm (guix-shepherd-service): Support an optional PID
argument passed to the "start" method. If that argument is passed, ensure that
guix-daemon enters the given PID MNT namespace by using
fork+exec-command/container procedure.
* gnu/installer/final.scm (umount-cow-store): Remove it,
(install-system): run the installation from within a container.
* gnu/installer/newt/final.scm (run-install-shell): Remove the display hack.
| Mathieu Othacehe |
2020-08-06 | installer: Remove logical devices....If a device contains an active logical volume, BLKRRPART will report that the
device is busy. This will cause this device to be filtered by
"non-install-devices" procedure, which is not desired.
Make sure to deactivate all logical volumes before device probing.
Fixes <https://issues.guix.gnu.org/42683>.
* gnu/installer.scm (installer-program): Add lvm2-static to the inputs.
* gnu/installer/parted.scm (remove-logical-devices): New procedure,
(init-parted): call it.
| Mathieu Othacehe |
2020-07-26 | installer: Add NTFS support....This adds support for creating and editing NTFS partitions. It is however not
possible yet to create root NTFS partitions, as overlaying on top of a fuse
partition does not seem supported.
* gnu/installer.scm (installer-program): Add "ntfs-3g" to the inputs.
* gnu/installer/parted.scm (user-fs-type-name, user-fs-type->mount-type,
partition-filesystem-user-type, create-ntfs-file-system,
format-user-partitions): Add NTFS support.
* gnu/installer/newt/partition.scm (run-fs-type-page): Add NTFS support.
| Mathieu Othacehe |
2020-06-16 | installer: final: Remove restart-service procedure....* gnu/installer/final.scm (umount-cow-store): Remove "restart-service" that is
now provided by (gnu services herd).
| Mathieu Othacehe |
2020-06-14 | installer: final: Make sure 'bold' font files are loaded....* gnu/installer/newt/final.scm (run-install-shell): Force kmscon to open
'bold' font files, before the cow-store overlay is mounted.
| Mathieu Othacehe |
2020-06-13 | install: final: Add some logging....* gnu/installer/final.scm (umount-cow-store): Add some logging.
| Mathieu Othacehe |
2020-06-09 | installer: final: Dump "guix system init" command output when testing....When debugging the installation tests, it can be very handy to be able to read
"guix system init" command output.
* gnu/installer/final.scm (install-system): Dump installation command output
to the console when running the installation tests.
| Mathieu Othacehe |
2020-06-09 | installer: final: Remove left-over pk call....* gnu/installer/final.scm (kill-cow-users): Remove pk call.
| Mathieu Othacehe |
2020-06-09 | Revert "installer: utils: Dump command output to syslog when testing."...This reverts commit f73ed5579157a074093bae7a2ffb59a85412be0d. This was pushed
by error, as this is not reviewed yet.
| Mathieu Othacehe |
2020-06-09 | installer: utils: Dump command output to syslog when testing....When debugging the installation tests, it can be very handy to be able to read
"run-command" output, for instance when executing "guix system init".
Introduce a new "invoke-with-log" procedure that is able to log a command
standard and error outputs to the syslog. Use it, only when running the
installation tests, to dump "run-command" output.
* gnu/installer/utils.scm (open-pipe-with-stderr, invoke-with-log): New
procedures,
(invoke-log-port): new variable,
(run-command): move to the end of the file and use invoke-with-log when
running the installation tests.
| Mathieu Othacehe |
2020-06-05 | installer: final: Add some extra logging....* gnu/installer/final.scm (kill-cow-users): Log the killed process name,
(umount-cow-store): inform that we are umounting the cow-store.
| Mathieu Othacehe |
2020-04-19 | installer: connman: Fix Wifi connection....Issue reported by SergioBG here:
https://lists.gnu.org/archive/html/bug-guix/2020-04/msg00432.html.
Due to default buffering mode, the installer was reading from the pipe without
having actually written a command before.
* gnu/installer/connman.scm (connman-connect-with-auth): Set pipe buffering
mode to 'line.
| Mathieu Othacehe |
2020-04-10 | installer: tests: Don't install to a CD/DVD....* gnu/installer/tests.scm (choose-partitioning): Use 'find' to select
the disk.
| Ludovic Courtès |
2020-04-10 | gnu: installer: Fix issue with "Esperanto" locale....According to glibc manual, locale are under the following form:
language[_territory[.codeset]][@modifier]
The esperanto locale "epo" does not have a territory. Modify run-command to
take this into account.
Reported by Alex Sassmannshausen here:
https://lists.gnu.org/archive/html/guix-devel/2020-04/msg00192.html.
* gnu/installer/utils.scm (run-command): Handle locale without territory such
as "epo".
| Mathieu Othacehe |
2020-04-09 | installer: Include empty variant in keyboard layout selection....Previously for Azerbaijani, no Latin layout but only the Cyrillic variant
could be selected.
* gnu/installer/newt/keymap.scm (add-empty-variant): New procedure.
(run-keymap-page): Use it to insert an empty variant.
| Florian Pelz |
2020-04-09 | installer: Allow Alt+Shift toggle from non-Latin keyboard layouts....Fixes <https://bugs.gnu.org/40493>.
* gnu/installer/newt/keymap.scm (%non-latin-layouts): New variable.
(%non-latin-variants): New variable.
(%latin-layout+variants): New variable.
(toggleable-latin-layout): New procedure to compute combined layouts.
(run-keymap-page): Use it.
(keyboard-layout->configuration): Apply it in config.scm.
(run-layout-page): Mention Alt+Shift.
* gnu/installer/keymap.scm (kmscon-update-keymap): Pass on XKB options.
* gnu/installer/record.scm (<installer>): Adjust code comments.
* gnu/installer.scm (apply-keymap): Pass on XKB options.
(installer-steps): Adjust code comments.
* gnu/packages/patches/kmscon-runtime-keymap-switch.patch: Apply XKB options.
| Florian Pelz |
2020-04-08 | installer: Add proxy support....* gnu/installer/proxy.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer/newt/parameters.scm (run-proxy-page): New procedure,
(run-parameters-page): add the previous procedure to the parameters menu.
| Mathieu Othacehe |
2020-04-08 | installer: Turn help menu into parameters menu....* gnu/local.mk (INSTALLER_MODULES): Rename help.scm into parameters.scm.
* po/guix/POTFILES.in: Ditto.
* gnu/installer/record.scm (<installer>): Rename help-menu into parameter-menu
and help-page into parameters-page.
* gnu/installer/newt/parameters.scm: Renamed from help.scm. Update information
messages.
* gnu/installer/newt.scm: Update accordingly.
* gnu/installer/newt/keymap.scm: Ditto.
| Mathieu Othacehe |
2020-04-07 | installer: Reduce height of the help window....* gnu/installer/newt/help.scm (run-help-page): Pass #:listbox-height.
| Ludovic Courtès |
2020-04-06 | installer: Adapt to Guile-newt revision 2....* gnu/installer/newt/page.scm (run-input-page): Remove component argument that
is not longer passed to the procedure passed to 'add-component-callback',
(run-listbox-selection-page): ditto.
* gnu/installer/newt/user.scm (run-user-add-page): Ditto,
(run-user-add-page): ditto.
| Mathieu Othacehe |
2020-04-06 | installer: Add a help page....* gnu/installer/newt/help.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer/record.scm (<installer>): Add 'help-menu' and 'help-page'
fields,
(installer-help-menu, installer-help-page): new exported procedures.
* gnu/installer/newt.scm (init): Set the help line,
(help-menu, help-page): new procedures used ...
(newt-installer): ... here.
* gnu/installer/newt/keymap.scm (run-layout-page): Add a context argument to
differenciate the help context from the main one,
(run-keymap-page): add a context argument and pass it to run-layout-page.
* gnu/installer.scm (compute-keymap-step): Add a context argument and pass it
to 'installer-keymap-page',
(installer-steps): set the help menu and pass the appropriate context to
compute-keymap-step calls,
(guile-newt): update to revision 2.
| Mathieu Othacehe |
2020-03-26 | installer: tests: Use a filter to select desktop-environments....* gnu/installer/tests.scm (choose-services): Turn desktop-environments list
into a choose-desktop-environment procedure. This way, it is easier to select
all desktop-environments or none, in the same way as choose-network-service?
and choose-network-management-tool? arguments.
| Mathieu Othacehe |
2020-03-23 | installer: Fix cow-store umount issue....* gnu/installer/final.scm (kill-cow-users): Ignore exception that could be
raised if a process disappears between reading its pid and its maps file.
| Mathieu Othacehe |
2020-03-05 | installer: Fix cow-store umount....This fixes <https://bugs.gnu.org/39712>.
The guix-daemon was preventing the cow-store umount, so restart it. Some
udevd workers, using cow-store files might also still be around, so have some
umount retries.
* gnu/installer/final.scm (kill-cow-users): New procedure,
(umount-cow-store): restart guix-daemon and kill all processes started from
within the cow-store before trying to umount the store overlay. Also try 5
times to umount the overlay in case it is still busy.
| Mathieu Othacehe |
2020-03-05 | tests: install: Add "gui-installed-os"....* gnu/installer/tests.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* gnu/tests/install.scm (run-install): Add #:gui-test. Add (gnu
installer tests) to the marionette imported modules. Honor GUI-TEST.
Check whether SCRIPT is true.
(%root-password, %syslog-conf): New variable.
(operating-system-with-console-syslog, gui-test-program)
(guided-installation-test): New procedures.
(%extra-packages, installation-os-for-gui-tests)
(%test-gui-installed-os): New variable.
| Ludovic Courtès |
2020-03-05 | installer: Honor /tmp/installer-system-init-options....* gnu/installer/final.scm (install-system): Honor
"/tmp/installer-system-init-options".
| Ludovic Courtès |
2020-03-05 | installer: Run commands without hopping through the shell....* gnu/installer/utils.scm (run-shell-command): Rename to...
(run-command): Remove call to 'call-with-temporary-output-file' and hop
through Bash. Expect COMMAND to be a list of strings rather than a
string.
* gnu/installer/final.scm (install-system): Turn INSTALL-COMMAND into a
list of strings and pass it to 'run-command'.
* gnu/installer/newt/page.scm (edit-file): Likewise.
| Ludovic Courtès |
2020-03-05 | installer: Bypass connectivity check when /tmp/installer-assume-online exists....This is useful for automated tests.
* gnu/installer/newt/network.scm (wait-service-online)[online?]: New
procedure. Check for /tmp/installer-assume-online.
Use it instead of 'connman-online?'.
| Ludovic Courtès |
2020-03-05 | installer: Implement a dialog on /var/guix/installer-socket....This will allow us to automate testing of the installer.
* gnu/installer/utils.scm (%client-socket-file)
(current-server-socket, current-clients): New variables.
(open-server-socket, call-with-server-socket): New procedure.
(with-server-socket): New macro.
(run-shell-command): Add call to 'send-to-clients'. Select on both
current-input-port and current-clients.
* gnu/installer/steps.scm (run-installer-steps): Wrap 'call-with-prompt'
in 'with-socket-server'. Call 'sigaction' for SIGPIPE.
* gnu/installer/newt/page.scm (watch-clients!, close-port-and-reuse-fd)
(run-form-with-clients, send-to-clients): New procedures.
(draw-info-page): Add call to 'run-form-with-clients'.
(run-input-page): Likewise. Handle EXIT-REASON equal to 'exit-fd-ready.
(run-confirmation-page): Likewise.
(run-listbox-selection-page): Likewise. Define 'choice->item' and use it.
(run-checkbox-tree-page): Likewise.
(run-file-textbox-page): Add call to 'run-form-with-clients'. Handle
'exit-fd-ready'.
* gnu/installer/newt/partition.scm (run-disk-page): Pass
#:client-callback-procedure to 'run-listbox-selection-page'.
* gnu/installer/newt/user.scm (run-user-page): Call
'run-form-with-clients'. Handle 'exit-fd-ready'.
* gnu/installer/newt/welcome.scm (run-menu-page): Define
'choice->item' and use it. Call 'run-form-with-clients'.
* gnu/installer/newt/final.scm (run-install-success-page)
(run-install-failed-page): When (current-clients) is non-empty, call
'send-to-clients' without displaying a choice window.
| Ludovic Courtès |
2020-02-22 | installer: Log important bits to syslog....* gnu/installer.scm (installer-program): Log crashes with 'syslog'.
* gnu/installer/parted.scm (luks-format-and-open, luks-close)
(mount-user-partitions, umount-user-partitions): Add 'syslog' calls.
* gnu/installer/steps.scm (run-installer-steps): Log the running step
with 'syslog'.
* gnu/installer/utils.scm (run-shell-command): Add calls to 'syslog'.
| Ludovic Courtès |
2020-02-22 | installer: Add 'syslog' macro to write to syslog....* gnu/installer/utils.scm (open-syslog-port, syslog-port): New
procedures.
(syslog): New macro.
| Ludovic Courtès |
2020-02-12 | installer: Fix installer restart dialog....* gnu/installer/newt/final.scm (run-install-failed-page): Propose between
installer resume or restart. Do actually resume the installation by raising an
&installer-step-abort condition if "Resume" button is pressed. Otherwise, keep
going as the installer will be restarted by login.
* gnu/installer.scm (installer-program): Remove the associated TODO comment.
| Mathieu Othacehe |
2020-02-12 | installer: Remove the cow-store overlay after system installation....Fixes <https://issues.guix.info/issue/39217>.
Fixes <https://issues.guix.info/issue/38447>.
* gnu/installer/final.scm (umount-cow-store): New procedure ...,
(install-system): ... used here, to remove the store overlay so that the
target device is not seen as busy during further umount calls.
| Mathieu Othacehe |
2020-01-23 | installer: Make "TRANSLATORS" comment visible....* gnu/installer/newt/user.scm (run-root-password-page): Move
"TRANSLATORS" comment right above 'G_' call.
| Ludovic Courtès |
2020-01-20 | installer: Disable F12 hot key....Fixes <https://bugs.gnu.org/38562>.
Reported by Brice Waegeneire <brice@waegenei.re>.
Previously, pressing F12 or shift-F2 in one of those forms would cause
it to exit, usually with the default value #t because the caller had not
provided a useful hotkey "callback".
* gnu/installer/newt/page.scm (run-input-page, run-confirmation-page)
(run-listbox-selection-page, run-checkbox-tree-page)
(run-file-textbox-page): Pass #:flags FLAG-NOF12 to 'make-form'.
| Ludovic Courtès |