[軟體] 用Syncthing跨系統跨軟體同步行事曆

看板Android作者 (秧得)時間6年前 (2019/09/05 21:29), 6年前編輯推噓1(101)
留言2則, 2人參與, 6年前最新討論串1/1
圖文好讀版:http://bit.ly/2kjWRiW 最近在研究,如何用Syncthing將單機非網路服務的行事曆軟體 (Rainlendar、Osmo、Etar/內建行事曆), 在三種不同的作業系統平台(Windows、Linux、Android)皆達成更新同步。 棄用Google Calendar的陣痛期意外地長, 但就「不因被單一服務綁架,而廢棄淘汰仍可使用的機器」來說, 這陣痛期的適應和嘗試新方法又是必要的。 但是要如何找到Google Calendar的替代品? 這是個讓人相當頭大的問題。 在經過長久的搜尋和嘗試之後,漸漸地有一個奇特的想法架構在腦中成型。 這篇文章僅專注講述大概念,軟體操作細節則不會多加著墨。 ## 架構 https://images.plurk.com/5JfZnLmtD0sFpzby5W60NY.png
兩台桌電,公司用的是Windows 7; 家裡使用的是Windows 10和Puppy Linux Xenialpup雙系統; 手機使用的是Android 4.4.4 Kikat; 另外有一台筆電是用Windows XP,無網路。 兩台電腦(先不計斷網的筆電)、一隻手機,系統不一樣,使用的軟體也不一樣, 同樣也能同步更新行事曆。 簡單來說架構是這樣: 1. 桌電Windows 7使用Rainlendar。 2. Syncthing同步ics檔案到手機、桌電Linux/Windows 10。 > 1. 手機用Etar行事曆,匯入ics檔。 > 2. Linux用Osmo,連結ics檔。 > 3. 桌電Windows 10用Rainlendar,連結ics檔。 > 4. 斷網筆電Windows XP用Rainlendar舊版, 用傳統隨身碟/藍芽/手機MTF傳輸等方式手動更新檔案。 ## Syncthing https://syncthing.net/images/screenshot-720.jpg
首先最重要的是每台裝置都須安裝Syncthing, 把之後預定存放ics檔案的資料夾在全裝置設為同步。 Syncthing預設檔案覆蓋模式是直接覆蓋, 為了避免不小心蓋錯檔,建議使用簡單版本控制, 在檔案內容有衝突的當下,舊檔會另存一個版本當備份。 ## 行事曆軟體 個人使用的行事曆軟體如下: Windows桌面行事曆Rainlendar https://images.plurk.com/7Cea00PqMgEnL7O8JgKpga.png
https://images.plurk.com/3GgsEV9oNUxMR9JFh7Y3CF.png
Linux桌面行事曆Osmo https://images.plurk.com/2VPdMLEAvMrTqm2D66gOHe.png
手機行事曆Etar https://images.plurk.com/6HWovRbzRTd0TOwu8aWQU7.png
https://images.plurk.com/1IlHNjhBUPR5UuXf692w42.png
### 電腦 Rainlendar是相當老牌的桌面行事曆軟體, 至少在十年前,有段時間我非常喜歡使用這套軟體, 直到Google Calendar崛起後逐漸轉移,才停止使用。 現在回頭翻遍各種桌面行事曆軟體,剩下他還屹立不搖,這時才真正體會到他的美好。 Osmo是我使用的Puppy Linux版本內建的行事曆,畫面簡潔乾淨,操作簡單。 雖然Rainlendar也是有linux版本,但是就我的linux顯示會有點問題, 所以維持使用Osmo。 Osmo跟Rainlendar的操作邏輯基本上是一樣的,分成Event事件和Task代辦事項。 Osmo可以匯入ics,不過不太能更改匯入的事件Event內容, 要改就是直接用文字編輯器改ics檔,但至少同步是沒什麼問題。 ### 手機 這邊手機端除卻行事曆,所需安裝的軟體列表: > Syncthing:同步用。 > Offline Calendar:讓你可以在local本機增加行事曆分類,還可以用顏色區分。 > Calendar Import-Export:在local本機用ICS檔匯入/匯出行事曆的app。 > ICSx5:可訂閱網路上公開的行事曆。 雖然我用的是Etar行事曆,但是依照這個同步方式, 內建的手機行事曆軟體也一樣可以用。 嚴格來說手機沒有完全同步,因為我用的是純Local本機端, 需要一些額外軟體像是DAVx5或ICSx5,以及Calendar Import-Expor匯入ics, 不然就是要動手執行行事曆事件匯入,但至少是比以前得一則一則輸入貼上方便多了。 若要達到手機也同步行事曆,大致上有兩種方式: 1. Nextcloud搭配DAVx5,這也是網路上大部分建議的方式。 但這一樣有個需要匯入行事曆的動作, 只是差別在於這次是電腦端需要匯入檔案至Nextcloud的行事曆, 這也變成往後所有行事曆都要在Nextcloud上更新,所以我沒採用這種方式。 2. 用Nextcloud跟ICSx5訂閱解決手機的行事曆需手動匯入的問題,可以即時更新。 只是一樣要上傳到Nextcloud的網路空間,而且只能單向從電腦更動內容。 所以決定只有工作行事曆和學習行事曆採用Nextcloud同步, 其他私人如雜事約會類的依舊維持手動匯入。 Nextcloud可以只裝在其中一台桌電,把有ics檔案的資料夾設為同步資料夾即可, 也就是該資料夾同時接受Syncthing和Nextcloud的同步。 手機不需要安裝Nextcloud。 ### 其他技巧 使用emoji可以配合子彈筆記術的習慣,不限紙本或電腦平台的快速分類和連結。 在電腦上安裝Segoe UI Symbol這個字體,也更改軟體顯示字型, 就能順利在電腦上顯示emoji了。 ## 結語 為什麼要弄得這麼麻煩,有什麼好處呢? 理由和優點有下列幾項: 1. 每一款都可以離線使用,除了同步功能外,皆不必連線網路。 2. 自己的行事曆自己管,可依自己需求決定是要同步或者純粹放本機端, 從行事曆到單一事件都可以做個別的同步微調,不用完全放上網路,大大提升隱密性。 3. 不會被單一軟體服務綁死,基本上只要是支援連結ics檔案的行事曆軟體, 都可以用這種方式同步更新。 4. 對於舊系統和跨系統的兼容性極高,不耗效能。最低可相容至Windows 7 (因Syncthing沒有XP版本,XP要用傳統方式例如隨身碟或藍芽傳輸文件來更新)、 Android 4。 現行實驗的行事曆同步架構大概是這個模樣。 雖然不是很完善,有些仍然是單向通道,但至少還算符合我自己的使用習慣。 如果各位往後有類似的使用需求,可以參考這個同步模式看看。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.219.98.115 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Android/M.1567690164.A.5EF.html ※ 編輯: pauillactw (61.219.98.115 臺灣), 09/05/2019 21:46:56

09/05 21:48, 6年前 , 1F
Syncthing 好東西給推
09/05 21:48, 1F
謝謝回應(艸) Syncthing真的是好東西 雖然上文講的是行事曆同步,但他其實任何檔案都可以用。 從正常的檔案備份用途,例如備份照片文件等等, 到邪教用法(?)把單機遊戲變成電腦手機即時更新存檔進度的雲端遊戲也行。 手機玩完之後,回家用電腦可以接著手機進度開始。 同理,電腦玩完之後,手機也會接著先前的進度。 比如說Minetest和各種骨灰DOS模擬器遊戲, 非常適合Syncthing同步手機電腦使用。 ※ 編輯: pauillactw (111.251.34.99 臺灣), 09/07/2019 22:35:45

09/22 15:02, 6年前 , 2F
我是用termux 跟 crontab 跟 linux 桌電 同步
09/22 15:02, 2F
文章代碼(AID): #1TSGsqNl (Android)