Commit fb6b201f authored by Radek Polak's avatar Radek Polak

Merge branch 'master' into translations

parents e935b606 3457ab6c
qtmoko (58-1) unstable; urgency=low
* gta02 kernel upgrade to 2.6.39
* gta04 kernel upgrade to latest Neil's 3.7
* hack to stop vibrating after resume
* show end call button after 2s to avoid unwanted press
* improved colors in qmplayer encoding
* better name of encoded movie in qmplayer
* using emdebian for some packages
* using glamo-mplayer as package
* suspend in locked screen is now after 3s
-- Radek Polak <psonek2@seznam.cz> Sun, 01 Dec 2013 21:16:00 +0100
qtmoko (57-1) unstable; urgency=low
qtmoko (57-1) unstable; urgency=low
* clever charging for gta04
* charging log
......
......@@ -2,4 +2,7 @@
# script executed after resume, next suspend is disabled until if finishes up
#/opt/qtmoko/bin/gps-event.sh resume
#/opt/qtmoko/bin/btfix.sh
\ No newline at end of file
#/opt/qtmoko/bin/btfix.sh
# make sure that vibrator is not vibrating which sometimes happens
echo 0 > /sys/class/leds/gta02::vibrator/brightness
\ No newline at end of file
......@@ -16,6 +16,7 @@ stty -F /dev/tty1 -echo
rm -rf /var/run/ppp
mkdir /var/run/ppp
mkdir -p /var/cache/apt/archives/partial
rfkill unblock wifi
touch /tmp/restart-qtopia
while [ -e /tmp/restart-qtopia ]; do
......
......@@ -60,8 +60,8 @@ qdsync="0,0,640,480,0"
[LockPower]
Brightness=2463
Dim=true
Interval=10
Interval_Dim=0
Interval=3
Interval_Dim=1
Interval_LightOff=0
LightOff=false
Suspend=true
......
......@@ -22,7 +22,7 @@ ssh -p 22222 root@localhost
* The system is very minimal, download more packages:
apt-get update
apt-get install cdebootstrap mtd-utils
apt-get install multistrap cdebootstrap mtd-utils
Step 1
......@@ -30,7 +30,59 @@ Step 1
* We will be installing new image to /media/card:
cdebootstrap --flavour=minimal --include=ifupdown,net-tools,procps,netbase,nano,module-init-tools,wget,openssh-server,screen,mc,libts-0.0-0,libasound2,alsa-utils,udhcpc,wpasupplicant,wireless-tools,iputils-ping,iproute,bluez,bluez-alsa,dosfstools,fbset,rsyslog,psmisc,iptables,dash,ttf-dejavu,libpng12-0,libjpeg8,libxtst6,sqlite3,ntpdate,gstreamer0.10-ffmpeg,gstreamer0.10-plugins-good,gstreamer0.10-fluendo-mp3,liblcms1,libmng1,libtiff4,libvorbisfile3,libicu48,gpsd,gpsd-clients,timeout,ppp,gstreamer0.10-alsa wheezy /media/card/ http://cdn.debian.net/debian/
cd ~
cat > multistrap.conf << __END__
[General]
arch=armel
directory=/media/card
cleanup=true
noauth=false
unpack=true
aptsources=Grip Debian
debootstrap=Grip Debian
[Debian]
packages=openssh-server libts-0.0-0 udhcpc iputils-ping liblcms1 libexpat1 omhacks
source=http://cdn.debian.net/debian/
keyring=debian-archive-keyring
suite=wheezy
[Grip]
packages=ifupdown net-tools procps netbase nano module-init-tools wget screen mc wpasupplicant wireless-tools iproute dosfstools fbset rsyslog psmisc iptables dash ttf-dejavu libpng12-0 libjpeg8 libxtst6 sqlite3 ntpdate libmng1 libtiff4 libvorbisfile3 libicu48 gpsd ppp rfkill libasound2 alsa-utils libcap-ng0 libcap2 libsystemd-login0 dbus libgstreamer-plugins-base0.10-0
keyring=emdebian-archive-keyring
source=http://www.emdebian.org/grip
suite=wheezy-grip
__END__
multistrap -f multistrap.conf
Step 1.2 - modified packages
============================
* wpa_supplicant has non upstream patch, bluez and gpsd-clients have useless
python dependencies. See step 14 and 15 below how they are built.
cd /media/card
wget http://qtmoko.sourceforge.net/debian/gta02/armel/bluez_4.99-2_armel.deb
wget http://qtmoko.sourceforge.net/debian/gta02/armel/gpsd-clients_3.6-4+deb7u1_armel.deb
wget http://qtmoko.sourceforge.net/debian/gta02/armel/wpasupplicant_1.0-3_armel.deb
wget http://ftp.de.debian.org/debian/pool/main/b/bluez/bluez-alsa_4.99-2_armel.deb
mount -t proc none /media/card/proc
chroot /media/card
dpkg -i gpsd-clients_3.6-4+deb7u1_armel.deb
dpkg -i wpasupplicant_1.0-3_armel.deb
dpkg -i bluez_4.99-2_armel.deb
/etc/init.d/bluetooth stop
dpkg -i bluez-alsa_4.99-2_armel.deb
exit
umount /media/card/proc
rm gpsd-clients_3.6-4+deb7u1_armel.deb
rm wpasupplicant_1.0-3_armel.deb
rm bluez_4.99-2_armel.deb
rm bluez-alsa_4.99-2_armel.deb
Step 2
......@@ -72,7 +124,6 @@ sed -i 's/\(PermitEmptyPasswords\) no/\1 yes/' /media/card/etc/ssh/sshd_config
chroot /media/card /bin/sh -e <<__END_CHROOT__
echo root: root | chpasswd
sed -i 's/root:.*/root:C0XOiCyzQDtsA:14973:0:99999:7:::/' /etc/shadow
apt-get --yes --purge remove cdebootstrap-helper-rc.d
__END_CHROOT__
......@@ -96,8 +147,6 @@ Step 4
echo g_ether > /media/card/etc/modules
echo ppp_generic >> /media/card/etc/modules
echo lis302dl >> /media/card/etc/modules
echo joydev >> /media/card/etc/modules
echo bq27x00_battery >> /media/card/etc/modules
echo ohci_hcd >> /media/card/etc/modules
echo snd-soc-neo1973-wm8753 >> /media/card/etc/modules
......@@ -151,31 +200,6 @@ update-rc.d -f alsa-utils remove
exit
Step 4.1 - DHCP server - not using now
======================================
* DHCP server will arrange USB networking with PC out-of-the-box for
distributions using NetworkManager.
* Not using now - the problem is that e.g. my notebook prefers usb0 over wifi
and internet does not work then.
* You need install package dhcp3-server in step1.
cat > /media/card/etc/dhcp3/dhcpd.conf <<__END__
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.202;
option domain-name-servers 208.67.222.222, 208.67.220.220;
pool {
max-lease-time 7200;
range 192.168.0.200 192.168.0.201;
allow unknown clients;
}
}
__END__
Step 4.5 - make it generate SSH keys on start
=============================================
......@@ -280,47 +304,6 @@ exit
rm /media/card/etc/network/run
mkdir /media/card/etc/network/run
Step 6 - omhacks
================
* omhacks is used for controlling neo hardware, the version in squeeze is old
and can't be used with > 2.6.34 kernels, so install from sid:
chroot /media/card
wget http://cdn.debian.net/debian/pool/main/o/omhacks/libomhacks0_0.16-1_armel.deb
wget http://cdn.debian.net/debian/pool/main/o/omhacks/omhacks_0.16-1_armel.deb
dpkg -i libomhacks0_0.16-1_armel.deb
dpkg -i omhacks_0.16-1_armel.deb
rm libomhacks0_0.16-1_armel.deb
rm omhacks_0.16-1_armel.deb
exit
Step 6.2 - modified wpa_supplicant
==================================
* There is a regression in wpa_supplicant affecting Freerunner. We have to
install modified version with this patch reverted:
diff --git a/src/drivers/driver_wext.c b/src/drivers/driver_wext.c
index 9fa356b..e44aeac 100644
--- a/src/drivers/driver_wext.c
+++ b/src/drivers/driver_wext.c
@@ -1007,7 +1007,7 @@ int wpa_driver_wext_scan(void *priv, struct wpa_driver_scan_params *params)
/* Not all drivers generate "scan completed" wireless event, so try to
* read results after a timeout. */
- timeout = 5;
+ timeout = 10;
if (drv->scan_complete_events) {
/*
* The driver seems to deliver SIOCGIWSCAN events to notify
For more info check:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=679085
http://w1.fi/bugz/show_bug.cgi?id=456
http://patchwork.ozlabs.org/patch/167925/
Step 6.5 - configure gpsd
=========================
......@@ -348,7 +331,7 @@ Step 8 - install QtMoko
* I use qemu armel host for building qtmoko package. It should be as simple as
git checkout v55
git checkout v58
dpkg-buildpackage
* Note that you may need to install some dependencies before building:
......@@ -368,10 +351,10 @@ git submodule update --init
* Install it
chroot /media/card/
wget http://qtmoko.sourceforge.net/debian/gta02/qtmoko-neo_55-1_armel.deb
dpkg -i qtmoko-neo_55-1_armel.deb
wget http://qtmoko.sourceforge.net/debian/gta02/qtmoko-neo_58-1_armel.deb
dpkg -i qtmoko-neo_58-1_armel.deb
update-rc.d qtmoko-neo defaults
rm qtmoko-neo_55-1_armel.deb
rm qtmoko-neo_58-1_armel.deb
exit
killall qpe.sh # recent versions start qtmoko after install, so kill it
rm -rf /media/card/home/root/* # remove all stuff created by qpe
......@@ -382,8 +365,9 @@ Step 8.1 - install mokofaen theme
* Mokofaen is now default theme for qtmoko - but it's not part of qtmoko deb
package, so that user can uninstall it to save space. So install mokofaen:
chroot /media/card/
cd /media/card
wget http://qtmoko.sourceforge.net/apps/all/qtmoko-theme-mokofaen_3-2_all.deb
chroot /media/card/
dpkg -i qtmoko-theme-mokofaen_3-2_all.deb
rm qtmoko-theme-mokofaen_3-2_all.deb
exit
......@@ -420,9 +404,9 @@ dpkg-buildpackage
* Install kernel image:
chroot /media/card
wget http://qtmoko.sourceforge.net/debian/gta02/linux-image-2.6.39-qtmoko-gta02_55-1_armel.deb
dpkg -i linux-image-2.6.39-qtmoko-gta02_55-1_armel.deb
rm linux-image-2.6.39-qtmoko-gta02_55-1_armel.deb
wget http://qtmoko.sourceforge.net/debian/gta02/linux-image-2.6.39-qtmoko-gta02_58-1_armel.deb
dpkg -i linux-image-2.6.39-qtmoko-gta02_58-1_armel.deb
rm linux-image-2.6.39-qtmoko-gta02_58-1_armel.deb
exit
* Create boot args and symlink for qi:
......@@ -436,11 +420,10 @@ Step 9.1 - Linux kernel cross compiling - not using anymore
* If you want to cross compile kernel and make uboot image on PC:
make CROSS_COMPILE=/opt/toolchains/arm920t-eabi/bin/arm-linux- ARCH=arm
make CROSS_COMPILE=/opt/toolchains/arm920t-eabi/bin/arm-linux- ARCH=arm modules_install INSTALL_MOD_PATH=GTA02
find GTA02/lib/modules -name *.ko -exec /opt/toolchains/arm920t-eabi/bin/arm-linux-strip -R .not -R .comment --strip-unneeded {} \;
/opt/toolchains/arm920t-eabi/bin/arm-linux-objcopy -O binary -R .note -R .comment -S arch/arm/boot/compressed/vmlinux linux.bin
mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008000 -n "qtmoko-v28" -d linux.bin uImage-GTA02.bin
make CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- ARCH=arm gta02_defconfig
make -j8 CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- ARCH=arm uImage
make -j8 CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- ARCH=arm modules
make CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- ARCH=arm modules_install INSTALL_MOD_PATH=GTA02
Step 9.2 - import QtMoko debian repository public keys
......@@ -489,8 +472,10 @@ nano /media/card/etc/rc.local
Step 10 - release tarball
=========================
* Release tarbals are uploaded to sourceforge dir /home/frs/project/qtmoko/GTA02/
cd /media/card
tar -czvf ../qtmoko-debian-gta02-v55.tar.gz .
tar -czvf ../qtmoko-debian-gta02-v58.tar.gz .
Step 11 - make ubifs images
===========================
......@@ -520,6 +505,19 @@ mv 1 DejaVuSansCondensed-Bold.ttf
mv 2 DejaVuSansCondensed.ttf
mv 3 DejaVuSansMono.ttf
* Trim down midnight commander
mkdir /media/card/usr/share/mc-new
cp /media/card/usr/share/mc/mc.* /media/card/usr/share/mc-new
mkdir /media/card/usr/share/mc-new/skins
cp /media/card/usr/share/mc/skins/default.ini /media/card/usr/share/mc-new/skins
rm -rf /media/card/usr/share/mc/
mv /media/card/usr/share/mc-new /media/card/usr/share/mc
* Strip kernel modules a bit more (saves ~1MB)
find /media/card/lib/modules/2.6.39-qtmoko-v58/ -name *.ko -exec strip -R .not -R .comment --strip-unneeded {} \;
* Edit the mount for root in /media/card/etc/fstab so that it reads:
......@@ -541,7 +539,7 @@ vol_flags=autoresize
__END__
mkfs.ubifs -r /media/card -o qtmoko-debian.ubifs -x zlib -m 2048 -e 126976 -c 2047
ubinize -o qtmoko-debian-gta02-v55.ubi -m 2048 -p 128KiB -s 2048 -O 2048 ubinize.cfg
ubinize -o qtmoko-debian-gta02-v58.ubi -m 2048 -p 128KiB -s 2048 -O 2048 ubinize.cfg
rm qtmoko-debian.ubifs
Step 12 - jffs2 image (not using anymore)
......@@ -584,6 +582,55 @@ dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
apt-ftparchive release . > Release
gpg -abs -o Release.gpg Release
Step 14 - modified wpa_supplicant
==================================
* There is a regression in wpa_supplicant affecting Freerunner. We have to
install modified version with this patch reverted:
diff --git a/src/drivers/driver_wext.c b/src/drivers/driver_wext.c
index 9fa356b..e44aeac 100644
--- a/src/drivers/driver_wext.c
+++ b/src/drivers/driver_wext.c
@@ -1007,7 +1007,7 @@ int wpa_driver_wext_scan(void *priv, struct wpa_driver_scan_params *params)
/* Not all drivers generate "scan completed" wireless event, so try to
* read results after a timeout. */
- timeout = 5;
+ timeout = 10;
if (drv->scan_complete_events) {
/*
* The driver seems to deliver SIOCGIWSCAN events to notify
For more info check:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=679085
http://w1.fi/bugz/show_bug.cgi?id=456
http://patchwork.ozlabs.org/patch/167925/
* The modified package is now uploaded with others here:
http://qtmoko.sourceforge.net/debian/gta02/armel/
Step 15 - modified bluez and gpsd-clients
========================================
* These packages in wheezy suck because they add usless python dependencies
which is ~60MB
* The tricks is that we rebuild them without dependencies:
apt-get build-dep bluez gpsd-clients
apt-get source bluez gpsd-clients
* Now edit their debian/control and manually remove dependencies and rebuild
packages with dpkg-buildpackage
* The modified packages are now uploaded here:
http://qtmoko.sourceforge.net/debian/gta02/armel/
Boot speedup
============
......
......@@ -889,7 +889,7 @@ bool QMplayer::startMencoder(QString srcFile, QString dstFile)
args.append("vcodec=mpeg4:vhq:vbitrate=300:acodec=ac3");
args.append("-vf");
#ifdef QT_QWS_NEO
args.append("scale=320:240,eq2=1.2:0.5:-0.25,rotate=2");
args.append("scale=320:240,eq2=1.2:0.5:-0.25,rotate=2 -vf eq2=1:1:0:1:1.19:1.19:1.44");
#else
args.append("scale=640:480,eq2=1.2:0.5:-0.25,rotate=2");
#endif
......@@ -1295,7 +1295,12 @@ PLAY:
connect(process, SIGNAL(finished(int, QProcess::ExitStatus)), this,
SLOT(processFinished(int, QProcess::ExitStatus)));
//process->setProcessChannelMode(QProcess::ForwardedChannels);
process->start("mplayer", args, QIODevice::ReadWrite);
QString mplayerBin = "mplayer";
if(QFile::exists("/usr/bin/mplayer-glamo"))
mplayerBin = "/usr/bin/mplayer-glamo";
process->start(mplayerBin, args, QIODevice::ReadWrite);
if (process->waitForStarted(5000)) {
setpriority(PRIO_PROCESS, process->pid(), -5);
......@@ -1325,7 +1330,12 @@ PLAY:
void QMplayer::encode(QString filename)
{
QString dstFile = getEncFilename(filename, ".encoded.mp4");
#ifdef QT_QWS_NEO
QString dstFile = filename + ".gta02.mp4";
#else
QString dstFile = filename + ".encoded.mp4";
#endif
if (startMencoder(filename, dstFile)) {
#ifdef QTOPIA
QtopiaApplication::setPowerConstraint(QtopiaApplication::
......@@ -1401,13 +1411,8 @@ bool QMplayer::installMplayer()
f.write("vo=glamo\n\n[default]\nafm=ffmpeg\nvfm=ffmpeg\n");
f.close();
return download("http://72.249.85.183/radekp/qmplayer/download/mplayer",
"/usr/bin/mplayer", "mplayer", false) &&
QFile::setPermissions("/usr/bin/mplayer", QFile::ReadOwner |
QFile::WriteOwner | QFile::ExeOwner |
QFile::ReadUser | QFile::ExeUser |
QFile::ReadGroup | QFile::ExeGroup |
QFile::ReadOther | QFile::ExeOther);
QProcess::execute("raptor", QStringList() << "-i" << "http://qtmoko.sourceforge.net/debian/gta02/armel/mplayer-glamo.deb");
return QFile::exists("/usr/bin/mplayer-glamo");
} else {
QProcess::execute("raptor", QStringList() << "-u" << "-i" << "mplayer");
......
......@@ -389,7 +389,7 @@ bool QX::checkX()
#ifdef QT_QWS_NEO
QProcess::execute("raptor", QStringList() << "-u" << "-i" << "xfonts-base" << "xterm" << "x11-xserver-utils");
QProcess::execute("raptor", QStringList() << "-i" << "http://qtmoko.sourceforge.net/download/Xglamo.deb");
QProcess::execute("raptor", QStringList() << "-i" << "http://qtmoko.sourceforge.net/debian/gta02/armel/Xglamo.deb");
#else
QProcess::execute("raptor", QStringList() << "-u" << "-i" << "xfonts-base" << "xterm" << "x11-xserver-utils" << "xserver-xfbdev");
#endif
......
......@@ -1744,10 +1744,10 @@ int Qtopia::readSysfsStr(const char *path, char *buf, int bufLen, bool warnOnErr
buf[0] = 0;
return errRes;
}
if(buf[n] == '\n') // remove new line char
buf[n] = 0;
if(buf[n-1] == '\n') // remove new line char
buf[n-1] = 0;
else
buf[n+1] = 0; // terminate string
buf[n] = 0; // terminate string
return n;
}
......
......@@ -137,7 +137,7 @@ void QGpsdWhereabouts::timerEvent(QTimerEvent *event)
errorprintf("timerEvent: read error");
}
else {
debugprintf("Got set: %x", (unsigned int)gps_data.set);
debugprintf("Got set: %x", (unsigned int)gpsdata.set);
parseFix(gps_data);
}
}
......
......@@ -1642,6 +1642,14 @@ void ThemedCallScreenView::endCall()
emit hangupCall();
}
/*!
* \internal
*/
void ThemedCallScreenView::showEndCall()
{
setItemActive("endcall", true);
}
/*!
\internal
*/
......@@ -1833,7 +1841,7 @@ void ThemedCallScreenView::muteRingSelected()
void ThemedCallScreenView::callConnected(const QPhoneCall &)
{
setItemActive("answer", false);
setItemActive("endcall", true);
QTimer::singleShot(2000, this, SLOT(showEndCall())); // setItemActive("endcall", true);
setItemActive("resume", false);
setItemActive("sendbusy", false);
setItemActive("hold", true);
......
......@@ -126,6 +126,7 @@ private slots:
void rejectModalDialog();
void initializeMouseControlDialog();
void endCall();
void showEndCall();
private:
int activeCallCount() const { return activeCount; }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment