[-]
[+]
|
Changed |
_service:tar_git:rsnapshot.spec
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,7 +2,7 @@
<service name="tar_git">
<param name="url">https://github.com/sailfishos-chum/rsnapshot.git</param>
<param name="branch"></param>
- <param name="revision">1.4.5+git2</param>
+ <param name="revision">1.4.5+git4</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Changed |
_service:tar_git:rsnapshot-1.4.5+git4.tar.gz/sailfish-config/CMakeLists.txt
^
|
@@ -34,6 +34,7 @@
install(FILES
rsnapshot-user@.service
+ rsnapshot-user.target
rsnapshot-user-daily.timer
rsnapshot-user-monthly.timer
rsnapshot-user-weekly.timer
|
[-]
[+]
|
Changed |
_service:tar_git:rsnapshot-1.4.5+git4.tar.gz/sailfish-config/rsnapshot-user-daily.timer
^
|
@@ -1,8 +1,13 @@
[Unit]
Description=rsnapshot daily timer
+After=rsnapshot-user.target
+BindsTo=rsnapshot-user.target
[Timer]
OnCalendar=05:30
Persistent=false
AccuracySec=12m
Unit=rsnapshot-user@daily.service
+
+[Install]
+RequiredBy=rsnapshot-user.target
|
[-]
[+]
|
Changed |
_service:tar_git:rsnapshot-1.4.5+git4.tar.gz/sailfish-config/rsnapshot-user-monthly.timer
^
|
@@ -1,8 +1,13 @@
[Unit]
Description=rsnapshot monthly timer
+After=rsnapshot-user.target
+BindsTo=rsnapshot-user.target
[Timer]
OnCalendar=*-*-1 3:30:00
Persistent=false
AccuracySec=2h
Unit=rsnapshot-user@monthly.service
+
+[Install]
+RequiredBy=rsnapshot-user.target
|
[-]
[+]
|
Changed |
_service:tar_git:rsnapshot-1.4.5+git4.tar.gz/sailfish-config/rsnapshot-user-weekly.timer
^
|
@@ -1,8 +1,13 @@
[Unit]
Description=rsnapshot weekly timer
+After=rsnapshot-user.target
+BindsTo=rsnapshot-user.target
[Timer]
OnCalendar=Monday *-*-* 4:30:00
Persistent=false
AccuracySec=45m
Unit=rsnapshot-user@weekly.service
+
+[Install]
+RequiredBy=rsnapshot-user.target
|
[-]
[+]
|
Added |
_service:tar_git:rsnapshot-1.4.5+git4.tar.gz/sailfish-config/rsnapshot-user.target
^
|
@@ -0,0 +1,11 @@
+[Unit]
+Description=rsnapshot scheduler
+After=user-session.target
+DefaultDependencies=no
+
+AssertPathExists=%h/.config/rsnapshot/rsnapshot.conf
+
+[Install]
+Also=rsnapshot-user-daily.timer
+Also=rsnapshot-user-monthly.timer
+Also=rsnapshot-user-weekly.timer
|
[-]
[+]
|
Changed |
_service:tar_git:rsnapshot-1.4.5+git4.tar.gz/sailfish-config/rsnapshot-user@.service
^
|
@@ -1,9 +1,39 @@
[Unit]
Description=rsnapshot %I user service
+ConditionPathExists=%h/.config/rsnapshot/rsnapshot.conf configtest
[Service]
-Type=oneshot
+Type=simple
+
+# Sandboxing
+NoNewPrivileges=true
+ProtectSystem=strict
+PrivateTmp=true
+
+# Resource usage:
+Slice=background.slice
+
+CPUSchedulingPolicy=idle
Nice=19
IOSchedulingClass=idle
+
+RuntimeMaxSec=1h
+MemoryHigh=33%
+MemoryMax=50%
+TasksMax=100
+
+# lets be easily killed:
+OOMScoreAdjust=500
+
+# Handle partial success:
+SuccessExitStatus=2
+
+# patchmanager preload causes high load, lets disable
+Environment=NO_PM_PRELOAD=1
+
ExecStartPre=/usr/bin/rsnapshot -c %h/.config/rsnapshot/rsnapshot.conf configtest
ExecStart=/usr/bin/rsnapshot -q -c %h/.config/rsnapshot/rsnapshot.conf %I
+
+# Notify the user:
+#ExecStartPost=-/usr/bin/notificationtool -o add -A "rsnapshot" -I "icon-lock-backup" --urgency=0 --timeout=0 --category="transfer" -h "image-path icon-m-storage" "Creating Snapshot" "Scheduled %I snapshot started" "Creating Snapshot" "Scheduled %I snapshot started"
+ExecStopPost=-/usr/bin/notificationtool -o add -A "rsnapshot" -I "icon-lock-backup" --urgency=0 --timeout=0 --category="transfer.complete" -h "image-path icon-m-storage" "Snapshot created" "%I snapshot operation finished: ${SERVICE_RESULT}" "Snapshot created" "%I snapshot operation finished: ${SERVICE_RESULT}"
|
[-]
[+]
|
Changed |
_service:tar_git:rsnapshot.yaml
^
|
@@ -17,8 +17,10 @@
greatly reduce the disk space required.
The SailfishOS Chum package includes example configs and systemd timer units
- to run it periodically. For them to work you must create a valid config file in
- ~/.config/rsnapshot/rsnapshot.conf and enable the .timer units.
+ to run it periodically. For them to work you must:
+
+ 1. Create a valid config file in ~/.config/rsnapshot/rsnapshot.conf
+ 2. Enable and start the rsnapshot-user.target
%if "%{?vendor}" == "chum"
Title: rsnapshot
@@ -66,12 +68,7 @@
Files:
- '%license COPYING'
- '%{_bindir}/*'
- - '%config %{_sysconfdir}/rsnapshot/'
- '%config %{_sysconfdir}/rsnapshot.conf.default'
- - '%config %{_sysconfdir}/rsnapshot.conf.sailfish_*'
- - '%config %{_userunitdir}/rsnapshot-user@.service'
- - '%config %{_userunitdir}/rsnapshot-user*.timer'
-
SubPackages:
- Name: vim-rsnapshot
Summary: Vim configuration for rsnapshot configuration files editing
@@ -82,3 +79,44 @@
- vim-filesystem
Files:
- '%{vimplugindir}/*/%{vimpluginname}.vim'
+
+ - Name: sailfish-config
+ Summary: Sailfish configuration for %{name}
+ Group: Applications/Archiving
+ Requires:
+ - systemd
+ Description: |
+ %{summary}.
+
+ This package includes example configs and systemd units for rsnapshot.
+ To run it periodically you must:
+
+ 1. Create a valid config file in ~/.config/rsnapshot/rsnapshot.conf
+ 2. Enable and start the rsnapshot-user.target
+
+ See the examples/basic config at:
+
+ - %{_sysconfdir}/rsnapshot/'
+ - %{_sysconfdir}/rsnapshot.conf.sailfish_*'
+
+ %if "%{?vendor}" == "chum"
+ Title: rsnapshot services and config
+ Type: console-application
+ DeveloperName: nephros
+ Categories:
+ - System
+ - Utility
+ Custom:
+ Repo: https://github.com/sailfishos-chum/rsnapshot
+ PackageIcon: https://avatars.githubusercontent.com/u/10962189?s=200&v=4
+ Bugtracker: https://github.com/sailfishos-chum/rsnapshot/issues
+ Links:
+ %endif
+ Files:
+ - '%config %{_sysconfdir}/rsnapshot/'
+ - '%config %{_sysconfdir}/rsnapshot.conf.sailfish_*'
+ - '%config %{_userunitdir}/rsnapshot-user@.service'
+ - '%config %{_userunitdir}/rsnapshot-user*.timer'
+ - '%config %{_userunitdir}/rsnapshot-user.target'
+
+
|