https://github.com/ad-on-is/resticity

Hey guys,

I’ve been building a frontend for restic the past couple of weeks, and it’s at the stage where the app is finally ready and usable. So I wanted to share it with the world. Oh, and it’s FOSS of course.

It’s intended to be used either as a cross-platform desktop app (built using wails) or to be run in a Docker container, for homelab uses, etc.

PRs and feature requests are more than welcome :-)

Right now, I could also use some help for distributing it across the different platforms, AUR, Flatpak, etc.

I hope you guys like it. Cheers!

  • @[email protected]M
    link
    fedilink
    89 months ago

    This looks nice, good job!

    On a related note, does anyone have any good reasons as to why I should be using Restic instead of Borg? (my Borg backups are all local btw - generally they’re snapshots of various projects I’m working on, so I don’t need any cloud features).

    • trevor
      link
      fedilink
      English
      69 months ago

      I like restic because everything seems to happen client-side, and the client pushes the encrypted backups to the server without having to install restic on the back end.

      That said, I’ve never needed to restore my data with either backup solution, so I can’t speak to the validity of the backups.

    • @[email protected]
      link
      fedilink
      59 months ago

      I use restic but I switched from Borg because of the cloud features. Outside of that, there’s not a lot of differences really. If you’re happy with Borg keep with it.

  • OSH
    link
    fedilink
    59 months ago

    It’s great to see more and more tools around restic.

    DejaDup also recently added restic support.

  • @[email protected]
    link
    fedilink
    English
    29 months ago

    First im hearing of restic, Haven’t looked too much into it but it seems like it could be an alternative to rclone for me in some aspects

    • @[email protected]
      link
      fedilink
      English
      29 months ago

      Sometimes. Depends what you’re backing up to. In some cases it would work in tandem with rclone.

      I really like its architecture. The efficiency is really nice when pushing to the cloud and not making so many transactions.

      • @[email protected]
        link
        fedilink
        18 months ago

        I also like that with the rest-server you can configure it with append-only, so even if someone wants to encrypt or delete the data they are not able to modify the existing backup

  • @[email protected]
    link
    fedilink
    2
    edit-2
    9 months ago

    It looks very nice, but I’m not familiar with wails. Is it lightweight? I currently just use a pwsh script to manage restic, but would be nice to have a gui

    • adONisOP
      link
      29 months ago

      Compared to electron it is lightweight. i.e. it doesn’t include full Chrome, but a webkit webview, which also has its caveats, but does the job just fine.

  • trevor
    link
    fedilink
    English
    19 months ago

    I’ve been trying to create an AUR package for this, but can’t figure out how to build more than just the server backend (based off of the Dockerfile). Is there a way to build it without wails? I can’t get that to work in the PKGBUILD.

    • adONisOP
      link
      29 months ago

      I just made a PKGBUILD and commited it to the repo. Would you mind having a quick look at it and see if it’s good enough?

      Right now, I’m looking through the docs of the AUR on how to publish it.

      • trevor
        link
        fedilink
        English
        29 months ago

        Regarding how to publish the package, there are a few GitHub Actions that make it easy, like this one.

        • adONisOP
          link
          19 months ago

          thank you, will look into it

      • trevor
        link
        fedilink
        English
        19 months ago

        Thank you for making a PKGBUILD for this!

        I just tried it, but I have the same issue when I was attempting to build mine:

        ...
          -> Downloading 1.0.0.tar.gz...
          % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                         Dload  Upload   Total   Spent    Left  Speed
          0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
          0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--   100  331k    0  331k    0     0   408k      0 --:--:-- --:--:-- --:--:--  880k
        ==> Validating source files with sha256sums...
            1.0.0.tar.gz ... Passed
        ==> Extracting sources...
          -> Extracting 1.0.0.tar.gz with bsdtar
        ==> Starting prepare()...
        go: downloading github.com/wailsapp/wails v1.16.9
        ==> Starting build()...
        /var/home/trevor/git/PKGBUILD: line 34: wails: command not found
        ==> ERROR: A failure occurred in build().
            Aborting...
        

        I’m not familiar enough with wails to know how to build without it.

        If you require it as a dependency, it would only work for Arch users with the AUR enabled, as it wails doesn’t seem to be in the main repositories.

        • adONisOP
          link
          19 months ago

          Oh wait… sorry, I forgot about it, but env GOBIN and GOPATH need to be set properly… and then wails should be invoked with $GOBIN/wails build

        • adONisOP
          link
          19 months ago

          wails is installed via go install, which I’ve included in the prepare script

        • trevor
          link
          fedilink
          English
          19 months ago

          Ah. I see that you’re installing wails with go. I guess the problem is that $GOBIN may not be set for everyone, myself included.

          • adONisOP
            link
            19 months ago

            Sorry, didn’t see this comment… Yes, it’s a $GOBIN issue… I’ve updated the PKGBUILD accordingly

      • fredix
        link
        fedilink
        English
        19 months ago

        Hi @[email protected] ! Thanks for resticity and your PKGBUILD. However, I have to modify it and replace “packaging/resticity.desktop” with “$startdir/resticity.png” and “packaging/resticity.desktop” with “$startdir/resticity.desktop”

        Anyway, seems to works, I can push a backup, but when I go to repositories, resticity try to get snapshots (LOADING Snapshots) and failed with this error : “json: slice unexpected end of JSON input” Thanks for your help.

    • adONisOP
      link
      19 months ago

      I’m still fighting through the docs of Flatpak… glibc is a pain 😅 Will have ro look into AppImages and brew

  • Eugenia
    link
    fedilink
    English
    19 months ago

    Very nice looking, but judging from the screenshot, the app window seems to be massive? It doesn’t fit on my Macbook Air, and I’m sure won’t fit on my various 1366x768 Linux laptops. Or maybe the app creates scrollbars automatically? Also, does it have a light theme, or is it only dark? (I have a lot of astigmatism, so dark themes aren’t readable to my eyes). Other than that, it looks great!

    • adONisOP
      link
      19 months ago

      yeah, a light theme will be implemented later on.