Manual Install
On this page, you can find instructions on how to manually install Kapowarr (directly on the host) and on how to update your manual installation. Go to the section that is for your OS.
Installation¶
Linux¶
- Install Python 3.8 or higher if you don't have it already.
- Install Python PIP if you don't have it already.
- Download the latest Kapowarr release.
- Create the Kapowarr application folder. We recommend
/opt/Kapowarrbut you can also put it somewhere else. If you put it somewhere else, replace/opt/Kapowarrwith the actual location in all commands below.
- We recommend that you run the application as a different user than root. To do that, the application folder needs to be owned by the user that Kapowarr will run as. Replace
{user}and{group}with the username or ID. If you want to run Kapowarr as root, skip this command. All commands after this one need to be run as the user that Kapowarr will run as. That means either running them as the current user, prependingsudoto all commands if you want to run it as root, or logging in as the intended user.
- Extract the content of the zipped release into the application folder.
- Move into the folder.
- Install the Python requirements.
- You can now start Kapowarr.
MacOS¶
Make sure you are logged in to your MacOS device as an admin user.
-
Install Python 3.8 or higher if you don't have it already. You can install Python 3.14 from this link.
-
Download the latest Kapowarr release from this link and expand the downloaded .zip file.
-
Rename the resulting
Kapowarr-releasefolder toKapowarr. -
Place the
Kapowarrfolder in your/Applicationsfolder. -
Open Terminal and change directory to
/Applications/Kapowarr.
- Install the Python requirements.
- You can now start Kapowarr.
Windows¶
-
Install Python 3.8 or higher if you don't have it already. You can download the Windows Python installer using this link. Make sure to check the box to add Python to PATH when prompted.
-
Download the latest Kapowarr release from this link.
-
Extract the zip file to a folder on your machine. We recommend
C:\apps\Kapowarrbut you can also put it somewhere else. -
Open up PowerShell and navigate to the application folder.
- Install the Python requirements.
- You can now start Kapowarr.
Command line options
If you want to change hosting, database or logging settings on startup, start Kapowarr with the -h flag to see the command line options. The reason you might want to change those settings on startup, even though the web-UI offers an interface to change these settings, is that Kapowarr might not be able to start up or be reachable with the default settings (e.g. port 5656 is already in use, so Kapowarr can't start up but you need it started up and reachable to change the port).
Open your browser and access it at http://localhost:5656/. See the section below on how to automatically run Kapowarr as a service in the background. Check out the Setup After Installation page for instructions on how to configure Kapowarr so that it works properly.
Running as service¶
The installation instructions have shown you how to start Kapowarr from the terminal, but it's more ideal to run Kapowarr as a service. That means that it can automatically start running when the computer starts up, stay running in the background, and gracefully shut down when the computer powers down.
Linux¶
We're going to use systemd to run Kapowarr as a service.
- Create the service file and open it. In this case we'll use 'nano' to edit the file.
- Now that the file editor is opened, fill it with the following text. It assumes you have Kapowarr installed at
/opt/Kapowarr. If not, replace the paths with the actual location. Replace{user}and{group}with the username or ID that the application should be run as. Once you're done, press Ctrl-S and Ctrl-X to save and exit nano.
[Unit]
Description=Kapowarr Daemon
After=syslog.target network.target
[Service]
WorkingDirectory=/opt/Kapowarr/
User={user}
Group={group}
UMask=0002
Restart=on-failure
RestartSec=5
Type=simple
ExecStart=/usr/bin/python3 /opt/Kapowarr/Kapowarr.py
KillSignal=SIGINT
TimeoutStopSec=20
SyslogIdentifier=kapowarr
ExecStartPre=/bin/sleep 30
[Install]
WantedBy=multi-user.target
- Reload systemd so that it finds the new service.
- Start the service.
Enabling the service will automatically start Kapowarr once the computer starts up.
MacOS¶
We're going to use LaunchAgent to run Kapowarr as a service.
- Create the service file and open it. In this case we'll use 'nano' to edit the file. Replace
{user_name}with the name of the user that the application should run as.
- Now that the file editor is opened, fill it with the following text. It assumes you have Kapowarr installed at
/Application/Kapowarr. If not, replace the paths with the actual location. Once you're done, press Ctrl-S and Ctrl-X to save and exit nano.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.github.casvt.kapowarr</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/python3</string>
<string>/Applications/Kapowarr/Kapowarr.py</string>
</array>
<key>WorkingDirectory</key>
<string>/Applications/Kapowarr</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>/usr/local/var/log/kapowarr.log</string>
<key>StandardErrorPath</key>
<string>/usr/local/var/log/kapowarr.log</string>
</dict>
</plist>
- Load the service, start it and enable it so that it automatically starts when the computer starts up.
Windows¶
We're going to use nssm to run Kapowarr as a service.
-
Download the latest NSSM release from this link.
-
Extract either the 64 bit or 32 bit executable from the zip file, based on your OS bitness. Place the executable in
C:\Windows\System32, or add it to your PATH. -
Run CMD as an Administrator and use the command
nssm install kapowarr. -
An interface should pop up. Use the following configuration:
-
Path: Should be the path to your Python executable.
-
Startup Directory: Should be the path to your Python installation directory, where the Python executable is in.
-
Arguments: Should be the location of the Kapowarr file. E.g.
C:\apps\Kapowarr\Kapowarr.py
-
-
Under
Process Tab, make sure to uncheckConsole Windows. -
Click the
Install Servicebutton. -
Use the terminal command
nssm start kapowarrto start kapowarr and to automatically make it start when the computer starts up.
Updating¶
Linux¶
The commands will assume that the application folder of Kapowarr is at /opt/Kapowarr. If Kapowarr is installed somewhere else, then replace the paths in the commands with the actual location.
- Shut down Kapowarr. If you're running Kapowarr from a terminal, press Ctrl-C to stop it. If you're running it as a systemd service, you can stop it with the following command:
You can check whether Kapowarr is shut down by trying to access the web-UI. If it can't connect anymore, then Kapowarr is shut down.
-
The default location of the database file of Kapowarr is at
db/Kapowarr.dbin the application folder. So by default it will be at/opt/Kapowarr/db/Kapowarr.db. Temporarily secure this file by completely moving it out of the application folder. You could for example put it in your home directory for the moment. We'll be deleting the application folder so we need to move the database file out of it so that we don't delete the database. If your database file is at a custom location (using the--DatabaseFoldercommand line flag) that is outside of the application folder, then it can remain there and you don't have to move it. If there is also aKapowarr.db-shmfile andKapowarr.db-walfile in the database folder, then Kapowarr is still running or was shut down improperly. -
Delete the application folder.
- Download the latest Kapowarr release.
- Recreate the Kapowarr application folder at the location that it previously was.
- Change the ownership of the created application folder so that it's owned by the user that ran Kapowarr. Only run this if it wasn't run by root. All commands after this one need to be run as the user that Kapowarr will run as. That means either running them as the current user, prepending
sudoto all commands if you want to run it as root, or logging in as the intended user.
- Extract the content of the new zipped release into the application folder.
- Move into the folder.
- Install the Python requirements. This is needed because it might be the case that requirements have been changed or added.
-
Move the database file back into the application folder in the
db/subfolder. If that folder doesn't exist already, you can create it and put the file in there, exactly like it was in the old installation. If you have your database file at a custom location outside of the application folder, then you can leave it there. -
Start Kapowarr back up. If you were running it in a terminal, then run the following command (with the
--DatabaseFolderflag if your database is at a custom location).
If you were running it as a systemd service, then run this command:
MacOS¶
Make sure you are logged in to your MacOS device as an admin user.
The commands will assume that the application folder of Kapowarr is at /Applications/Kapowarr. If Kapowarr is installed somewhere else, then replace the paths in the commands with the actual location.
- Shut down Kapowarr. If you're running Kapowarr from a terminal, press Ctrl-C to stop it. If you're running it as a LaunchAgent service, you can stop it with the following command. Replace {user_name} with the name of the user that the application runs as.
You can check whether Kapowarr is shut down by trying to access the web-UI. If it can't connect anymore, then Kapowarr is shut down.
-
The default location of the database file of Kapowarr is at
db/Kapowarr.dbin the application folder. So by default it will be at/Applications/Kapowarr/db/Kapowarr.db. Temporarily secure this file by completely moving it out of the application folder. You could for example put it on your desktop for the moment. We'll be deleting the application folder so we need to move the database file out of it so that we don't delete the database. If your database file is at a custom location (using the--DatabaseFoldercommand line flag) that is outside of the application folder, then it can remain there and you don't have to move it. If there is also aKapowarr.db-shmfile andKapowarr.db-walfile in the database folder, then Kapowarr is still running or was shut down improperly. -
Delete the application folder at
/Applications/Kapowarr.
-
Download the latest Kapowarr release from this link and expand the downloaded .zip file.
-
Rename the resulting
Kapowarr-releasefolder toKapowarr. -
Place the
Kapowarrfolder in your/Applicationsfolder. -
Open Terminal and change directory to
/Applications/Kapowarr.
- Install the Python requirements. This is needed because it might be the case that requirements have been changed or added.
-
Move the database file back into the application folder in the
db/subfolder. If that folder doesn't exist already, you can create it and put the file in there, exactly like it was in the old installation. If you have your database file at a custom location outside of the application folder, then you can leave it there. -
Start Kapowarr back up. If you were running it in a terminal, then run the following command (with the
--DatabaseFolderflag if your database is at a custom location).
If you were running it as a LaunchAgent service, then run the following command. Replace {user_name} with the name of the user that the application ran as.
Windows¶
The commands will assume that the application folder of Kapowarr is at C:\apps\Kapowarr. If Kapowarr is installed somewhere else, then replace the paths in the commands with the actual location.
- Shut down Kapowarr. If you're running Kapowarr from a terminal, press Ctrl-C to stop it. If you're running it as a nssm service, you can stop it with the following command:
You can check whether Kapowarr is shut down by trying to access the web-UI. If it can't connect anymore, then Kapowarr is shut down.
-
The default location of the database file of Kapowarr is at
db\Kapowarr.dbin the application folder. So by default it will be atC:\apps\Kapowarr\db\Kapowarr.db. Temporarily secure this file by completely moving it out of the application folder. You could for example put it on your desktop for the moment. We'll be deleting the application folder so we need to move the database file out of it so that we don't delete the database. If your database file is at a custom location (using the--DatabaseFoldercommand line flag) that is outside of the application folder, then it can remain there and you don't have to move it. If there is also aKapowarr.db-shmfile andKapowarr.db-walfile in the database folder, then Kapowarr is still running or was shut down improperly. -
Delete the application folder at
C:\apps\Kapowarr. -
Download the latest Kapowarr release from this link.
-
Extract the zip file to the same folder as where the application folder previously was (
C:\apps\Kapowarr). -
Open up PowerShell and navigate to the application folder.
- Install the Python requirements. This is needed because it might be the case that requirements have been changed or added.
-
Move the database file back into the application folder in the
db\subfolder. If that folder doesn't exist already, you can create it and put the file in there, exactly like it was in the old installation. If you have your database file at a custom location outside of the application folder, then you can leave it there. -
Start Kapowarr back up. If you were running it in a terminal, then run the following command (with the
--DatabaseFolderflag if your database is at a custom location).
If you were running it as a nssm service, then run this command:
After updating, it might take a little longer for Kapowarr to start up in the sense of the web-UI becoming available. That is because Kapowarr is moving things around inside the database to support the new features. It's a one-time event that happens after updating. It can take from a few seconds for small libraries to a few minutes for massive libraries.