Skip to main content

Nextcloud News Filter

This library is designed to filter Feeds from Nextcloud News, by marking them as read. It is originally based on nextcloud-news-filter by mathisdt.

PyPI - Version image PyPI - License

pipeline status coverage report pre-commit Ruff

State of this package

This package is in an early stage of development. Things like configuration may change heavily in this early stage.

Usage

This can be used directly on the system via a cli or as serverless function

Installation

CLI

If you want to use the CLI install it with pipx install nextcloud_news_filter[cli]

Scaleway Serverless function

A full documentation will follow. These are just the steps you need to follow.

  • create a namespace
  • add a function via UI
  • Get the last Release file: nextcloud_news_filter-$TAG.zip
  • upload this via UI or with scw cli
  • add your credentials as variables/secrets
  • create a cron trigger with your filter configuration

Configuration

All settings concerning the nextcloud server is done via environment variables:

  • NEXTCLOUD_URL - the url of your instance e.g 'https://nextcloud.example.com'
  • NEXTCLOUD_USER - your username
  • NEXTCLOUD_PASS - the password of your user

It is using Basic authentication, if you have enabled 2-factor-authentication it will probably not work

Filter

The json to configure your filters consists of two keys skipFeeds to ignore Feeds from all filters. and filter to actually filter feeds. These are the options:

  • name: Name of the filter. Mandatory
  • feedId: Id of the feed the filter should be limited to (if not there, the filter rule is applied to all feeds). Optional
  • bodyRegex: Regex that is applied to search in body of the feed item. Optional
  • titleRegex: Regex that is applied to search in the title of the feed entry. Optional
  • hoursAge: Maximum lifetime of the feed entry.

Example:

{
  "skipFeeds": [
    1678, 1683, 1681, 1682, 1684, 1680, 1659, 1654, 1658, 1657, 1656, 1660, 1655
  ],
  "filter": [
    {
      "name": "heise+",
      "feedId": 1592,
      "titleRegex": "heise\\+|heise\\-Angebot|TechStage"
    },
    {
      "name": "All with Advertisement in Body",
      "feedId": 1594,
      "bodyRegex": "^Advertisement: "
    },
    {
      "name": "Feed older then one day, for feed 1595",
      "feedId": 1595,
      "hoursAge": 24
    },
    {
      "name": "all > 20 Days all feeds (except for skipped ones)",
      "hoursAge": 480
    }
  ]
}

Metadata

Release files for nextcloud_news_filter 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nextcloud_news_filter 0.2.0
File Size Uploaded Provenance Actions
nextcloud_news_filter-0.2.0.tar.gz 23.4 kB Without provenance Details for nextcloud_news_filter-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for nextcloud_news_filter 0.2.0
File Interpreter ABI Platform Actions
nextcloud_news_filter-0.2.0-py3-none-any.whl Python 3 none any Details for nextcloud_news_filter-0.2.0-py3-none-any.whl

Total release size: 43.4 kB

Release files / nextcloud_news_filter-0.2.0.tar.gz

Download URL nextcloud_news_filter-0.2.0.tar.gz
Size 23.4 kB
Tags Source
SHA-256 checksum
How to use checksums
c3ccf079b18034c36901bfa69d7f9a5a80bdcf21aaaa70c728d29c97844e10b2
BLAKE2b-256 checksum
How to use checksums
95e3d18a6a8d2da52ebbde604552ccd2fca1ae18ddd990444ef67a6d45f3ae58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via pdm/2.17.1 CPython/3.12.4 Linux/5.15.154+

Release files / nextcloud_news_filter-0.2.0-py3-none-any.whl

Download URL nextcloud_news_filter-0.2.0-py3-none-any.whl
Size 20.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
67f64c68572aae997553e0fcd7b913ed4a361eadfa3175700048d8eb0ccb29b0
BLAKE2b-256 checksum
How to use checksums
88be7bba82dc7e770f3ef4b485ec6fdff2268d3164c126e86401c3003b8cb885
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via pdm/2.17.1 CPython/3.12.4 Linux/5.15.154+

Security for nextcloud_news_filter 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page