You are not logged in.

#1 2005-01-26 18:05:10

cmp
Member
Registered: 2005-01-03
Posts: 350

[NEW] kernel 2.6.10-morph17

Hi, as I recently browsed the wiki I found some pretty interesting information about kernel patchsets stating, that the morph patchset is a patchest geared towards desktop use.
the offical site states:

morph-sources is a linux kernel patchset aimed towards desktop usage. It features a series of additions to the standard linux kernel which increase system's responsiveness and interactivity, and introduces some new features that enhance users' experience in typical desktop setups. morph-sources' goal (admittedly quite ambitious) is to provide a kernel patchset for desktop users which is stable and featureful at the same time.

This PKGBUILD is based on the version for morph5, but also introduces some bufixes, md5sums and corrected urls for the new version. I do not provide a package, because precompiled kernels suck and I don't have the webspace to host the package.

Thanks for the previous work done by siimo and hyp0luxa.

# Morph Sources (2.6.10-morph17)
# Adopted from hyp0luxa <hyp0luxa@yahoo.com> 's nitro sources PKGBUILD
# siimo  <siimo@mail.ru>
# New version for morph17
# cmp <se_police@gmx.de>

pkgname=kernel26morph
origkernelver=2.6.10
morphver=17
pkgver=${origkernelver}.morph${morphver}
kernelver=${origkernelver}-morph${morphver}
pkgrel=1
pkgdesc="The Linux Kernel and modules (IDE support) [morph kernel]"
url="http://morph-sources.sourceforge.net/"
backup=('boot/kconfig26morph')
depends=('module-init-tools')

source=(  http://www.kernel.org/pub/linux/kernel/v2.6/linux-$origkernelver.tar.bz2 
          http://dl.sourceforge.net/morph-sources/patch-2.6.10-morph17.bz2 
          config 
          logo_linux_clut224.ppm)

md5sums=('cffcd2919d9c8ef793ce1ac07a440eda' 'c740258ba8f7c09d049c2d8398754dc2'
         '08fb644cb1b4ff597cd984c6f717425d' '5a62bcc7e96601052c7405459b483826')

build() {

  # if we run the makepkg more than once and use 'makepkg -e' to save time:
  if [ -d $startdir/src/linux-${origkernelver} ]
  then
     cd $startdir/src/linux-${origkernelver}
     #apply morph patchset
     patch -Np1 -i ../patch-$kernelver || return 1
     mv $startdir/src/linux-${origkernelver} $startdir/src/linux-$kernelver
  fi

  cd $startdir/src/linux-$kernelver

  #CLEAN-ME:
  if [ -f ../${kernelver} ]
  then
     rm ../${kernelver} # cleanup the existing patch (needed, if "makepkg -e" for another round)
  fi

  # get rid of the 'i' in i686
  carch=`echo $CARCH | sed 's|i||'`
  cat ../config | sed "s|#CARCH#|$carch|g" >./.config
  mv -f $startdir/config $startdir/config.orig

  # replace logo:
  cp $startdir/src/logo_linux_clut224.ppm $startdir/src/linux-$kernelver/drivers/video/logo/ && echo "==> logo replaced successfully"
  sleep 2

  # let's be "user-friendly":
  echo "==> "
  echo "==> How do you want to configure the kernel:"
  echo "==> ----------------------------------------"
  echo "==> (for ArchLinux defaults, use 'not_at_all (1)')"
  echo "==> "
  AUSWAHL="not_at_all menuconfig xconfig oldconfig config"
           select opt in $AUSWAHL; do
               if [ "$opt" = "not_at_all" ]; then
                yes "" | make config || return 1
                mv $startdir/config.orig $startdir/config
                break
               elif [ "$opt" = "menuconfig" ]; then
                make menuconfig || return 1
                cp .config $startdir/config && echo "==> your config was saved to $startdir/config"
                break
               elif [ "$opt" = "xconfig" ]; then
                make xconfig || return 1
                cp .config $startdir/config && echo "==> your config was saved to $startdir/config"
                break
               elif [ "$opt" = "config" ]; then
                make config || return 1
                cp .config $startdir/config && echo "==> your config was saved to $startdir/config"
                break
               elif [ "$opt" = "oldconfig" ]; then
                make oldconfig || return 1
                cp .config $startdir/config && echo "==> your config was saved to $startdir/config"
                break
               else
                clear
                echo "==> I don't understand (bad option) ... assuming you don't want "
                echo "==> to configure and use the defaults."
                sleep 1
                echo "==> 3..."
                sleep 1
                echo "==> 2..."
                sleep 1
                echo "==> 1..."
                sleep 1
                echo "==> 0: GO! --------------------------- :-)"
                yes "" | make config || return 1
                mv $startdir/config.orig $startdir/config
                break
               fi
           done

  echo ""
  echo "==> Building the kernel $kernelver will start in 2s ! "
  echo "==> Happy compiling and good luck :-)"
  echo ""
  sleep 2

  make clean bzImage modules || return 1

  mkdir -p $startdir/pkg/lib/modules/$kernelver-ARCH 
  mkdir -p $startdir/pkg/boot
  
  make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1

  cp System.map $startdir/pkg/boot/System.map26morph

  cp arch/i386/boot/bzImage $startdir/pkg/boot/vmlinuz26morph

  install -D -m644 Makefile $startdir/pkg/usr/src/linux-$kernelver/Makefile
  install -D -m644 .config $startdir/pkg/usr/src/linux-$kernelver/.config
  install -D -m644 .config $startdir/pkg/boot/kconfig26morph

  mkdir -p $startdir/pkg/usr/src/linux-$kernelver/include
  mkdir -p $startdir/pkg/usr/src/linux-$kernelver/arch/i386/kernel

  for i in acpi asm-generic asm-i386 config linux math-emu net pcmcia scsi video; do
    cp -a include/$i $startdir/pkg/usr/src/linux-$kernelver/include/
  done

  # copy files necessary for later builds, like nvidia and vmware
  cp -a scripts $startdir/pkg/usr/src/linux-$kernelver/
  mkdir -p $startdir/pkg/usr/src/linux-$kernelver/.tmp_versions
  cp arch/i386/Makefile $startdir/pkg/usr/src/linux-$kernelver/arch/i386/
  cp arch/i386/kernel/asm-offsets.s $startdir/pkg/usr/src/linux-$kernelver/arch/i386/kernel/

  # copy in Kconfig files
  for i in `find . -name "Kconfig*"`; do
    mkdir -p $startdir/pkg/usr/src/linux-$kernelver/`echo $i | sed 's|/Kconfig.*||'`
    cp $i $startdir/pkg/usr/src/linux-$kernelver/$i
  done
  cd $startdir/pkg/usr/src/linux-$kernelver/include && ln -s asm-i386 asm
  chown -R root.root $startdir/pkg/usr/src/linux-$kernelver
  cd $startdir/pkg/lib/modules/$kernelver-ARCH && 
    (rm -f build; ln -sf /usr/src/linux-$kernelver build)
} 

