Mam okropne, niepoprawnie renderowane czcionki w programach Java, takich jak jabref
i rubymine
. Można to naprawić, uruchamiając
_JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on' jabref
Rozumiem, że mogłem wyeksportować te opcje Java jako zmienne środowiskowe i uruchomić programy z wiersza polecenia. Czy istnieje jednak sposób, aby ustawić te opcje globalnie, aby wszystkie programy Java rozpoznawały je, bez względu na to, jak są uruchamiane?
Wiem też, że mógłbym modyfikować wszystkie *.desktop
pliki dla moich programów Java, ale szukam globalnego rozwiązania.
Używam java-7-openjdk
na Arch Linux. (FWIW było to w porządku z zainstalowanym teraz zepsutym jre7-openjdk-headless-infinality .)
environment-variables
java
fonts
Krogulec
źródło
źródło
Odpowiedzi:
Wiesz, jak ustawić zmienną w powłoce, ale dla rekordu możesz napisać :
i wszystkie programy, które rozpoczniesz od tej sesji powłoki po tym, będą miały ustawione zmienne.
Jeśli chcesz, aby był ustawiony dla każdej powłoki, którą uruchomisz później, dodaj również tę linię
~/.profile
. W takim przypadku będzie to miało zastosowanie do wszystkich uruchomionych przyszłych powłok, ale nie do tych, które są obecnie uruchomione..profile
będzie ogólnie działać również dla GUI, ale może to zostać zepsute przez konfigurację systemu i sposób uruchamiania. Jest to tylko konfiguracja dla użytkownika.Jeśli chcesz ustawić to dla każdego użytkownika przez cały czas, możesz dodać przypisanie do
/etc/environment
. Format jest tam trochę inny: tylkoKEY=VAL
w osobnych wierszach, bez wymaganego cytowania i niczego innego.Jest to analizowane przez
pam_env
moduł. Istnieje również~/.pam_environment
plik dla jednego użytkownika, który ma taki sam efekt tylko dla jednego użytkownika. Oba wymagają wylogowania i ponownego zalogowania, aby zmiana zaczęła obowiązywać. Zmienne zostaną ustawione dla każdej przyszłej sesji logowania, zarówno w konsoli, jak i w X.Podobnie możesz utworzyć plik
/etc/profile.d
zexport
instrukcją i będzie on ładowany do każdej przyszłej sesji przez dowolnego użytkownika. Prawdopodobnie będą tam wcześniej istniejące pliki, na których można by je modelować, ale tylkoexport
powyższa linia będzie w porządku.Alternatywnie możesz dodać
export
instrukcję w~/.xinitrc
(jeśli używaszstartx
)~/.xsession
, lub~/.xprofile
. KDE obsługuje również katalog,~/.kde/env
który może zawierać tyle plików powłoki, ile chcesz, które zawierająexport
instrukcje jak wyżej. Prawdopodobnie wolałbym inne podejście.źródło
/etc/environment
opcji, która wydawała mi się najbardziej logiczna.