On Fri, Apr 01, 2022 at 06:45:58PM +0200, Ahmad Fatoum wrote: > Finally, a no-frills way to join the currently relevant $supportgroup. Thx! > > Please squash below for v2, so I don't need to carry patch for > > global.boot.default="$global.boot.default helpme" > > around. Appreciated! Thanks, applied as fixup for now. :) > > -------- 8< -------- > > arch/arm/configs/ircbox_defconfig | 1 + > defaultenv/defaultenv-2-base/boot/helpme | 21 +++++++++++++++++++++ > net/irc.c | 13 +++++++++++-- > 3 files changed, 33 insertions(+), 2 deletions(-) > create mode 100755 defaultenv/defaultenv-2-base/boot/helpme > > diff --git a/arch/arm/configs/ircbox_defconfig b/arch/arm/configs/ircbox_defconfig > index 854a80775d79..0232156e624e 100644 > --- a/arch/arm/configs/ircbox_defconfig > +++ b/arch/arm/configs/ircbox_defconfig > @@ -13,6 +13,7 @@ CONFIG_CONSOLE_ACTIVATE_NONE=y > CONFIG_CONSOLE_ALLOW_COLOR=y > CONFIG_PARTITION_DISK_EFI=y > CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y > +CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW_IKCONFIG=y > CONFIG_STATE=y > CONFIG_BOOTCHOOSER=y > CONFIG_RESET_SOURCE=y > diff --git a/defaultenv/defaultenv-2-base/boot/helpme b/defaultenv/defaultenv-2-base/boot/helpme > new file mode 100755 > index 000000000000..750445f297d7 > --- /dev/null > +++ b/defaultenv/defaultenv-2-base/boot/helpme > @@ -0,0 +1,21 @@ > +#!/bin/sh > + > +. /env/data/config > + > +if [ -n "$CONFIG_ARM" ]; then > + supportgroup="armlinux" > +elif [ -n "$CONFIG_RISCV" ]; then > + supportgroup="riscv" > +elif [ -n "$CONFIG_OPENRISC" ]; then > + supportgroup="openrisc" > +fi > + > +if [ -n "$supportgroup" ]; then > + readline "Want to ask for support on $supportgroup? [Y/n] " linuxsupport > +fi > + > +if [ "$linuxsupport" != "Y" ]; then > + supportgroup=barebox > +fi > + > +irc -n $global.user -c "/j $supportgroup" irc.libera.chat > diff --git a/net/irc.c b/net/irc.c > index 5ce2dbb4c8be..b42d4afc2c30 100644 > --- a/net/irc.c > +++ b/net/irc.c > @@ -469,11 +469,15 @@ static int do_irc(int argc, char *argv[]) > { > int ret; > char *host, *p; > + const char *command = NULL; > uint16_t port = 6667; > int opt; > > - while ((opt = getopt(argc, argv, "n:")) > 0) { > + while ((opt = getopt(argc, argv, "c:n:")) > 0) { > switch (opt) { > + case 'c': > + command = optarg; > + break; > case 'n': > strlcpy(nick, optarg, sizeof(nick)); > break; > @@ -516,6 +520,10 @@ static int do_irc(int argc, char *argv[]) > if (nick[0] == '\0') > strlcpy(nick, "barebox", sizeof(nick)); > irc_login(host, "barebox"); > + > + if (command) > + irc_input(command); > + > while (con->state == TCP_ESTABLISHED) { > int len; > len = irc_readline(input_line, sizeof(input_line) - 1); > @@ -541,11 +549,12 @@ out: > BAREBOX_CMD_HELP_START(irc) > BAREBOX_CMD_HELP_TEXT("Options:") > BAREBOX_CMD_HELP_OPT ("-n NICK\t", "nick to use") > +BAREBOX_CMD_HELP_OPT ("-c COMMAND\t", "command to run after login") > BAREBOX_CMD_HELP_END > > BAREBOX_CMD_START(irc) > .cmd = do_irc, > BAREBOX_CMD_DESC("IRC client") > - BAREBOX_CMD_OPTS("[-n] DESTINATION[[/]PORT]") > + BAREBOX_CMD_OPTS("[-nc] DESTINATION[[/]PORT]") > BAREBOX_CMD_GROUP(CMD_GRP_NET) > BAREBOX_CMD_END > -- > 2.34.1 > > > _______________________________________________ > barebox mailing list > barebox@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/barebox > > > To declare a filtering error, please use the following link : https://www.security-mail.net/reporter.php?mid=15e93.62472cc9.7208e.0&r=jmaselbas%40kalray.eu&s=barebox-bounces%2Bjmaselbas%3Dkalray.eu%40lists.infradead.org&o=Re%3A+Getting+more+of+Barebox&verdict=C&c=727c2b6f1cada1d321c2737135dbdd0d0d4abeda > _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox