Adélie Linux issueshttps://git.adelielinux.org/groups/adelie/-/issues2023-10-29T07:32:50Zhttps://git.adelielinux.org/adelie/horizon/-/issues/341Add `postscript` key for running commands after installation is successful2023-10-29T07:32:50ZA. WilcoxAdd `postscript` key for running commands after installation is successful## User class
"Jamie", "River"
## Desire
Ability to run a script inside the new environment after installation has completed successfully.
## Intent
1. Post-installation configuration, such as configuring Kerberos, SSH, or other remote...## User class
"Jamie", "River"
## Desire
Ability to run a script inside the new environment after installation has completed successfully.
## Intent
1. Post-installation configuration, such as configuring Kerberos, SSH, or other remote services.
2. Running initial configuration management commands, such as `puppet ssl bootstrap` or such.
3. Preparing the environment for first boot in some other way.
## Impact
There should be no inter-dependency with other keys.
## Requirements to add
### Validation phase
Zero or more `postscript` keys may be present. Each one must be either a full path which is resolvable in the installation environment, or a fetchable URL.
If any `postscript` value is inaccessible, script validation shall fail.
### Execution phase
Each `postscript` key is executed in order. Inherited `postscript` keys will be run in order of inheritance.
## Proposed implementation
Each script will be copied to a `tmpfs` which is read-only and bind-mounted to the target root at `/var/horizon/postscripts`. The script will be executed with `chroot`. At the end of execution of all `postscript` keys, the scripts are copied to the target root at `/var/horizon/postscripts`. This facilitates the user being able to inspect the scripts that were used to provision their system.
The directory will be owned by `root:wheel` and have `0770` permissions, so that any sensitive material in the scripts cannot be read by non-privileged users.0.9.9A. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/339ISO images are not read properly by Rufus2023-10-17T01:36:38ZA. WilcoxISO images are not read properly by Rufus`adelie-live-kde-pmmx-1.0-rc2.iso` is read in the following way by Rufus 3.21.1949:
```
Scanning image...
ISO analysis:
Image is an ISO9660 image
Detected EFI bootloader(s) (from '/efi.img'):
● 'boot.efi'
● 'bootia32.efi'
...`adelie-live-kde-pmmx-1.0-rc2.iso` is read in the following way by Rufus 3.21.1949:
```
Scanning image...
ISO analysis:
Image is an ISO9660 image
Detected EFI bootloader(s) (from '/efi.img'):
● 'boot.efi'
● 'bootia32.efi'
Disk image analysis:
Image has an unknown Master Boot Record
Image is a bootable disk image
ISO label: 'Adelie-pmmx'
Size: 1.6 GB (Projected)
Uses: EFI
Using image: adelie-live-kde-pmmx-1.0-rc2.iso (1.6 GB)
```
This only allows UEFI boot on 32-bit systems, which is not very common; as far as I'm aware, only some Transformer tablets and MacBooks can even _use_ 32-bit EFI. The same happens when the x86_64 ISO, but that is not as much of an issue as most 64-bit x86 systems can boot UEFI.0.9.9https://git.adelielinux.org/adelie/horizon/-/issues/337UI: Allow choosing signing key location2023-10-29T07:21:28ZA. WilcoxUI: Allow choosing signing key locationWe currently don't expose the `signingkey` keyword from the UI. It should probably be included as one of the Advanced Options.We currently don't expose the `signingkey` keyword from the UI. It should probably be included as one of the Advanced Options.0.9.9A. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/332Add `mirror` key for selecting where the system installs from2023-10-17T01:38:39ZA. WilcoxAdd `mirror` key for selecting where the system installs from## User class
"Jamie"
## Desire
Ability to select a different mirror than `distfiles.adelielinux.org`.
## Intent
1. Local package mirror to save on bandwidth costs or time.
2. Running an install against `next` domain.
3. Custom package...## User class
"Jamie"
## Desire
Ability to select a different mirror than `distfiles.adelielinux.org`.
## Intent
1. Local package mirror to save on bandwidth costs or time.
2. Running an install against `next` domain.
3. Custom package mirror run locally with different versions of packages or a different architecture.
* Tier 3 arches that don't have packages on mirror would require this as well.
## Impact
The `repository` key can already provide this functionality to a point, but the `mirror` key would simplify the case where `system` and `user` repositories are desired and additionally allows `version` to be changed separately from `repository`.
## Requirements to add
### Validation phase
Zero or one `mirror` may be present. More than one will be considered an error. If present, must be valid `https://` URL.
Similar to `version`, this is ignored if `repository` is specified.
### Execution phase
Controls the URL for the default repositories. Replaces `https://distfiles.adelielinux.org/adelie/` entirely.
## Proposed implementation
`mirror` will have a 'default' value of `https://distfiles.adelielinux.org/adelie/`, and the default repository selector will be changed to use the value of `mirror` for the URL.0.9.9A. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/326"Custom" installation option doesn't install X11 when a DE is selected [1.0rc2]2023-10-17T01:42:25ZTiago Silva"Custom" installation option doesn't install X11 when a DE is selected [1.0rc2]I think I'm interpreting this correctly.
I chose a Custom Install in Horizon, with the options:
- Desktop Environments
- KDE
- Documentation
- Internet Software
Horizon finished the install and I booted into the new system: never reac...I think I'm interpreting this correctly.
I chose a Custom Install in Horizon, with the options:
- Desktop Environments
- KDE
- Documentation
- Internet Software
Horizon finished the install and I booted into the new system: never reached GUI, VTY 7 only had a blinking cursor
Opened another VTY and tried `$ startx` and `# startx`: "not found"
Tried again with the same options and this time saved the installfile and opened it to check what's being installed:
!["Custom" installfile](/uploads/61fc2c642977c0f6b649354339276e0b/AdelieKDE-2021-09-16-00-49-01.png)
Installed a "Standard" configuration and opened the installfile to compare:
!["Standard" installfile](/uploads/f4ddbcc50cf0c58a589050ee48f700e0/AdelieKDE-2021-09-16-00-20-30.png)
`X11` and `sddm` packages are being installed on "Standard" but are missing on "Custom"
Shouldn't the selection of any item from "Desktop Environments" or "Windows Managers" automatically add X11 (and probably sddm as well, to manage the DE)?0.9.9https://git.adelielinux.org/adelie/horizon/-/issues/325Doesn't detect Network Connection on PPC KDE image2023-10-21T06:15:28ZAditya TulahalliDoesn't detect Network Connection on PPC KDE imageThis may be 2/3 separate issues, but I'll document the whole thing here anyway.
So first of all, ethernet connection doesn't work out of the box on a 1.5 ghz Powerbook, may have something to do with wpa_supplicant not starting somehow t...This may be 2/3 separate issues, but I'll document the whole thing here anyway.
So first of all, ethernet connection doesn't work out of the box on a 1.5 ghz Powerbook, may have something to do with wpa_supplicant not starting somehow triggering dhcpcd to not start. I originally created the eth0 service as documented [here](https://help.adelielinux.org/html/admin/networking.html), enabled it, and started it. Which seemed to connect me to the internet (ping worked, package management in the form of apk add and apk update/upgrade worked where it hadn't worked before)
But when I went to complete the install via horizon, it still got stuck at the part where I need to connect to the internet. the dhcpcd logs didn't exist either. I then started dhcpcd in the terminal (by simply typing dhcpcd) and tried again. Starting dhcpcd seemed to succeed, but Horizon still got stuck at the part where I supposedly needed to connect to the internet (I selected automatic connection) and once again, there were no logs for horizon to speak of.
So firstly, ethernet doesn't work out of the box on the ppc live image on what I think is a powerbook 5,4. Secondly, Horizon doesn't seem to properly detect when I've connected to the internet. And Thirdly, there are no dhcpcd logs for Horizon in the place indicated by Horizon (clicking the button leads to a blank page, and looking via the terminal at the file location reveals that it doesn't exist).0.9.9https://git.adelielinux.org/adelie/horizon/-/issues/324"Compact" installation option fails (maybe while installing consolefonts) [1....2023-10-17T01:46:46ZTiago Silva"Compact" installation option fails (maybe while installing consolefonts) [1.0rc2]The mentioned installation option fails consistently.
Hardware is VirtualBox, Linux-64bit (Other), 1GB RAM, BIOS.
Can't extract text file of installation logs, so I hope you don't mind the attached screenshots:
![Horizon script error #1]...The mentioned installation option fails consistently.
Hardware is VirtualBox, Linux-64bit (Other), 1GB RAM, BIOS.
Can't extract text file of installation logs, so I hope you don't mind the attached screenshots:
![Horizon script error #1](/uploads/6c3eee1897669ba1bdb4b2ef413be188/VirtualBox_Adelie_LXQt_12_09_2021_20_10_19.png)
![Horizon script error #2](/uploads/2c8f7b78fbe527e1a7b268243605d861/VirtualBox_Adelie_LXQt_12_09_2021_20_10_58.png)
![Horizon script fatal error](/uploads/cf4a9e6213a4904453838984e1cb9cd6/VirtualBox_Adelie_LXQt_12_09_2021_20_11_06.png)
![horizon script options (```installfile```)](/uploads/0fcb6891511898a2371075814851e88b/VirtualBox_Adelie_LXQt_12_09_2021_20_13_57.png)0.9.9https://git.adelielinux.org/adelie/horizon/-/issues/323"Standard" and "Mobile" installation options do not honor keyboard layout cho...2023-10-17T01:46:06ZTiago Silva"Standard" and "Mobile" installation options do not honor keyboard layout chosen in Horizon [1.0rc2]That's basically it. I chose "pt" layout on HorizonUI, and the KDE on the hard disk has "en-us" installed, and "pt-pt" still has to be added manually in KDE's settings afterwards.
Other installation variants couldn't be tested.That's basically it. I chose "pt" layout on HorizonUI, and the KDE on the hard disk has "en-us" installed, and "pt-pt" still has to be added manually in KDE's settings afterwards.
Other installation variants couldn't be tested.0.9.9A. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/320Manpages not included by default2023-11-26T12:10:56ZTiago SilvaManpages not included by defaultHello. As much as I understand that Adélie is very close to Alpine, and most versions of Alpine do not include manpages by default, I think it's unnecessarily user-hostile to not include them and it sets Adélie very much apart from most ...Hello. As much as I understand that Adélie is very close to Alpine, and most versions of Alpine do not include manpages by default, I think it's unnecessarily user-hostile to not include them and it sets Adélie very much apart from most mainstream distros as an "expert-only" distro. Text compresses very easily. and man decompresses pages on the fly.
They are not installed in the MATE or LXQt ISO, are not installed on hard disk by the "Standard" option of HorizonUI (the only one from 1.0rc2 that completed installation), and on the "Custom" installation options it's not selected by default.
Unfortunately I wasn't able to test any custom installation options, HorizonUI failed every time. But that's another issue.0.9.9https://git.adelielinux.org/adelie/horizon/-/issues/390Discussion: ship sudo or doas as part of desktop profiles?2024-02-12T19:56:33ZA. WilcoxDiscussion: ship sudo or doas as part of desktop profiles?Should `sudo` be included in the desktop package set? Should we look into `doas` as a modern replacement?Should `sudo` be included in the desktop package set? Should we look into `doas` as a modern replacement?1.0-RELEASEhttps://git.adelielinux.org/adelie/horizon/-/issues/389Support NetworkManager as an option for network management2024-02-12T19:53:20ZA. WilcoxSupport NetworkManager as an option for network managementWe already support `netifrc` and `eni` (nominally `ifupdown-ng`). Unfortunately, neither of these options have a graphical configuration option. We could write one, but it is going to be significantly easier to support NM as an option.We already support `netifrc` and `eni` (nominally `ifupdown-ng`). Unfortunately, neither of these options have a graphical configuration option. We could write one, but it is going to be significantly easier to support NM as an option.2.0A. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/386Friendlier names for keyboard selection screen2024-02-12T19:31:41ZA. WilcoxFriendlier names for keyboard selection screenThe names of the keyboard layouts specified don't have "friendly" names which might make it more difficult for users to choose the one they want. This is actually a holdover from the Gentoo days - Gentoo's live media just shows the two ...The names of the keyboard layouts specified don't have "friendly" names which might make it more difficult for users to choose the one they want. This is actually a holdover from the Gentoo days - Gentoo's live media just shows the two letter codes, not the full names. It would be great if we could show more friendly names, perhaps leaving the raw names in parenthetical: `United States (us)` for instance.1.0-RELEASEA. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/375Manipulate shadow files in code2023-11-14T06:02:20ZA. WilcoxManipulate shadow files in codeInstead of relying on running `useradd`/`usermod` under `chroot` - likely to fail if we are installing to a foreign architecture - we should be manipulating shadow files ourselves.Instead of relying on running `useradd`/`usermod` under `chroot` - likely to fail if we are installing to a foreign architecture - we should be manipulating shadow files ourselves.1.0-RELEASEA. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/374Use LVM2 library instead of shell commands2023-11-14T05:32:28ZA. WilcoxUse LVM2 library instead of shell commandsIt looks like the LVM2 library is now considered public API and can be used instead of relying on `run_command`. We need to figure out how to replace those calls with LVM2 API calls to reduce our reliance on running external commands.It looks like the LVM2 library is now considered public API and can be used instead of relying on `run_command`. We need to figure out how to replace those calls with LVM2 API calls to reduce our reliance on running external commands.1.0-RELEASEA. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/369GRUB config should use Jinja (or some sort of template)2023-10-19T04:30:42ZA. WilcoxGRUB config should use Jinja (or some sort of template)We have GRUB configs inlined in each architecture's post-script. It would be great if we could refactor this so we can easily change them all.
What would be even greater would be to do `{% for arch in arches %}` or such, which would al...We have GRUB configs inlined in each architecture's post-script. It would be great if we could refactor this so we can easily change them all.
What would be even greater would be to do `{% for arch in arches %}` or such, which would allow us to someday make multi-arch CDs. I would love to see this. But just simply making it a simple template would be great to start.1.0-RELEASEA. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/366feature request: improve the text boxes under "Network Configuration"2023-10-17T01:26:04ZZach van Rijnfeature request: improve the text boxes under "Network Configuration"These are reminiscent of the early Windows days.
The problem is that if you click in the wrong position (in the correct box), you cannot type as many digits as you might want. For example, `.__X` (`X` = where you clicked), you can only ...These are reminiscent of the early Windows days.
The problem is that if you click in the wrong position (in the correct box), you cannot type as many digits as you might want. For example, `.__X` (`X` = where you clicked), you can only type one digit. Clicking into `._X_` lets you type two digits.
Copy-and-paste from another box will encounter the same problem if you aren't perfectly in the same place as from where you copied. The `TAB` key does not go to the next octet, rather, goes to the next text field.
Clicking `.` (period) goes to the next octet but does not clear values after the ones I've entered. For example, if an octet contains `192` and I click over the `1`, I want to replace `192` with `10`, then I type `10` and `.`, I would expect the first octet to contain `10` and have the cursor at the second octet. What actually happens is, I have the first octet with `101` and now I'm on the second octet.
I would like to be able to enter `10` `TAB` `0` `TAB` `2` `TAB` `15` and not have to fight the UI.
Additionally, the underscores where digits do not exist are visually confusing.
Validation can be done after I've finished entering (whether clicking out of the box, or when "Next" is pressed).
![VirtualBox_test1_16_10_2023_13_56_19](/uploads/51b89a086928a7f100c74a034fa111c2/VirtualBox_test1_16_10_2023_13_56_19.png)
See also:
* https://ux.stackexchange.com/questions/33564/best-ui-to-allow-expert-users-to-enter-an-ip-address-ipv41.0-RELEASEhttps://git.adelielinux.org/adelie/horizon/-/issues/360Leverage APK cache mechanism to make repeated image builds faster2023-10-17T01:28:39ZA. WilcoxLeverage APK cache mechanism to make repeated image builds fasterFor example, if you want to spin custom media for KDE, LXQt, and MATE, you have to download the entire X11 package set three times. This would also make local iteration on Horizon development faster.For example, if you want to spin custom media for KDE, LXQt, and MATE, you have to download the entire X11 package set three times. This would also make local iteration on Horizon development faster.2.0A. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/359Feature: Qt 5 Installation Environment: "Paste" button for log files2023-10-17T01:28:54ZA. WilcoxFeature: Qt 5 Installation Environment: "Paste" button for log filesWe have a significant burden on people asking for support. They have to either take photos of the log when installation fails, or type out the log manually. It would be much nicer if they could paste to an online service, assuming netw...We have a significant burden on people asking for support. They have to either take photos of the log when installation fails, or type out the log manually. It would be much nicer if they could paste to an online service, assuming networking is available.
We should really run a paste forwarding service ourselves to ensure that it doesn't go down if whatever pastebin of the month goes down or ceases to exist. We'll need to think about it.1.0-RELEASEA. WilcoxA. Wilcoxhttps://git.adelielinux.org/adelie/horizon/-/issues/350Executor should attempt to clean up environment on failure2023-10-17T01:32:16ZA. WilcoxExecutor should attempt to clean up environment on failureWhen System Installation fails in the middle of execution, the system is left precisely as it was at the moment of failure. This can be useful for debugging, but it would also be useful to have an option to the executor to have it clean...When System Installation fails in the middle of execution, the system is left precisely as it was at the moment of failure. This can be useful for debugging, but it would also be useful to have an option to the executor to have it clean up on failure.
Some items to consider:
* Unmount the `/target` directory tree.
* Set the hostname back to the original.1.0-RELEASEhttps://git.adelielinux.org/adelie/horizon/-/issues/345txz: umount: error: exited abnormally with status 12023-10-17T01:35:58ZZach van Rijntxz: umount: error: exited abnormally with status 1I'm not clear yet on why exactly this occurs, but at first glance it appears benign:
```
adelie ~ # hscript-image -t txz -o rootfs-aarch64.txz ./image/configs/arch/aarch64.installfile HorizonScript Image Creation Utility version 0.9.7
C...I'm not clear yet on why exactly this occurs, but at first glance it appears benign:
```
adelie ~ # hscript-image -t txz -o rootfs-aarch64.txz ./image/configs/arch/aarch64.installfile HorizonScript Image Creation Utility version 0.9.7
Copyright (c) 2020 Adélie Linux and contributors.
This software is licensed to you under the terms of the
AGPL 3.0 license, unless otherwise noted.
2023-08-28T16:47:57.750 log /root/image/configs/arch/../base/base.installfile: parser: 0 error(s), 0 warning(s).
2023-08-28T16:47:57.765 step-start validate
2023-08-28T16:47:57.771 log /root/image/configs/arch/../base/base.installfile:39: warning: username: live has no set passphrase: This account will not be able to log in.
2023-08-28T16:47:57.775 log installfile: validator: 0 failure(s).
2023-08-28T16:47:57.776 step-end validate
2023-08-28T16:47:57.776 step-start disk
2023-08-28T16:47:57.778 step-end disk
2023-08-28T16:47:57.778 step-start pre-metadata
2023-08-28T16:47:57.779 log /root/image/configs/arch/../base/base.installfile:13: info: hostname: set hostname to 'adelie-live'
2023-08-28T16:47:57.779 log /root/image/configs/arch/../base/base.installfile:13: info: hostname: write 'adelie-live' to /etc/hostname
2023-08-28T16:47:57.782 log /root/image/configs/arch/../base/base.installfile:35: info: repository: write 'https://distfiles.adelielinux.org/adelie/current/system' to /etc/apk/repositor
ies
2023-08-28T16:47:57.783 log /root/image/configs/arch/../base/base.installfile:36: info: repository: write 'https://distfiles.adelielinux.org/adelie/current/user' to /etc/apk/repositorie
s
2023-08-28T16:47:57.783 step-end pre-metadata
2023-08-28T16:47:57.783 step-start net
2023-08-28T16:47:57.786 step-end net
2023-08-28T16:47:57.786 step-start pkgdb
2023-08-28T16:47:57.787 log /root/image/configs/arch/aarch64.installfile:3: info: signingkey: trusting aarch64-1@packages.adelielinux.org.pub for APK signing
2023-08-28T16:47:58.444 log /root/image/configs/arch/aarch64.installfile:4: info: signingkey: trusting aarch64-2@packages.adelielinux.org.pub for APK signing
2023-08-28T16:47:58.810 log /root/image/configs/arch/aarch64.installfile:1: info: arch: setting system CPU architecture to aarch64
2023-08-28T16:47:58.814 log internal: info: initialising APK
fetch https://distfiles.adelielinux.org/adelie/current/system/aarch64/APKINDEX.tar.gz
fetch https://distfiles.adelielinux.org/adelie/current/user/aarch64/APKINDEX.tar.gz
...
OK: 323 MiB in 201 packages
2023-08-28T16:49:02.195 step-end pkgdb
2023-08-28T16:49:02.196 step-start post-metadata
2023-08-28T16:49:02.199 log /root/image/configs/arch/../base/base.installfile:15: info: rootpw: setting root passphrase
2023-08-28T16:49:02.205 log internal: info: setting up user account live
2023-08-28T16:49:02.206 log /root/image/configs/arch/../base/base.installfile:39: info: username: creating account live
2023-08-28T16:49:02.515 log /root/image/configs/arch/../base/base.installfile:40: info: useralias: setting GECOS name for live
2023-08-28T16:49:02.669 log /root/image/configs/arch/../base/base.installfile:41: info: usergroups: setting group membership for live
2023-08-28T16:49:02.836 log internal:0: info: timezone: setting system timezone to UTC
2023-08-28T16:49:02.839 step-end post-metadata
umount: /tmp/horizon-image/target/sys: not mounted
2023-08-28T17:56:46.673 log umount: error: exited abnormally with status 1
umount: /tmp/horizon-image/target/dev: not mounted
2023-08-28T17:56:46.721 log umount: error: exited abnormally with status 1
```
This process is occurring inside a clean aarch64 rootfs (on x86_64 hardware) with `binfmt_misc` handlers registered with the kernel. There were no warnings or errors about having failed to mount these at the start.
Source appears to be: https://git.adelielinux.org/adelie/horizon/-/blob/3786744d944fe983871123f9f89427b67be6a82a/image/backends/tar.cc#L90-921.0-RELEASE