[erledigt] Frage zu Backport von libfreetype6

Smalltalk
Antworten
RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

[erledigt] Frage zu Backport von libfreetype6

Beitrag von RobertDebiannutzer » 19.02.2018 16:51:40

Hallo,

aktueller Stand von Debianlibfreetype6 in Debian:
stretch: 2.6.3-3.2: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x
buster: 2.8.1-2: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x
sid: 2.8.1-2: alpha amd64 arm64 armel armhf hppa hurd-i386 i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390x sh4 sparc64 x32 bzw. 2.8.1-0.1: kfreebsd-amd64 kfreebsd-i386

Ich persönlich (!) fand die Darstellung der Schrift an meinem (!) Monitor anfangs, als ich von Windows 7 zu Debian wechselte, grausig. Ich habe aber glücklicherweise recht früh entdeckt, dass die neuen Versionen der library eine für meinen Geschmack wesentlich bessere, nämlich perfekte, Darstellung bieten. Das lag eindeutig an der library, denn ich habe alle, alle, alle Möglichkeiten der Konfiguration durchgeackert - mit und ohne Subpixel-Hinting, anderer "hintstyle", anderer lcdfilter, alles! Das Problem lag vor allem bei den Windows-Schriftarten wie Arial, mit denen man halt doch ab und an konfrontiert wird.
Es ist auch aus der News-Seite des freetype-Projekts ersichtlich, dass sich über 2.6 ordentlich etwas getan hat. Es wurde ein neues System des Subpixel-Hintings namens "ClearType" eingeführt: https://www.freetype.org/index.html#news (insbesondere ab 2.7).
Anfangs habe ich mir einfach die .deb-Pakete aus buster oder sid mit wget geholt und mit "dpkg -i" installiert.
Mittlerweile weiß ich, dass das zwar wegen gleicher Abhängigkeiten geht, es aber nicht "the Debian way" ist. Ich habe mir also lokale backports erstellt, damit ich immer die neueste libfreetype habe.

Nun zu meinem Anliegen:
Da ich damals beim googeln nach der richtigen Schrifteinstellung recht viele Einträge von Leuten gefunden hatte, die ein ähnliches Problem hatten, ist es vielleicht überlegenswert, einen normalen backport des Paketes libfreetype6 zu erstellen.
Jetzt weiß ich aber nicht, wie ich sowas beim Debian-Team anregen soll? Einfach dem Maintainer vom stable-Paket eine Mail schreiben mit der Bitte um einen backport, oder wie macht man das "the Debian way"?

Übrigens meine "fonts.conf", mit der die Schriftdarstellung wirklich gut ist, sowohl bei meiner Standardschrift "DejaVu Sans" als auch bei z.B. Arial:

Code: Alles auswählen

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <include ignore_missing="yes">conf.d</include>
  <match target="font">
    <edit name="antialias" mode="assign">
      <bool>true</bool>
    </edit>
  </match>
  <match target="font">
    <edit name="rgba" mode="assign">
      <const>rgb</const>
    </edit>
  </match>
  <match target="font">
    <edit name="lcdfilter" mode="assign">
      <const>lcddefault</const>
    </edit>
  </match>
  <match target="font">
    <edit name="hinting" mode="assign">
      <bool>true</bool>
    </edit>
  </match>
  <match target="font">
    <edit name="hintstyle" mode="assign">
      <const>hintfull</const>
    </edit>
  </match>
  <match target="font">
    <edit name="autohint" mode="assign">
      <bool>false</bool>
    </edit>
  </match>
  <match target="pattern">
    <edit name="dpi" mode="assign">
      <double>96</double>
    </edit>
  </match>
</fontconfig>
Zuletzt geändert von RobertDebiannutzer am 01.06.2018 17:55:41, insgesamt 1-mal geändert.

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: Frage zu Backport von libfreetype6

Beitrag von hikaru » 19.02.2018 21:42:41

Wenn du dir sicher bist, dass es wirklich an der Lib liegt, dann wäre ein Bugreport mit der Schwere "wishlist" tatsächlich der richtige Weg.
In dem Bugreport sollte eine gute Begründung stehen. Der Link auf die freetype-News wäre ein guter Anfang, es sollte aber mMn noch eine Demonstration folgen, was sich konkret ändert. Vielleicht kannst du Screenshots verlinken, einmal mit der Stretch-Version und dann mit deinem eigenen Backport auf einem sonst sauberen Stretch.

Ich bin mir unsicher, gegen welches Release ich diesen Report schreiben würde. Stretch als Ziel des Backports liegt nahe, aber ein Entwickler wird eher Sid im Auge haben, daher könnte es sinnvoller sein, dort einen Report nach dem Schema "Bitte nach Stable backporten!" aufzumachen.
Recht einfach geht das mit Debianreportbug. Das grobe Vorgehen hate ich mal hier skizziert:

viewtopic.php?f=27&t=151820&start=15#p1009293

RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

Re: Frage zu Backport von libfreetype6

Beitrag von RobertDebiannutzer » 01.03.2018 11:31:22

Komme leider erst jetzt wieder zu dem Thema...
Was versteht man denn unter einem "sauberen stable"?

Code: Alles auswählen

robert@RobertDebian:~$ aptitude versions '~VCURRENT !~Astable' | sed '/^$/d'
Package cnijfilter-common:
i  3.40-1  100
Package cnijfilter-mp495series:
i  3.40-1  100
Package firejail:
i  0.9.52-2~bpo9+2 stretch-backports 100
Package firejail-profiles:
i A 0.9.52-2~bpo9+2 stretch-backports 100
Package freetype-build-deps:
i  2.8.1-2  100
Package intel-microcode:
i  3.20171117.1~bpo9+1 stretch-backports 100
Package libfreetype6:
i A 2.8.1-2  100
Package libfreetype6:i386:
i A 2.8.1-2  100
Package libjpeg8:
i A 8d-1+deb7u1  100
Package libpng12-0:
i A 1.2.50-2+deb8u3  100
Package libtiff4:
i A 3.9.6-11+deb7u8  100
Package quilt:
i A 0.63-8.2  100
Package scangearmp-common:
i  1.60-1  100
Package scangearmp-mp495series:
i  1.60-1  100
Package spectre-meltdown-checker:
i  0.34-1~bpo9+1 stretch-backports 100
Die Pakete cnijfilter-* und scangearmp-* sind für meinen Canon Drucker/Scanner, libjpeg8, libpng12-0 und libtiff4 sind Abhängigkeiten dieser Canon-Pakete. Die i386-Version von libfreetype6 ist nur vorhanden, weil ich leider manchmal CDs mit Windows-Software benutzen muss, das ist also nur für wine installiert. Deswegen habe ich mir für die i-386-Version nicht die Mühe gemacht, sie zu backporten, weil dann muss ich erst ein chroot erstellen, sonst kann ich ja keinen i-386 Pakete auf einem amd64-System builden... Deswegen ist die i-386-Version von libfreetype6 einfach das installierte sid-Paket.
Übrigens wegen "sauber": Wine habe ich aus dem Repo von Wine installiert:

Code: Alles auswählen

deb https://dl.winehq.org/wine-builds/debian/ stretch main

Code: Alles auswählen

robert@RobertDebian:~$ dpkg -l | grep wine
ii  wine-stable                          3.0.0~stretch                     amd64        WINE Is Not An Emulator - runs MS Windows programs
ii  wine-stable-amd64                    3.0.0~stretch                     amd64        WINE Is Not An Emulator - runs MS Windows programs
ii  wine-stable-i386:i386                3.0.0~stretch                     i386         WINE Is Not An Emulator - runs MS Windows programs
ii  winehq-stable                        3.0.0~stretch                     amd64        WINE Is Not An Emulator - runs MS Windows programs
Außerdem habe ich noch den aktuellen firefox in einem mir gehörenden Ordner in /opt:

