Ich habe schreckliche, falsch gerenderte Schriftarten in Java-Programmen wie jabref
und rubymine
. Dies kann durch Ausführen behoben werden
_JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on' jabref
Ich verstehe, dass ich diese Java-Optionen als Umgebungsvariablen exportieren und die Programme über die Befehlszeile starten kann. Gibt es jedoch eine Möglichkeit, diese Optionen global festzulegen, sodass alle Java-Programme sie erkennen, unabhängig davon, wie sie gestartet werden?
Ich weiß auch, dass ich alle *.desktop
Dateien für meine Java-Programme ändern könnte , aber ich suche nach einer globalen Lösung.
Ich benutze java-7-openjdk
unter Arch Linux. (FWIW das war früher in Ordnung mit der jetzt kaputten jre7-openjdk-headless-infinality installiert.)
environment-variables
java
fonts
Sparhawk
quelle
quelle
Antworten:
Sie wissen, wie die Variable in einer Shell festgelegt wird, aber für den Datensatz können Sie Folgendes schreiben :
Für alle Programme, die Sie ab dieser Shell-Sitzung starten, wird die Variable festgelegt.
Wenn Sie möchten, dass es für jede Shell, die Sie anschließend starten, festgelegt wird, fügen Sie diese Zeile
~/.profile
ebenfalls hinzu. In diesem Fall gilt dies für alle zukünftigen Shells, die Sie starten, jedoch nicht für alle, die derzeit ausgeführt werden..profile
funktioniert im Allgemeinen auch für die GUI, aber das kann durch die Systemkonfiguration und die Art und Weise, wie Sie die Dinge starten, unterbrochen werden. Dies ist nur eine Konfiguration pro Benutzer.Wenn Sie möchten, dass es jederzeit für jeden Benutzer festgelegt wird, können Sie eine Zuordnung hinzufügen
/etc/environment
. Das Format ist dort etwas anders: nurKEY=VAL
in getrennten Zeilen, ohne Anführungszeichen und ohne irgendetwas anderes.Dies wird vom
pam_env
Modul analysiert . Es gibt auch eine Benutzerdatei~/.pam_environment
, die nur für einen Benutzer den gleichen Effekt hat. Beide müssen abgemeldet und wieder angemeldet werden, damit die Änderung wirksam wird. Die Variablen werden für jede zukünftige Anmeldesitzung sowohl an der Konsole als auch in X festgelegt.Ebenso können Sie eine Datei
/etc/profile.d
mit einerexport
Anweisung erstellen, die von jedem Benutzer in jede zukünftige Sitzung geladen wird. Es wird wahrscheinlich einige bereits vorhandene Dateien geben, nach denen es modelliert werden kann, aber nur dieexport
obige Zeile ist in Ordnung.Alternativ können Sie die
export
Anweisung in~/.xinitrc
(falls verwendetstartx
)~/.xsession
, oder hinzufügen~/.xprofile
. KDE unterstützt auch ein Verzeichnis~/.kde/env
, das beliebig viele Shell-Dateien enthalten kann, dieexport
Anweisungen wie oben enthalten. Ich würde wahrscheinlich einen der anderen Ansätze bevorzugen.quelle
/etc/environment
Option verwendet, die mir am logischsten erschien.