Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .env.example
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#rename this file to .env

SIMKL_CLIENT_ID="id"
SIMKL_CLIENT_SECRET="secret"
SIMKL_CLIENT_SECRET="placeholder"
SIMKL_ACCESS_TOKEN="token" #optional

# Note: SIMKL_CLIENT_ID and SIMKL_CLIENT_SECRET should now be set as environment variables
146 changes: 107 additions & 39 deletions docs/linux-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,32 +13,66 @@ Before installing, ensure you have the necessary system dependencies based on yo
**For Ubuntu/Debian:**
```bash
sudo apt install pipx python3-tk python3-pip python3-dev python3-setuptools wmctrl xdotool python3-gi python3-gi-cairo gir1.2-gtk-3.0 libgirepository1.0-dev libcairo2-dev pkg-config libnotify-bin python3-venv gir1.2-appindicator3-0.1 gnome-shell-extension-appindicator
```

**For Fedora/RHEL/CentOS:**
```bash
sudo dnf install pipx python3-tk python3-pip python3-devel gobject-introspection-devel cairo-devel pkg-config python3-gobject gtk3 wmctrl xdotool libnotify
```

**For Arch Linux:**
```bash
sudo pacman -S pipx python3-tk python-pip python-setuptools python-gobject gtk3 gobject-introspection cairo pkg-config wmctrl xdotool libnotify
```

### Installation Process

```mermaid
Comment thread
itskavin marked this conversation as resolved.
flowchart TD
A[Install Dependencies] --> B[Install via pipx]
B --> C[Initialize Application]
C --> D[Authenticate with Simkl]
D --> E[Configure Media Players]
E --> F[Setup Autostart]
style A fill:#4285f4,stroke:#333,stroke-width:2px,color:#fff
style D fill:#34a853,stroke:#333,stroke-width:2px,color:#fff
style F fill:#fbbc05,stroke:#333,stroke-width:2px,color:#fff
A[System Tray Icon] -->|Right-click| B[Context Menu]
B --> C[Status Information]
B --> D[Start/Pause Tracking]
B --> E[Scrobbling]
E --> E1[Retry Last Scrobble]
E --> E2[Sync Backlog Now]
E --> E3[Completion Threshold]
E --> E4[Open Local Watch History]
B --> E5[SIMKL]
E5 --> E5A[Authenticate/Re-auth]
E5 --> E5B[Open Website]
E5 --> E5C[Open Watch History]
B --> F[Maintenance]
F --> F1[Open Logs]
F --> F2[Open Data Folder]
F --> F3[Clear Backlog]
F --> F4[Clear Cache]
F --> F5[Clear Watch History]
F --> F6[Clear Logs]
F --> F7[Reset App Data]
B --> G[More]
G --> G1[Donate ❤️]
G --> G2[Check for Updates]
G --> G3[Help]
G --> G4[About]
B --> H[Exit]
style A fill:#4285f4,stroke:#333,stroke-width:2px,color:#fff
style D fill:#34a853,stroke:#333,stroke-width:2px,color:#fff
style F fill:#fbbc05,stroke:#333,stroke-width:2px,color:#fff
```
Comment on lines 17 to 40

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The installation instructions for Fedora/RHEL/CentOS and Arch Linux, along with the "Installation Process" diagram, have been removed. This appears to be unintentional, as it removes valuable information for users on those distributions. Please consider restoring the removed content. The new context menu diagram is a great addition and could be placed in a more relevant section, such as under "System Tray Integration".


