domenica 4 agosto 2013

Galaxy Nexus Aosp 4.3 interamente compilato con Linaro 4.7.4

Salve a tutti, sono riuscito a compilare con la toolchain linaro 4.7.4 sia il kernel 3.0.72 che l'intera rom dai sorgenti Google Aosp del Samsung Galaxy Nexus.

kernel + ramdisk:
  • Kernel updated to: 3.0.72 (compiled with Linaro GCC 4.7.4-2013.06.26)
  • Compressed zImage – LZO
  • Disabled ro.adb.secure
  • Enable adb remount
  • Available I/O Schedulers: Deadline – CFQ – No-op 
  • Available CPUFreq govenor: performance – powersave – userspace – ondemand – interactive – conservative – hotplug
  • Enabled CIFS support
  • Enabled NFS support
  • Enabled TUN support
  • Fix shell adb in standard GNU/Linux
  • Enabled Local Version
  • Enabled /proc/config.gz
  • Enabled extract config zImage
system:
  • AOSP Jelly Bean 4.3 build JWR66V (compiled with Linaro GCC 4.7.4-2013.06.26)
  • Installato busybox
La rom non ha il root, mancano anche le google apps, se volete potete installarle tramite la recovery clockworkmod, in basso i link dei download.

Guida per l'installazione:
  1. Installate la recovery Clockworkmod
  2. Scaricate e copiate lo zip nella sdcard
  3. Reboot in recovery, fate wipe data/factory restore e flashate.
Download

- Galaxy-Nexus-4.3-linaro-odexed
- Galaxy-Nexus-4.3-linaro-deodexed
- Root SuperUser 1.51
- Gapps-jb-4.3

Galaxy Nexus 4.3 compiled with toolchain linaro 4.7.4 with cflags -O3

Galaxy_Nexus_4.3_linaro_odexed_02

La rom odexata sembra molto fluida e veloce, per aumentare la velocità del luncher, andate in Impostazioni - abilitate Opzioni sviluppatore - selezionate scala animazione finestra, transizione e animatore a 0,5x.

Se la mia rom vi piace ringraziatemi con una Donazione

Link:

- http://forum.xda-developers.com/showthread.php?p=44338618#post44338618
- http://www.hacklabproject.org/forum/viewtopic.php?f=74&t=9937&p=14214#p14214



domenica 24 febbraio 2013

Scaricare sorgenti Kernel Galaxy Nexus con Git

Ciao a tutti, avevo necessità di scaricare i sorgenti kernel aggiornati del nexus ma non sapevo come scaricarli con git, non sapevo quali comandi dare, anche perchè la documentazione di source.android.com non è tanto completa e chiara, ma grazie all'aiuto di Estebansannin sono riuscito a scaricarli, vi elenco i vari comandi da dare per scaricarli tramite shell di linux, ovviamente prima dovete installare git sulla vostra distro linux:

Codice: 
git clone https://android.googlesource.com/kernel/omap.git

git branch -a  (questo comando vi elencherà le varie versioni del kernel)
master
* remotes/origin/android-omap-tuna-3.0-jb-mr1.1
  remotes/origin/HEAD -> origin/master
  remotes/origin/android-omap-3.0
  remotes/origin/android-omap-panda-3.0
  remotes/origin/android-omap-steelhead-3.0-ics-aah
  remotes/origin/android-omap-tuna-3.0
  remotes/origin/android-omap-tuna-3.0-ics-mr1
  remotes/origin/android-omap-tuna-3.0-jb-mr0
  remotes/origin/android-omap-tuna-3.0-jb-mr1
  remotes/origin/android-omap-tuna-3.0-jb-mr1.1
  remotes/origin/android-omap-tuna-3.0-jb-pre1
  remotes/origin/android-omap-tuna-3.0-mr0
  remotes/origin/android-omap-tuna-3.0-mr0.1
  remotes/origin/linux-omap-3.0
  remotes/origin/master
  remotes/origin/sph-l700-fh05

