Active Topics

 


Reply
Thread Tools
Posts: 323 | Thanked: 180 times | Joined on Oct 2009 @ Gent, Belgium
#21
Nice. Some questions I have with this :
W
hat if people had bash3 installed and configured the normal user account and the root account to use bash. Is manual uninstall enough ? And then using your install script ?

Any chance of getting it included in CSSU ?

Does it contain an updated swapon command (allowing to set priorities) ?

Thanks for the work !
 
Posts: 1,042 | Thanked: 430 times | Joined on May 2010
#22
Hi! Does this replace the old busybox? I mean overwrite the old busybox executable file with a new one?
 
Posts: 63 | Thanked: 26 times | Joined on Jul 2010 @ Canada
#23
Originally Posted by Keneraali View Post
It doesn't work, atleast with my N900. Typing any command in the new busybox ended in "sh: /opt/busybox not found". A reflash was needed to restore the system.
Well, I got that error too, but a reflash isn't necessary. You can prefix all your commands by a backslash to avoid using the aliases "\".

The error in the script is the following:

Code:
cd /opt
if [ -f busybox ];
then 
    echo "rm busybox" | root
fi
echo "wget -q http://darktl.com/busybox && chmod +x /opt/busybox" | root
Now the "echo | root" actually downloads the file under "/root" and changes the permission over there too because "root" starts a fresh session under "/root"

I guess you could modify the script to end with
Code:
echo "mv /root/busybox /opt" | root
Actuall, you should change
Code:
echo "rm busybox" | root
to
Code:
echo "rm -f /root/busybox /opt/busybox" | root
 

The Following User Says Thank You to jprobichaud For This Useful Post:
Posts: 2,225 | Thanked: 3,822 times | Joined on Jun 2010 @ Florida
#24
Originally Posted by vi_ View Post
I decided there probably was not that much differance between the 2 busybox binarys and simply replaced the /bin/busybox binary with the new one. Obviously I backed up rootfs with backup menu first, so in the event it goes balls up I can just restore.
So does you phone still work fine? I understand people being worried about the safety of stuff like this, but no point in irrationally worrying if we have proof that it doesn't really seem to influence anything.

