Compare commits

...

6 Commits

Author SHA1 Message Date
WerWolv 73559ae8c7 Make sure install scripts don't create folders as root 2022-04-22 21:48:36 +02:00
WerWolv 340ea91d1c Fixed calling backend functions after restarting steam 2022-04-22 18:43:52 +02:00
WerWolv 3f3f6bd475 Allow inject_css_into_tab to create more than just a single css rule 2022-04-22 14:30:58 +02:00
WerWolv 4b2f8cd8f5 Make sure old user plugin loader is being removed 2022-04-21 18:03:05 +02:00
WerWolv 604006a7cb Fixed root check 2022-04-21 17:46:53 +02:00
WerWolv 7aa4e9106a Make release script actually work again 2022-04-21 17:44:12 +02:00
4 changed files with 26 additions and 11 deletions
+2 -2
View File
@@ -8,8 +8,8 @@ HOMEBREW_FOLDER=/home/deck/homebrew
# Create folder structure
rm -rf ${HOMEBREW_FOLDER}/services
mkdir -p ${HOMEBREW_FOLDER}/services
mkdir -p ${HOMEBREW_FOLDER}/plugins
sudo -u deck mkdir -p ${HOMEBREW_FOLDER}/services
sudo -u deck mkdir -p ${HOMEBREW_FOLDER}/plugins
# Download latest nightly build and install it
rm -rf /tmp/plugin_loader
+15 -8
View File
@@ -1,13 +1,15 @@
#!/bin/sh
[ "$UID" -eq 0 ] || exec sudo "$0" "$@"
echo "Installing Steam Deck Plugin Loader release..."
HOMEBREW_FOLDER=/home/deck/homebrew
# Create folder structure
rm -rf ${HOMEBREW_FOLDER}/services
mkdir -p ${HOMEBREW_FOLDER}/services
mkdir -p ${HOMEBREW_FOLDER}/plugins
sudo -u deck mkdir -p ${HOMEBREW_FOLDER}/services
sudo -u deck mkdir -p ${HOMEBREW_FOLDER}/plugins
# Download latest release and install it
curl -L https://github.com/SteamDeckHomebrew/PluginLoader/releases/latest/download/PluginLoader --output ${HOMEBREW_FOLDER}/services/PluginLoader
@@ -15,18 +17,23 @@ chmod +x ${HOMEBREW_FOLDER}/services/PluginLoader
systemctl --user stop plugin_loader 2> /dev/null
systemctl --user disable plugin_loader 2> /dev/null
rm -f /home/deck/.config/systemd/user/plugin_loader.service
cat > /home/deck/.config/systemd/user/plugin_loader.service <<- EOM
systemctl stop plugin_loader 2> /dev/null
systemctl disable plugin_loader 2> /dev/null
rm -f /etc/systemd/system/plugin_loader.service
cat > /etc/systemd/system/plugin_loader.service <<- EOM
[Unit]
Description=SteamDeck Plugin Loader
[Service]
Type=simple
User=root
Restart=always
ExecStart=/home/deck/homebrew/services/PluginLoader
WorkingDirectory=/home/deck/homebrew/services
Environment=PLUGIN_PATH=/home/deck/homebrew/plugins
[Install]
WantedBy=default.target
WantedBy=multi-user.target
EOM
systemctl --user daemon-reload
systemctl --user start plugin_loader
systemctl --user enable plugin_loader
systemctl daemon-reload
systemctl start plugin_loader
systemctl enable plugin_loader
+8
View File
@@ -54,11 +54,19 @@ class PluginManager:
loop.default_exception_handler(context)
async def loader_reinjector(self):
finished_reinjection = False
while True:
await sleep(1)
if not await tab_has_element("QuickAccess", "plugin_iframe"):
logger.info("Plugin loader isn't present in Steam anymore, reinjecting...")
await self.inject_javascript()
finished_reinjection = True
elif finished_reinjection:
finished_reinjection = False
logger.info("Reinjecting successful!")
self.loop.create_task(self.method_call_listener())
async def inject_javascript(self, request=None):
try:
+1 -1
View File
@@ -59,7 +59,7 @@ class Utilities:
const style = document.createElement('style');
style.id = "{css_id}";
document.head.append(style);
style.sheet.insertRule(`{style}`);
style.textContent = `{style}`;
}})()
""", False)