git checkout remotes/origin/android-omap-tuna-3.0-jb-mr1.1 (scegliete l'ultima versione aggiornata del kernel jelly bean)

git checkout -b remotes/origin/android-omap-tuna-3.0-jb-mr1.1 (ora avete i sorgenti del kernel)

make tuna_defconfig (questo comando vi carica il config del nexus e lo compila, ma dovete avere nelle variabili d'ambiente una toolchain arm prima di compilare) 
Io ho compilato un kernel dove ho adattato la patch Galaxy Nexus 1.4GHz overclock + Undervolting di coolbho3000 per questa versione del kernel e abilitato vari moduli come la swap, cifs, nfs e il bootup logo di tux anche se ancora devo mettere la stringa da inserire nella cmdline per abilitare all'avvio il boot logo, presto pubblicherò la patch adattata e il boot.img.

Trasferire dati sul Galaxy Nexus tramite adb

Salve a tutti, scrivo questa guida per farvi vedere tramite uno script in bash come copiare i dati dal computer al vostro nexus e viceversa tramite adb visto che il protocollo mtp adottato dalla samsung per il trasferimento dati funziona su windows e forse sulle ultime versioni di ubuntu, io con la versione di ubuntu 10.04 il protocollo mtp non funziona. Prima di tutto dovete avere il binario di adb copiato in /usr/bin o exportare il percorso dove si trova tramite variabile d'ambiente, poi eseguite lo script che ho pubblicato sotto, prima di eseguirlo date i permessi di esecuzione con chmod +x nome_script.

Codice: 
#!/bin/bash
#
# Script per caricare e scaricare file sul Galaxy Nexus tramite adb
# by Giacomo Giacalone alias Morfes
#

# Avvio adb
sudo adb kill-server
sudo adb start-server

# Riconoscimento devices
adb devices

echo
echo -n "Inserire percorso file da copiare (esempio /home/utente/Documenti/file.txt)[Invio] : "
read input

echo
echo -n "Inserire percorso file da copiare (esempio /sdcard/ per salvere il file in sdcard)[Invio]: "
read output
echo

echo
echo -n "Adb push copia file dal computer al devices, adb pull copia file dal devices al computer, scrivi push o pull [Invio]: "
read scelta
echo

adb "$scelta" "$input" "$output"

echo -n "Files copiati"
echo
come vedete lo script è molto semplice ma fa il suo lavoro, se volete potete personalizzarlo. Enjoy

martedì 3 luglio 2012

Creare un Access Point su Linux

In windows creare degli access point è facile grazie all'utilizzo di programmi come virtual wifi e quelli delle schede wifi realtek come quella rtl8187, ma su linux la creazione e configurazione dell'access point è più complessa. Non potendomi collegare tramite wifi con il mio tablet Zenithink C71 per via della sua scadente scheda wifi, ho pensato di creare un access point che condivide la connessione della scheda wifi del mio portatile collegato a sua volta al router. Per fare ciò ho usato due schede wifi, la rtl8187 usb e la bcm4311 integrata nel mio acer aspire e la suite di aircrack-ng, precisamente ho utilizzato i programmi airmon-ng e airbase-ng. Ho creato un ap open ma senza un server dhcp, quindi per ogni connessione di un pc o devices android bisogna impostare l'indirizzi ip statici, ma si può anche creare un server dhcp e impostare su airbase-ng una crittografia wep o wpa. Per farvi una idea vedete i comandi che ho usato e il mio script che automatizza il tutto. 

Script access point ---> http://pastebin.com/9TrREfEW

# Creazione ap
sudo airmon-ng start wlan0

echo
echo -n "Inserire nome dell'access point [Invio]: "
read nome_ap

echo
echo -n "Inserire numero del canale dell'access point [Invio]: "
read num_canale
echo

# Configuro l'ap
gnome-terminal -x bash -c "sleep 6; sudo ifconfig at0 192.168.5.1 netmask 255.255.255.0; sudo -s; echo "1" > /proc/sys/net/ipv4/ip_forward; iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE; iptables --append FORWARD --in-interface at0 -j ACCEPT; iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.1.1"

sudo airbase-ng -e "$nome_ap" -c "$num_canale" mon0

Come vedete ho utilizzato le due schede wifi, la wlan0 è la bcm4311 integrata invece la wlan1 è la rtl8187 usb, ho impostato nello script la scelta di poter impostare il nome dell'access point e il numero del canale, ma voi oltre a questo potete aggiungere la variabile per impostare anche la chiave wep o wpa. Airbase-ng crea una scheda wifi virtuale at0 dove ho impostato gli indirizzi ip del gateway e della submask, poi ho configurato l'access point per poter prendere la connessione tramite la scheda wifi rtl8187 "wlan1" che è connessa al router  usando l'ip dns del router per la navigazione grazie agli iptables. Nello script ho messo il comando gnome-terminal perchè airbase-ng quando crea l'ap lascia la shell aperta per il log dei client che si collegano ad esso e non permette la continuazione dei comandi, con gnome-terminal apre un'altra shell che esegue i comandi tra gli apici. La guida è stata scritta per gli utenti linux che usano ubuntu, ma lo script è adattabile a qualsiasi distro. Se volete creare anche il server dhcp installate tramite apt dhcp3d-server e nel file /etc/dhcp3/dhcpd.conf impostate gli ip, in rete si trovano guide su come creare un server dhcp.


sabato 26 maggio 2012

Sorgenti del modulo qf9700 fixati per il kernel 2.6.34 Amlogic

Sono riuscito a fixare i sorgenti del driver qf9700 dell'adattatore usb-ethernet pubblicati da mquin(kernel linux) per il kernel 2.6.34 Amlogic. Scaricate l'archivio http://dl.dropbox.com/u/64550987/source_qf9700.tar.gz http://www.multiupload.nl/SUEVYXAB3R e inserite i file nei sorgenti del kernel 2.6.34 Amlogic. Enjoy