[HN Gopher] Sabre/dav: open-source CardDAV, CalDAV and WebDAV se...
___________________________________________________________________
Sabre/dav: open-source CardDAV, CalDAV and WebDAV server
Author : kretaceous
Score : 92 points
Date : 2023-02-09 17:08 UTC (5 hours ago)
HTML web link (sabre.io)
TEXT w3m dump (sabre.io)
| alganet wrote:
| sabre/dav is amazing
|
| I worked on a company that had multiple issues with mounted
| folders using smb across a wide variety of desktop clients (that
| was around 2012).
|
| Customers would name their files with weird characters, would use
| OS X folder colors and expect them to stick, etc. We needed to
| support all of that.
|
| One day we tested replacing smb with webdav mounts powered by a
| thin layer based off sabre/dav. It just worked out of the box.
| All of our issues were gone. It's client support is the best I've
| seen.
|
| It also allowed us to create virtual files, setup caching and a
| lot of other goodies that seemed impossible with smb.
| hahamaster wrote:
| How did you handle authentication, permissions and security?
| alganet wrote:
| Authentication was HTTP digest.
|
| I don't remember exactly how we implemented permissions, but
| I remember that at some point (after extending sabre/dav
| pretty hard) we did all kinds of customer configuration
| (including ACL) based on virtual files. Admin would just
| change a virtual file with roles and we would receive it on
| our implementation as a method call.
| n3storm wrote:
| More than 10 years Fruux customer here.
| bartvk wrote:
| Very interesting, I didn't know about them. It seems that they
| have a basic free plan, for a single user with two devices. So
| maybe one laptop and one iPhone, and you can move your calendar
| and contacts out of Google.
| captn3m0 wrote:
| I used the sabre core libraries to create a slack-backed CardDAV
| server for a hackathon. Was super-fun to get it working, and the
| demo was quite powerful - you scan a QR code to OAuth via Slack,
| and download a iOS mobileconfig that adds the CardDAV profile to
| your iPhone.
|
| Unfortunately, Android not supporting CardDAV made it a half-way
| solution, so it wasn't as seamless as you'd like. It was super
| fun to build using sabre, but it was limited by the CardDAV
| decisions. You can't make a read-only CardDAV server that easily,
| for eg - the client will optimistically make local changes, and
| assume that server is just temporarily down when it returns a
| non-2xx code.
|
| I might still polish it and release it, since it was a super-cool
| tool, if only for iOS users.
| eddieroger wrote:
| Please do! I have had a similar idea for a while and would love
| to see and contribute to what others are doing.
| stonewall wrote:
| I self-host my family's calendar and contacts using sabre/dav,
| and I've been very happy with it. It provides CalDAV, CardDAV,
| and per-user WebDAV shares.
|
| For clients, I use Evolution on Linux and DAVx5 [1] on Android.
|
| I wrote a FreeIPA integration plugin [2] to do authentication and
| group memberships using my local IPA domain.
|
| [1] https://f-droid.org/en/packages/at.bitfire.davdroid/
|
| [2] https://github.com/sacredheartsc/sabredav-freeipa
| qalter wrote:
| I tried hosting it on my server but couldn't manage. Would anyone
| have a step by step process?
| stonewall wrote:
| I get the impression that sabre/dav markets itself more as a
| platform on which one can build their own CalDAV/CardDAV
| applications.
|
| I run it standalone, because I wanted a CalDAV system that
| could integrate with my local FreeIPA domain via LDAP. The only
| other project that met this requirement was davical [1], but it
| seemed much less active.
|
| I ended up writing my own FreeIPA/LDAP authentication and
| principal backends [2] for sabre/dav. I believe they have a PDO
| backend built in, if you want to store your users in a
| database.
|
| Basically, you composer install sabre/dav and wire all the
| components together in server.php. You'll also want to redirect
| the /.well-known/{caldav,carddav} URLs with a rewrite rule in
| your webserver. Most of this is described in their
| documentation [3].
|
| If you're looking for turn-key solution with an administration
| GUI, you probably want Baikal [4], which is based on sabre/dav.
|
| [1] https://www.davical.org/
|
| [2] https://github.com/sacredheartsc/sabredav-freeipa
|
| [3] https://sabre.io/dav/gettingstarted/
|
| [4] https://sabre.io/baikal/
| qalter wrote:
| Thank you!
| hinata08 wrote:
| i thought it was a service to remember about the next plane
| and/or train tickets you booked, just after reading the title.
|
| Sabre is also the name of a company that offers airlines and
| travel websites a backend to book tickets
| https://en.wikipedia.org/wiki/Sabre_(travel_reservation_syst...
| pkulak wrote:
| Don't forget the Sabre Pyramid, one of the most influential
| tech innovations of the last two decades.
| hk1337 wrote:
| Unleash the POWER of the PYRAMID!
| ralgozino wrote:
| I knew the name was familiar, thank you
| tannhaeuser wrote:
| Haven't heard about WebDAV and related HTTP extensions here for
| some time. I guess static web space management through the webdav
| protocol is below the average HNer who rather wants "web apps"
| for reasons of financial wellbeing ;) Interestingly, the history
| of versioning of static web "resources" through webdav (Delta/V
| [1]) is strongly connected to subversion (svn), which as a SCM
| has long made way for git, but kindof lives on in mod_dav_svn.
|
| [1]: https://www.rfc-editor.org/rfc/rfc3253
| nivethan wrote:
| I've recently gotten into it and I hope it makes a come back.
| It's pretty cool. I'm currently working to get a sqlite fuse
| system set up and use with webdav. It'd be very entertaining to
| simply PUT a file on nginx and have that turn into an insert
| into a database :)
| DrSAR wrote:
| I was attempting to simplify the multi-version php setup I have
| in my small-scale server setup and noticed sabre needs PHP 5.4
| and apparently doesn't run with php7 [1]. I wonder how much
| interest there is to upgrade that dependency at sabre. My un-
| informed opinion was that it's a good idea to move with your php
| setups.
|
| [1] https://github.com/sabre-io/Baikal/issues/764
| stonewall wrote:
| That may be true for the older version of sabre/dav that Baikal
| seems to depend on, but the current version of upstream works
| just fine with PHP 7.
|
| I'm currently running sabre/dav with PHP 8.0 with no issues,
| and previously ran it with PHP 7.4.
| stonogo wrote:
| The page has OwnCloud's logo on there, but OwnCloud recently
| introduced a ground-up rewrite, resulting in a single-binary
| deployment (written in Go). Does anyone know if Sabre/dav's PHP
| is still in the cards at OwnCloud?
|
| For CardDAV/CalDAV I'd be interested in a comparison to
| Radicale...
| n3storm wrote:
| Really Owncloud become Pydio? I was pissed of about that
| decission cause I already had some (little) php code for
| plugins and multi-tenant Pydio setups and with Go rewrote it
| broke everything for me.
| vorpalhex wrote:
| Oh that is excellent to hear. I tried OwnCloud years back and
| found performance too poor with their LAMP stack.
| n3storm wrote:
| Radicale is powerful, it does not have a management UI though
| whereas Sabre has Baikal: https://sabre.io/baikal/
| vsviridov wrote:
| I'm using Baikal with patches that allow authentication via
| IMAP and it's pretty great...
| brnt wrote:
| Has Ownclouds infinite scale project been mainlined? It has now
| fully replaced the old PHP codebase?
|
| Love to hear some experiences with it.
| Ralo wrote:
| I was looking for a way to host my calendar and contacts. I
| looked into Owncloud and tested it but found to be way too much
| for what I needed. It has it's own ecosystem with an online
| store. I just need to backup my data.
|
| I found sabre to be perfect. Its barebones as you need it to be.
| I use DAVx5 on android and add it as an account then changed my
| calendar/contact's default to that. So now my PC can push
| notifications to my phone and vise versa using thunderbird.
|
| I enjoyed it so much that I use it to sync data to/from my phone
| 247. I have my music folder symlinked to sabre and using
| FolderSync it tries to copy the music anytime I'm connected to
| wifi. So, if I download a song I know that all my music will be
| auto copied to my phone.
|
| Same goes for my camera. All my photos are auto copied over to my
| server. This is huge because my server is setup to run auto
| backups. It's basically icloud but entirely in my control.
|
| Maybe there's a modern version of my setup, but this has been so
| great and ultra lightweight and works anywhere.
| treve wrote:
| Really nice to hear that people still have love for this
| project! Heart warming after all these years. I no longer
| maintain the project but the people that have taken over have
| done a great job keeping everything modern (even though the
| website has become a bit stale).
|
| Really nice to have a tiny bit of legacy, the new open source
| projects I've been working on have never really quite picked up
| in the same way.
| jansommer wrote:
| I wonder if the name 'Sabre' is a reference to The Office. Made
| me think of this song: https://m.youtube.com/watch?v=iCEohYELD30
| treve wrote:
| Hi, I'm the OG author. When I was a teenager the Sabretooth
| tiger was my favourite animal. The project also preceeds that
| office episode by a few years (I think I started in 2005), so
| it was a bit funny to see that episode.
___________________________________________________________________
(page generated 2023-02-09 23:00 UTC)