priod: systemd unit, configuration

This commit is contained in:
Přemysl Eric Janouch 2017-07-05 20:57:56 +02:00
parent 456c362811
commit 1fa6f95135
Signed by: p
GPG Key ID: B715679E3A361BE6
4 changed files with 30 additions and 4 deletions

View File

@ -72,13 +72,19 @@ set (SYSTEMD_UNITDIR /lib/systemd/system
configure_file (${PROJECT_SOURCE_DIR}/fancontrol-ng.service.in configure_file (${PROJECT_SOURCE_DIR}/fancontrol-ng.service.in
${PROJECT_BINARY_DIR}/fancontrol-ng.service @ONLY) ${PROJECT_BINARY_DIR}/fancontrol-ng.service @ONLY)
# System-wide unit files should be installed under /lib and not /usr/lib
install (FILES ${PROJECT_BINARY_DIR}/fancontrol-ng.service
DESTINATION "${SYSTEMD_UNITDIR}")
install (FILES fancontrol-ng.conf.example install (FILES fancontrol-ng.conf.example
DESTINATION ${CMAKE_INSTALL_DATADIR}/fancontrol-ng) DESTINATION ${CMAKE_INSTALL_DATADIR}/fancontrol-ng)
# TODO: priod is also going to need a systemd unit file configure_file (${PROJECT_SOURCE_DIR}/priod.service.in
${PROJECT_BINARY_DIR}/priod.service @ONLY)
install (FILES priod.conf.example
DESTINATION ${CMAKE_INSTALL_DATADIR}/priod)
# System-wide unit files should be installed under /lib and not /usr/lib
install (FILES
${PROJECT_BINARY_DIR}/fancontrol-ng.service
${PROJECT_BINARY_DIR}/priod.service
DESTINATION "${SYSTEMD_UNITDIR}")
if (WITH_GDM) if (WITH_GDM)
install (TARGETS gdm-switch-user DESTINATION ${CMAKE_INSTALL_BINDIR}) install (TARGETS gdm-switch-user DESTINATION ${CMAKE_INSTALL_BINDIR})

View File

@ -522,6 +522,8 @@ main (int argc, char *argv[])
ctx.proc_event.user_data = &ctx; ctx.proc_event.user_data = &ctx;
poller_fd_set (&ctx.proc_event, POLLIN); poller_fd_set (&ctx.proc_event, POLLIN);
// TODO: iterate through current /proc processes and apply politics
ctx.polling = true; ctx.polling = true;
while (ctx.polling) while (ctx.polling)
poller_run (&ctx.poller); poller_run (&ctx.poller);

9
priod.conf.example Normal file
View File

@ -0,0 +1,9 @@
# The command name can be a basename or a full path
"Xorg" = {
# OOM killer favorization (-1000..1000)
oom_score_adj = -500
# CPU scheduling priority (-20..19)
prio = -5
# I/O scheduling priority (0..7)
ioprio = 0
}

9
priod.service.in Normal file
View File

@ -0,0 +1,9 @@
[Unit]
Description=priod
[Service]
ExecStart=@CMAKE_INSTALL_FULL_BINDIR@/priod @CMAKE_INSTALL_FULL_SYSCONFDIR@/priod.conf
Restart=on-abort
[Install]
WantedBy=default.target