The officially official Devuan Forum!

You are not logged in.

#1 Installation » convert an existing legacy system to secure boot? » 2021-09-25 20:46:37

Replies: 1

My old laptop, which still runs, was configured for legacy boot. I built a few Linux systems on SSDs in external USB enclosures and USB flash drives. All were built using MBR, not GPT. These were NOT dual-boots, as I removed the internal SATA drive before installing Linux.

Now I bought a new laptop because the old one is having hardware problems. After I got Windows to run, I inserted a USB flash drive with Linux installed on it -- not a LiveUSB, an installation -- and selected the proper key to change boot options. However, every time I selected the USB flash drive in the list of drives, it auto-selected Windows Manager (or something very similar to those words) and booted Windows. Then I tried using a USB flash drive with a Linux distribution ISO burned onto it (in other words, it's a LiveUSB) -- and it started. So secure boot is fighting me, probably as designed.

The new laptop is designed to discourage user maintenance, as it has plugs covering the screws, and there does not appear to be a BIOS option to change to legacy boot, so perhaps my best option is to remove the old laptop's internal drive, change BIOS to UEFI, and rebuild Linux there, hoping that the new laptop will properly recognize it.

Is it possible to convert an existing legacy Linux system to a UEFI one, converting the partition from MBR to GPT in the bargain?

#2 Re: Desktop and Multimedia » SOLVED: Wicd Network Manager on MATE is unreliable » 2021-02-12 22:52:56

The WiFi is indeed rt2800pci, but disabling hardware encryption seems a bit much.

I purged Wicd Network Manager and installed regular Network Manager -- all in one Synaptic step, of course -- and things work much better now.

#3 Re: Installation » SOLVED: Windows 10 entry in boot menu; is Grub to blame? » 2021-02-12 22:49:33

Of course, that explains the apparently random nature of the entry's appearance.

I deleted the relevant section for Window 10 in /boot/grub/grub.cfg. The system booted fine, without the Windows 10 boot menu entry.

The leet post? I had to look that up. Upside down and backwards.

#4 Re: Installation » SOLVED: Windows 10 entry in boot menu; is Grub to blame? » 2021-02-12 21:44:46

UPDATE: I surfed around and learned that the menu has something to do with /boot/grub/grub.cfg. There is a line in it:

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 10 (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-8E1EA5C71EA5A8A3' {

and it was updated yesterday. Comments in grub.cfg state that it is "automatically generated by grub-mkconfig using templates # from /etc/grub.d and settings from /etc/default/grub," though /etc/grub.d and /etc/default/grub do not appear to contain anything relevant. grub-mkconfig scans drives for installed bootable OSs, so maybe the Windows 10 boot entry is added when grub is updated.

#5 Installation » SOLVED: Windows 10 entry in boot menu; is Grub to blame? » 2021-02-12 21:30:20

Replies: 4

I have a question that isn't Devuan's fault, but I'm not sure where to ask it.

I have a few different Linux distributions, all Debian spins, installed on SSDs in external enclosures connected via USB (the internal SSD has Windows 10 installed on it). I would think they'd all operate via the same rules. However, one thing puzzles me. On some distributions, after I boot a few times, the boot menu changes to include a Windows 10 entry. On Sparky Linux systems, it's clear why that happens, as a script that deals with Grub runs, demanding that the user choose the drive on which Grub should be installed. After that script runs, the boot menu includes a Windows 10 entry. But on this system, a Devuan MATE, I saw the Windows 10 boot menu entry after ten or twenty boots. What's strange (to me) is that the Windows 10 boot entry will be present even if I remove the internal SSD.

By the way, when I install Linux on an external SSD, I remove the internal SSD to avoid a dual-boot situation.

At first I thought the Windows 10 boot entry was added after I booted Windows without disconnecting the external SSD, but now I'm not sure about that.

Does Linux automatically run Grub on every boot? Is it when Grub is updated?

Can this extraneous boot entry be removed without harming the OS?

Feel free to point me to a website explaining things, as I'd like to understand what's happening.

#6 Re: Desktop and Multimedia » SOLVED: Wicd Network Manager on MATE is unreliable » 2021-02-11 22:41:22


syslog does not appear to contain any warnings or failures. Curiously, I left Wicd Network Manager running for many minutes. When I returned to it and clicked in the main area, the list of available WiFi sources suddenly appeared.

If it matters, this laptop has the dreaded Ralink WiFi hardware, which many Linux distributions seem to think is the anti-Christ, along with Broadcom.

#7 Documentation » Panel entries for browsers that a distribution does not support » 2021-02-03 23:17:32

Replies: 4

I've asked many questions and have gotten all of my queries answered. So I thought I'd try to give back to the community.

When I first started using Linux, I thought I was restricted to the browsers the developers offered. Then I realized that browsers such as Pale Moon and Basilisk could be used by downloading it (Pale Moon calls it a bzipped tarball), extracting it, and moving the folder to the desktop, where I could start it by opening the folder and double-clicking on the executable (I could also just leave them in Downloads and access them there). But then I realized that I could add those entries to the panel by adding two files to the file system. Please note that Openbox is slightly different, as one must edit the Panel file.

First, a .png file must be copied to /usr/share/pixmaps, in this case, basilisk.png. I found this icon in basilisk/browser/icons, named mozicon128.png. This file will serve as the icon in the panel.

Second, a .desktop file must be added to /usr/share/applications. The format is:

[Desktop Entry]
GenericName=Web Browser

The file referenced in the Exec line could reside anywhere. The file referenced in the Icon line has an implied extension of .png, in this case the icon is called "basilisk.png" and resides in /usr/share/pixmaps. I chose to copy the .png file to /usr/share/pixmaps, though one could easily keep it in /home/username/Downloads and reference it properly. The Categories line will place it in the start menu section titled Internet. The files will be accessed on the next login, so don't panic if you add them and don't see them in the start menu.

Please note that the above process would work for any application. Also note that certain browsers, with Brave being a good example, do not offer a downloadable folder that can be used this way. Browsers such as Vivaldi that offer a .deb file will automatically create .desktop and .png files and copy them to the appropriate directories. The reason I left the browser folder in Downloads is that Linux is inconsistent with respect to executables. On Devuan, both Firefox and Vivaldi are stored in /opt, so I could have copied the Basilisk folder to /opt as well. But on Sparky Linux, Firefox is stored in /usr/lib, which is surprising given that both Devuan and Sparky are Debian spins. /usr/share/pixmaps appears to be consistent between Debian spins.

The above .desktop / .png scheme works for openSUSE as well, though obviously .deb files will be of no use.

#8 Desktop and Multimedia » SOLVED: Wicd Network Manager on MATE is unreliable » 2021-02-03 17:24:22

Replies: 7

I have two Devuan systems, both on SSDs in external enclosures that I run via USB on an HP laptop with Intel 3rd Generation Core processor and 8 GB memory. The first is Cinnamon, which pretty much runs like a Swiss clock. MATE is almost as reliable, but Wicd Network Manager does not always provide a connection. Right now it is showing "Scanning" which it has done for thirty minutes now.

I'm thinking of switching to regular Network Manager. Should I uninstall Wicd Network Manager after installing regular Network Manager? Obviously I would need to change the applications on the right side of the panel to eliminate Wicd Network Manager. Or will both network managers coexist?

P.S. My laptop is old and not 100% anymore -- the USB ports are a constant annoyance -- so it might be that Wicd Network Manager is merely a little more sensitive to the aging hardware.

#9 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-19 23:35:23


Point taken, but:
- One only learns these things after one pays for it.
- ExpressVPN also has a problem with Manjaro, as they only test with Arch and expect Manjaro users to accept AUR.
- I first used ProtonVPN, but its commands require sudo while ExpressVPN commands do not. ProtonVPN eliminated its servers in my home city, which makes it problematic for websites requiring local login (Hotmail and my bank's website did not appreciate that).

Which VPNs are known to be compatible with Devuan?

#10 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-16 19:21:38

nobody@toshiba128:~$ sudo /usr/sbin/expressvpnd
restore: /etc/resolv.conf not generated by expressvpn

The end of /var/log/syslog didn't contain anything related to the above.

As I said before, I think the latest ExpressVPN .deb is pretty much incompatible with non-systemd systems. I'm marking this thread as solved because I have a work-around, i.e., use the previous .deb.

#11 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-13 17:30:05


nobody@toshiba128:~$ pgrep -a expressvpn && echo 'It is running' || echo 'Not running'
Not running
nobody@toshiba128:~$ /usr/sbin/expressvpnd

Then I re-executed the first command, but I received the same result.

#12 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-11 22:13:15


nobody@toshiba128:~$ sudo update-rc.d expressvpn defaults
nobody@toshiba128:~$ sudo service expressvpn restart
[FAIL] Restarting ExpressVPN service: expressvpnd failed!

I think the latest  expressvpn .deb is hosed with respect to non-systemd systems.

#13 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-11 22:10:08


Okay, I'm back. My Internet access on the weekend is limited.

nobody@toshiba128:~$ expressvpn status
Cannot connect to expressvpnd daemon.

It seems that the expressvpn daemon is not running. Please run "sudo service expressvpn restart" to start it.

If the problem persists, please contact us.
nobody@toshiba128:~$ pgrep -a expressvpn && echo 'It's running' || echo 'Not running'

#14 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-09 18:07:06


I think substituting s6 for SysV is way beyond my talents.

#15 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-09 18:04:49


You lost me on the third command:

nobody@toshiba128:~$ ar x Downloads/expressvpn_3.4.0.62-1_amd64.deb
nobody@toshiba128:~$ tar xf data.tar*
nobody@toshiba128:~$ cat etc/init.d/expressvpn
cat: etc/init.d/expressvpn: No such file or directory
nobody@toshiba128:~$ ls
control.tar.gz	Desktop    etc		Pictures   usde
data.tar.gz	Documents  _gpgbuilder	Public	   usr
debian-binary	Downloads  Music	Templates  Videos

So what the heck, I purged the working .deb and installed the funky one:

nobody@toshiba128:~$ cat  /etc/init.d/expressvpn
#! /usr/bin/env bash

# Provides:          expressvpn
# Required-Start:    $remote_fs $network
# Required-Stop:     $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start expressvpn at boot time

# Do NOT "set -e"

DESC="ExpressVPN service"
DAEMON_ARGS="--client-version 3.4.0 --client-build 62"

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 5

# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME


# Load the VERBOSE setting and other rcS variables
[ -f /lib/init/ ] && . /lib/init/

# To be replaced by LSB functions.
function log_daemon_msg() {
    echo -n "$@"

# To be replaced by LSB functions.
function log_end_msg() {
    if [ "$retval" -eq 0 ]; then
        echo " [ OK ]"
        echo " [ FAILED ]"
    return "$retval"

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
# and status_of_proc is working.
[ -f /lib/lsb/init-functions ] && . /lib/lsb/init-functions

function pidofproc() {
    if [ $# -ne 3 ]; then
        echo "Expected three arguments, e.g. $0 -p pidfile daemon-name"

    local PID PIDFILE
    PID=$(pgrep -f "$3")
    PIDFILE=$(cat "$2")

    if [ "x$PIDFILE" == "x" ]; then
        return 1

    if [ "x$PID" != "x" ] && [ "$PIDFILE" == "$PID" ]; then
        return 0

    return 1

function killproc() {
    if [ $# -ne 3 ]; then
        echo "Expected three arguments, e.g. $0 -p pidfile signal"

    local PID
    PID=$(cat "$2")

    /bin/kill -s "$3" "$PID"
    while true; do
        if pidof "$(basename "$DAEMON")" >/dev/null; then
            return 0

        sleep 1
        n=$(( "$n" + 1 ))
        if [ "$n" -eq 30 ]; then
            /bin/kill -s SIGKILL "$PID"
            return 0

# Function that starts the daemon/service
    # Return
    #   0 if daemon has been started
    #   1 if daemon was already running
    #   2 if daemon could not be started
    if command -v start-stop-daemon > /dev/null 2>&1; then
        nohup start-stop-daemon --start --quiet -m --pidfile "$PIDFILE" --exec "$DAEMON" -- "$DAEMON_ARGS" >>"$STDOUT" 2>>"$STDERR" &
        su -s /bin/sh -c "nohup $DAEMON -pidfile $PIDFILE $DAEMON_ARGS >>$STDOUT 2>>$STDERR &"

    # Add code here, if necessary, that waits for the process to be ready
    # to handle requests from services started subsequently which depend
    # on this one.  As a last resort, sleep for some time.
    sleep 1

    if /usr/bin/expressvpn status > /dev/null 2>&1; then
        return 0
        return 2

# Function that stops the daemon/service
    # Return
    #   0 if daemon has been stopped
    #   1 if daemon was already stopped
    #   2 if daemon could not be stopped
    #   other if a failure occurred
    if command -v start-stop-daemon > /dev/null 2>&1; then
        start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile "$PIDFILE" --name "$NAME"
        [ "$RETVAL" = 2 ] && return 2
        # Wait for children to finish too if this is a daemon that forks
        # and if the daemon is only ever run from this initscript.
        # If the above conditions are not satisfied then add some other code
        # that waits for the process to drop all resources that could be
        # needed by services started subsequently.  A last resort is to
        # sleep for some time.
        start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
        [ "$?" = 2 ] && return 2
        # Many daemons don't delete their pidfiles when they exit.
        rm -f "$PIDFILE"
        return "$RETVAL"
        # Stop the daemon.
        if [ -e "$PIDFILE" ]; then
            local PID
            PID="$(pgrep -f "$PIDFILE")"
            if test ! -z "$PID" && kill -0 "$PID" &>/dev/null; then
                if killproc -p "$PIDFILE" SIGTERM && /bin/rm -rf "$PIDFILE"; then
                    return 0
                    return 2
            return 1

case "$1" in
    log_daemon_msg "Starting $DESC" "$NAME"
    case "$?" in
        0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
        2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    log_daemon_msg "Stopping $DESC" "$NAME"
    case "$?" in
        0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
        2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
    log_daemon_msg "Restarting $DESC" "$NAME"
    case "$?" in
        case "$?" in
            0) log_end_msg 0 ;;
            1) log_end_msg 1 ;; # Old process is still running
            *) log_end_msg 1 ;; # Failed to start
        # Failed to stop
        log_end_msg 1
    log_action_msg "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" || true
    exit 1


Normally all I have to do is "dpkg -i <the .deb>" and "expressvpn activate" but with the funky .deb I get the following:

nobody@toshiba128:~$ expressvpn activate
Cannot connect to expressvpnd daemon.

It seems that the expressvpn daemon is not running. Please run "sudo service expressvpn restart" to start it.

If the problem persists, please contact us.
nobody@toshiba128:~$ sudo /etc/init.d/expressvpn restart
[FAIL] Restarting ExpressVPN service: expressvpnd failed!

#16 Re: Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-08 22:26:13

Thanks for the replies.

I'll keep that restart command for future use. I might have to build an openrc system to play with it.

What happened was, ExpressVPN released a new .deb (expressvpn_3.4.0.62-1_amd64.deb), which resulted in the following error when I tried to connect:

expressvpn connect <city>
Cannot connect to expressvpnd daemon.
It seems that the expressvpn daemon is not running.
Please run "sudo service expressvpn restart" to start it.
If the problem persists, please contact us.

sudo service expressvpn restart
[FAIL] Restarting ExpressVPN service: expressvpnd failed!

Only after I executed "dpkg --purge expressvpn" and dpkg -i expressvpn_3.3.0.21-1_amd64.deb" (the previous .deb) and "expressvpn activate" was I able to get ExpressVPN to run again. ExpressVPN admitted they do not test against any Debian spin that uses an init other than systemd. I suspect ExpressVPN only tests using Debian and Ubuntu (or a spin like Linux Mint).

I can use ExpressVPN with the older .deb, but eventually that will stop working. By the way, the new .deb works on Linux Mint and Sparky Linux, both of which employ the dreaded systemd.

#17 Installation » SOLVED: Devuan's "systemctl daemon-reload" » 2021-01-08 19:05:27

Replies: 25

The latest version of Expressvpn is having problems. Expressvpn support staff told me to execute "systemctl daemon-reload" but systemctl is a systemd thing. What's the Devuan equivalent? I selected SysV for init software in Beowulf Cinnamon.

On a related subject, there is a directory "/etc/systemd" but is that actually in use or is it a holdover from Debian?

#18 Re: Desktop and Multimedia » PulseAudio always resets to mute » 2020-12-18 20:37:50

@MiyoLinux @Head_on_a_Stick @Pix3l Thanks for the replies.

The problem is global (if that's the right word), as the taskbar volume control is set to zero.

alsa-utils is installed. And I'm not sure what you mean by /etc/init.d/alsa-utils init script being enabled. It's got executable permissions and the contents are not commented out.

Pix3l is correct, the problem was not present before.

#19 Desktop and Multimedia » PulseAudio always resets to mute » 2020-12-16 18:32:18

Replies: 33

The release notes state that it is necessary to comment "autospawn=no" in /etc/pulse/client.conf.d/00-disable-autospawn.conf. Okay, that allows for sound. But there's still a minor bug. I think it happens with every boot, but it might be something a little more subtle, perhaps it happens on the first boot of a day. The volume slider is set all the way to the left, so there is no sound. It's simple to fix, just move the slider to the right, but why doesn't it retain the previous setting?

P.S. In case it matters, this is Cinnamon.

#20 Re: Desktop and Multimedia » SOLVED: Error detected while processing /home/nobody/.vimrc » 2020-12-16 18:25:32

Thanks for the reply. Yes, that was exactly the problem. Strange that it never happened before, as I use vi to edit a number of files immediately after installation.

#21 Desktop and Multimedia » SOLVED: Error detected while processing /home/nobody/.vimrc » 2020-12-15 21:42:25

Replies: 2

Every time I build a Devuan system, and some other distros, I disable colored vi. It's always been simple: create a .vimrc file and insert "syntax off" into it.

But now I get an error:

vi .bashrc
Error detected while processing /home/nobody/.vimrc:
line    1:
E319: Sorry, the command is not available in this version: syntax off
Press ENTER or type command to continue

Here's the contents of .vimrc:

cat .vimrc
syntax off

And it's in the correct location:


Did something change recently in vi?

P.S. In case it matters, this is Cinnamon.

#22 Re: Hardware & System Configuration » SOLVED: Bad magic number in super-block » 2020-11-20 18:57:42

Yup, that fixed it. There was well over a hundred errors. Good thing the default is 'Y' so the Enter key is all one needs. Thanks again.

#23 Re: Hardware & System Configuration » SOLVED: Bad magic number in super-block » 2020-11-20 18:51:07


Thanks for the reply. No, I didn't. I'm doing that now. Holy cow, there's a never-ending list of prompts to fix this and that.

It finally finished. I'll try to boot it.

I will use a USB 2.0 cable so the USB 3.0 ports wil be converted to USB 2.0. It's slower, but I've had luck with that trick in the past.

#24 Hardware & System Configuration » SOLVED: Bad magic number in super-block » 2020-11-20 18:16:40

Replies: 4

I believe the USB 3.0 ports on my 2013 laptop (HP with Intel 3rd Generation Core processor, 8 GB memory) are no longer reliable. I say that because a few times I have seen the strange visuals one only sees after accidentally unplugging the cable from the external SSD. One of them was bad, so I used the other one, thinking it was okay. If only.

Today I saw a message telling me that the thumbnail cache was corrupted (or words to that effect). Clicking on FIX did not fix the problem. I rebooted, only the system was unable to boot because of corruption (it told me to fsck). I shut it down and restarted using a Sparky Linux USB flash drive plugged into a USB 2.0 port. I unmounted the drive using GParted and tried to fsck, but received the below message:

sudo fsck /dev/sdc
fsck from util-linux 2.33.1
e2fsck 1.44.5 (15-Dec-2018)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdc

The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem.  If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>
    e2fsck -b 32768 <device>

Found a dos partition table in /dev/sdc

I tried both of the suggested commands, but received essentially the same message.

Is it time for a rebuild?

Board footer

Forum Software