Comments (2)
--- apt-cyg-orig 2013-12-20 00:48:38.542186400 +0530
+++ /usr/bin/apt-cyg 2013-12-20 01:07:43.772186400 +0530
@@ -21,15 +21,22 @@
WGET=`which wget 2> /dev/null`
BZIP2=`which bzip2 2> /dev/null`
+XZ=`which xz 2> /dev/null`
TAR=`which tar 2> /dev/null`
GAWK=`which awk 2> /dev/null`
+FILE=`which file 2> /dev/null`
if test "-$WGET-" = "--" || test "-$BZIP2-" = "--" || test "-$TAR-" = "--" \
- || test "-$GAWK-" = "--"
+ || test "-$XZ-" = "--" || test "-$GAWK-" = "--" || test "-$FILE-" = "--"
then
- echo You must install wget, tar, gawk and bzip2 to use apt-cyg.
+ echo You must install wget, tar, gawk bzip2 xz and file to use apt-cyg.
exit 1
fi
+arch=x86
+if uname -m|grep 'x86_64' > /dev/null 2>&1 ; then
+ arch=x86_64
+fi
+
function usage()
{
echo apt-cyg: Installs and removes Cygwin packages.
@@ -80,12 +87,12 @@
then
mirror="`head -1 /etc/setup/last-mirror`"
fi
- mirrordir="`echo "$mirror" | sed -e "s/:/%3a/g" -e "s:/:%2f:g"`"
+ mirrordir="`echo "$mirror/" | sed -e "s/:/%3a/g" -e "s:/:%2f:g"`"
echo Working directory is $cache
echo Mirror is $mirror
- mkdir -p "$cache/$mirrordir"
- cd "$cache/$mirrordir"
+ mkdir -p "$cache/$mirrordir/$arch"
+ cd "$cache/$mirrordir/$arch"
}
@@ -95,14 +102,14 @@
then
touch setup.ini
mv setup.ini setup.ini-save
- wget -N $mirror/setup.bz2
+ wget -N $mirror/$arch/setup.bz2
if test -e setup.bz2 && test $? -eq 0
then
bunzip2 setup.bz2
mv setup setup.ini
echo Updated setup.ini
else
- wget -N $mirror/setup.ini
+ wget -N $mirror/$arch/setup.ini
if test -e setup.ini && test $? -eq 0
then
echo Updated setup.ini
@@ -350,7 +357,12 @@
fi
echo "Unpacking..."
- cat $file | bunzip2 | tar > "/etc/setup/$pkg.lst" xvf - -C /
+
+ if file $file|grep "XZ compressed" > /dev/null 2>&1 ; then
+ cat $file | unxz | tar > "/etc/setup/$pkg.lst" xvf - -C /
+ else
+ cat $file | bunzip2 | tar > "/etc/setup/$pkg.lst" xvf - -C /
+ fi
gzip -f "/etc/setup/$pkg.lst"
cd ../..
Original comment by [email protected]
on 19 Dec 2013 at 7:47
from apt-cyg.
Fixed in 0.59.
Original comment by [email protected]
on 19 Feb 2014 at 8:43
- Changed state: Verified
from apt-cyg.
Related Issues (20)
- Mirror structures are changed, any install action failed. HOT 3
- apt-cyg for 64 bit HOT 2
- Patch for /trunk/apt-cyg HOT 1
- A New Fork on github HOT 1
- Does not work on 64bit cygwin HOT 4
- Here comes a solution to the architecture defined HOT 1
- ~ HOT 1
- repo /x86/ subdir is not taken for first setup dowload HOT 1
- Some packages do not install properly HOT 2
- arch prefix affects installation of packages
- apt-cyg fails install - http error 404 not found?
- "xz" extension problem HOT 1
- Multi-mirror
- /etc/setup/last-mirror should support last-mirrors.
- 21127 HOT 1
- 'apt-cyg' should work for Windows Accounts with spaces HOT 1
- Package sshpass not found or ambiguous name, exiting
- ./apt-cyg: line 388: apt-cyg: command not found
- md5 sum error HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apt-cyg.