11 ms·
Sabre/dav: open-source CardDAV, CalDAV and WebDAV server
- n3storm 4y agoMore than 10 years Fruux customer here.
- bartvk 4y agoVery 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.
- tannhaeuser 4y agoHaven'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 https://www.rfc-editor.org/rfc/rfc3253
- nivethan 4y agoI'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 :)
- stonogo 4y agoThe 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 4y agoReally 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.
- n3storm 4y agoRadicale is powerful, it does not have a management UI though whereas Sabre has Baikal: https://sabre.io/baikal/ https://sabre.io/baikal/
- vorpalhex 4y agoOh that is excellent to hear. I tried OwnCloud years back and found performance too poor with their LAMP stack.
- brnt 4y agoHas Ownclouds infinite scale project been mainlined? It has now fully replaced the old PHP codebase? Love to hear some experiences with it.
- stonewall 4y agoI 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/ https://f-droid.org/en/packages/at.bitfire.davdroid/ [2] https://github.com/sacredheartsc/sabredav-freeipa https://github.com/sacredheartsc/sabredav-freeipa
- captn3m0 4y agoI 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 4y agoPlease do! I have had a similar idea for a while and would love to see and contribute to what others are doing.
- alganet 4y agosabre/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 4y agoHow did you handle authentication, permissions and security?
- alganet 4y agoAuthentication 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.
- DrSAR 4y agoI 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 https://github.com/sabre-io/Baikal/issues/764
- stonewall 4y agoThat 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.
- hinata08 4y agoi 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_system) https://en.wikipedia.org/wiki/Sabre_(travel_reservation_syst...
- Ralo 4y agoI 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 4y agoReally 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.
- alpenbazi 4y agoye, you did great work, my little cal/contact sync setup would not work without your work :)
- netsharc 4y agoI have photos backup with FolderSync but just using Samba (since the NAS will be accessed by Windows clients anyway), is WebDAV necessary? Oh, you said wifi and I read "home wifi", So I guess the WebDAV is exposed to the Internet and the phone can upload from any (wifi) connection in the world? That's more clever than my setup!
- qalter 4y agoI tried hosting it on my server but couldn’t manage. Would anyone have a step by step process?
- stonewall 4y agoI 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/ https://www.davical.org/ [2] https://github.com/sacredheartsc/sabredav-freeipa https://github.com/sacredheartsc/sabredav-freeipa [3] https://sabre.io/dav/gettingstarted/ https://sabre.io/dav/gettingstarted/ [4] https://sabre.io/baikal/ https://sabre.io/baikal/
- jansommer 4y agoI wonder if the name 'Sabre' is a reference to The Office. Made me think of this song: https://m.youtube.com/watch?v=iCEohYELD30 https://m.youtube.com/watch?v=iCEohYELD30
- treve 4y agoHi, 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.
- sirius87 4y agoJust want to thank you for your work. The fact that the project is still going strong and with only a few other viable OSS alternatives shows how valuable it is. Every other project in this space lacks something.
- dschuetz 4y agoWhy are they using Owncloud? Is sabre supposed to be more stable than Nextcloud, or what's the deal?
- atoav 4y agoNextcloud is a cloud with file sharing and all kinds of features including a calendar that can be synced via webdav. Sabre is just a calendar/webdav server without all the filesharing cloud stuff.
- brongondwana 4y agoCyrusimap has support for all three of these baked in as well, and we really don't make as much of a big deal of it as we should. (and of course: JMAP Calendars/Contacts/Files(eventually) will replace all that, we hope!)