From: "Hans de Graaff" <graaff@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-irc/rbot/
Date: Sun,  9 Jul 2023 05:42:28 +0000 (UTC)	[thread overview]
Message-ID: <1688881343.f1b4807c840cfdbaa88a3feb910a12812bd79362.graaff@gentoo> (raw)
commit:     f1b4807c840cfdbaa88a3feb910a12812bd79362
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sun Jul  9 05:40:28 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Jul  9 05:42:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1b4807c
net-irc/rbot: add 0.9.15_p20210609
Closes: https://bugs.gentoo.org/909025
Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>
 net-irc/rbot/Manifest                     |   1 +
 net-irc/rbot/rbot-0.9.15_p20210609.ebuild | 197 ++++++++++++++++++++++++++++++
 2 files changed, 198 insertions(+)
diff --git a/net-irc/rbot/Manifest b/net-irc/rbot/Manifest
index ca7d6c77ec02..c1ddbbf15c76 100644
--- a/net-irc/rbot/Manifest
+++ b/net-irc/rbot/Manifest
@@ -1 +1,2 @@
 DIST rbot-0.9.15_p20160325.tar.gz 762685 BLAKE2B 68146d241bd57198e0a7a9e5ae033827116bbe31d3bdc05bf42aa644c5dd900254bbe7317461aa553ad92daac299439721a85cd8dd41033cf38b9e97b268e1ee SHA512 b0bc90ee2c6ddb3cdd92cdd5f3a45520d20bc97327b3d694235f7ba94f13ef3c884d4658b083f71bfee2cbeff3cbc7a57c251c4d28bfee293e2556f64e7b4160
