From 4821d5b5e95dea249792a681a91dd8dc52d53bcc Mon Sep 17 00:00:00 2001 From: askiiart Date: Mon, 18 Mar 2024 20:53:52 -0500 Subject: [PATCH] Add fix-gamepad.service --- backup.sh | 5 +++++ fedora-sway.sh | 1 - restore.sh | 6 ++++++ systemd/fix-gamepad.service | 9 +++++++++ 4 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 systemd/fix-gamepad.service diff --git a/backup.sh b/backup.sh index a3c7a8e..6edd197 100755 --- a/backup.sh +++ b/backup.sh @@ -65,6 +65,11 @@ cp $HOME/.claws-mail/matcherrc $GIT_DIR/claws-mail/matcherrc # xinitrc cp $HOME/.xinitrc $GIT_DIR/other-files/.xinitrc +# fix-gamepad.service +if ! command_exists "nixos-rebuild" && command_exists "systemctl"; then + cp /etc/systemd/system/fix-gamepad.service $GIT_DIR/systemd/fix-gamepad.service +fi + # rofi rm -rf $GIT_DIR/rofi/ cp -r $HOME/.config/rofi/ $GIT_DIR/rofi/ \ No newline at end of file diff --git a/fedora-sway.sh b/fedora-sway.sh index 60ea60b..77d666b 100755 --- a/fedora-sway.sh +++ b/fedora-sway.sh @@ -1,6 +1,5 @@ #!/usr/bin/env bash # assumes a Fedora Sway base with askiiart/configs/do-everything.bash already run -# TODO: Add fix-gamepad.service from askiiart/nix if [ $(whoami) == "root" ]; then echo "Run as a normal user, not root" exit 1 diff --git a/restore.sh b/restore.sh index 838af3a..e3f6776 100755 --- a/restore.sh +++ b/restore.sh @@ -79,6 +79,12 @@ if [ ! -e ~/.themes/$variant ] && ! command_exists "nixos-rebuild"; then echo -e "[Settings]\n${variant}" > ~/.config/gtk-3.0/settings.ini fi +# fix-gamepad.service +if ! command_exists "nixos-rebuild" && command_exists "systemctl"; then + sudo cp $GIT_DIR/systemd/fix-gamepad.service /etc/systemd/system/ + sudo systemctl enable --now fix-gamepad.service +fi + # VS code mkdir -p $HOME/.config/Code/User/ mkdir -p $HOME/.vscode/ diff --git a/systemd/fix-gamepad.service b/systemd/fix-gamepad.service new file mode 100644 index 0000000..2334dc3 --- /dev/null +++ b/systemd/fix-gamepad.service @@ -0,0 +1,9 @@ +[Unit] +Description=Fix the gamepad by adding an offset to the right stick +Type=simple + +[Service] +ExecStart=/usr/bin/env bash -c 'while true; do /usr/bin/env evdev-joystick --e /dev/input/by-id/usb-ShanWan_Xbox360_For_Windows_10F36D6-event-joystick --minimum -32767 --maximum 0 --a 3; /usr/bin/env evdev-joystick --e /dev/input/by-id/usb-ShanWan_Xbox360_For_Windows_10F36D6-event-joystick --minimum 0 --maximum 32767 --a 4; sleep 5; done' + +[Install] +WantedBy=multi-user.target