pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

quassel: split quassel-core into a headless package



Module Name:	pkgsrc-wip
Committed By:	kikadf <kikadf.01%gmail.com@localhost>
Pushed By:	kikadf
Date:		Tue Jan 20 14:43:53 2026 +0100
Changeset:	b8c4c3930f4411572092b854c2233bfd21cfcee8

Modified Files:
	Makefile
	quassel/Makefile
	quassel/PLIST
Added Files:
	quassel-core/DESCR
	quassel-core/Makefile
	quassel-core/PLIST
	quassel-core/files/quasselcore.sh
	quassel/Makefile.common
Removed Files:
	quassel/files/quasselcore.sh

Log Message:
quassel: split quassel-core into a headless package

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=b8c4c3930f4411572092b854c2233bfd21cfcee8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                          |  1 +
 quassel-core/DESCR                | 19 ++++++++++++
 quassel-core/Makefile             | 36 ++++++++++++++++++++++
 quassel-core/PLIST                |  2 ++
 quassel-core/files/quasselcore.sh | 63 +++++++++++++++++++++++++++++++++++++++
 quassel/Makefile                  | 39 ++----------------------
 quassel/Makefile.common           | 29 ++++++++++++++++++
 quassel/PLIST                     |  1 -
 quassel/files/quasselcore.sh      | 63 ---------------------------------------
 9 files changed, 153 insertions(+), 100 deletions(-)

diffs:
diff --git a/Makefile b/Makefile
index ba3e6243ba..712051506f 100644
--- a/Makefile
+++ b/Makefile
@@ -5106,6 +5106,7 @@ SUBDIR+=	qtractor
 SUBDIR+=	quantlib
 SUBDIR+=	quarkcoin
 SUBDIR+=	quassel
+SUBDIR+=	quassel-core
 SUBDIR+=	qucs-s
 SUBDIR+=	quex
 SUBDIR+=	quickfix
