Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open Beta v6.31 | Please help testing and hardening the upcoming release #3628

Closed
MichaIng opened this issue Jun 28, 2020 · 16 comments · Fixed by #3639, #3640, #3621 or #3648
Closed

Open Beta v6.31 | Please help testing and hardening the upcoming release #3628

MichaIng opened this issue Jun 28, 2020 · 16 comments · Fixed by #3639, #3640, #3621 or #3648
Labels
Beta 🧪 Issues specific to the Beta branch testing Information ℹ️
Milestone

Comments

@MichaIng
Copy link
Owner

MichaIng commented Jun 28, 2020

RC version v6.31.2
Changelog https://github.com/MichaIng/DietPi/blob/beta/CHANGELOG.txt
Code changes master...beta
v6.31.0 => v6.31.1 #3639
v6.31.1 => v6.31.2 #3648
How to apply https://github.com/MichaIng/DietPi/blob/dev/BRANCH_SYSTEM.md
Release planned Sunday 05.07.20

Important testing cases:

  • If you have an RPi2 v1.2 RPi3 or RPi4, you could help test a major RPi-related change of this version by testing our new RPi 64-bit image (alpha stage): Image | Raspberry Pi OS (64-bit) #3570
  • If you ever wanted to install WireGuard but it is not available for your device via dietpi-software, retry it with this new DietPi version as we added Linux builtin module detection which is e.g. true for new Armbian-based images and probably other Linux 5.X images.
  • If you use Firefox, you can now run your own FF sync server: https://dietpi.com/phpbb/viewtopic.php?p=24713#p24713

Related/solved issues: https://github.com/MichaIng/DietPi/issues?q=is%3Aissue+milestone%3Av6.31


Known/Outstanding issues

@MichaIng MichaIng added Testing/testers required 🔽 Information ℹ️ Beta 🧪 Issues specific to the Beta branch testing labels Jun 28, 2020
@MichaIng MichaIng added this to the v6.31 milestone Jun 28, 2020
@MichaIng MichaIng pinned this issue Jun 28, 2020
@Joulinar
Copy link
Collaborator

Joulinar commented Jun 28, 2020

@MichaIng anything special to test? We still need to talk about test scenarios / catalogue 😉

@MichaIng
Copy link
Owner Author

