mirror of
https://github.com/Felitendo/decky-cachyos-update.git
synced 2026-11-01 17:13:25 +01:00
An interrupted pacman or pamac leaves /var/lib/pacman/db.lck behind, and nothing on the system ever cleans it up, so every later run dies with "unable to lock database" until someone deletes the file by hand. The plugin used to just report that as pacman_busy and give up, which meant the one tool people use to update was permanently stuck. libalpm holds the lock file open for the whole transaction, so scanning /proc for a descriptor pointing at it tells us reliably whether the lock is live. If nobody has it open, it is an orphan and gets removed - on plugin start, before every check, and before and after every update. A lock that really is held is reported with the name of the process holding it instead. Also adds a db_locked hint and a "sudo python3 main.py --fix-lock" escape hatch for the desktop.
48 lines
1.1 KiB
JSON
48 lines
1.1 KiB
JSON
{
|
|
"name": "decky-cachyos-update",
|
|
"version": "0.0.15",
|
|
"description": "Update CachyOS from Gamemode - pacman, AUR, Flatpak and firmware in one button.",
|
|
"type": "module",
|
|
"scripts": {
|
|
"build": "rollup -c",
|
|
"watch": "rollup -c -w"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/Felitendo/decky-cachyos-update.git"
|
|
},
|
|
"keywords": [
|
|
"decky",
|
|
"plugin",
|
|
"steam-deck",
|
|
"cachyos",
|
|
"arch",
|
|
"pacman",
|
|
"update"
|
|
],
|
|
"author": "Felitendo",
|
|
"license": "BSD-3-Clause",
|
|
"bugs": {
|
|
"url": "https://github.com/Felitendo/decky-cachyos-update/issues"
|
|
},
|
|
"homepage": "https://github.com/Felitendo/decky-cachyos-update#readme",
|
|
"devDependencies": {
|
|
"@decky/rollup": "^1.0.2",
|
|
"@decky/ui": "^4.11.0",
|
|
"@types/react": "19.1.1",
|
|
"@types/react-dom": "19.1.1",
|
|
"rollup": "^4.53.3",
|
|
"typescript": "^5.6.2"
|
|
},
|
|
"dependencies": {
|
|
"@decky/api": "^1.1.3",
|
|
"react-icons": "^5.3.0",
|
|
"tslib": "^2.7.0"
|
|
},
|
|
"pnpm": {
|
|
"peerDependencyRules": {
|
|
"ignoreMissing": ["react", "react-dom"]
|
|
}
|
|
}
|
|
}
|