Hướng dẫn cook rom cho Android với công cụ cygwin cho các dòng HTC

Thảo luận trong '[Android] Nâng cấp Firmware' bắt đầu bởi tuank53c, 10/7/10. Trả lời: 56, Xem: 37341.

  1. tuank53c

    tuank53c Thành viên

    Các bạn nên thường xuyên vào đây kiểm tra bản cập nhật mới nhất, có cả video hướng dẫn.
    Code:
    http://forum.xda-developers.com/showthread.php?t=633246
    Theo tác giả, công cụ này hỗ trợ các dòng sau :

    * Hero / G2 Touch
    * Nexus One
    * Dream / G1
    * Magic / myTouch 3G
    * Tattoo / Click
    * Droid Eris
    * Evo 4G
    * Incredible
    * Legend
    * All other rooted HTC Android devices (untested)


    Non-HTC devices that have been confirmed by others to work with this kitchen:

    * LG Ally / Aloha / Shine Plus
    * Motorola CLIQ

    tôi xài HTC desire, ROM của Desire khi cook bằng công cụ này chạy vù vù
    Yêu cầu tối thiểu : máy bạn phải được hack root, nếu chưa hack root thì bài viết này không phù hợp với bạn
    ---------------------------------------------
    Trước đây tôi có hướng dẫn cook rom cho HTC desire làm = tay , nhưng cách làm này không được Pro cho lắm , và hiện nay mới tìm được một tool rất hay do mem dsixda của xda-developers.com tạo ra nên viết bài hướng dẫn cho mọi người nghịch ngợm.
    Có thể sử dụng tool này trên windows, linux ubuntu , mac (trên windows thì nó là một công cụ giả lập môi trường dòng lệnh của UNIX)
    Bài này sẽ hướng dẫn cook rom với CYGWIN trên windows, trên Linux và Mac thì hơi lằng nhằng và tôi cũng không có điều kiện để làm trên đó, ai thích thì vào đây xem hướng dẫn :
    Code:
    http://forum.xda-developers.com/showthread.php?t=633246
    OK , trước tiên là download công cụ về đã:
    Code:
    http://android.grdlock.net/index.php?&direction=0&order=&directory=ROM%20Kitchens
    bạn down 2 file zip về
    cygwin_packages.zip
    dsixda_Android_Kitchen.zip (có nhiều version, chọn lấy một)

    Tiếp theo là down bộ java 1.6 về và setup nó (lúc chạy cywin sẽ đòi có java để chạy nên phải chiều nó một tí).
    -Đầu tiên là setup cái tool lên:
    xong rồi giải nén file cygwin_packages.zip , nhớ đọc file hướng dẫn ở trong đó để cài vào ổ C, đại loại trong quá trình cài đặt , click vào cái mũi tên vòng tròn để nó xuất hiện chữ install là được, nhớ trỏ vào thư mục cygwin_packages khi được hỏi chọn gói cài đặt. Xong một phần.

    Giải nén dsixda_Android_Kitchen.zip vào thư mục home của cywin.
    cài xong rồi
    Bạn có thể xem hướng dẫn tiếng anh ở đây
    Code:
    http://forum.xda-developers.com/showpost.php?p=5646155&postcount=76
    Nếu bạn nào không setup nổi thì down bộ cywin do rôi setup sẵn ở đây:
    Code:
    http://www.mediafire.com/?6d2rkzswxzmuo7d
    Xong phần cài đặt, tiếp theo là sử dụng chuơng trình.
    chạy Cygwin.bat sẽ có cửa sổ dòng lệnh , tại dấu nhắc dòng lệnh bạn gõ :
    cd /home để di chuyển vào thư mục home của cywin
    pic1.PNG
    Gõ ./menu và enter, khi báo lỗi thiều wget cứ gõ y và enter để tiếp tục
    sẽ có một list các lệnh cho bạn lựa chọn :

    Code:
    ===================================================================
     HTC Android Basic Kitchen - by dsixda (xda-developers.com)
    ===================================================================
    
    Main Menu
    
     1. Set up working folder from ROM
     2. Add root permissions
     3. Add BusyBox
     4. Disable boot screen sounds
     5. Add wireless tethering
     6. Zipalign all *.apk files to optimize RAM usage
     7. Show working folder information
    
    Advanced Options
    
    11. Port ROM from another device
    12. Add task killer tweak for speed (stock ROM only)
    13. Add /data/app functionality (stock ROM only)
    14. Extract kernel + modules from another ROM
    15. Extract kernel + ramdisk from working folder
    16. Build new boot.img from kernel + ramdisk (for previous option)
    17. Add Nano command-line text editor
    18. Add Bash command shell
    19. Enable Apps2SD (requires fat32 + ext3 partition)
    20. Change wipe status of ROM
    21. Deodex your ROM
    22. Run your own custom script
    
    99. Build ROM from working folder
    00. About/Update kitchen
     0. Exit
    
    Đọc menu này chắc mọi người hiểu là j rồi

    Bắt đầu cook rom thôi.
     
    :
    dude, kill_9999, thienlong_9x11 người khác thích nội dung này.
  2. tuank53c

    tuank53c Thành viên

    bạn copy rom vào đường dẫn C:\cygwin\home\original_update
    Thường là file zip, hoặc 2 file boot.img và system.img (là 2 file tạo ra sau khi NANDBACKUP)
    Bài viết này tôi dùng file img được dump ra từ máy của mình
    Chọn menu đầu tiên, ấn 1
    nó sẽ extract toàn bộ rom ra một folder mới là WORKING_xxx_xxx
    sau đó bạn có thể thêm bớt các phần mềm cần thiết vào thư mục system/app
    Lúc này thư mục data/app chưa xuất hiện, bạn ấn phím 0 để vào advandced option

    pic5.PNG

    Chọn menu 13 để cho phép tạo thư mục data/app
    xong rồi quay ra menu chính
    có thể thêm các phần mềm vào thư mục data/app bằng cách copy vào đấy.
    Muốn gỡ bỏ các phần mềm chỉ việc xóa bỏ nó đi là xong (trong data/app và system/app).
    Nhưng hãy cẩn thận khi xóa các phần mềm trong system/app , nếu không sẽ xuất hiện các lỗi không mong muốn .

    Lưu ý:
    nếu bạn thêm vào thư mục data/app thì khi format máy các phần mềm được cài từ thư mục này sẽ biến mất (khác với các file nằm trong system/app, các phần mềm này không bị xóa khi factory data reset)

    Ở menu chính còn một số tùy chọn khác nhưng tôi chưa nghịch bao giờ.
    Sau đó là build rom - gõ 99 và enter
    nó sẽ buid và sign rom cho bạn
    ROM mới được tạo ra nằm ở thư mục OUTPUT_ZIP
    pic7.PNG pic6.PNG

    Xong rồi, đổi tên file zip (Chọn file có chữ signed) và bỏ vào thẻ nhớ để FLASH thôi.Chúc mọi người thành công.

    Trong menu có một tùy chọn rất hay 11 - Port ROM from another device
    Tôi nghĩ đây chính là cách mà bản rom có sense của HTC desire được chuyển qua máy N1, mọi người thử nghiên cứu đi.
    Nhớ phải root máy và backup trước khi nghịch.

    tham khảo thêm chút:
    Ngoài công cụ CYGWIN để cook rom offline , còn có thể cookrom online được, giới thiệu với mọi người 2 địa chỉ :
    Code:
    http://forum.xda-developers.com/showthread.php?t=721168
    Địa chỉ này hình như chỉ có Premium members mới xài được:
    Code:
    http://android.modaco.com/content/htc-desire-desire-modaco-com/311328/02-jul-r21-modaco-custom-rom-for-htc-desire-with-online-kitchen-froyo-frf91/
    ------------------------------------------------------------
    Update thông tin ngày 13-11-2010
    Một số rom không có thư mục sdcard trong đó (những j trong sdcard khi up rom sẽ được copy thẳng vào thẻ nhớ)
    Có thể thêm vào Rom như sau :

    Tạo một thư mục có tên SDCARD cùng cấp với thư mục data và system (sau đó muốn copy cái j vào trong ấy cũng đc)
    mở file update scrip nằm trong \META-INF\com\google\android với wordpad bạn sẽ thấy đoạn code sẽ thực thi lúc uprom như sau (chưa có thư mục sdcard)
    Code:
    show_progress 0.1 0
    delete DATA:app   
    copy_dir PACKAGE:data DATA:  ===> copy thư mục data từ rom vào máy
    set_perm 1000 1000 0771 DATA:app
    format SYSTEM:  ====> format hệ thống (thư mục system)
    copy_dir PACKAGE:system SYSTEM: ========> copy thư mục system từ rom vào máy
    
    bổ sung thêm một dòng code sau vào dưới cùng đoạn code trên (với ĐK là thư mục sdcard đã được tạo ra như đã nói ở trên)
    Code:
    copy_dir PACKAGE:sdcard SDCARD:
    Kết quả đại loại như sau (copy từ ROM của tác giả Pays87):

    Code:
    show_progress 0.1 0
    
    delete DATA:app
    
    copy_dir PACKAGE:data DATA:
    set_perm 1000 1000 0771 DATA:app
    format SYSTEM:
    copy_dir PACKAGE:system SYSTEM:
    [COLOR="red"]copy_dir PACKAGE:sdcard SDCARD:[/COLOR]
    
    Lưu file update-script lại và làm các việc khác (sign ROM, cook, mod, flash ,...)
     
    bombdaika, thongdtk31, elicius1 người khác thích nội dung này.
  3. tuank53c

    tuank53c Thành viên

    Nhờ công cụ này tôi đã tìm ra một mẹo cực hay để lấy các phần mềm down từ market về, OK
    Bình thường khi mọi người vào market để down các phần mềm về rồi cài vào máy, nhưng không biết là nó cài vào đâu , làm thế nào để lấy được phần mềm đó dưới dạng *.apk để đem cho người khác, công cụ này sẽ giúp bạn.
    Cách làm :
    Tạo nand backup lên thẻ nhớ:
    sau khi backup xong bạn sẽ có 3 file là
    boot.img
    data.img (file này sẽ chứa các phần mềm cài đặt thêm lên máy)
    system.img

    Copy 2 file boot.img và data.img vào C:\cygwin\home\original_update, sau đó đổi tên data.img thành system.img
    Sau đó chạy CYWIN rồi chọn 1 - Set up working folder from ROM
    Nó sẽ extract file data.img ra cho bạn ở thư mục WORKING_XXX_XXX
    Giờ chỉ việc vào system\data\app và system\data\app-private copy các file *.apk đem ra chỗ khác là được.

    Lưu ý : một số phần mềm khi cài đặt nó chạy thẳng vào app-private nên một số chuơng trình như AppSaver chịu chết không lưu được file apk lên thẻ nhớ, lúc này phải dùng đến cygwin mới lấy được file (VD phần mềm iMemo là một VD, nó cài thẳng vào app-private).
     
    thongdtk31sevuot_qua thích nội dung này.
  4. kaka_bfc

    kaka_bfc Thành viên

    Bác đã cook được bản nào chưa post lên cho anh em vọc chút.
     
  5. tuank53c

    tuank53c Thành viên

    Đang up, chờ chút, mod giao diện cực đẹp luôn, mỗi tội là bản Eclair, lí do là bản Froyo chưa chèn được cái biểu tượng % vào cục pin nên chưa làm vội (Bên XDA vẫn chưa ai làm đc, vẫn còn tranh luận về % pin)
     
  6. tuank53c

    tuank53c Thành viên

    Giới thiệu với mọi người bản rom do tôi cook và mod lại theo sở thích của mình (Bản rom này dùng cho HTC desire, các máy khác không dùng được, muốn dùng đc hãy dùng CYGWIN để port nó sang máy bạn, cái này tôi chưa làm bao giờ).
    Trước khi nghich :
    +Máy của bạn phải đc hack root
    +Đề phòng trường hợp lỗi , hãy NandBackup lên thẻ nhớ .
    Được tạo ra từ 2 bản rom cook ban đầu trên XDA là :
    -[ROM] Pays-ROM Desire Sense v2.1 A2SD++ BraveSoul WLAN N + Tether [06th July 2010]
    Code:
    http://forum.xda-developers.com/showthread.php?t=674688
    -[ ROM-UPDATE ] Amer_Bravox_V4.1 KERNEL 2.6.29 UV OC r-14 on 1113-1267 Mhz
    Code:
    http://forum.xda-developers.com/showthread.php?t=707147
    -Thay đổi màn hình khởi động .
    -Đã mod lại biểu tượng cục pin thành trong suốt có % bên trong.
    -Mod lại biểu tượng sóng WIFI
    -Vẫn giữ nguyên các phần mềm có sẵn (Chỉ bỏ đi các chuơng trình Fakebook và twitter vì tôi không ưa lắm cái gọi là mạng xã hội)
    -Thay cái calculator default = chuơng trình realCalulator down về từ market (nhìn như cái máy tính của bọn học sinh đi thi ấy)
    -cài sẵn chuơng trình advancedLock
    -Thay bộ gõ HTC bình thường = bộ gõ HTC trên máy HTC EVO (có thêm 4 nút điều hướng)
    -Gỡ bỏ chuơng trình andexplorer và thay = Chuơng trình ESFileExplorer
    -Cài sẵn Taskiler
    -and more ...
    Link:
    Code:
    http://www.mediafire.com/download.php?yydvj5gddnj
    Một số hình ảnh:

    device6. device9. device11. device15. device14. device13. device7. device8. device10. device12.

    Các hình trên là tôi sử dụng LaucherPro để chạy chứ không phải sense của HTC, khi mới up rom xong thì Giao diện Sense sẽ chạy, chỉ việc kill cái sense và chuyển sang LaucherPro để chạy, cái này cảm ứng cực mượt chứ không giật như Sense.
    Để chuyển qua lại giữa sense và laucherPro , tham khảo ở đây
    http://forum.ppcgeeks.com/showthread.php?t=128345

    Đại loại là (ngại dịch):
    Code:
    Settings>>Applications>>Manage Applications
    
    from Manage Applications...find HTC Sense...click on it...
    
    scroll down a bit...you should see a button about restoring default...click that.
    
    hitting home after this will present you with a menu of both launcher pro and Sense.
    
    pick launcher pro...click the check box for default...and you're done!
    
    Rinse and repeat if you want to go back to Sense... 
    

    Chúc mọi người thành công.

    Lưu ý: Khi Flash xong, khởi động lại máy lần đầu tiên , hãy kiên nhẫn chờ (có khi là hơn 2 phút) ở màn hình khởi động , lí do là Rom mới , hệ thống cần rebuild lại nên hơi lâu, các lần sau khởi động lại máy rất nhanh .
     
  7. anhthpc

    anhthpc Thành viên

    G1 của em chỉ biết ngó nhìn mà thôi, chán nhỉ. :|
     
  8. tuank53c

    tuank53c Thành viên

    Có j mà chán, cứ mod giao diện cho nó đẹp vào là ngon thôi.
     
  9. tu19_01

    tu19_01 Thành viên

    Bác làm ơn Mod cho anh em G1 một bản đi. Đã từ lâu em tự hỏi sao không có Bác người Việt nào cook các bản Rom cho Android, bây giờ Bác là người tiên phong rồi, Bác làm 1 toppic riêng để anh em đươcj học hỏi. Cảm ơn Bác.
     
  10. tuank53c

    tuank53c Thành viên

    Không có máy G1 để mà thực hành, chán quá.
     
  11. swat_nlb

    swat_nlb Thành viên

    minh chay file cygwin.bat khong dc ban chi minh voi
     
  12. tuank53c

    tuank53c Thành viên

    Đây là bộ cygwin đang chạy trên máy tôi , hoạt động khá tốt:
    Code:
    http://www.mediafire.com/?6d2rkzswxzmuo7d
    Nhớ là máy tính phải cài đặt java đấy.
     
  13. MrSkull

    MrSkull Thành viên

    Hông biết e có làm sai bước nào không nhưng sau khi đã nghiên cứu kỹ lưỡng và cẩn thận trình tự các bước bác tuank53c, e vẫn không dùng được. Bác có thể cook rom theo yêu cầu hông hihi!
     
  14. tuank53c

    tuank53c Thành viên

    Không dùng được thì down bộ cygwin tôi setup sẵn đi
     
    MrSkull thích nội dung này.
  15. MrSkull

    MrSkull Thành viên

    Trước hết, e xin cám ơn bác tuank53c vì đã viết tut hoàn chỉnh để cook rom. E đã làm được đến bước 2 theo bài tut của bác (tức là extract boot.img và system.img thành 1 Working folder sẵn sàng để cook).

    Tiếp đến, e muốn làm thêm bước 2 như:
    Tuy nhiên, sau 1 hồi thực hành thì e không thể tạo ra WORKING_XXX_XXX với system\data\app và system\data\app-private chứa cái file *.apk được mà chỉ tạo ra 1 đống folder vô dụng. Không hỉu e đã làm gì sai....? Nếu bác cần, e gửi file data.img để bác extract dùm e thử. Thks alot!
     
  16. MrSkull

    MrSkull Thành viên

    Hi sau nguyên đêm và 1 buổi sáng đã cook thành công rom mới dựa vào rom Villian 12 cho Hero.
     
  17. Duy Luân

    Duy Luân Không có gì!

    Chỉ dùng được cho HTC thôi. HUhuhuhuhuhuhuhuhu.
     
  18. tuank53c

    tuank53c Thành viên

    @mr Đầu lâu: xin chúc mừng, cuối cùng cũng đã có một người nữa cook được rom android,Cảm giác khi cook được một rom rất là Yomost.
    cook được rồi thì tiến thêm 1 bước nữa là mod rom android đi, cái này mới thú vị (bài tập đưa ra là : hãy tự mình thay đổi thanh expressoBar của giao diện sense , đổi hình dạng của thanh notification,đổi hình dạng pin,...)
    Còn cái vấn đề extract file *.apk chỉ là một thủ thuật nhỏ, chả liên quan j đến cook rom cả, tôi đã test thành công Rom trên HTC desire, còn Rom của các máy khác như G1, hero thì không có điều kiện thực hành vì không có máy. Bạn cố thử lại xem có sai j không, thư mục "original_update" phải có tối thiểu 2 file là :boot.img và system.img (do đó mình sẽ đánh lừa cywin = cách đổi tên data.img thành system.img để nó extract ra cho mình)

    -Không nhất thiết phải đặt các file NandBackup vào C:\cygwin\home\original_update, có thể down 1 bản rom (file *.zip) về đặt vào đấy nó cũng extract ra được.
     
  19. baotin888

    baotin888 Thành viên

    sao em vào đc phần home rồi nhưng k chỉnh vào đc phần menu? Vui lòng giúp đỡ!
     
  20. MrSkull

    MrSkull Thành viên

    Bạn chụp hinh up lên để em bị lỗi gi nha