mirror of
https://github.com/linuxserver/docker-transmission.git
synced 2025-11-02 09:45:47 +01:00
Add cron init to allow user customizable crontabs
This commit is contained in:
@@ -274,6 +274,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
|||||||
|
|
||||||
## Versions
|
## Versions
|
||||||
|
|
||||||
|
* **02.03.23:** - Add cron init to allow user customizable crontabs.
|
||||||
* **08.02.23:** - Rebase to Alpine Edge to get access to most up to date builds of Transmission. Remove bundled 3rd party UI packages.
|
* **08.02.23:** - Rebase to Alpine Edge to get access to most up to date builds of Transmission. Remove bundled 3rd party UI packages.
|
||||||
* **05.01.23:** - Rebase to Alpine 3.17, restore GNU findutils package.
|
* **05.01.23:** - Rebase to Alpine 3.17, restore GNU findutils package.
|
||||||
* **02.11.22:** - Rebase to Alpine 3.16, migrate to s6v3.
|
* **02.11.22:** - Rebase to Alpine 3.16, migrate to s6v3.
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ app_setup_block: |
|
|||||||
|
|
||||||
# changelog
|
# changelog
|
||||||
changelogs:
|
changelogs:
|
||||||
|
- { date: "02.03.23:", desc: "Add cron init to allow user customizable crontabs." }
|
||||||
- { date: "08.02.23:", desc: "Rebase to Alpine Edge to get access to most up to date builds of Transmission. Remove bundled 3rd party UI packages." }
|
- { date: "08.02.23:", desc: "Rebase to Alpine Edge to get access to most up to date builds of Transmission. Remove bundled 3rd party UI packages." }
|
||||||
- { date: "05.01.23:", desc: "Rebase to Alpine 3.17, restore GNU findutils package." }
|
- { date: "05.01.23:", desc: "Rebase to Alpine 3.17, restore GNU findutils package." }
|
||||||
- { date: "02.11.22:", desc: "Rebase to Alpine 3.16, migrate to s6v3." }
|
- { date: "02.11.22:", desc: "Rebase to Alpine 3.16, migrate to s6v3." }
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
#!/usr/bin/with-contenv bash
|
#!/usr/bin/with-contenv bash
|
||||||
|
# shellcheck shell=bash
|
||||||
|
|
||||||
BLOCKLIST_ENABLED=$(jq -r '.["blocklist-enabled"]' /config/settings.json)
|
BLOCKLIST_ENABLED=$(jq -r '.["blocklist-enabled"]' /config/settings.json)
|
||||||
|
|
||||||
|
|||||||
22
root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run
Executable file
22
root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run
Executable file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/usr/bin/with-contenv bash
|
||||||
|
# shellcheck shell=bash
|
||||||
|
|
||||||
|
# make folders
|
||||||
|
mkdir -p \
|
||||||
|
/config/crontabs
|
||||||
|
|
||||||
|
## root
|
||||||
|
# if crontabs do not exist in config
|
||||||
|
if [[ ! -f /config/crontabs/root ]]; then
|
||||||
|
# copy crontab from system
|
||||||
|
if crontab -l -u root; then
|
||||||
|
crontab -l -u root >/config/crontabs/root
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if crontabs still do not exist in config (were not copied from system)
|
||||||
|
# copy crontab from included defaults (using -n, do not overwrite an existing file)
|
||||||
|
cp -n /etc/crontabs/root /config/crontabs/
|
||||||
|
fi
|
||||||
|
# set permissions and import user crontabs
|
||||||
|
lsiown root:root /config/crontabs/root
|
||||||
|
crontab -u root /config/crontabs/root
|
||||||
1
root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
oneshot
|
||||||
1
root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up
Normal file
@@ -0,0 +1 @@
|
|||||||
|
/etc/s6-overlay/s6-rc.d/init-crontabs-config/run
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
#!/usr/bin/with-contenv bash
|
#!/usr/bin/with-contenv bash
|
||||||
# shellcheck shell=bash
|
# shellcheck shell=bash
|
||||||
|
|
||||||
exec \
|
exec /usr/sbin/crond -f -S -l 5
|
||||||
/usr/sbin/crond -f -S -l 0 -c /etc/crontabs
|
|
||||||
|
|||||||
Reference in New Issue
Block a user