🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.os.linux.programowanie
2 messages
2 total messages Started by jaworski1978 Tue, 18 Feb 2020 20:13
Wywołanie whiptail z pod skryptu
#72940
Author: jaworski1978
Date: Tue, 18 Feb 2020 20:13
58 lines
3574 bytes
Cześć!

Wpakowałem się w robienie własnego instalatora dla Linux-a. Pierwszą wersję mam już "wstępnie zakodowaną" teraz ją uruchamiam. Napotkałem problem z jakim nie potrafię sobie poradzić. Mam skrypt 20-license.sh używający whiptail (okrojony następca dialog-a) wyświetlający licecję w celu zmuszenia użytkownika do jej zaakceptowania. Skrypt wywoływany bezpośrednio z konsoli działa. Jednak ja mam więcej skryptów do wywołania w czasie instalacji i wywołuję je "budując" komendę w Bash-u. Próbowałem różnych "sztuczek" i różnych porad z internetów jednak nic one nie dały. Skrypt się uruchamia, nie wyświetla na bieżącej konsoli okienka tylko "gdzieś indziej". Jak kliknę TAB i ENTER skrypt poprawnie się kończy potwierdzeniem licencji.

Proszę o pomoc i z góry dzięki!
Jacek

System: Kubuntu 19.10, testowane w emulatorze terminala Konsole.

Komenda która działa:
$/var/tmp/racja-istnienia-3.0.0-setup/sbin/pre-install/20-license.sh "/var/tmp/racja-istnienia-3.0.0-setup/share/racja-istnienia/license.txt"

Komenda która nie działa a (chyba) powinna:
$ i="\$(/var/tmp/racja-istnienia-3.0.0-setup/sbin/pre-install/20-license.sh \"/var/tmp/racja-istnienia-3.0.0-setup/share/racja-istnienia/license.txt\")"
$ echo $i
$(/var/tmp/racja-istnienia-3.0.0-setup/sbin/pre-install/20-license.sh "/var/tmp/racja-istnienia-3.0.0-setup/share/racja-istnienia/license.txt")
$ eval $i

To ostanie wypisuje:
: nie znaleziono polecenia


Kod problematycznego skryptu jest taki:

#!/bin/bash

############################################################################
# Global variables

gLicenseFile="$1"

gScriptName="$(basename $0)"
gScriptName="${gScriptName%.*}"

############################################################################
# Functions

function gHelp
{
    echo "Directory selection script based on whiptail menu." 
    exit 1
}

[ "$1" = "-h" ] && gHelp
[ "$1" = "--help" ] && gHelp

############################################################################
# Main

[ ! -f "$gLicenseFile" ] && echo "License file not found! Missing file: $gLicenseFile" && exit 1

if(whiptail --title "Licensing Info" --textbox "$gLicenseFile" --scrolltext 25 75 --ok-button "Press to confirm" --fb); then
    echo "License accepted!"
    exit 0
else
    echo "License rejected!"
    exit 1
fi
Re: Wywołanie whiptail z pod skryptu
#72941
Author: Roman Tyczka
Date: Wed, 19 Feb 2020 08:35
10 lines
1964 bytes
On Tue, 18 Feb 2020 12:13:41 -0800 (PST), jaworski1978@adres.pl wrote:

> Wpakowałem się w robienie własnego instalatora dla Linux-a. Pierwszą wersję mam już "wstępnie zakodowaną" teraz ją uruchamiam. Napotkałem problem z jakim nie potrafię sobie poradzić. Mam skrypt 20-license.sh używający whiptail (okrojony następca dialog-a) wyświetlający licecję w celu zmuszenia użytkownika do jej zaakceptowania. Skrypt wywoływany bezpośrednio z konsoli działa. Jednak ja mam więcej skryptów do wywołania w czasie instalacji i wywołuję je "budując" komendę w Bash-u. Próbowałem różnych "sztuczek" i różnych porad z internetów jednak nic one nie dały. Skrypt się uruchamia, nie wyświetla na bieżącej konsoli okienka tylko "gdzieś indziej". Jak kliknę TAB i ENTER skrypt poprawnie się kończy potwierdzeniem licencji.

Może raczej zapytaj na grupie pl.comp.os.linux - tam jest szansa na
odpowiedź

-- 
pozdrawiam
Roman Tyczka
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads