Friday, May 28, 2010

How to submit a package to Aur Unsupported

Was asked to upload the MadPablo Openbox theme to AUR.

What you have to do.
Make the package.
What I had to do for this was to compress the usr/share/themes/maddpable/openbox-3 folder

and upload it to ompload.org; used gompload for that.
Result is a downloadlink at: http://omploader.org/vNGZoOA.bz2
Had to md5sum the madpablo.tar.bz2
or terminal in the directory of your PKGBUILD, and to generate md5sum do this:

Code: makepkg -g >> PKGBUILD

Result: f8bd9530b5ae503cb773dfa66a1d51d0

Now I can edit PKGBUILD :
# Contributor: Pablo

pkgname=openbox-madpablo-theme
pkgver=20100528
pkgrel=1
pkgdesc="MadPablo OpenBox Theme"
arch=('any')
url="http://archbang.47.forumer.com/viewtopic.php?f=28&t=278"
license=('GPL')
depends=('openbox')
source=(http://omploader.org/vNGZoOA.bz2)
md5sums=('f8bd9530b5ae503cb773dfa66a1d51d0')

build() {
install -d ${pkgdir}/usr/share/themes/
cp -r ${srcdir}/madpablo ${pkgdir}/usr/share/themes/ || return 1
}

The url is provided as link for more info about the theme:
http://archbang.47.forumer.com/viewtopic.php?f=28&t=278.
pkgver=20100528 just is the date of doing this.
Now I have to make a folder openbox-madpablo-theme
and put only the PKGBUILD in it and compress this to
openbox-madpablo-theme.tar.gz

Now I have to register at http://aur.archlinux.org/account.php
And upload the openbox-madpablo-theme.tar.gz file and give a comment if needed.



This is the result: http://aur.archlinux.org/packages.php?ID=37577


When a package is submitted by someone else and is not maintained you can submit a new
PKGBUILD in the form of a code pastebin: http://aur.pastebin.com/

How to change an existing openbox theme?

I will take it for granted that you have installed the theme you want to change.
Go to the folder where it is located for instance usr/share/themes.
Create a folder of the new theme variation and give it the name you want.
For example changing the madbox theme, I created a new folder to MadPablo and copied the content of the Madbox folder to this new folder.
Of course it is easier to work from an existing theme.
Now open in the text editor of choice (I prefer geany) the file themerc, it is located in usr/share/themes/openbox-3/.
If it is not there you can use the whereis command in the terminal: whereis themrc

Now we have to use a good colour tool; gcolor2 is perfect for the job and will appear installed as a plugin in geany. Install in Arch with sudo pacman -S gcolor2

Open the themerc file in geany and open the gcolor2 program and use the eyedropper to choose colours. Use a large resolution image of something you like colour wise (content is unimportant). If you got the colour code copy it and put it in place in the themerc file on the spot you want it to be overwriting the existing colourcode
Make some changes and try to understand the various designations of the diverse window items; for more info http://openbox.org/wiki/Help:Themes
If you have trouble identifying an element in the theme use the colour dropper to determine the existing colour of the element you want to change and use the found colour code by doing find code in geany in the themerc file

Now make some changes and save the themerc you're editing.
Open Openbox Gui Config tool, in terminal obconfig

Now select the theme that you took as starting point and make it active. Look around in your browser, open some windows and apps to get a feel how it will look, but already obconfig will give you a rather good example of how it will look.

If you're done with adaptations you can use the create a theme archive .obt option of obconfig and navigate to usr/share/theme/Newtheme folder and name and save it.
It will be saved in /home/user.


Obtheme

There is a gui app to edit a theme called obtheme; have tried it but didn't find it so nice to work with: http://xyne.archlinux.ca/projects/obtheme#screenshots
This is the Madpablo theme I created

Colours are quite different from the original Madbox theme:olive green and light blue.
The fonts used are bitstream vera sans mono for the conky
Monofur,acitve window title; Sans inactive window header and menu header
Menu item and on screen display Neutra Text Book Alt
Apperance settings: Avenir LT Std 12.

Direct link full res screenshot:http://img375.imageshack.us/img375/7655/2010051612740389671920x.png

  1. Downloadlink theme

Gomploader to upload to ompload.org

Gomploader is a very simple graphical interface to upload a file to ompload.org
Install in Arch by packer -S omploader.
The command to start is terminal gompload.
Make a keybinding in openbox!

Thursday, May 27, 2010

Dmenu with better and larger fonts

Dmenu can look much better with fonts if you use the dmenu-xft version.

See this screenshot: http://omploader.org/vMmJicg
Look here: http://aur.archlinux.org/packages.php?ID=28745

There is a problem with the packagebuild on this page though.
It should be:
pkgname=dmenu-xft
pkgver=4.0
pkgrel=1
pkgdesc="Dynamic X menu - with xft support"
arch=('i686' 'x86_64')
url="http://code.suckless.org/"
license=('MIT')
depends=('libx11' 'libxinerama' 'libxft')
conflicts=('dmenu')
provides=('dmenu')
source=(http://dl.suckless.org/tools/dmenu-4.0.tar.gz
http://z.ip.fi/~henkka/dmenu-xft/dmenu-4.0-xft.diff)

md5sums=('66e761a653930cc8a21614ba9fedf903'
'1f3ecd819a39dea88a3dde9b5271bec6')

build() {
cd $srcdir/dmenu-$pkgver
patch -p1 < ../dmenu-4.0-xft.diff || return 1 make || return 1 make DESTDIR=$startdir/pkg PREFIX=/usr install || return 1 # LICENSE mkdir -p $startdir/pkg/usr/share/licenses/$pkgname || return 1 cp LICENSE $startdir/pkg/usr/share/licenses/$pkgname/ || return 1 }


Save this as PKGBUILD textfile and run makepkg where you saved PKGBUILD.
But first uninstall the dmenu version you have with
sudo pacman -Rd dmenu



This all in Arch.
Otherwise: download the two sources at the bottom of the page. Extract the tar.gz and then place the .diff into dmenu-4.0 directory. Apply the patch with:

patch -p1 < dmenu-4.0-xft.diff

Then run make and copy dmenu into /usr/bin

source: http://crunchbanglinux.org/forums/topic/4524/dmenu-with-xft-support/

Wednesday, May 26, 2010

Installed Archbang 2010.05 from git







Full image: http://img265.imageshack.us/img265/8021/201005261225461920x1200.png

I installed Archbang 2010.05 from git.
Created the iso from git this way:
packer -S base-devel git archiso-git
git clone git://gitorious.org/archbang/archbang.git
cd archbang

sudo make all


The resulting iso is about 470 mb and 64 bits.
After a successful live session using the nvidia option I installed the system in a before hand prepared logical partition in a multiboot setup.
Install went rather well' small issues time setting did not went well in ncurse; 15:34 instead of 11:34 also the gtm-1 option did not give the correct time.
I corrected the later but it still isn't correct after install It is now 9.54 instead of the real 13.54,
=====================
Solution time issue
Time issue is indeed there. Will take a look when I can.

Usually the best way to nip that problem is to install openntpd.
Code:

pacman -S openntpd

Then add openntpd to your daemons array in your /etc/rc.conf file so it will start with your next boot up, and then
Code:

/etc/rc.d/openntpd start

and your clock should be correct. This worked for me.
Decided it not to run as daemon because of the delay in booting and adding it to obautostart with

/etc/rc.d/openntpd start
===========================


The second issue was the bootloader install; I choose a grub2 install in the same partition as the new abinstall because I edit a menu.lst legacy grub in a different partition.
I gave an error that the bootloader couldnt be installed but it was instaled all the same.

Because I use the grub legacy on another partition I can't really check if the grub 2 would have done the job if necessary.
I did not install the plymouth splash screen, which I should have done for test purposes; but just forgot that because I was following my own preferences.

Internet (wired) is very slow and the webbrowser unresponsive.

Found the solution for the slow webbrowser

In Firefox adressbar type about:config
and search network.dns.disableIPv6 and set to true:
true disables IPv6 support - may not work for all networks,
but for me considerable speed increase maybe due to older router.

Other issues and adaptations>


First
tried to rankmirror my repository list;
rankmirrors will take a list of mirrors and arrange them in order of speed.
If you want to find the 5 fastest mirrors where you are, pass it your mirrorlist with servers near you uncommented
along with the "-n 5" option and redirect the output to a file, e.g.

Code:

cd /etc/pacman.d
cp mirrorlist mirrorlist.bak
rankmirrors -n 5 mirrorlist >mirrorlist


Got error message: get error: bash: mirrorlist: Permission denied, even if I sudo

Then update package list: pacman -Syy

Then error:
error: failed to synchronize any databases,

looked at the mirrorlist file and it was empty;
so made a handmade selection of servers and copied that from mirror.bak

My mistake was: had not installed reflector yet.

Installed packer
How to install packer in Arch?
Packer is a nice tool to build packages via the aur.

You need fakeroot and base-devel and git

pacman -S base-devel fakeroot git

2) get PKGBUILD: http://aur.archlinux.org/packages.php?ID=33378
3) run makepkg where you saved PKGBUILD
4) pacman -U packer-*.pkg.tar.xz