diff --git a/quassel-core/DESCR b/quassel-core/DESCR
new file mode 100644
index 0000000000..bff1dd5d96
--- /dev/null
+++ b/quassel-core/DESCR
@@ -0,0 +1,19 @@
+Quassel IRC is a modern, cross-platform, distributed IRC client
+based on the Qt framework.
+
+Distributed means that one (or multiple) client(s) can attach to
+and detach from a central core that stays permanently online --
+much like the popular combination of screen and a text-based IRC
+client such as WeeChat, and similar to (but much more featureful
+than) so-called BNCs.  Re-attaching your client will show your IRC
+session in the same state as you left it in (plus whatever happened
+while you were gone), and this even when you re-attach from a
+different location.
+
+In addition, Quassel IRC can be used like a traditional client,
+with providing both client and core functionality in one binary.
+This so-called "Monolithic Client" completely hides the distributed
+nature, so for a purely local installation, Quassel IRC can be
+setup very easily.
+
+This package contains only the headless quasselcore.
diff --git a/quassel-core/Makefile b/quassel-core/Makefile
new file mode 100644
index 0000000000..c472e425ed
--- /dev/null
+++ b/quassel-core/Makefile
@@ -0,0 +1,36 @@
+# $NetBSD: Makefile,v 1.52 2026/01/07 08:46:02 wiz Exp $
+
+.include "../../wip/quassel/Makefile.common"
+
+PKGNAME=	${DISTNAME:S/quassel/quassel-core/}
+COMMENT=	Modern, cross-platform, distributed IRC client - core only
+
+USE_CXX_FEATURES+=	c++14
+
+LDFLAGS.SunOS+=	-lsocket -lnsl
+
+.include "../../mk/bsd.prefs.mk"
+RCD_SCRIPTS=	quasselcore
+
+.if ${INIT_SYSTEM} == "rc.d"
+DEPENDS+=	daemonize-[0-9]*:../../sysutils/daemonize
+.endif
+
+QUASSELCORE_USER?=	quasselcore
+QUASSELCORE_GROUP?=	quasselcore
+PKG_GROUPS=		${QUASSELCORE_GROUP}
+PKG_USERS=		${QUASSELCORE_USER}:${QUASSELCORE_GROUP}
+PKG_GROUPS_VARS=	QUASSELCORE_GROUP
+PKG_USERS_VARS=		QUASSELCORE_USER
+FILES_SUBST+=		QUASSELCORE_USER=${QUASSELCORE_USER}
+FILES_SUBST+=		QUASSELCORE_GROUP=${QUASSELCORE_GROUP}
+
+CMAKE_CONFIGURE_ARGS+=	-DWANT_QTCLIENT=OFF
+CMAKE_CONFIGURE_ARGS+=	-DWANT_MONO=OFF
+CMAKE_CONFIGURE_ARGS+=	-DWANT_BUNDLED_ICONS=OFF
+CMAKE_CONFIGURE_ARGS+=	-DENABLE_SHARED=OFF
+
+post-install:
+	${RM} -rf ${DESTDIR}${PREFIX}/share/quassel
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/quassel-core/PLIST b/quassel-core/PLIST
new file mode 100644
index 0000000000..a88acb0bee
--- /dev/null
+++ b/quassel-core/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD$
+bin/quasselcore
diff --git a/quassel-core/files/quasselcore.sh b/quassel-core/files/quasselcore.sh
new file mode 100644
index 0000000000..071d864bf0
--- /dev/null
+++ b/quassel-core/files/quasselcore.sh
@@ -0,0 +1,63 @@
+#!@RCD_SCRIPTS_SHELL@
+
+# PROVIDE: quasselcore
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+. /etc/rc.subr
+
+# User-settable rc.conf variables and their default values:
+: ${quasselcore_data:="@VARBASE@/db/quasselcore"}
+: ${quasselcore_log:="@VARBASE@/log/quasselcore.log"}
+: ${quasselcore_listen:="0.0.0.0,::"}
+: ${quasselcore_args:="--configdir=${quasselcore_data} --logfile=${quasselcore_log} --listen=${quasselcore_listen}"}
+: ${quasselcore_user:="@QUASSELCORE_USER@"}
+: ${quasselcore_group:="@QUASSELCORE_GROUP@"}
+
+name="quasselcore"
+rcvar="${name}"
+pidfile="@VARBASE@/run/${name}/${name}.pid"
+command="@PREFIX@/sbin/daemonize"
+procname="@PREFIX@/bin/${name}"
+command_args="${command_args} -p ${pidfile}"
+command_args="${command_args} ${procname} ${quasselcore_args}"
+start_precmd="${name}_prestart"
+keygen_cmd="${name}_keygen"
+extra_commands="keygen"
+
+quasselcore_keygen()
+{
+	cat > /tmp/.mkcert.cfg <<EOT
+[req]
+distinguished_name		= req_distinguished_name
+prompt				= no
+[req_distinguished_name]
+countryName			= VA
+stateOrProvinceName		= Valinor
+localityName			= Valimar
+organizationName		= Valimar Industry Ltd
+EOT
+	openssl req -config /tmp/.mkcert.cfg \
+		-x509 -nodes -days 365 -newkey rsa:4096 \
+		-keyout "${quasselcore_data}/quasselCert.pem" \
+		-out "${quasselcore_data}/quasselCert.pem"
+	chown ${quasselcore_user}:${quasselcore_group} "${quasselcore_data}/quasselCert.pem"
+	chmod 400 "${quasselcore_data}/quasselCert.pem"
+	rm -f /tmp/.mkcert.cfg
+}
+
+uasselcore_prestart()
+{
+	install -d -o ${quasselcore_user} -g ${quasselcore_group} ${quasselcore_data}
+	install -d -o ${quasselcore_user} -g ${quasselcore_group} @VARBASE@/run/${name}
+
+	if [ ! -f "${quasselcore_log}" ]; then
+		install -o ${quasselcore_user} -g ${quasselcore_group} /dev/null ${quasselcore_log}
+	fi
+	if [ ! -f "${quasselcore_data}/quasselCert.pem" ]; then
+		quasselcore_keygen
+	fi
+}
+
+load_rc_config ${name}
+run_rc_command "$1"
diff --git a/quassel/Makefile b/quassel/Makefile
index 95d743fcb9..013a59b7f5 100644
--- a/quassel/Makefile
+++ b/quassel/Makefile
@@ -1,55 +1,22 @@
 # $NetBSD: Makefile,v 1.52 2026/01/07 08:46:02 wiz Exp $
 
