42 lines
1.3 KiB
Org Mode
42 lines
1.3 KiB
Org Mode
#+OPTIONS: toc:nil
|
|
|
|
* INIT SYSTEM
|
|
|
|
** ROOT SERVICES (Currently none!)
|
|
=<service>.sh= to be symlinked to =/etc/init.d/podman-containers=
|
|
** USER SERVICES AND RUNLEVELS
|
|
=.config= folder to be symlinked to =~=
|
|
** * XDG VARIABLES AND RUNNING USER SERVICES ON LOGIN
|
|
=.profile= to be symlinked to =/home/$USER/.profile=
|
|
|
|
** RUN USERS SERVICES ON BOOT
|
|
Symlink =/etc/init.d/user= to =/etc/init.d/user.$usernames=. After add, add the latter service with =rc-update= as root.
|
|
|
|
** IF <USER> HAS PASSWORD
|
|
Add the following to a new file in =/etc/doas.d/=:
|
|
|
|
#+begin_src shell
|
|
permit nopass <user> as <user>
|
|
permit nopass root as <user>
|
|
#+end_src
|
|
|
|
* Timed cron jobs
|
|
|
|
First, swap built-in =crond= for =dcron=. We need to swap cron binaries since we would have to give setgid capabilites to the whole Busybox binary to use the included cron binary. We also need to install =libcap= to set capabilities:
|
|
|
|
#+begin_src shell
|
|
# apk add dcron libcap
|
|
** if crond is set up, remember to stop and delete it before continuing!
|
|
# rc-service dcron start
|
|
# rc-update add dcron
|
|
#+end_src
|
|
|
|
We now set up =$USER='s crontab as such:
|
|
|
|
#+begin_src shell
|
|
#crontab -u $USER -e
|
|
|
|
@weekly ID=git-back.weekly /home/$user/pihanepi/orchestrating/cronjobs/forgejo-clone/forgejo-clone.sh
|
|
#+end_src
|
|
|
|
Finally, check =/var/log/messages= to confirm everything ran successfully.
|