WSL – Windows Subsystem for Linux – brakujące czcionki w oh-my-zsh

Jeśli po instalacji oh-my-zsh w konsoli WSL widzimy krzaczki jak poniżej to oznacza to brak zainstalowanych fontów w Windows. Oczywiście zakładam, że powerline fonts zostały zainstalowane na Ubuntu.

echo "\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699"
 ±     

Rozwiązanie:

    1. Pobranie Powerline z repozytorium
      git clone https://github.com/powerline/fonts.git --depth=1
    2. Ręczna instalacja wybranej czcionki z poziomu Windows  lub uruchomienie konsoli powershell z poziomu Admina i całościowa instalacja fontów powerline
      .\install.ps1

      instalacja fontów powerline z powershell

    3. Wybieramy odpowiednią dla nas czcionkę w konfiguracji czcionki terminala WSLwsl zmiana czcionki terminala

    Oczywiście to tylko jedna z opcji poradzenia sobie z tym problemem.

WSL – Windows Subsystem for Linux – lokalizacja systemu plików i katalogów domowych

Od strony WSL do dysków możemy się dostać przez:

/mnt/<litera dysku>/Users/<username>

Z poziomu Windows* (*na przykładzie Windows 10) filesystem WSL znajduje się w:

%LOCALAPPDATA%\Packages\<nazwadystrybucji>\LocalState\rootfs

Gdzie <nazwadystrybucji> dla kilku popularnych dystrybucji to:

  • Ubuntu: CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
  • Debian: TheDebianProject.DebianGNULinux_76v4gfsz19hv4
  • Kali: KaliLinux.54290C8133FEE_ey8k8hqnwqnmg

 

Usunięcie zabezpieczenia przed kopiowaniem treści z PDF

Czasem zdarza się pobrać PDF z banku czy z jakiegoś labo i okazuje się że nie można skopiować tekstu z pliku PDF. Wszystko jest fajnie, tylko jeśli potrzebujemy skopiować lub przepisać długi ciąg znaków pozornie nie podobny do niczego to mamy problem.
Autor PDF włączył zabezpieczenia, które i tak można w łatwy sposób obejść, trochę to bez sensu ale ludzie nadal stosują takie “triki”.

Widok zabezpieczeń dokumentu z poziomu Adobe Acrobat Reader wygląda tak:
Zabezpieczenie PDF - widok z Acrobat Readera

Do pozbycia się zabezpieczeń najłatwiej skorzystać z Ghostscript (->http://ghostscript.com/download/)

Procedura usunięcia zabezpieczeń z PDF:

  1. Akurat pod ręką miałem system ze stajni M$, dlatego pobieramy wersję na Windows (w moim przypadku x64)
  2. Instalujemy
  3. Włączamy cmd i wchodzimy w miejsce instalacji do podfolderu bin (x:\\gs\gs9.19\bin), tam jest gswin64c.exe, którego będziemy używać.
  4. Uruchamiamy polecenie: gswin64c -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile="x:\\gs\gs9.19\bin\notescured.pdf" "x:\\gs\gs9.19\secured.pdf"
    W wersji x32 mamy plik gswin64c
  5. Po wykonanej konwersji mamy plik notsecured.pdf, z którym możemy robić co tylko chcemy.

Widok z konsoli po przeprowadzonej konwersji

 

Sam Ghostscript ma dużo więcej opcji, w tym przypadku najbardziej dla mnie przydatne to:

  • -q – brak wyświetlania komunikatów, w większości “zbędnych”
  • -sDEVICE=pdfwrite – tworzenie PDF, oczywiscie Ghostscript umożliwia konwersję do wielu innych formatów, chętnych odsyłam do dokumentacji.
  • -dOutputFile – wskazanie pliku wyjściowego

Oczywiście to jedna z wielu metod, przy minimalnym nakładzie pracy i konfiguracji. Chętni mogą uruchomić więcej fajerwerków przy konwersji lub wykonać ją z poziomu konsoli GhostScript.

…czyli codzienne kwasy sainta