mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-23 00:43:28 +00:00
- Update to 0.99.20.1
- Add LICENSE - Use USERS/GROUPS - Cleanup whitespace - Remove legacy targets/options - Update MASTER_SITES - Use pkg-message instead of ${ECHO} PR: ports/166368 Submitted by: Boris Kovalenko <boris@tagnet.ru> (maintainer) Security: 42a2c82a-75b9-11e1-89b4-001ec9578670 Feature safe: yes
This commit is contained in:
parent
80a732ed3b
commit
c532e290ee
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=293767
@ -6,28 +6,28 @@
|
||||
#
|
||||
|
||||
PORTNAME= quagga
|
||||
PORTVERSION= 0.99.20
|
||||
PORTREVISION= 3
|
||||
PORTVERSION= 0.99.20.1
|
||||
CATEGORIES= net ipv6
|
||||
MASTER_SITES= http://quagga.net/download/ \
|
||||
http://www.ru.quagga.net/download/ \
|
||||
http://www.de.quagga.net/download/ \
|
||||
http://www.us.quagga.net/download/ \
|
||||
http://www.us2.quagga.net/download/ \
|
||||
http://www.au.quagga.net/download/
|
||||
MASTER_SITES= ${MASTER_SITE_SAVANNAH}
|
||||
MASTER_SITE_SUBDIR= quagga
|
||||
|
||||
PATCH_SITES= http://quagga.net/
|
||||
|
||||
MAINTAINER= boris@tagnet.ru
|
||||
COMMENT= Free RIPv1, RIPv2, OSPFv2, BGP4, IS-IS route software
|
||||
|
||||
LICENSE= GPLv2
|
||||
LICENSE_FILE= ${WRKSRC}/COPYING
|
||||
|
||||
CONFLICTS= openbgpd-[0-9]* zebra-0*
|
||||
|
||||
USE_AUTOTOOLS= libtool autoheader
|
||||
USE_GMAKE= yes
|
||||
USE_LDCONFIG= yes
|
||||
USE_PERL5_BUILD= yes
|
||||
BUILD_DEPENDS+= gawk:${PORTSDIR}/lang/gawk
|
||||
USE_AUTOTOOLS= libtool autoheader aclocal
|
||||
ACLOCAL_ARGS= -I${LOCALBASE}/share/aclocal
|
||||
BUILD_DEPENDS+= gawk:${PORTSDIR}/lang/gawk
|
||||
USE_GMAKE= yes
|
||||
USE_LDCONFIG= yes
|
||||
USE_PERL5_BUILD=yes
|
||||
FETCH_ARGS= -Fpr
|
||||
|
||||
MAN1= vtysh.1
|
||||
MAN8= bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8
|
||||
@ -54,22 +54,17 @@ CONFIGURE_ENV+= LIBTOOL=${LIBTOOL} LIBTOOLIZE=${LIBTOOLIZE} \
|
||||
LIBTOOL_VERSION=${LIBTOOL_VERSION}
|
||||
LDFLAGS+= -L${LOCALBASE}/lib
|
||||
|
||||
.if !defined(ENABLE_USER)
|
||||
ENABLE_USER=quagga
|
||||
.endif
|
||||
.if !defined(ENABLE_GROUP)
|
||||
ENABLE_GROUP=quagga
|
||||
.endif
|
||||
ENABLE_USER?= quagga
|
||||
ENABLE_GROUP?= quagga
|
||||
|
||||
USERS= ${ENABLE_USER}
|
||||
GROUPS= ${ENABLE_GROUP}
|
||||
|
||||
CONFIGURE_ARGS+=--enable-user=${ENABLE_USER}
|
||||
CONFIGURE_ARGS+=--enable-group=${ENABLE_GROUP}
|
||||
|
||||
.if !defined(SYSCONF_DIR)
|
||||
SYSCONF_DIR=${PREFIX}/etc/quagga
|
||||
.endif
|
||||
.if !defined(LOCALSTATE_DIR)
|
||||
LOCALSTATE_DIR=/var/run/quagga
|
||||
.endif
|
||||
SYSCONF_DIR?= ${ETCDIR}
|
||||
LOCALSTATE_DIR?=/var/run/quagga
|
||||
|
||||
CONFIGURE_ARGS+=--sysconfdir=${SYSCONF_DIR}
|
||||
CONFIGURE_ARGS+=--localstatedir=${LOCALSTATE_DIR}
|
||||
@ -165,74 +160,14 @@ pre-everything::
|
||||
@${ECHO} " WITH_NO_BGP_ANNOUNCE Turn off BGP route announcement"
|
||||
|
||||
post-install:
|
||||
@${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
|
||||
@${ECHO} "===> installing ${PORTNAME} startup file..."
|
||||
@${ECHO} "Add the following lines to /etc/rc.conf to enable quagga:"
|
||||
@${ECHO} ""
|
||||
@${ECHO} "defaultrouter=\"NO\""
|
||||
@${ECHO} "quagga_enable=\"YES\""
|
||||
@${ECHO} ""
|
||||
@${ECHO} "Also, you may wish to set the following options:"
|
||||
@${ECHO} "quagga_daemons=\"zebra bgpd etc...\""
|
||||
@${ECHO} "quagga_flags=\"....\""
|
||||
@${ECHO} "quagga_extralibs_path=\"/path1 /path2\""
|
||||
@${ECHO} "router_enable=\"NO\""
|
||||
@${ECHO} "watchquagga_enable=\"YES\""
|
||||
@${ECHO} "watchquagga_flags=\"...\""
|
||||
@${ECHO} ""
|
||||
@${ECHO} "Note!!! Since 0.96.4_5 port uses new id for quagga user and group."
|
||||
@${ECHO} " So, You need to manually chown files:"
|
||||
@${ECHO} " in ${SYSCONF_DIR}"
|
||||
@${ECHO} " and ${LOCALSTATE_DIR}"
|
||||
@${ECHO} " if You had never do this before. Or run"
|
||||
@${ECHO} " make changeuser"
|
||||
@${ECHO} ""
|
||||
@${MKDIR} ${LOCALSTATE_DIR}
|
||||
@${CHOWN} -R ${ENABLE_USER}:${ENABLE_GROUP} ${LOCALSTATE_DIR} \
|
||||
${SYSCONF_DIR}
|
||||
@${CAT} ${PKGMESSAGE}
|
||||
|
||||
.if !defined(BATCH)
|
||||
post-clean:
|
||||
@${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc
|
||||
.endif
|
||||
|
||||
changeuser:
|
||||
# Recover from the problem that earlier versions of this port created the
|
||||
# quagga pseudo-user with an id of 90 which is used by FireBird database
|
||||
# engine. The port now uses id 101:101.
|
||||
# NOTE:
|
||||
# This target assumes that ENABLE_GROUP is the primary group of ENABLE_USER. If you
|
||||
# have a different setup, do not run this target!
|
||||
@if [ `${ID} -u` -ne 0 ]; \
|
||||
then ${ECHO_CMD} "Sorry, you must be root to use this target."; exit 1; fi; \
|
||||
current_uid=`id -u ${ENABLE_USER}`; \
|
||||
current_gid=`pw groupshow ${ENABLE_GROUP}|cut -f 3 -d :`; \
|
||||
${ECHO_CMD} "I will remove this user:"; \
|
||||
${ID} -P $${current_uid}; \
|
||||
${ECHO_CMD} "and this group:"; \
|
||||
pw groupshow ${ENABLE_GROUP}; \
|
||||
${ECHO_CMD} "I will then re-create them with a user and group id of 101."; \
|
||||
${ECHO_CMD} "Then all files and directories under ${PREFIX} and /var that"; \
|
||||
${ECHO_CMD} "are owned by uid $${current_uid} will be chown(1)'ed."; \
|
||||
${ECHO_CMD} "After that, all files and directories that were accessible"; \
|
||||
${ECHO_CMD} "by group $${current_gid} will chgrp(1)'ed respectively."; \
|
||||
${ECHO_CMD} "Note that this assumes group '${ENABLE_GROUP}' to be the primary"; \
|
||||
${ECHO_CMD} "group of user '${ENABLE_USER}'. If you have a different setup"; \
|
||||
${ECHO_CMD} "please abort this target now. Also don't forget to write your"; \
|
||||
${ECHO_CMD} "Quagga configs right now!"; \
|
||||
read -p "Press RETURN to continue or CTRL-C to abort:" dummy ; \
|
||||
${ECHO_CMD} "OK, here we go:"; \
|
||||
${ECHO_CMD} "deleting user $${current_uid} and his primary group..."; \
|
||||
pw userdel -u $${current_uid}; \
|
||||
${ECHO_CMD} "adding user ${ENABLE_USER} with id 101..."; \
|
||||
pw groupadd -n ${ENABLE_USER} -g 101; \
|
||||
pw useradd -n ${ENABLE_GROUP} -u 101 -c "quagga route daemon pseudo-user" \
|
||||
-d ${SYSCONF_DIR} -s /sbin/nologin -h - ; \
|
||||
${ECHO_CMD} "chown(1)'ing everything under ${PREFIX} from $${current_uid} to 101..."; \
|
||||
${FIND} -H ${PREFIX} -user $${current_uid} -exec ${CHOWN} 101 {} \; ; \
|
||||
${ECHO_CMD} "chgrp(1)'ing everything under ${PREFIX} from $${current_gid} to 100..."; \
|
||||
${FIND} -H ${PREFIX} -group $${current_gid} -exec ${CHOWN} :101 {} \; ; \
|
||||
${ECHO_CMD} "chown(1)'ing everything under /var from $${current_uid} to 101..."; \
|
||||
${FIND} -H /var -user $${current_uid} -exec ${CHOWN} 101 {} \; ; \
|
||||
${ECHO_CMD} "chgrp(1)'ing everything under /var from $${current_gid} to 101..."; \
|
||||
${FIND} -H /var -group $${current_gid} -exec ${CHOWN} :101 {} \; ; \
|
||||
${ECHO_CMD} "Finished. You must stop and then start Quagga now."
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1,2 +1,2 @@
|
||||
SHA256 (quagga-0.99.20.tar.gz) = b7a98cc6b022bb0cb405557b3d920cf513150f64384dbd0a2248b5bd248df58b
|
||||
SIZE (quagga-0.99.20.tar.gz) = 2232520
|
||||
SHA256 (quagga-0.99.20.1.tar.gz) = de8cac51e723b140abef1126696dcf9c68500546b1db3043cce431ae9d3291f4
|
||||
SIZE (quagga-0.99.20.1.tar.gz) = 2251259
|
||||
|
@ -1,10 +1,8 @@
|
||||
From the website:
|
||||
|
||||
Quagga is a routing software suite, providing implementations of
|
||||
OSPFv2, OSPFv3, RIP v1 and v2, RIPv3, BGPv4 and experemental ISIS
|
||||
for Unix platforms, particularly FreeBSD and Linux and also NetBSD,
|
||||
to mention a few. Quagga is a fork of GNU Zebra which was developed
|
||||
by KunihiroIshiguro. The Quagga tree aims to build a more involved
|
||||
for Unix platforms, particularly FreeBSD and Linux and also NetBSD,
|
||||
to mention a few. Quagga is a fork of GNU Zebra which was developed
|
||||
by KunihiroIshiguro. The Quagga tree aims to build a more involved
|
||||
community around Quagga than the current centralised model of GNU Zebra.
|
||||
|
||||
WWW: http://quagga.net/
|
||||
WWW: http://www.quagga.net/
|
||||
|
@ -1,75 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
PATH=/bin:/usr/sbin
|
||||
|
||||
if [ -z "${SYSCONF_DIR}" ]; then
|
||||
SYSCONF_DIR=${PKG_PREFIX}/etc/quagga
|
||||
fi
|
||||
|
||||
if [ -z "${LOCALSTATE_DIR}" ]; then
|
||||
LOCALSTATE_DIR=/var/run/quagga
|
||||
fi
|
||||
|
||||
if [ -z "${ENABLE_USER}" ]; then
|
||||
ENABLE_USER=quagga
|
||||
fi
|
||||
|
||||
if [ -z "${ENABLE_GROUP}" ]; then
|
||||
ENABLE_GROUP=quagga
|
||||
fi
|
||||
|
||||
case $2 in
|
||||
POST-INSTALL)
|
||||
UID=101
|
||||
GID=${UID}
|
||||
if pw group show "${ENABLE_GROUP}" 2>/dev/null; then
|
||||
echo "You already have a group \"${ENABLE_GROUP}\", so I will use it."
|
||||
else
|
||||
if pw groupadd ${ENABLE_GROUP} -g ${GID}; then
|
||||
echo "Added group \"${ENABLE_GROUP}\"."
|
||||
else
|
||||
echo "Adding group \"${ENABLE_GROUP}\" failed."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if pw user show "${ENABLE_USER}" 2>/dev/null; then
|
||||
echo "You already have a user \"${ENABLE_USER}\", so I will use it."
|
||||
if pw usermod ${ENABLE_USER} -d ${SYSCONF_DIR}
|
||||
then
|
||||
echo "Changed home directory of \"${ENABLE_USER}\" to \"${SYSCONF_DIR}\""
|
||||
else
|
||||
echo "Changing home directory of \"${ENABLE_USER}\" to \"${SYSCONF_DIR}\" failed..."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if pw useradd ${ENABLE_USER} -u ${UID} -g ${ENABLE_GROUP} -h - \
|
||||
-d ${SYSCONF_DIR} -s /sbin/nologin -c "Quagga Daemon"
|
||||
then
|
||||
echo "Added user \"${ENABLE_USER}\"."
|
||||
else
|
||||
echo "Adding user \"${ENABLE_USER}\" failed..."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
mkdir ${LOCALSTATE_DIR}
|
||||
if [ ! -d ${LOCALSTATE_DIR} ]; then
|
||||
echo "Creating \"${LOCALSTATE_DIR}\" failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
chown -R ${ENABLE_USER}:${ENABLE_GROUP} ${LOCALSTATE_DIR}
|
||||
|
||||
if [ ! -d ${SYSCONF_DIR} ]; then
|
||||
mkdir -p ${SYSCONF_DIR}
|
||||
fi
|
||||
|
||||
if [ ! -d ${SYSCONF_DIR} ]; then
|
||||
echo "Creating \"${SYSCONF_DIR}\" failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
chown -R ${ENABLE_USER}:${ENABLE_GROUP} ${SYSCONF_DIR}
|
||||
;;
|
||||
esac
|
13
net/quagga/pkg-message
Normal file
13
net/quagga/pkg-message
Normal file
@ -0,0 +1,13 @@
|
||||
==========================================================
|
||||
To enable quagga, add the following lines to rc.conf:
|
||||
|
||||
defaultrouter="NO"
|
||||
quagga_enable="YES"
|
||||
|
||||
Also, you may wish to set the following options:"
|
||||
quagga_daemons="zebra bgpd etc..."
|
||||
quagga_flags="...."
|
||||
quagga_extralibs_path="... ..."
|
||||
router_enable="NO"
|
||||
watchquagga_enable="YES"
|
||||
==========================================================
|
@ -83,3 +83,5 @@ include/quagga/zebra.h
|
||||
@dirrm share/examples/quagga
|
||||
@dirrm etc/quagga
|
||||
@dirrmtry %%LOCALSTATE_DIR%%
|
||||
@exec mkdir -p %%LOCALSTATE_DIR%%
|
||||
@exec chown -R %%ENABLE_USER%%:%%ENABLE_GROUP%% %%LOCALSTATE_DIR%% %%SYSCONF_DIR%%
|
||||
|
Loading…
Reference in New Issue
Block a user