for instance: packer -S pcmanfm-mod

This is a stable version of pacmanfm

With pcmanfm I can easily access my other partitions.

Now I changed some looks:
The theme Madpablo and Madbox theme is copied as root from usr/share/themes and the icons Simple theme from usr/share/icons on another partition using pcmanfm as root. Copy fonts from other partition from usr/share/fonts/ttf to usr/share/fonts/ttf.

Installed geany as a nice test file editor: sudo pacman -S geany


Created Autologin:

/etc/inittab

Another way of circumventing display managers and booting straight into a preferred window manager or desktop environment involves editing /etc/inittab, changing:

id:3:initdefault:

[...]

x:5:respawn:/usr/bin/xdm -nodaemon

to:

id:5:initdefault:

[...]

x:5:once:/bin/su PREFERED_USER -l -c "/bin/bash --login -c /usr/bin/startx >/dev/null 2>&1"

changing PREFERED_USER as necessary.





Tuesday, May 25, 2010

How to build an iso from git

Building from git now should only need the following as of April 2010


Code
packer -S base-devel git archiso-git
git clone git://gitorious.org/archbang/archbang.git
cd archbang

sudo make all


Instead of using the aurscript you can now add the ArchBang repo so that you don't need to waste your precious time compiling manually!

Archbang Repo:
! You can now add it to your pacman.conf as:


Code
[archbang]
Server = http://www.archbang.org/repo/


This means you don't have to manually build packages.list.aur from AUR. You can just get it using pacman -Syyu
This will also help us push dist-upgrades in future.

Thursday, May 20, 2010

Burning with Arch

Sometimes it may be necessary to graant you the necessary permissions:

Setting permissions

Users that should be able to use CD/DVD burning devices must have permissions to access the devices. If you are using udev (which is default in Arch Linux kernels), you only need to add the user(s) to the optical group:

# gpasswd -a  optical

Log out and back in for the changes to take effect.


source: http://wiki.archlinux.org/index.php/CD_Burning


Downgrading a package in Arch

source: http://wiki.archlinux.org/index.php/Downgrading_Packages

The Details

However, the user must keep in mind the following points. First, there is going to be the need to consider the dependencies of each program. The required libraries and such often change with each version, and the functionality of associated files may be completely different from previous ones. The solution will require changing these to earlier versions as well.

Second, one must consider if the necessary files have been removed from the system and are even going to be available from any source. Arch Linux's rolling release system of repositories are automatically upgraded without saving any older versions. See more about this problem below.

Third, we must be careful with changes to configuration files and scripts. At this point in time, we will rely upon pacman to handle this for us, as long as we do not bypass any safeguards it contains.

Please keep in mind that this issue brings us to the cutting edge of pacman package management development. The Arch Rollback Machine concept is being developed and awaiting useful incorporation into pacman. Once that occurs, this will become automated. Until then, please follow the instructions following this.

How to downgrade a package

  • Q: I just ran pacman -Syu and package XYZ was upgraded to version N from version M. This package is causing problems on my computer, how can I downgrade from version N to the older version M?
  • A: You may be able to downgrade the package trivially by visiting /var/cache/pacman/pkg on your system and seeing if the older version of the package is stored there. (If you have not run pacman -Scc recently, it should be there). If the package is there, you can install that version using pacman -U pkgname-olderpkgver.pkg.tar.gz after you moved to /var/cache/pacman/pkg.

This process will remove the current package, it will carefully calculate all of the dependency changes, and it will install the older version you have chosen with the proper dependencies down the line.


Via internet use http://arm.konnichi.com/2011/



In case of Kernel Panic or a roll back to a previous kernel

source: http://wiki.archlinux.org/index.php/Kernel_Panics

Reinstall kernel

Reinstalling the kernel is probably the best bet when no other major system modifications have taken place recently.

Start from the installation CD

The first step is booting the installation CD. Once booted, do not select to login with "arch", like you would when installing arch. Instead, you'll first want to login with "root".

# root

Mount your partitions

When booted, you are in a minimal but functional live GNU/Linux environment with some basic tools. Now, you have to mount your normal root disk (or partition) to /mnt.

# mount /dev/sdXY /mnt

If you are using legacy IDE setup, then use the command:

