Skillnad mellan versioner av "Dotfiler"

Från Lysators datorhandbok, den ultimata referensen.
Hoppa till navigering Hoppa till sök
(Skrev om hela artikeln)
 
(2 mellanliggande sidversioner 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
| Körs 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 =
| Körs 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
| Körs 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 =
| Körs av xinit (och därmed också startx)
 
  +
|
 
  +
X har några olika dotfiler bland annat ~/.xsession, ~/.xsessionrc,
|-
 
  +
~/.xinitrc och ~/.xprofile. Olika distron, operativsystem och
| ~/.xsession
 
  +
inloggningshanterare har olika ideer om vilka och när dessa ska köras.
| Körs av startx OCH grafiska inloggningshanterare
 
  +
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. 22.12

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