+DIST rbot-0.9.15_p20210609.tar.gz 769331 BLAKE2B 7dcdb3ffefefc0b2bfc8d232aec7fec2efecbbf2b025745673acac21733ed115c247cd988db0fb2739174ab1dad9fada83e1a291219e480d294ac32d1bbaad38 SHA512 068e3171bc2d2d0ffea36fbdf342766672fb83b9a4359b154b44b5e0283e6d1d0308dd7fbd66b515bcabb4ecc0eeca95fe670b49654e5d082a0be376138d4e50
diff --git a/net-irc/rbot/rbot-0.9.15_p20210609.ebuild b/net-irc/rbot/rbot-0.9.15_p20210609.ebuild
new file mode 100644
index 000000000000..76d3cf5e8335
--- /dev/null
+++ b/net-irc/rbot/rbot-0.9.15_p20210609.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31"
+
+GITHUB_COMMIT="3ace72d5642284665fce2c33c99dfeb1b931b2c6"
+inherit ruby-ng strip-linguas
+
+DESCRIPTION="A ruby IRC bot"
+HOMEPAGE="https://ruby-rbot.org/"
+SRC_URI="https://github.com/ruby-rbot/rbot/archive/${GITHUB_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( feh GPL-2 )"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="spell aspell timezone translator nls figlet
+	fortune cal host sqlite toilet"
+ILINGUAS="zh_CN zh_TW ru nl de fi fr it ja"
+RUBY_S="${PN}-${GITHUB_COMMIT}"
+
+CDEPEND="
+	acct-group/rbot
+	acct-user/rbot
+"
+
+RDEPEND+="
+	${CDEPEND}
+	spell? (
+		aspell? ( app-text/aspell )
+		!aspell? ( app-text/hunspell )
+	)
+	figlet? ( app-misc/figlet )
+	sqlite? ( dev-ruby/sqlite3 )
+	toilet? ( app-misc/toilet )
+	fortune? ( games-misc/fortune-mod )
+	cal? ( sys-apps/util-linux )
+	host? ( net-dns/bind-tools )"
+
+DEPEND+="${CDEPEND}"
+
+ruby_add_bdepend "
+	test? (
+		dev-ruby/sqlite3
+	)
+	nls? (
+		>=dev-ruby/ruby-gettext-2
+		dev-ruby/rake
+	)"
+
+ruby_add_rdepend "
+	dev-ruby/tokyocabinet
+	timezone? ( dev-ruby/tzinfo:* )
+	translator? ( dev-ruby/mechanize )
+	nls? ( dev-ruby/ruby-gettext >=dev-ruby/locale-2.0.5-r2 )
+"
+
+all_ruby_prepare() {
+	eapply -p0 "${FILESDIR}"/rbot-rakefile-gettext.patch
+
+	# Avoid tests that are only compatible with ruby22
+	rm -f test/test_journal.rb || die
+
+	# Fix deprecated code that was removed with ruby22
+	sed -i -e 's/::Config/::RbConfig/' setup.rb || die
+
+	# Avoid tests for optional dependencies that are not packaged.
+	# sed -i -e '/RegistryDaybreakTest/,/^end/ s:^:#:' test/test_registry.rb || die
+
+	# Avoid broken tests that call code that doesn't exist
+	rm -f test/test_plugins_threshold.rb || die
+}
+
+all_ruby_compile() {
+	disable_rbot_plugin() {
+		mv "${S}"/data/rbot/plugins/$1.rb{,.disabled}
+	}
+	use_rbot_plugin() {
+		use $1 && return
+		disable_rbot_plugin "$2"
+	}
+	rbot_conf() {
+		echo "$1: $2" >> "${T}"/rbot.conf
+	}
+	use_rbot_conf_path() {
+		use "$1" \
+			&& rbot_conf "$2" "$3" \
+			|| rbot_conf "$2" /bin/false
+	}
+
+	local spell_program="/usr/bin/hunspell -i"
+	if use !spell; then
+		disable_rbot_plugin spell
+		spell_program="/bin/false"
+	elif use aspell; then
+		spell_program="/usr/bin/ispell-aspell"
+	fi
+
+	rbot_conf spell.program "${spell_program}"
+
+	if use !figlet && use !toilet; then
+		disable_rbot_plugin figlet
+	fi
+
+	use_rbot_conf_path figlet figlet.path /usr/bin/figlet
+	use_rbot_conf_path toilet toilet.path /usr/bin/toilet
+
+	use_rbot_plugin timezone time
+	use_rbot_plugin translator translator
+
+	use_rbot_plugin fortune fortune
+	use_rbot_conf_path fortune fortune.path /usr/bin/fortune
+
+	use_rbot_plugin cal cal
+	use_rbot_conf_path cal cal.path /usr/bin/cal
+
+	use_rbot_plugin host host
+	use_rbot_conf_path host host.path /usr/bin/host
+
+	local rbot_datadir="${D}"/usr/share/rbot
+
+	# This is unfortunately pretty manual at the moment, but it's just
+	# to avoid having to run special scripts to package new versions
+	# of rbot. The default if new languages are added that are not
+	# considered for an opt-out here is to install them, so you just
+	# need to add them later.
+	if use nls; then
+		strip-linguas ${ILINGUAS}
+		if [[ -n ${LINGUAS+set} ]]; then
+			# As the the language name used by the rbot data files does
+			# not correspond to the ISO codes we usually use for LINGUAS,
+			# the following list of local varables will work as a
+			# dictionary to get the name used by rbot from the ISO code.
+			local lang_rbot_zh_CN="traditional_chinese"
+			local lang_rbot_ru="russian"
+			local lang_rbot_nl="dutch"
+			local lang_rbot_de="german"
+			local lang_rbot_fi="finnish"
+			local lang_rbot_fr="french"
+			local lang_rbot_it="italian"
+			local lang_rbot_ja="japanese"
+
+			for lang in ${ILINGUAS}; do
+				has ${lang} ${LINGUAS} && continue
+
+				lang_varname="lang_rbot_${lang}"
+				lang_rbot=${!lang_varname}
+
+				rm -r \
+					"${S}"/data/rbot/languages/${lang_rbot}.lang \
+					"${S}"/data/rbot/templates/lart/larts-${lang_rbot} \
+					"${S}"/data/rbot/templates/lart/praises-${lang_rbot} \
+					"${S}"/data/rbot/templates/salut/salut-${lang_rbot} \
+					"${S}"/po/${lang} &>/dev/null
+			done
+		fi
+
+		${RUBY} /usr/bin/rake makemo || die "locale generation failed"
+	fi
+}
+
+each_ruby_compile() {
+	${RUBY} setup.rb config --prefix="/usr" \
+		|| die "setup.rb install failed"
+}
+
+each_ruby_test() {
+	pushd test || die
+	${RUBY} -Ilib:. -e "Dir['test_*'].each{|f| require f}" || die
+	popd || die
+}
+
+each_ruby_install() {
+	${RUBY} setup.rb install --prefix="${D}" \
+		|| die "setup.rb install failed"
+}
+
+all_ruby_install() {
+	diropts -o rbot -g nobody -m 0700
+	keepdir /var/lib/rbot
+
+	insinto /etc
+	doins "${T}"/rbot.conf
+
+	newinitd "${FILESDIR}/rbot.init2" rbot
+	newconfd "${FILESDIR}/rbot.conf2" rbot
+}
+
+pkg_postinst() {
+	elog "rbot can be started as a normal service."
+	elog "Check /etc/conf.d/rbot file for more information about this feature."
+	ewarn "DEPRECATION NOTICE:"
+	ewarn "The bdb database backend is deprecated and only available on Ruby 1.8."
+	ewarn "To migrate to the new tokyocabinet-based backend, change the core.db"
+	ewarn "parameter in your bot's conf.yaml to 'tc' and restart rbot."
+	ewarn "This procedure requires a Ruby version supporting both BDB and TC."
+}
next             reply	other threads:[~2023-07-09  5:42 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-09  5:42 Hans de Graaff [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-07-25 10:42 [gentoo-commits] repo/gentoo:master commit in: net-irc/rbot/ Hans de Graaff
2024-01-25 10:23 Hans de Graaff
2023-08-19  9:17 Hans de Graaff
2023-03-30 13:04 Hans de Graaff
2021-07-22 19:28 Conrad Kostecki
2021-07-22 19:28 Conrad Kostecki
2021-06-30 10:15 Ulrich Müller
2021-03-09  9:41 Hans de Graaff
2020-05-06 17:25 Michał Górny
2019-04-12 13:58 Hans de Graaff
2018-07-01  7:01 Hans de Graaff
2018-03-26 18:39 Robin H. Johnson
2018-01-21 19:37 Hans de Graaff
2018-01-07 11:21 Ulrich Müller
2017-07-16  6:49 Hans de Graaff
2017-07-15 10:20 Hans de Graaff
2016-12-16 21:06 Hans de Graaff
2016-12-16 21:06 Hans de Graaff
2016-08-28  6:33 Hans de Graaff
2016-08-24 13:25 Lars Wendler
2016-04-03 18:03 Manuel Rüger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox
  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):
  git send-email \
    --in-reply-to=1688881343.f1b4807c840cfdbaa88a3feb910a12812bd79362.graaff@gentoo \
    --to=graaff@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY
  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
  Be sure your reply has a Subject: header at the top and a blank line
  before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox