Skip to content

About

Otwartoźródłowa alternatywa dla EZD AddIn dla Linuksa i macOS

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

46 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DodatekEZD – alternatywa dla EZD AddIn dla Linuksa i macOS

DodatekEZD to funkcjonalny odpowiednik aplikacji EZD AddIn dla systemów Linux i macOS. Aplikacja integruje się z systemem EZD i obsługuje linki ezd://.

Co potrafi DodatekEZD?

DodatekEZD realizuje te same główne zadania co EZD AddIn:

  • Bezpośrednie edytowanie dokumentów w EZD – otwieranie dokumentów z EZD, edycja w programie biurowym i zapis z powrotem do EZD bez konieczności ręcznego pobierania i wgrywania.
  • Porównywanie zmian w plikach - możliwość porównywania zmian w różnych formatach plików (TXT, RTF, ODT, DOC, DOCX), jak również zmiany w arkuszach kalkulacyjnych (CSV, ODS, XLS, XLSX).
  • Elektroniczne podpisywanie dokumentów – integracja z lokalnie zainstalowanym serwerem podpisu DSS WebApp umożliwiającym składanie podpisu elektronicznego na dokumentach obsługiwanych przez EZD. DodatekEZD przy każdym uruchomieniu automatycznie sprawdza, czy serwer DSS WebApp działa i w razie potrzeby uruchamia go samodzielnie.

Ograniczenie: Z uwagi na ograniczenia samego DSS WebApp, nie są obsługiwane wielokrotne podpisy XAdES w trybie detached (zewnętrzny) oraz XAdES w trybie enveloping (otaczający).

Czego DodatekEZD nie robi?

Nie zaimplementowano funkcji:

  • wydruku kodów EPL (RPW/składu)

Struktura repozytorium

Skrypty instalacyjne wymagają następującej struktury katalogów – należy pobrać całe repozytorium, a nie tylko pojedynczy skrypt:

DodatekEZD/
├── app/
├── dss/
│   └── Dockerfile
├── install/
│   ├── setup_linux.sh
│   └── setup_macos.sh
└── uninstall/
    ├── uninstall_linux.sh
    └── uninstall_macos.sh

Wymagania wstępne

Linux

  • dystrybucja z apt (Debian/Ubuntu) albo dnf (Fedora/RHEL)
  • dostęp do sudo (instalacja pakietów)
  • dostęp do internetu (pobierany jest pakiet DSS ~400 MB)

macOS

  • zainstalowany Homebrew
  • dostęp do internetu (pobierany jest pakiet DSS ~400 MB)

Instalacja

Linux

chmod +x setup_linux.sh
./setup_linux.sh

Skrypt wykona kolejno:

  1. Instalację wymaganych pakietów (Python, biblioteki GUI, Podman) przez apt lub dnf.
  2. Skopiowanie plików aplikacji do katalogu użytkownika.
  3. Utworzenie wirtualnego środowiska Pythona i instalację zależności.
  4. Rejestrację obsługi linków ezd:// w środowisku graficznym (plik .desktop).
  5. Pobranie pakietu DSS do ~/Downloads/.
  6. Zbudowanie obrazu kontenera DSS w Podman.
  7. Uruchomienie kontenera DSS nasłuchującego na http://localhost:8080.

macOS

chmod +x setup_macos.sh
./setup_macos.sh

Skrypt wykona kolejno:

  1. Instalację zależności przez Homebrew (python-tk, podman).
  2. Skopiowanie plików aplikacji do katalogu użytkownika.
  3. Utworzenie wirtualnego środowiska Pythona i instalację zależności.
  4. Skompilowanie aplikacji DodatekEZD.app i zarejestrowanie jej jako obsługi linków ezd://.
  5. Pobranie pakietu DSS do ~/Downloads/.
  6. Zbudowanie obrazu kontenera DSS w Podman.
  7. Uruchomienie kontenera DSS nasłuchującego na http://localhost:8080.

Po wykonaniu odpowiedniego skryptu DodatekEZD jest gotowy do użycia.


Ścieżki instalacji

Zasób Linux macOS
Pliki aplikacji ~/.local/share/DodatekEZD/ ~/Library/Application Support/DodatekEZD/
Wirtualne środowisko Pythona ~/.DodatekEzdVenv/ ~/.DodatekEzdVenv/
Serwer DSS ~/.local/share/DssWebApp/ ~/Library/Application Support/DssWebApp/
Dane robocze (pobrane pliki) ~/.DodatekEzdData/ ~/.DodatekEzdData/
Logi ~/.cache/DodatekEzd.log ~/Library/Logs/DodatekEzd.log
Cache ZIP DSS ~/Downloads/dss-demo-bundle-6.3.zip ~/Downloads/dss-demo-bundle-6.3.zip

Deinstalacja

Linux

chmod +x uninstall/uninstall_linux.sh
./uninstall/uninstall_linux.sh

macOS

chmod +x uninstall/uninstall_macos.sh
./uninstall/uninstall_macos.sh

Konfiguracja innych podpisów elektronicznych

Plik smart_card_config.toml (w katalogu „Pliki aplikacji") zawiera gotową konfigurację dla:

  • Sigillum Karta Blue
  • e-Dowód – Podpis Osobisty

Aby dodać inny rodzaj podpisu, należy uzupełnić plik o:

  • ścieżkę do biblioteki PKCS#11 (plik .so na Linuksie, .dylib na macOS),
  • etykietę slotu tokenu (label) – bez numeru slotu, ponieważ numery mogą się zmieniać między sesjami.

Listę dostępnych tokenów i ich etykiet wyświetlisz poleceniem:

pkcs11-tool --module /ścieżka/do/biblioteki.so --list-token-slots

Adres serwera DSS

W pliku smart_card_config.toml znajduje się również wpis:

base_url = "http://localhost:8080/services/rest"

Domyślnie DodatekEZD korzysta z serwera DSS WebApp zainstalowanego lokalnie na komputerze użytkownika. Można tu jednak podać adres serwera DSS działającego w sieci lokalnej – wówczas instalacja kontenera DSS na komputerze użytkownika nie jest konieczna.

Własna konfiguracja znacznika czasu (TSP)

DSS WebApp domyślnie korzysta z wbudowanego, niekwalifikowanego źródła znacznika czasu. Jeśli korzystasz z innego serwera TSP (ang. Time Stamp Protocol), możesz podmienić tę konfigurację na dwa sposoby.

Automatyczna konfiguracja podczas instalacji

Jeśli przed uruchomieniem instalatora umieścisz plik tsp-config.xml w folderze ~/Downloads, zostanie on automatycznie skopiowany do obrazu kontenera. Nie są potrzebne żadne dodatkowe kroki.

Ręczna konfiguracja w działającym kontenerze

Jeśli chcesz zmienić konfigurację TSP po instalacji, możesz edytować plik bezpośrednio w kontenerze:

podman exec -it dss bash
nano /opt/dss-demo-bundle-6.3/apache-tomcat-11.0.9/webapps/ROOT/WEB-INF/classes/config/tsp-config.xml

Zakomentuj lub usuń istniejącą zawartość i wstaw własną konfigurację wskazującą na wybrany serwer TSP. Po zapisaniu zmian zrestartuj kontener:

podman restart dss

Uwaga: Zmiany wprowadzone bezpośrednio w kontenerze nie są trwałe — zostaną utracone po jego usunięciu i ponownym uruchomieniu (podman rm). Aby utrwalić konfigurację, umieść tsp-config.xml w ~/Downloads i uruchom instalator ponownie.

About

Otwartoźródłowa alternatywa dla EZD AddIn dla Linuksa i macOS

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages