Table of Contents
Tutorial: Open Second Life SLURLs in Firestorm from Brave on Linux Mint
This tutorial shows you how to make secondlife: links (SLURLs) opened in the Brave browser launch your user-installed Firestorm Viewer on Linux Mint.
All steps are done in your home directory, no root access is required.
Prerequisites
Before you start, you should have:
Linux Mint with a graphical desktop
Brave browser installed
Firestorm Viewer installed in your home directory (user-local, not system-wide)
Basic ability to use a terminal
If you do not know where Firestorm is installed, you can find it later in this tutorial.
Step 1 β Find your Firestorm installation path
If you already know the exact path to your Firestorm executable (for example /home/USERNAME/Firestorm/firestorm), you can skip to Step 2.
Otherwise, search for it in your home directory:
find ~ -maxdepth 4 -type f -name firestorm 2>/dev/null
Look for a path that ends with firestorm, for example:
/home/USERNAME/Firestorm/firestorm
Note this path, you will need it in the next step.
Step 2 β Create the SLURL handler script
In this step, you create a small script that receives a SLURL and passes it to Firestorm.
Open a terminal and run:
mkdir -p ~/.local/bin nano ~/.local/bin/firestorm-slurl
Insert the following content (adjust the path in the FIRESTORM line):
#!/bin/bash Path to your Firestorm executable (adjust if needed) FIRESTORM="$HOME/Firestorm/firestorm" Pass the SLURL (first argument) to Firestorm "$FIRESTORM" --slurl "$1"
If your Firestorm is in a different location, change the line:
FIRESTORM="$HOME/Firestorm/firestorm"
for example to:
FIRESTORM="$HOME/Programs/Firestorm/firestorm"
Save the file and exit the editor, then make the script executable:
chmod +x ~/.local/bin/firestorm-slurl
Quick test: You can test the script directly:
~/.local/bin/firestorm-slurl "secondlife://Ahern/128/128/30"
If Firestorm starts or opens the location, the script works.
Step 3 β Create the desktop entry for the protocol handler
Now you tell the desktop environment that there is an application that can handle the secondlife: protocol.
Create the desktop entry:
mkdir -p ~/.local/share/applications nano ~/.local/share/applications/firestorm-slurl.desktop
Insert the following content (replace USERNAME with your actual username):
[Desktop Entry] Name=Firestorm SLURL Handler Exec=/home/USERNAME/.local/bin/firestorm-slurl %u Type=Application Terminal=false MimeType=x-scheme-handler/secondlife;
Example:
Exec=/home/miko/.local/bin/firestorm-slurl %u
Save the file and update the desktop database:
update-desktop-database ~/.local/share/applications/
Step 4 β Register the ''secondlife:'' protocol handler
Now you connect the secondlife: protocol with your new desktop entry using xdg-mime:
xdg-mime default firestorm-slurl.desktop x-scheme-handler/secondlife
This tells the system:
βWhenever a secondlife: link is opened, use firestorm-slurl.desktop.β
Optional check:
xdg-mime query default x-scheme-handler/secondlife
The output should be:
firestorm-slurl.desktop
Step 5 β Configure Brave to allow external protocol handlers
Now you configure Brave so it is allowed to hand off secondlife: links to the system handler.
Open Brave and in the address bar enter:
brave://settings/handlers
Make sure:
Allow sites to ask to become default handlers for protocols is enabled.
If you see secondlife listed under βBlockedβ or similar, remove it from the blocked list.
The next time you click a secondlife: link in Brave, it should ask whether Brave may open such links with an external application. Choose Allow.
Step 6 β Test the complete setup
You can test the integration in two ways.
Test from the terminal
Run:
xdg-open "secondlife://Ahern/128/128/30"
Expected result:
Firestorm starts (or uses the running instance)
The SLURL opens inside Firestorm
If this works, your system-level handler is correctly configured.
Test from Brave
Create or open a page with a link like:
secondlife://Ahern/128/128/30
Click the link in Brave.
Expected behavior:
Brave may ask for permission to open this type of link β choose Allow
Firestorm opens and goes to the specified location
Troubleshooting
Firestorm does not start (file not found)
If you see an error like:
File or directory not found
then the path in your script is wrong.
Re-run the search:
find ~ -maxdepth 4 -type f -name firestorm 2>/dev/null
Update the line in ~/.local/bin/firestorm-slurl:
FIRESTORM="FULL/PATH/TO/firestorm"
Test again:
~/.local/bin/firestorm-slurl "secondlife://Ahern/128/128/30"
Brave opens a new tab or window instead of Firestorm
If Brave opens a new browser window or tab instead of Firestorm, check:
The desktop entry is correct and contains your real username.
The handler is registered:
xdg-mime query default x-scheme-handler/secondlife
It should output:
firestorm-slurl.desktop
Brave is allowed to use protocol handlers:
Open brave:settings/handlers
Ensure protocol handlers are allowed
Remove any blocked secondlife'' entries
After adjusting, restart Brave and test again.
