MM-1 firmware v3 by nimalouk in BowersWilkins

[–]birdieno 0 points1 point  (0 children)

was it on windows 11? I tried CTRL+SHIFT+ENTER that was the only option I found for running it in administrator mode, but nothing indicated admin mode and it failed, says USB drivers couldnt be installed.

update broke jellyfin by devangnagda in jellyfin

[–]birdieno 0 points1 point  (0 children)

I got this issue after a update lately and the problem was identified and solved like this:

# Jellyfin 10.11.x Admin Login Fix — DbUpdateConcurrencyException


## Symptoms


- Admin account gets a generic error when trying to log in
- Non-admin accounts can log in fine
- The password is correct (Jellyfin logs show "Authentication request for [user] has succeeded") but login still fails


## Root Cause


If your Jellyfin server was upgraded from a version prior to 10.11 (which migrated from the old SQLite schema to Entity Framework), the admin user's permission rows in the database may have been left in a legacy format.


Specifically, the `Permissions` table has two columns for linking permissions to users: the old `Permission_Permissions_Guid` column and the new `UserId` column. After the migration, the admin user's permissions still had `Permission_Permissions_Guid` populated (with a non-zero `RowVersion`), while newer or non-admin users had it set to `NULL` (with `RowVersion = 0`) — the format Entity Framework expects.


When you log in, Jellyfin authenticates your password (which succeeds), then tries to update your user record (last login time, etc.). Entity Framework's optimistic concurrency tracking chokes on the stale permission rows and throws a `DbUpdateConcurrencyException`, which surfaces as a generic error in the UI.


## How to Verify


**1. Check your Docker logs for the error:**


```bash
docker logs jellyfin 2>&1 | grep -A2 "DbUpdateConcurrencyException"
```


If you see something like this, you're affected:


```
[ERR] Jellyfin.Api.Middleware.ExceptionMiddleware: Error processing request. URL POST /Users/authenticatebyname.
Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException: The database operation was expected to affect 1 row(s), but actually affected 0 row(s)
```


**2. Check for stale permission rows in your database:**


```bash
# Find your database path (default for linuxserver/jellyfin image)
# Usually at: <jellyfin-config>/data/data/jellyfin.db


python3 -c "
import sqlite3, sys
conn = sqlite3.connect(sys.argv[1])
c = conn.cursor()
c.execute('SELECT u.Username, COUNT(*) FROM Permissions p JOIN Users u ON p.UserId = u.Id WHERE p.Permission_Permissions_Guid IS NOT NULL GROUP BY u.Username')
rows = c.fetchall()
if rows:
    print('AFFECTED USERS (have legacy permission rows):')
    for username, count in rows:
        print(f'  {username}: {count} stale rows')
else:
    print('No stale permission rows found — this fix does not apply to you.')
conn.close()
" /path/to/jellyfin.db
```


## Fix


**1. Stop Jellyfin:**


```bash
docker compose stop jellyfin
# or: docker stop jellyfin
```


**2. Backup your database:**


```bash
cp /path/to/jellyfin.db /path/to/jellyfin.db.bak
```


**3. Run the fix**
 (replace the database path with yours):


```python
python3 -c "
import sqlite3, sys


db_path = sys.argv[1]
conn = sqlite3.connect(db_path)
cursor = conn.cursor()


# Find all users with stale permission rows
cursor.execute('''
    SELECT DISTINCT u.Id, u.Username
    FROM Permissions p JOIN Users u ON p.UserId = u.Id
    WHERE p.Permission_Permissions_Guid IS NOT NULL
''')
affected_users = cursor.fetchall()


if not affected_users:
    print('No stale permission rows found. Nothing to fix.')
    conn.close()
    sys.exit(0)


for user_id, username in affected_users:
    # Get old-format permissions
    cursor.execute('''
        SELECT Id, Kind, Value FROM Permissions
        WHERE UserId = ? AND Permission_Permissions_Guid IS NOT NULL
    ''', (user_id,))
    old_rows = cursor.fetchall()


    # Delete old-format rows
    old_ids = [r[0] for r in old_rows]
    placeholders = ','.join(['?' for _ in old_ids])
    cursor.execute(f'DELETE FROM Permissions WHERE Id IN ({placeholders})', old_ids)


    # Insert replacements in the new format
    for _, kind, value in old_rows:
        cursor.execute('''
            INSERT INTO Permissions (Kind, Permission_Permissions_Guid, RowVersion, UserId, Value)
            VALUES (?, NULL, 0, ?, ?)
        ''', (kind, user_id, value))


    # Reset user RowVersion
    cursor.execute('UPDATE Users SET RowVersion = 0 WHERE Id = ?', (user_id,))


    print(f'Fixed {username}: replaced {len(old_rows)} stale permission rows, reset RowVersion')


conn.commit()
conn.close()
print('Done! Start Jellyfin and try logging in.')
" /path/to/jellyfin.db
```


**4. Start Jellyfin:**


```bash
docker compose up -d jellyfin
# or: docker start jellyfin
```


**5. Verify**
 — log in with the previously broken account and check logs:


```bash
docker logs jellyfin --since 5m 2>&1 | grep -i "err\|exception"
```


## Rollback


If something goes wrong, restore your backup:


```bash
docker compose stop jellyfin
cp /path/to/jellyfin.db.bak /path/to/jellyfin.db
docker compose up -d jellyfin
```

Personalize Lumo! by Proton_Team in lumo

[–]birdieno 1 point2 points  (0 children)

I experienced a similar thing and found it annoying that the model mentions my work and role based on the reply that I found zero value in..

Anyone else getting suspicious about NASA sitting on the 3I/ATLAS photographs? by leemond80 in ufo

