diff --git a/autobuild.bat b/autobuild.bat index 83baef3ca..84fc2f500 100644 --- a/autobuild.bat +++ b/autobuild.bat @@ -1,11 +1,5 @@ @echo off - -copy /Y msys2\ps\*.post msys2\etc\post-install\ >NUL -echo # For a description of the file format, see the Users Guide >msys2/etc/fstab -echo # http://cygwin.com/cygwin-ug-net/using.html#mount-table >>msys2/etc/fstab -echo none / cygdrive binary,posix=0,noacl,user 0 0 >>msys2/etc/fstab -echo %~dp0pm3 /pm3 ntfs noacl 0 0 >>msys2/etc/fstab -echo %~dp0gcc-arm-none-eabi /gcc-arm-none-eabi ntfs noacl 0 0 >>msys2/etc/fstab +call msys2\ps\setup.cmd echo %~dp0builds /builds ntfs noacl 0 0 >>msys2/etc/fstab call msys2\msys2_shell.cmd -mingw32 -defterm -no-start -c /ps/autobuild.sh call msys2\msys2_shell.cmd -mingw64 -defterm -no-start -c /ps/autobuild.sh \ No newline at end of file diff --git a/msys2/autorebase.bat b/msys2/autorebase.bat new file mode 100644 index 000000000..7b833adda --- /dev/null +++ b/msys2/autorebase.bat @@ -0,0 +1,4 @@ +@echo off + +set PATH=%~dp0\usr\bin;%PATH% +%~dp0\usr\bin\dash /usr/bin/rebaseall -p diff --git a/msys2/autorebasebase1st.bat b/msys2/autorebasebase1st.bat new file mode 100644 index 000000000..8a89debe8 --- /dev/null +++ b/msys2/autorebasebase1st.bat @@ -0,0 +1,15 @@ +@echo off +REM Copyright (c) 2014, Ray Donnelly + +set PATH=%~dp0\usr\bin;%PATH% + +echo Querying 'base' packages for DLLs .. +%~dp0\usr\bin\bash /usr/bin/pacman-rec-filename-grep base base-dlls-unix.txt ".*\.(dll|so|oct)$" +%~dp0\usr\bin\bash /usr/bin/paths-from-unix-to-windows base-dlls-unix.txt base-dlls.txt %CD:\=/% + +echo Rebasing all DLLs, 'base' ones first .. +REM -i is new; it means ignore database and +REM rebase from end of {cygwin1,msys-2.0}.dll +REM it work by avoiding passing -s to rebase.exe +REM which has modifications to support this mode. +%~dp0\usr\bin\dash /usr/bin/rebaseall -T base-dlls.txt -i -p diff --git a/msys2/dir b/msys2/dir new file mode 100644 index 000000000..e640bffd0 --- /dev/null +++ b/msys2/dir @@ -0,0 +1,15 @@ +This is the file .../info/dir, which contains the +topmost node of the Info hierarchy, called (dir)Top. +The first time you invoke Info you start off looking at this node. + +File: dir, Node: Top This is the top of the INFO tree + + This (the Directory node) gives a menu of major topics. + Typing "q" exits, "H" lists all Info commands, "d" returns here, + "h" gives a primer for first-timers, + "mEmacs" visits the Emacs manual, etc. + + In Emacs, you can click mouse button 2 on a menu item or cross reference + to select it. + +* Menu: diff --git a/msys2/etc/nsswitch.conf b/msys2/etc/nsswitch.conf index 79140291b..90404f647 100644 --- a/msys2/etc/nsswitch.conf +++ b/msys2/etc/nsswitch.conf @@ -1,9 +1,9 @@ # Begin /etc/nsswitch.conf -passwd: files -group: files +passwd: files db +group: files db -db_enum: files +db_enum: cache builtin db_home: cygwin desc db_shell: cygwin desc diff --git a/msys2/etc/pacman.conf b/msys2/etc/pacman.conf index 3b7095fd2..091087283 100644 --- a/msys2/etc/pacman.conf +++ b/msys2/etc/pacman.conf @@ -16,7 +16,7 @@ #GPGDir = /etc/pacman.d/gnupg/ HoldPkg = pacman #XferCommand = /usr/bin/curl -C - -f %u > %o -XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u #CleanMethod = KeepInstalled #UseDelta = 0.7 Architecture = auto @@ -30,7 +30,7 @@ Architecture = auto # Misc options #UseSyslog -Color +#Color #TotalDownload CheckSpace #VerbosePkgLists diff --git a/msys2/etc/profile b/msys2/etc/profile index a8826920f..ba020e479 100644 --- a/msys2/etc/profile +++ b/msys2/etc/profile @@ -177,6 +177,5 @@ if [ "$MAYBE_FIRST_START" = "true" ]; then echo "###################################################################" echo echo - sleep infinity fi unset MAYBE_FIRST_START diff --git a/msys2/etc/wgetrc b/msys2/etc/wgetrc index 497aa2d08..d339e2b34 100644 --- a/msys2/etc/wgetrc +++ b/msys2/etc/wgetrc @@ -138,8 +138,3 @@ # default root certs location ca_certificate=/usr/ssl/certs/ca-bundle.crt - -#connect_timeout=30 -#dns_timeout=30 -#read_timeout=30 -timeout=10 diff --git a/msys2/mingw32.exe b/msys2/mingw32.exe new file mode 100644 index 000000000..96e2c2e6a Binary files /dev/null and b/msys2/mingw32.exe differ diff --git a/msys2/mingw32.ini b/msys2/mingw32.ini new file mode 100644 index 000000000..ad1b96cbe --- /dev/null +++ b/msys2/mingw32.ini @@ -0,0 +1,5 @@ +#MSYS=winsymlinks:nativestrict +#MSYS=error_start:mingw64/bin/qtcreator.exe|-debug| +#CHERE_INVOKING=1 +#MSYS2_PATH_TYPE=inherit +MSYSTEM=MINGW32 diff --git a/msys2/mingw64.exe b/msys2/mingw64.exe new file mode 100644 index 000000000..b73e034c9 Binary files /dev/null and b/msys2/mingw64.exe differ diff --git a/msys2/mingw64.ini b/msys2/mingw64.ini new file mode 100644 index 000000000..4693ab6a4 --- /dev/null +++ b/msys2/mingw64.ini @@ -0,0 +1,5 @@ +#MSYS=winsymlinks:nativestrict +#MSYS=error_start:mingw64/bin/qtcreator.exe|-debug| +#CHERE_INVOKING=1 +#MSYS2_PATH_TYPE=inherit +MSYSTEM=MINGW64 diff --git a/msys2/msys2.exe b/msys2/msys2.exe new file mode 100644 index 000000000..b98482f19 Binary files /dev/null and b/msys2/msys2.exe differ diff --git a/msys2/msys2.ico b/msys2/msys2.ico new file mode 100644 index 000000000..baea305ab Binary files /dev/null and b/msys2/msys2.ico differ diff --git a/msys2/msys2.ini b/msys2/msys2.ini new file mode 100644 index 000000000..d921caa4f --- /dev/null +++ b/msys2/msys2.ini @@ -0,0 +1,5 @@ +#MSYS=winsymlinks:nativestrict +#MSYS=error_start:mingw64/bin/qtcreator.exe|-debug| +#CHERE_INVOKING=1 +#MSYS2_PATH_TYPE=inherit +MSYSTEM=MSYS diff --git a/msys2/msys2_shell.cmd b/msys2/msys2_shell.cmd index 719c7929a..1e97383fa 100644 --- a/msys2/msys2_shell.cmd +++ b/msys2/msys2_shell.cmd @@ -14,15 +14,6 @@ rem set MSYS=error_start:%WD%../../mingw64/bin/qtcreator.exe^|-debug^|^ nul -rem /tmp is required for bash to work -mkdir %WD%..\..\tmp 2> nul -del %WD%..\..\etc\passwd 2> nul -del %WD%..\..\etc\group 2> nul -%WD%touch /etc/passwd -%WD%touch /etc/group -%WD%bash /ps/user_setup.sh :checkparams rem Help option diff --git a/msys2/ps/bin/ps-setup b/msys2/ps/bin/ps-setup index b3410bcaa..11d19cee0 100644 --- a/msys2/ps/bin/ps-setup +++ b/msys2/ps/bin/ps-setup @@ -5,13 +5,6 @@ check_install () { fi } -check_install_web () { - pacman -Q $1 | grep $2 > /dev/null - if [ $? == 1 ]; then - pacman --noconfirm --overwrite='*' -U $3 - fi -} - clean_86 () { rm -rf /mingw32/share/qt5/examples pacman --noconfirm --overwrite='*' -Scc diff --git a/msys2/ps/nsswitch.conf b/msys2/ps/nsswitch.conf new file mode 100644 index 000000000..79140291b --- /dev/null +++ b/msys2/ps/nsswitch.conf @@ -0,0 +1,12 @@ +# Begin /etc/nsswitch.conf + +passwd: files +group: files + +db_enum: files + +db_home: cygwin desc +db_shell: cygwin desc +db_gecos: cygwin desc + +# End /etc/nsswitch.conf diff --git a/msys2/ps/pacman.conf b/msys2/ps/pacman.conf new file mode 100644 index 000000000..eec717e80 --- /dev/null +++ b/msys2/ps/pacman.conf @@ -0,0 +1,85 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +HoldPkg = pacman +#XferCommand = /usr/bin/curl -C - -f %u > %o +XferCommand = /usr/bin/wget --passive-ftp --timeout=10 -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +Color +#TotalDownload +CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +#SigLevel = Never +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +[mingw32] +Include = /etc/pacman.d/mirrorlist.mingw32 + +[mingw64] +Include = /etc/pacman.d/mirrorlist.mingw64 + +[msys] +Include = /etc/pacman.d/mirrorlist.msys + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/msys2/ps/setup.cmd b/msys2/ps/setup.cmd new file mode 100644 index 000000000..327b71028 --- /dev/null +++ b/msys2/ps/setup.cmd @@ -0,0 +1,18 @@ +@echo off +SET PATH=%cd%\msys2\usr\bin;%PATH% +copy /Y %cd%\msys2\ps\*.post %cd%\msys2\etc\post-install\ >NUL +copy /Y %cd%\msys2\ps\*.conf %cd%\msys2\etc\ >NUL + +echo # For a description of the file format, see the Users Guide >%cd%\msys2/etc/fstab +echo # http://cygwin.com/cygwin-ug-net/using.html#mount-table >>%cd%\msys2/etc/fstab +echo none / cygdrive binary,posix=0,noacl,user 0 0 >>%cd%\msys2/etc/fstab +echo %~dp0pm3 /pm3 ntfs noacl 0 0 >>%cd%\msys2/etc/fstab +echo %~dp0gcc-arm-none-eabi /gcc-arm-none-eabi ntfs noacl 0 0 >>%cd%\msys2/etc/fstab + +dash /usr/bin/rebaseall -p 2> nul +mkdir %cd%\msys2\tmp 2> nul +del %cd%\msys2\etc\passwd 2> nul +del %cd%\msys2\etc\group 2> nul +touch /etc/passwd +touch /etc/group +bash /ps/user_setup.sh diff --git a/msys2/ps/user_setup.sh b/msys2/ps/user_setup.sh index 983fd7c2d..1094c153a 100644 --- a/msys2/ps/user_setup.sh +++ b/msys2/ps/user_setup.sh @@ -18,7 +18,4 @@ GROUP_MISSING=$( grep -Fq "$GROUP_SID" /etc/group )$? # If not, add it if [ $GROUP_MISSING != 0 ]; then echo $MKGROUP_CURRENT >> /etc/group -fi - - - +fi \ No newline at end of file diff --git a/runme.bat b/runme.bat index 9911d2308..8a6da048c 100644 --- a/runme.bat +++ b/runme.bat @@ -1,9 +1,3 @@ @echo off - -copy /Y msys2\ps\*.post msys2\etc\post-install\ >NUL -echo # For a description of the file format, see the Users Guide >msys2/etc/fstab -echo # http://cygwin.com/cygwin-ug-net/using.html#mount-table >>msys2/etc/fstab -echo none / cygdrive binary,posix=0,noacl,user 0 0 >>msys2/etc/fstab -echo %~dp0pm3 /pm3 ntfs noacl 0 0 >>msys2/etc/fstab -echo %~dp0gcc-arm-none-eabi /gcc-arm-none-eabi ntfs noacl 0 0 >>msys2/etc/fstab +call msys2\ps\setup.cmd msys2\msys2_shell.cmd -mingw32 -defterm -no-start \ No newline at end of file diff --git a/runme64.bat b/runme64.bat index f6c663e2e..1dc5f15e3 100644 --- a/runme64.bat +++ b/runme64.bat @@ -1,9 +1,3 @@ @echo off - -copy /Y msys2\ps\*.post msys2\etc\post-install\ >NUL -echo # For a description of the file format, see the Users Guide >msys2/etc/fstab -echo # http://cygwin.com/cygwin-ug-net/using.html#mount-table >>msys2/etc/fstab -echo none / cygdrive binary,posix=0,noacl,user 0 0 >>msys2/etc/fstab -echo %~dp0pm3 /pm3 ntfs noacl 0 0 >>msys2/etc/fstab -echo %~dp0gcc-arm-none-eabi /gcc-arm-none-eabi ntfs noacl 0 0 >>msys2/etc/fstab +call msys2\ps\setup.cmd msys2\msys2_shell.cmd -mingw64 -defterm -no-start \ No newline at end of file