Jak odpakować dmg pod Linuksem

Niedawno kupiłem za symbolicznego dolara zestaw czcionek dostarczany w formie obrazu dmg. Producent (czyli Macware) zaznacza, że jest to produkt dedykowany dla komputerów Apple lecz nie jest to do końca zgodne z prawdą – dostarczone zostały pliki OpenType. Jak jednak użytkownik Linuksa może uzyskać dostęp do plików?

  1. Zainstaluj pakiet dmg2img. W przypadku Debiana lub Ubuntu wystarczy:

    root@sverige:/# apt-get install dmg2img

  2. Dokonaj konwersji z dmg do img.

    root@sverige:/# dmg2img -V obraz.dmg obraz.img

  3. Upewnij się, że niezbędny moduł jądra jest załadowany, a punkt montowania istnieje i zamontuj obraz img.

    root@sverige:/# modprobe hfsplus
    root@sverige:/# mkdir /tmp/blablabla
    root@sverige:/# mount -t hfsplus -o loop fonts.img /tmp/blablabla

Teraz możesz skopiować pliki do pożądanej lokalizacji (np. nagrać je na CD). Pamiętaj o odmontowaniu obrazu img kiedy nie będziesz go już potrzebować (wydaj polecenie umount /tmp/blablabla z konta root).

Jak uzyskać informacje o połączeniu 3G w Ubuntu

Z braku odpowiedniego narzędzia postanowiłem napisać minimalistyczny skrypt pozwalający na sprawdzenie stanu aktualnie trwającej sesji protokołu PPP. Do wyświetlania komunikatów wykorzystywane jest libnotify (Notify OSD). Praktycznie każdy istniejący modem 3G jest kompatybilny.

Tak wygląda przykładowy komunikat.

Skrypt można pobrać tutaj, wprowadzanie modyfikacji i/lub ponowne publikowanie dozwolone zgodnie z licencją FreeBSD (dołączona na końcu pliku). Dodanie skrótu klawiaturowego przywołującego skrypt to całkiem niezły pomysł lecz dla użytkowników Unity nieco utrudniony:

  1. Zainstaluj CCSM (compizconfig-settings-manager).
  2. Uruchom CCSM.
  3. W sekcji General przejdź do modułu Commands i aktywuj go.
  4. W zakładce Commands wpisz ścieżkę do skryptu (np. /opt/check3g.sh).
  5. W zakładce Key Bindings wybierz pożądany przez siebie skrót klawiaturowy (ja używam Control + Pause/Break).

Prawdopodobnie wzbogacę powyższy skrypt o dodatkowe funkcje.

Aktualizacja z dnia 06/01/2012: rozwinąłem skrypt. Link podany w tym wpisie zawsze będzie prowadził do najnowszej wersji. Nowszy screenshot, changelog i starsza wersja skryptu dostępne są tutaj

Regułki rewrite dla WordPress i lighttpd

Zakładam, że znasz już składnię plików konfiguracyjnych lighttpd. Prawdopodobnie masz już działający i poprawnie skonfigurowany serwer WWW z pożądaną wersją PHP zoptymalizowaną w odpowiedni sposób. Co jednak zrobić aby pominąć index.php z adresu strony korzystającej z silnika WordPress? Proste dopóki masz rozwiązanie pod ręką (należy dopisać je w konfiguracji vhosta).

url.rewrite-final = (
“^/(wp-admin|wp-includes|wp-content|gallery2|static)/(.*)” => “$0″,
“^/(.*\.php)” => “$0″,
“^/(.*)$” => “/index.php/$1″
)

Warto zwrócić uwagę na backslash w trzeciej linii powyższego kodu. Niestety sam boleśnie odczułem skutki zignorowania tego jednego znaku (błąd 404 dla wpisu zawierającego w tytule/treści ciąg znaków “php”, niezależnie od wielkości liter).