On 15.12.2020 21:03, Brian Inglis wrote:
On 2020-12-15 01:43, Marco Atzeri via Cygwin wrote:
Not a recent bug but annoying anyway

It seems the post-install script is not considering that the
installation can be in a disk different from C: , properly
in this case D:

The post-install script does not care as mkshortcut uses POSIX paths.
Could you please check your paths with:

     $ which -a mkshortcut
     /usr/bin/mkshortcut

all same


2020/12/15 08:40:13 running: d:\cygwin32\bin\bash.exe --norc --noprofile "/etc/postinstall/cygwin-doc.sh" mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start Menu/Programs/D:/cygwin32/Cygwin (32-bit)/User Guide (PDF).lnk" failed; does the target directory exist? mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start Menu/Programs/D:/cygwin32/Cygwin (32-bit)/User Guide (HTML).lnk" failed; does the target directory exist?

Please try:

     $ sh --version
     GNU bash, version 4.4.12(3)-release (x86_64-unknown-cygwin)
     ...

Could you please try rerunning the p-i script under sh -vx and post the output, as I can not see any way to rearrange the inputs and outputs to get that result, unless read or mkshortcut are damaged!

$ ls "/cygdrive/c/ProgramData/Microsoft/Windows/Start Menu/Programs/" | grep Cygwin
Cygwin
Cygwin (32-bit)

$ ll "$(cygpath -A -P -U)"/Cygwin*


It works, but it is different from running under setup, as it is using

/proc/cygdrive/c/Users/Marco/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Cygwin (32-bit)/

attached log

Regards
Marco








#!/bin/sh
# /etc/postinstall/cygwin-doc.sh - cygwin-doc postinstall script.
# installs Cygwin Start Menu shortcuts for Cygwin User Guide and API PDF and
# HTML if in doc dir, and links to Cygwin web site home page and FAQ
#
# CYGWINFORALL=-A if install for All Users
# installs local shortcuts for All Users or Current User in
# {ProgramData,~/Appdata/Roaming}/Microsoft/Windows/Start Menu/Programs/Cygwin/
# exits quietly if directory does not exist as presumably no shortcuts desired

doc=/usr/share/doc/cygwin-doc
+ doc=/usr/share/doc/cygwin-doc
site=https://cygwin.com
+ site=https://cygwin.com
cygp=/usr/bin/cygpath
+ cygp=/usr/bin/cygpath
mks=/usr/bin/mkshortcut
+ mks=/usr/bin/mkshortcut
launch=/usr/bin/cygstart
+ launch=/usr/bin/cygstart

html=$doc/html
+ html=/usr/share/doc/cygwin-doc/html

# check source directories created
for d in $doc $html
do
        if [ ! -d "$d/" ]
        then
                echo "Can't find directory '$d'"
                exit 2
        fi
done
+ for d in $doc $html
+ '[' '!' -d /usr/share/doc/cygwin-doc/ ']'
+ for d in $doc $html
+ '[' '!' -d /usr/share/doc/cygwin-doc/html/ ']'

# check for programs
for p in $cygp $mks $launch
do
        if [ ! -x "$p" ]
        then
                echo "Can't find program '$p'"
                exit 2
        fi
done
+ for p in $cygp $mks $launch
+ '[' '!' -x /usr/bin/cygpath ']'
+ for p in $cygp $mks $launch
+ '[' '!' -x /usr/bin/mkshortcut ']'
+ for p in $cygp $mks $launch
+ '[' '!' -x /usr/bin/cygstart ']'

# Cygwin Start Menu directory
case $(uname -s) in *-WOW*) wow64=" (32-bit)" ;; esac
+ case $(uname -s) in
++ uname -s
+ wow64=' (32-bit)'
smpc_dir="$($cygp $CYGWINFORALL -P -U --)/Cygwin${wow64}"
++ /usr/bin/cygpath -P -U --
+ 
smpc_dir='/proc/cygdrive/c/Users/Marco/AppData/Roaming/Microsoft/Windows/Start 
Menu/Programs/Cygwin (32-bit)'