-DISTNAME=	quassel-0.14.0
-PKGREVISION=	27
-CATEGORIES=	chat
-MASTER_SITES=	https://quassel-irc.org/pub/
-EXTRACT_SUFX=	.tar.bz2
-
-MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://quassel-irc.org/
+.include "Makefile.common"
+PKGREVISION=	28
 COMMENT=	Modern, cross-platform, distributed IRC client
-LICENSE=	gnu-gpl-v2 OR gnu-gpl-v3
 
 USE_TOOLS+=	bash perl
-USE_LANGUAGES=	c c++
-
-USE_CXX_FEATURES+=	c++14
 
 REPLACE_BASH+=	po/update.sh
 REPLACE_BASH+=	scripts/tx-sync.sh
-
 REPLACE_PERL+=	data/scripts/inxi
 REPLACE_PERL+=	data/scripts/mpris
 
-LDFLAGS.SunOS+=	-lsocket -lnsl
-
-.include "../../mk/bsd.prefs.mk"
-RCD_SCRIPTS=	quasselcore
-
-.if ${INIT_SYSTEM} == "rc.d"
-DEPENDS+=	daemonize-[0-9]*:../../sysutils/daemonize
-.endif
-
-QUASSELCORE_USER?=	quasselcore
-QUASSELCORE_GROUP?=	quasselcore
-PKG_GROUPS=		${QUASSELCORE_GROUP}
-PKG_USERS=		${QUASSELCORE_USER}:${QUASSELCORE_GROUP}
-PKG_GROUPS_VARS=	QUASSELCORE_GROUP
-PKG_USERS_VARS=		QUASSELCORE_USER
-FILES_SUBST+=		QUASSELCORE_USER=${QUASSELCORE_USER}
-FILES_SUBST+=		QUASSELCORE_GROUP=${QUASSELCORE_GROUP}
+CMAKE_CONFIGURE_ARGS+=	-DWANT_CORE=OFF
 
 .include "options.mk"
-.include "../../devel/cmake/build.mk"
 .include "../../sysutils/desktop-file-utils/desktopdb.mk"
 .include "../../graphics/hicolor-icon-theme/buildlink3.mk"
-.include "../../databases/openldap-client/buildlink3.mk"
-.include "../../devel/boost-headers/buildlink3.mk"
-.include "../../devel/libexecinfo/buildlink3.mk"
 .include "../../devel/libdbusmenu-qt5/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
-.include "../../security/qca2-qt5/buildlink3.mk"
 .include "../../textproc/sonnet/buildlink3.mk"
 .include "../../x11/qt5-qtbase/buildlink3.mk"
 .include "../../x11/qt5-qtscript/buildlink3.mk"
diff --git a/quassel/Makefile.common b/quassel/Makefile.common
new file mode 100644
index 0000000000..39f6734f35
--- /dev/null
+++ b/quassel/Makefile.common
@@ -0,0 +1,29 @@
+# $NetBSD: $
+#
+# used by chat/quassel/Makefile
+# used by chat/quassel-core/Makefile
+
+DISTNAME=	quassel-0.14.0
+CATEGORIES=	chat
+MASTER_SITES=	https://quassel-irc.org/pub/
+EXTRACT_SUFX=	.tar.bz2
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	https://quassel-irc.org/
+LICENSE=	gnu-gpl-v2 OR gnu-gpl-v3
+
+USE_LANGUAGES=	c c++
+
+USE_CXX_FEATURES+=	c++14
+
+LDFLAGS.SunOS+=	-lsocket -lnsl
+
+PATCHDIR=	${.CURDIR}/../../wip/quassel/patches
+DISTINFO_FILE=	${.CURDIR}/../../wip/quassel/distinfo
+
+.include "../../devel/cmake/build.mk"
+.include "../../databases/openldap-client/buildlink3.mk"
+.include "../../devel/boost-headers/buildlink3.mk"
+.include "../../devel/libexecinfo/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../security/qca2-qt5/buildlink3.mk"
diff --git a/quassel/PLIST b/quassel/PLIST
index 14a8db589b..49ffc43892 100644
--- a/quassel/PLIST
+++ b/quassel/PLIST
@@ -1,7 +1,6 @@
 @comment $NetBSD: PLIST,v 1.2 2022/03/05 10:32:10 nia Exp $
 bin/quassel
 bin/quasselclient
