updating aur packages with yaourt

Wednesday, December 6. 2017

This is a work in progress for right now I dont seem to know how to do it right.

sudo yaourt -Syu --aur 

searches through my system and upgrades the db and then presents me a list of aur packages that need upgrade and then it works it's way through the list and I need to stay there and check every dialog and when there is a package I do not wish to upgrade I cannot skip it. Sure, there is a dialog asking me if I want to update this package, but if I give it a "no" the entire routine is aborted.

So, in case the package I really want to update happens to be the last in yaourt's list I have to update all of them, including the huge font collection which takes ages to download and build, and including the printer driver which I'd rather not touch at all.

That got me shouting and cursing yesterday cause following the update of the driver for the Brother QL-710w label printer the darn thing wouldnt print any more. CUPS was happy though, preparing the print data, posting them to /var/spool/cups and instantly flag it for completed, no errors.

The package that gave me trouble is  aur.archlinux.org/packages/brother-ql710w/  with the version 1.1.4r0. The prior version, pkgver=1.0.2r0 had installed and worked like a charm.

I spent hours trying to find a reason ar even a hint t what was failing to work but nothing helped until I decided to downgrade to the original version.
Now, with 'official' arch packages this is rather esy, there is a storage of older versions at /var/cache/pacman/pkg and you can take the package from there and downgrade with a pacman -U packageName

 But packages from aur are built when you install them, in /tmp and so they are usually lost when you try to step back. I have learned now that there is an option to change this in the /etc/yaourtrc config file. Next time it will be easier.. But as things were I chose a different path yesterday, I manually downgraded the package when it offers me to edit the build script. Changing the pkgver and the sha256sums was all it took.

One of the things I discovered was a nice feature of the aur git, in my case the url is https://aur.archlinux.org/cgit/aur.git/?h=brother-ql710w

I clicked around and soon had the site show me diffs of the prior and new version. Clearly the package was not at fault for my problems. Or Brother has changed some requirement for the install which the former version did not need and which should be reflected in the new package version - I didn't investigate this.

What I did is, searching on the Brother support site for links to older versions of the driver (none!) and then play around with the new url until I succeeded to get the old versions. Naming conventions are a good thing. Then, after successfully downloading them I took their sha256sums

sha256sum ql710wcupswrapper-1.0.2-0.i386.rpm

and those I pasted into the build script. After hours of fruitless trying I was perplexed to see it work on the first go.

That step wasn't actually necessary, I could have taken the sums from the diff at aur.archlinux.org/cgit/aur.git/diff/PKGBUILD 

 

 Zum Labeldrucker ql-710w (und einigen anderen) gibt Brother ein Kommandozeilentool,
mit dem man Custom pagesizes, also eigene Label-Formate erstellen und einbinden kann.
Das händisch zu versuchen, endet leicht in rot blinkender Drucker-LED.

brpapertoollpr_ql710w -P ql-710w -n 62x35Label -w 62 -h 35

ist die Syntax, um ein neues Format 62x35Label mit Breite 62mm, Höhe 35mm
zu erstellen.

Das Tool geht aber ungefragt davon aus, dass  
in /etc/cups/ppd die Datei ql-710w.ppd existiert und gibt sonst nur
lakonisch ein File not Found zurück.

mit

strace -ff  -e stat64  -e open brpapertoollpr_ql710w -P ql-710w -n 62x35Label -w 62 -h 35

kann man sich das vor Augen führen.

Hier gab es halt nur eine anders benamte .ppd, deshalb einiges Herumsuchen und -kopieren.

andere hier nennenswerte Orte:

/usr/share/cups/model
/opt/brother/PTouch/ql710w/inf

Was eben leider nicht geht, obwohl man es erwartet (und andere
Betriebssysteme auch Druckertreiber haben, die das unterstützen):
Das das Ding von seinem Endlospapier einfach druckt, bis es fertig ist, und
dann abschneidet.

Diese Erfahrung mache ich nicht allein, Tante Guggel findet reichlich ähnliche Fragen. 
Hilfreich waren mir Brother PCLinux-Forum Suse-Forum (mit Hinweisen auf einen besseren Foomatic-Treiber), natürlich das Arch-Drucker-Wiki 


Diese Einrichtung hat mich fast 3 m Etiketten gekostet.

Davon ab ist das ein für seine Zwecke nettes Druckerchen mit ordentlichem Druckbild. Ich bin im Zweifel, ob es grosse Unterschiede zwischen dem Druckwerk des QL-700 und günstigeren Modellen wie dem QL-570 gibt, lt. Datenblatt hat der QL-7XX zwar bis zu 300x600 px Auflösung, aber die Treiberdialoge kennen nur 300px und auch ein anhakbarer Schönschreibmodus hat keine sichtlichen Unterschiede gemacht. Zur Ersteinrichtung des Wlan musste ich auf einem anderen Betriebssystem einmal die Software installieren und eine USB-Verbindung herstellen, ganz ohne Mac oder Win geht es nur, wenn man an seinem AccessPoint die 1-Klick-Anmeldung mit WPS unterstützt.

Brother Drucker unter Arch

Friday, August 16. 2013

Update: diesmal ging es viel einfacher:
in yaourt brother, gibt mir eine Liste von Treiber -Paketen, davon zwei für den HL3040CN. braucht man beide, erst en LP-Treiber installieren, danach den CupsWrapper. Beide quengeln etwas, was mit etwas Pfadpflege und drüber-Installieren korrigierbar war. Cups monierte auch einen fehlenden filter, den man mit /usr/share/brother/Printer/hl3040cn/cupswrapper/cupswrapperhl3040cn -i  erzeugen kann. Testseite, fertig!

 

(Stand Dezember 2012):

 Das war schon eine rechte Pfriemelei und ich habe zu lange mit dem Schreiben gewartet, um noch alles präsent zu haben, so ist hier i.W. eine Liste von Links mit relevanten Infos bzw Daten. Im Kern war es so, dass man die Brother-Treiber herunterlädt, entpackt, in den Scripten diverse Distributions-typische Pfade und Dateinamen durch Arch-spezifische Varianten austauscht, Manuell ins Dateisystem kopiert. 

Mein Brother Printer ist ein HL 3040cn, Color Laser mit Preisen fuer Gerät und Toner, die beim ersten Toner-Nachkauf sehr ernstlich den Gedanken nahelegen, ob ich nicht statt der Cartouche mit schwarzem Pulver zu ~60€ gleich ein Neugerät mit allen Farben frisch für ~130€ nachkaufen sollte. Schon was pervers. Andererseits drucke ich gar nicht so viel und der erste Tonerkauf kam jetzt knapp 2 Jahre nach Erstanschaffung. Ich will gar nicht wissen, wieviele Tintenstrahler mir in dieser Zeit schon eingetrocknet wären...

Brother HL3040CN in cups
[BROTHER printer] printing problem (SOLVED)
brother-hl3040cn-cupswrapper 1.1.1_4-1


Brother HL-2040 (anderes Modell aber entsprechende Vorgehensweise)
Brother DCP-7020 dto.

Ich habe auch noch einen MFC 5490 rumzustehn, der als Tintenstrahldrucker natürlich längst schon eingetrocknet ist, aber immer noch scannt und faxt. Faxen ist eine so seltene Anwendung geworden, dass ich dafuer dann eine vm mit XP und Windows-Treibern hochfahre. zum scannen brauche ich sane und einen Brother-Treiber brscan3

Eins weiss ich noch: ich hatte dann schliesslich alles eingerichtet, es hätte wirklich gehen sollen, tat aber nicht. Irgendwann habe ich die Kite genervt runtergefahren. Nach dem nächsten Boot lief dann alles flockig.

 

arch linux von verschlüsselter SSD

Sunday, August 11. 2013

Das Thema ist an sich gut dokumentiert, hier ein paar Links:

https://wiki.archlinux.org/index.php/Encrypted_LVM

https://wiki.archlinux.org/index.php/Dm-crypt_with_LUKS

https://wiki.archlinux.de/title/Festplatte_verschl%C3%BCsseln

http://www.marcstraube.de/linux/2012/08/installation-von-archlinux-mit-verschlusseltem-lvm-und-systemd/

 
Medium mit Rauschen initialisieren:
# frandom ist ein wenig schneller /dev/random und dcfldd ist ein erweitertes dd und gibt dem Ungeduldigen eine Fortschrittsanzeige
dcfldd if=/dev/frandom of=/dev/sdb   
 
# für Neugierige und Kontroll-freaks ist
# lde ein DiskEditor, mit dem man sich anschliessend ansehen kann, was nun auf der disk steht
 
lde /dev/sdb   
 
# SSD partitinieren, da wir syslinux einsetzen werden, brauchen wir nur zwei Partitionen für boot und den verschluesselten Rest 
# gdisk ist gpt fdisk, GPT ist bei mehr als 2 TB angesagt
 
gdisk /dev/sdb  
 
Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          100351   48.0 MiB    8300  Linux filesystem
   2          100352       250069646   119.2 GiB   8E00  Linux LVM
 
# jetzt luks auf die grosse Partition, vorher einen langen, gut merkbaren Pass-Satz ausdenken
cryptsetup -y  -h sha512 --align-payload=8192 luksFormat /dev/sdb2
cryptsetup luksOpen --allow-discards /dev/sdb2 clvm 
 
