Software Engineer

Month: May 2012

LyX: Installing unknown document classes

If you either received a LyX file that uses a document class unknown to your LyX installation or you would like to create a document using one of the options in the settings dialog, you need to install that document class.

This description is for Mac OS based on the latest version of MacTeX (as of May 28th 2012 this is MacTeX-2011), but should work with any version.

First, you should find out where the document class package should be put. In a previous version, I mentioned to put it in /usr/local/texlive/<version>/texmf-dist/tex/latex/ but this approach is not recommended, because it makes it only available for the current version. There are two better options that allow you to install a new version and keep all your custom packages: You can either make it available to all users or just your user.

  • All users: /usr/local/texlive/texmf-local/tex/latex/
  • Just you: Run kpsewhich -var-value=TEXMFHOME in Terminal. This will show you your personal TEXMF home directory (e.g., ~/Library/texmf). In case it doesn’t exist, you need to create it, as well as the sub-directories, to get the path ~/Library/texmf/tex/latex/

Now that you know where to put it, follow these steps:

  1. Download the desired document class package.
  2. Put the folder with the downloaded document class package into the path retrieved above. You can use Finder to do that. In Finder go to Go > Go to Folder and type in the path. You need to authenticate yourself in order to do that.
  3. In Terminal execute the following command: sudo texhash
    You will be required to enter your password.
    In case texhash cannot be found you have to go to /usr/local/texlive/<version>/texmf-dist/bin/ and execute sudo ./texhash
    Note: You can make sure it worked by executing kpsewhich classname.cls which will give you the path to that package class.
  4. In LyX do Reconfigure (in the menu bar LyX > Reconfigure)
  5. Restart LyX and the document class should be available now

On Windows (using MikTeX) this should work quite easy using the MikTeX Package Manager.

Update 28.03.2013: Fixed path to LaTeX packages (Thanks, Mathias!)
Update 05.04.2013: Updated description with better location for custom document classes.

PostgreSQL accepts any or no password when connecting

When connecting to the database with the postgres user I realized it accepts any password or no password even though the user has a password set. I don’t know if this happens also when using the installer to install PostgreSQL, in my case I used initdb to set it up. I remember it mentioned something regarding “trust” after setting it up but didn’t take much notice until I realized it accepts any password.

In pg_hba.conf it adds all local connections to be trusted which means connecting from the same host doesn’t need to authenticate.

host    all             all             127.0.0.1/32            trust

If you don’t like that just change it to another method, for example md5.

Using multiple SVN clients with the svn+ssh protocol and a putty profile

When trying to access a SVN repository using the svn+ssh protocol with TortoiseSVN it might happen that the password prompt shows up endless times. One suggested solution is to set up a profile in putty and use a private key for authentication for ssh there. Then in TortoiseSVN the host name just has to be changed to the name of the profile, e.g. svn+ssh://username@puttyProfileName/path/to/repo.

This works well until trying to reuse the stored SVN information of your local working copy in another client, for example your IDE. In my case I am using Eclipse with the Subclipse plug-in and my first approach didn’t work with Subclipse, which meant I couldn’t do any team actions from Eclipse when the projects where checked out using TortoiseSVN. If you are only using either of them it works fine.

The solution is quite simple: Rename the putty profile to the actual hostname and use the regular URL for the repository. That’s it. If you’ve used the putty profile name before just use relocate in TortoiseSVN to change the repository URL. TortoiseSVN will then still use the putty profile with the private key to authenticate. Other clients like Subclipse see it as an actual hostname and are able to use that.

© 2024 Matthias Schoettle

Theme by Anders NorenUp ↑