Commit Graph

108 Commits

Author SHA1 Message Date
f392ce0d31 Fix youtube-music wrapper to point to .real binary 2025-12-07 14:42:21 +01:00
aab2c1acbc Add instant mode for near-instantaneous music app termination
- New 'instant' mode polls every 0.5 seconds (vs 3s for regular mode)
- Made instant mode the default for the systemd service
- Added youtube-music-wrapper.sh to block launch when focus apps running
- YouTube Music killed within 0.5 seconds of opening
2025-12-07 14:40:42 +01:00
f805be2f0f Revert to SIGKILL (-9) for reliable music app termination 2025-12-07 14:37:20 +01:00
17899e3721 Use gentler SIGTERM instead of SIGKILL for music apps 2025-12-07 14:36:11 +01:00
88a6b5db4a Reduce music parallelism check interval from 10s to 3s 2025-12-07 14:35:04 +01:00
a1407338aa Fix music parallelism log to use user directory instead of /var/log 2025-12-07 14:34:23 +01:00
8800d502ae Fix music parallelism: add youtube-music Electron app detection and use SIGKILL
- Added 'youtube-music' and 'YouTube Music' patterns to detect Electron app
- Added explicit killing of youtube-music process
- Use SIGKILL (-9) to ensure apps are actually terminated
- Fixed log function to not fail on permission errors
2025-12-07 14:31:36 +01:00
774c28b7a7 Add music parallelism prevention script
Prevents multitasking between focus work and music streaming.
When focus apps (VS Code, Steam, Godot, etc.) are detected running
alongside music services (YouTube Music, Spotify, etc.), the music
is automatically stopped.

Features:
- Monitors for focus applications (IDEs, games, creative software)
- Detects music streaming via browser tabs and native apps
- Closes music windows/processes when conflict detected
- Desktop notifications when music is stopped
- Status command to check current state
- Systemd service for background monitoring
2025-12-07 14:27:19 +01:00
7c15b2d3aa Add multi-layer protection to shutdown timer monitor
- Add RefuseManualStop=true to prevent systemctl stop
- Add RestartForceExitStatus to restart even on SIGTERM/SIGKILL
- Add watchdog timer that checks monitor every 60 seconds
- Watchdog also restarts the main timer if stopped
- Tested: manual stop refused, pkill auto-restarts, timer tampering detected
2025-12-07 14:20:05 +01:00
92cc79a972 Add shutdown timer monitor service to prevent disabling
- Remove 'disable' option from setup_midnight_shutdown.sh
- Add shutdown-timer-monitor.sh that watches the timer every 30s
- Re-enables timer automatically if someone tries to disable it
- Monitor service installed alongside the timer
- Makes it significantly harder to bypass the shutdown schedule
- Similar pattern to hosts-file-monitor.service
2025-12-07 14:08:13 +01:00
8fcf1c0b07 Add original monolithic Nextcloud setup script
This is the original all-in-one script that was later split into:
- raspberry_pi_flash_sd.sh (SD card flashing)
- raspberry_pi_nextcloud.sh (Nextcloud installation)

Kept for reference and as an alternative single-script deployment option.
2025-12-05 20:01:53 +01:00
4762281985 Add Raspberry Pi 5 Nextcloud deployment scripts
- raspberry_pi_flash_sd.sh: Flash RPi OS to SD card (local/remote)
  - Auto-discovers SD cards on local or remote systems
  - Configures headless SSH access with auto-generated passwords
  - Supports flashing via remote laptop with SD card reader

- raspberry_pi_nextcloud.sh: Install and configure Nextcloud
  - Automated installation of Nextcloud with Apache, MariaDB, Redis
  - DuckDNS + Let's Encrypt for publicly trusted HTTPS
  - Security hardening: HSTS, cron jobs, default phone region
  - Auto-generated admin credentials stored in config file
  - fix command for security warnings
  - setup-ssl-remote for Let's Encrypt via DuckDNS

Includes shellcheck compliance with appropriate directives.
2025-12-05 20:00:30 +01:00
2eacdc07dc Add greylist support for challenge-required packages
- Create pacman_greylist.txt with virtualbox as initial entry
- Add is_greylisted_package_name() for substring matching
- Add remove_installed_greylisted_packages() to auto-uninstall
- Replace hardcoded VirtualBox check with generic greylist check
- Update installer to copy greylist file
2025-12-04 21:33:29 +01:00
4c05f520ba fix: repair media-organizer.service and prevent future issues
- Add fix_systemctl.sh to repair corrupted media-organizer.service
- Fix setup_media_organizer.sh to use SUDO_USER instead of whoami
  when running with sudo (prevents User/Group being set to root)

