X Certificate and Key management
Go to file
Christian Hohnstaedt a4fc9aa110 Close #364 Export ED25519 private key with password
Allow exporting encrypted ED25519 keys.
The crypt flag was disallowed to support SSH2 export.
But since the SSH2 key is written unencrypted,
this restriction makes no sense anymore.
2024-08-24 15:09:00 +02:00
.github/workflows Trigger build on PR 2024-08-21 10:20:41 +02:00
cmake Add support for Qt6 2022-08-31 00:09:37 +02:00
doc CMakeLists.txt: support SOURCE_DIR == BINARY_DIR 2024-08-20 23:24:02 +02:00
img Extend linux app images by 128 and 256 bit PNG 2024-08-20 11:03:27 +02:00
lang Update slovak translation 2024-08-24 15:04:04 +02:00
lib Close #364 Export ED25519 private key with password 2024-08-24 15:09:00 +02:00
misc Revert "Close #480: add flatpak build information and github action" 2024-08-20 11:03:27 +02:00
release Improve changelog 2024-08-20 11:03:27 +02:00
test Drop support of encrypted PVK files. 2024-08-20 11:03:27 +02:00
ui Reorganize exportdialog 2024-02-16 17:42:13 +01:00
widgets 2nd Fixup for flexible clipboard export 2024-08-21 16:48:27 +02:00
xcf Add first shot of installer dialog Image 2020-01-21 21:34:31 +01:00
.gitignore Switch from autotools/qmake to cmake 2021-06-01 17:48:37 +02:00
AUTHORS Justify list of authors 2015-08-11 07:31:51 +02:00
changelog Update changelog 2024-08-20 11:03:27 +02:00
CMakeLists.txt Windows/Mac build: switch to QT 6.6.3 2024-07-17 23:32:36 +02:00
COPYRIGHT Update copyright years 2024-02-14 22:33:18 +01:00
Dockerfile Set userid at container startup rather than build time. Update documentation on container invocation and usage with SSH-X-forwarding. 2024-02-22 18:31:58 +01:00
INSTALL.docker Set userid at container startup rather than build time. Update documentation on container invocation and usage with SSH-X-forwarding. 2024-02-22 18:31:58 +01:00
local.h.in Make XCA AppStore compliant with -DAPPSTORE_COMPLIANT=ON 2023-09-30 11:24:18 +02:00
README.md Close #561: Missing data: Qt6 compiling dependencies 2024-08-20 11:03:27 +02:00
VERSION.txt Fix ITMS-90886: Cannot be used with TestFlight 2024-07-17 23:32:36 +02:00

XCA - X Certificate and Key Management

CMake

Release Notes

Changelog:

A detailled changelog can be found here:

https://hohnstaedt.de/xca/index.php/software/changelog

Documentation

This application is documented in the Help menu and here:

https://www.hohnstaedt.de/xca/index.php/documentation/manual

Build from Source

Dependencies

To build XCA you need:

Linux / Unix

  • Install the dependencies
    # Bookworm
    sudo apt install build-essential libssl-dev pkg-config cmake qttools5-dev python3-sphinxcontrib.qthelp
    # Bullseye
    sudo apt install build-essential libssl-dev pkg-config cmake qttools5-dev python3-sphinx
    # Either Qt5
    sudo apt install qtbase5-dev qttools5-dev-tools libqt5sql5 libqt5help5 qttools5-dev
    # Or Qt6
    sudo apt install qt6-base-dev qt6-tools-dev
    
  • Clone: git clone https://github.com/chris2511/xca.git
  • Configure: cmake -B build xca
  • Make: cmake --build build -j5
  • Install: sudo cmake --install build
  • Or install local and copy later as root: DESTDIR=DEST cmake --install build --prefix /usr

Apple macos

  • Install the dependencies
    xcode-select --install
    brew install openssl@3 qt6 python3 cmake
    pip3 install sphinx
    
  • Clone: git clone https://github.com/chris2511/xca.git
  • Configure: cmake -B build xca
  • Make: cmake --build build -j5
  • Build the DMG: cd build && cpack
  • Build the PKG: cd build && cpack -G productbuild

XCA can be used with Xcode after initializing the directory with: cmake -G Xcode -B .

Windows

  • Install the dependencies

    • Install Python for windows from the store or https://www.python.org/downloads/windows/
    • Install OpenSSL from here: https://slproweb.com/download/Win64OpenSSL-3_1_5.msi and verify the sha256 from https://github.com/slproweb/opensslhashes/blob/master/win32_openssl_hashes.json
    • To install the Qt libraries, cmake and the MinGW compiler aqtinstall is used. Sphinx is used to generate the documentation
      pip3 install sphinx aqtinstall
      
    • Add the PATH shown by pip to your PATH
    • Install Qt, cmake and the MinGW toolchain
      aqt install-qt windows desktop 6.6.3 win64_mingw
      aqt install-tool windows desktop tools_mingw90 qt.tools.win64_mingw900
      aqt install-tool windows desktop tools_vcredist qt.tools.vcredist_64
      
    • If 7z is missing, install it from the store. 7-Zip File Manager (unofficial) or from 7-zip.org
    • Install the "vcredist\vcredist_64.exe"
    • Add cmake, MinGW, OpenSSL and Qt6 to your Path
      %USERPROFILE%\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts;
      %USERPROFILE%\AppData\Local\Microsoft\WindowsApps;
      %USERPROFILE%\Tools\CMake_64\bin;
      %USERPROFILE%\Tools\mingw_64\bin;
      %USERPROFILE%\6.6.3\mingw_64\bin;
      
    • Create CMAKE_PREFIX_PATH environment variable:
      %USERPROFILE%\6.6.3\mingw_64\lib\cmake
      
    • Install https://wixtoolset.org/releases/ if you want to create the MSI installer
  • Clone: git clone https://github.com/chris2511/xca.git

  • Configure: cmake -B build -G "MinGW Makefiles" xca

  • Make: cmake --build build -j5

  • Create the Portable App: cmake --build build -t install

  • Build the MSI installer (and the Portable App): cd build ; cpack

SQL Remote Database Drivers

MySQL plugins are not shipped with QT anymore because of license issues.

Linux

  • Debian: libqt6sql6-psql libqt6sql6-mysql or libqt6sql6-odbc.
  • RPM: libqt6-database-plugin-pgsql libqt6-database-plugin-mysql libqt6-database-plugin-odbc They should pull in all necessary dependencies.

Apple macos

  • PostgreSQL: Install the https://postgresapp.com/
  • ODBC: It requires the /usr/local/opt/libiodbc/lib/libiodbc.2.dylib. When installing unixodbc via brew the library must be symlinked from /opt/homebrew/Cellar/libiodbc/3.52.16/lib/libiodbc.2.dylib
  • MariaDB: Probably via ODBC ?

Windows