This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: mkshortcut fails when run from setup, postinstall/cygwin-doc.sh - not otherwise
- From: Brian Inglis <Brian dot Inglis at SystematicSw dot ab dot ca>
- To: cygwin at cygwin dot com
- Date: Wed, 20 Dec 2017 16:13:50 -0700
- Subject: Re: mkshortcut fails when run from setup, postinstall/cygwin-doc.sh - not otherwise
- Authentication-results: sourceware.org; auth=none
- References: <ea0e60e8cd4b773198d4ef8f863cdd1e@perezterron.net>
- Reply-to: Brian dot Inglis at SystematicSw dot ab dot ca
On 2017-12-20 05:59, Enrique Perez-Terron wrote:
> Lately, whenever I run setup (x86), my /var/log/setup.log.full contains:
> 2017/12/20 03:07:44 running: C:\cygwin\bin\bash.exe --norc --noprofile
> "/etc/postinstall/cygwin-doc.sh"
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/User Guide (PDF).lnk" failed; does the target directory
> exist?
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/User Guide (HTML).lnk" failed; does the target directory
> exist?
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/API (PDF).lnk" failed; does the target directory exist?
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/API (HTML).lnk" failed; does the target directory exist?
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/Home Page.lnk" failed; does the target directory exist?
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/FAQ.lnk" failed; does the target directory exist?
> 2017/12/20 03:07:45 abnormal exit: exit code=3
> Please notice the extra C:/ in front of the target link name.
> So I have added a line "set -x" at the top in postinstall/cygwin-doc.sh, and
> the relevant section becomes
> + read target name desc
> + '[' -r ']'
> + /bin/mkshortcut -A -P -n 'Cygwin/User Guide (PDF)' -d 'Cygwin User Guide PDF'
> -- /usr/share/doc/cygwin-doc/cygwin-ug-net.pdf
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/User Guide (PDF).lnk" failed; does the target directory
> exist?
> + read target name desc
> + '[' -r ']'
> + /bin/mkshortcut -A -P -n 'Cygwin/User Guide (HTML)' -d 'Cygwin User Guide
> HTML' -- /usr/share/doc/cygwin-doc/html/cygwin-ug-net/index.html
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/User Guide (HTML).lnk" failed; does the target directory
> exist?
> + read target name desc
> + '[' -r ']'
> + /bin/mkshortcut -A -P -n 'Cygwin/API (PDF)' -d 'Cygwin API Reference PDF' --
> /usr/share/doc/cygwin-doc/cygwin-api.pdf
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/API (PDF).lnk" failed; does the target directory exist?
> + read target name desc
> + '[' -r ']'
> + /bin/mkshortcut -A -P -n 'Cygwin/API (HTML)' -d 'Cygwin API Reference HTML'
> -- /usr/share/doc/cygwin-doc/html/cygwin-api/index.html
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/API (HTML).lnk" failed; does the target directory exist?
> + read target name desc
> + read target name desc
> + /bin/mkshortcut -A -P -n 'Cygwin/Home Page' -d 'Cygwin Home Page Link' -a
> https://cygwin.com/index.html -- /bin/cygstart
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/Home Page.lnk" failed; does the target directory exist?
> + read target name desc
> + /bin/mkshortcut -A -P -n Cygwin/FAQ -d 'Cygwin Frequently Asked Questions
> Link' -a https://cygwin.com/faq.html -- /bin/cygstart
> mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start
> Menu/Programs/C:/cygwin/FAQ.lnk" failed; does the target directory exist?
> (by the way -- this reveals another bug too: The script says "[ -r $t ] && $mks
> ..." where I am sure it should be "[ -r $target ] && $mks ...")
> (and again btw, I am not sure bash should count "[ -r ]" as a true statement)
> The script issues mkshortcut commands with sane arguments, no extra "C:/" in there.
> So I just tried to run the script from an elevated-privilege mintty shell:
> $ CYGWINFORALL=-A /bin/bash /etc/postinstall/cygwin-doc.sh
> But then it does NOT fail, and the shortcuts do get installed -- they were not
> present before.
CYGWINFORALL=-A requires elevation or security changes to install for all users.
mkshortcut may be defaulting something incorrectly when -A -P is specified
without elevation?
Patch submitted for variable typo - thanks for catching and reporting.
--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple