Skip to main content

Open a link with a command read from a database.

Project description


Python program that opens a link with a command read from a database.

Made especially to use with RSS feed readers like newsboat. Or any other program where you might want to open a specific in a manner based on the link you are opening.

  • Create a database according to your own needs
  • Write a key that will match the whole link or just the beginning part of it
  • List out commands you want to be run if mathing link is opened with pasterfu

Make a 'default' key into database to open unmatched links with commands listed for the default key. You can have multiple databases and choose which one to use with --database option.

Wiki pages provide more in-depth information.


  • Python 3.7 or newer
  • Pyperclip will be installed when installing pasterfu with pip
  • In Ubuntu sudo apt install python3
  • With Windows download and install Python 3
    • You could consider selecting Add Python to PATH during install


  1. Install Python 3 - Requirements
  2. Run pip install pasterfu
  3. Create your config file rules. Configuration
    • For more info check Wiki Configuration
    • pasterfu will work with OS default browser even without configs


You propably need to use a command like:

pip3 install --upgrade pasterfu


python3 -m pip install --upgrade pasterfu


If you installed python without setting up path you need to include path when running pip.

py.exe -m pip install --upgrade pasterfu


pasterfu --link LINK

Replace the "LINK" with the link you wish to open. Check Wiki Usage for more info.


If you installed python without setting up path you need to include path when running pasterfu.

For Python 3.8: %LOCALAPPDATA%\Programs\Python\Python38\Scripts\pasterfu.exe --link LINK


  • Create an empty database file in ~/.config/pasterfu.json. Or in %USERPROFILE%\Documents\pasterfu.json for Windows.

To add configurations run pasterfu --add-rule 'key' --command 'command'

  • key what links to match for the rule
    • Make a "defalt" key that opens unmatched links
  • command what to do if link is matching
    • %link can be used to pass the link for the command
    • Multiple commands can be set to a single key by separating the commands with ;
    • Piped commands can be given, unfortunately currently only one pipe per command

OS default internet browser will be used if no matching key is found and 'default' is not set.

Read more at Wiki Configuration.


Example 1

Open any link starting with in Firefox:

pasterfu --add-rule --command "firefox %link"
Example 2

If no matching key is found write to key to file ~/link.txt and open the link with Firefox:

pasterfu --add-rule default --command "echo %link ; firefox %link"
Example 3

By using '%clip' you can copy a link with pyperclip.

pasterfu --ad-rule --command "firefox %link ; %copy"


Example 4

Open gitlabs links in Brave:

pasterfu --add-rule --command
"C:/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe
Example 5

If no matching key is found open the link with Firefox:

pasterfu --add-rule default --command
"C:/Program Files/Mozilla Firefox/firefox.exe %link" ; C:/Program
Example 6

By using '%clip' you can copy a link with pyperclip.

pasterfu --ad-rule --command
"C:/Program Files/Mozilla Firefox/firefox.exe %link ; %clip"


TODO list found here Wiki TODO

Tests can be run with ./run_tests or run_tests.bat. These require flake8 and pytest. Both can be found in PyPI.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pasterfu, version 0.7.0.post5
Filename, size File type Python version Upload date Hashes
Filename, size pasterfu-0.7.0.post5-py3-none-any.whl (21.7 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size pasterfu-0.7.0.post5.tar.gz (10.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page