Also: Would I have to reinstall the full ping program after this? Since I have ping proper installed, instead of using the included busybox's limited ping. I think not, since you're just copying one binary over the other, and the ping binary stays the same (because ping is just another binary, overriding the original symlink to the busybox binary, and the installation of this binary doesn't seem like it involves anything other than putting in the busybox binary, I'm pretty sure it'll be fine, but might as well ask.)
 
hawaii's Avatar
Posts: 1,030 | Thanked: 792 times | Joined on Jun 2009
#25
Provided the postinst script doesn't insanely re-create all the symbolic links, it shouldn't matter. Even in the event that it does, remove the link and make a new one to your actual ping(1) binary.

I give you 4 lashings for your post, because I know you know better :P
 

The Following User Says Thank You to hawaii For This Useful Post:
Posts: 268 | Thanked: 1,053 times | Joined on May 2010 @ The Netherlands
#26
I packaged up the latest stable busybox release based on Nokia's original debian/ source files. I've reviewed the patches Nokia included in Maemo's original busybox, pulled updated ones from Debian Sid, and ported some of the original patches when no updated ones were available for the latest busybox release (see the file debian/patches/series in the attached source for additional comments).
Maemo's .config file for busybox has been checked and updated against the newest default config from the new busybox release too.

The result should be a drop-in replacement for Maemo's busybox without losing any (patched in) functionality

Do note that the package identifies itself as being version "3:1.10.2.legal-1osso30+0m5" instead of "1.18.4". This had to be done because Nokia made mp-fremantle-generic-pr explicitly depend on that version, causing dependency problems when installing another version. Nonetheless, you should see "BusyBox v1.18.4 (Debian 3:1.10.2.legal-1osso30+0m5) built-in shell (ash)" when starting busybox.

To prevent the new busybox from being 'updated' to the old one when running apt-get upgrade, run a shell script containing:
Code:
for x in busybox busybox-symlinks-busybox busybox-symlinks-console-tools busybox-symlinks-dnsutils busybox-symlinks-ifupdown busybox-symlinks-iputils-ping busybox-symlinks-net-tools busybox-symlinks-procps busybox-symlinks-psmisc busybox-symlinks-realpath busybox-symlinks-time
do echo -e "Package: $x
Pin: release a=unstable 
Pin-Priority: 1001\n" >> /etc/apt/preferences
done
Click here to download the precompiled debs, and here to download the sources.

Warning: You should experience no problems after replacing Maemo's busybox with this one. However, considering the essential role of the shell I can not guarantee anything. Some brief testing and a few reboots didn't reveal any errors though

Update: I forgot to port shell-hist.patch, a patch in Maemo's busybox that fixes this bug. All patches from Nokia are now incorporated in the latest busybox release found in this post (linked packages + source are updated)

Update 2: A patch has been added to not complain about uninitialized variables (see this). Also, as a bonus, the amount of saved lines in the shell history is increased from 15 to 100; for more details look here.

P.s. for those who run dpkg -i *.deb to install the packages: the packages busybox-dbg and busybox-symlinks-binutils aren't required to be installed.

Last edited by iDont; 2011-05-02 at 22:29. Reason: Small update
 

The Following 10 Users Say Thank You to iDont For This Useful Post:
Posts: 135 | Thanked: 75 times | Joined on Apr 2011 @ Buenos Aires, Argentina
#27
Originally Posted by iDont View Post
I packaged up the latest stable busybox release based on Nokia's original debian/ source files. I've reviewed the patches Nokia included in Maemo's original busybox, pulled updated ones from Debian Sid, and ported some of the original patches when no updated ones were available for the latest busybox release (see the file debian/patches/series in the attached source for additional comments).
Maemo's .config file for busybox has been checked and updated against the newest default config from the new busybox release too.

The result should be a drop-in replacement for Maemo's busybox without losing any (patched in) functionality

Do note that the package identifies itself as being version "3:1.10.2.legal-1osso30+0m5" instead of "1.18.4". This had to be done because Nokia made mp-fremantle-generic-pr explicitly depend on that version, causing dependency problems when installing another version. Nonetheless, you should see "BusyBox v1.18.4 (Debian 3:1.10.2.legal-1osso30+0m5) built-in shell (ash)" when starting busybox.

To prevent the new busybox from being 'updated' to the old one when running apt-get upgrade, run a shell script containing:
Code:
for x in busybox busybox-symlinks-busybox busybox-symlinks-console-tools busybox-symlinks-dnsutils busybox-symlinks-ifupdown busybox-symlinks-iputils-ping busybox-symlinks-net-tools busybox-symlinks-procps busybox-symlinks-psmisc busybox-symlinks-realpath busybox-symlinks-time
do echo -e "Package: $x
Pin: release a=unstable 
Pin-Priority: 1001\n" >> /etc/apt/preferences
done
Click here to download the precompiled debs, and here to download the sources.

Warning: You should experience no problems after replacing Maemo's busybox with this one. However, considering the essential role of the shell I can not guarantee anything. Some brief testing and a few reboots didn't reveal any errors though

Update: I forgot to port shell-hist.patch, a patch in Maemo's busybox that fixes this bug. All patches from Nokia are now incorporated in the latest busybox release found in this post (linked packages + source are updated)

P.s. for those who run dpkg -i *.deb to install the packages: the packages busybox-dbg and busybox-symlinks-binutils aren't required to be installed.
IDONT, I just installed latest busybox from deb's and I wanna congratulate you for your work. It's working really fine.
 

The Following User Says Thank You to sr00t For This Useful Post:
Posts: 1,042 | Thanked: 430 times | Joined on May 2010
#28
There is actually maybe a bug... When you install this busybox whenever you try using kernel-config load you'll get a bunch of output saying sh: bad number
 
Posts: 135 | Thanked: 75 times | Joined on Apr 2011 @ Buenos Aires, Argentina
#29
Originally Posted by Radicalz38 View Post
There is actually maybe a bug... When you install this busybox whenever you try using kernel-config load you'll get a bunch of output saying sh: bad number
here is my output:
Code:
/home/user/MyDocs # kernel-config load
This kernel version 2.6.28-omap1 is not supported
Please make sure that kernel-power is installed and running.
If you have just installed the kernel, you need to shutdown and boot to activate it.
To reinstall the power user kernel run:
'apt-get install --reinstall kernel-power kernel-power-flasher'
 
Posts: 268 | Thanked: 1,053 times | Joined on May 2010 @ The Netherlands
#30
Originally Posted by Radicalz38 View Post
There is actually maybe a bug... When you install this busybox whenever you try using kernel-config load you'll get a bunch of output saying sh: bad number
Some googling reveals that this is because a shell script wants to do something with uninitialized variables. A quick glance at the kernel-config script revealed the following:

In the kernel-config script you'll see at lines 174, 175 and 176:
Code:
   active=
   minfreq=
   maxfreq=
When you add a zero after all the equals signs, the "sh: bad number:" messages will disappear.On a side note, the reason that you saw a bunch of those messages was because those variables are in a for loop.

The new busybox version appears to be a little bit more verbose than the stock one. Nonetheless, all shell scripts should work exactly the same as with the old busybox version.

Anyway, it seems that the proper fix to those messages is to properly initialize all variables before they're used. I could also create a small patch to bring back the old (quiet) behavior; I'll look into that.
Edit: a patch is now included to revert to the described old behavior, the files linked to in this post are updated.

Last edited by iDont; 2011-05-02 at 22:23.
 

The Following 5 Users Say Thank You to iDont For This Useful Post:
Reply


 
Forum Jump


All times are GMT. The time now is 11:02.