-bin/quasselcore
 lib/libquassel-client.so
 lib/libquassel-client.so.${PKGVERSION}
 lib/libquassel-common.so
diff --git a/quassel/files/quasselcore.sh b/quassel/files/quasselcore.sh
deleted file mode 100644
index 071d864bf0..0000000000
--- a/quassel/files/quasselcore.sh
+++ /dev/null
@@ -1,63 +0,0 @@
-#!@RCD_SCRIPTS_SHELL@
-
-# PROVIDE: quasselcore
-# REQUIRE: LOGIN
-# KEYWORD: shutdown
-
-. /etc/rc.subr
-
-# User-settable rc.conf variables and their default values:
-: ${quasselcore_data:="@VARBASE@/db/quasselcore"}
-: ${quasselcore_log:="@VARBASE@/log/quasselcore.log"}
-: ${quasselcore_listen:="0.0.0.0,::"}
-: ${quasselcore_args:="--configdir=${quasselcore_data} --logfile=${quasselcore_log} --listen=${quasselcore_listen}"}
-: ${quasselcore_user:="@QUASSELCORE_USER@"}
-: ${quasselcore_group:="@QUASSELCORE_GROUP@"}
-
-name="quasselcore"
-rcvar="${name}"
-pidfile="@VARBASE@/run/${name}/${name}.pid"
-command="@PREFIX@/sbin/daemonize"
-procname="@PREFIX@/bin/${name}"
-command_args="${command_args} -p ${pidfile}"
-command_args="${command_args} ${procname} ${quasselcore_args}"
-start_precmd="${name}_prestart"
-keygen_cmd="${name}_keygen"
-extra_commands="keygen"
-
-quasselcore_keygen()
-{
-	cat > /tmp/.mkcert.cfg <<EOT
-[req]
-distinguished_name		= req_distinguished_name
-prompt				= no
-[req_distinguished_name]
-countryName			= VA
-stateOrProvinceName		= Valinor
-localityName			= Valimar
-organizationName		= Valimar Industry Ltd
-EOT
-	openssl req -config /tmp/.mkcert.cfg \
-		-x509 -nodes -days 365 -newkey rsa:4096 \
-		-keyout "${quasselcore_data}/quasselCert.pem" \
-		-out "${quasselcore_data}/quasselCert.pem"
-	chown ${quasselcore_user}:${quasselcore_group} "${quasselcore_data}/quasselCert.pem"
-	chmod 400 "${quasselcore_data}/quasselCert.pem"
-	rm -f /tmp/.mkcert.cfg
-}
-
-uasselcore_prestart()
-{
-	install -d -o ${quasselcore_user} -g ${quasselcore_group} ${quasselcore_data}
-	install -d -o ${quasselcore_user} -g ${quasselcore_group} @VARBASE@/run/${name}
-
-	if [ ! -f "${quasselcore_log}" ]; then
-		install -o ${quasselcore_user} -g ${quasselcore_group} /dev/null ${quasselcore_log}
-	fi
-	if [ ! -f "${quasselcore_data}/quasselCert.pem" ]; then
-		quasselcore_keygen
-	fi
-}
-
-load_rc_config ${name}
-run_rc_command "$1"


Home | Main Index | Thread Index | Old Index