Offline

#2 2005-01-27 04:13:36

dtw
Forum Fellow
From: UK
Registered: 2004-08-03
Posts: 4,439
Website

Re: [NEW] kernel 2.6.10-morph17

the whole reason for my writing that article on the wiki about patches and spending several days perfecting and testing  the custom kernel PKGBUILD was to entirely prevent the necessity for forum post such as these!

the wiki is not there to support the forum but rather is provided in addition to it.  Many of the most valuable tit bits from the forum are added to the wiki for reference but to do the reverse is totally insane!

i'm on the verge of losing my sanity over this one!  help me!

Offline

#3 2005-01-27 13:49:56

cmp
Member
Registered: 2005-01-03
Posts: 350

Re: [NEW] kernel 2.6.10-morph17

Sorry, but as I didn't found any PKGBUILD for the morph kernel and the one for morph5 was broken, I thought I should post the one I used, but feel free to delete the thread - I just tried to help.
BTW.: there is somthing wrong with the $startdir/lib/modules/$kernelver path, for the morph patchset I had to add an extra -ARCH to, but this may be something morph specific.

Offline

#4 2005-01-27 14:40:15

zeppelin
Member
From: Athens, Greece
Registered: 2004-03-05
Posts: 807
Website

Re: [NEW] kernel 2.6.10-morph17

cmp, can you provide a PKG that I can download. When I see compilation I swear all the time smile {meta traumatic experience left by Gentoo}

Offline

#5 2005-01-27 15:12:29

cmp
Member
Registered: 2005-01-03
Posts: 350

Re: [NEW] kernel 2.6.10-morph17

The problem with my current package is, that it's tailored to my system, so I had to recompile it with the standard arch config  to match your system.
There is also the problem, that I don't know which features added by the patch to activate. Without these features the kernel will be pretty useless, because it would behave like the arch stock kernel, which is also security fixed.

Offline

#6 2005-01-28 10:40:00

dtw
Forum Fellow
From: UK
Registered: 2004-08-03
Posts: 4,439
Website

Re: [NEW] kernel 2.6.10-morph17

cmp - oh man - there is nothing wrong with the $startdir/lib/modules/$kernelver path variable - your pkgbuild just doesn't what it is supposed to!  you pkgbuild can't account for LOCALVERSION in your config

i HONESTLY appreciate what you are trying to do, I really do, but you are just going to get yourself into trouble!

if you use the default config it includes a LOCALVERSION ARCH - which is automatically added to the paths when you build

the PKGBUILD i made and posted on the wiki can be used with ANY patchset - simply my adding the name of the patch set at the start - i made it especially for this reason.  there really is no need to have unique PKGBUILDS for every patchset!

Have a look at this and you will see why your PKGBUILD is not working correctly - http://wiki2.archlinux.org/index.php/Cu … 20later%29

with that PKGBUILD you can set patch=patch-2.6.10-morph17 as the top and the rest is history!

please have a read of the wiki page so you understand why i am not just chewing you out to be mean!

Offline

Board footer

Powered by FluxBB