Staldfiduser til Deres datamat

Få besvaret Deres inderste spørgsmål

  1. Skulle man være i færd med at betjene en konsolfortolker af fabrikatet GNU Bash, og er denne udstyret med en facilitet til såkaldt kløgtig forlængelse af ens indtastning ved tryk på tabulatortasten, og skulle dette være tilfældet, at nævnte kløgtige facilitet ikke viser sig at leve op til sit navn; da kan man anmode konsolfortolkeren om at udføre en almindelig ukløgtig filnavnsforlængelse ved at trykke Alt + /.

    Denne staldfidus er indsendt af hr. T. Henriksen, Gladsaxe.
  2. Hvis Deres nye konsolvinduebestyrer opfører sig mærkeligt på Deres datamat (eller en fjerndatamat), så tjek om dens konsolinfo (ncurses-term).

    Denne staldfidus er indsendt af hr. V. Erk, Ny Slagelse kommune.
  3. Skulle De befinde Dem i den situation, at De via Nix-pakkebestyreren søger at oversætte programmel skrevet i programmeringssproget Go, og skulle byggenytteprogrammet buildGoModule beklage sig over manglende afhængighedsfiler i en mappe ved navn vendor/; da skyldes dette formentlig, at Nix-bestyreren i sin grundindstilling forventer, at programmets forfatter på forhånd har anmodet Go-oversætteren om at indlejre samtlige afhængigheder direkte i projektets filhierarki ved kommandoen go mod vendor (eller go work vendor, skulle der være tale om et arbejdsrum med flere moduler). Dette giver den fordel, at oversættelsen kan fuldføres uden adgang til datanetværket, omend på bekostning af projektets størrelse.

    Skulle programmets ophavsmand have undladt denne forberedelse, står tre udveje Dem åbne: For det første kan De selv udføre den ovennævnte indlejringskommando og indsende resultatet som en programrettelse til ophavsmanden. For det andet kan De instruere Nix om at hente afhængighederne ved en stedfortræder-tjeneste ved at tilføje proxyVendor = true; til Deres buildGoModule-tilkaldelse. For det tredje — og ofte mest ligetil — kan De helt afstå fra indlejring ved at angive buildFlags = [ "-mod=mod" ];, hvorved Go-oversætteren i stedet vil anvende sit almindelige modul-mellemlager, verificeret mod integritets-kontrolsummerne i filen go.sum.

    Denne staldfidus er indsendt af hr. S. Shine, i et tog fra Århus (Ar) til København H (Kh).
  4. Kommandofortolkere af populære fabrikater, heriblandt særligt GNU Bash, er noget situationsafhængige mht. hvornår de indlæser hvilke af deres brugeropsætningsfiler. Særligt indlæses ~/.profile (eller tilsvarende ~/.bash_profile) kun af en logindskal (en såkaldt login-shell), medens f.eks. ~/.bashrc indlæses ved hver opstart af kommandofortolkeren. En vanskelighed er at den kommandofortolker der startes i grafiske miljøer som regel ikke er en logindskal, medens de typisk er det når man tilgår en fjerndatamat over SSH. Man kunne naturligvis placere al opsætning i ~/.bashrc, men ofte er der opsætning som ikke så gerne tåler at blive udført to gange, f.eks. udvidelse af miljøvariable som $PATH eller opstart af SSH-agenter, hvilket kan ske ved brug af underfortolkere.

    En god fidus er således at lade ~/.bashrc indlæse ~/.profile, men først efter kontrol af en til formået defineret variabel, der så sættes i ~/.profile. Helt konkret indsætter man i starten af ~/.bashrc følgende:

    [ "$DOT_PROFILE_EVALUATED"  ] || source $HOME/.profile
    Og et sted i ~/.profile følgende:
    export DOT_PROFILE_EVALUATED=1

    Dette sikrer at ~/.profile er blevet indlæst i hver inkarnation af kommandofortolkeren, men blot én gang.

    Denne staldfidus er indsendt af hr. T. Henriksen, Gladsaxe.

Såfremt De føler, at der mangler en staldfidus De er bekendt med, så kan De fluks forfatte et styks elektropost, og sende det til staldfidus snabel-a datamat punktum dk.