Yes indeed, although I am not sure if/which scenarios are always important to test 🤔. I mean we could go through the most critical things:

  • WiFi and Ethernet connection on first run, each with DHCP and with static IP.
  • Time sync
  • Firstrun setup without any software title selected
  • Automated firstrun setup, including pre-v6.31 images which include a dietpi-update (all currently, actually always all when we're in beta phase).
  • dietpi-backup + restore
  • Network setup after finished firstrun setup, switching DHCP <> static IP, WiFi <> Ethernet
  • dietpi-drive_manager mounting and unmounting an external drive, check /etc/fstab that all entries have been (re)created/preserved correctly.

I'd say the above is what really must work, everything else is secondary, e.g. can be tested on demand when related scripts have been touched (more then just the comments), e.g.: https://github.com/MichaIng/DietPi/pull/3621/files#diff-620191171f47b4763a532e984acd2e8b (skip .meta scripts and .conf content)
Often all change at least a bid, so more effective would it be go through the changelog and verify that larger changes/mentionable fixes do of course work but as well do not imply any undiscussed regressions/downsides: https://github.com/MichaIng/DietPi/blob/beta/CHANGELOG.txt

Probably when touching any parts of the code, we should maintain a list of affected software titles, exact menus/selections or script call in general. I mean dietpi-config is huge and it hence does not make sense to test all its menus and options manually, but e.g. with this release the RPi Overscan menu, RPi screen resolution menus and RPi sound card selection have been touched + on x86 AMD display drivers have been added. So one can test these specific menus and related options and have an eye on format, spelling, visual glitches and such, and of course the new options in case.

@possibly-not
Copy link

possibly-not commented Jun 30, 2020

Having some issues with running G_CONFIG_INJECT 'DEV_GITBRANCH=' 'DEV_GITBRANCH=beta' /DietPi/dietpi.txt
Seems like the file /DietPi/dietpi.txt doesn't exist for me.
Issue seems to be covered here #3629 by using /boot/dietpi.txt instead 😄 which worked great.
Since the changes by @Joulinar only got merged into dev and you've linked to the master.

Other than that the update went smooth and all seems well for my pihole / pivpn, great stuff!
I shall be retrying to use MineOS as I've spent a while trying to get it working pre-beta but never got great results with it, even without using dietpi's software installer.

Edit: wow I just typed up an entire bug report and then I realized I was using the wrong port for mineos. That hurts.

@MichaIng
Copy link
Owner Author

MichaIng commented Jun 30, 2020

Ah yes a remain from DietPi-RAMdisk time: f9232db
Please use: G_CONFIG_INJECT 'DEV_GITBRANCH=' 'DEV_GITBRANCH=beta' /boot/dietpi.txt
I adjusted the link to dev.

This was linked to pull requests Jul 2, 2020
@MichaIng
Copy link
Owner Author

MichaIng commented Jul 2, 2020

New Beta v6.31.1 has been merged: #3639

@Joulinar
Copy link
Collaborator

Joulinar commented Jul 3, 2020

@MichaIng
Running some test now. So most probably I will spam you soon. 😉

  1. Tried to run PREP Script towards beta branch
    I used https://raw.githubusercontent.com/MichaIng/DietPi/beta/PREP_SYSTEM_FOR_DIETPI.sh and selected BETA branch
[ INFO ] DietPi-PREP | -----------------------------------------------------------------------------------
[  OK  ] DietPi-PREP | Step 2: Downloading and installing DietPi source code
[ INFO ] DietPi-PREP | -----------------------------------------------------------------------------------
[  OK  ] DietPi-PREP | Checking URL: https://github.com/MichaIng/DietPi/archive/beta.tar.gz
[  OK  ] DietPi-PREP | Downloading DietPi sourcecode
[  OK  ] DietPi-PREP | Extracting DietPi sourcecode
[ INFO ] DietPi-PREP | Moving kernel and boot configuration to /boot
[  OK  ] DietPi-PREP | mv DietPi-beta/config.txt /boot/
[  OK  ] DietPi-PREP | mv DietPi-beta/dietpi.txt /boot/
[  OK  ] DietPi-PREP | mv DietPi-beta/README.md /boot/dietpi-README.md
[FAILED] DietPi-PREP | mv DietPi-beta/LICENSE.txt /boot/dietpi-LICENSE.txt

mv: cannot stat 'DietPi-beta/LICENSE.txt': No such file or directory

I guess it should be mv DietPi-beta/LICENSE /boot/dietpi-LICENSE or is it a .txt?

MichaIng added a commit that referenced this issue Jul 3, 2020
+ DietPi-Patch | Copy correct license file: #3628 (comment)
@MichaIng
Copy link
Owner Author

MichaIng commented Jul 3, 2020

Many thanks! Right, the license file has no file ending indeed: 1cf3b08

@Joulinar
Copy link
Collaborator

Joulinar commented Jul 3, 2020

  1. Run unattended installation of Chromium, accept the LICENSE and set auto-start in dietpi.txt.
  • was working fine. Chromium was starting right after initial setup finished and system rebooted.
  • There was just one small error message at the end but I was not fast enough before my system rebooted. Will try to capture on next run and update this post.

EDIT:
ok, looks more like Chromium installation and not related the update 6.31
It fails to create the link at the end.

IMG_20200704_004812

@Joulinar
Copy link
Collaborator

Joulinar commented Jul 3, 2020

  1. I continued playing around with AUTO_SETUP_ACCEPT_LICENSE.
  • I used the PREP beta script + beta branch to get the AUTO_SETUP_ACCEPT_LICENSE in
  • Once PREP finished I set AUTO_SETUP_ACCEPT_LICENSE=1 within dietpi.txt and rebooted my RPi
  • The RPi automatically starts the initial setup without user login. Means, no chance to connect via SSH anymore because of the running initial setup
    [INFO] DietPi first run setup: Currently running on another screen
  • Without keyboard and monitor, you are lost 🤔

Is that the intention of the AUTO_SETUP_ACCEPT_LICENSE feature? I thought it was just to accept the LICENSE and not to start the initial setup. If yes, you would need to set AUTO_SETUP_AUTOMATED=1 same time. Otherwise you will be blocked on the first window asking for user input if you are running headless.

@MichaIng
Copy link
Owner Author

MichaIng commented Jul 3, 2020

The RPi automatically starts the initial setup without user login. Means, no chance to connect via SSH anymore because of the running initial setup

That is strange and not intended without AUTO_SETUP_AUTOMATED=1. The license prompt happens already in the login script, hence the automated login already happened then. Only place where we touch it is here: https://github.com/MichaIng/DietPi/blob/dev/rootfs/var/lib/dietpi/services/dietpi-firstboot.bash#L163

Does the following contain anything?

ls -Al /etc/systemd/system/getty@tty1.service.d

@Joulinar
Copy link
Collaborator

Joulinar commented Jul 3, 2020

  1. Running initial setup, using fresh img 6.30 and beta branch as target
  • initial setup was working fine
  • system completed first run and finished on 6.31.1 (beta)
  • no auto setup used, standard first run procedure followed

@MichaIng
Copy link
Owner Author

MichaIng commented Jul 3, 2020

Ah now I see your previous test with Chromium auto install. I guess /etc/systemd/system/getty@tty1.service.d/dietpi-autostart was still present from the last attempt. We do not remove this during PREP (only /etc/systemd/system/getty@tty1.service.d/autostart known from other images) but we should. I'll also have a look at this Chromium desktop entry creation. Probably this is expected when no desktop is installed, but then we should not attempt to create the symlink 😉.

@Joulinar
Copy link
Collaborator

Joulinar commented Jul 3, 2020

ok I have a new copy burned to my SD card. Will do an initial run on 6.30 and PREP to beta afterwards. Let's see how it behave.

@Joulinar
Copy link
Collaborator

Joulinar commented Jul 3, 2020

Ok seems you are right. Looks like some leftover from Chromium installation caused the auto login. On a fresh installation, this did not happen.

MichaIng added a commit that referenced this issue Jul 4, 2020
+ DietPi-PREP | Remove all autologin configs for all TTYs: #3628 (comment)
@MichaIng
Copy link
Owner Author

MichaIng commented Jul 4, 2020

Okay any drop-in config with autologin inside its name on any local or serial TTY is removed now: 836b04f
In theory a console on tty5 (getty@tty5.service) or serial console ttyS2 (serial-getty@ttyS2.service) or such could be enabled with autologin override, which would lead to firstrun setup (automated or prompt) on a console that might not even attached, just like in your case but in case of a serial console more difficult to resolve and in case of tty > 1 one would need to know to hit F<ID> on keyboard to attach the screen to this TTY.

We cannot check/set for all possible things on a pre-image but for this one we have two cases (previous DietPi image with any autologin autostart option enabled + RPi OS autologin on first boot), so lets cover all possible ones.

@MichaIng MichaIng linked a pull request Jul 5, 2020 that will close this issue
@MichaIng
Copy link
Owner Author

MichaIng commented Jul 5, 2020

v6.31 has been released 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Beta 🧪 Issues specific to the Beta branch testing Information ℹ️
Projects
None yet
3 participants