# mount /dev/hdXY /mnt

If you use a separate boot partition, don't forget to mount it with:

# mount /dev/sdXZ /mnt/boot

Gather your files for later troubleshooting

This is a good point to stop and gather your information onto another drive or partition so that it can be analyzed and/or emailed for outside viewing before the files change again. Simply create a separate directory on your main partition or mount a usb drive to contain the files. Then you may copy any files you will need to keep unchanged during the next boot with your new kernel.

Configure your chroot environment

Newer kernels use an initial ramdisk to set up the kernel environment. When you reinstall a kernel, that initial ramdisk will be regenerated with mkinitcpio. One of mkinitcpio's features is that it does autodetection to find out what kernel modules are required for starting up your computer. For this autodetection to work, /dev, /sys and /proc need to mounted in your chroot:

# mount -t proc none /mnt/proc
# mount -t sysfs none /mnt/sys
# mount --bind /dev /mnt/dev

Chroot to your normal root

Now, we will chroot to this disk:

# chroot /mnt

Roll back to previous kernel version

If you keep your downloaded pacman packages, you now can easily roll back. If you didn't keep them, you have to find a way to get a previous kernel version on your system now.

Let's suppose you kept the previous versions. We will now install the last working one.

# pacman -U /var/cache/pacman/pkg/kernel26-2.6.23.xx-x.pkg.tar.gz

(Of course, make sure that you adapt this line to your own kernel version. You can find the ones you still have in your cache by examining the directory above.)

Otherwise, check the install CD for a package. For example, the version 2008.06 i686 CD contains addons/core-pkgs/kernel26-2.6.25.6-1-i686.pkg.tar.gz.

Reboot

Now is the time to reboot and see if the system modifications have stopped the panic. If reverting to an older kernel works, don't forget to check the arch-newspage to check what went wrong with the kernel build. If there is no mention of the problem there, then go to the bug reporting area and search for it there. If you still don't find it, open a new bug report and attach those files you saved during the troubleshooting step above.

Wednesday, May 19, 2010

Speechsynthesis using Espeak and Mbrola

Did this in Ubuntu 9.10
With Synaptic install Espeak and mbrola packages.

