본문 바로가기

Geek

파이어폭스 3 에서 확장기능 사용하기

최근 파이어폭스 3 Beta 버전이 릴리즈 되면서 주변에 테스트 해보려는 사람들이 많다.
그런데 파이어폭스를 쓰는 이유중에 하나가 바로 확장기능이다. 불행히도 아직 공식 지원이 아니기 때문에 파이어폭스 3에서 가능한 확장기능이 많이 올라와 있진 않다. 그래서 그런지 한번 설치정도만 해보고 바로 지우는 사람들이 많아서 확장기능을 파이어폭스 3에서 사용하는 방법에 대해 정리해볼까 한다.
파이어폭스의 확장기능은 각각이 컴포넌트화 되어 있는데 이런 컴포넌트 정보들을 담고 있는 파일이 있다. 그것은 install.rdf라는 파일이다. 이 파일의 위치는 각 OS마다 다음과 같다.
리눅스 : $HOME/.mozilla/firefox/XXXX.default/extensions/{UUID}/install.rdf
윈도우 : C:\Documents and Settings\{계정명}\Application Data\Mozilla\Firefox\Profiles\XXXX.default\extensions/{UUID}/install.rdf
매킨토시 : /Library/Applicaton Support/FireFox/Profiles/{계정명}/XXXX.default/extensions/{UUID}/install.rdf
UUID는 각 확장기능의 고유식별번호이다. 일단 개인적으로 설치한 모든 확장기능이 해당 디렉토리에 들어가 있으므로 extensions 디렉토리안의 모든 디렉토리에 있는 install.rdf를 고쳐주는 것이 좋다.
일단 수정하려는 install.rdf 파일은 여러가지 형식으로 구성되어 있는데, 확장기능의 특성상 모질라 프로젝트에서 개발되는 대부분의 소프트웨어에 확장기능이 설치될 수 있도록 하고 있다. 그러다 보니 install.rdf에 파이어폭스뿐 아니라 모질라슈트(씨몽키), 썬더버드, 넷스케이프 등과 같은 프로그램에서 같이 설치될 수 있는 정보를 포함하고 있어서 약간 복잡해질 수 있다.
일단 몇가지 형식을 잠깐 보면,
.......
    <em:targetApplication>
      <Description>
        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
        <em:minVersion>1.0</em:minVersion>
        <em:maxVersion>3.0a9</em:maxVersion>
      </Description>
    </em:targetApplication>
.......
위 형식은 설치될 프로그램(파이어폭스)를 정보를 따로 보관하고 있는 형식이다. 위에서 3.0.a9를 3.*로 수정하면 베타 버전에서 사용할 수 있다.
......
  <RDF:Description RDF:about="rdf:#$rtub42"
                   em:id="{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
                   em:minVersion="1.0"
                   em:maxVersion="2.0.0.*" />
......
역시 비슷한 형식의 install.rdf파일이다. 위에서 최대 버전을 3.*로 변경해주면 된다.
그외에도 몇가지 다른 형식이 존재하지만 위와 같은 방식으로 변경해주면 파이어폭스 3에서 동작하는 파이어폭스를 만나볼 수있을 것이다. 다만 한가지, 지금까지 설명한 방식은 파이어폭스 2에서 먼저 설치되어 있는 상태의 확장기능을 파이어폭스 3에서 인식할 수 있도록 하는 방법이고 파이어폭스에서 설치할 수 있도록 하려면 위의 정보를 수정해서 xpi 파일을 따로 만들어야 된다. 그런데 최근 올라온 릴리즈 노트를 보면 적지 않게 XUL이나 XPCOM이 적지 않게 변경되어 호환되지 않는 확장기능이 다수 존재한다. 개인적으로 확인한 것은 "패스터폭스"가 동작하지 않는 것을 확인했다.