Koha/debian
Tomas Cohen Arazi 79fe1a6ab9 Bug 28364: Make log4perl.conf belong to the instance user
This patch makes koha-create generate the log4perl.conf file for the
instance, belonging to the instance user. This is done in order to have
the z3950 responder work.

My original idea was to make the responder accept a '-g' parameter but
that is not supported by Net::Z3950::Responder. Also, as the library
insists on handling the PID file on its own, it wont' work to handle the
responsability to start-stop-daemon. The only solution I found was
making the fiel be owned by the instance user.

1. Create a Koha instance:
   $ koha-create --create-db test
2. Initiate all the things
3. Enable and start the z3950 responder
   $ koha-z3950-responder --enable test
   $ koha-z3950-responder --start test
4. Try doing some search:
   $ yaz-client localhost:2100
=> FAIL: you get:
Connecting...OK.
Sent initrequest.
Target closed connection
Z> quit
See you later, alligator.
=> FAIL: No warning or anything on the logs
5. Stop the daemon
   $ koha-z3950-responder --stop test
6. Run it manually:
   $ PERL5LIB=/usr/share/koha/lib KOHA_CONF=/etc/koha/sites/test/koha-conf.xml \
              /usr/bin/perl /usr/share/koha/bin/z3950_responder.pl \
              -c /etc/koha/sites/test/z3950 -u test-koha \
              -p /var/run/koha/test/z3950-responder.pid -d test-koha-z3950
7. Repeat the 4, on a separate terminal (no daemon mode this time)
=> FAIL: You get:
Cannot open /etc/koha/sites/test/log4perl.conf (Permission denied) at /usr/share/perl5/Log/Log4perl/Config/BaseConfigurator.pm line 51.
8. Change the file owner:
   $ chown test-koha /etc/koha/sites/test/log4perl.conf
9. Repeat 6, and 4
=> SUCCESS: It doesn't break anymore!
10. Apply this patch
11. Create a new instance, with the patched koha-create:
    $ debian/scripts/koha-create --create-db test1
12: Check the generated files permissions:
    $ ls -l /etc/koha/sites/test2
=> SUCCESS: You get:
-rw-r----- 1 root       test2-koha 19720 May 17 13:26 koha-conf.xml
-rw-r----- 1 test2-koha test2-koha  2825 May 17 13:26 log4perl.conf
-rw-r----- 1 root       test2-koha  2014 May 17 13:26 zebra-authorities-dom.cfg
-rw-r----- 1 root       test2-koha  2279 May 17 13:26 zebra-biblios-dom.cfg
-rw-r----- 1 root       test2-koha    26 May 17 13:26 zebra.passwd

13. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2021-05-27 17:17:30 +02:00
..
docs Bug 27839: (follow-up) Update docs for koha-worker 2021-04-12 15:27:50 +02:00
scripts Bug 28364: Make log4perl.conf belong to the instance user 2021-05-27 17:17:30 +02:00
source Bug 18696: Change debian/source/format to quilt 2018-01-19 15:14:05 -03:00
templates Bug 28158: Allow batchMod to run under plack 2021-05-27 14:12:24 +02:00
bd-to-depends Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
build-git-snapshot Bug 21000: Force case sensitivity on Getopt::Long 2019-07-15 11:27:57 +01:00
changelog Bug 17019 - debian/changelog update 2016-08-08 14:30:55 +00:00
compat Bug 18908: Warning "Compatibility levels before 9 are deprecated" 2018-03-19 13:55:47 -03:00
control Bug 16067: Remove FastMmap 2020-12-04 15:40:58 +01:00
control.in Bug 26672: Add 'experimental' info to koha-core and koha-full descriptions 2020-11-27 13:24:12 +01:00
copyright Bug 24545: Fix license statements 2020-02-24 13:31:26 +00:00
koha-common.bash-completion Bug 27839: Add tab-completion in bash for koha-worker 2021-04-12 15:27:50 +02:00
koha-common.config Bug 11404: (follow-up) only ask user if there are instances needing upgrading 2014-05-19 21:51:33 +00:00
koha-common.cron.d Bug 17717: Make cronjobs using koha-foreach use --chdir 2018-03-15 08:22:04 +00:00
koha-common.cron.daily Bug 23207: (QA follow-up) Add to cron files 2021-04-22 11:11:05 +02:00
koha-common.cron.hourly Bug 23207: Add automatic checkin feature 2021-04-22 11:11:05 +02:00
koha-common.cron.monthly Bug 17717: Make cronjobs using koha-foreach use --chdir 2018-03-15 08:22:04 +00:00
koha-common.default Bug 16830: Remove -x usage on koha-indexer 2016-08-04 19:41:41 +00:00
koha-common.dirs Bug 17951: Make koha-create set template_cache_dir correctly 2017-12-22 13:15:39 -03:00
koha-common.docs Bug 21626: (QA follow-up) Embed teams.yaml for debian packages 2019-05-17 14:46:10 +00:00
koha-common.init Bug 22417: Add debian script koha-worker 2020-10-05 15:22:44 +02:00
koha-common.install Bug 20410: Remove OpacGroupResults and PazPar2 2021-02-08 16:12:42 +01:00
koha-common.links Bug 22238: Remove koha-*-sip scripts in favor of koha-sip 2019-02-11 18:30:10 +00:00
koha-common.logrotate Bug 19610: Make koha-common.logrotate use copytruncate 2018-02-27 15:58:33 -03:00
koha-common.postinst Bug 14300: Add %P to SIP LogPattern 2021-04-21 15:25:07 +02:00
koha-common.preinst Bug 25485: Remove tiny_mce symlink during pre install of deb package 2020-05-20 09:15:13 +01:00
koha-common.README.Debian Bug 5139 - packages now do email and other cron jobs 2010-10-06 08:12:14 -04:00
koha-common.templates Bug 11404: Make the install process aware of the changes 2014-05-19 21:50:54 +00:00
koha-core.bash-completion Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.config Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.default Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.dirs Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.docs Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.init Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.install Bug 20410: Remove OpacGroupResults and PazPar2 2021-02-08 16:12:42 +01:00
koha-core.links Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.logrotate Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.postinst Bug 14300: Add %P to SIP LogPattern 2021-04-21 15:25:07 +02:00
koha-core.preinst Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-core.templates Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-full.postinst Bug 26672: Add additional koha-core and koha-full files to ./debian 2020-11-25 16:18:03 +01:00
koha-post-install-setup Add koha-post-install-setup, a script to be run by sysadmin post-install. 2010-05-25 07:59:19 -04:00
koha.apache-ports Replace old, non-functional Debian packaging with a new one. 2010-04-16 00:41:54 -04:00
koha.config Replace old, non-functional Debian packaging with a new one. 2010-04-16 00:41:54 -04:00
koha.dirs Replace old, non-functional Debian packaging with a new one. 2010-04-16 00:41:54 -04:00
koha.install Bug 14302: Remove GRS1 specific code 2018-08-31 11:24:20 +00:00
koha.postinst Bug 4817: Point to README.Debian in koha package description, postinst output. 2010-05-27 05:19:03 -04:00
koha.postrm When purging, remove /var/log/koha. 2010-04-22 06:15:31 -04:00
koha.prerm Replace old, non-functional Debian packaging with a new one. 2010-04-16 00:41:54 -04:00
koha.README.Debian Bug 5550 - correct filename referenced in docs 2011-01-01 07:43:30 +13:00
list-deps Bug 28302: Update packages to ignore CGI::Compile 0.24 (2) 2021-05-20 17:08:04 +02:00
README.build Bug 5602: Changes to account for the version update. 2011-08-04 10:26:39 +12:00
rules Bug 26363: Remove tmp file during package build (follow-up) 2021-03-04 08:44:52 +01:00
unavailable.html Add koha-disable, a script to disable a Koha instance. 2010-05-25 07:59:29 -04:00
update-control Add tools to update debian/control's build dependencies. 2010-06-02 07:14:36 -04:00

In order to build .deb packages, following debian packages need to be present
(installed): 
devscripts
pbuilder
dh-make
fakeroot

As root (or sudo) execute:
pbuilder create

Executing build-git-snapshot without any arguments will leave package and the
rest in some pbuilder dir, eg. /var/cache/pbuilder/result It is highly
recommended that --buildresult option is used.