You are not logged in.

#1 2008-08-01 13:25:51

big_gie
Member
Registered: 2005-01-19
Posts: 637

Dell BIOS Update PKGBUILD

Hi,

As you all know, most often BIOS updates comes as a self-extracting package for windows containing a floppy image. At least it is the case for Dell machines smile

I don't use windows anymore, so I needed a way to update the bios. I created a PKGBUILD some time ago to do exactly this. I don't know if I ever posted it, so maybe it could help somebody, I'm including it here.

So here it is. What it does is to download the file (you may want to verify this by going to http://support.dell.com directly) and a Free-DOS floppy image. It then uses "sudo" to mount the floppy image, edit some files so it autoexecute the bios upgrade, and copy the image in /boot.

When you install the package, it creates a new entry in your Grub menu file. So when you reboot, you'll have an option to choose "BIOS Upgrade" from grub! Just choose that, and wait for the update smile

I saw something on liquidat about Dell having some special tools for linux. I did not tried them. This worked well for me for a couple of bios release.

Have fun! smile

pkgname=dellbios-ld830
pkgver=A13
pkgrel=1
arch=('i686' 'x86_64')
pkgdesc="Dell BIOS upgrade"
url="http://support.dell.com"
license=("GPL")
depends=('grub' 'hd2u')
makedepends=('sudo')
install=${pkgname}.install
_bios=d830_${pkgver}.exe
source=(
    http://ftp.us.dell.com/bios/${_bios} \
    http://www.fdos.org/bootdisks/autogen/FDSTD.288.gz
)
md5sums=('45d174e71b24017e1e318b173dc87304'
         '2907104b946d2c0c0fa43d8e2c0fe191')

build()
{
    cd $startdir/src/
    mkdir -p floppy
    sudo mount -o uid=1000 -o loop FDSTD.288 floppy

    rm -f floppy/config.sys
    echo "FILES=20
BUFFERS=20
SHELL=\COMMAND.COM /E:256 /P" > floppy/config.sys
    dos2unix --u2d floppy/config.sys

    cp $startdir/src/${_bios} floppy/

    echo ${_bios} >> floppy/autoexec.bat
    dos2unix --u2d floppy/autoexec.bat

    sudo umount floppy
    mkdir -p $startdir/pkg/boot
    install -m 644 FDSTD.288 $startdir/pkg/boot/biosflash.img
}

dellbios-ld830.install:

post_install() {

    cp /usr/lib/syslinux/memdisk /boot/

    echo "

# BIOS Flash update
title BIOS upgrade
root (hd0,2)
kernel /memdisk
initrd /biosflash.img" >> /boot/grub/menu.lst

}

post_upgrade() {
/bin/true
}

pre_remove() {
rm -f /boot/memdisk
}

op=$1
shift

$op "$@"

Offline

#2 2008-08-01 21:17:50

MoonSwan
Member
From: Great White North
Registered: 2008-01-23
Posts: 815

Re: Dell BIOS Update PKGBUILD

Will this work only for specific dell models or for (almost) any dell machine?  *Presumably it wouldn't work for server models such as blade servers?*  I'm curious about trying this with an old dell I possess but i'm hesitant to do so as I don't wish to fry it.  smile


I'm torn apart between worlds. Basically, using vim in a highly visual environment with a lot of mouse features feels like soldering a lose wire to a motherboard with a Zippo and a needle, while working with ANY TEXT AT ALL with a "modern GUI" text editor feels like joining the London Philharmonic Orchestra with a Fisher-Price Laugh and Learn Magical Musical Mirror.  --Awebb

Offline

#3 2008-08-01 21:25:22

big_gie
Member
Registered: 2005-01-19
Posts: 637

Re: Dell BIOS Update PKGBUILD

I use this for my Dell Latitude D830 laptop and for 2 Dell Optiplex 755 desktop machines.

I think it all depends on the format of the bios upgrade. But then, I think most of the manufacturers provides a DOS executable to put on a floppy... So my PKGBUILD copy this on a FreeDOS one, which get booted by grub.

If the manufacturer does not provides a DOS executable, then probably this needs to be adapted wink

Offline

#4 2009-06-26 15:28:35

el mariachi
Member
Registered: 2007-11-30
Posts: 575

Re: Dell BIOS Update PKGBUILD

after selecting the entry from the grub menu it says that "the image doesn't fit memory" or something like that roll my BIOS is A09 and the latest is A12 (Latitude E5400)

Offline

Board footer

Powered by FluxBB