# und jetzt die logischen Partitionen der LVM anlegen
pvcreate  --dataalignment 4M /dev/mapper/clvm
vgcreate ssd /dev/mapper/clvm
lvcreate -L 20G ssd -n rootvol
lvcreate -L 80G ssd -n homevol
lvcreate -l 100%FREE ssd -n varvol
 
# boot formatieren, 
mkfs.ext2 /dev/sdb1 -L boot
 
# die übrigen volumes bekommen ext4
mkfs.ext4  -E discard /dev/mapper/ssd-rootvol -L root
mkfs.ext4  -E discard /dev/mapper/ssd-homevol -L home
mkfs.ext4  -E discard /dev/mapper/ssd-varvol -L var
 
# standardmaessig werden immer 5% für root reserviert, auf home brauchen wir das nicht
tune2fs -m 0 /dev/mapper/ssd-homevol
 
# so jetzt kann man sie schon mounten und mit der Installation beginnen
mkdir /mnt/sdb2
mount /dev/ssd/rootvol /mnt/sdb2
mkdir /mnt/sdb2/home
 
mkdir /mnt/sdb2/var
mkdir /mnt/sdb2/boot
mount /dev/sdb1 /mnt/sdb2/boot
mount /dev/ssd/homevol /mnt/sdb2/home
 
mount /dev/ssd/varvol /mnt/sdb2/var
 
# damit die naechsten Schritte aus einem installierten Arch-System (statt archiso) gehen, 
# müssen die arch-install-scripts installiert sein
 
pacstrap /mnt/sdb2 base base-devel syslinux
 
syslinux-install_update -i -a -m -c /mnt/sdb2
 
# das legt uU in /boot/syslinux/ diverse symlinks an, was natuerlich nicht funktioniert,
# wenn die Bootpartition alleine und das Ziel der Links noch verschluesselt ist.
# Also kontrollieren und ggf statt der symlinks die echten dateien einkopieren.
 
# Die erzeugte /boot/syslinux/syslinux.cfg wird man auch kontrollieren und editieren wollen.
# wenn man statt der device -Pfade UUIDs einsetzen will, sieht ein funktionierender Eintrag etwa so aus:
 
LABEL arch
        MENU LABEL Arch Linux
        LINUX ../vmlinuz-linux
        APPEND root=/dev/mapper/ssd-rootvol cryptdevice=UUID=c30af807-1234-1234-1234-5ae7f6803b4d:ssd:allow-discards rw lang=de locale=de_DE.UTF-8
        INITRD ../initramfs-linux.img
 
# fstab erzeugen
#  (-U nutzt die UUID, anschliessend ist Handarbeit angesagt, wg swap etc.
# nuetzlich kommt blkid mit einer Liste aller partitionen und deren Bezeichnungen)
genfstab -U -p /mnt/sdb2 >> /mnt/sdb2/etc/fstab  
 

Anschliessend kann man in das neue System booten und normal installieren...

Und? Ist die SSD wirklich so rasend schnell, bzw. bringt sie überhaupt auf einem älteren Board mit legacy SATA etwas? Und wird die Performance nicht von der Ver-/Entschlüsselung komplett wieder aufgefressen?

Die Stoppuhr sagt: fast doppelt so schnell. Von der alten Platte ist die Kiste in 32sec. beim LoginScreen des KDM und braucht danach noch einmal 18 sec., bis der Desktop sichtbar wird. Von der neuen Platte sind es 16 sec und danach 14.

 

Arch Linux entschlacken

Sunday, June 2. 2013

Ok, auch Linux verfettet mit der Zeit.
Mal eben ein df -h und mit Schrecken sehe ich, dass die root partition bei über 90% Benutzung angelangt ist.
Mein erster Verdacht (dass ein Backup statt in's gemountete remote-Laufwerk lokal reingerutscht ist, bestätigt sich nicht, stattdessen zeigt mir Konqueror im Viewmode 'File Size View' von /var nur /var/cache/pacman/pkg, alle anderen Verzeichnisse kleben als Pünktchen am Rand.

pacman hebt sich hier vorige versionen aller packages auf, um dem Nutzer so schmerzloses Downgrade von Paketen zu ermöglichen. Sowas habe ich bislang noch nicht machen müssen.

Google schickt mich zum pacman-Artikel im Arch-wiki und dort finde ich den Hinweis auf das Putzprogramm paccache. paccache -h zeigt die Optionen, ich putze alle alten Versionen und behalte nur die jeweils letzte von jedem mit
paccache -r -k1
die fettesten Brocken, KDE-Hintergrundbilder, vertreibe ich ganz mit
paccache -r -k0 kdeartwork-wallpapers
paccache -r -k0 kde-wallpapers


Ergebnis: 12 GB frei gemacht, Benutzung liegt wieder bei 42%. Dauer (mit Googlen): 15 min.

 

(Page 1 of 3, totaling 12 entries) » next page