Hello community, here is the log from the commit of package jeos-firstboot for openSUSE:Factory checked in at 2018-08-02 14:59:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/jeos-firstboot (Old) and /work/SRC/openSUSE:Factory/.jeos-firstboot.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "jeos-firstboot" Thu Aug 2 14:59:42 2018 rev:15 rq:626903 version:0.0+git20180801.e679773 Changes: -------- --- /work/SRC/openSUSE:Factory/jeos-firstboot/jeos-firstboot.changes 2018-06-22 13:36:02.577187254 +0200 +++ /work/SRC/openSUSE:Factory/.jeos-firstboot.new/jeos-firstboot.changes 2018-08-02 15:00:36.580527184 +0200 @@ -1,0 +2,13 @@ +Wed Aug 01 13:14:24 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.0+git20180801.e679773: + * Don't print errors if plymouth is not installed (bsc#1101879) + * Don't switch to the choosen LANG before fbiterm/kmscon is started + * Replace "tty" call with "ps h -o tty" + * Remove kmscon_localed, now part of upstream kmscon + * Fallback to fbiterm if kmscon not available + * Don't start kmscon on serial consoles + * Improve kmscon call + * kmscon integration + +------------------------------------------------------------------- Old: ---- jeos-firstboot-0.0+git20180615.258b566.tar.xz New: ---- jeos-firstboot-0.0+git20180801.e679773.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ jeos-firstboot.spec ++++++ --- /var/tmp/diff_new_pack.QUbAR3/_old 2018-08-02 15:00:38.320530128 +0200 +++ /var/tmp/diff_new_pack.QUbAR3/_new 2018-08-02 15:00:38.320530128 +0200 @@ -17,7 +17,7 @@ Name: jeos-firstboot -Version: 0.0+git20180615.258b566 +Version: 0.0+git20180801.e679773 Release: 0 Summary: Simple text based JeOS first boot wizard License: MIT ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.QUbAR3/_old 2018-08-02 15:00:38.364530203 +0200 +++ /var/tmp/diff_new_pack.QUbAR3/_new 2018-08-02 15:00:38.368530210 +0200 @@ -1,4 +1,4 @@ <servicedata> <service name="tar_scm"> <param name="url">git://github.com/openSUSE/jeos-firstboot.git</param> - <param name="changesrevision">3d5d163ddbb89737791dc3e712e15fb7898c871e</param></service></servicedata> \ No newline at end of file + <param name="changesrevision">e6797737ca47752b5b84a375e25cb4a69ad15ace</param></service></servicedata> \ No newline at end of file ++++++ jeos-firstboot-0.0+git20180615.258b566.tar.xz -> jeos-firstboot-0.0+git20180801.e679773.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeos-firstboot-0.0+git20180615.258b566/files/usr/lib/jeos-firstboot new/jeos-firstboot-0.0+git20180801.e679773/files/usr/lib/jeos-firstboot --- old/jeos-firstboot-0.0+git20180615.258b566/files/usr/lib/jeos-firstboot 2018-06-15 09:58:44.000000000 +0200 +++ new/jeos-firstboot-0.0+git20180801.e679773/files/usr/lib/jeos-firstboot 2018-08-01 15:12:16.000000000 +0200 @@ -65,7 +65,7 @@ echo .oOo.oOo.oOo. > $dialog_out rm -f "$dialog_out" kill -s SIGRTMAX-10 1 - run setterm -msglevel 4 + run setterm -msglevel 4 2>/dev/null } trap cleanup EXIT @@ -131,64 +131,94 @@ [ -n "$list" ] } -default="en_US" -[ -f /etc/locale.conf ] && locale_lang="$(awk -F= '$1 == "LANG" { split($2,fs,"."); print fs[1]; exit }' /etc/locale.conf)" -[ -n "$locale_lang" ] && default="$locale_lang" - -if findlocales && d --default-item "$default" --menu $"Select System Locale" 0 0 $dh_menu "${list[@]}"; then - if [ -n "$result" ]; then - locale="${result}.UTF-8" - systemd_firstboot_args+=("--locale=$locale") - LANG="$locale" - export LANG - - # Run langset to get consolefont and keymap set up - run langset.sh $locale || warn $"Setting the locale failed" - fi +if [ -z "$LOCALE_PRESET" ]; then + default="en_US" + [ -f /etc/locale.conf ] && locale_lang="$(awk -F= '$1 == "LANG" { split($2,fs,"."); print fs[1]; exit }' /etc/locale.conf)" + [ -n "$locale_lang" ] && default="$locale_lang" + + if findlocales && d --default-item "$default" --menu $"Select System Locale" 0 0 $dh_menu "${list[@]}"; then + if [ -n "$result" ]; then + locale="${result}.UTF-8" + systemd_firstboot_args+=("--locale=$locale") + + # Run langset to get consolefont and keymap set up + run langset.sh $locale || warn $"Setting the locale failed" + fi + else + d --msgbox $"Error setting locale" 0 0 + fi else - d --msgbox $"Error setting locale" 0 0 + locale="$LOCALE_PRESET" + systemd_firstboot_args+=("--locale=$locale") fi -if [ -e "$EULA_FILE" -a ! -e "${EULA_FILE%/*}/no-acceptance-needed" ]; then - [ -n "${locale}" ] && language="${locale%%_*}" || language="en" +if [ -z "$KEYTABLE_PRESET" ]; then + default="us" + [ -f /etc/vconsole.conf ] && vconsole_keymap="$(awk -F= '$1 == "KEYMAP" { split($2,fs,"."); print fs[1]; exit }' /etc/vconsole.conf)" + [ -n "$vconsole_keymap" ] && default="$vconsole_keymap" + + if findkeymaps \ + && d --default-item "$default" --menu $"Select Keyboard Layout" 0 0 $dh_menu "${list[@]}"; then + if [ -n "$result" ]; then + keytable="$result" + + # Activate the selected keyboard layout + run langset.sh "$locale" "$keytable" || warn $"Setting the keyboard layout failed" + fi + else + d --msgbox $"Error setting keyboard" 0 0 + fi +else + keytable="$result" +fi + +[ -n "${locale}" ] && language="${locale%%_*}" || language="en" +force_english_license=0 +export LANG="$locale" +if [[ "$(ps h -o tty -p $$)" = tty[0-9]* ]]; then # Those languages can't be displayed in the console - declare -A use_english_license - use_english_license["ja"]=1 - use_english_license["zh"]=1 - use_english_license["ko"]=1 - - if [ -n "$locale" -a -z "${use_english_license[${language}]+_}" ]; then - for i in "${EULA_FILE%.txt}.$locale.txt" \ - "${EULA_FILE%.txt}.${locale%%.UTF-8}.txt" \ - "${EULA_FILE%.txt}.${language}.txt"; do - if [ -e "$i" ]; then - EULA_FILE="$i" - break - fi - done + declare -A start_kmscon + start_kmscon["cs"]=1 + start_kmscon["ja"]=1 + start_kmscon["zh"]=1 + start_kmscon["ko"]=1 + + if [ -n "$locale" -a -n "${start_kmscon[${language}]+_}" ]; then + export LOCALE_PRESET="$locale" + export KEYTABLE_PRESET="$keytable" + + if kmscon_available; then + ret_file="$(mktemp)" + kmscon --silent --font-size 10 --palette vga --no-reset-env -l -- /bin/sh -c "$0; echo \$? > $ret_file; kill \$PPID" + exit $(cat "$ret_file"; rm -f "$ret_file") + elif fbiterm_available; then + exec fbiterm -- "$0" + else + # No kmscon or fbiterm, fall back to english + export LANG="en_US.UTF-8" + force_english_license=1 + fi fi +fi + +if [ -e "$EULA_FILE" -a ! -e "${EULA_FILE%/*}/no-acceptance-needed" ]; then + if [ "$force_english_license" = "0" ]; then + for i in "${EULA_FILE%.txt}.$locale.txt" \ + "${EULA_FILE%.txt}.${locale%%.UTF-8}.txt" \ + "${EULA_FILE%.txt}.${language}.txt"; do + if [ -e "$i" ]; then + EULA_FILE="$i" + break + fi + done + fi + while ! d --textbox "$EULA_FILE" $dh_text 85 --and-widget --yesno $"Do you agree with the terms of the license?" 0 0; do d --msgbox $"Well, we cannot continue then ..." 6 40 done fi -default="us" -[ -f /etc/vconsole.conf ] && vconsole_keymap="$(awk -F= '$1 == "KEYMAP" { split($2,fs,"."); print fs[1]; exit }' /etc/vconsole.conf)" -[ -n "$vconsole-keymap" ] && default="$vconsole_keymap" - -if findkeymaps \ - && d --default-item "$default" --menu $"Select Keyboard Layout" 0 0 $dh_menu "${list[@]}"; then - if [ -n "$result" ]; then - keytable="$result" - - # Activate the selected keyboard layout - run langset.sh "$locale" "$keytable" || warn $"Setting the keyboard layout failed" - fi -else - d --msgbox $"Error setting keyboard" 0 0 -fi - default="$(readlink /etc/localtime)" default="${default##/usr/share/zoneinfo/}" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeos-firstboot-0.0+git20180615.258b566/files/usr/lib/jeos-firstboot-functions new/jeos-firstboot-0.0+git20180801.e679773/files/usr/lib/jeos-firstboot-functions --- old/jeos-firstboot-0.0+git20180615.258b566/files/usr/lib/jeos-firstboot-functions 2018-06-15 09:58:44.000000000 +0200 +++ new/jeos-firstboot-0.0+git20180801.e679773/files/usr/lib/jeos-firstboot-functions 2018-08-01 15:12:16.000000000 +0200 @@ -43,4 +43,21 @@ EOF } +kmscon_available() { + # kmscon itself is installed + kmscon --help >/dev/null 2>&1 || return 1 + # At least one monospace font is available + [ -n "$(fc-match "monospace" 2>/dev/null)" ] || return 1 + + return 0 +} + +fbiterm_available() { + # fbiterm itself is installed + fbiterm --help >/dev/null 2>&1 || return 1 + # fbiterm comes with its own fallback font + + return 0 +} + # vim: syntax=sh diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeos-firstboot-0.0+git20180615.258b566/files/usr/lib/systemd/system/jeos-firstboot.service new/jeos-firstboot-0.0+git20180801.e679773/files/usr/lib/systemd/system/jeos-firstboot.service --- old/jeos-firstboot-0.0+git20180615.258b566/files/usr/lib/systemd/system/jeos-firstboot.service 2018-06-15 09:58:44.000000000 +0200 +++ new/jeos-firstboot-0.0+git20180801.e679773/files/usr/lib/systemd/system/jeos-firstboot.service 2018-08-01 15:12:16.000000000 +0200 @@ -23,7 +23,7 @@ Type=oneshot Environment=SYSTEMCTL_OPTIONS=--ignore-dependencies TERM=linux RemainAfterExit=yes -ExecStartPre=-/usr/bin/plymouth quit +ExecStartPre=/bin/sh -c "/usr/bin/plymouth quit 2>/dev/null || :" ExecStart=/usr/lib/jeos-firstboot ExecStartPost=/usr/bin/rm -f /var/lib/YaST2/reconfig_system StandardOutput=tty