TCB13 / LoFloccus

Sync Floccus' browser bookmarks to a local folder / any cloud.
MIT License
278 stars 21 forks source link

LoFloccus webdav server (GNU/Linux). #7

Open marlluslustosa opened 4 years ago

marlluslustosa commented 4 years ago

I launched a webdav server for GNU/Linux for the browser Floccus plugin. I really liked your plugin that creates a webdav server locally, but as it had no native version for GNU/Linux, so i decided to create it based on your project.

It would be a great idea to put together with your project and thus join forces.

https://github.com/marlluslustosa/LoFloccus-Docker

TCB13 commented 4 years ago

but as it had no native version for GNU/Linux

That's just wrong, you can download Qt and compile it for your favourite linux distro.

Anyway what do you have in mind about colaboration?

marlluslustosa commented 4 years ago

I don't use Qt, just like many people. So it would not be democratic to say that there is a version for GNU / Linux. As well as other people who don't use X on their machines.

With a docker container, I can say that there is easier compatibility for a larger number of system users.

TCB13 commented 4 years ago

The fact that you don't use Qt doesn't mean anything for this project. I could (as I intend to) at some point package a statically compiled version of the app for debian and you won't need Qt to run it. This is what's currenty going on under Windows and macOS and the final binaries are small.

TCB13 commented 4 years ago

Your docker container / non-gui solution is just another alternative implementation that has nothing to do with LoFloccus.

As stated before the goal of LoFloccus is making it so ANY user without advanced knowledge can sync Floccus to any cloud. LoFloccus was never indeded to be a cli experiece only available to those who can fire up docker and stuff.

marlluslustosa commented 4 years ago

It is much more laborious to release versions .deb, .pkg, .rpm, .snap, etc. Containers made that a lot easier today.

I believe the purpose of a tool is to get users to use it and what I tried to do was a way to cover that feature. A webdav server client (which is LoFloccus) does not necessarily have to work with X from an operating system, ie it does not have to have a GUI. If you released a GUI, great.

The internet is full of users, whether they are advanced or not. Remember this and sorry if I caused you misfortune.

Most github repositories are public and the exchange of experiences is always interesting.

TCB13 commented 4 years ago

@marlluslustosa I do agree with you about the simpliciy that docker can bring instead os packaing for each OS, however my implementation was focused on the average Windows/macOS user. That user just wants to download something with a nice GUI and get it running right away. Qt is a very good choice for that because it can build statically for both platforms without much trouble. Your docker-based solution is intended mosltly for the *nix power user that doesn't necessarily want a GUI.

Bottom line: we both want to deliver the same functionality to two different groups of people that expect things done in a different way. I would like very much to get your code and mine into a single project and deliver for both groups however I'm not sure on how that can be done... do you have any ideias?

marlluslustosa commented 4 years ago

I believe you can add a link to users who would like to work with Docker at the end of your README file.

I also don't see how to integrate the codes, since you wrote them in golang and I in shellscript.

marcelklehr commented 4 years ago

@marlluslustosa I like the ability to quickly install a floccus-compatible webdav server with docker! :) As has been said already, I think the target audiences are distinct, so it's great that there's multiple options. Personally, I would applaud a similarly simple way to install LoFloccus on Linux using perhaps snapd or similar, so I'm glad your thinking about this already @TCB13 :)

dougg0k commented 6 months ago

Why not make use of github actions to build to all operating systems? Windows, Macos, Linux (main distros), then set it to put into the releases page.

https://docs.github.com/en/actions/using-jobs/choosing-the-runner-for-a-job#choosing-github-hosted-runners

If you want more distros, like fedora, use docker on the ubuntu runner. https://github.com/actions/runner-images/issues/2307#issuecomment-1046260036

https://github.com/ncipollo/release-action

Should be straight forward to do this for just a build generation.