My crackpot EOS install procedure - Surely a better way?

Hi all…

Experience: Started with Debian, went to Ubuntu, now trying Arch-based distros. My use case is multimedia production.

I’m using an old Dell Latitude E7470 laptop. Due to my hatred of wifi and it’s inherent security issues I physically removed the internal wifi adapter and only use the integrated Ethernet port.

I have been trying for weeks to get up and running with EOS. The principle problem was that if the Ethernet cable wasn’t connected at boot time then Network Manager would never connect.

Or, if I unplugged it after boot and then plugged it back in, Network Manager would hang and eventually the service would quit running. Attempts to restart it == full system crash, and my laptop keyboard can’t perform the magic sysreq reboot procedure. Hard power offs again and again.

After countless attempts to get EOS up and running this is what I’ve finally done:

Booted installer from usb drive
Selected ‘online’ mode
Picked XFCE desktop
Customized the options, making one change from the defaults: unticked “network-manager-applet
Deleted (after making a backup) the binary ‘/usr/bin/rfkill’
Edited ‘/etc/makepkg.conf’ to disable debug builds (in options section, " debug" → “!debug”)
Built Octopi (my package manager of choice) using Yay

-Bang, everything works…for now. Grub boot from sda1 (EFI), ext4 on sda2 (/), swap to file.

I already know I’m gonna have to downgrade wine to v 9.4 so I can run yabridge. I’m not sure yet if I also need an ignore entry in /etc/pacman.conf for ‘network-manager-applet’. I’m guessing yes. I know I’ll need one for wine, though (i think) that will eventually bugger up the whole multilib part of the install.

So there is my long winded story of a very hackish way of getting things running.

End Result:

“nmcli networking off” then unplug cable. Plug cable back in, then “nmcli networking on”. No crash, full connection. Same thing works if I forget to plug in cable before boot. off, then on, and, then everything is fine. vpn connections work normally (IVPN using Wireguard in my case)

So, does anyone know a more reasonable way of getting the job done? I’ve installed EOS about two dozen times now so if someone wants logs I don’t mind doing it again. I’ve done this same procedure for the LXQT desktop as well as MATE, with both ssdm and lightdm.

Any input is much appreciated.

My impression is you removed this device before you installed EOS, is that right? Or was the installation already up before you removed it?

Perhaps we can take a peek at your current network setup:

inxi -nz

You shouldn’t need to add an ignore entry for it. It is included as one of the default packages for XFCE, but that is a choice by the maintainer; it’s not a dependency of XFCE or anything like that. In fact, it isn’t a dependency of anything except cinnamon so you shouldn’t have to worry about it being pulled back in by another package.

Still, it seems very bizarre that network-manager-applet would cause the issues you are describing. It doesn’t actually handle any networking tasks on its own, it’s more of a GUI layer on top of NetworkManager for doing a few basic things from the system tray. My guess would be something else is happening in your setup. :thinking:

Probably it would be helpful to take a look through the journal to see what NetworkManager is struggling with. After the hang/crash event, reboot and take a look:

sudo journalctl -b1 -u NetworkManager

Post the journal here in the forum, after you take a peek and make sure it doesn’t have your public IP in it or anything like that.

I would try to not do this if possible. I know you aren’t using any wireless network devices, but it could still have potential side effects since certain system processes may need to call this binary while they go about their business. The rfkill utility serves various purposes beyond managing network devices, such as querying device status for example.

If this resolves the issue like you say, one way to make it a little less clunky would be to automate these commands with a udev rule. https://wiki.archlinux.org/title/Udev You can have systemd fire off the needed commands automatically when a plug or unplug event happens so you don’t have to worry about it anymore.

Yes, removed pre-EOS. The laptop came with win10, not much need to say more

Sure. Not much to see:


Network: 
  Device-1: Intel Ethernet I219-LM driver: e1000e
  IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac: <filter>

Case 1 I restored rfkill, and it crashed the networkmanager service. Attempts to restart it timed out. I could only get back to this page by issuing “nmcli radio all off” followed by the nmcli networking on/off commands.

