You are not logged in.
Lenovo T440 installed with latest BL 64 bit iso.
Just updated/upgraded. Installed 44 upgrades.
1. Testing BL-menu > System > Printers > Install Printer support
Reading package lists... Done
There were problems during the update.
Press "d" for details (q to quit) d
ERROR MESSAGE:
Sorry, try again.
------------------------------------
Would you like to quit now, or continue anyway?
(Be careful!)
Enter "q" to quit, "c" to continue:
Choosing d, shows no helpfull error message, instead of details.
"Fat fingers", aborted instead of continuing.
Next run ok.
Nothing in ../log/apt/ to shed light over what happened previous.
2. Menu [...] Install selected packages [...] Install Mhwaveedit
Console windows pops up and disapears before I have a chans to see any text.
"apt install mhwaveedit" works ok and the alternativ to install is gone from the menu.
No more errors in Meny > System found.
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline
Thanks for the feedback!
At first, I could not reproduce these errors. Both those installations from the System menu went OK on my Lithium VM.
The first "Sorry, try again" looks to me very much like what sudo returns after a wrong password input, and because it came after "There were problems during the update" I think it happened when safeUpdate() (in /usr/lib/bunsen/bl-includes) was called by promptInstall() (same file) from /usr/bin/bl-printing-pipemenu.
What seems to be happening is that if a user mistypes their password, while they are reprompted by apt, the message "Sorry, try again" is treated as an error message, stored up (not displayed to user) and triggers an error exit of the whole function, even if they get the pasword right the second time. This will need some thought to fix...
And thank you for discovering it!
---
As for mhwaveedit, if you have time, I wonder if you could uninstall it, and try installing from the menu one more time?
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
If I typed wrong password apt would not start read package lists. It would ask again, three times:
Updating sources...
[sudo] password for rbh:
[sudo] password for rbh:
[sudo] password for rbh:
There were problems during the update.
Press "d" for details (q to quit) s Press "d" for details (q to quit) d
ERROR MESSAGE:
Sorry, try again.
Sorry, try again.
sudo: 3 incorrect password attempts
------------------------------------
Would you like to quit now, or continue anyway?
(Be careful!)
Enter "q" to quit, "c" to continue:
After removing mhwaveedit, I again have an terminal window that popups and disapere.
What script is the menu calling. what to type in terminal instead?
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline
^Yes, the wrong-password error is a bit of missing logic in the script. If you feel like testing it, you could paste the code below into /usr/lib/bunsen/common/bl-includes which I think/hope fixes the apt functions.
---
But, mhwaveedit... Does the terminal disappear the same way when trying to install other apps from the same menu?
The pipemenu is /usr/bin/bl-install-pipemenu, so first, you could try
bash -x /usr/bin/bl-install-pipemenu --install mhwaveedit > install-log 2>&1
and have a look at the end of the "install-log" file for hints.
BTW what terminal emulator are you using?
------------------
Here's the proposed new code for bl-includes:
# bl-includes - Variables and functions commonly used in custom scripts
# for Bunsen Labs Linux.
# Copyright (C) 2012 Philip Newborough <corenominal@corenominal.org>
# Copyright (C) 2013 Aleks-Daniel Jakimenko
# Copyright (C) 2016 xaos52 <xaos52@gmail.com>
# Copyright (C) 2015-2020 John Crawley <john@bunsenlabs.org>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# These functions can be used in user scripts too, by first sourcing this file, eg:
# BL_COMMON_LIBDIR='/usr/lib/bunsen/common'
# if ! . "$BL_COMMON_LIBDIR/bl-includes" 2> /dev/null; then
# echo $"Error: Failed to locate bl-includes in $BL_COMMON_LIBDIR" >&2
# exit 1
# fi
# NOTE: Do not source this file in non-Bash shell scripts.
# It uses some "bashisms".
######## jgmenu versions of OB menu creation functions #################
# Associative array menu_content is generated.
# Submenu content is stored under index of its tag,
# 'root' indexes the root menu.
# Put an item in the root menu or any submenu.
# Usage: jgmenuItem tag label command
# Tag 'root' indicates root menu item.
jgmenuItem() {
_jgmenuSetHeader "$1"
menu_content[$1]+="\"\"\"$(pangoEscape "${2}")\"\"\"","\"\"\"${3}\"\"\""$'\n'
}
# Add a separator.
# Usage: jgmenuSeparator tag [label]
jgmenuSeparator() {
_jgmenuSetHeader "$1"
menu_content[$1]+="^sep($(pangoEscape "${2-}"))"$'\n'
}
# Put a checkout() for a submenu in the root menu or any submenu.
# Usage jgmenuSubmenu tag(parentmenu) tag(submenu) label
jgmenuSubmenu() {
_jgmenuSetHeader "$1"
menu_content[$1]+="\"\"\"$(pangoEscape "${3}")\"\"\",^checkout($2)"$'\n'
}
# Print root menu, then submenus.
jgmenuEnd() {
printf '%b\n' "${menu_content[root]}"
unset 'menu_content[root]'
for i in "${!menu_content[@]}"
do
printf '%b\n' "${menu_content[$i]}"
done
unset 'menu_content'
}
# Initiates array and sets header for submenu when first content is added.
# Do not call this function directly.
# Usage: _jgmenuSetHeader tag
_jgmenuSetHeader(){
declare -Ag menu_content
[[ $1 != root && -z ${menu_content[$1]} ]] && {
menu_content[$1]="^tag($1)"$'\nBack,^back()\n'
}
}
pangoEscape() {
local string="${1//&/&}"
string="${string//</<}"
string="${string//>/>}"
printf '%s' "$string"
}
########## end jgmenu functions ################
####### Functions to generate Openbox menus. ###########################
menuStart() {
echo ' <openbox_pipe_menu>'
}
# Usage: menuItem label command
menuItem() {
echo " <item label=\"$(OBlabelEscape "$1")\">
<action name=\"Execute\">
<command>
$(XMLescape "$2")
</command>
</action>
</item>"
}
# Usage: menuSeparator [label]
menuSeparator() {
if [[ ${1-} ]]; then
echo " <separator label=\"$(OBlabelEscape "$1")\"/>"
else
echo ' <separator/>'
fi
}
# Usage menuSubmenu id label # http://openbox.org/wiki/Help:Menus
menuSubmenu() {
echo " <menu id=\"$(XMLescape "$1")\" label=\"$(OBlabelEscape "$2")\">"
}
menuSubmenuEnd() {
echo ' </menu>'
}
menuEnd() {
echo ' </openbox_pipe_menu>'
}
# escape special characters
XMLescape() {
local string="${1//&/&}"
string="${string//</<}"
string="${string//>/>}"
string="${string//\"/"}"
string="${string//\'/'}"
printf '%s' "$string"
}
OBlabelEscape() {
local string="$(XMLescape "$1")"
printf '%s' "${string//_/__}"
}
########################################################################
# rerun the calling script in terminal if necessary
# Usage: terminalCheck [ -T title ] [arguments...]
terminalCheck() {
if ! [[ -t 0 && -t 1 && -t 2 ]]; then # not attached to terminal
if [[ -n $DISPLAY ]]; then # running X
local -a termcmd args
local termname
if [[ ${1-} = '-T' ]];then
local title=${2-}
shift 2
fi
termname=$( readlink /etc/alternatives/x-terminal-emulator )
termname=${termname##*/}
badterm_msg="$0: $termname is not supported.
Please choose a different x-terminal-emulator."
case $termname # cope with terminal inconsistencies
in
lxterminal)
termcmd=(lxterminal --no-remote) # otherwise lxterminal does not start a new process
[[ -n $title ]] && termcmd+=(-T "$title")
args=(-e)
;;
mate-terminal.wrapper)
termcmd=(mate-terminal --disable-factory) # mate-terminal.wrapper does not support --disable-factory
[[ -n $title ]] && termcmd+=(-t "$title") # but mate-terminal needs -t for -T option
args=(-x)
;;
gnome-terminal.wrapper)
termcmd=(gnome-terminal --wait) # gnome-terminal.wrapper does not support --wait
[[ -n $title ]] && termcmd+=(-t "$title") # but gnome-terminal needs -t for -T option
args=(--) # -x is deprecated
;;
tilix.wrapper)
termcmd=(tilix --new-process) # tilix.wrapper does not support --new-process
[[ -n $title ]] && termcmd+=(-t "$title") # but tilix needs -t for -T option
args=(-e)
;;
qterminal|terminology)
echo "$badterm_msg" >&2
exit 1
;;
*)
termcmd=(x-terminal-emulator) # the normal case
[[ -n $title ]] && termcmd+=(-T "$title")
args=(-e)
;;
esac
args+=("$0" "$@")
exec "${termcmd[@]}" "${args[@]}"
else
echo "$0: no terminal" >&2
exit 1
fi
fi
}
# Usage: createFlag filename
createFlag() {
mkdir -p "$HOME/.config/bunsen"
touch "$HOME/.config/bunsen/$1"
}
# Check the connection by downloading a file from ftp.debian.org. No disk space used.
# Usage: connectiontest [attempts]
# If attempt count is not specified or 0, then it will loop forever and exit(!) your main program with 1 exit status.
connectiontest() {
local TEXT_CHECKING='Checking internet connection...'
local TEXT_FAILED='Internet connection test failed!'
local TEXT_ASK_RETRY=$'\n\nThis script requires a working internet connection. Please configure your internet connection, then hit "Enter" to continue, else hit "q" to quit.'
local TEXT_ABORT='Script aborted.'
local TEXT_OK='Internet connection test passed!'
local -i i attempts=${1-0}
for (( i=0; i < attempts || attempts == 0; i++ )); do
say "$TEXT_CHECKING"
if wget -O - 'http://ftp.debian.org/debian/README' &> /dev/null; then
say "$TEXT_OK" 1
return 0
fi
say "$TEXT_FAILED"
if (( i == attempts - 1 )); then # if last attempt
return 1
elif prompt "$TEXT_ASK_RETRY" Q; then # if user wants to quit
say "$TEXT_ABORT" 2
(( attempts == 0 )) && exit 1 || return 1
fi
tput clear
done
}
# Check for availability of commands used in script.
# Usage: declareDependencies command [command...]
declareDependencies(){
local missing_commands=() i=
for i in "$@"
do
hash "$i" 2>/dev/null || missing_commands+=(" $i")
done
[[ ${missing_commands[0]} ]] && errorExit "This script requires the following commands: ${missing_commands[*]}
Please install the packages containing the missing commands
and rerun the script."
}
########################################################################
# User interface functions.
# Usage: say text [delayAfterText|pause]
say() {
local width=$(tput cols 2>/dev/tty)
fold -s -w $((width - 3)) <<< "${1-}" | sed 's/^/ /' # wraps text nicely and adds two leading spaces
if [[ ${2-} = 'pause' ]]
then
echo $'\nPress any key to continue.'
read -srn1
else
sleep "${2:-0}"
fi
}
# Usage errorExit message [details]
errorExit() {
say $'\n'"$1"$'\n' '1' >&2
[[ ${2-} ]] && {
while true
do
local REPLY
read -rn1 -p ' Press "d" for details (q to quit) '
[[ ${REPLY^} = Q ]] && exit 1
[[ ${REPLY^} = D ]] && {
echo $'\n\n'
#tput setaf 1
echo "ERROR MESSAGE:
$2
------------------------------------" >&2
#tput sgr0
say "
Would you like to quit now, or continue anyway?
(Be careful!)
Enter \"q\" to quit, \"c\" to continue:
"
read -r
[[ ${REPLY^} = Q ]] && exit 1
[[ ${REPLY^} = C ]] && return 0
}
done
}
say 'Press any key to exit.'
read -srn1
exit 1
}
# Usage: prompt text [ Y | N | Q | <string> ]
prompt() {
local answer prompt default
if [[ ${2-} && ${2^} = Q ]]; then
while true; do
read -srn1 -p "$1" answer
echo
[[ ${answer^} = Q ]] && return 0
[[ ! $answer ]] && return 1
done
fi
if [[ ! ${2-} || ${2^} = Y ]]; then
prompt='Y/n'
default='Y'
elif [[ ${2^} = N ]]; then
prompt='y/N'
default='N'
else
prompt=
default=
fi
while true; do
read -r -p "$1 ${prompt:+[$prompt] }" answer
if [[ ! $prompt && ! $default ]]; then
if [[ $answer = "${2-}" ]]; then
echo
return 0
elif [[ ${answer^} = Q ]]; then
echo
return 1
else
continue
fi
fi
[[ ! $answer ]] &&
answer=$default
if [[ ${answer^} = Y || ${answer^^} = YES ]]; then
echo
return 0
elif [[ ${answer^} = N || ${answer^^} = NO ]]; then
echo
return 1
fi
done
}
# Usage: promptInstall name description [--apt-get-option] package [package...]
# To have some defined function - functionname - run first, use:
# promptInstall --setup functionname name desc...
promptInstall() {
local setupFunction=
if [[ $1 = '--setup' ]]; then
if [[ -n ${2-} && $(type -t "$2") = 'function' ]]; then
setupFunction="$2"
shift 2
else
say "Error: ${2-} is not a function."
return 1
fi
fi
tput clear
local title="INSTALL ${1^^}"
say "
$title
${title//?/-}
$2
"
prompt ' Run the installer now?' || return 1
tput clear
connectiontest || return 1
if [[ -n $setupFunction ]]; then
"$setupFunction" || return 1 # run setup function if it exists
fi
tput clear
say 'Updating sources...' 1
safeUpdate || say 'Continuing in spite of update problems...' 3
tput clear
say 'Installing package...' 1
safeInstall "${@:3}" || return 1
tput clear
say "
$1 has been installed successfully.
Hit any key to exit..."
read -srn1
return 0
}
########################################################################
# Package handling functions.
# outputs pin value and origin repo url if package is installed.
# returns 1 if package is not installed
# Usage: checkOrigin package
checkOrigin() {
apt-cache policy "$1" | sed -nr '/\*\*\*/ {n;s/^[ \t]*([0-9]+[ \t]+[^ \t]+).*$/\1/p;q0};${q1}'
}
# outputs version of installed package
# returns 1 if package is not installed
# Usage: checkVersion package
checkVersion() {
#apt-cache policy $1 | sed -nr '/\*\*\*/ {s/^[ \t]*\*\*\*[ \t]+([0-9a-z:.+~-]+)[ \t]+.*$/\1/p;q0};${q1}'
dpkg-query --show --showformat='${Version}' "$1" 2>/dev/null
}
# returns success if all packages are already installed
# Usage: allInstalled package [package...]
allInstalled() {
local pkg=
for pkg in "$@"
do
[[ $(dpkg-query --show --showformat='${db:Status-Abbrev;2}' "$pkg" 2>/dev/null) = ii ]] || return 1
# fast but returns false positive if files remain in /etc
#[[ -f /var/lib/dpkg/info/${pkg}.list ]] || return 1
done
return 0
}
# Apt-get functions.
# apt-get update, exit if error message.
# safeUpdate --ignore 'string' to ignore certain error message
safeUpdate() {
local ignore_string=
local ignore_string_pw='Sorry, try again.' # message if password mistyped
[[ ${1-} = '--ignore' ]] && {
ignore_string="${2-}"
}
local apt_error
if exec 3>&1; apt_error=$(LC_MESSAGES=C sudo apt-get update 2>&1 1>&3) && {
[[ -z "$apt_error" ]] || ! grep -iqEv "(${ignore_string_pw:-$^}|${ignore_string:-$^}|^$)" <<<"$apt_error"
}
then
exec 3>&-
say 'Finished update' 1
return 0
else
exec 3>&-
errorExit 'There were problems during the update.' "$apt_error"
return 1
fi
}
# apt-get upgrade, exit if error message.
# safeUpgrade [--dist-upgrade (for dist-upgrade)] [--apt-get-option]
safeUpgrade() {
local cmd='upgrade'
[[ ${1-} = '--dist-upgrade' ]] && {
cmd='dist-upgrade'
shift
}
local ignore_string_pw='Sorry, try again.' # message if password mistyped
local ignore_string1='Extracting templates from packages: 100%' # apt sends this to stderr!
local ignore_string2='Retrieving bug reports... Done' # apt-listbugs sends this to stderr!
local ignore_string3='Parsing Found/Fixed information... Done' # apt-listbugs sends this to stderr!
local apt_error
if exec 3>&1; apt_error=$(LC_MESSAGES=C sudo apt-get $cmd "${@}" 2>&1 1>&3) && {
[[ -z "$apt_error" ]] || ! grep -iqEv "(${ignore_string_pw:-$^}|${ignore_string1:-$^}|${ignore_string2:-$^}|${ignore_string3:-$^}|^$)" <<<"$apt_error"
}
then
exec 3>&-
say 'Finished upgrade.' 1
return 0
else
exec 3>&-
errorExit 'There were problems during the upgrade.' "${apt_error:-Upgrade Aborted}"
return 1
fi
}
# Usage safeInstall [--apt-get-option] package [package...]
safeInstall() {
local ignore_string_pw='Sorry, try again.' # message if password mistyped
local ignore_string1='Extracting templates from packages: 100%' # apt sends this to stderr!
local ignore_string2='Retrieving bug reports... Done' # apt-listbugs sends this to stderr!
local ignore_string3='Parsing Found/Fixed information... Done' # apt-listbugs sends this to stderr!
local apt_error
if exec 3>&1; apt_error=$(LC_MESSAGES=C sudo apt-get install "${@}" 2>&1 1>&3) && {
[[ -z "$apt_error" ]] || ! grep -iqEv "(${ignore_string_pw:-$^}|${ignore_string1:-$^}|${ignore_string2:-$^}|${ignore_string3:-$^}|^$)" <<<"$apt_error"
}
then
exec 3>&-
say 'Installation finished sucessfully.' 1
return 0
else
exec 3>&-
errorExit "There were problems installing ${*}" "${apt_error:-Install Aborted}"
return 1
fi
}
# Usage safeRemove [--apt-get-option] package [package...]
safeRemove() {
local ignore_string_pw='Sorry, try again.' # message if password mistyped
local ignore_string1='Extracting templates from packages: 100%' # apt sends this to stderr!
local ignore_string2='Retrieving bug reports... Done' # apt-listbugs sends this to stderr!
local ignore_string3='Parsing Found/Fixed information... Done' # apt-listbugs sends this to stderr!
local apt_error
if exec 3>&1; apt_error=$(LC_MESSAGES=C sudo apt-get remove "${@}" 2>&1 1>&3) && {
[[ -z "$apt_error" ]] || ! grep -iqEv "(${ignore_string_pw:-$^}|${ignore_string1}|${ignore_string2}|${ignore_string3}|^$)" <<<"$apt_error"
}
then
exec 3>&-
say "Successfully removed ${*}" 1
return 0
else
exec 3>&-
errorExit "There were problems removing ${*}" "${apt_error:-Remove Aborted}"
return 1
fi
}
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
On an Lenovo L440:
I pasted the code and as user run "bash -x /usr/bin/bl-install-pipemenu --install mhwaveedit > install-log 2>&1".
Got error "bash: install-log: Permission denied"
Touching install-log first, made the command continue and install. That code was only for the password check. I have not got the install-error again without the code change...
On this L440, when runing "bash -x /usr/bin/bl-install-pipemenu --install mhwaveedit > install-log 2>&1" in terminal, it updates sources, ask for pasword and install, without any error!
After removing mhwaveedit and installing from the menu, the terminal pops up and disapear immedeatley.
I do not think it matters which terminal i use. On this L440, terminator is default, On the T440, it is urxvt-unicode.
I have some more hw/virtuls, I will test on also, but I expect the will behave the same.
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline
^ I get the same "pop-up and disapear" terminal window here, when I use the menu and when I run the command provided in terminator.
The log:
+ [[ un = ii ]]
+ return 1
+ AppStatus[$curApp]=
+ [[ --install = --install ]]
+ setup_args=()
+ packageName=mhwaveedit
+ appName=Mhwaveedit
+ setupFunctionName=setupMhwaveedit
++ type -t setupMhwaveedit
+ [[ '' = \f\u\n\c\t\i\o\n ]]
+ case "$packageName" in
+ desc='This script will install Mhwaveedit.'
+ args=("$packageName")
+ bl-install --name Mhwaveedit --message 'This script will install Mhwaveedit.' mhwaveedit
+ exit 0
The terminal emulator:
┌─[naik@GerryTSSD ~]
└──$ export LANG=C && update-alternatives --display x-terminal-emulator
x-terminal-emulator - manual mode
link best version is /usr/local/bin/termite
link currently points to /usr/bin/terminator
link x-terminal-emulator is /usr/bin/x-terminal-emulator
slave x-terminal-emulator.1.gz is /usr/share/man/man1/x-terminal-emulator.1.gz
/usr/bin/gnome-terminal.wrapper - priority 40
slave x-terminal-emulator.1.gz: /usr/share/man/man1/gnome-terminal.1.gz
/usr/bin/koi8rxterm - priority 20
slave x-terminal-emulator.1.gz: /usr/share/man/man1/koi8rxterm.1.gz
/usr/bin/lxterm - priority 30
slave x-terminal-emulator.1.gz: /usr/share/man/man1/lxterm.1.gz
/usr/bin/terminator - priority 50
slave x-terminal-emulator.1.gz: /usr/share/man/man1/terminator.1.gz
/usr/bin/urxvt - priority 20
slave x-terminal-emulator.1.gz: /usr/share/man/man1/urxvt.1.gz
/usr/bin/uxterm - priority 20
slave x-terminal-emulator.1.gz: /usr/share/man/man1/uxterm.1.gz
/usr/bin/xterm - priority 20
slave x-terminal-emulator.1.gz: /usr/share/man/man1/xterm.1.gz
/usr/local/bin/termite - priority 60
I hope this helps..
naik --greetz
"Kaum macht [Mensch]* es richtig, funktioniert es sofort!"
BL-Kitchen Codeberg
Offline
Thanks to both of you for the feedback. I still can't reproduce this, but there's clearly a problem here.
First - the code I posted to replace /usr/lib/bunsen/common/bl-includes was intended to fix the issue where if you type a wrong password any script apt function fails with an error, even if you get it right the second time. That issue is OK now?
I do not think it matters which terminal i use.
Actually, it does. That's why I asked the question.
It might surprise you to hear that different terminal emulators behave differently in subtle ways. In particular, for scripts like this which are choosing whether to pop up a new terminal or not, depending on whether there is a controlling terminal or not, there have been some subtle errors in the past when switching between lxterminal, terminator and rxvt-unicode. Not all terminals properly follow the x-terminal-emulator standards. Some install a <terminal-name>.wrapper script to work round that, but which disables some other function, like starting a new terminal process, not a fork. (This was needed.)
There is a function terminalCheck() which opens a new terminal and runs the current script in it, but only if the script isn't already running in a terminal.
Here:
https://github.com/BunsenLabs/bunsen-co … ludes#L147
You can see that it's testing for different terminal emulators and sending them different command line options. This function started off very simple, and it's a pity it had to grow like this, but if all terminal emulators followed the standards it wouldn't be necessary.
But... terminator is supposed to be OK (and tested OK for me just now). And rxvt-unicode has always behaved well for me.
Can I ask a few more questions to either/both of you?
1) Does the 'instant popup then disappear' issue occur if x-terminal-emulator is changed to a different terminal emulator? (eg urxvt)
2) Does the same issue occur for other entries in the install menu? (Try something small like dillo.)
3) The command which bl-install-pipemenu is using is a script called bl-install (/usr/bin/bl-install).
What happens if you run this code:
bl-install --name Mhwaveedit --message 'This script will install Mhwaveedit.' mhwaveedit
in a terminal?
4) What happens if you open gmrun (Alt+F2) and paste the same code in there? (The difference is that in the latter case there's no controlling terminal, so one should pop up.)
5) How about in a terminal trying
bash -x /usr/bin/bl-install --name Mhwaveedit --message 'This script will install Mhwaveedit.' mhwaveedit
Any hints?
Got error "bash: install-log: Permission denied"
Where are you running this command? If in your home directory then you should have permission to create and write to a file.
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
1) setting x-terminal emulator to:
termite -> nothing happens at all
rxvt-unicode -> works well
termiantor -> instant popup then disappear
lxterminal -> works well
2) trying to install Dillo looks the same (instant popup then disappear with terminator)
3) running smooth in terminator
4) instant popup then disappear with terminator
5) terminator:
+ local 'title=INSTALL MHWAVEEDIT'
+ say '
INSTALL MHWAVEEDIT
------------------
This script will install Mhwaveedit.
'
++ tput cols
+ local width=96
+ fold -s -w 93
+ sed 's/^/ /'
INSTALL MHWAVEEDIT
------------------
This script will install Mhwaveedit.
+ [[ '' = \p\a\u\s\e ]]
+ sleep 0
+ prompt ' Run the installer now?'
+ local answer prompt default
+ [[ -n '' ]]
+ [[ ! -n '' ]]
+ prompt=Y/n
+ default=Y
+ true
+ read -r -p ' Run the installer now? [Y/n] ' answer
Run the installer now? [Y/n]
running your commands directly in term works for any I tested (as listed above) running it with gmrun gives the same as opening it from the menu (eg. nothing for termite)
"Kaum macht [Mensch]* es richtig, funktioniert es sofort!"
BL-Kitchen Codeberg
Offline
Thanks Naik, that's very helpful. It looks as if Terminator is at least one of the problem zones. I'll do a bit more poking around and try to reproduce the issue.
(Termite - that's not available as a Debian Package, so let's hold it for later, if at all...)
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
Anyway, I think the easiest way to test for this might be to open gmrun with Alt+F2 and type in:
bl-install dillo
(or any other package).
If the popup appears, it's working.
(If the package is already installed the terminal popup should show a message and close after a couple of seconds.)
Try this with x-terminal-emulator set to various terminals on your system.
Even with Terminator it works OK on my 32bit laptop and all my VMs...
But with Terminator I do see a brief white flash as if some window had opened and quickly closed, just before the popup appears. That might be a hint...
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
I'm not seeing a problem using the Lithium 64 bit ISO from here...
https://forums.bunsenlabs.org/viewtopic … 85#p101985
Fresh install, fully updated. lxterminal is the only Debian Alternative OOTB. Install terminator, it automatically is set as the default terminal in Alternatives, S+t and Menu>Terminal work fine. 'Menu>Settings>Install Selected Packages>...' opens the install scripts in terminator as expected.
I can't confirm this bug.
No, he can't sleep on the floor. What do you think I'm yelling for?!!!
Offline
It's still mysterious, but if two users are getting it, there must be something going on.
@Naik and @rbh, what version of terminator are you using?
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
It's still mysterious, but if two users are getting it, there must be something going on.
@Naik and @rbh, what version of terminator are you using?
I'm mostly using three pc's. One desktop; Wassus (with many VM's) and two lenovos, L440 (som VM's) and T440.
I have until some moths ago only used terminator. Are still evaluating LX-terminal and rxvt-unicode.
I have tried using the menu alternative with all thre as default terminal (BTW, would be nice if seting/listing termninal also was included bl-alternatives).
Runing menuslternativ Install Dillo, works for me on L440 with al thre terminals as default.
Running "bl-install dillo" in terminal does not pop up new terminal, simple run the installation in sam terminal it was started.
I'm getting handimen home to help lay new roof next week and has al lot of work to do outside before. On top of that, my back started to ache and heavy work has to be done very slov.
Will not have time to do more extensive debugging just now. Sorry.
Last edited by rbh (2020-07-31 09:04:12)
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline
@rbh don't worry, if we ever get to the bottom of this it will be a post-release fix anyway, so there's no hurry. Take it easy and don't make your back any worse!
BTW, would be nice if seting/listing termninal also was included bl-alternatives
It's not necessary because the Debian alternative x-terminal-emulator already exists - the bl-alternatives are just an addition to the Debian mechanism. See Menu>System>Edit Debian Alternatives.
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
┌─[naik@GerryTSSD ~]
└──$ terminator -v
terminator 1.91
"Kaum macht [Mensch]* es richtig, funktioniert es sofort!"
BL-Kitchen Codeberg
Offline
rbh wrote:BTW, would be nice if seting/listing termninal also was included bl-alternatives
It's not necessary because the Debian alternative x-terminal-emulator already exists - the bl-alternatives are just an addition to the Debian mechanism. See Menu>System>Edit Debian Alternatives.
No, it is not necessary, but nice to include terminal ap in bl-alternatives. Yes, galternatives can be used. It can be used instead of bl-alternatives. I've understodd that bl-alternatives, is used to easy switch default app among the most common apps.
It would be nice if terminal was included.
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline
^Sorry, I could have explained it more clearly.
bl-alternatives is not a separate thing, it just adds four extra app aliases to the Debian alternatives system. Because the "real" Debian apps automatically add themselves to the system, apps that could belong to a bl-* group have to replicate a bit of the work of detecting when new potential members of eg bl-file-manager are added to the system. The bl-alternative script checks for such apps and does that work, if necessary.
In the case of x-terminal-emulator, terminal emulators that could be added are already registering themselves with the Debian alternative system, along with a (quite arbitarily chosen) priority number. There's no further work for the bl-alternatives script to do in this case.
Users can manage bl-alternatives along with all the regular Debian alternatives like x-terminal-emulator with the cli app 'update-alternatives'.
galternatives is a GUI tool for managing Debian alternatives, including the four bl-* additions. (It's not a BL creation btw.)
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
Following commands, in terminal, both rxvt-unicode and lxterminal, gives the same error, on several computers, both totaly freshly installed and boxes that have been used some time:
$ bash -x /usr/bin/bl-install --name Mhwaveedit --message 'This script will install Mhwaveedit.' mhwaveedit
$ bl-install --name Mhwaveedit --message 'This script will install Mhwaveedit.' mhwaveedit
$ bl-install-pipemenu --install mhwaveedit
$ bl-install --install mhwaveedit
mhwaveedit is not a valid Debian package name
bl-install: a wrapper round the promptInstall() function in bl-includes
Usage: bl-install -n "name of app(s)" -m "message text" -f "/path/to/file" --setup "function_name" [apt option] package [package...]
-h --help show this message and exit
-n --name <string> descriptive name of package(s) to be installed
-m --message <string> message to display to user before installing
-f --file <filepath> file to hold return value of script on exit
--setup <function_name> function to run before installation
Specified options may be provided in any order.
If -n, -m or -f are used, they must be followed by an argument.
If -n or -m are absent they will be generated automatically.
If -f is set, the script will write its exit return value there,
so a calling script can test for success.
If --setup is used, <function_name> must exist as a function in the
environment, so will probably have to be exported by the calling script.
All other arguments are taken as apt-get options or package names to install.
This script will open a terminal window to run the installer,
and write the return value to a temporary file. (This is needed because
there is no other way to query the return value of a process which
was run in a new terminal.)
This is useful if launching from a GUI, but in a script known to be
already running in a terminal, it is not needed;
the promptInstall() function from bl-includes is enough.
Command with logging. Note, that I with this output, tested to put mhwaedidiror last instead of first on line 39 in bl-install-pipemenu. It did no difference:
$ bash -x /usr/bin/bl-install-pipemenu --install mhwaveedit > install-log 2>&1
+ HELP=' bl-install-pipemenu a jgmenu Pipe Menu for installing applications
It should normally be called from a jgmenu menu.
Options (usually passed from the menu):
-h --help show this message
--install install a package
(the package must be in one of the app lists in this file)
If bl-install-pipemenu is called with no options (the usual method),
it will output a csv jgmenu pipemenu for installing applications.
'
+ BROWSERS=('firefox-esr' 'chromium' 'dillo')
+ TERMS=('rxvt-unicode' 'terminator' 'mate-terminal' 'gnome-terminal' 'xfce4-terminal' 'lxterminal')
+ MM_APPS=('mpv' 'vlc' 'audacious' 'smplayer' 'gnome-mpv')
+ MM_EDITORS=('audacity' 'openshot' 'mhwaveedit')
+ MM_UTILS=('xfburn' 'brasero' 'k3b' 'gtk-recordmydesktop')
+ GRAPHICS_APPS=('mirage' 'viewnior' 'gpicview' 'ristretto' 'geeqie' 'gthumb' 'gimp' 'inkscape')
+ GRAPHICS_SCROTS=('xfce4-screenshooter' 'scrot')
+ LO_APPS=('libreoffice-writer' 'libreoffice-calc' 'libreoffice-impress' 'libreoffice-draw' 'libreoffice-base' 'libreoffice')
+ declare -A pkg_cmd
+ pkg_cmd[rxvt-unicode]=urxvt
+ for i in "$@"
+ case "$i" in
+ for i in "$@"
+ case "$i" in
+ BL_COMMON_LIBDIR=/usr/lib/bunsen/common
+ . /usr/lib/bunsen/common/bl-includes
+ declare -A AppName AppStatus
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Firefox Esr'
+ command=firefox-esr
+ hash firefox-esr
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Chromium
+ command=chromium
+ hash chromium
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Dillo
+ command=dillo
+ hash dillo
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Rxvt Unicode'
+ command=urxvt
+ hash urxvt
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Terminator
+ command=terminator
+ hash terminator
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Mate Terminal'
+ command=mate-terminal
+ hash mate-terminal
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Gnome Terminal'
+ command=gnome-terminal
+ hash gnome-terminal
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Xfce4 Terminal'
+ command=xfce4-terminal
+ hash xfce4-terminal
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Lxterminal
+ command=lxterminal
+ hash lxterminal
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Mpv
+ command=mpv
+ hash mpv
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Vlc
+ command=vlc
+ hash vlc
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Audacious
+ command=audacious
+ hash audacious
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Smplayer
+ command=smplayer
+ hash smplayer
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Gnome Mpv'
+ command=gnome-mpv
+ hash gnome-mpv
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Audacity
+ command=audacity
+ hash audacity
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Openshot
+ command=openshot
+ hash openshot
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Mhwaveedit
+ command=mhwaveedit
+ hash mhwaveedit
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Xfburn
+ command=xfburn
+ hash xfburn
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Brasero
+ command=brasero
+ hash brasero
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=K3b
+ command=k3b
+ hash k3b
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Gtk Recordmydesktop'
+ command=gtk-recordmydesktop
+ hash gtk-recordmydesktop
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Mirage
+ command=mirage
+ hash mirage
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Viewnior
+ command=viewnior
+ hash viewnior
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Gpicview
+ command=gpicview
+ hash gpicview
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Ristretto
+ command=ristretto
+ hash ristretto
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Geeqie
+ command=geeqie
+ hash geeqie
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Gthumb
+ command=gthumb
+ hash gthumb
+ AppStatus[$curApp]=
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Gimp
+ command=gimp
+ hash gimp
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Inkscape
+ command=inkscape
+ hash inkscape
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]='Xfce4 Screenshooter'
+ command=xfce4-screenshooter
+ hash xfce4-screenshooter
+ AppStatus[$curApp]=installed
+ for curApp in "${BROWSERS[@]}" "${TERMS[@]}" "${MM_APPS[@]}" "${MM_EDITORS[@]}" "${MM_UTILS[@]}" "${GRAPHICS_APPS[@]}" "${GRAPHICS_SCROTS[@]}"
+ words=(${curApp//-/ })
+ AppName[$curApp]=Scrot
+ command=scrot
+ hash scrot
+ AppStatus[$curApp]=installed
+ for curApp in "${LO_APPS[@]}"
+ [[ libreoffice-writer = libreoffice ]]
+ name=writer
+ AppName[$curApp]='LibreOffice Writer'
+ hash lowriter
+ AppStatus[$curApp]=installed
+ for curApp in "${LO_APPS[@]}"
+ [[ libreoffice-calc = libreoffice ]]
+ name=calc
+ AppName[$curApp]='LibreOffice Calc'
+ hash localc
+ AppStatus[$curApp]=installed
+ for curApp in "${LO_APPS[@]}"
+ [[ libreoffice-impress = libreoffice ]]
+ name=impress
+ AppName[$curApp]='LibreOffice Impress'
+ hash loimpress
+ AppStatus[$curApp]=installed
+ for curApp in "${LO_APPS[@]}"
+ [[ libreoffice-draw = libreoffice ]]
+ name=draw
+ AppName[$curApp]='LibreOffice Draw'
+ hash lodraw
+ AppStatus[$curApp]=installed
+ for curApp in "${LO_APPS[@]}"
+ [[ libreoffice-base = libreoffice ]]
+ name=base
+ AppName[$curApp]='LibreOffice Base'
+ hash lobase
+ AppStatus[$curApp]=installed
+ for curApp in "${LO_APPS[@]}"
+ [[ libreoffice = libreoffice ]]
+ AppName[$curApp]='LIBREOFFICE FULL SUITE'
+ allInstalled libreoffice
+ local pkg=
+ for pkg in "$@"
++ dpkg-query --show '--showformat=${db:Status-Abbrev;2}' libreoffice
+ [[ ii = ii ]]
+ return 0
+ AppStatus[$curApp]=installed
+ [[ --install = --install ]]
+ setup_args=()
+ packageName=mhwaveedit
+ appName=Mhwaveedit
+ setupFunctionName=setupMhwaveedit
++ type -t setupMhwaveedit
+ [[ '' = \f\u\n\c\t\i\o\n ]]
+ case "$packageName" in
+ desc='This script will install Mhwaveedit.'
+ args=("$packageName")
+ bl-install --name Mhwaveedit --message 'This script will install Mhwaveedit.' mhwaveedit
+ exit 0
Last edited by rbh (2020-08-12 22:31:58)
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline
@rbh thank you for following this up! Hopefully we can get to the bottom of it.
Anyway, first I'll replicate those commands on my new Lithium system and see how it compares.
One thing:
$ bl-install --install mhwaveedit
--install is not a viable option for bl-install, as the --help output showed. ( --install is for bl-install-pipemenu. )
But it's looking to me as if the problem lies with bl-install, and not the pipemenu which calls it.
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky, there's also some GitStuff )
Offline
Was this ever fixed?
Noticed on a newly installed 32 bit Lithium box (vm), that the menualternative to install libreoffice-writer, caused the terminal window to just popup and disapear.
Tested all install alternatives. The following failed:
mhwaveedit
libreoffice-writer
libreoffice-impress
libreoffice-draw
viewnior
gpicview
I had forgot this problem. Is running my own script to add applications and has not tried the menu-alternatives when installing new boxes...
Edit, update:
Just tested a 64 bit box, no problem with the above.
Last edited by rbh (2022-02-27 13:27:51)
// Regards rbh
Please read before requesting help: "Guide to getting help", "Introduction to the Bunsenlabs Lithium Desktop" and other help topics under "Help & Resources" on the BunsenLabs menu
Offline