The service was failing due to:
1. Corrupted ExecStart path (line break in the middle)
2. Wrong script path (missing 'utils/' directory)
3. User/Group set to root instead of actual user
2025-12-04 20:31:44 +01:00
526362d665 Fix check_and_enable_services.sh and hosts guard
- Fix startup_monitor check to verify timer instead of service
- Fix pacman hooks filename check (10-unlock-etc-hosts.hook, 90-relock-etc-hosts.hook)
- Add re-verification after fixes to update status correctly
- Set immutable attribute before bind mount in pacman-post-relock-hosts.sh
- Add new check_and_enable_services.sh script for verifying all digital wellbeing services
2025-12-04 15:14:50 +01:00
11e51eac90 feat: script for install unreal mcp kvick 2025-11-28 20:39:02 +01:00
0b9035ff1a chore: rooting bl9000 with etc hosts 2025-11-17 11:14:38 +01:00
77d1cc581e fix: resolve all shellcheck errors
- Replace 'A && B || C' patterns with proper if-then-else statements (SC2015)
- Add check_for_virtualbox function to invoke prompt_for_virtualbox_challenge (SC2317)
- Fix install_launcher function to escape variable in heredoc (SC2119/SC2120)
- Apply shfmt formatting to ensure consistent style

Fixes 7 SC2015 violations, 1 SC2317 violation, and 1 SC2119/SC2120 pair.
All 79 shell files now pass shellcheck without errors.
2025-11-16 21:17:08 +01:00
83ceb57f25 style: convert tabs to spaces in shell_check.sh 2025-11-16 21:00:22 +01:00
f55e6ed97c style: convert remaining tabs to spaces in root_bl9000.sh 2025-11-16 20:59:56 +01:00
bf7bebbfef refactor: remove all skip-fmt flags and enforce all checks always 2025-11-16 20:55:39 +01:00
2b83adb0f6 feat: add auto-fix to pre-commit hook with --skip-fmt option 2025-11-16 20:40:34 +01:00
c1b1282d64 feat: root bl9000 script with backup functionality 2025-11-16 20:37:48 +01:00
41fe3b9b26 feat: add 4 utils 2025-11-14 15:44:34 +01:00
7df66d141e feat: script for formatting sd card 2025-11-14 14:49:51 +01:00
07b98215b1 fix: installing mcp plugin in speicifc unreal project 2025-11-06 21:05:15 +01:00
be0d3164f0 feat: add install unreal mcp script 2025-11-06 20:33:03 +01:00
65754e816b feat: add install unreal mcp script 2025-11-06 20:24:19 +01:00
1ffca72ee8 chore: fix shell check issues 2025-11-06 19:39:04 +01:00
c40aa2217e feat: added script for fixing xbox controller 2025-11-06 17:31:02 +01:00
43e2799156 Import testsAndMisc/Bash as subtree (preserve history)
git-subtree-dir: scripts/misc/testsAndMisc-bash
git-subtree-mainline: d19bb5915a
git-subtree-split: 49bcc2ca68
2025-11-01 16:27:05 +01:00
c1e6aae2e2 Add test script 2025-11-01 15:45:00 +01:00
42db2c1d44 fix: shellcheck issues 2025-11-01 15:36:22 +01:00
8d2144331e feat: shell check script 2025-11-01 13:50:07 +01:00
d854019534 feat: removed yt from pacman blocked list 2025-10-31 18:00:30 +01:00
b2ef334526 Revert "feat: removed pre unlock hosts script"
This reverts commit 14d5802544.
2025-10-31 17:50:11 +01:00
e88cf53483 feat: add 3 python packages to whitelist 2025-10-31 17:37:26 +01:00
63a4f8b3ae chore: organize scripts folder 2025-10-31 17:31:16 +01:00
14d5802544 feat: removed pre unlock hosts script 2025-10-31 17:16:48 +01:00
7b48fc552f expand pacman whitelist and fix locked db 2025-10-24 23:30:01 +02:00
71908ca493 feat: more robust toggle wheel script 2025-10-24 23:20:12 +02:00
63b3a90dfa added yt and youtube to blocked keywords 2025-10-19 22:14:09 +02:00
555de725ef feat: blocked and allowed list for pacman wrapper 2025-10-16 19:48:12 +02:00
294d4fe5cd fix: pacman hooks for hosts 2025-10-13 10:21:35 +02:00
b2facbc444 feat: virtualbox remote control scripts 2025-10-05 17:01:53 +02:00
7ae41b5490 fix: organize downloads liberfal file choice 2025-09-15 17:15:25 +02:00
6b1384597d hosts file monitor 2025-09-06 18:15:17 +02:00
b4df463a61 feat: steam compatibility script 2025-09-06 17:58:54 +02:00
584999f1e9 fix: organize downloads clogging tmp memory 2025-09-06 15:32:48 +02:00
aec80ed39c feat: speedup hosts installation 2025-09-06 14:28:17 +02:00