Case 2 i used pacman to re-install the applet. This time the journalctl command you had me run froze the system and I had to do a hard poweroff.

I’ve put the system back together with the no rfkill and no applet. So I’m able to post. Maybe something with mirrors? NetworkManager is version 1.46.0-2, network-manager-applet is at version 1.36.0-1. Should these match?

here is the journalctl log you wanted to see; premature cutoff on the timestamps and it just shows NetworkManager trying to connect and then giving up

Apr 22 16:51:39 TheAsylum systemd[1]: Starting Network Manager...
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.2766] NetworkManager (version 1.46.0-2) is starting... (boot:81ffdc33-76f8-4b18-a57b-938a8e22beca)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.2767] Read config: /etc/NetworkManager/NetworkManager.conf (lib: 20-connectivity.conf)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.2867] manager[0x5cb4e9ac9410]: monitoring kernel firmware directory '/lib/firmware'.
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3664] hostname: hostname: using hostnamed
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3665] hostname: static hostname changed from (none) to "TheAsylum"
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3671] dns-mgr: init: dns=default,systemd-resolved rc-manager=symlink
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3674] manager[0x5cb4e9ac9410]: rfkill: Wi-Fi hardware radio set enabled
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3674] manager[0x5cb4e9ac9410]: rfkill: WWAN hardware radio set enabled
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3759] Loaded device plugin: NMBluezManager (/usr/lib/NetworkManager/1.46.0-2/libnm-device-plugin-bluetooth.so)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3767] Loaded device plugin: NMAtmManager (/usr/lib/NetworkManager/1.46.0-2/libnm-device-plugin-adsl.so)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.3784] Loaded device plugin: NMWifiFactory (/usr/lib/NetworkManager/1.46.0-2/libnm-device-plugin-wifi.so)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4078] Loaded device plugin: NMTeamFactory (/usr/lib/NetworkManager/1.46.0-2/libnm-device-plugin-team.so)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4090] Loaded device plugin: NMOvsFactory (/usr/lib/NetworkManager/1.46.0-2/libnm-device-plugin-ovs.so)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4095] Loaded device plugin: NMWwanFactory (/usr/lib/NetworkManager/1.46.0-2/libnm-device-plugin-wwan.so)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4098] manager: rfkill: Wi-Fi enabled by radio killswitch; enabled by state file
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4098] manager: rfkill: WWAN enabled by radio killswitch; enabled by state file
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4099] manager: Networking is enabled by state file
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4100] settings: Loaded settings plugin: keyfile (internal)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4116] dhcp: init: Using DHCP client 'internal'
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4121] manager: (lo): new Loopback device (/org/freedesktop/NetworkManager/Devices/1)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4137] device (lo): state change: unmanaged -> unavailable (reason 'connection-assumed', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4144] device (lo): state change: unavailable -> disconnected (reason 'connection-assumed', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4151] device (lo): Activation: starting connection 'lo' (30dc1f60-57d2-47b9-8390-3b8a66c940e9)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4160] manager: (enp0s31f6): new Ethernet device (/org/freedesktop/NetworkManager/Devices/2)
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4171] settings: (enp0s31f6): created default wired connection 'Wired connection 1'
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.4171] device (enp0s31f6): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum systemd[1]: Started Network Manager.
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6067] bus-manager: acquired D-Bus service "org.freedesktop.NetworkManager"
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6090] ovsdb: disconnected from ovsdb
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6091] device (lo): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6094] device (lo): state change: prepare -> config (reason 'none', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6096] device (lo): state change: config -> ip-config (reason 'none', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6103] device (lo): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6120] device (lo): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6122] device (lo): state change: secondaries -> activated (reason 'none', sys-iface-state: 'external')
Apr 22 16:51:39 TheAsylum NetworkManager[473]: <info>  [1713822699.6127] device (lo): Activation: successful, device activated.
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4399] device (enp0s31f6): carrier: link connected
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4402] device (enp0s31f6): state change: unavailable -> disconnected (reason 'carrier-changed', sys-iface-state: 'managed')
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4407] policy: auto-activating connection 'Wired connection 1' (af06e74c-cec6-389d-be76-5f5167b8a99a)
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4411] device (enp0s31f6): Activation: starting connection 'Wired connection 1' (af06e74c-cec6-389d-be76-5f5167b8a99a)
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4412] device (enp0s31f6): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'managed')
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4415] manager: NetworkManager state is now CONNECTING
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4417] device (enp0s31f6): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4601] device (enp0s31f6): state change: config -> ip-config (reason 'none', sys-iface-state: 'managed')
Apr 22 16:51:42 TheAsylum NetworkManager[473]: <info>  [1713822702.4606] dhcp4 (enp0s31f6): activation: beginning transaction (timeout in 45 seconds)
Apr 22 16:51:44 TheAsylum NetworkManager[473]: <info>  [1713822704.6607] dhcp6 (enp0s31f6): activation: beginning transaction (timeout in 45 seconds)
Apr 22 16:51:44 TheAsylum NetworkManager[473]: <info>  [1713822704.6622] policy: set 'Wired connection 1' (enp0s31f6) as default for IPv6 routing and DNS
Apr 22 16:51:44 TheAsylum NetworkManager[473]: <info>  [1713822704.6738] dhcp6 (enp0s31f6): state changed new lease, address=2601:4c4:4001:45e0::2d86
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.3903] dhcp4 (enp0s31f6): state changed new lease, address=10.0.0.17, acd pending
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5751] dhcp4 (enp0s31f6): state changed new lease, address=10.0.0.17
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5763] policy: set 'Wired connection 1' (enp0s31f6) as default for IPv4 routing and DNS
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5910] device (enp0s31f6): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'managed')
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5931] device (enp0s31f6): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'managed')
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5932] device (enp0s31f6): state change: secondaries -> activated (reason 'none', sys-iface-state: 'managed')
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5935] manager: NetworkManager state is now CONNECTED_SITE
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5938] device (enp0s31f6): Activation: successful, device activated.
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.5944] manager: startup complete
Apr 22 16:51:45 TheAsylum NetworkManager[473]: <info>  [1713822705.8868] manager: NetworkManager state is now CONNECTED_GLOBAL
Apr 22 17:04:10 TheAsylum NetworkManager[473]: <info>  [1713823450.7445] manager: rfkill: Wi-Fi hardware radio set disabled
Apr 22 17:04:10 TheAsylum NetworkManager[473]: <info>  [1713823450.7447] audit: op="radio-control" arg="wireless-enabled:off" pid=21233 uid=1000 result="success"
Apr 22 17:04:10 TheAsylum NetworkManager[473]: <info>  [1713823450.7564] manager: rfkill: WWAN hardware radio set disabled
Apr 22 17:04:10 TheAsylum NetworkManager[473]: <info>  [1713823450.7565] audit: op="radio-control" arg="wwan-enabled:off" pid=21233 uid=1000 result="success"
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9631] caught SIGTERM, shutting down normally.
Apr 22 17:04:26 TheAsylum systemd[1]: Stopping Network Manager...
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9651] dhcp4 (enp0s31f6): canceled DHCP transaction
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9652] dhcp4 (enp0s31f6): activation: beginning transaction (timeout in 45 seconds)
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9652] dhcp4 (enp0s31f6): state changed no lease
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9656] dhcp6 (enp0s31f6): canceled DHCP transaction
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9656] dhcp6 (enp0s31f6): activation: beginning transaction (timeout in 45 seconds)
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9657] dhcp6 (enp0s31f6): state changed no lease
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9664] manager: NetworkManager state is now CONNECTED_SITE
Apr 22 17:04:26 TheAsylum NetworkManager[473]: <info>  [1713823466.9805] exiting (success)
Apr 22 17:04:27 TheAsylum systemd[1]: NetworkManager.service: Deactivated successfully.
Apr 22 17:04:27 TheAsylum systemd[1]: Stopped Network Manager.

