[HowTo] Archos gen8 firmware 2.3.81-2.4.83+rw iptables and 1GB ext4 data

Search This thread

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
I just wanted my Archos Gen8 to have the latest stock firmware, root access, iptables support (for Droidwall) and a 1GB ext4 data partition. I will show you how to create this setup yourself. This howto describes all steps for a Linux PC with a working adb connection to the Archos Gen8. I am sure all steps can be done from a Windows PC too, but I cannot help you there: I only speak linux. [edit: Harfainx has written a thread on http://forum.archosfans.com/viewtopic.php?f=76&t=54637 that explains how to do these steps on windows; if you to do this from windows and have iptables and ext4, use my attached kernel and ext4 modifications instead of Harfainx' suggested chulri kernel]

[Archos] = do on tablet
[Linux] = do on PC
[Shell] = do in a terminal on PC
[ADB] = do in a adb shell from PC
[GParted] = do in gparted in PC
[Editor] = do in your favorite text editor on PC

All credits for this procedure go to other people (see end of this post); my only contribution is this write up, and the compilation of the new kernel.

1. Use chulri's root method to obtain root+rw with the latest Archos firmware on your Archos Gen8 (download the proper firmware version, and take care to rename the downloaded firmware file to firmware_archos_android_gen8.aos).

2. Install the matching version of my kernel + initramfs (see links below)
  • reboot Archos device and hold down "Vol-" button after screen went black
  • Go to "Recovery Menu" and then "Developer Edition Menu"
  • choose "Flash Kernel and Initramfs"
  • connect your Archos device by USB to your computer
  • upload zImage and initramfs.cpio.gz to your device
  • safely disconnect the USB connection
  • press ok on Archos device
  • reboot

3. Repartition your internal SD card
  • reboot Archos device and hold down "Vol-" button after screen went black
  • Go to "Recovery Menu" and then "Repair system” ->"Start USB MSC"
  • Connect tablet to your linux pc
  • Resize interal SD card and add an ext4 partition:
    • [Shell] sudo gparted
    • [GParted] find Archos device. For me it is found on /dev/sdc
    • [GParted] select the Archos partition and resize to have 1024MiB at the end left
    • [GParted] create a new primary partion using all the space you just created, filesystem ext4 and align to MiB
    • [GParted] apply all selected actions, let it finish and quit gparted.
  • unplug and reconnect your device so Linux finds it again.
  • Format the ext4 partition with some nice settings (if your device was on /dev/sdb replace /dev/sdc2 with /dev/sdb2 below):
    • [Shell] sudo mkfs.ext4 -b 4096 -E stride=64,stripe-width=64 -O extent,^huge_file -m 0 -L data /dev/sdc2
    • [Shell] sudo tune2fs -c -1 -i 0 -m 1 -O ^huge_file -o journal_data_writeback /dev/sdc2
    • [Shell] sudo e2fsck /dev/sdc2
  • press ok on Archos device
  • reboot

4. Make your new ext4 partition your /data partition
  • Boot up your Archos and proceed through the startup wizard; do not put too much effort in this because all information you enter now will be lost after this step.
  • Open options->applications and enable debugging support.
  • Connect the Archos to your linux PC
  • [Shell] adb shell
  • [ADB] su; stop; cp /init.rc /sdcard/
  • [Shell] adb pull /sdcard/init.rc
  • Modify init.rc:
    • [Editor] Open the just downloaded init.rc
    • [Editor] Replace the "mount ext3 /dev/block/mmcblk0p4 /data noatime nosuid" with "mount ext4 /dev/block/mmcblk1p2 /data rw noatime nosuid nodev barrier=0 data=writeback nobh"
    • [Editor] save file and close
  • [Shell] adb push init.rc /sdcard/
  • [ADB] cp /sdcard/init.rc /init.rc
  • [ADB] start
  • reboot

5. Now your device should start up and use your new ext4 partition as /data. In my case after reboot I had to force another reboot (hold on/off for 10sec) for the system to properly boot and come up with the Archos startup wizard again (the previous startup’s data is lost because we have a new /data partition).

6. Enjoy!

All credits for this procedure go to other people; my only contribution is this write up, and the compilation of the new kernel.

Rooting method: chulri
1GB data partition: chulri and wdl1908
Ext4 format flags: Sibere
Proper compilation of iptables and ext4: $aur0n and woti23
 

Attachments

  • iptablesext4_2.4.19.zip
    3.4 MB · Views: 528
  • iptablesext4_2.3.81.zip
    3.4 MB · Views: 122
  • iptablesext4_2.4.65.zip
    3.7 MB · Views: 211
  • iptablesext4_2.4.81.zip
    3.7 MB · Views: 300
  • iptablesext4_2.4.82.zip
    3.7 MB · Views: 158
  • iptablesext4_2.4.83.zip
    3.7 MB · Views: 735
Last edited:

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
Howto compile the kernel yourself

Compiling this kernel yourself is not very hard.
1. Set-up chulri's development enviroment
2. Configure the new kernel
  • [Shell] cd $ARCHOS
  • [Shell] make kernel-config
  • [Config] In Networking support -> Networking options -> Network packet filtering framework (Netfilter)
    • Core Netfilter Configuration -> Netfilter Xtables support: y; Xtables -> "owner" match support: y
    • IP: Netfilter Configuration -> IP tables support: y; Packet filtering: y; REJECT target support: y; LOG target support: y
  • [Config] In Filesystems
    • The Extended 4 (ext4) filesystem: y
    • Ext4 extended attributes: y
  • [Config] save changes and exit
  • [Shell] make kernel-build

After compilation, locate your kernel zImage and flash it together with chulri's initramfs.cpio.gz (which is also provided in the zip in the first post).
 
Last edited:

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
Recommendations to speed up your tablet

Now that you have your Archos Gen8 as you want it, I can recommend two additions to speed up your system.

1. You now have a fast, big ext4 data partition which you should use for all applications:
  • [Shell] adb shell pm setInstallLocation 1
2. Replace the default Launcher *ANY* launcher but the Archos one. Personally I recommend the Zeam launcher, since it is really lightweight:
  • Get your copy of zeam, install it, press "home" button and make it default to zeam.
  • [ADB] su; cd /system/app; mv Launcher2.apk Launcher2.apknot
    The last step makes sure that the Archos launcher does not startup anymore, saving your memory. The last steps also removes the default Archos wallpapers, so make a copy of the one you want or get some nice new ones.

    Since the device setup of this thread uses unionfs to make changes to the /system, you could also just remove /system/app/Launcher2.apk. To restore it you can remove /mnt/system/unionfs/system/app/.wh.Launcher2.apk. (Thanks to skeeterfood for pointing it out.)
 
Last edited:

cHarOn99

Senior Member
Aug 28, 2008
694
68
is the performance comperable to urukdroid? i really like urukdroid but the mediascanner issue drive me nuts :D.

Anyway great work and thanks for the tutorial, now a kernel to be able to overclock and it would be awesome :D :D
 

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
is the performance comperable to urukdroid? i really like urukdroid but the mediascanner issue drive me nuts :D.

Anyway great work and thanks for the tutorial, now a kernel to be able to overclock and it would be awesome :D :D
I don't know if performance is comparable to UrukDroid; I've used Uruk 1.0 for some months but I haven't run any benchmarks. The reason for that is that Quadrant keeps giving errors in fixed landscape mode and I always used fixed landscape because the stock Archos launcher takes for ever to redraw on screen rotation.

Now of course I replaced the Archos launcher with Zeam, and now redraws on screen rotation are very fast. Replacing the Archos launcher in UrukDroid with Zeam would of course give you the same improvement. Anyway, with the configuration described above @800MHz (I could set it at 1GHz but I didn't) I get Quadrant scores of 1810. If you run it on UrukDroid, we can compare.

Definitely my system is booting much faster now than than it did before, but that might just be Zeam.

Right now sibere is making kernels for UrukDroid which give a nice performace improvement; perhaps he is willing to make kernels for stock too, or help me a bit along? Also when I have some more time, I hope to port some of Ardatdat's kernel improvements to the latest firmware kernel. Maybe someone else is working on that already?
 
Last edited:

VU HEO

Senior Member
I don't know if performance is comparable to UrukDroid; I've used Uruk 1.0 for some months but I haven't run any benchmarks. The reason for that is that Quadrant keeps giving errors in fixed landscape mode and I always used fixed landscape because the stock Archos launcher takes for ever to redraw on screen rotation.

Now of course I replaced the Archos launcher with Zeam, and now redraws on screen rotation are very fast. Replacing the Archos launcher in UrukDroid with Zeam would of course give you the same improvement. Anyway, with the configuration described above @800MHz (I could set it at 1GHz but I didn't) I get Quadrant scores of 1810. If you run it on UrukDroid, we can compare.

Definitely my system is booting much faster now than than it did before, but that might just be Zeam.

Right now sibere is making kernels for UrukDroid which give a nice performace improvement; perhaps he is willing to make kernels for stock too, or help me a bit along? Also when I have some more time, I hope to port some of Ardatdat's kernel improvements to the latest firmware kernel. Maybe someone else is working on that already?

I agree with you, Zeam is the best Launcher for Archos . When installing UrukDroid, my Archos is longer battery life, LCD is more sensitive and it very fast . Another devices, when you increase speed of cpu, battery life is softer .
I don't think Uruk firmware had been cooked with stock kernel, stock kernel's not stability.
 

cHarOn99

Senior Member
Aug 28, 2008
694
68
thanks for the reply, personally i don't care about quadrant which is the worst benchmark at all :D, you already answered the question good enough for me, you said booting is faster and general the feel is fast, thats for me a better benchmark result then any syntetic test which gives you results like in the lottery :D.
I use Golauncher on the A43 and it works also good, i never used the stock launcher :D.
I think i will try your solution out and look forward to some kernel improvements if you make one, if not then also fine.

Thanks again
 

AlaskaPardus

Senior Member
Jul 26, 2010
66
6
Passau
i prefer VTL.Launcher. it is based on adw, but better configurable. i remove ALL soft buttons, all panels and the notificationbar. instead i use Button Savior to have HOME/BACK/SEARCH/MENU buttons.
runs pretty smooth and i can use fullscreen.
 

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
any launcher goes

Right, that's the beauty of android: Anything can be replaced and modified to your own taste. I modified my recommendations above about replacing the default launcher with Zeam: *ANY* launcher is better that the Archos default one. My only reason for recommending Zeam is because it is lightweight.

Bottom line: replace the launcher with any alternative and you will have a smoother system.
 

AlaskaPardus

Senior Member
Jul 26, 2010
66
6
Passau
I love open source and, of course, linux(android) and the power of freedom it has. i hope it will never become mainstream as Windows or Mac is.
Thats the reason why i donate as much as i can to oss projects instead buying expensive Windows software.
And thats why i have big respect to all people who made our computerworld a little bit better to use! Call me a idealist, i am proud to be one! If we were no idealists things like Android wouldn´t exist.

OK, enough ;)
back to topic!
 
  • Like
Reactions: cherryaa

skeeterfood

Senior Member
Dec 11, 2010
87
49
Marion
Samsung Galaxy Watch 4
Now that you have your Archos Gen8 as you [*] [ADB] su; cd /system/app; mv Launcher2.apk Launcher2.apknot
[/LIST]

Might as well just do:
[ADB] su; cd /system/app; rm Launcher2.apk
since it's really not deleting the file, but instead creating a .wh.Launcher2.apk file in /mnt/system/unionfs/system/app/ that causes unionfs to hide the file. You can always get it back by removing the /mnt/system/unionfs/system/app/.wh.Launcher2.apk file.

-John
 

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
Might as well just do:
[ADB] su; cd /system/app; rm Launcher2.apk
since it's really not deleting the file, but instead creating a .wh.Launcher2.apk file in /mnt/system/unionfs/system/app/ that causes unionfs to hide the file. You can always get it back by removing the /mnt/system/unionfs/system/app/.wh.Launcher2.apk file.
Right, thank you. I added it to the steps to follow.
 

Harfainx

Retired Forum Moderator
Apr 10, 2010
1,658
1,803
Thanks for all the work. Looks great and I'm about ready to try it but need to know first, will this work on the A70H (250gb version)?

It's been suggested that you shouldn't perform this operation on the hard-drive versions. Constant app re-writes on the hard-drive could be a cause for early drive failures.

Nice write-up here WhoDunnit. I did a Windows-based write-up last month over at the ArchosFans forum. Now it looks like people have some options for methods to create their partitions on both Linux and Windows. More information is always a good thing :D

http://forum.archosfans.com/viewtopic.php?f=76&t=54637
 
  • Like
Reactions: faggi

WhoDunnit

Senior Member
Sep 10, 2007
186
301
OnePlus 8
  • Like
Reactions: Harfainx

Top Liked Posts

  • There are no posts matching your filters.
  • 17
    I just wanted my Archos Gen8 to have the latest stock firmware, root access, iptables support (for Droidwall) and a 1GB ext4 data partition. I will show you how to create this setup yourself. This howto describes all steps for a Linux PC with a working adb connection to the Archos Gen8. I am sure all steps can be done from a Windows PC too, but I cannot help you there: I only speak linux. [edit: Harfainx has written a thread on http://forum.archosfans.com/viewtopic.php?f=76&t=54637 that explains how to do these steps on windows; if you to do this from windows and have iptables and ext4, use my attached kernel and ext4 modifications instead of Harfainx' suggested chulri kernel]

    [Archos] = do on tablet
    [Linux] = do on PC
    [Shell] = do in a terminal on PC
    [ADB] = do in a adb shell from PC
    [GParted] = do in gparted in PC
    [Editor] = do in your favorite text editor on PC

    All credits for this procedure go to other people (see end of this post); my only contribution is this write up, and the compilation of the new kernel.

    1. Use chulri's root method to obtain root+rw with the latest Archos firmware on your Archos Gen8 (download the proper firmware version, and take care to rename the downloaded firmware file to firmware_archos_android_gen8.aos).

    2. Install the matching version of my kernel + initramfs (see links below)
    • reboot Archos device and hold down "Vol-" button after screen went black
    • Go to "Recovery Menu" and then "Developer Edition Menu"
    • choose "Flash Kernel and Initramfs"
    • connect your Archos device by USB to your computer
    • upload zImage and initramfs.cpio.gz to your device
    • safely disconnect the USB connection
    • press ok on Archos device
    • reboot

    3. Repartition your internal SD card
    • reboot Archos device and hold down "Vol-" button after screen went black
    • Go to "Recovery Menu" and then "Repair system” ->"Start USB MSC"
    • Connect tablet to your linux pc
    • Resize interal SD card and add an ext4 partition:
      • [Shell] sudo gparted
      • [GParted] find Archos device. For me it is found on /dev/sdc
      • [GParted] select the Archos partition and resize to have 1024MiB at the end left
      • [GParted] create a new primary partion using all the space you just created, filesystem ext4 and align to MiB
      • [GParted] apply all selected actions, let it finish and quit gparted.
    • unplug and reconnect your device so Linux finds it again.
    • Format the ext4 partition with some nice settings (if your device was on /dev/sdb replace /dev/sdc2 with /dev/sdb2 below):
      • [Shell] sudo mkfs.ext4 -b 4096 -E stride=64,stripe-width=64 -O extent,^huge_file -m 0 -L data /dev/sdc2
      • [Shell] sudo tune2fs -c -1 -i 0 -m 1 -O ^huge_file -o journal_data_writeback /dev/sdc2
      • [Shell] sudo e2fsck /dev/sdc2
    • press ok on Archos device
    • reboot

    4. Make your new ext4 partition your /data partition
    • Boot up your Archos and proceed through the startup wizard; do not put too much effort in this because all information you enter now will be lost after this step.
    • Open options->applications and enable debugging support.
    • Connect the Archos to your linux PC
    • [Shell] adb shell
    • [ADB] su; stop; cp /init.rc /sdcard/
    • [Shell] adb pull /sdcard/init.rc
    • Modify init.rc:
      • [Editor] Open the just downloaded init.rc
      • [Editor] Replace the "mount ext3 /dev/block/mmcblk0p4 /data noatime nosuid" with "mount ext4 /dev/block/mmcblk1p2 /data rw noatime nosuid nodev barrier=0 data=writeback nobh"
      • [Editor] save file and close
    • [Shell] adb push init.rc /sdcard/
    • [ADB] cp /sdcard/init.rc /init.rc
    • [ADB] start
    • reboot

    5. Now your device should start up and use your new ext4 partition as /data. In my case after reboot I had to force another reboot (hold on/off for 10sec) for the system to properly boot and come up with the Archos startup wizard again (the previous startup’s data is lost because we have a new /data partition).

    6. Enjoy!

    All credits for this procedure go to other people; my only contribution is this write up, and the compilation of the new kernel.

    Rooting method: chulri
    1GB data partition: chulri and wdl1908
    Ext4 format flags: Sibere
    Proper compilation of iptables and ext4: $aur0n and woti23
    5
    Howto compile the kernel yourself

    Compiling this kernel yourself is not very hard.
    1. Set-up chulri's development enviroment
    2. Configure the new kernel
    • [Shell] cd $ARCHOS
    • [Shell] make kernel-config
    • [Config] In Networking support -> Networking options -> Network packet filtering framework (Netfilter)
      • Core Netfilter Configuration -> Netfilter Xtables support: y; Xtables -> "owner" match support: y
      • IP: Netfilter Configuration -> IP tables support: y; Packet filtering: y; REJECT target support: y; LOG target support: y
    • [Config] In Filesystems
      • The Extended 4 (ext4) filesystem: y
      • Ext4 extended attributes: y
    • [Config] save changes and exit
    • [Shell] make kernel-build

    After compilation, locate your kernel zImage and flash it together with chulri's initramfs.cpio.gz (which is also provided in the zip in the first post).
    3
    Recommendations to speed up your tablet

    Now that you have your Archos Gen8 as you want it, I can recommend two additions to speed up your system.

    1. You now have a fast, big ext4 data partition which you should use for all applications:
    • [Shell] adb shell pm setInstallLocation 1
    2. Replace the default Launcher *ANY* launcher but the Archos one. Personally I recommend the Zeam launcher, since it is really lightweight:
    • Get your copy of zeam, install it, press "home" button and make it default to zeam.
    • [ADB] su; cd /system/app; mv Launcher2.apk Launcher2.apknot
      The last step makes sure that the Archos launcher does not startup anymore, saving your memory. The last steps also removes the default Archos wallpapers, so make a copy of the one you want or get some nice new ones.

      Since the device setup of this thread uses unionfs to make changes to the /system, you could also just remove /system/app/Launcher2.apk. To restore it you can remove /mnt/system/unionfs/system/app/.wh.Launcher2.apk. (Thanks to skeeterfood for pointing it out.)
    2
    Kernel updated to firmware version 2.4.83. See first post.
    2
    I've requested for the updated kernel sources. As soon as I get them, the kernel will be updated.

    Hi WhoDunnit

    Any chance of a firmware version for 2.4.80

    Regards

    Milton (aka Set_The_Tone)