nzb-monkey
nzb-monkey copied to clipboard
MacOs support working
Hi,
With the following steps you will get the monkey working on MacOs Mojave (10.14):
- download linux release
- tar xvzf nzbmonkey-v*-linux.tbz2
- brew install python
- pip3 install --user pyperclip requests configobj colorama
- pip3 install --user cryptography
- cd nzbmonkey*
- create nzbmonkey.cfg by ./nzbmonkey.py
- test with real data ./nzbmonkey.py "nzblnk:?t=title&h=header&p=password"
- create wrapper script with name nzbmonkey.command:
#!/bin/sh
cd "$(dirname "$0")"
echo "$1" > last_call.txt
./nzbmonkey.py "$1"
- chmod +x nzbmonkey.command
- register nzblnk as url scheme by installing lincastor
- open lincastor and add new scheme
- Choose as scheme nzblnk
- use a shell script to execute nzbmonkey.command $URL
Enjoy
Thank you for your contribution. We will test this an include this in out build chains. The idea is not to use lincastor in this list. So we try to provide everything necessary. :+1:
Hi @nzblnk can we hope for an iOS release? Or is there a possibility to use NZBLinks on iOS? Would be very usefull for all the iPad users. Keep up the great work. You made my life a little easier ;)
I heard the author of NZB Donkey (a NZB Monkey browser plugin) is working on a iOS version. Please keep you eyes open for "NZB Donkey" in the app store (its not yet there).
If you want to register to URL handler without using lincastor, you can do it manually with an application bundle created from an Apple Script.
- Follow the steps of the original post up to and including step 10; however, if you use the homebrew python, you need to make sure it is used to execute nzbmonkey, not the python that comes with macOS (otherwise, it will not find the dependencies). You can achieve this by adding the following to the script before calling nzbmonkey:
# for Apple Silicon
PATH="/opt/homebrew/bin:$PATH"
# for x86_64
PATH="/usr/local/bin:$PATH"
- Open "Script Editor", create a new apple script "New Document"
- Insert the following AppleScript code:
on open location this_URL
do shell script "$HOME/path/to/nzbmonkey-vX.Y.Z-linux/nzbmonkey.command " & quoted form of this_URL
end open location
- Save it, as File Format in the Save dialog choose "Application"
- Go to the newly saved Application bundle in the Finder, right click, "Show Package Contents"
- Open Contents/Info.plist with a text editor, e.g. TextEdit
- Add the following, for example right after the initial
<dict>
tag (it can be anywhere, just not in between an existing key-value pair):
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>NZBLNK URL</string>
<key>CFBundleURLSchemes</key>
<array>
<string>nzblnk</string>
</array>
</dict>
</array>
- Open the application by double clicking it in the finder. Nothing visible happens, but it registers itself with the system as a handler for the nzblnk URI scheme.
- Now when you click an nzblnk link, it should offer you to open the application you created with the Script Editor to handle the URI.
@mstilkerich thanks for your instructions, but I can not get it to run
the nzbmonkey.command script works fine when I call it from the command line but the AppleScript-app doesn't seem to do anything. When I open a "nzblnk"-URL I see the script editor app appearing in the dock for a few seconds and then it disappears again and nothing was sent to sabnzbd
do you have any idea what might be the problem?
Edit: the output of the AppleScript is:
error "Traceback (most recent call last): File \"/Users/musername/nzbmonkey/nzbmonkey.py\", line 1754, in <module> sys.exit(main()) File \"/Users/myusername/nzbmonkey/nzbmonkey.py\", line 1607, in main uch = int(input('\\n Your choice: ')) - 1 EOFError: EOF when reading a line" number 1
Edit2: I guess the problem is that nzbmonkey prompts the user to choose a category for the download and the AppleScript aborts the script at that point
Edit3: it works fine when "categorize" is set to "auto" in nzbmonkey.cfg
Can confirm that the combination of @e-skulk and @mstilkerich works flawlessly on macOS Monterey 12.5.1
@mstilkerich Works great, thanks for that. But do you know if there is a way to show the output of the script while it's being executed? Like, just the simple Terminal windows or something. Would be great to be able to track what's happening, right now it's just the AppleScript icon in the task bar as only indication.
Thanks!