Dotfiler: Skillnad mellan sidversioner

Från Lysators datorhandbok, den ultimata referensen.
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
(Skrev om hela artikeln)
 
(En mellanliggande sidversion av en annan användare visas inte)
Rad 1: Rad 1:
Om du vill konfigurera din miljö kan det vara bra att skapa dotfiler
Om du vill göra permanenta ändringar på din miljö kan det vara bra att skapa
(eller punktfiler, dotfiles, etc.) som kan styra variabler och starta
dotfiler (eller punktfiler svenska). Dessa filer sourcas (de körs ej som
script) av de program som de startas av. Exempelvis så sourcas .bashrc varje
program som kan vara bra att ha. Vilka dotfiler som faktiskt körs när
gång bash startas. Namnet kommer ifrån att dessa filer ofta börjar med en
du loggar in kan bero på många olika saker och resten av artikeln är
punkt.
ett försök att summera vilka dotfiler som körs när och om det finns
eventuella undantag.


De slutar ofta på rc och ligger i din hemmapp. Nuförtiden finns ibland även
== Tabell ==
möjlighet att lägga dessa i ~/.config mappen, se respektive programs man sida.


Vilka dotfiler som faktiskt körs när du loggar in kan bero på många olika
{|
saker och resten av artikeln är ett försök att summera vilka dotfiler som
! Fil
körs när och rekommendationer.
! Startas av/när...

! Undantag
= ~/.profile =
|-

| ~/.profile
Detta är den fil som är viktigast att känna till. Den körs varje gång du
| Laddas när du loggar in till sh
loggar in. Lägg miljövariabler som exempelvis PATH här och starta program
|
som du kommer vilja ha under din session.
|-

| ~/.bash_profile
= ~/.bashrc =
| Laddas när du loggar in till ett skal med bash

|
Denna fil körs varje gång du startar bash interaktivt, både när du loggar in
|-
via en tty eller om du startar en terminalemulator (förutsatt att ditt
| ~/.bashrc
förinställda skal är bash). Det finns även ~/.bash_profile och
| Laddas varje gång du startar bash
~/.bash_logout men författaren rekommenderar emot att använda sådana filer,
|
de behövs oftast inte.
|-

| ~/.xinitrc
= X dotfiler =
| Laddas av xinit (och därmed också startx)

|
X har några olika dotfiler bland annat ~/.xsession, ~/.xsessionrc,
|-
~/.xinitrc och ~/.xprofile. Olika distron, operativsystem och
| ~/.xsessionrc
inloggningshanterare har olika ideer om vilka och när dessa ska köras.
| Laddas av inloggningshanteraren
Därför kan det vara en bättre ide att istället lägga till dessa
|
konfigurationer i din .profile i en if-sats:
|}

if [ $DISPLAY ]; then
# Stäng av pling
xset b off
# Fler konfigurationer
# ...
fi

Nuvarande version från 10 mars 2023 kl. 23.10

Om du vill göra permanenta ändringar på din miljö kan det vara bra att skapa dotfiler (eller punktfiler på svenska). Dessa filer sourcas (de körs ej som script) av de program som de startas av. Exempelvis så sourcas .bashrc varje gång bash startas. Namnet kommer ifrån att dessa filer ofta börjar med en punkt.

De slutar ofta på rc och ligger i din hemmapp. Nuförtiden finns ibland även möjlighet att lägga dessa i ~/.config mappen, se respektive programs man sida.

Vilka dotfiler som faktiskt körs när du loggar in kan bero på många olika saker och resten av artikeln är ett försök att summera vilka dotfiler som körs när och rekommendationer.

~/.profile

Detta är den fil som är viktigast att känna till. Den körs varje gång du loggar in. Lägg miljövariabler som exempelvis PATH här och starta program som du kommer vilja ha under din session.

~/.bashrc

Denna fil körs varje gång du startar bash interaktivt, både när du loggar in via en tty eller om du startar en terminalemulator (förutsatt att ditt förinställda skal är bash). Det finns även ~/.bash_profile och ~/.bash_logout men författaren rekommenderar emot att använda sådana filer, de behövs oftast inte.

X dotfiler

X har några olika dotfiler bland annat ~/.xsession, ~/.xsessionrc, ~/.xinitrc och ~/.xprofile. Olika distron, operativsystem och inloggningshanterare har olika ideer om vilka och när dessa ska köras. Därför kan det vara en bättre ide att istället lägga till dessa konfigurationer i din .profile i en if-sats:

if [ $DISPLAY ]; then
    # Stäng av pling
    xset b off

    # Fler konfigurationer
    # ...
fi