LaTeX auf Ubuntu installieren

Hier eine kleine Anleitung um das aktuelle LaTeX-Paket auf Ubuntu 12.04 zu installieren. Achtung: Das texlive Paket aus den offiziellen Ubuntu-Quellen ist veraltet und sollte nicht benutzt werden.

Vorarbeit:

sudo apt-get install perl-tk
sudo mkdir /usr/local/texlive
sudo chown ben:ben /usr/local/texlive

Achtung: Im letzten Befehl den eigenen Nutzer/Gruppe eingeben. Die Gruppe, in der man sich befindet, hat unter Ubuntu standardmäßig den gleichen Namen wie der Benutzer.

Das install-tl-unx.tar.gz (2.5mb) von http://www.tug.org/texlive herunterladen, entpacken und im Terminal in den Ordner wechseln.

./install-tl -gui wizard

Den Anweisungen folgen und warten.

Folgende Zeile am Ende der .profile einfügen. (Diese Datei befindet sich im eigenen Home-Ordner)

PATH="/usr/local/texlive/2012/bin/x86_64-linux:$PATH"

Achtung, falls ein 32bit Linux benutzt wird, kann die Pfadbezeichnung ein wenig anders sein. Falls alles geklappt hat, sollten Befehle wie pdflatex zu Verfügung stehen.

File upload with Fabrication Gem

I ran into some problems when testing controller code with rspec and fixtures created by fabrication. Some tests failed because the file object was type casted to a string. So I googled around and found this blogpost how to fix it in your spec. Luckily you can use it in your fabricators, too. See this small example:

Fabricator(:media_item) do
  file { Rack::Test::UploadedFile.new(Rails.root.join('spec','fabricators','test.pdf')) }
  type :pdf
end

There is a shortcut rails method for this, called fixturefileupload, but this didn't work for me in a fabricator.

2012-10-15 Followup

It has shown, that Rack::Test::UploadedFile will not work in exactly the same way as Rails does. So if you are using Rails and want to have the exact behaviour, use this little longer code:

Fabricator(:media_item) do
  file {
    ActionDispatch::Http::UploadedFile.new(
      :tempfile => File.new(Rails.root.join('spec','fabricators','test.pdf')),
      :filename => File.basename(File.new(Rails.root.join('spec','fabricators','test.pdf')))
    )
  }
  type :pdf
end

instagram

instagram

Ochsenherz 577g

Ochsenherz 577g