Thanks for the report wlhlm.
Now both the services are installed with 644 permission.
Let me know if further adjustemnt are needed.
Search Criteria
Package Details: dkimproxy 1.4.1-6
Package Actions
| Package Base: | dkimproxy |
|---|---|
| Description: | An SMTP-proxy that signs and/or verifies emails, using the Mail::DKIM module. |
| Upstream URL: | http://dkimproxy.sourceforge.net/ |
| Category: | network |
| Licenses: | |
| Submitter: | None |
| Maintainer: | fcolista |
| Last Packager: | fcolista |
| Votes: | 4 |
| First Submitted: | 2009-10-30 19:13 |
| Last Updated: | 2015-01-21 08:04 |
Dependencies (3)
Required by (0)
Sources
- dkimproxy.in.initd
- dkimproxy.out.initd
- http://downloads.sourceforge.net/dkimproxy/dkimproxy-1.4.1.tar.gz
Latest Comments
Comment by fcolista
Comment by wlhlm
The systemd unit files should not be installed with executable permission. systemd logs the following error:
Configuration file /usr/lib/systemd/system/dkimproxy_in.service is marked executable. Please remove executable permission bits. Proceeding anyway.
Configuration file /usr/lib/systemd/system/dkimproxy_out.service is marked executable. Please remove executable permission bits. Proceeding anyway.
Please fix to something more sensible like 644:
install -Dm644 ../dkimproxy.in.initd "$pkgdir"/usr/lib/systemd/system/dkimproxy_in.service
Comment by fcolista
OK Kyrias.
I removed the || return 1, and the /pkg left (you were right).
I also quoted the directory variables.
Thanks.
Comment by Kyrias
Also just noticed that the second install command, the one installing the out service, accidentally got /pkg left into the start of the path. So easy to make those and so hard to notice >.<
Comment by Kyrias
Even tho the extraneous `|| return 1` is unnecessary and distracting it doesn't do any harm I guess other than making it look outdated, but you really do *need* to quote all the directory variables.
Anyone could have the PKGBUILD itself or just the variables for srcdir et.c. in a directory whose path contains a space, and if they do it currently won't work due to bash splitting the words at the space so for example `cd` will only see the bit before the space.
Another small note: For a while now all the functions has started in $srcdir so you don't need it in the `cd` invocations.
Comment by fcolista
Hi Kyrias.
First of all, would be nice if you learn to be more polite when you asking.
Then, would be also nice if you explain:
1 - Why "|| return 1" is mad.
IMHO if something goes wrong the compilation should be interrupted.
If you have another idea, or i'm missing something, please explain it.
Politely. So i can learn.
2 - I've read now from the wiki that "$startdir" is deprecated.
Gotta check the packages more often, since is not touched from the
2013-06-11. At that time "startdir" probably was not deprecated.
But, again, is fine if the more experienced packager teach something, rather than having an approach like yours.
My two cents.
BTW: today i will update the PKGBUILD.
Thanks.
Comment by Kyrias
Also stop using $startdir since it's deprecated and is an internal makepkg variable that should never be used in PKGBUILDs.
Comment by Kyrias
Could you like remove the mad `|| return 1`'s?
Comment by fcolista
Sounds good.
Done, thanks.
Comment by Spider.007
This package is missing a build method, which creates an empty package with newer makepkg versions. I propose you use:
# Contributor: Pizon <pizon@pizon.org>
# Maintainer: Francesco Colista <francesco.colista@gmail.com>
pkgname=dkimproxy
pkgver=1.4.1
pkgrel=2
pkgdesc="An SMTP-proxy that signs and/or verifies emails, using the Mail::DKIM module."
arch=('i686' 'x86_64')
url="http://dkimproxy.sourceforge.net/"
license=('GPL')
depends=('perl-mail-dkim' 'perl-net-server' 'perl-error')
options=('!emptydirs')
install=$pkgname.install
source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz \
dkimproxy.in.initd dkimproxy.out.initd)
md5sums=('3ecaa38a8c865a5b7682f7f261354218'
'b2cc167d684590c0f84d6a0c58bc292f'
'7f078a99ade398b44ba83210b378e84c')
build() {
cd $srcdir/dkimproxy-$pkgver
./configure --prefix=/usr --sysconfdir=/etc/dkimproxy
make
}
package(){
cd $srcdir/dkimproxy-$pkgver
make install DESTDIR=$pkgdir
install -d $pkgdir/usr/lib/systemd/system
install -m755 ../dkimproxy.in.initd $pkgdir/usr/lib/systemd/system/dkimproxy_in.service || return 1
install -m755 ../dkimproxy.out.initd $pkgdir/usr/lib/systemd/system/dkimproxy_out.service || return 1
}
Comment by Spider.007
@fcolista thanks that works fine!
Comment by fcolista
@Spider.007: this should fix. Please let me know, thanks.
Comment by Spider.007
@fcolista. Thanks for the quick change; unfortunately it isn't entirely correct; the services files should be put in /usr/lib/systemd/system/, the symlinks in multi-user.wants should be made by the user (with systemctl enable), not the package.
Comment by fcolista
Done Spider.007. Can you give a try?
Thanks
Comment by Spider.007
Could you replace the current rc.d script with a simple systemd service? This one works for outgoing, creating a second one for incoming should be trivial:
/etc/systemd/system/dkimproxy_out.service
[Unit]
Description=DKIMproxy outgoing
After=network.target
[Service]
Type=forking
ExecStart=/usr/bin/dkimproxy.out --conf_file=/etc/dkimproxy/dkimproxy_out.conf --user=dkimproxy --group=mail --daemonize --pidfile=/run/dkimproxy_out
PIDFile=/run/dkimproxy_out
[Install]
WantedBy=multi-user.target