Code: Alles auswählen

robert@RobertDebian:~$ ls -l /opt
total 16
drwxr-xr-x 10 robert robert 4096 Mär  1 10:12 firefox
drwx------  2 root   root   4096 Feb  9 00:07 lost+found
drwxr-xr-x  5 robert robert 4096 Feb 28 21:32 scripts
drwxr-xr-x  6 root   root   4096 Feb 18 17:27 wine-stable
Wine hat sich selber nach /opt installiert und wegen lost+found: /opt liegt bei mir auf einer separaten Partition:

Code: Alles auswählen

UUID=8e763f3a-cd62-4afb-8635-5cf2afd2b0f0	/opt		 ext4		 nodev,nosuid			 0	 2
Sonst noch was? Achja, ich teste gerade den tor-browser, welchen ich mir von der offiziellen Website runtergeladen habe und in $HOME gepackt habe. (Wird natürlich mit

Code: Alles auswählen

robert@RobertDebian:~$ cat /opt/scripts/torwrapper.sh
#!/bin/bash

cd /home/robert/torbrowser/tor-browser_en-US/
firejail --blacklist=/opt --private-home=torbrowser ./start-tor-browser.desktop > /home/robert/.var/torbrowser.log 2>&1
gestartet... Aber das ist ja denke ich eh egal für die Frage nach einem "sauberen" stable...

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: Frage zu Backport von libfreetype6

Beitrag von hikaru » 01.03.2018 11:50:49

Mit "sauber" meine ich ein System, das einerseits keinen Verdacht erregt, dass dein geschildertes Problem auf individuelle Änderungen zurückzuführen ist und das andererseits klar macht, dass dein erwünschter Fix ausschließlich auf das im Bugreport erwähnte Paket zurückzuführen ist.
Ich kenne mich mit Freetype leider nicht aus, daher kann ich konkret nicht beurteilen, ob dein System das erfüllt. Im Zweifelsfall würde ich eine VM mit einer Standardinstallation erstellen und dort die Situation vor und nach dem Backport demonstrieren.

RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

Re: Frage zu Backport von libfreetype6

Beitrag von RobertDebiannutzer » 05.03.2018 14:46:06

Puh, vielleicht schicke ich dann doch erstmal einen wishlist-Report mit ausführlicher Beschreibung los. (Danke übrigens für die Anleitung, wie man das einfach mit reportbug macht!)
Die Maintainer und Developer haben ja wahrscheinlich sowieso extra Test-Einrichtungen, sodass es für sie wahrscheinlich kein großer Aufwand ist, den Unterschied kurz zu testen, wenn ich ihn angemessen beschreibe...

RobertDebiannutzer
Beiträge: 385
Registriert: 16.06.2017 09:52:36

[erledigt] Re: Frage zu Backport von libfreetype6

Beitrag von RobertDebiannutzer » 01.06.2018 17:55:23

Ich hatte mal eine Mail an den Maintainer geschickt (nachdem ich es nicht geschafft habe, reportbug und exim zu meiner Zufriedenheit zu verheiraten), aber der hat nix gemacht.
Naja, nachdem ich nun einen neuen Laptop mit 1920x1080 statt 1280x800 Bildschirmauflösung habe, ist auch ohne Backport alles zufriedenstellend, aktuell habe ich sogar "hintslight" als Einstellung.
Insofern kann ich die Nicht-Reaktion des Maintainers verstehen, schließlich haben ja heutzutage viele Leute einen FullHD-Bildschirm, manche sogar noch eine höhere Auflösung. Insofern sind die anderen Pakete, die er betreut, wichtiger als der Backport von libfreetype6.

Thema hat sich also erledigt.

Antworten