- **Status information**: Current monitoring state and connection status
- **Start/Pause Tracking**: Pause or resume tracking on demand
- **Scrobbling**: Recovery and threshold controls
- **Retry Last Scrobble**: Clears cache for the active file and attempts to re-identify and scrobble it. Use when the wrong title/episode appears.
- **Sync Backlog Now**: Immediately processes any offline scrobbles waiting in backlog.
- **Completion Threshold**: Quickly switch between preset watch thresholds (65%, 80%, 90%) or define a custom percentage.
- **Open Local Watch History**: Open the local watch history viewer in your web browser.
- **SIMKL**: Account and service management
- **Authenticate / Re-authenticate**: Launch the Simkl login flow if you are signing in for the first time or need to refresh an expired token.
- **Open Website**: Visit the SIMKL website.
- **Open Watch History**: View your watch history on SIMKL.
- **Maintenance**: Logs, data, and cache management
- **Open Logs**: Jump straight to app diagnostics from the tray.
- **Open Data Folder**: Open the application data directory.
- **Clear Backlog**: Deletes pending offline scrobbles to stop repeated sync prompts.
- **Clear Cache**: Removes local media cache data while keeping logs and settings intact.
- **Clear Watch History**: Removes the local `watch_history.json` file and viewer data without touching your SIMKL account.
- **Clear Logs**: Truncates application and playback logs so you can capture a fresh session before debugging.
- **Reset App Data (Danger)**: Performs a full reset—use only when you want a clean re-authentication; the app exits afterward.
- **More**: Additional utilities
- **Donate ❤️**: Support the project.
- **Check for Updates**: Check if a newer version is available.
- **Help**: Open help documentation.
- **About**: View application information.
- **Exit**: Close the application

1. Install the application using pipx (recommended for better isolation):
```bash
# Install pipx if not already installed
Expand Down Expand Up @@ -215,27 +249,61 @@ Right-click the system tray icon to access:

```mermaid
flowchart TD
A[System Tray Icon] -->|Right-click| B[Context Menu]
B --> C[Status Information]
B --> D[Start/Pause Tracking]
B --> E[Tools Submenu]
B --> F[Online Services]
E --> E1[Open Logs]
E --> E2[Config Directory]
E --> E3[Process Backlog]
F --> F1[Simkl Website]
F --> F2[Watch History]
B --> G[Check for Updates]
B --> H[Help/About]
B --> I[Exit]
style A fill:#4285f4,stroke:#333,stroke-width:2px,color:#fff
style D fill:#34a853,stroke:#333,stroke-width:2px,color:#fff
style F fill:#fbbc05,stroke:#333,stroke-width:2px
A[System Tray Icon] -->|Right-click| B[Context Menu]
B --> C[Status Information]
B --> D[Start/Pause Tracking]
B --> E[Scrobbling]
E --> E1[Retry Last Scrobble]
E --> E2[Sync Backlog Now]
E --> E3[Completion Threshold]
E --> E4[Open Local Watch History]
B --> E5[SIMKL]
E5 --> E5A[Authenticate/Re-auth]
E5 --> E5B[Open Website]
E5 --> E5C[Open Watch History]
B --> F[Maintenance]
F --> F1[Open Logs]
F --> F2[Open Data Folder]
F --> F3[Clear Backlog]
F --> F4[Clear Cache]
F --> F5[Clear Watch History]
F --> F6[Clear Logs]
F --> F7[Reset App Data]
B --> G[More]
G --> G1[Donate ❤️]
G --> G2[Check for Updates]
G --> G3[Help]
G --> G4[About]
B --> H[Exit]
style A fill:#4285f4,stroke:#333,stroke-width:2px,color:#fff
style D fill:#34a853,stroke:#333,stroke-width:2px,color:#fff
style F fill:#fbbc05,stroke:#333,stroke-width:2px,color:#fff
```

- **Status information**: Current monitoring state and connection status
- **Start/Pause Tracking**: Toggle monitoring
- **Tools**: Access to logs, configuration, and backlog management
- **Start/Pause Tracking**: Pause or resume tracking on demand
- **Scrobbling**: Recovery and threshold controls
- **Retry Last Scrobble**: Clears cache for the active file and attempts to re-identify and scrobble it. Use when the wrong title/episode appears.
- **Sync Backlog Now**: Immediately processes any offline scrobbles waiting in backlog.
- **Completion Threshold**: Quickly switch between preset watch thresholds (65%, 80%, 90%) or define a custom percentage.
- **Open Local Watch History**: Open the local watch history viewer in your web browser.
- **SIMKL**: Account and service management
- **Authenticate / Re-authenticate**: Launch the Simkl login flow if you are signing in for the first time or need to refresh an expired token.
- **Open Website**: Visit the SIMKL website.
- **Open Watch History**: View your watch history on SIMKL.
- **Maintenance**: Logs, data, and cache management
- **Open Logs**: Jump straight to app diagnostics from the tray.
- **Open Data Folder**: Open the application data directory.
- **Clear Backlog**: Delete pending offline scrobbles to stop repeated sync prompts.
- **Clear Cache**: Remove media cache data while keeping logs and settings intact.
- **Clear Watch History**: Remove the local `watch_history.json` file and viewer data without touching your SIMKL account.
- **Clear Logs**: Truncate application and playback logs to capture a fresh session for debugging.
- **Reset App Data (Danger)**: Perform a full reset—use only when you want a clean re-authentication; the app will exit afterward.
- **More**: Additional utilities
- **Donate ❤️**: Support the project.
- **Check for Updates**: Check if a newer version is available.
- **Help**: Open help documentation.
- **About**: View application information.
- **Exit**: Close the application

### Linux-Specific File Locations
Expand Down
54 changes: 33 additions & 21 deletions docs/usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,27 +60,39 @@ MPS for SIMKL uses the system tray/notification area to show its current status
| ![Stopped](../simkl_mps/assets/simkl-mps-stopped.png) | **Stopped** | App is inactive and not tracking (but still running in tray) |
| ![Error](../simkl_mps/assets/simkl-mps-error.png) | **Error** | There's an issue with the app (authentication, API, etc.) |

Right-click the tray icon to access the app menu with options to:
- Start/stop/pause monitoring
- View currently detected media
- Access settings
- **Tools:**
- **Try Scrobble Again:** If media is misidentified or fails to scrobble, use this option. It clears the cache for the currently playing item and attempts to re-identify and scrobble it. You'll see a notification like `Attempting to re-identify 'Your Media Title'...` when triggered, followed by the usual scrobbling notifications if successful.
- **Clear Cache:** Removes all cached media identification data and backlog entries. This option:
- Clears all stored media cache files
- Removes all backlog data (pending scrobbles)
- Resets currently tracked media
- Shows a confirmation dialog before proceeding
- Helpful when experiencing persistent identification issues or after major updates
- **Clear All Data:** Completely resets the application by removing:
- All cached media data
- All log files
- Backlog and playback history
- Watch history
- All settings and credentials
- Environment configuration
- **Note:** This is a drastic action that will exit the application after completion and require re-authentication
- Exit the application
Right-click the tray icon to access the app menu with the following sections:

**Main Actions:**
- **Start/Pause Tracking:** Toggle tracking on demand
- **Status:** View current monitoring and connection state

**Scrobbling** - Recovery and threshold controls:
- **Retry Last Scrobble:** Clears cache for the active file and attempts to re-identify and scrobble it. Use when the wrong title/episode appears.
- **Sync Backlog Now:** Immediately processes any offline scrobbles waiting in backlog.
- **Completion Threshold:** Quickly switch between preset watch thresholds (65%, 80%, 90%) or define a custom percentage.
- **Open Local Watch History:** Browse your tracked movies, shows, and anime in the local viewer.

**SIMKL** - Account and service management:
- **Authenticate / Re-authenticate:** Sign in to SIMKL or refresh an expired token.
- **Open Website:** Visit the SIMKL website.
- **Open Watch History:** View your watch history on SIMKL.

**Maintenance** - Logs, data, and cache management:
- **Open Logs:** View application and playback logs.
- **Open Data Folder:** Access the application data directory.
- **Clear Backlog:** Delete pending offline scrobbles.
- **Clear Cache:** Remove media identification cache while preserving logs and settings.
- **Clear Watch History:** Remove the local `watch_history.json` file and viewer data without affecting your SIMKL account.
- **Clear Logs:** Reset application and playback logs to capture a fresh session for debugging.
- **Reset App Data (Danger):** Perform a full reset. Use only when you need a clean re-authentication; the app will exit afterward.

**More** - Additional utilities:
- **Donate ❤️:** Support the project.
- **Check for Updates:** Check if a newer version is available.
- **Help:** Open help documentation.
- **About:** View application information.

**Exit:** Close the application

## 🚦 Real-World Performance Timings

Expand Down
65 changes: 54 additions & 11 deletions docs/windows-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,13 @@ flowchart LR
- **Auto-update system**: Checks for updates weekly
- **Clean uninstallation**: Properly removes all components

### Silent & Automated Deployment

- The installer now honors common enterprise parameters: use `/quiet`, `/silent`, `/s`, `/qn`, or `/passive` when automating deployments
- Each alias maps internally to Inno Setup's `/VERYSILENT /SUPPRESSMSGBOXES /NORESTART` flags, ensuring the Microsoft Store silent install check succeeds
- Combine additional switches such as `/LOG="C:\\temp\\mpss-install.log"` as needed; they will be preserved when silent aliases are used
- When running interactively, the traditional `/SILENT` or `/VERYSILENT` options continue to function unchanged

### Post-Installation

After installation completes:
Expand All @@ -70,22 +77,58 @@ flowchart TD
A[System Tray Icon] -->|Right-click| B[Context Menu]
B --> C[Status Information]
B --> D[Start/Pause Tracking]
B --> E[Tools Submenu]
E --> E1[Open Logs]
E --> E2[Config Directory]
E --> E3[Process Backlog]
B --> F[Check for Updates]
B --> G[Help/About]
B --> E[Scrobbling]
E --> E1[Retry Last Scrobble]
E --> E2[Sync Backlog Now]
E --> E3[Completion Threshold]
E --> E4[Open Local Watch History]
B --> E5[SIMKL]
E5 --> E5A[Authenticate/Re-auth]
E5 --> E5B[Open Website]
E5 --> E5C[Open Watch History]
B --> F[Maintenance]
F --> F1[Open Logs]
F --> F2[Open Data Folder]
F --> F3[Clear Backlog]
F --> F4[Clear Cache]
F --> F5[Clear Watch History]
F --> F6[Clear Logs]
F --> F7[Reset App Data]
B --> G[More]
G --> G1[Donate ❤️]
G --> G2[Check for Updates]
G --> G3[Help]
G --> G4[About]
B --> H[Exit]
style A fill:#4285f4,stroke:#333,stroke-width:2px,color:#fff
style D fill:#34a853,stroke:#333,stroke-width:2px,color:#fff
style F fill:#fbbc05,stroke:#333,stroke-width:2px
```

