🖥️Setup
Get started with LNXlink
Installation
Select the installation type you want:
Install LNXlink and it's dependencies. It will create a config.yaml file and it will guide you through the basic configuration setup:
curl -L https://raw.githubusercontent.com/bkbilly/lnxlink/master/install.sh | bashYou can manually update the configuration file config.yaml and restart the service with the use of systemctl:
systemctl --user restart lnxlink.service # For user installations
sudo systemctl restart lnxlink.service # For root installationsThis command will download the LNXlink image and set up the configuration file:
docker run --network host -v ~/Documents/LNXlink/:/opt/lnxlink/config/ -it bkbillybk/lnxlink:latestCreate a docker compose file:
services:
lnxlink:
image: bkbillybk/lnxlink:latest
container_name: lnxlink
restart: unless-stopped
network_mode: host
privileged: true
stdin_open: true
tty: true
user: "1000:1000" # UID:GID
ports:
- 8112:8112
volumes:
- ~/Documents/LNXlink/:/opt/lnxlink/config/
- ~/.local/share/Steam/:/.local/share/Steam/
- /var/run/reboot-required:/var/run/reboot-required:ro
- /var/run/docker.sock:/var/run/docker.sock
- /var/run/user/1000/bus:/var/run/user/1000/bus
- /var/run/dbus/:/var/run/dbus/
- /tmp/.X11-unix:/tmp/.X11-unix
- /proc/:/proc/
- /dev/:/dev/
environment:
- DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
- DISPLAY=$DISPLAY
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]Run docker compose image:
docker compose -f docker-compose.yaml upThis is not easily maintained, so it might not be updated to the latest version. Also some modules are not fully supported.
Install and follow the setup instructions by running it. A new configuration file will be created at ~/Documents/LNXlink/config.yaml.
flatpak install flathub io.github.bkbilly.lnxlink
flatpak run io.github.bkbilly.lnxlinkSome modules are not supported like bluetooth, sys_updates, boot_select.
You will also need to manually create a systemd service to start LNXlink on boot by creating a service file.
[Unit]
Description=LNXlink
After=network-online.target multi-user.target graphical.target
PartOf=graphical-session.target
[Service]
Type=simple
Restart=always
RestartSec=5
ExecStart=flatpak run io.github.bkbilly.lnxlink
[Install]
WantedBy=default.targetThis must be enabled to start on boot:
sudo systemctl enable lnxlink.service
sudo systemctl daemon-reloadThis installs LNXlink as a development platform which is helpful if you want to create your own changes or create a new module. Read on the Development section for more information.
# Fork my repository and then download it
git clone https://github.com/bkbilly/lnxlink.git
# Install lnxlink as editable package
cd lnxlink
pip3 install -e .
# Run it manually
lnxlink -c config.yamlRun sudo commands
Some commands need to run as a root user. To fix this, you need to allow some of them to run without asking for password:
# Edit the sudoers file:
sudo visudo
# Add this line at the end (replace USER with your username):
USER ALL=(ALL) NOPASSWD: /usr/sbin/grub-rebootUninstall
Remove LNXlink from your system.
# Disables systemd service
systemctl --user disable lnxlink.service
# Remove systemd service
rm ~/.config/systemd/user/lnxlink.service
# Uninstall the package
pip3 uninstall -U lnxlink# Disables systemd service
sudo systemctl disable lnxlink.service
# Remove systemd service
sudo rm /etc/systemd/system/lnxlink.service
# Uninstall the package
sudo pip3 uninstall -U lnxlink
sudo pip3 uninstall lnxlinkLast updated