I spent my day reinstalling Solus on my Samsung laptop equipped with a brand new ssd, and to my surprise I was confronted with the ethernet that doesn't come back after a sleep mode. I came back to this post to find the solution.
On the link above, I used one of the solutions proposed by a member for driver r8169:
Here's another simple(r?) solution: create a systemd service whose only task is to unload/reload the module after a suspend cycle (I named it /etc/systemd/system/fix-r8169.service):
[Unit]
Description=Fix RTL-8169 Driver on resume from suspend
After=suspend.target
[Service]
User=root
Type=oneshot
ExecStartPre=/sbin/modprobe -r r8169
ExecStart=/sbin/modprobe r8169
TimeoutSec=0
StandardOutput=syslog
[Install]
WantedBy=suspend.target
Then just execute systemctl enable fix-r8169.service, and you should be set!! Systemd will now automagically unload-and-reload your module upon wake from suspend.
Cheers!
After having identified my driver, thanks to an inxi -Fz
in a terminal, my driver is sky2, I simply indicated it in the file I saved in fix-sky2.service,
[Unit]
Description=Fix sky2 Driver on resume from suspend
After=suspend.target
[Service]
User=root
Type=oneshot
ExecStartPre=/sbin/modprobe -r sky2
ExecStart=/sbin/modprobe sky2
TimeoutSec=0
StandardOutput=syslog
[Install]
WantedBy=suspend.target
then copy it in /etc/systemd/system/ and finally, did a sudo systemctl enable fix-sky2.service
.
My ethernet comes back after sleep, after 2 or 3 seconds, but it's good it works and maybe, this topic will help someone.