Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package grml-zsh-config for openSUSE:Factory
checked in at 2026-02-16 13:14:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/grml-zsh-config (Old)
and /work/SRC/openSUSE:Factory/.grml-zsh-config.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "grml-zsh-config"
Mon Feb 16 13:14:33 2026 rev:22 rq:1333292 version:0.19.27
Changes:
--------
--- /work/SRC/openSUSE:Factory/grml-zsh-config/grml-zsh-config.changes
2026-01-20 21:03:57.914617295 +0100
+++
/work/SRC/openSUSE:Factory/.grml-zsh-config.new.1977/grml-zsh-config.changes
2026-02-16 13:19:28.639458826 +0100
@@ -1,0 +2,10 @@
+Mon Feb 16 09:06:20 UTC 2026 - Michael Vetter <[email protected]>
+
+- Update to 0.19.27:
+ * zshrc: fix ROT13 alias (abk R)
+ * Install grml-chroot into /usr/sbin
+ * Conflict with old grml-scripts
+ * Import grml-chroot manpage
+ * zshrc: switch to myip.grml.org with IPv6 support
+
+-------------------------------------------------------------------
Old:
----
v0.19.26.tar.gz
New:
----
v0.19.27.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ grml-zsh-config.spec ++++++
--- /var/tmp/diff_new_pack.FC7eB9/_old 2026-02-16 13:19:29.519495415 +0100
+++ /var/tmp/diff_new_pack.FC7eB9/_new 2026-02-16 13:19:29.527495747 +0100
@@ -17,7 +17,7 @@
Name: grml-zsh-config
-Version: 0.19.26
+Version: 0.19.27
Release: 0
Summary: Zsh config ujed by grml
License: GPL-2.0-only
++++++ v0.19.26.tar.gz -> v0.19.27.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/debian/changelog
new/grml-etc-core-0.19.27/debian/changelog
--- old/grml-etc-core-0.19.26/debian/changelog 2025-12-11 23:48:40.000000000
+0100
+++ new/grml-etc-core-0.19.27/debian/changelog 2026-02-12 16:22:36.000000000
+0100
@@ -1,3 +1,18 @@
+grml-etc-core (0.19.27) grml-testing; urgency=medium
+
+ [ Michael Prokop ]
+ * [8d30868] zshrc: switch to myip.grml.org with IPv6 support, options -4 +
+ -6 to force respective protocols
+
+ [ Chris Hofstaedtler ]
+ * [f66b785] zshrc: fix ROT13 alias (abk R)
+ Thanks to damianoognissanti
+ * [22373a2] Install grml-chroot into /usr/sbin
+ * [00aef2a] Conflict with old grml-scripts
+ * [f19d738] Import grml-chroot manpage
+
+ -- Chris Hofstaedtler <[email protected]> Thu, 12 Feb 2026
16:14:36 +0100
+
grml-etc-core (0.19.26) grml-testing; urgency=medium
* [8fa76a8] Add myip function
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/debian/control
new/grml-etc-core-0.19.27/debian/control
--- old/grml-etc-core-0.19.26/debian/control 2025-12-11 23:48:40.000000000
+0100
+++ new/grml-etc-core-0.19.27/debian/control 2026-02-12 16:22:36.000000000
+0100
@@ -16,13 +16,15 @@
Package: grml-etc-core
Architecture: all
Breaks:
+ grml-scripts (<< 2.15.0~),
grml-tips (<< 0.8.5)
Conflicts:
grml-autoconfig (<< 0.5-7),
grml-etc (<< 0.8-11),
- grml-scripts (<< 0.8-27),
+ grml-scripts (<< 2.15.0~),
grml-scripts-core (<< 2.1.5~),
Replaces:
+ grml-scripts (<< 2.15.0~),
grml-scripts-core (<< 2.1.5~),
vim-common,
Provides:
@@ -41,3 +43,4 @@
systems as well.
This package also includes cpu-screen and ip-screen,
as they are used by the included screen configuration.
+ This package also includes grml-chroot.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/debian/grml-etc-core.manpages
new/grml-etc-core-0.19.27/debian/grml-etc-core.manpages
--- old/grml-etc-core-0.19.26/debian/grml-etc-core.manpages 2025-12-11
23:48:40.000000000 +0100
+++ new/grml-etc-core-0.19.27/debian/grml-etc-core.manpages 2026-02-12
16:22:36.000000000 +0100
@@ -1,2 +1,3 @@
doc/grmlzshrc.5
+doc/grml-chroot.8
manpages/*.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/debian/install
new/grml-etc-core-0.19.27/debian/install
--- old/grml-etc-core-0.19.26/debian/install 2025-12-11 23:48:40.000000000
+0100
+++ new/grml-etc-core-0.19.27/debian/install 2026-02-12 16:22:36.000000000
+0100
@@ -1,3 +1,4 @@
etc
usr_bin/* usr/bin/
+usr_sbin/* usr/sbin/
usr_share_grml/* usr/share/grml/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/doc/Makefile
new/grml-etc-core-0.19.27/doc/Makefile
--- old/grml-etc-core-0.19.26/doc/Makefile 2025-12-11 23:48:40.000000000
+0100
+++ new/grml-etc-core-0.19.27/doc/Makefile 2026-02-12 16:22:36.000000000
+0100
@@ -1,20 +1,24 @@
-MANPAGES = grmlzshrc.5
-HTMLPAGES = grmlzshrc.html
+MANPAGES = grmlzshrc.5 grml-chroot.8
+HTMLPAGES = grmlzshrc.html grml-chroot.html
all: $(MANPAGES) $(HTMLPAGES)
.SUFFIXES:
-.SUFFIXES: .adoc .5 .html
+.SUFFIXES: .adoc .5 .8 .html
.adoc.5:
@printf 'ASCIIDOCTOR %s\n' "$@"
@asciidoctor -b manpage -o$@ $<
+.adoc.8:
+ @printf 'ASCIIDOCTOR %s\n' "$@"
+ @asciidoctor -b manpage -o$@ $<
+
.adoc.html:
@printf 'ASCIIDOCTOR %s\n' "$@"
@asciidoctor -b html5 -o$@ $<
clean:
- rm -f *.5 *.html *.gz *~
+ rm -f *.5 *.8 *.html *.gz *~
.PHONY: all clean
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/doc/grml-chroot.adoc
new/grml-etc-core-0.19.27/doc/grml-chroot.adoc
--- old/grml-etc-core-0.19.26/doc/grml-chroot.adoc 1970-01-01
01:00:00.000000000 +0100
+++ new/grml-etc-core-0.19.27/doc/grml-chroot.adoc 2026-02-12
16:22:36.000000000 +0100
@@ -0,0 +1,35 @@
+= GRML-CHROOT(8)
+:doctype: manpage
+
+== Name
+
+grml-chroot - Wrapper around chroot with proc/sys/pts/dev filesystem handling
+
+== Synopsis
+
+*grml-chroot* _NEWROOT_ [_COMMAND_...]
+
+== Description
+
+*grml-chroot* is a wrapper around plain chroot with integrated
+proc/sys/pts/dev filesystem handling. After _COMMAND_ exits, mounts are
+cleaned up properly.
+
+== Options
+
+*-h, help*::
+Show summary of options.
+
+== Examples
+
+*grml-chroot* _/mnt/hda1_::
+Mounts proc/sys/pts/dev into /mnt/hda1/{proc/sys/dev} and gives you a
+chrooted shell.
+
+== See also
+
+chroot(8)
+
+== Author
+
+grml-chroot and this manpage were written by Michael Gebetsroither
<[email protected]>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/etc/zsh/zshrc
new/grml-etc-core-0.19.27/etc/zsh/zshrc
--- old/grml-etc-core-0.19.26/etc/zsh/zshrc 2025-12-11 23:48:40.000000000
+0100
+++ new/grml-etc-core-0.19.27/etc/zsh/zshrc 2026-02-12 16:22:36.000000000
+0100
@@ -982,7 +982,7 @@
'LL' '|& less -r'
'M' '| most'
'N' '&>/dev/null' #d (No Output)
- 'R' '| tr A-z N-za-m' #d (ROT13)
+ 'R' '| tr A-Za-z N-ZA-Mn-za-m' #d (ROT13)
'SL' '| sort | less'
'S' '| sort -u'
'T' '| tail'
@@ -3443,9 +3443,14 @@
compdef _simple_extract simple-extract
[[ -n "$GRML_NO_SMALL_ALIASES" ]] || alias se=simple-extract
-#f5# Show "public" IPv4 address of current system on stdout. Requires network
access and curl(1).
+#f5# Show "public" IP address of current system on stdout. Requires network
access and curl(1).
function myip () {
- curl http://v4.showip.spamt.net/ -H 'User-Agent: grml-etc-core-zshrc'
+ if [[ $# == 0 ]] || [[ $# == 1 && $1 == "-4" ]] || [[ $# == 1 && $1 ==
"-6" ]] ; then
+ curl "$@" https://myip.grml.org -H 'User-Agent: grml-etc-core-zshrc'
+ else
+ printf 'usage: myip [-4|-6]\n' >&2
+ return 1
+ fi
}
#f5# Change the xterm title from within GNU-screen
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grml-etc-core-0.19.26/usr_sbin/grml-chroot
new/grml-etc-core-0.19.27/usr_sbin/grml-chroot
--- old/grml-etc-core-0.19.26/usr_sbin/grml-chroot 1970-01-01
01:00:00.000000000 +0100
+++ new/grml-etc-core-0.19.27/usr_sbin/grml-chroot 2026-02-12
16:22:36.000000000 +0100
@@ -0,0 +1,130 @@
+#!/bin/bash
+# Filename: grml-chroot
+# Purpose: Program to chroot into another system
+# Authors: grml-team (grml.org), (c) Michael Gebetsroither
<[email protected]>
+# Bug-Reports: see http://grml.org/bugs/
+# License: This file is licensed under the GPL v2.
+################################################################################
+
+PROG_NAME_=$(basename "$0")
+DEST_=""
+MOUNTED_="" # all mounted destinations
+
+
+function die
+{
+ echo "Error: $*" >&2
+ exit 1
+}
+
+function printUsage
+{
+ cat <<EOT
+Usage: "$PROG_NAME_" NEWROOT [COMMAND....]
+
+$PROG_NAME_ is a chroot wrapper with proc/sys/pts/dev filesystem handling
+
+EOT
+}
+
+function storeMounts
+{
+ local to_append_="$1"
+ if [[ $MOUNTED_ == "" ]]; then
+ MOUNTED_="$to_append_"
+ else
+ MOUNTED_="$MOUNTED_ $to_append_"
+ fi
+}
+
+function mountit
+{
+ local type_="$1" # type _or_ src
+ local dest_="$2"
+ local options_="$3"
+
+ local all_options_=()
+
+ if [[ $options_ == "--bind" ]]; then
+ all_options_+=(--bind "$type_")
+ else
+ all_options_+=(-t "$type_" none)
+ fi
+ mount "${all_options_[@]}" "${DEST_}/$dest_" && storeMounts "$dest_"
+}
+
+function umount_all
+{
+ local reverse
+ reverse=$(echo "$MOUNTED_" | awk '{ for (i=NF; i>1; i--) printf("%s ",$i);
print $1; }')
+ for i in $reverse; do
+ umount "${DEST_}/$i"
+ done
+}
+
+
+###
+### __MAIN
+###
+
+while getopts "h" opt; do
+ case "$opt" in
+ h) printUsage; exit 0 ;;
+ ?) printUsage; exit 64 ;;
+ esac
+done
+shift $((OPTIND - 1))
+
+if (( $# < 1 )); then
+ printUsage
+ die "Wrong number of arguments."
+fi
+
+if ! command -v awk >/dev/null 2>&1 ; then
+ die "No awk binary found, required for execution."
+fi
+
+DEST_="$1"; shift
+
+if [ ! -d "$DEST_" ]; then
+ die "Target chroot does not exist: $DEST_"
+fi
+
+
+
+if [ -f "$DEST_"/proc/cmdline ] ; then
+ echo "Looks like $DEST_ already has filesystems mounted, skipping."
+else
+ mountit "proc" "proc"
+ mountit "sysfs" "sys"
+ mountit "/dev" "dev" "--bind"
+ mountit "devpts" "dev/pts"
+ if [ -d /sys/firmware/efi/efivars ] ; then
+ mountit "efivarfs" "sys/firmware/efi/efivars"
+ fi
+ if [ -d "$DEST_"/run/udev ] && [ -d /run/udev ] ; then
+ mountit "/run/udev" "/run/udev" "--bind"
+ fi
+fi
+
+WROTE_DEBIAN_CHROOT=""
+if [ ! -f "$DEST_"/etc/debian_chroot ]; then
+ WROTE_DEBIAN_CHROOT="yes"
+ echo "Writing /etc/debian_chroot ..."
+ cat "$DEST_"/etc/hostname > "$DEST_"/etc/debian_chroot
+fi
+
+if (( $# < 1 )); then
+ chroot "$DEST_"
+ RC=$?
+else
+ chroot "$DEST_" "$@"
+ RC=$?
+fi
+umount_all
+
+if [ -n "$WROTE_DEBIAN_CHROOT" ]; then
+ rm "$DEST_"/etc/debian_chroot
+fi
+
+exit $RC