- **Status information**: Current monitoring state and connection status
- **Start/Pause Tracking**: Toggle monitoring
- **Tools**: Access to logs, configuration, and backlog management
- **Check for Updates**: Manually check for and install updates
- **Start/Pause Tracking**: Pause or resume tracking on demand
- **Scrobbling**: Recovery and threshold controls
- **Retry Last Scrobble**: Clears cache for the active file and attempts to re-identify and scrobble it. Use when the wrong title/episode appears.
- **Sync Backlog Now**: Immediately processes any offline scrobbles waiting in backlog.
- **Completion Threshold**: Quickly switch between preset watch thresholds (65%, 80%, 90%) or define a custom percentage.
- **Open Local Watch History**: Open the local watch history viewer in your web browser.
- **SIMKL**: Account and service management
- **Authenticate / Re-authenticate**: Launch the Simkl login flow if you are signing in for the first time or need to refresh an expired token.
- **Open Website**: Visit the SIMKL website.
- **Open Watch History**: View your watch history on SIMKL.
- **Maintenance**: Logs, data, and cache management
- **Open Logs**: Jump straight to app diagnostics from the tray.
- **Open Data Folder**: Open the application data directory.
- **Clear Backlog**: Deletes pending offline scrobbles to stop repeated sync prompts.
- **Clear Cache**: Removes local media cache data while keeping logs and settings intact.
- **Clear Watch History**: Removes the local `watch_history.json` file and viewer data without touching your SIMKL account.
- **Clear Logs**: Truncates application and playback logs so you can capture a fresh session before debugging.
- **Reset App Data (Danger)**: Performs a full reset—use only when you want a clean re-authentication; the app exits afterward.
- **More**: Additional utilities
- **Donate ❤️**: Support the project.
- **Check for Updates**: Check if a newer version is available.
- **Help**: Open help documentation.
- **About**: View application information.
- **Exit**: Close the application

### Windows Auto-Start
Expand Down Expand Up @@ -151,15 +194,15 @@ The Windows installer version includes an automatic update system:
### Checking Logs on Windows

1. Right-click the system tray icon
2. Select **Tools → Open Logs**
2. Select **Maintenance → Open Logs**
3. The log file opens in your default text editor

### Running with Debug Logging

For advanced troubleshooting:
1. Open Command Prompt or PowerShell
2. Navigate to the installation directory
3. Run: `simkl-mps.exe --debug`
3. Run: `simkl-mps tray --debug`

## 📲 Uninstallation

Expand Down
Loading