Worthy of note: the tray applet for firewalld vanishes also when I remove the network-manager-applet. It is still running and a gui configuration can be reached through the main EOS settings launcher. That’s not unique to XFCE either, it’s the same same behavior on LXQT.

That is not what this journal is showing. Did you mean to post another journal?

This journal shows NetworkManager starting up normally and successfully establishing a connection. Then it runs for about fifteen minutes without adding anything to the journal, suggesting there are no issues during this time. Finally, there is a user-initiated shutdown. NetworkManager honors the shutdown signal, successfully closes down the connections, and exits gracefully.

There is one thing that strikes me as kind of odd about this journal:

I would not expect to see this output if the WiFi device has been physically disconnected like you say. For some reason, NetworkManager is continuing to detect and interact with hardware components related to the wireless device. It is possible the device has not been fully uninstalled (sometimes the networking cards are broken up into smaller embedded components, not just an isolated daughterboard), or the laptop has integrated WiFi hardware that is not user-removable.

That is to say, the hardware is not removed so much as it is just fundamentally broken due to physically missing some needed hardware components. The crashing and freezing behavior you are experiencing could easily be explained by malfunctioning hardware. Those are exactly the kind of problems faulty hardware causes.

If the WiFi cannot be fully uninstalled, you will need to instead properly disable it in order to get the behavior you want from the device.