Now go to this site and download your favourite voice:
http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html
I downloaded a Dutch voice
Unzipped it and created a folder named mbrola in usr/share/
Copied the big language file in the root of that folder usr/share/mbrola (in a subfolder it won't be found).

Now can we give espeak teh command to read it.
Open the terminal in a folder where you have a txt file to be spoken:
espeak -v mb-nl2 -f test.txt | mbrola -e /usr/share/mbrola/nl2 - - | aplay -r16000 -fS16

To make a wav file of it:
espeak -v mb-nl2 -f test.txt | mbrola -e /usr/share/mbrola/nl2 - test.wav

Tuesday, May 18, 2010

WriteType


In the area of adaptive software the linux arternatives are not very strong and convincing.
Write type looks like a promising application though.
It combines auditive support and wordprediction when typing and is in this way very useful for visually impaired or dyslectic people.
Lets hope it will take off and develop well
More info: WriteType is an application designed specifically for students who have difficulty typing. As you type, WriteType will offer suggestions for words. It also has TTS (text-to-speech) abilities to read text back to the author. WriteType is Free Software available under the GPL. It has only undergone small-scale field testing so far, and should therefore be considered beta.
http://bernsteinforpresident.com/software/writetype

How about internationalizing the app by adding the option to change dictionaries (and voice)?
It would just require different word lists. As it is right now, TTS (via eSpeak), spellcheck, and the interface can be easily internationalized. In fact, there is a (currently useless) option in the config file to specify the language. Word completion would would take only a little bit of code, but would require a list of words in the desired language. If you (or anyone) is interested in submitting a translation, I would be more than happy to fully make translations available.


Tried to isntall this in Arch and wnet well with sudo python2 setup.py install
But when running it got an error; aspell-en was not installed.
To use a different locale, word prediction list interface and espeak voice, use writetype -l nl_NL

Monday, May 17, 2010

Adapting an outdated PKGBUILD -Arch

When you download a PKGBUILd and do: makepkg -sci PKGBUILD
this will be normally enought but with an outdated PKGBUILD you will have to change
some variables
Lets take this packagebuild as example

# $Id: PKGBUILD,v 1.00 2009/05/31 01:00 darkbaboon Exp $
# Contributor: Ronan Rabouin

pkgname=adeskbar
pkgver=0.1.7.4
pkgrel=1
pkgdesc="A Quick Application Launcher"
arch=('i686' 'x86_64')
url="http://www.ad-comp.be/index.php?category/ADesk-Bar"
license=('GPL3')
depends=('python')
provides=($pkgname)
conflicts=($pkgname-bzr)
source=(http://www.ad-comp.be/public/projets/ADeskBar/$pkgname-$pkgver.tar.bz2)
md5sums=('9d07f253905fda8f986795415f684550')

build() {
cd $srcdir
install -d $pkgdir/usr/{bin,share/$pkgname,share/pixmaps,share/applications}
cp -a $srcdir/$pkgname-$pkgver/src/* $pkgdir/usr/share/$pkgname
install -m 644 $srcdir/$pkgname-$pkgver/$pkgname.png $pkgdir/usr/share/pixmaps/
install -m 644 $srcdir/$pkgname-$pkgver/$pkgname.desktop $pkgdir/usr/share/applications/

echo -e "#!/bin/bash\nif [ -f ~/.config/$pkgname/config ]; then\n/usr/share/$pkgname/$pkgname\nelse\n \
/usr/share/$pkgname/$pkgname-conf\n/usr/share/$pkgname/$pkgname\nfi" >$pkgdir/usr/bin/$pkgname
chmod 755 $pkgdir/usr/bin/$pkgname
}


What had to be changed??
pkgver=0.1.7.4 had to become pkgver=0.2

source=(http://www.ad-comp.be/public/projets/ADeskBar/$pkgname-$pkgver.tar.bz2) did not work because in the version 0.2 there was suddenly an underscore in the name
so had to be changed to>
source=(http://www.ad-comp.be/public/projets/ADeskBar/adeskbar_0.2.tar.bz2)

Third the validity check was negative because the file size has changed.
So determine md5sum of the now downloaded file:
Open in terminal the folder were it is and
md5sum adeskbar_0.2.tar.bz2
which gives e71f44e1a76054af9f2d2c939c1f6d3b
So change
md5sums=('9d07f253905fda8f986795415f684550')
to
md5sums=('e71f44e1a76054af9f2d2c939c1f6d3b')

Now we can do again:
makepkg -sci PKGBUILD

And all should go well.

This last md5sum problem can also be solved by
makepkg -g >> PKGBUILD

And then:
makepkg -sci PKGBUILD

Sunday, May 16, 2010

Avenir like fonts




I love Avenir like fonts
Some free font that mimic Avenir a lot are:

In a magazine I found a font that resembles Avenir a lot but is a lot older I think.save

Monday, May 10, 2010

how to install a deb package in Arch

First you will have to install dpkg
I read onthe arch forum that I can install a deb package with dpkg.
After installing dpkg and doing sudo dpkg -i filename.deb in this case:
sudo dpkg -i adeskbar.0.2.0-all.deb

If you get this error message:
dpkg: `update-rc.d' not found on PATH.
dpkg: 1 expected program(s) not found on PATH.
NB: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.

Move your deb to tmp and

cp /bin/false /tmp
cd /tmp
ln -s false update-rc.d
export PATH=$PATH:/tmp

and do again:
sudo dpkg -i adeskbar.0.2.0-all.deb

Another option install:deb2targz: http://www.archlinux.org/packages/community/any/deb2targz/


Solution when you aren't able to create a symbolic link
pablokal : don't know what 's wrong .. but you could try this :
## remove if exist the old broken symbolic link
sudo rm -rf /usr/bin/adeskbar
## use your preferred editor and create textfile
sudo geany /usr/bin/adeskbar

copy/paste these lines :

#!/bin/sh

cd /usr/share/adeskbar
./adeskbar @

and make it executable ..

sudo chmod a+x  /usr/bin/adeskbar

Thanks to ADcomp

Sunday, May 2, 2010

K3b fout geen permissie om apparaat te gebruiken

K3B says that there's no Burning Devices or no permission

A common cause of this is the current user have no privileges for that. You can try to:

  • Add the user to the group optical (remember to re-login after this) The las thing cost me a lot of hassle because I forgot to do that...
# gpasswd -a  optical
  • Set permissions to devices
# chmod 777 /dev/dvd*
# chmod 777 /dev/cd*
  • Make sure HAL is running, because recent k3b is HAL-based. Kindly reported by arnuld@ #archlinux.
# /etc/rc.d/hal status

Or perhaps consider adding a hal entry in your /etc/rc.conf so that it automatically loads upon boot.

# /etc/rc.d/hal start


Blog Archive