From 2c00481635225c20c68ce318695cb7a89d3a2176 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 16 Aug 2022 09:20:44 +0000 Subject: [PATCH] cron: Add a cronjob if systemd is not available This will allow us to build this package when systemd is not available (e.g. on Debian kfreebsd/hurd). Signed-off-by: Michael Tremer --- .gitignore | 1 + Makefile.am | 11 +++++++++++ src/cron/location-update.in | 21 +++++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 src/cron/location-update.in diff --git a/.gitignore b/.gitignore index 20bc895..41e3075 100644 --- a/.gitignore +++ b/.gitignore @@ -15,6 +15,7 @@ Makefile.in /*.db.xz /libtool /stamp-h1 +/src/cron/location-update /src/scripts/location /src/scripts/location-importer /src/systemd/location-update.service diff --git a/Makefile.am b/Makefile.am index eef75c2..ee3c7ad 100644 --- a/Makefile.am +++ b/Makefile.am @@ -51,6 +51,7 @@ SED_PROCESS = \ -e 's,@databasedir\@,$(databasedir),g' \ < $< > $@ || rm $@ +cron_dailydir = $(sysconfdir)/cron.daily databasedir = $(localstatedir)/lib/location pkgconfigdir = $(libdir)/pkgconfig @@ -281,6 +282,7 @@ CLEANFILES += \ # ------------------------------------------------------------------------------ +# Use systemd timers if available if HAVE_SYSTEMD systemdsystemunit_DATA = \ src/systemd/location-update.service \ @@ -291,9 +293,18 @@ CLEANFILES += \ INSTALL_DIRS += \ $(systemdsystemunitdir) + +# Otherwise fall back to cron +else +cron_daily_SCRIPTS = \ + src/cron/location-update + +CLEANFILES += \ + $(cron_daily_DATA) endif EXTRA_DIST += \ + src/cron/location-update.in \ src/systemd/location-update.service.in \ src/systemd/location-update.timer.in diff --git a/src/cron/location-update.in b/src/cron/location-update.in new file mode 100644 index 0000000..232de10 --- /dev/null +++ b/src/cron/location-update.in @@ -0,0 +1,21 @@ +#!/bin/bash +############################################################################### +# # +# libloc - A library to determine the location of someone on the Internet # +# # +# Copyright (C) 2022 IPFire Development Team # +# # +# This library is free software; you can redistribute it and/or # +# modify it under the terms of the GNU Lesser General Public # +# License as published by the Free Software Foundation; either # +# version 2.1 of the License, or (at your option) any later version. # +# # +# This library is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # +# Lesser General Public License for more details. # +# # +############################################################################### + +# Call the location database updater +exec @bindir@/location update -- 2.39.2