One simple and effective way to accomplish this would be to disable wireless networking altogether in your BIOS. Depending on the device, this option may or may not be exposed to you in the BIOS settings.

If it is not a setting available in your particular BIOS, you should focus on trying to disable the devices as early in the boot process as possible. Blacklisting the kernel modules associated with WiFi and Bluetooth would be a good place to start, since this will prevent the corresponding drivers from being loaded during startup.

Another option would be to use udev (again) to disable the devices at each boot. Identify the device with lspci or similar, then create a rule in /etc/udev/rules.d/ to disable the devices.

ACTION=="add", SUBSYSTEM=="net", ATTR{address}=="xx:xx:xx:xx:xx:xx", RUN+="/bin/sh -c 'echo 0 > /sys$DEVPATH/device/rfkill/rfkill0/state'"

Something like that (obviously with the correct MAC address and device path in there), or you could try KERNEL== insteead of ATTR. Probably you would need another rule if you want to take down Bluetooth as well.

A third option would be to try to use NetworkManager itself to disable the wireless devices. For example, test if nmcli radio wifi off and nmcli radio bluetooth off has the desired effect. If so, add these commands to a systemd service that starts up just after NetworkManager first becomes available. Or, look into creating a drop-in file for the NetworkManager service to override the configuration for the network interfaces.

I suppose there are plenty of ways you could go about it. Probably just disconnecting the radio from the motherboard like you have done is not going to work.

I wouldn’t expect it either.

Ran the built-in bios diagnostics tool. The tool is nice enough to save the results to a usb stick. Part of the first log section seems relevant - it pertains to the two boards I physically removed:

Starting PSA Main.

[ Cables ]

**Wireless Switch = On**
**Wireless LAN = Not Installed**
**Bluetooth = Not Installed**
**Wireless WAN = Not Installed**

“Wireless Switch = On” was manually configured by me so I could check the output of “rfkill list all”. The output is just a blank line.

I installed hw-probe from the AUR and found this line:

pci:8086-9d3a-1028-06dc;07-80-00;detected;communication controller;mei_me;Intel Corporation;Sunrise Point-LP CSME HECI #1;Dell;Latitude E7470

I think this proves that you are correct, that is, I need to blacklist this driver. I’ll do my homework on udev rules and try that, unless you think I’m on the wrong path here. Thanks, btw, for taking all this time to help me.

Edit: I think this is related to audio instead. Getting a little lost. Guess that’s obvious

Sorry to double post, but I’m marking this solved because further testing has shown that this is not an EOS issue, or an Arch / anything issue. My Debian and Ubuntu installs are all buggered too.

Make sure to check your checksums and lock your backdoor(s) kids. Network security is a bitch.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.