- Rewrite using current dh_make.
- Standards-Version: 4.6.2.
- No longer build 3 different packages; only build "ngircd" which now
includes support for IDENT, PAM (disabled in the ngircd.conf installed
by the package), SSL (OpenSSL), ZLib and IPv6.
- Update package description accordingly.
- No longer install a SysV init file, only install ngircd.service unit.
#
# ngIRCd -- The Next Generation IRC Daemon
-# Copyright (c)2001-2015 Alexander Barton (alex@barton.de) and Contributors
+# Copyright (c)2001-2024 Alexander Barton (alex@barton.de) and Contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
deb:
[ -f debian/rules ] || ln -s contrib/Debian debian
- dpkg-buildpackage -rfakeroot -i
+ dpkg-buildpackage --build=binary
.PHONY: deb lint rpm srcdoc testsuite
*.log
*.debhelper
*.substvars
+debhelper-build-stamp
files
ngircd/
-ngircd-full/
ngircd.service
-ngircd-full.default
-ngircd-full.init
-ngircd-full.postinst
-ngircd-full.service
-ngircd-full-dbg/
-ngircd-full-dbg.default
-ngircd-full-dbg.init
-ngircd-full-dbg.postinst
-ngircd-full-dbg.service
#
# ngIRCd -- The Next Generation IRC Daemon
-# Copyright (c)2001-2017 Alexander Barton (alex@barton.de) and Contributors
+# Copyright (c)2001-2024 Alexander Barton (alex@barton.de) and Contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# Please read the file COPYING, README and AUTHORS for more information.
#
-EXTRA_DIST = rules changelog compat control copyright \
- ngircd.init ngircd.default ngircd.pam ngircd.postinst \
+EXTRA_DIST = \
+ changelog \
+ control \
+ copyright \
+ ngircd.default \
+ ngircd.pam \
+ rules \
+ watch \
source/format
maintainer-clean-local:
rm -f Makefile Makefile.in
clean-local:
- rm -f ngircd.postinst.debhelper ngircd.postrm.debhelper \
- ngircd.prerm.debhelper ngircd.substvars
- rm -f ngircd-full.postinst.debhelper ngircd-full.postrm.debhelper \
- ngircd-full.prerm.debhelper ngircd-full.substvars
- rm -f ngircd-full-dbg.postinst.debhelper \
- ngircd-full-dbg.postrm.debhelper ngircd-full-dbg.prerm.debhelper \
- ngircd-full-dbg.substvars
- rm -rf ngircd ngircd-full ngircd-full-dbg
- rm -f files
+ rm -f *.log *.debhelper *.substvars
+ rm -f debhelper-build-stamp files ngircd.service
+ rm -rf .debhelper/ ngircd/
# -eof-
Section: net
Priority: optional
Maintainer: Alexander Barton <alex@barton.de>
-Build-Depends: debhelper (>> 13.0.0),
- autotools-dev,
- expect,
- libident-dev,
- libpam0g-dev,
- libssl-dev,
- libwrap0-dev,
- libz-dev,
- telnet | telnet-ssl,
-Standards-Version: 3.9.1
+Rules-Requires-Root: binary-targets
+Build-Depends: debhelper-compat (= 13),
+ expect,
+ libident-dev,
+ libpam0g-dev,
+ libssl-dev,
+ libz-dev,
+ openssl,
+ procps,
+ telnet | telnet-ssl,
+Standards-Version: 4.6.2
+Homepage: https://ngircd.barton.de
+Vcs-Browser: https://github.com/ngircd/ngircd
+Vcs-Git: https://github.com/ngircd/ngircd.git
Package: ngircd
Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Provides: ircd
-Description: lightweight Internet Relay Chat server
- ngIRCd is a free, portable and lightweight Internet Relay Chat server
- for small or private networks, developed under the GNU General Public
- License (GPL).
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends},
+Conflicts:
+ ircd,
+Provides:
+ ircd,
+Description: lightweight Internet Relay Chat (IRC) server
+ ngIRCd is a free, portable and lightweight Internet Relay Chat (IRC) server
+ for small or private networks, developed under the terms of the GNU General
+ Public License (GPL).
.
- The server is quite easy to configure, can handle dynamic IP addresses, and
- optionally supports IDENT, IPv6 connections, SSL-protected links, and PAM for
- user authentication as well as character set conversion for legacy clients. The
- server has been written from scratch and is not based on the "forefather", the
- daemon of IRCNet.
+ The server is quite easy to configure and runs as a single-node server or can
+ be part of a network of ngIRCd servers in a LAN or across the internet. It
+ optionally supports the IPv6 protocol, SSL/TLS-protected client-server and
+ server-server links, the Pluggable Authentication Modules (PAM) system for
+ user authentication, IDENT requests, and character set conversion for legacy
+ clients.
.
- This package contains the "standard distribution", including support for
- syslog logging and compressed server-links using zlib. Please have a look
- at the "ngircd-full" package if you need "more advanced" functionality like
- support for TCP wrappers, IDENT requests, the IPv6 protocol, PAM and
- SSL encrypted client and server links.
-
-Package: ngircd-full
-Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Provides: ircd
-Conflicts: ngircd, ngircd-dbg
-Description: lightweight Internet Relay Chat server
- ngIRCd is a free, portable and lightweight Internet Relay Chat server
- for small or private networks, developed under the GNU General Public
- License (GPL).
- .
- The server is quite easy to configure, can handle dynamic IP addresses, and
- optionally supports IDENT, IPv6 connections, SSL-protected links, and PAM for
- user authentication as well as character set conversion for legacy clients. The
- server has been written from scratch and is not based on the "forefather", the
- daemon of IRCNet.
- .
- In addition to the features of the "standard package", this package
- includes support for TCP wrappers, IDENT requests, the IPv6 protocol, PAM and
- SSL encrypted client and server links.
-
-Package: ngircd-full-dbg
-Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Provides: ircd
-Conflicts: ngircd, ngircd-full
-Description: lightweight Internet Relay Chat server
- ngIRCd is a free, portable and lightweight Internet Relay Chat server
- for small or private networks, developed under the GNU General Public
- License (GPL).
- .
- The server is quite easy to configure, can handle dynamic IP addresses, and
- optionally supports IDENT, IPv6 connections, SSL-protected links, and PAM for
- user authentication as well as character set conversion for legacy clients. The
- server has been written from scratch and is not based on the "forefather", the
- daemon of IRCNet.
- .
- In addition to the features of the "standard package", this package
- includes support for TCP wrappers, IDENT requests, the IPv6 protocol, PAM and
- SSL encrypted client and server links.
- .
- And in addition to the "full" variant, the binaries contained in this
- package are build with debug code and contain debug symbols.
+ The name ngIRCd stands for next-generation IRC daemon, which is a little bit
+ exaggerated: lightweight Internet Relay Chat server most probably would have
+ been a better name :-)
-This package was debianized by Alexander Barton <alex@barton.de> on
-Tue, 20 May 2003 15:47:40 +0200.
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Source: https://ngircd.barton.de
+Upstream-Name: ngircd
+Upstream-Contact: ngIRCd Mailing List <ngircd@lists.barton.de>
-It was downloaded from ftp://Arthur.Ath.CX/pub/Users/alex/ngircd/
+Files:
+ *
+Copyright:
+ 2001-2024 Alexander Barton <alex@barton.de> and Contributors.
+License: GPL-2.0+
+Comment:
+ See /usr/share/doc/ngircd/AUTHORS for the full list of authors and contributors.
-Upstream Author: Alexander Barton <alex@barton.de>
+Files:
+ contrib/de.barton.ngircd.metainfo.xml
+Copyright:
+ 2001-2024 Alexander Barton <alex@barton.de> and Contributors.
+License: MIT
+Comment:
+ See /usr/share/doc/ngircd/AUTHORS for the full list of authors and contributors.
-This software is copyright (c) 1999-2003 by Alexander Barton.
+License: GPL-2.0+
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+ .
+ This package 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 General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>
+Comment:
+ On Debian systems, the complete text of the GNU General
+ Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
-You are free to distribute this software under the terms of the
-GNU General Public License.
-On Debian systems, the complete text of the GNU General Public
-License can be found in /usr/share/common-licenses/GPL file.
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to
+ deal in the Software without restriction, including without limitation the
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ IN THE SOFTWARE.
#
-# Defaults for ngIRCd start and stop script
+# Defaults for the ngIRCd daemon
#
# Parameters to pass to the ngircd daemon on startup, see ngircd(8) for
# possible options (default: empty).
-
PARAMS=""
-
-# -eof-
+++ /dev/null
-#!/bin/sh
-#
-# ngIRCd start and stop script for Debian-based systems
-# Copyright 2008-2015 Alexander Barton <alex@barton.de>
-#
-
-### BEGIN INIT INFO
-# Provides: ngircd
-# Required-Start: $network $remote_fs
-# Required-Stop: $network $remote_fs
-# Should-Start: $syslog $named
-# Should-Stop: $syslog
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
-# Short-Description: Next Generation IRC Server
-# Description: IRC daemon written from scratch
-### END INIT INFO
-
-PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
-DAEMON=/usr/sbin/ngircd
-NAME=ngIRCd
-DESC="IRC daemon"
-PARAMS=""
-STARTTIME=1
-DIETIME=10
-
-test -h "$0" && me=`readlink $0` || me="$0"
-BASENAME=`basename $me`
-
-test -r /etc/default/$BASENAME && . /etc/default/$BASENAME
-
-test -x $DAEMON || exit 5
-
-# LSB compatibility functions that become used if there is no local
-# include file available.
-log_daemon_msg() {
- echo -n "$*"
-}
-log_end_msg() {
- [ "$1" = "0" ] && echo "." || echo " failed!"
-}
-log_failure_msg() {
- echo "$*"
-}
-log_warning_msg() {
- log_failure_msg "$*"
-}
-
-# Include LSB functions, if available:
-test -r /lib/lsb/init-functions && . /lib/lsb/init-functions
-
-PIDFILE=`$DAEMON $PARAMS -t | tr -d ' ' | grep "^PidFile=" | cut -d'=' -f2`
-[ -n "$PIDFILE" ] || PIDFILE="/var/run/ircd/ngircd.pid"
-
-r=3
-
-Check_Config()
-{
- # Make sure that the configuration of ngIRCd is valid:
- $DAEMON $PARAMS --configtest >/dev/null 2>&1
- [ $? -eq 0 ] && return 0
- log_end_msg 1
- log_failure_msg "Configuration of $NAME is not valid, won't (re)start!"
- log_failure_msg "Run \"$DAEMON --configtest\" and fix it up ..."
- exit 6
-}
-
-Prepare() {
- # Make sure the PID file directory exists and is writable:
- user=`$DAEMON $PARAMS -t|tr -d ' '|grep "^ServerUID="|cut -d'=' -f2`
- group=`$DAEMON $PARAMS -t|tr -d ' '|grep "^ServerGID="|cut -d'=' -f2`
- piddir=`dirname "$PIDFILE"`
- [ -d "$piddir" ] || mkdir -p "$piddir" 2>/dev/null
- chown "$user:$group" "$piddir" 2>/dev/null
- [ $? -eq 0 ] && return 0
- log_end_msg 1
- log_failure_msg "Failed to prepare '$piddir' for user '$user'!"
- exit 1
-}
-
-Do_Start() {
- if Do_Status; then
- log_end_msg 0
- log_warning_msg "$NAME seems to be already running, nothing to do."
- exit 0
- fi
- rm -f "$PIDFILE"
- start-stop-daemon --start \
- --quiet --exec $DAEMON -- $PARAMS
- sleep $STARTTIME
- Do_Status || return 7
- return 0
-}
-
-Do_Stop() {
- if ! Do_Status; then
- log_end_msg 0
- log_warning_msg "$NAME seems not to be running, nothing to do."
- exit 0
- fi
- Do_ForceStop
- return $?
-}
-
-Do_ForceStop() {
- [ -e $PIDFILE ] \
- && pidfile="--pidfile $PIDFILE" \
- || pidfile=""
- start-stop-daemon --stop \
- --quiet --oknodo --exec $DAEMON $pidfile
- for i in `seq 1 $DIETIME`; do
- Do_Status || return 0
- sleep 1
- done
- return 1
-}
-
-Do_Reload() {
- start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON
- return $?
-}
-
-Do_Status() {
- [ -e $PIDFILE ] \
- && pidfile="--pidfile $PIDFILE" \
- || pidfile=""
- start-stop-daemon --stop \
- --quiet --signal 0 --exec $DAEMON $pidfile >/dev/null
- return $?
-}
-
-case "$1" in
- start)
- log_daemon_msg "Starting $DESC" "$NAME"
- Check_Config
- Prepare
- Do_Start; r=$?
- log_end_msg $r
- ;;
- stop)
- log_daemon_msg "Stopping $DESC" "$NAME"
- Do_Stop; r=$?
- log_end_msg $r
- ;;
- reload|force-reload)
- log_daemon_msg "Reloading $DESC" "$NAME"
- Check_Config
- Do_Reload; r=$?
- log_end_msg $r
- ;;
- restart)
- log_daemon_msg "Restarting $DESC" "$NAME"
- Check_Config
- Prepare
- Do_ForceStop
- Do_Start; r=$?
- log_end_msg $r
- ;;
- status)
- log_daemon_msg "Checking for $DESC" "$NAME"
- Do_Status; r=$?
- log_end_msg $r
- ;;
- test)
- Check_Config
- echo "Configuration of $DAEMON seems to be ok."; r=0
- ;;
- *)
- N=/etc/init.d/$NAME; r=2
- echo "Usage: $N {start|stop|restart|reload|force-reload|status|test}" >&2
- ;;
-esac
-
-exit $r
-
-# -eof-
# /etc/pam.d/ngircd
-# allow all connections to ngIRCd
-auth required pam_permit.so
+# You have to adjust this configuration to your local setup and needs. Keep in
+# mind that all PAM modules are run with the privileges of the user account the
+# ngIRCd daemon runs as ("irc" by default, not root!), so you can't use PAM
+# modules requiring root privileges (like pam_unix, for example)!
+
+# Log and deny all connections to ngIRCd:
+auth required pam_warn.so
+auth required pam_deny.so
+++ /dev/null
-#!/bin/sh
-#
-# Debian post-installation script
-#
-
-set -e
-
-case "$1" in
- configure)
- if [ -f /etc/ngircd/ngircd.conf ]; then
- # make sure that the configuration file is not
- # world-readable, it contains passwords!
- chmod o= /etc/ngircd/ngircd.conf
- chgrp irc /etc/ngircd/ngircd.conf
- fi
- ;;
-esac
-
-#DEBHELPER#
-
-# -eof-
#!/usr/bin/make -f
-#
-# ngIRCd -- The Next Generation IRC Daemon
-# Copyright (c)2001-2016 Alexander Barton (alex@barton.de) and Contributors
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-# Please read the file COPYING, README and AUTHORS for more information.
-#
-# debian/rules for ngIRCd
-#
-# Based on the sample debian/rules that uses debhelper,
-# GNU copyright 1997 to 1999 by Joey Hess.
-#
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
-
-# These are used for cross-compiling and for saving the configure script
-# from having to guess our platform (since we know it already)
-DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-
-CFLAGS = -Wall -g
-
-ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -O0
-else
- CFLAGS += -O2
-endif
-ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
- INSTALL_PROGRAM += -s
-endif
-
-configure-ngircd: configure
- dh_testdir
-
- # configure "standard" variant:
- ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
- --prefix=/usr \
- --sysconfdir=/etc/ngircd \
- --mandir=\$${prefix}/share/man \
- --docdir=\$${prefix}/share/doc/ngircd \
- --with-syslog --with-zlib
-
-configure-ngircd-full: configure
- dh_testdir
-
- # configure "full" variant:
- ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
- --prefix=/usr \
- --sysconfdir=/etc/ngircd \
- --mandir=\$${prefix}/share/man \
- --docdir=\$${prefix}/share/doc/ngircd-full \
- --with-syslog --with-zlib \
- --with-openssl --with-iconv --with-ident --with-tcp-wrappers \
- --with-pam \
- --enable-ipv6
-
-configure-ngircd-full-dbg: configure
- dh_testdir
-
- # configure "full debug" variant:
- ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
- --prefix=/usr \
- --sysconfdir=/etc/ngircd \
- --mandir=\$${prefix}/share/man \
- --docdir=\$${prefix}/share/doc/ngircd-full-dbg \
- --enable-debug --enable-sniffer \
- --with-syslog --with-zlib \
- --with-openssl --with-iconv --with-ident --with-tcp-wrappers \
- --with-pam \
- --enable-ipv6
-
-build:
- dh_prep
-
-build-ngircd: build-stamp-ngircd
-build-stamp-ngircd: configure-ngircd
- dh_testdir
- rm -f build-stamp-*
-
- # Add here commands to compile the "standard" package:
- $(MAKE)
-
- touch build-stamp-ngircd
-
-build-ngircd-full: build-stamp-ngircd-full
-build-stamp-ngircd-full: configure-ngircd-full
- dh_testdir
- rm -f build-stamp-*
-
- # Add here commands to compile the "full" package:
- $(MAKE)
-
- touch build-stamp-ngircd-full
-
-build-ngircd-full-dbg: build-stamp-ngircd-full-dbg
-build-stamp-ngircd-full-dbg: configure-ngircd-full-dbg
- dh_testdir
- rm -f build-stamp-*
-
- # Add here commands to compile the "full debug" package:
- $(MAKE)
-
- touch build-stamp-ngircd-full
-
-clean:
- dh_testdir
- dh_testroot
- rm -f build-stamp*
- rm -f $(CURDIR)/debian/ngircd.service
- rm -f $(CURDIR)/debian/ngircd-full.default
- rm -f $(CURDIR)/debian/ngircd-full.init
- rm -f $(CURDIR)/debian/ngircd-full.postinst
- rm -f $(CURDIR)/debian/ngircd-full.service
- rm -f $(CURDIR)/debian/ngircd-full-dbg.default
- rm -f $(CURDIR)/debian/ngircd-full-dbg.postinst
- rm -f $(CURDIR)/debian/ngircd-full-dbg.init
- rm -f $(CURDIR)/debian/ngircd-full-dbg.service
-
- # Add here commands to clean up after the build process:
- [ ! -f Makefile ] || $(MAKE) distclean
-
-ifneq "$(wildcard /usr/share/misc/config.sub)" ""
- cp -f /usr/share/misc/config.sub config.sub
-endif
-ifneq "$(wildcard /usr/share/misc/config.guess)" ""
- cp -f /usr/share/misc/config.guess config.guess
-endif
- dh_clean
-
-install: install-ngircd install-ngircd-full install-ngircd-full-dbg
-
-install-ngircd: build-ngircd
- dh_testdir
- dh_testroot
- dh_installdirs
-
- # Add here commands to install the "standard" package into debian/ngircd:
- $(MAKE) install DESTDIR=$(CURDIR)/debian/ngircd
- rm $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/INSTALL*
- rm $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/COPYING*
- cat $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/sample-ngircd.conf | \
- sed -e "s|;ServerUID = 65534|ServerUID = irc|g" | \
- sed -e "s|;ServerGID = 65534|ServerGID = irc|g" | \
- sed -e "s|;PidFile = /var/run/ngircd/ngircd.pid|PidFile = /var/run/ircd/ngircd.pid|g" \
- >$(CURDIR)/debian/ngircd/etc/ngircd/ngircd.conf
- touch $(CURDIR)/debian/ngircd/etc/ngircd/ngircd.motd
-
-install-ngircd-full: build-ngircd-full
- dh_testdir
- dh_testroot
- dh_installdirs
-
- # Add here commands to install the "full" package into debian/ngircd-full:
- $(MAKE) install DESTDIR=$(CURDIR)/debian/ngircd-full
- rm $(CURDIR)/debian/ngircd-full/usr/share/doc/ngircd-full/INSTALL*
- rm $(CURDIR)/debian/ngircd-full/usr/share/doc/ngircd-full/COPYING*
- cat $(CURDIR)/debian/ngircd-full/usr/share/doc/ngircd-full/sample-ngircd.conf | \
- sed -e "s|;ServerUID = 65534|ServerUID = irc|g" | \
- sed -e "s|;ServerGID = 65534|ServerGID = irc|g" | \
- sed -e "s|;PidFile = /var/run/ngircd/ngircd.pid|PidFile = /var/run/ircd/ngircd.pid|g" \
- >$(CURDIR)/debian/ngircd-full/etc/ngircd/ngircd.conf
- touch $(CURDIR)/debian/ngircd-full/etc/ngircd/ngircd.motd
- mkdir -p $(CURDIR)/debian/ngircd-full/etc/pam.d
- cp $(CURDIR)/debian/ngircd.pam $(CURDIR)/debian/ngircd-full/etc/pam.d/ngircd
-
-install-ngircd-full-dbg: build-ngircd-full-dbg
- dh_testdir
- dh_testroot
- dh_installdirs
-
- # Add here commands to install the "full" package into debian/ngircd-full:
- $(MAKE) install DESTDIR=$(CURDIR)/debian/ngircd-full-dbg
- rm $(CURDIR)/debian/ngircd-full-dbg/usr/share/doc/ngircd-full-dbg/INSTALL*
- rm $(CURDIR)/debian/ngircd-full-dbg/usr/share/doc/ngircd-full-dbg/COPYING*
- cat $(CURDIR)/debian/ngircd-full-dbg/usr/share/doc/ngircd-full-dbg/sample-ngircd.conf | \
- sed -e "s|;ServerUID = 65534|ServerUID = irc|g" | \
- sed -e "s|;ServerGID = 65534|ServerGID = irc|g" | \
- sed -e "s|;PidFile = /var/run/ngircd/ngircd.pid|PidFile = /var/run/ircd/ngircd.pid|g" \
- >$(CURDIR)/debian/ngircd-full-dbg/etc/ngircd/ngircd.conf
- touch $(CURDIR)/debian/ngircd-full-dbg/etc/ngircd/ngircd.motd
- mkdir -p $(CURDIR)/debian/ngircd-full-dbg/etc/pam.d
- cp $(CURDIR)/debian/ngircd.pam $(CURDIR)/debian/ngircd-full-dbg/etc/pam.d/ngircd
-
-# Build architecture-independent files here.
-binary-indep:
- # We have nothing to do by default.
-
-# Build architecture-dependent files here.
-binary-arch: build install
- ln -s $(CURDIR)/contrib/ngircd.service \
- $(CURDIR)/debian/ngircd.service
-
- ln -s $(CURDIR)/debian/ngircd.default \
- $(CURDIR)/debian/ngircd-full.default
- ln -s $(CURDIR)/debian/ngircd.init \
- $(CURDIR)/debian/ngircd-full.init
- ln -s $(CURDIR)/debian/ngircd.postinst \
- $(CURDIR)/debian/ngircd-full.postinst
- cp $(CURDIR)/contrib/ngircd.service \
- $(CURDIR)/debian/ngircd-full.service
- echo "Alias=ngircd.service" >>$(CURDIR)/debian/ngircd-full.service
-
- ln -s $(CURDIR)/debian/ngircd.default \
- $(CURDIR)/debian/ngircd-full-dbg.default
- ln -s $(CURDIR)/debian/ngircd.init \
- $(CURDIR)/debian/ngircd-full-dbg.init
- ln -s $(CURDIR)/debian/ngircd.postinst \
- $(CURDIR)/debian/ngircd-full-dbg.postinst
- cp $(CURDIR)/contrib/ngircd.service \
- $(CURDIR)/debian/ngircd-full-dbg.service
- echo "Alias=ngircd.service" >>$(CURDIR)/debian/ngircd-full-dbg.service
-
- dh_testdir
- dh_testroot
- dh_installchangelogs -a -A ChangeLog
- dh_installdocs -a
- dh_installsystemd -a
- dh_installinit -a
- dh_strip -a --no-package=ngircd-full-dbg
- dh_compress -a -XCommands.txt
- dh_fixperms -a
- dh_installdeb -a
- dh_shlibdeps -a
- dh_gencontrol -a
- dh_md5sums -a
- dh_builddeb -a
-
-binary: binary-indep binary-arch
-
-.PHONY: build clean binary-indep binary-arch binary install
-
-# -eof-
+# See FEATURE AREAS in dpkg-buildflags(1).
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+
+%:
+ dh $@
+
+# Disable dh_autoreconf since we are using de-ANSI-fication which was removed
+# from automake a while ago. See <https://github.com/ngircd/ngircd/issues/261>.
+override_dh_autoreconf:
+
+override_dh_auto_configure:
+ dh_auto_configure -- \
+ --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+ --prefix=/usr \
+ --mandir=\$${prefix}/share/man \
+ --sysconfdir=/etc/ngircd \
+ --with-iconv \
+ --with-ident \
+ --with-openssl \
+ --with-pam \
+ --with-syslog \
+ --with-zlib
+
+execute_before_dh_auto_install:
+ ln -fs $(CURDIR)/contrib/ngircd.service $(CURDIR)/debian/ngircd.service
+
+execute_after_dh_auto_install:
+# Generate the default ngircd.conf:
+ install -o root -g irc -m 0640 -D /dev/null \
+ $(CURDIR)/debian/ngircd/etc/ngircd/ngircd.conf
+ sed \
+ -e "s|;ServerUID = 65534|ServerUID = irc|g" \
+ -e "s|;ServerGID = 65534|ServerGID = irc|g" \
+ -e "s|;PidFile = /var/run/ngircd/ngircd.pid|PidFile = /run/ircd/ngircd.pid|g" \
+ -e "s|;PAM = yes|PAM = no|g" \
+ $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/sample-ngircd.conf \
+ >>$(CURDIR)/debian/ngircd/etc/ngircd/ngircd.conf
+
+# Create drop-in configuration directory:
+ install -o root -g irc -m 0750 -d \
+ $(CURDIR)/debian/ngircd/etc/ngircd/ngircd.conf.d
+
+# Install an empty MOTD file.
+ install -o root -g irc -m 0640 -D /dev/null \
+ $(CURDIR)/debian/ngircd/etc/ngircd/ngircd.motd
+
+# Install the logcheck(8) configuration.
+ install -o root -g root -m 0644 -D \
+ $(CURDIR)/contrib/ngircd.logcheck \
+ $(CURDIR)/debian/ngircd/etc/logcheck/ignore.d.paranoid/ngircd
+
+# Make lintian happy :-)
+ rm $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/COPYING
+ mv $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/ChangeLog \
+ $(CURDIR)/debian/ngircd/usr/share/doc/ngircd/changelog
+
+override_dh_fixperms:
+# Preserve the permissions of files installed in /etc/ngircd!
+ dh_fixperms -X/etc/ngircd
+
+override_dh_compress:
+# The Commands.txt file is read by the daemon, don't compress it!
+ dh_compress -XCommands.txt
--- /dev/null
+# Watch control file for uscan.
+# See uscan(1) for format.
+
+# Compulsory line, this is a version 4 file.
+version=4
+
+# PGP signature mangle, so foo.tar.gz has foo.tar.gz.sig.
+opts="pgpsigurlmangle=s%$%.sig%"
+
+https://arthur.barton.de/pub/@PACKAGE@/@PACKAGE@-([0-9\.]+)@ARCHIVE_EXT@