- Backup and auto-sync ☁️ passwords across devices 💻📱
- Encrypted 🔐 passwords using AES 128bit for maximum security.
- Mimics Material v3 Monet engine with 🌙 Dark Mode, to use different 🎨 color themes.
- Make strong passwords 🔑 through built in password generator.
- Advanced 🔍 finding algorithm to search for passwords easily.
- Extract files to dir using
tar -xzvf passlock.tar.gz -C <output_path>
cd passlock
& Just run./install.sh
inside the passlock folder- It will ask for sudo password to create a softlink.
- This will add a menu item and make passlock accessible through terminal anywhere
- try
$ passlock
or run from menu.
Creating a soft link
After installing and extracting .tar.gz file in linux to run app anywhere in terminal we can create a softlink like this:$ ln -s /path/to/passlock/Passlock /usr/local/bin/passlock
After this we can run passlock by typing $ passlock
Adding menu icon
cd ~/.local/share/applications
nano passlock.desktop
Paste the following lines by specifying the /path/to/passlock
in Exec
and Icon
fields
[Desktop Entry]
Encoding=UTF-8
Version=1.3.0
Type=Application
Terminal=false
Exec=/path/to/passlock/Passlock
Name=Passlock
Icon=/path/to/passlock/pass.png
Now app can be launched from applications menu
In linux you may face issues with app not starting, it's likely if xrandr
isn't installed.
- Install
xrandr
by$ sudo dnf xrandr
in fedora or$ sudo apt xrandr
in ubuntu
- Clone repo
git clone https://github.com/AM-ash-OR-AM-I/PasslockDesktop.git
&cd PasslockDesktop
- Run the following command in terminal to install dependencies in a virtual environment.
pip install --upgrade pip
python -m venv env
env\Scripts\activate
python -m pip install -r requirements.txt
- Copy kivymd folder to site-packages
- Windows:
xcopy kivymd\* env\Lib\site-packages\kivymd\ /E
- Linux/MacOS:
cp -r kivymd/ .</path/to/site-packages>/kivymd/
- Windows:
- Make a file named
libs\firebase_config.py
with the following content:
import os
os.environ["WEB_API_KEY"] = "[YOUR WEB API KEY HERE]" # Find web api key in firebase project settings
os.environ["DATABASE_URL"] = "[YOUR DATABASE URL HERE]" # Find database url in firebase project settings
- To sanity check if everything is working fine, run
python main.py
and see if the app runs. - Also you can run
pip list
to see if only the packages inrequirements.txt
are installed.
- Run
.\build_windows.bat
to make windows build, optionally you can set version number by passing it as argument.- Example:
build_windows.bat 1.3.0
- This will first make .exe file using PyInstaller and then make MSI installer inside
Passlock-SetupFiles
folder.
- Example:
- Run
./build_linux.bat
to make linux.tar.gz
zip, optionally you can set version number by passing it as argument.
- Run
copy_kv_files.py
to copy kv files toall_files
folder that will be used by PyInstaller.- NOTE: Do this every time you make changes to kv files.
- Make sure environment is activated if not run
env\Scripts\activate
orsource env/bin/activate
for linux/darwin. - Pyinstaller command to package app:
- Windows
pyinstaller passlock_windows.spec --noconfirm
- Linux
pyinstaller passlock_linux.spec --noconfirm
- MacOS
pyinstaller passlock_macos.spec --noconfirm
- Windows
- Output will be in
dist/passlock
folder.
- Download and install Advanced Installer.
- Check to see if path is correct for advanced installer in
make_msi_build.bat
file. - Run
make_msi_build.bat
to make MSI installer. - Output will be in
Passlock-SetupFiles
folder. - Run
Passlock-SetupFiles\Passlock.msi
to install and run app.- NOTE: While installing you should not install in
Program Files
orProgram Files (x86)
folder as it will not have write permissions and app will not be able to create database file. Install inC:\Passlock
orD:\Passlock
or any other drive.
- NOTE: While installing you should not install in
Welcome | Home |
---|---|
Create Strong Passwords | Find |
Backup and Sync | Choose Different Colors |
Made with 💖 in Python using Kivy as framework, along with KivyMD library.