Following the instructions of the driver upgrade in apt, there was no upgrade avalible. I rebooted the system. The Init ends with the normal message “[OK] Started Session 2 of user cpi.” (on last reboot it was Session 3, but it is usually Session 2). The device still is in Init, like last time, and I wait for a login screen. This time, I press no buttons and simply wait.
After about a minute, I get impaitent and cycle through TTY sessions myself. It seems the problem is that it does not automatically switch over. I assume this Init is preprogrammed to automatically open the cpi desktop, which it obviously can no longer do. I have to go to TTY4 before a response happens. Then, I go backwards to TTY3. TTY2 does not appear upon switching, and it remains at TTY3. I go up to TTY6, then try again to switch to TTY2. No-go. TTY1 however works. I see the other Init readout again, and see only the last message before it dissapears: “[OK] Started Session 38 for user cpi.” The screen again goes blank, and I see the login manager. Cycling through TTYs again, I see that the login manager is on TTY1. I can not access any TTYs higher than 6. I go back to the login manager on TTY1.
The login manager shows a full volume in its upper-right corner. I login and see my desktop. It does not automatically connect to WiFi again (and like before it did not lose the login cridentials), and the sound is still non-existant.
I begin to think that the sound not working may simply be the result of the DE’s taskbar not being able to connect to PulseAudio, so I attempt to test it using a random YouTube video. From the front-page, I play “Family Guy: The Golden Years (Season 3)” by HippieJoe. Sure enough, there is no sound. I attempt to see if pavucontrol
will run as root (under the assumption that this may be a simple permissions error) but the controlling software opens under root with the same error “Establishing connection to PulseAudio. Please wait…”. I decide that PulseAudio probably simply did not start, so I run it. I get a bunch of errors saying it is not meant to be run as root, so I send an intterupt (^C) and leave the root session. Sure enough, when I run PulseAudio in the terminal as my user, the volume control in the taskbar goes full-blast showing that PulseAudio simply isn’t starting.
I assume the problem is probably with Init, and I go check the Init directory (after returning as root). I find /etc/init.d/pulseaudio-enable-autospawn
. This appears to be the only Init file for PulseAudio. Paging the file shows it simply puts the line “autospan=yes” to /run/pulseaudio-enable-autospawn. I also see that the file does not exist. I decide to attempt to enable the init as a service, service pulseaudio-enable-autospawn start
and it returns with an error:
“Failed to start pulseaudio-enable-autospan.service: Unit pulseaudio-enable-autospan.service is masked.”
I am unfamiliar with what this means, so I do a web search and find that it is some Pottering bullsh*t that has been put into SystemD. According to Ubuntu Answers,
"mask
is a stronger version of disable
. Using disable
all symlinks of the specified unit file are removed. If using mask
the units will be linked to /dev/null
. This will be displayed if you check e.g. by systemctl status halt.service
. The advantage of mask
is to prevent any kind of activation, even manual."
Why are some systemd services in the “masked” state? - Ask …
Annoyed at this, I perform another websearch for the general term “PulseAudio boot”. I find an article providing a custom Init script, and look it over.
How to make PulseAudio run once at boot for all your users …
The Init script looks fine enough, so I install it (and not in the init folder, but in the SystemD folder listed on the site). I do not know how PulseAudio was coming up prior to the installation of the service. If it were not for the disgusting fact that so many “”“modern”"" programs have PulseAudio as a dependency, I would simply remove it and install ALSA.
Instead of enabling it as a service, I run the command provided on the webpage, systemctl --system enable --now pulseaudio.service
and I am greeted with the error that the file “has a bad unit file setting”.
I am lost at what to do now, so I push this issue back knowing that all I need to do is setup a file to start the actual pulseaudio program at boot. I look around at the DE’s settings and see an option in settings called “Session and Startup”. I see PulseAudio included multiple times in the list, with “PulseAudio Sound System” being the only relevant one. It is checked and says to start on login. My assumption is that the Armbian developers set up a specific definition for “on login” and my modifications have changed this. However, this idea quickly escapes my mind as valid due to the fact that pasystray
is also enabled and set to trigger “on login”, and is appearing in the taskbar.
So the only faults I see after encrypting the home directory are:
-
A slower-boot and the requirement of manually switching TTY to bring up LightDM Login Manager
-
Automatic connection to WiFi no longer works, and manual trigger is needed
-
PulseAudio simply does not come-up at boot, and needs to be manaually enabled