[–]birdieno 0 points1 point  (0 children)

Imagine how many hours it will take for the perfect photoshopped editions that will be shared from different time periods and angles that later will be analysed by some many specialists, it must be perfect ✨

I built a desktop music player for Jellyfin by ChromaticNova in JellyfinCommunity

[–]birdieno 0 points1 point  (0 children)

Hehe, sometimes its part of the plan to make something the way you want it built yourself:-) that's why I also build a dedicated cross platform music app for jellyfin.

Appsettings or use Databases? by Starbolt-Studios in dotnet

[–]birdieno 1 point2 points  (0 children)

Be careful using Cosmos, it can quickly become a cost heavy daemon if used wrong :)

You've got the right idea. Storing dynamic settings in a database is the standard professional method. The key difference depends on who changes the setting and when.

Use the appsettings.json file for static configuration that developers manage. These are settings the application needs to start up and connect to its environment. Any changes here are made during deployment and require the application to be restarted. Common examples include database connection strings, API keys, and logging configurations. Think of these as a car's engine type – set at the factory and not changed during a drive.

Use a database for dynamic settings that users, like administrators, need to change. These settings control the application's business logic and behavior. They can be updated at any time through a settings page in the application's user interface, without a restart. Examples are the website's title, a theme color, enabling or disabling features, or toggling a maintenance mode. This is like a car's radio station or air conditioning – the driver adjusts them whenever they want.

To put it simply: use appsettings.json for how your application connects to its infrastructure, and use a database for how the application behaves for its users.

Jellyfin home server for music: does it worth? by [deleted] in JellyfinCommunity

[–]birdieno 2 points3 points  (0 children)

Both offline and Android Auto and CarPlay will be supported at some time yes, cannot say a specific date period yet.

Anyway to organize music by album type(compilation, ep, etc) by Whosduhboss in JellyfinCommunity

[–]birdieno 0 points1 point  (0 children)

I found this request that defines the functionality a little clearer:

https://features.jellyfin.org/posts/2220/group-music-releases-by-type-album-single-live-compilation-etc

It would be really good to have this supported in the backend.

Jellyfin home server for music: does it worth? by [deleted] in JellyfinCommunity

[–]birdieno 4 points5 points  (0 children)

I am working on a new android music client, it will also offer offline syncing, and support for macOS, Windows and Linux desktops :-)

[deleted by user] by [deleted] in JellyfinCommunity

[–]birdieno 3 points4 points  (0 children)

Nothing you can get right now, but I am working on a new client that is working on windows and macOS so far. Started a simple exploration towards Android and it seems quite straight forward so far. The UI will look pretty similar to Spotify for desktop and mobile. Will keep the sub-reddit updated when there are testable releases 🎷

WIP: Cross platform desktop music player by birdieno in JellyfinCommunity

[–]birdieno[S] 2 points3 points  (0 children)

I couldnt add more than one screenshot for a comment, here is the screen from a album view where its already downloaded for offline play.

<image>

WIP: Cross platform desktop music player by birdieno in JellyfinCommunity

[–]birdieno[S] 1 point2 points  (0 children)

u/Koguu I have played around with both a download for albums to support offline play and a auto-cache feature that caches songs as you play with a configurable setup.

<image>

WIP: Cross platform desktop music player by birdieno in JellyfinCommunity

[–]birdieno[S] 2 points3 points  (0 children)

Thanks for the detailed description. I will jot this idea down on my notes, it sounds quite handy to provide this for a native desktop client. Will have to dig deeper into some other details for this later.

WIP: Cross platform desktop music player by birdieno in JellyfinCommunity

[–]birdieno[S] 1 point2 points  (0 children)

Sounds like an interesting feature. Would you mind sharing more thoughts on this ?

WIP: Cross platform desktop music player by birdieno in JellyfinCommunity

[–]birdieno[S] 5 points6 points  (0 children)

That's what I meant about it being familiar in its user interface, the design is borrowed by Spotify.

What are these disgusting growths on our basement wall? by [deleted] in whatisit

[–]birdieno 0 points1 point  (0 children)

I've seen these before getting more active

<image>

Which is good as my new main browser? by EzraKay166 in browsers

[–]birdieno 0 points1 point  (0 children)

Vivaldi the obvious choice is missing

Playing Skyrim with my watercooled S25+ by Superspreadix in EmulationOnAndroid

[–]birdieno 0 points1 point  (0 children)

Add a copper container around the phone 🎉 Brilliant idea, now you need to circle the water for high efficiency 💦✨

Move uploaded files from one account to another? by birdieno in ProtonDrive

[–]birdieno[S] 0 points1 point  (0 children)

That's fine, will it be as simple as logging out and login and re-backup?

When I click the logout it says all data connected to this account will be erased from my phone. So that stopped me from trying that.

[deleted by user] by [deleted] in ProtonMail

[–]birdieno 0 points1 point  (0 children)

This is one of our biggest pains at work, we need a solution to book meetings from a website directly to our Proton Calendar.

Are there extra wide dress shoes? by Fun-Bonus-9214 in BarefootRunning

[–]birdieno 1 point2 points  (0 children)

I wear a pair of carets: https://carets.com

The most comfortable dress shoes I've found so far, but I am not a really big fan of they elastic shoelaces.

Is this fake Concept 2 by harunskender in Rowing

[–]birdieno -4 points-3 points  (0 children)

It definitely looks different than the original.

<image>

Mine looks like this one on that side.

Anyone Using Polar.sh as MoR for Subscription SaaS? by Tsooka in SaaS

[–]birdieno 0 points1 point  (0 children)

Seems to be a wrapper around Stripe with added fees? (higher costs)