home · contact · privacy
Christian Heller [Thu, 26 Dec 2024 08:07:07 +0000 (09:07 +0100)]
On sync, rather than only unlink "deleted" files, also remove their DB entries.
Christian Heller [Thu, 26 Dec 2024 02:26:35 +0000 (03:26 +0100)]
To file view, add button to unlink locally.
Christian Heller [Wed, 25 Dec 2024 20:27:05 +0000 (21:27 +0100)]
Add "do not sync" flag to keep files from syncing without deleting them.
Christian Heller [Wed, 25 Dec 2024 20:24:51 +0000 (21:24 +0100)]
Don't try to ffprobe for duration if file is not actually present.
Christian Heller [Wed, 25 Dec 2024 19:59:20 +0000 (20:59 +0100)]
Fix sync using from hash representation for retrieving "missing" files.
Christian Heller [Wed, 25 Dec 2024 19:55:58 +0000 (20:55 +0100)]
For sync, identify missing files by .digest.b64 rather than relative path.
Christian Heller [Wed, 25 Dec 2024 18:28:56 +0000 (19:28 +0100)]
To file data view, add duration as per ffprobe.
Christian Heller [Mon, 23 Dec 2024 16:14:51 +0000 (17:14 +0100)]
Fix variability of VideoFile hash due to missing sorting of joined tags.
Christian Heller [Mon, 23 Dec 2024 16:14:20 +0000 (17:14 +0100)]
Improve verbosity of sync script.
Christian Heller [Sun, 22 Dec 2024 13:21:27 +0000 (14:21 +0100)]
Don't start right into playback, simplify player control.
Christian Heller [Thu, 19 Dec 2024 04:38:10 +0000 (05:38 +0100)]
Fix broken tag editing.
Christian Heller [Thu, 19 Dec 2024 04:07:32 +0000 (05:07 +0100)]
Fix tags not showing in file view.
Christian Heller [Thu, 19 Dec 2024 03:30:18 +0000 (04:30 +0100)]
Fix playing link brokenness.
Christian Heller [Wed, 18 Dec 2024 16:49:56 +0000 (17:49 +0100)]
Simplify keeping alive of events stream.
Christian Heller [Wed, 18 Dec 2024 15:02:24 +0000 (16:02 +0100)]
Minor improvements to events connection handling.
Christian Heller [Wed, 18 Dec 2024 13:23:59 +0000 (14:23 +0100)]
Minor code clean-up.
Christian Heller [Tue, 17 Dec 2024 00:34:01 +0000 (01:34 +0100)]
Identify "playing" entry in playlist by playlist.idx rather than digest, to avoid entries of same file claiming to be "playing" in parallel.
Christian Heller [Tue, 17 Dec 2024 00:29:34 +0000 (01:29 +0100)]
Restart playlist after ending of last file.
Christian Heller [Mon, 16 Dec 2024 14:33:36 +0000 (15:33 +0100)]
In /playlist, don't block moving up/down towards playing entry, rather jump over it.
Christian Heller [Mon, 16 Dec 2024 13:52:49 +0000 (14:52 +0100)]
Re-organize Player code.
Christian Heller [Sun, 15 Dec 2024 08:05:09 +0000 (09:05 +0100)]
Slightly reorganize sync script.
Christian Heller [Sun, 15 Dec 2024 07:27:41 +0000 (08:27 +0100)]
Close events stream earlier by checking for frequent client pings.
Christian Heller [Sun, 15 Dec 2024 02:45:22 +0000 (03:45 +0100)]
Simplify config file tagset fields.
Christian Heller [Sun, 15 Dec 2024 02:37:53 +0000 (03:37 +0100)]
Re-organize tags code.
Christian Heller [Wed, 11 Dec 2024 06:28:10 +0000 (07:28 +0100)]
Add option for tags whitelist prefilter, i.e. tags of which to show files even if not matching needed-tags prefilter.
Christian Heller [Wed, 11 Dec 2024 05:55:03 +0000 (06:55 +0100)]
Minor redesigns/refactorings/renamings on Tag code.
Christian Heller [Wed, 11 Dec 2024 02:17:44 +0000 (03:17 +0100)]
Add config option to (dis-)allow file data editing.
Christian Heller [Wed, 11 Dec 2024 00:28:56 +0000 (01:28 +0100)]
Add config option to always apply invisible AND tag filter.
Christian Heller [Tue, 10 Dec 2024 23:45:54 +0000 (00:45 +0100)]
Turn tags-filtering from OR into AND filter.
Christian Heller [Tue, 10 Dec 2024 23:38:43 +0000 (00:38 +0100)]
Treat tag filter input fields as OR of comma-delimited terms.
Christian Heller [Tue, 10 Dec 2024 22:38:26 +0000 (23:38 +0100)]
In YT result page, don't directly link files, instead link their pages.
Christian Heller [Tue, 10 Dec 2024 22:16:42 +0000 (23:16 +0100)]
To each new file, add "new" tag.
Christian Heller [Tue, 10 Dec 2024 22:15:51 +0000 (23:15 +0100)]
Update yt-dlp version.
Christian Heller [Tue, 10 Dec 2024 22:06:02 +0000 (23:06 +0100)]
Reduce overkill in type definitions.
Christian Heller [Tue, 10 Dec 2024 20:41:57 +0000 (21:41 +0100)]
Add config option to hide YT queries older than a defined cutoff datetime.
Christian Heller [Tue, 10 Dec 2024 16:21:37 +0000 (17:21 +0100)]
Remove over-complicating tag editing in playlist view.
Christian Heller [Tue, 10 Dec 2024 16:14:20 +0000 (17:14 +0100)]
In all-pages player control, show playing titles tags.
Christian Heller [Tue, 10 Dec 2024 15:57:51 +0000 (16:57 +0100)]
In all-pages player control, link playing title to file page.
Christian Heller [Tue, 10 Dec 2024 14:30:39 +0000 (15:30 +0100)]
Reorganize playlist page to only use JS API, smaller changes along the other templates too.
Christian Heller [Fri, 6 Dec 2024 16:17:05 +0000 (17:17 +0100)]
Greatly simplify template context type checking.
Christian Heller [Fri, 6 Dec 2024 15:54:53 +0000 (16:54 +0100)]
Have basic player control as part of every page's head rather than only as playlist page element.
Christian Heller [Thu, 5 Dec 2024 04:37:37 +0000 (05:37 +0100)]
Immediately start player after loading files.
Christian Heller [Thu, 5 Dec 2024 03:21:06 +0000 (04:21 +0100)]
Fix broken redir_target passing.
Christian Heller [Thu, 5 Dec 2024 03:01:44 +0000 (04:01 +0100)]
Add filtering to /playlist.
Christian Heller [Wed, 4 Dec 2024 17:21:55 +0000 (18:21 +0100)]
Make background color configurable.
Christian Heller [Wed, 4 Dec 2024 16:24:00 +0000 (17:24 +0100)]
Show reduced file data form/table in playlist view.
Christian Heller [Tue, 3 Dec 2024 06:01:52 +0000 (07:01 +0100)]
For VideoFiles, renew .last_update any time .save() saves actual changes to other DB-recored fields.
Christian Heller [Tue, 3 Dec 2024 05:22:44 +0000 (06:22 +0100)]
To /files view, add filtering by tags.
Christian Heller [Tue, 3 Dec 2024 05:01:11 +0000 (06:01 +0100)]
In /file view, for tag addition propose tags used elsewhere.
Christian Heller [Tue, 3 Dec 2024 04:21:16 +0000 (05:21 +0100)]
Add file tagging.
Christian Heller [Tue, 3 Dec 2024 03:34:58 +0000 (04:34 +0100)]
In /file view, move deletion checkbox out of danger zone.
Christian Heller [Tue, 3 Dec 2024 03:03:33 +0000 (04:03 +0100)]
To fix sync, add comparison and string representation to Hash class.
Christian Heller [Tue, 3 Dec 2024 02:58:45 +0000 (03:58 +0100)]
Store files hash digest as BLOB field .digest, overhaul DB and migrations code.
Christian Heller [Mon, 2 Dec 2024 13:30:29 +0000 (14:30 +0100)]
Reorganize DB code and especially migrations handling.
Christian Heller [Mon, 2 Dec 2024 11:12:04 +0000 (12:12 +0100)]
Ensure DbConn encapsulates its executions into rollbackable transactions.
Christian Heller [Sun, 1 Dec 2024 07:48:57 +0000 (08:48 +0100)]
From sync script, remove no-longer-necessary ID name differentiation.
Christian Heller [Sun, 1 Dec 2024 07:42:28 +0000 (08:42 +0100)]
Turn files.sha512_digest into new primary key, get rid of .rel_path base64-encoding shenanigans.
Christian Heller [Sun, 1 Dec 2024 07:07:59 +0000 (08:07 +0100)]
To files table, add sha512 checksum field.
Christian Heller [Sun, 1 Dec 2024 01:43:50 +0000 (02:43 +0100)]
Move "delete" flag in files.flags into highest bit.
Christian Heller [Sun, 1 Dec 2024 01:35:21 +0000 (02:35 +0100)]
Fix sync script bug of trying to JSONize pathlib.Path objects.
Christian Heller [Sat, 30 Nov 2024 22:55:21 +0000 (23:55 +0100)]
Minor DbConnection usage fixes, a renaming for convenience.
Christian Heller [Sat, 30 Nov 2024 22:45:10 +0000 (23:45 +0100)]
Refactor DbConnection into context manager.
Christian Heller [Sat, 30 Nov 2024 18:44:13 +0000 (19:44 +0100)]
In http module, mark with underscore constants not used outside.
Christian Heller [Sat, 30 Nov 2024 18:40:55 +0000 (19:40 +0100)]
Refactor YoutubeQuery creation.
Christian Heller [Sat, 30 Nov 2024 18:23:21 +0000 (19:23 +0100)]
Fix /yt_result showing file path even if file not .present.
Christian Heller [Sat, 30 Nov 2024 18:18:36 +0000 (19:18 +0100)]
Refactor VideoFile.flags setting.
Christian Heller [Sat, 30 Nov 2024 18:05:21 +0000 (19:05 +0100)]
Start moving HTTP-related code to dedicated file.
Christian Heller [Fri, 29 Nov 2024 06:29:49 +0000 (07:29 +0100)]
From /files path filtering, remove case sensitivity.
Christian Heller [Fri, 29 Nov 2024 06:27:09 +0000 (07:27 +0100)]
In /files view, also show file sizes.
Christian Heller [Fri, 29 Nov 2024 05:58:26 +0000 (06:58 +0100)]
To /files view, add "play" button for immediate playing of (present) files.
Christian Heller [Fri, 29 Nov 2024 05:10:15 +0000 (06:10 +0100)]
Fix sync script bug of adding paths rather than lists of paths to missings.
Christian Heller [Fri, 29 Nov 2024 05:06:14 +0000 (06:06 +0100)]
Replace PathStr hassles with pathlib.Path.
Christian Heller [Fri, 29 Nov 2024 01:11:25 +0000 (02:11 +0100)]
On playlist view, if playlist empty, force Player (re-)loading files.
Christian Heller [Fri, 29 Nov 2024 01:06:21 +0000 (02:06 +0100)]
Get rid of unnecessary "./" prefixes to VideoFile.rel_path.
Christian Heller [Fri, 29 Nov 2024 00:48:37 +0000 (01:48 +0100)]
To files view, add VideoFile.present filter.
Christian Heller [Thu, 28 Nov 2024 22:45:57 +0000 (23:45 +0100)]
Don't try to sync file missing on both sides.
Christian Heller [Thu, 28 Nov 2024 21:14:53 +0000 (22:14 +0100)]
Add basic filtering by filename to /files view.
Christian Heller [Thu, 28 Nov 2024 18:53:29 +0000 (19:53 +0100)]
Enforce proper mpv window closing even on direct keystroke input.
Christian Heller [Thu, 28 Nov 2024 16:32:13 +0000 (17:32 +0100)]
Add up/down movement of playlist entries.
Christian Heller [Thu, 28 Nov 2024 15:41:41 +0000 (16:41 +0100)]
Allow greater playlist control even if mpv not directly running.
Christian Heller [Thu, 28 Nov 2024 14:52:54 +0000 (15:52 +0100)]
Add playlist jumping.
Christian Heller [Thu, 28 Nov 2024 14:27:34 +0000 (15:27 +0100)]
Improve/simplify templating.
Christian Heller [Thu, 28 Nov 2024 13:57:36 +0000 (14:57 +0100)]
Reduce reliance on mpv.py conveniences for raw libmpv command access.
Christian Heller [Wed, 27 Nov 2024 06:54:10 +0000 (07:54 +0100)]
Refactor redirects.
Christian Heller [Wed, 27 Nov 2024 06:49:42 +0000 (07:49 +0100)]
Reduce dependency on DownloadsManager for mere VideoFile data retrievals.
Christian Heller [Wed, 27 Nov 2024 06:24:17 +0000 (07:24 +0100)]
Link playlist entries to file data pages.
Christian Heller [Wed, 27 Nov 2024 05:40:05 +0000 (06:40 +0100)]
More broadly use .rel_path for ID'ing VideoFiles, base64-encode where necessary.
Christian Heller [Wed, 27 Nov 2024 04:53:51 +0000 (05:53 +0100)]
Some variable renamings for better clarity.
Christian Heller [Wed, 27 Nov 2024 03:41:13 +0000 (04:41 +0100)]
Add Config class reading from DEFAULTS, environ, and config file.
Christian Heller [Wed, 27 Nov 2024 01:45:09 +0000 (02:45 +0100)]
Refactor DownloadsDb (now DownloadsManager).
Christian Heller [Tue, 26 Nov 2024 23:37:43 +0000 (00:37 +0100)]
Fix breakages due to previous unfinished commit.
Christian Heller [Tue, 26 Nov 2024 23:07:49 +0000 (00:07 +0100)]
Refactor page naming.
Christian Heller [Tue, 26 Nov 2024 14:15:28 +0000 (15:15 +0100)]
Update sync script, prefer rows with newer .last_update.
Christian Heller [Tue, 26 Nov 2024 14:15:13 +0000 (15:15 +0100)]
Fix installer breaking on new install due to missing migrations dir.
Christian Heller [Mon, 25 Nov 2024 05:40:12 +0000 (06:40 +0100)]
Add files.last_update field to renew on file.flags changes, and migration mechanism to allow addition of field to table.
Christian Heller [Mon, 25 Nov 2024 02:40:47 +0000 (03:40 +0100)]
For sync script, download remote DB temporarily into PATH_TEMP.
Christian Heller [Mon, 25 Nov 2024 00:34:20 +0000 (01:34 +0100)]
Include sync script in installation, denoise shell script outputs.
Christian Heller [Sun, 24 Nov 2024 23:29:56 +0000 (00:29 +0100)]
Fix mypy issue with jinja2 import.
Christian Heller [Sun, 24 Nov 2024 23:21:18 +0000 (00:21 +0100)]
Ensure thumbnail directory exists when retrieving on query.
Christian Heller [Sun, 24 Nov 2024 23:11:39 +0000 (00:11 +0100)]
Have install.sh also place executable code, including ~/.config/bin/ytplom wrapping necessary venv stuff.