Bjorn Detector detects Bjorn device on the local network, displays its IP address, and allows you to initiate an SSH session with a single click on Bjorn Icon. The red dot is moving around the radar while he looks for Bjorn.
- Automatic Network Detection: Continuously checks for the device
bjorn.home
on the local network. - Interactive SSH Launcher: When
bjorn.home
is detected, click the Bjorn icon to automatically launch an SSH terminal connected to Bjorn’s IP address. - IP Display: Shows the IP address of
bjorn.home
upon detection. - Seamless Bjorn Installation: Facilitates installation of Bjorn by connecting to the device via SSH.
-
Python: 3.9+
-
PyQt6: 6.7.0+
-
Linux:
sudo apt-get install -y libegl1 libpulse0
-
-
Clone the Repository:
git clone https://github.com/infinition/bjorn-detector.git cd bjorn-detector
-
Create a Virtual Environment
python -m venv venv
-
Activate the Virtual Environment
On Unix or MacOS:
source venv/bin/activate
On Windows:
.\venv\Scripts\activate
- or
powershell.exe -ExecutionPolicy Bypass -File .\venv\Scripts\Activate.ps1
-
Upgrade pip
python -m ensurepip pip install --upgrade pip
-
Install Dependencies
pip install -r requirements.txt
- Deactivate the Virtual Environment
When you're done, deactivate the environment:
deactivate
Run the main script:
python bjorn-detector.py
This will scan your network and find Bjorn device, One-Click Bjorn to start SSH session.
You can customize the behavior using the following arguments:
-
--timeout: timeout in seconds. Must be between 10 to 300.
python bjorn-detector.py --timeout 10
-
--identity-file, --i: Identity file used to connect device if set on install. Defaults to None.
python bjorn-detector.py --identity-file identity-file.pem
- Must be a Valid OpenSSH Key File
-
--log-level: Set the logging level (INFO or DEBUG).
python bjorn-detector.py --log-level DEBUG
python bjorn-detector.py
Logs are maintained in logs/bjorn-detector.log with rotating file handlers to prevent excessive file sizes.
Log Levels:
INFO: General operational messages.
DEBUG: Detailed diagnostic information.
-
Report Issues: Via GitHub.
-
Guidelines:
- Follow ethical guidelines.
- Document reproduction steps.
- Provide logs and context.
-
Author: infinition
-
GitHub: infinition/bjorn-detector
2024 - Bjorn is distributed under the MIT License. For more details, please refer to the LICENSE file included in this repository.