# ensure Cygwin Start Menu directory exists
/usr/bin/mkdir -p "$smpc_dir"
+ /usr/bin/mkdir -p 
'/proc/cygdrive/c/Users/Marco/AppData/Roaming/Microsoft/Windows/Start 
Menu/Programs/Cygwin (32-bit)'

# check Cygwin Start Menu directory writable
if [ ! -w "$smpc_dir/" ]
then
        echo "Can't write to directory '$smpc_dir'"
        exit 1
fi
+ '[' '!' -w 
'/proc/cygdrive/c/Users/Marco/AppData/Roaming/Microsoft/Windows/Start 
Menu/Programs/Cygwin (32-bit)/' ']'

# create User Guide and API PDF and HTML shortcuts
while read target name desc
do
        [ -r "$target" ] && $mks $CYGWINFORALL -P -n "Cygwin${wow64}/$name" -d 
"$desc" -- $target
done <<EOF
$doc/cygwin-ug-net.pdf          User\ Guide\ \(PDF\)  Cygwin\ User\ Guide\ PDF
$html/cygwin-ug-net/index.html  User\ Guide\ \(HTML\) Cygwin\ User\ Guide\ HTML
$doc/cygwin-api.pdf             API\ \(PDF\)    Cygwin\ API\ Reference\ PDF
$html/cygwin-api/index.html     API\ \(HTML\)   Cygwin\ API\ Reference\ HTML
EOF
+ read target name desc
+ '[' -r /usr/share/doc/cygwin-doc/cygwin-ug-net.pdf ']'
+ /usr/bin/mkshortcut -P -n 'Cygwin (32-bit)/User Guide (PDF)' -d 'Cygwin User 
Guide PDF' -- /usr/share/doc/cygwin-doc/cygwin-ug-net.pdf
+ read target name desc
+ '[' -r /usr/share/doc/cygwin-doc/html/cygwin-ug-net/index.html ']'
+ /usr/bin/mkshortcut -P -n 'Cygwin (32-bit)/User Guide (HTML)' -d 'Cygwin User 
Guide HTML' -- /usr/share/doc/cygwin-doc/html/cygwin-ug-net/index.html
+ read target name desc
+ '[' -r /usr/share/doc/cygwin-doc/cygwin-api.pdf ']'
+ /usr/bin/mkshortcut -P -n 'Cygwin (32-bit)/API (PDF)' -d 'Cygwin API 
Reference PDF' -- /usr/share/doc/cygwin-doc/cygwin-api.pdf
+ read target name desc
+ '[' -r /usr/share/doc/cygwin-doc/html/cygwin-api/index.html ']'
+ /usr/bin/mkshortcut -P -n 'Cygwin (32-bit)/API (HTML)' -d 'Cygwin API 
Reference HTML' -- /usr/share/doc/cygwin-doc/html/cygwin-api/index.html
+ read target name desc

# create Home Page and FAQ URL link shortcuts
while read target name desc
do
        $mks $CYGWINFORALL -P -n "Cygwin${wow64}/$name" -d "$desc" -a $target 
-- $launch
done <<EOF
$site/index.html        Home\ Page      Cygwin\ Home\ Page\ Link
$site/faq.html          FAQ     Cygwin\ Frequently\ Asked\ Questions\ Link
EOF
+ read target name desc
+ /usr/bin/mkshortcut -P -n 'Cygwin (32-bit)/Home Page' -d 'Cygwin Home Page 
Link' -a https://cygwin.com/index.html -- /usr/bin/cygstart
+ read target name desc
+ /usr/bin/mkshortcut -P -n 'Cygwin (32-bit)/FAQ' -d 'Cygwin Frequently Asked 
Questions Link' -a https://cygwin.com/faq.html -- /usr/bin/cygstart
+ read target name desc

<<attachment: setup.log.full.zip>>

--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to