Desktop Backup Client for Borg

Overview

Vorta Backup Client Logo

Vorta is a backup client for macOS and Linux desktops. It integrates the mighty BorgBackup with your desktop environment to protect your data from disk failure, ransomware and theft.

Why is this great? 🤩

  • Encrypted, deduplicated and compressed backups using Borg as backend.
  • No vendor lock-in – back up to local drives, your own server or BorgBase, a hosting service for Borg backups.
  • Open source – free to use, modify, improve and audit.
  • Flexible profiles to group source folders, backup destinations and schedules.
  • One place to view all point-in-time archives and restore individual files.

Learn more on Vorta's website.

Installation

Vorta should work on all platforms that support Qt and Borg. This includes macOS, Ubuntu, Debian, Fedora, Arch Linux and many others. Windows is currently not supported by Borg, but this may change in the future.

See our website for download links and and install instructions.

Connect and Contribute

  • To discuss everything around using, improving, packaging and translating Vorta, join the discussion on Github.
  • Report bugs by opening a new Github issue.
  • Want to contribute to Vorta? Great! See our contributor guide on how to help out with coding, translation and packaging.

License and Credits

Comments
  • Improve source management Control

    Improve source management Control

    This PR aims to change the source tab to show more information, as suggested in #593 no. 4. I think some discussion is required in regards of design/implementation details

    State: PR is feature complete, some issue on Mac OS remaining...

    First Preview of new source UI: vorta_srcmgmt_new_draft

    opened by XXXBold 58
  • cancelling the archive check doesnt kill the underlying borg command

    cancelling the archive check doesnt kill the underlying borg command

    Describe the bug cancelling the archive check doesnt kill the underlying borg command

    To Reproduce Steps to reproduce the behavior:

    1. have a backup enabled with the option "Validate repository data every ..." enabled
    2. when the check step is running, click cancel at the bottom right
    3. the action is marked as cancelled but the underlying borg command is not killed and keeps running.

    Environment (please complete the following information):

    • OS: Debian unstable
    • Vorta version: 0.7.5
    • Installed from: debian package
    type:bug status:needs details os:linux help wanted 
    opened by sandrotosi 51
  • Segfault when closing from tray

    Segfault when closing from tray

    Describe the bug When I close vorta, I get an error message : Erreur de segmentation (core dumped) (seg fault (core dumped) )

    To Reproduce Start vorta from command line : $ /home/username/.local/bin/vorta Right click icon in systray and choose "Close" Look at the console, you have an error message

    Desktop (please complete the following information): System: Kernel: 5.3.0-51-generic x86_64 bits: 64 compiler: gcc v: 7.5.0 Desktop: Cinnamon 4.4.8 wm: muffin dm: LightDM Distro: Linux Mint 19.3 Tricia base: Ubuntu 18.04 bionic

    Additional context syslog : May 15 15:10:45 kernel: [789665.809030] vorta[7740]: segfault at 8 ip 00007f0b10a712e7 sp 00007fff415defa0 error 4 in libQt5Widgets.so.5[7f0b108d4000+62c000] May 15 15:10:45 kernel: [789665.809055] Code: ef e8 3d 3b fd ff e9 61 fe ff ff 0f 1f 84 00 00 00 00 00 f6 40 09 80 0f 84 0e fe ff ff 48 8b 05 77 c3 6b 00 48 89 ee 48 8b 00 <48> 8b 78 08 e8 30 c2 fc ff e9 f3 fd ff ff 0f 1f 00 49 8b 77 10 48 May 15 15:10:45 systemd[1]: Started Process Core Dump (PID 7753/UID 0). May 15 15:10:46 systemd-coredump[7754]: Process 7740 (vorta) of user 1000 dumped core.#012#012Stack trace of thread 7740:#012#0 0x00007f0b10a712e7 n/a (/home/username/.local/lib/python3.6/site-packages/PyQt5/Qt/lib/libQt5Widgets.so.5)

    priority:low type:bug os:linux 
    opened by SamuelBenard 48
  • Add weeks to schedule options

    Add weeks to schedule options

    This is another fairly large change, but it shouldn't break any existing setups.

    This implements a persistent backup time storage, making #263 easier to implement.

    The pretty_date localizes only the day of the week (Monday) but not the HH:MM am/pm ui2

    Fixes #487 Semifixes #263 by adding notification and extending gracetime so it runs missed backups if Vorta is not closed.

    Edit: Fixes #343 (Last one hopefully) This has become an enormous PR.

    Discussions #804 #812

    opened by samuel-w 46
  • Improve UX and HIG-conformity

    Improve UX and HIG-conformity

    Make text in vorta HIG conform. I mainly followed the KDE HIG. This PR not only changes punctuation and capitalization but also wording. Therefore reviewers should check whether they are ok with every change made.

    This PR also tries to tackle all the tasks in #1050. They are listed below.

    • [x] Remove dots in misc tab
    • [x] Add colon to "Profile Name" in add profile window
    • [x] In schedule tab, replace "Prune old Archives after each backup" by "Prune old archives after each backup"
    • [x] tool tip must follow the Header or sentence capitalization rule .
    • [x] remove contraction: "Can't delete the last profile." -> "Cannot delete the last profile" (remove the dot !)...
    • [x] Unlink repository button tooltip is too long.
    • [x] "Sentences should not be constructed from text in several controls. Sentences that run from one control to another will often not make sense when translated into other languages." (see wiki bellow for more explanation) :
      • [x] Reformulate checkboxes text in Schedule>Clock
      • [x] Reformulate checkboxes text in Archives>Prunes
    • [x] "clock", "wifi", "tasks" and "terminal" must be replace by "Clock", "Wifi", "Tasks'" and "Terminal"
    • [x] Replace three dots by ellipsis (see bellow)
    • [x] Put font 10 in profile add window. Try to shorten the text
    • [x] In source tab, add gradients bottoms '+/-' at bottom of the view.
    • [x] In Misc, items can be aggregate with labels : "Notifications", "Startup", "Security", "Informations", "Others"
    • [x] Make layout more clear (related to the idea of advanced settings)
      • [x] In Archive>Prunes
      • [x] In Repository, SSH Key and Compression is sth. advanced

    Additional tasks:

    • [x] use affirmative phrases rather than use negative phrases for checkboxes
      • [x] Scheduletab > run over metered connections
    • [x] Scheduletab>shell commands: Placeholder shouldn't be replacement for label
    • [x] Source view: Improve UX of add and paste buttons
    • [x] #933
    • [x] Fix inconsistency in Schedule tab
    • [x] Improve usability of archive view
    • [x] Fix tooltips
    • [x] context menus
      • [x] source view
      • [x] archive view
    • [x] #1074
    opened by real-yfprojects 43
  • Run missed backups after startup - does not work

    Run missed backups after startup - does not work

    Describe the bug Testing Vorta 0.8.2 it seems that the option "Run missed backups right after startup or wakeup" does not work. I installed Vorta for testing purpose, using flatpak, on LinuxMint 19.2

    To Reproduce

    1. Go to Schedule
    2. Choose a daily backup time in the near future.
    3. Select "Run missed backups right after startup or wakeup"
    4. Wait till the (scheduled) backup time has passed
    5. Start Vorta: The missed backup does not run.

    Additional observations:

    • I tested both a) quitting Vorta, wait and restarting Vorta after the missed backup time and
      b) shutdown the computer, wait and start the computer after the missed backup time in both cases, the missed backup did not run after restart.
    • There is only one profile. I renamed the default profile to "Vorta Test" <- in the log file one can read about "site default" so perhaps this is causing the issue?

    Environment (please complete the following information):

    • OS: Linux Mint 19.2 Cinnamon (based on Ubuntu 20.04)
    • Vorta version: 0.8.2 using borg 1.1.15
    • Installed from: flatpak

    Additional context Protocol: 7:30 change backup time to 8:00, Quit Vorta 8:17 start Vorta to check if the missed backup is run

    ** Log:

    2021-12-08 07:30:32,800 - vorta.scheduler - INFO - Setting timer for profile 1
    2021-12-08 07:30:32,805 - vorta.scheduler - DEBUG - Scheduling next run for 2021-12-08 08:00:00
    2021-12-08 07:30:55,141 - vorta.borg.borg_job - DEBUG - Cancel job on site default
    2021-12-08 07:30:55,145 - vorta.borg.jobs_manager - INFO - Finished cancelling all jobs
    2021-12-08 08:17:26,203 - vorta.i18n - DEBUG - Loading translation succeeded for ['en', 'en-US', 'en-Latn-US'].
    2021-12-08 08:17:26,489 - root - INFO - Using NetworkManagerMonitor NetworkStatusMonitor implementation.
    2021-12-08 08:17:26,592 - vorta.borg.jobs_manager - DEBUG - Add job for site default
    2021-12-08 08:17:26,592 - vorta.borg.jobs_manager - DEBUG - Start job on site: default
    2021-12-08 08:17:26,601 - vorta.borg.borg_job - INFO - Running command /app/bin/borg --version
    2021-12-08 08:17:27,054 - vorta.borg.jobs_manager - DEBUG - Finish job for site: default
    2021-12-08 08:17:27,055 - vorta.borg.jobs_manager - DEBUG - No more jobs for site: default
    2021-12-08 08:17:27,055 - vorta.scheduler - DEBUG - Refreshing all scheduler timers
    2021-12-08 08:17:27,061 - vorta.scheduler - INFO - Setting timer for profile 1
    2021-12-08 08:17:27,064 - vorta.scheduler - DEBUG - Scheduling next run for 2021-12-09 08:00:00
    
    type:enhancement status:needs details 
    opened by goebbe 39
  • Import/export settings (or bootstrap with default config)

    Import/export settings (or bootstrap with default config)

    Continuing the work of #954.

    Left to do:

    • [x] fix/finish export & import of profiles
    • [x] fix tests
    • [x] exclude archive details
    • [x] add ability to provision vorta from file
    • [x] docs
    type:feature status:ready 
    opened by phihos 38
  • i18n: Translation Thread (ongoing)

    i18n: Translation Thread (ongoing)

    This thread is to coordinate the actual translation work. So far working on translations:

    • German: @ThomasWaldmann and @Hofer-Julian
    • Italian: @brokenpip3
    • French: @dbrassard and @lapineige
    • Dutch: Heimen Stoffels
    • Czech: Pavel Borecki
    • Polish: Tomasz Kontusz, @ktosiek
    • Galician: Miguel Anxo Bouzada, Transifex profile

    (let me know your Github and Transifex username to be added her)

    Translations are organized on Transifex (TF) and then pulled into the source code, when 90+% complete. More details regarding translations are collected here: https://vorta.borgbase.com/contributing/translations/

    Last, we should mention translators somewhere in the credits or the README. There will also be new strings added over time, as we're still adding features. So it's an ongoing commitment.

    type:task 
    opened by m3nu 38
  • Improve the extract dialog and the dialog showing diff result.

    Improve the extract dialog and the dialog showing diff result.

    I went over board a little bit and implemented a new, more abstract FileTreeModel for use with tree views in general and especially with the ones in the diff result dialog and the extract dialog.

    I have already made the transition of the diff result dialog to the new model. The dialog now features:

    • Three view modes: Tree, Simplified Tree and Flat
    • A tooltip for items with all the diff information
    • Sorting
    • A button to keep folders on top while sorting
    • A context menu to copy an item's path and for expanding all children of the item recursively
    • A button to collapse all items
    • The dialog now doesn't stay on top of the main window. This allows to compare multiple diff results easily.

    Closes #1138.

    opened by real-yfprojects 37
  • Run Backup Task with Root Permission

    Run Backup Task with Root Permission

    I usually run Vorta as a user. However for a complete backup of e.g. the /etc files, I think, it will be necessary to run Vorta as root.

    My wish and suggestion is that you describe the best way to perform such backups in your description or readme.

    status:idea 
    opened by Wikinaut 36
  • Don't override FUSE mount permissions

    Don't override FUSE mount permissions

    Hello, I'm using Vorta (and borg) for the first time. I have installed the latest version (0.6.24) and I have made a couple of backups. Now I have two rows in the Archive section and I'm trying to mount any of them, but it seems not to work.

    I click on "mount" and I select the folder, then nothing happens, I get this text:

    fuse: unknown option `umask=0277'
    

    After I have selected the folder if I double click on the archive it opens the folder but it is empty.

    I'm on Ubuntu 18.04.4 LTS.

    priority:low type:bug 
    opened by smartm0use 34
  • Vorta application on linux - SSH key part is gray out

    Vorta application on linux - SSH key part is gray out

    Description

    I encounter that the SSH key is not being able to click on it The box is gray out

    I need help is it i didnt install correctly can someone help me with this thanks

    my unit is using Distributor ID: Zorin Description: Zorin OS 16.2 Release: 16 Codename: focal

    Screenshot from 2023-01-03 16-10-48

    Reproduction

    • [X] I tried to reproduce the issue.
    • [ ] I was able to reproduce the issue.

    OS

    Description: Zorin OS 16.2

    Version of Vorta

    0.8.9

    What did you install Vorta with?

    Flatpak

    Version of Borg

    No response

    Logs

    non
    
    type:support 
    opened by kellyenfra 1
  • Symbol not found: _ffi_closure_alloc

    Symbol not found: _ffi_closure_alloc

    Description

    This issue happens any time I try to create a repository

    Traceback (most recent call last):
      File "views/repo_add_dialog.py", line 98, in set_password
      File "keyring/darwin.py", line 96, in get_password
      File "keyring/darwin.py", line 124, in _resolve_password
      File "PyInstaller/loader/pyimod02_importers.py", line 499, in exec_module
      File "ctypes/__init__.py", line 8, in <module>
    ImportError: dlopen(/Applications/Vorta.app/Contents/MacOS/lib-dynload/_ctypes.cpython-310-darwin.so, 2): Symbol not found: _ffi_closure_alloc
      Referenced from: /Applications/Vorta.app/Contents/MacOS/lib-dynload/_ctypes.cpython-310-darwin.so (which was built for Mac OS X 10.15)
      Expected in: /usr/lib/libffi.dylib
     in /Applications/Vorta.app/Contents/MacOS/lib-dynload/_ctypes.cpython-310-darwin.so
    
    #### Environment
    
    - OS: macOS Mojave 10.14.6
    - Vorta version: 0.8.9
    - Installed from: Homebrew
    - Borg version: 1.2.2 (1.2.3 is installed according to 'brew info borgbackup' but the Misc tab shows 1.2.2)
    
    <!-- Vorta and Borg versions can be found in Main Window > Misc Tab. -->
    
    #### Logs
    
    <!-- Logs are very important for most issues. Please paste them down below.
    They can be found in Main Window > Misc Tab > Log.
    Logs are more helpful if you include (exactly) the logs that were produced during the steps you described above.
    -->
    
    

    2023-01-03 09:39:57,580 - root - DEBUG - Expected error parsing file in .ssh: id_rsa (You can safely ignore this) Traceback (most recent call last): File "paramiko/ecdsakey.py", line 301, in _decode_key File "paramiko/message.py", line 178, in get_text File "paramiko/py3compat.py", line 161, in u UnicodeDecodeError: 'utf-8' codec can't decode byte 0xaa in position 1: invalid start byte

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/ecdsakey.py", line 126, in init File "paramiko/ecdsakey.py", line 278, in _from_private_key_file File "paramiko/ecdsakey.py", line 314, in _decode_key paramiko.ssh_exception.SSHException: 'utf-8' codec can't decode byte 0xaa in position 1: invalid start byte 2023-01-03 09:39:57,581 - root - DEBUG - Expected error parsing file in .ssh: id_rsa (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/ed25519key.py", line 63, in init File "paramiko/ed25519key.py", line 112, in _parse_signing_key_data paramiko.ssh_exception.SSHException: Invalid key 2023-01-03 09:39:57,581 - root - DEBUG - Expected error parsing file in .ssh: id_rsa.pub (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/rsakey.py", line 64, in init File "paramiko/rsakey.py", line 194, in _from_private_key_file File "paramiko/pkey.py", line 322, in _read_private_key_file File "paramiko/pkey.py", line 340, in _read_private_key paramiko.ssh_exception.SSHException: not a valid RSA private key file 2023-01-03 09:39:57,582 - root - DEBUG - Expected error parsing file in .ssh: id_rsa.pub (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/ecdsakey.py", line 126, in init File "paramiko/ecdsakey.py", line 277, in _from_private_key_file File "paramiko/pkey.py", line 322, in _read_private_key_file File "paramiko/pkey.py", line 340, in _read_private_key paramiko.ssh_exception.SSHException: not a valid EC private key file 2023-01-03 09:39:57,582 - root - DEBUG - Expected error parsing file in .ssh: id_rsa.pub (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/ed25519key.py", line 58, in init File "paramiko/pkey.py", line 340, in _read_private_key paramiko.ssh_exception.SSHException: not a valid OPENSSH private key file 2023-01-03 09:39:57,582 - root - DEBUG - Expected error parsing file in .ssh: known_hosts (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/rsakey.py", line 64, in init File "paramiko/rsakey.py", line 194, in _from_private_key_file File "paramiko/pkey.py", line 322, in _read_private_key_file File "paramiko/pkey.py", line 340, in _read_private_key paramiko.ssh_exception.SSHException: not a valid RSA private key file 2023-01-03 09:39:57,583 - root - DEBUG - Expected error parsing file in .ssh: known_hosts (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/ecdsakey.py", line 126, in init File "paramiko/ecdsakey.py", line 277, in _from_private_key_file File "paramiko/pkey.py", line 322, in _read_private_key_file File "paramiko/pkey.py", line 340, in _read_private_key paramiko.ssh_exception.SSHException: not a valid EC private key file 2023-01-03 09:39:57,583 - root - DEBUG - Expected error parsing file in .ssh: known_hosts (You can safely ignore this) Traceback (most recent call last): File "utils.py", line 195, in get_private_keys File "paramiko/pkey.py", line 249, in from_private_key_file File "paramiko/ed25519key.py", line 58, in init File "paramiko/pkey.py", line 340, in _read_private_key paramiko.ssh_exception.SSHException: not a valid OPENSSH private key file 2023-01-03 09:39:57,592 - vorta.keyring.abc - DEBUG - No module named 'secretstorage' 2023-01-03 09:39:57,592 - vorta.keyring.abc - DEBUG - Using VortaDarwinKeyring 2023-01-03 09:40:02,763 - vorta.keyring.abc - DEBUG - No module named 'secretstorage' 2023-01-03 09:40:02,763 - vorta.keyring.abc - DEBUG - Using VortaDarwinKeyring 2023-01-03 09:40:02,771 - root - CRITICAL - Uncaught exception, file a report at https://github.com/borgbase/vorta/issues/new/choose Traceback (most recent call last): File "views/repo_add_dialog.py", line 98, in set_password File "keyring/darwin.py", line 96, in get_password File "keyring/darwin.py", line 124, in _resolve_password File "PyInstaller/loader/pyimod02_importers.py", line 499, in exec_module File "ctypes/init.py", line 8, in ImportError: dlopen(/Applications/Vorta.app/Contents/MacOS/lib-dynload/_ctypes.cpython-310-darwin.so, 2): Symbol not found: _ffi_closure_alloc Referenced from: /Applications/Vorta.app/Contents/MacOS/lib-dynload/_ctypes.cpython-310-darwin.so (which was built for Mac OS X 10.15) Expected in: /usr/lib/libffi.dylib in /Applications/Vorta.app/Contents/MacOS/lib-dynload/_ctypes.cpython-310-darwin.so

    opened by SlashLP97 7
  • Notifications improvement.

    Notifications improvement.

    Closes #609.

    I went a bit overboard and reimplemented the notifications module. It now supports the full org.freedesktop.Notifications feature set and uses the new MacOS UserNotifications API. The symbolic icon added in #563 is removed because notifications use the normal app icon afaik.

    It would be a miracle if the MacOS code worked. Testing and fixing it is up to you. The linux code works as expected:

    Bildschirmfoto vom 2022-12-28 08-36-07 notification-screenshot

    opened by real-yfprojects 0
  • Add tooltips to settings.

    Add tooltips to settings.

    Fixes #1517

    • src/vorta/store/models.py (SettingsModel): Add tooltip column.

    • src/vorta/store/migrations.py (run_migrations): Create tooltip column.

    • src/vorta/store/connection.py (init_db): Populate tooltip column. Increase SCHEMA_VERSION.

    • src/vorta/views/misc_tab.py (MiscTab.populate): Set tooltip of checkbox widgets.

    • src/vorta/store/settings.py : Add tooltips and update label of override_mount_permissions

    opened by real-yfprojects 3
  • The font remains grayed out until I click on one of the rows

    The font remains grayed out until I click on one of the rows

    7 10

    8 9

    3 6

    4 5

    I expect that the default font setting will not be grayed out. If a row is then explicitly selected, it should then be additionally highlighted in color. The latter is at least the case for me under Fedora 37 workstation.

    status:invalid 
    opened by sudwhiwdh 2
Releases(v0.8.9)
  • v0.8.9(Nov 5, 2022)

    This is a bugfix release on top of v0.8.8. It includes a fix for the Extract feature, pins Pyobjc for macOS to the latest stable version and adds new translations for Dutch.

    722a841 Supply repository and archive name to borg in BorgListArchiveJob. 14a1de8 Add missing brackets fixing BorgListArchiveJob. 99eb287 Add Dutch language update 7550ae5 Pin pyobjc to v8 branch

    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.9.dmg(45.27 MB)
  • v0.8.8(Nov 4, 2022)

    This version adds compatibility for Borg v1.2.2 and addresses several smaller UI bugs.

    Thanks to @real-yfprojects for contributing most of the improvements and to @marco44 for making his first contribution.

    b95da02 Fix sorting of diff results. c5034e1 Remove legacy tree_view (tree model) implementation. 2126ef7 Remove unset repository value from combobox when a repo is selected. 14d5878 Replace --prefix with -a for borg v1.2.2 also. 0188b75 Use isomtime instead of mtime from borg v1.2.2 on. ceb1a3b Add compatibility feature V122. 055338a Link to report form chooser for critical errors. (#1451) ddcd3c7 (real-yfprojects/profile-sidebar, real-yfprojects/master) Update actions/checkout to v3. (#1433) 93307d2 Add default unset value to repo combobox. By @real-yfprojects (#1429) 496acfd Enhance community docs and bug reporting. By @real-yfprojects (#1419) 17cf810 Add pull request template. be194d9 Add CONTRIBUTING file. 3b40ce8 Create feature_request.md 52b1e65 Create bug_form.yaml ff0b888 Create config.yml fd2d2d6 Update bug_report.md 62ba92a Log the error when parsing a file in ~/.ssh fails. (#1410) 4e06b6d Hide SSH dropdown for local repos. By @real-yfprojects (#1407) 8b36a63 Add badges to README.md. (#1406) af311c9 Improve tooltips in archive tab. By @real-yfprojects (#1401) ca497f8 Run hooks on the code base. 63b2eb1 Configure pre-commit hooks and configure black for tests also. b80e01c Create .git-blame-ignore-revs (#1395) ceb04d7 Move linting to the top in test.yml (#1391) b6a24de Apply automatic formatting 7c97f79 Add config files for autmatic formatting 94e7664 Cleanup temp files. By @marco44 (#1384) 8a94457 Add spaces after assert and enhance git py diff. By @real-yfprojects (#1385) d8e4a93 Improve the extract and diff dialog. By @real-yfprojects (#1219) 56de55e (real-yfprojects/sort-diff-result, sort-diff-result-2) Add icons to display mode combobox. cbc0780 Add icon for folder on top button. 372b710 Improve extract dialog GUI. e7772f5 Add sorting to ExtractDialog. 7eedd39 Implement extracting exactly the selected files. 71af54f Use new treemodel for extract dialog. 71aed9b Keep GUI responsive while processing diff results. bdbc172 Open DiffResultDialog as a normal dialog instead of a sheet. 7003d69 Update diffresult.ui with new features and prettyfy it. c8ba273 Use new treemodel for diff view. 3cd9404 Implement fresh TreeModel for TreeViews. 33639ae Add missing Qt dependency for tests (#1376) fd88d7f Fix seconds and microseconds for fixed schedule and fix scheduling for the same day. (#1368) 305db92 Log json diff line parsing errors. By @real-yfprojects (#1369)

    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.8.dmg(45.27 MB)
  • v0.8.7(Jun 17, 2022)

    This is a bugfix release to improve support for Borg 1.2.1. Changes in detail:

    • Deal with new archive_progress key (#1353)
    • Raise ValueError in case of unknown change type in diff json. By @real-yfprojects (#1350)
    • Fix unlink action when repo combobox is empty. By @real-yfprojects (#1342)
    • Show date of next backup. By @tal66 (#1319)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.7.dmg(44.91 MB)
  • v0.8.6(May 26, 2022)

  • v0.8.5(May 24, 2022)

    This is a bugfix release to address issues discovered after the previous release:

    • Fix macOS Archive settings form sizing (#1311)
    • Fix copying the current repo to the clipboard. By @real-yfprojects (#1313)
    • Determine source files for translations dynamically. By @real-yfprojects (#1309)
    • Remove leftovers in repo selector (#1308)
    • Pause scheduling temporarily on failures. By @real-yfprojects (#1299)
    • Only schedule backup after a manual run, improve labels. @real-yfprojects (#1302)
    • Select and delete multiple archives. By @real-yfprojects (#1307)
    • Preserve last creation log per profile for scheduler. By @real-yfprojects (#1296)
    • Don't schedule if no repo is set. By @real-yfprojects (#1288)
    • Hotfix for right-click archive menu. By @real-yfprojects (#1285)

    Full Changelog: https://github.com/borgbase/vorta/compare/v0.8.4...v0.8.5

    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.5.dmg(44.78 MB)
  • v0.8.4(May 6, 2022)

    This version brings an updated interface and scheduler, contributed by @real-yfprojects as well as many other improvements. Thanks to everyone who contributed!

    Major changes:

    • Improve UX and HIG-conformity. By @real-yfprojects (#1176)
    • Rewrite scheduler logic. By @real-yfprojects (#1204)

    Other improvements:

    • Change default returncode for log. By @real-yfprojects (#1193)
    • Update next backup time label. By @real-yfprojects (#1180)
    • Support new borg compact command (#1205)
    • Change keyring label to improve UX on Gnome. By @real-yfprojects (#1181)
    • Add missing translate strings. By @delfino-nunez (#1229)
    • Fix setting a timer value too large for C++ int. (#1230)
    • Add missing translation marking. By @delfino-nunez (#1240)
    • Use accept-new for host keys. By @delfino-nunez (#1238)
    • Properly set dialog titles. By @delfino-nunez (#1246)
    • Use fnmatch for exclude patterns. By @real-yfprojects (#1253)
    • Add a button to mount full repository. By @real-yfprojects (#1257)
    • Clarify enable_background_question label. By @real-yfprojects (#1262)
    • Improve SecretStorage locking behavior. By @Aeysol (#1255)
    • Set repo stats to N/A after delete or prune. By @real-yfprojects (#1251)
    • Improve keyring logging. By @real-yfprojects (#1263)
    • Better diff selection without extra dialog. By @real-yfprojects (#1235)
    • Add support for special file types in borg diff output. By @real-yfprojects (#1265)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.4.dmg(44.86 MB)
  • v0.8.3(Jan 27, 2022)

    This is a maintenance release to address smaller issues and upgrade dependencies:

    • Distinguish different errors in case borg check failed. By @real-yfprojects (#1163)
    • Close SVG files after reading. By @hroncok (#1135)
    • Shows folder sizes in diff view. By @skrap (#1156)
    • Ignore encoding errors in Wifi names (darwin) (#1158)
    • Upgrade llfuse for Flatpak (#1179)
    • Bump macOS updater to Sparkle 2.0 (#1186)
    • Minor test fixes (#1150, #1147, #1146)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.3.dmg(44.00 MB)
  • v0.8.2(Nov 27, 2021)

    This is the first stable release for the v0.8 branch. Please see previous pre-releases for detailed changes. Main changes:

    • Refactor Borg job scheduling. By @bastiencyr
    • Remove APScheduler dependency and use QTimer directly
    • Python 3.10 compatibility
    Source code(tar.gz)
    Source code(zip)
    vorta-0.8.2.dmg(43.74 MB)
  • v0.8.1(Nov 17, 2021)

    This is the next pre-release of our 0.8 branch, which includes larger under-the-hood improvements. Changes since the last release:

    • Use native threading module in job_manager. (#1096)
    • Fix next_job timer logic. By @jayeclark (#1100)
    • Remove jobs if scheduler setting is changed. (#1105)
    • Remove jobs before deleting profile (#1107)
    • Make sure correct sources are removed (#1110)
    • Address DB Locking issues (#1109)
    • Refactor: Split up vorta/models.py (#1112)
    • Notify on failed repo checks (#1113)
    Source code(tar.gz)
    Source code(zip)
  • v0.8.0(Nov 4, 2021)

    This major release improves the way Borg jobs are handled. It also adds support for Python 3.10 and removes our dependency on APScheduler. This is a pre-release and some bugs in this branch aren't addressed yet.

    Changes in detail:

    • Implement multiple queues. By @bastiencyr (#1045)
    • Show backup size with excludes applied. By @freder (#961)
    • Remove APScheduler dependency, Python 3.10 support (#1086)
    • Add tooltip containing path name. By @XXXBold (#1072)
    • Increases the maximum allowed number in prune keep. By @lstrz (#1089)
    • Always handle autosave setting when saving SettingsModel. By @phihos (#1093)
    Source code(tar.gz)
    Source code(zip)
  • v0.7.8(Aug 26, 2021)

    Minor release to update translations and address small bugs. The next release will be 0.8 and will include larger changes:

    • Fix double call to on_user_click. By @olivierlemoal (#1031)
    • Handle malformed .vorta-init.json on import. Fixes #1053. By @phihos
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.8.dmg(43.32 MB)
  • v0.7.7(Jun 21, 2021)

  • v0.7.6(Jun 8, 2021)

    This release adds a number of bug fixes, as well as two new features developed by @phihos and @rblenis. Also special thanks to @bastiencyr for a number of bug fixes.

    You can now import and export settings related to a single profile to JSON. The same JSON can be used to bootstrap a new Vorta installation. E.g. to set up a device via MDM. More about this feature in the docs.

    New features:

    • Import/export settings (or bootstrap with default config). By @phihos (#955)
    • Add support for 'diff --json-lines'. By @rblenis (#909)

    Bugfixes and refinements:

    • Alert when deleting last profile. By @bastiencyr. (#1006)
    • Add /opt/homebrew/bin to PATH. Fixes #1001 (#1002)
    • Put folders first in diff/extract. Fixes #915. By @bastiencyr (#999)
    • Skip sizing folders on permission error. Fixes #968 (#969)
    • Called set_progress() on wrong class. (#965)
    • Fix color for eye icon when masking password (#959)
    • Refuse to add inaccessible folders, warn on inaccessible files during backup (#951)
    • Check for full disk access on macOS (#952)
    • Open window on left-click on Linux. Fixes #938 (#945)
    • Fix issue #940 - KeyError in get_dict_from_list. By @rblenis (#947)
    • Correctly rename profile in dropdown. Fixes #943 (#944)
    • Fix 'list --json-lines' command when only a single result line is output. By @rblenis (#910)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.6.dmg(43.24 MB)
  • v0.7.5(Mar 3, 2021)

    This is a maintenance release to address some issues Linux users have reported with their keychain. With this release

    • You can disable the system keychain and just keep the repo passphrase in Vorta's settings DB (slightly less secure)
    • Keyring is now picked by assigning a score. So it will prioritized KWallet on KDE and Secret Storage on Gnome.

    Other improvements

    • Use json mode to list archive files. By @rblenis (#885)
    • Add untranslated strings. By @samuel-w (#902)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.5.dmg(44.93 MB)
  • v0.7.4(Feb 26, 2021)

    This is a maintenance release to address some widespread issues related to different Linux keychains. It also adds Swedish as translation, as well as updates to existing translations.

    New features

    • Add option to refresh individual archives. By @rblenis (#878)

    Bug fixes and improvements

    • Fix log table sorting. By @rblenis (#881)
    • Improve kwallet verification. By @samuel-w (#889)
    • Remove failing SSH key check (#887)
    • Avoid segfault when quitting (#877)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.4.dmg(44.92 MB)
  • v0.7.3(Feb 18, 2021)

    This release adds support for two more Borg commands (rename and break-lock), as well as a slightly revamped Archive tab. We also updated macOS Wifi support and fixed numberous bugs.

    Possible Breaking Changes

    • This removes the profile_slug from the default archive name and prefix. This change only applies to new backup profiles. So if you use the same repo for multiple projects on the same hostname, be sure to check your prune prefix as well. The new default archive name is: {hostname}-{now:%Y-%m-%d-%H%M%S}

    New Features

    • Add mount option override checkbox. By @samuel-w (#682)
    • Add custom options to borg create command. By @samuel-w (#677)
    • Add rename action. By @samuel-w and @m3nu (#864)
    • Give option to break repository lock. By @samuel-w (#863)

    Bugfixes

    • Remove support for deprecated macOS XML wifi list. (#868)
    • Catch more possible SSH key parsing errors. (#789)
    • Improve cancelling Borg process (#786)
    • Add QTimer to ensure background jobs are scheduled correctly. (#780)
    • Fix corrupted archive table list during refresh if sorting is enabled. By @rblenis (#784)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.3.dmg(44.89 MB)
  • v0.7.2(Jan 31, 2021)

    This release adds a lot of detailed improvements, mostly contributed by our newest maintainer @samuel-w.

    A selection of the main changes:

    • Renable buttons on cancel. By @samuel-w (#772)
    • Allow pasting files/folders from file manager, set model defaults (#759)
    • Add option to disable exit dialog. By @samuel-w (#681)
    • Allow only one profile with --create. By @samuel-w (#744)
    • Improved password handling and transparency. By @samuel-w (#550)
    • Fix file selector dialog (#764)
    • Fix label colour not changing on dark mode change. By @samuel-w (#757)
    • Cleanup database at exit, use write-ahead logging. By @samuel-w (#696)
    • Sort files in Extract dialog alphabetically. By @samuel-w (#741)
    • Update check message on completion. By @samuel-w (#672)
    • Give error message on unmount failure. By @samuel-w (#668)
    • Improve exception handling. By @samuel-w (#628)
    • Ensure system keychain is unlocked before using it. By @samuel-w (#607)
    • Create backups from command line using existing profiles. By @samuel-w (#556)
    • Diff: better color of added and removed text. By @samuel-w (#649)
    • Add KWallet support. By @samuel-w (#540)
    • Correctly sort archives by size. By @samuel-w (#729)
    • Refactoring: remove last exec_, add tests, retain archive deletion message. By @samuel-w (#722)
    • Refactor add and rename to not use exec_. By @samuel-w (#721)
    • Improve autostart test. By @samuel-w (#720)
    • Limit network checking to only remote repos. By @samuel-w (#701)
    • Re-enable SSH host key checking for all operations except when adding repo (#717)
    • Add valid copyright header to Johan Rade's work. By @sten0 (#716)
    • Display number of files and sizes in source tab. By @XXXBold (#617)
    • Translate category labels for log output. By @samuel-w (#683)
    • Fix crash when window is closed while thread running. By @samuel-w (#685)
    • Reuse existing window when bringing to front. (#674)
    • Set icon through code (#676)
    • Show dialog on copy failure. By @samuel-w (#647)
    • Get keyring at runtime. By @samuel-w (#635)
    • Save correct window size. By @samuel-w (#661)
    • Properly catch DBusException. By @samuel-w (#670)
    • Set application name (#666)
    • Set all icons to same height (#660)
    • Replace Borg version with install method in bug report (#657)
    • Reduce icon memory usage. By @samuel-w (#656)
    • Cancel Borg thread at end of test. (#648)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.2.dmg(44.57 MB)
  • v0.7.1(Sep 10, 2020)

    This is a bugfix release for several new features contained in v0.7.0:

    • Fix crash when GUI is opened via tray icon while a backup is running. By @samuel-w
    • Use single tray icon for light and dark themes. By @samuel-w
    • Use naked en locale instead of en_US. Fixes #623 (#626)
    • Remove 'Backup in progress' when re-opening window (#627) by @samuel-w
    • Avoid formatting date and time twice. Fixes #624 (#625)
    • Handle DBusException in NetworkManagerMonitor (#636) by @ktosiek
    • Initialize the network status monitor lazily (#634) by @ktosiek
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.1.dmg(40.04 MB)
  • v0.7.0(Sep 6, 2020)

    Our largest release ever with a long list of incremental improvements by many great contributors. Thanks to all of them!

    • Proper dark style support and removal of style hacks
    • Prevent duplicate repos from being added. Fixes #473
    • New setting to store previously selected profile. Fixes #241
    • Add error message when Borg binary is missing. Fixes #333
    • Notify of errors after system tray backup run. Fixes #105
    • Linux Desktop file: fix syntax, enhance Categories, add a Keyword. By @sten0
    • Fix parsing "changed link" lines. By @ktosiek
    • Add paste button for source paths. By @samuel-w
    • Prevent profiles from sharing the same name. Fixes #512. By @samuel-w
    • Add copy button for repository URLs/paths. Fixes #409. By @samuel-w
    • Move socket file from state-dir to tmp-dir. Fixes #513
    • Save main window state before closing. By @Hofer-Julian
    • Parse owner changes in borg diff results. By @ktosiek
    • Fix tests for PyQt 5.15 on Linux. By @samuel-w
    • Refactor Linux autostart by @samuel-w
    • Add correct icon for notifications on Linux. By @Hofer-Julian
    • Newer macOS deploy target for detecting dark mode. Fixes #575
    • Enable multiselection on source list by @XXXBold
    • Allow selection of multiple files by @samuel-w for #593
    • Prevent running backups on metered network. By @ktosiek
    • Add autosorting for source list. By @samuel-w
    • Use dt.now everywhere. By @samuel-w
    • Improved progress updates. By @SergioRAgostinho
    Source code(tar.gz)
    Source code(zip)
    vorta-0.7.0.dmg(40.03 MB)
  • v0.6.26(May 26, 2020)

  • v0.6.24(Mar 3, 2020)

    • Notarize macOS release (includes notarized Borg)
    • Add Czech and Finnish translations. Thanks to Pavel Borecki and Jiri Grönroos!
    • Simplify startup behavior. Run in foreground by default (used by Flatpak and macOS). Use --daemonize to start in background.
    Source code(tar.gz)
    Source code(zip)
    vorta-0.6.24.dmg(39.16 MB)
  • v0.6.23(Oct 10, 2019)

    • Move setting prune options to right place. Fixes #339
    • Improvements to diff-feature. By @Hofer-Julian and @philroche
    • Enable sorting of archive table columns. By @Plastix
    • Always mount with current user and read-only permissions
    • macOS build: update dependencies. Now uses Qt 5.13.1 and Python 3.7.4
    Source code(tar.gz)
    Source code(zip)
    vorta-0.6.23.dmg(36.71 MB)
  • v0.6.22(Aug 3, 2019)

    Mostly by @Hofer-Julian

    • Implement borg diff
    • Include more links into appdata
    • Default opt-in for enable_notifications_success
    • Rename background-option to daemonize
    • Implement close-question for DEs without system tray
    • Fix autostart icon
    • Allow is_system_tray_available to be called with running event loop
    • Add option for starting Vorta in foreground
    Source code(tar.gz)
    Source code(zip)
    vorta-0.6.22.dmg(34.40 MB)
  • v0.6.21(Jun 20, 2019)

    • Flatpak package by @Hofer-Julian
    • Build macOS release in Vagrant to support older macOS releases
    • Implement --version. Fixes #260 by @Hofer-Julian
    • If BORG_PASSCOMMAND is found, unset BORG_PASSPHRASE. #272
    • Raise meaningful error when Borg version found is too old. Fixes #283
    • Ignore Python processes owned by other users when finding mount points.
    • Bugfixes and small security improvement
    Source code(tar.gz)
    Source code(zip)
    vorta-0.6.21.dmg(36.54 MB)
  • v0.6.20(May 16, 2019)

  • v0.6.19(Apr 22, 2019)

  • v0.6.18(Apr 19, 2019)

    This release features more under-the-hood improvements and suble bugs users discovered. In detail:

    • Fixes default white icon behaviour for Ubuntu GNOME by @Hofer-Julian
    • Don't delete item from sources if item==None by @aquarial
    • Fixes issue when Borg binary is missing. Issue #258
    • Add date-based log rotation. Partially fixes last part of #121
    • Remove unique constraint from Archive ID. Fixes #253. (Allows to connect to the same repo from multiple places.)
    Source code(tar.gz)
    Source code(zip)
    vorta-0.6.18.dmg(34.52 MB)
  • v0.6.17(Apr 14, 2019)

    This release adds a feature to manage features specific to a certain Borg version and improves logging:

    It also fixes an encoding bug that occured in the Extract-dialog on packaged macOS apps.

    • Get borg version and path on startup. Link to log folder. (#247)
    • Add helper class to manage Borg version and supported features. (#250)
    • Correctly set environment encoding (pyinstaller issue). Fixes #220
    Source code(tar.gz)
    Source code(zip)
    vorta-0.6.17.dmg(34.48 MB)
  • v0.6.16(Apr 7, 2019)

  • v0.6.15(Mar 25, 2019)

Owner
BorgBase.com
Simple and Secure Offsite Backups
BorgBase.com
It's a simple python script to take backup of directories (compressing) then the same to move your mentioned S3 bucket with the help of AWS IAM User.

Directory Backup Moved to S3 (Pyscript) Description Here it's a python script that needs to use this script simply create a directory backup and moved

Yousaf K Hamza 3 Mar 4, 2022
Confirm that files have been uploaded to Backblaze Cloud Backup successfully

Backblaze Backup Checker This Python script compares metadata captured from files within source folders against data parsed from Backblaze Cloud Backu

null 18 Jul 29, 2022
API Basica per a synologys Active Backup For Buissiness

Synology Active Backup for Business API-NPP Informació Per executar el programa

Nil Pujol 0 May 13, 2022
A smart tool to backup members 📈 So you even after a raid/ ban you can easily restore them in seconds 🎲

?? Discord-backer ?? A open-source Discord member backup and restore tool for your server. This can help you get all your members in 5 Seconds back af

John 29 Dec 21, 2022
A Python script to backup all repos (public or private) of a user.

GithubBackupAllRepos A Python script to backup all repos (public or private) of a user. Features Clone public and private repos Load specified SSH key

Podalirius 15 Jan 3, 2023
Python script to backup/convert your Spotify playlists into the XSPF format.

Python script to backup/convert your Spotify playlists into the XSPF format.

Chris Ovenden 4 Jun 9, 2022
A CLI tool to transfer, sync, and backup playlists on music streaming services

unitunes A command-line interface tool to manage playlists across music streaming services. Introduction unitunes manages playlists across streaming s

Victor Tao 50 Jan 7, 2023
Drcom-pt-client - Drcom Pt version client with refresh timer

drcom-pt-client Drcom Pt version client with refresh timer Dr.com Pt版本客户端 可用于网页认

null 4 Nov 16, 2022
Dns-Client-Server - Dns Client Server For Python

Dns-client-server DNS Server: supporting all types of queries and replies. Shoul

Nishant Badgujar 1 Feb 15, 2022
Raphtory-client - The python client for the Raphtory project

Raphtory Client This is the python client for the Raphtory project Install via p

Raphtory 5 Apr 28, 2022
Changes your desktop wallpaper based on the weather.

WallPaperChanger ??️ Description ⛈️ This Python script changes your desktop wallpaper based on the weather. Cloning ?? $ git clone https://github.com/

Clarence Yang 74 Nov 29, 2022
Library to manage your own custom RPC on your desktop

Info I don't recommend novices setting this up yourself. It requires Redis, a server to host the API on, and a bit of understanding of Windows & Pytho

Isaac K 1 Apr 16, 2022
A simple program to display current playing from Spotify app on your desktop

WallSpot A simple program to display current playing from Spotify app on your desktop How to Use: Linux: Currently Supports GNOME and KDE. If you want

Nannan 4 Feb 19, 2022
A self-bot for discord, written in Python, which will send you notifications to your desktop if it detects an intruder on your discord server

A self-bot for discord, written in Python, which will send you notifications to your desktop if it detects an intruder on your discord server

LevPrav 1 Jan 11, 2022
🐍 The official Python client library for Google's discovery based APIs.

Google API Client This is the Python client library for Google's discovery based APIs. To get started, please see the docs folder. These client librar

Google APIs 6.2k Jan 8, 2023
Python client for Arista eAPI

Arista eAPI Python Library The Python library for Arista's eAPI command API implementation provides a client API work using eAPI and communicating wit

Arista Networks EOS+ 124 Nov 23, 2022
Python API Client for Close

Close API A convenient Python wrapper for the Close API. API docs: http://developer.close.com Support: [email protected] Installation pip install clos

Close 56 Nov 30, 2022
Python client for CoinPayments API

pyCoinPayments - Python API client for CoinPayments Updates This library has now been converted to work with python3 This is an unofficial client for

James 27 Sep 21, 2022
DEPRECATED - Official Python Client for the Discogs API

⚠️ DEPRECATED This repository is no longer maintained. You can still use a REST client like Requests or other third-party Python library to access the

Discogs 483 Dec 31, 2022