Bug 282175 - [new port] net-p2p/autopulse: Scan MultiMedia library on webhook triggers
Summary: [new port] net-p2p/autopulse: Scan MultiMedia library on webhook triggers
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Robert Clausecker
URL: https://github.com/dan-online/autopul...
Keywords:
Depends on:
Blocks:
 
Reported: 2024-10-18 12:31 UTC by Michiel van Baak Jansen
Modified: 2026-02-04 12:49 UTC (History)
1 user (show)

See Also:


Attachments
0001-net-p2p-autopulse-New-port-autopulse-v1.0.1-Scan-Mul.patch (68.88 KB, patch)
2024-10-18 12:31 UTC, Michiel van Baak Jansen
no flags Details | Diff
0001-net-p2p-autopulse-New-port-autopulse-v1.0.1-Scan-Mul.patch (68.71 KB, patch)
2024-10-26 16:21 UTC, Michiel van Baak Jansen
no flags Details | Diff
0001-net-p2p-autopulse-New-port-autopulse-v1.5.0-Scan-Mul.patch (73.94 KB, patch)
2026-01-30 18:14 UTC, Michiel van Baak Jansen
michiel: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michiel van Baak Jansen 2024-10-18 12:31:36 UTC
Created attachment 254332 [details]
0001-net-p2p-autopulse-New-port-autopulse-v1.0.1-Scan-Mul.patch

Since net-p2p/autoscan upstream is archived, a new 'successor' was created: autopulse.
It is heavily inspired on the functionality of autoscan, but written from scratch.
autoscan still works as expected, but since it's no longer maintained upstream, it will break one day when any of the supported indexers or media servers updates their API. To be prepared for that moment, I already created a port for autopulse. In the future I will stop maintaining autoscan and move to autopulse, but for the time being I will maintain both.

Another big pro of autopulse is that it supports both sqlite as well as postgresql as storage backend, making it easier to manage on HA/failover setups.

poudriere ok
I have been running it in production in my setup since a week, have not found any issues.
Comment 1 Robert Clausecker freebsd_committer freebsd_triage 2024-10-25 16:59:07 UTC
Thank you for your submission.
Here are some comments:

 - GH_TAGNAME does not agree with DISTVERSION.  Follow example 18 from
   § 5.4.2 "USE_GITHUB" Porter's Handbook for how to access a commit between
   versions.  Please also explain why a commit between versions is required;
   policy is to ship the code upstream releases if possible.

 - instead of .if ${PORT_OPTIONS:M...} check if you can use the mechanism from
   § 5.14.3.9-11 Porter's Handbook.

 - pkg-descr should contain full sentences starting with a capital letter and
   ending with a period if possible.  Bullet lists are also ok.
Comment 2 Michiel van Baak Jansen 2024-10-26 16:21:36 UTC
Created attachment 254536 [details]
0001-net-p2p-autopulse-New-port-autopulse-v1.0.1-Scan-Mul.patch

Thanks for the review, I updated the patch to address the comments:

- GH_TAGNAME is now derived from DISTVERSIONPREFIX and DISTVERSION
- Use OPT_* variables instead of if statements to set options
- Updated pkg-descr to be sentences and added some extra info

poudriere ok
Runs as test on my setup.
The changes did not effect the final binary, which is expected and another pointer the changes are good :)
Comment 3 Robert Clausecker freebsd_committer freebsd_triage 2024-10-26 16:51:48 UTC
openSSL needs to be unbundled:

See e.g. commit ports 6e35767f6e8e556cfbd40b3273708952c9b97b62 for how to fix this.

/!\ autopulse-1.1.0: Makefile warnings, please consider fixing /!\

Please make sure this port uses the system OpenSSL and consider removing
CARGO_CRATES=openssl-src-300.3.2+3.3.2 (a vendored copy of OpenSSL) from the
build, e.g., by patching Cargo.toml appropriately.
Comment 4 Robert Clausecker freebsd_committer freebsd_triage 2024-11-13 12:43:50 UTC
No response for two weeks, returning to pool.
Please unbundle openssl so this one can be committed.
Comment 5 Michiel van Baak Jansen 2026-01-30 18:12:31 UTC
(In reply to Robert Clausecker from comment #4)

Sorry for the delay, since it simply worked for me I never got back to it.
But today I got it working. Uploading patch in a bit
Comment 6 Michiel van Baak Jansen 2026-01-30 18:14:40 UTC
Created attachment 267627 [details]
0001-net-p2p-autopulse-New-port-autopulse-v1.5.0-Scan-Mul.patch

Updated to autopulse 1.5.0
Unbundled openssl

Works in production on my setup (15.0 amd64 with radarr, sonarr and bazarr connecting, sending events to plex)
Comment 7 Robert Clausecker freebsd_committer freebsd_triage 2026-02-01 11:42:21 UTC
LGTM
Comment 8 commit-hook freebsd_committer freebsd_triage 2026-02-04 12:42:31 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2e0f8604f3279d5e58374db4d7642b97677bf80a

commit 2e0f8604f3279d5e58374db4d7642b97677bf80a
Author:     Michiel van Baak Jansen <michiel@vanbaak.eu>
AuthorDate: 2025-01-26 13:24:46 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-02-04 12:41:14 +0000

    net-p2p/autopulse: New port autopulse v1.5.0 - Scan MultiMedia library on webhook triggers

    An automated scanning tool that bridges media organizers
    such as Sonarr and Radarr with media servers
    such as Plex and Jellyfin.

    The goal is to provide a simple, efficient, and reliable way to update
    your media library reducing full library scans.

    A key feature is the ability to provide a hash of the file to the API,
    which will then wait for the file to match that hash before updating targets.

    Another benefit over autoscan is support for PostgreSQL as backend.

    WWW: https://github.com/dan-online/autopulse

    PR:             282175

 GIDs                                               |   2 +-
 UIDs                                               |   2 +-
 net-p2p/Makefile                                   |   1 +
 net-p2p/autopulse/Makefile (new)                   |  45 ++
 net-p2p/autopulse/Makefile.crates (new)            | 332 ++++++++++
 net-p2p/autopulse/distinfo (new)                   | 667 +++++++++++++++++++++
 net-p2p/autopulse/files/autopulse.in (new)         |  60 ++
 net-p2p/autopulse/files/autopulse.yml.sample (new) |  22 +
 net-p2p/autopulse/files/patch-Cargo.toml (new)     |  11 +
 ...o-crates_libsqlite3-sys-0.35.0_Cargo.toml (new) |  13 +
 ...cargo-crates_native-tls-0.2.14_Cargo.toml (new) |  10 +
 ...rgo-crates_openssl-sys-0.9.109_Cargo.toml (new) |  22 +
 ...h-cargo-crates_reqwest-0.12.26_Cargo.toml (new) |  13 +
 .../files/patch-crates_service_Cargo.toml (new)    |  12 +
 net-p2p/autopulse/pkg-descr (new)                  |  11 +
 15 files changed, 1221 insertions(+), 2 deletions(-)
Comment 9 Robert Clausecker freebsd_committer freebsd_triage 2026-02-04 12:49:23 UTC
Thank you for your submission.