mirror of
https://github.com/thegeneralist01/archivr
synced 2026-05-30 08:36:47 +02:00
feat: add archiving of platform media files (#1)
* chore: specify non-ignored `.md` files * refactor: rename youtube downloader to ytdlp More generic name since yt-dlp supports many sites beyond YouTube. * feat: add local file downloader Supports file:// URLs for archiving local files. * deps: add regex crate for URL pattern matching * feat: expand source detection with granular YouTube types - Split Source::YouTube into YouTubeVideo, YouTubePlaylist, YouTubeChannel - Add Source::X for Twitter/X posts - Add Source::Local for file:// URLs - Add regex-based URL pattern matching for YouTube URLs - Add shorthand schemes (yt:video/ID, youtube:playlist/ID, etc.) - Add comprehensive tests for all URL patterns * docs: update README milestones Mark YouTube videos, Twitter videos, and local files as done. * chore: update flake.lock * feat: add shorthand schemes for X/Twitter media * chore: move docs into docs dir * Remove temp file using timestamp path Delete the temp entry at store_path/temp/<timestamp> in both the hash-exists and success paths. Stop constructing the full filename with extension and remove the early process::exit to de-duplicate cleanup. * Add Nix caches and default flake package * Add social platform source detection and update milestones * Tighten social URL matching to avoid false positives * Mark media archiving milestone complete
This commit is contained in:
parent
553cca99ca
commit
2d59ab0af5
12 changed files with 616 additions and 74 deletions
15
flake.nix
15
flake.nix
|
|
@ -1,6 +1,18 @@
|
|||
{
|
||||
description = "Archivr - An open-source archive manager";
|
||||
|
||||
nixConfig = {
|
||||
extra-substituters = [
|
||||
"https://cache.thegeneralist01.com/"
|
||||
"https://cache.garnix.io/"
|
||||
"https://cache.nixos.org/"
|
||||
];
|
||||
extra-trusted-public-keys = [
|
||||
"cache.thegeneralist01.com:jkKcenR877r7fQuWq6cr0JKv2piqBWmYLAYsYsSJnT4="
|
||||
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||
];
|
||||
};
|
||||
|
||||
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
|
||||
outputs =
|
||||
|
|
@ -21,7 +33,7 @@
|
|||
pname = "archivr";
|
||||
version = "0.1.0";
|
||||
src = pkgs.lib.cleanSource ./.;
|
||||
cargoHash = "sha256-y47+Fmp3BID86aPnLtrvzg40lOr9cHyg/38+onisK7w=";
|
||||
cargoHash = "sha256-4m+4SMYA/rJ0eHEOc32zA2VdZI1pqzB5NenD0R0f2zM=";
|
||||
nativeBuildInputs = [ pkgs.pkg-config ];
|
||||
};
|
||||
archivr = pkgs.stdenv.mkDerivation {
|
||||
|
|
@ -49,6 +61,7 @@
|
|||
};
|
||||
in
|
||||
{
|
||||
default = archivr;
|
||||
archivr = archivr;
|
||||
archivr-unwrapped = archivr_unwrapped;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue