/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Installere programmer manuelt
Fra : Martin Heller


Dato : 26-03-11 20:34

Jeg har lige installeret TeXlive 2010 manuelt (ikke via apt-get) på
Ubuntu. Der er et par ting, jeg ikke kan få til at virker som jeg gerne
vil have det til.

TeXlive er installeret i /usr/local/texlive/2010/.

For at kunne køre de installerede programmer har jeg tilføjet

# Add TeXLive 2010 to PATH
PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH
export PATH

til ~/.bashrc

Det ser også ud til at virke og pdflatex og de øvrige programmer fra
TeXlive 2010 bliver kaldt når jeg kører pdflatex m.v.

martin@nox$ which pdflatex
/usr/local/texlive/2010/bin/x86_64-linux/pdflatex

så langt så godt.

Men hvis jeg vil installere pakker med tlmgr, så skal jeg køre tlmgr som
superbruger. Det virker ikke:

martin@nox$ sudo tlmgr --help
sudo: tlmgr: command not found

sudo /usr/local/texlive/2010/bin/x86_64-linux/tlmgr --help

virker fint. Hvordan får jeg sudo til at finde tlmgr uden at jeg skal
skrive den fulde sti?

Jeg ville også gerne afinstallere den gamle TeXlive, som jeg har
installeret via Ubuntu's pakkehåndteringssystem. Men der er en del andre
programmer, der er afhængige af texlive pakken (Kile, Maxima-emacs,
m.f.). Hvordan fortæller jeg pakkehåndteringssystemet at jeg har
installeret Texlive manuelt, så jeg kan beholde de programmer, der er
afhængige af TeXlive?

 
 
Michael Rasmussen (26-03-2011)
Kommentar
Fra : Michael Rasmussen


Dato : 26-03-11 21:02

On Sat, 26 Mar 2011 20:33:37 +0100
Martin Heller <mr_heller@yahoo.dk> wrote:

>
> martin@nox$ sudo tlmgr --help
> sudo: tlmgr: command not found
>
Du skal lave tilsvarende rettelse for PATH for bruger root.
sudo vi /root/.bashrc
herefter
sudo source /root/.bashrc

> Jeg ville også gerne afinstallere den gamle TeXlive, som jeg har installeret via Ubuntu's pakkehåndteringssystem. Men der er en del andre programmer, der er afhængige af texlive pakken (Kile, Maxima-emacs, m.f.). Hvordan fortæller jeg pakkehåndteringssystemet at jeg har installeret Texlive manuelt, så jeg kan beholde de programmer, der er afhængige af TeXlive?
Det kan ikke lade sig gøre.

--
Hilsen/Regards
Michael Rasmussen
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE3E80917
A computer is like air conditioning: it becomes useless when you open
windows.


Martin Heller (26-03-2011)
Kommentar
Fra : Martin Heller


Dato : 26-03-11 22:11

On 2011-03-26 21:01, Michael Rasmussen wrote:
> Du skal lave tilsvarende rettelse for PATH for bruger root.
> sudo vi/root/.bashrc
> herefter
> sudo source/root/.bashrc

Tak. I mellemtiden har jeg imidlertid fået det til at virke ved at tilføje

Defaults !secure_path

til /etc/sudoers

Fra man sudoers:

secure_path Path used for every command run
from sudo. If you don't trust
the people running sudo to have a
sane PATH environment variable
you may want to use this.
Another use is if you want to
have the "root path" be separate
from the "user path." Users in
the group specified by the
exempt_group option are not
affected by secure_path. This is
not set by default.


Er der nogen fordele ved din måde frem for den ændring jeg har foretaget
(det er kun mig, der bruger maskinen)?

Adam Sjøgren (26-03-2011)
Kommentar
Fra : Adam Sjøgren


Dato : 26-03-11 21:12

On Sat, 26 Mar 2011 20:33:37 +0100, Martin wrote:

> Hvordan fortæller jeg pakkehåndteringssystemet at jeg har installeret
> Texlive manuelt, så jeg kan beholde de programmer, der er afhængige af
> TeXlive?

MÃ¥ske du kan bruge equivs?

,----[ http://packages.ubuntu.com/equivs ]
|
| Circumvent Debian package dependencies
|
| This package provides a tool to create trivial Debian packages.
| Typically these packages contain only dependency information, but they
| can also include normal installed files like other packages do.
|
| One use for this is to create a metapackage: a package whose sole
| purpose is to declare dependencies and conflicts on other packages so
| that these will be automatically installed, upgraded, or removed.
|
| Another use is to circumvent dependency checking: by letting dpkg think
| a particular package name and version is installed when it isn't, you
| can work around bugs in other packages' dependencies. (Please do still
| file such bugs, though.)
`----

Mvh.

Adam

--
"Ge mig en vinterdrog, ge mig allt du har Adam Sjøgren
Kom nu jag är kroniskt låg, bara mörkret hörs" asjo@koldfront.dk

Martin Heller (26-03-2011)
Kommentar
Fra : Martin Heller


Dato : 26-03-11 22:55

On 2011-03-26 21:12, Adam Sjøgren wrote:
> MÃ¥ske du kan bruge equivs?

Tak. Det ledte mig til
<URL:http://texblog.net/latex-archive/linux/kile-texlive-2008-equivs/>,
som jeg stort set fulgte. Her er hvad jeg gjorde, hvis andre får brug
for det:

1) Lav en fil texlive.ctl med følgende indhold:
Section: tex
Package: texlive-dummy
Provides:
tex-common,texlive-base-bin,texlive-binaries,texlive-common,texlive-latex-base,texlive-doc-base,texlive-base,texlive-metapost,texlive-xetex,texlive-latex3,luatex,texlive-font-utils
Description: texlive dummy package
This package provides dpkg with the information that there are
certain tex packages installed.


2) Lav en dummy pakke med

   equivs-build texlive.ctl

3) Installer pakken med

   sudo dpkg --force-all -i texlive-dummy_1.0_all.deb

4) Afinstaller den gamle texlive.

Ovenstående ser ud til at virke fint, men jeg har ikke tilstrækkelig
forståelse for hvad jeg har gjort til, at jeg kan give garantier for, at
det ikke skaber problemer senere. Så eftergør det på eget ansvar

Søg
Reklame
Statistik
Spørgsmål : 177417
Tips : 31962
Nyheder : 719565
Indlæg : 6407867
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste