status-desktop/shell.nix

101 lines
2.1 KiB
Nix
Raw Normal View History

2024-06-25 13:53:01 +00:00
{
pkgs ? import ./nix/pkgs.nix
}:
let
2024-07-22 14:51:12 +00:00
qtCustom = (with pkgs.qt515_14;
# TODO:check the required modules
env "qt-custom-${qtbase.version}" ([
2024-06-25 13:53:01 +00:00
qtbase
qtdeclarative
qtquickcontrols
qtquickcontrols2
2024-06-25 13:53:01 +00:00
qtsvg
qtmultimedia
qtwebview
qttools
qtwebchannel
qtgraphicaleffects
2024-06-25 13:53:01 +00:00
qtwebengine
qtlocation
]));
in pkgs.mkShell {
name = "status-desktop-build-shell";
# TODO:check the required packages
buildInputs = with pkgs; [
2024-06-25 13:53:01 +00:00
bash curl wget git file unzip jq lsb-release which cacert gnupg
linuxdeployqt appimagekit
libglvnd # TODO: Qt 5.15.2 fix, review after upgrade
cmake_3_19 gnumake pkg-config gnugrep qtCustom
2024-05-30 11:38:31 +00:00
go_1_21
pcre nss pcsclite extra-cmake-modules
xorg.libxcb xorg.libX11 libxkbcommon
] ++ (with gst_all_1; [
gst-libav gstreamer
gst-plugins-bad gst-plugins-base
gst-plugins-good gst-plugins-ugly
]);
# Avoid terminal issues.
TERM = "xterm";
LANG = "en_US.UTF-8";
LANGUAGE = "en_US.UTF-8";
QTDIR = qtCustom;
2024-06-25 13:53:01 +00:00
# TODO: still needed?
# https://github.com/NixOS/nixpkgs/pull/109649
2024-07-22 14:51:12 +00:00
QT_INSTALL_PLUGINS = "${qtCustom}/${pkgs.qt515_14.qtbase.qtPluginPrefix}";
shellHook = ''
2024-01-25 14:53:22 +00:00
export MAKEFLAGS="-j$NIX_BUILD_CORES"
2024-06-25 13:53:01 +00:00
export PATH="${pkgs.lddWrapped}/bin:$PATH"
'';
2024-06-25 13:53:01 +00:00
2024-01-25 14:53:22 +00:00
LIBKRB5_PATH = pkgs.libkrb5;
2024-07-22 14:51:12 +00:00
QTWEBENGINE_PATH = pkgs.qt515_14.qtwebengine.out;
2024-01-25 14:53:22 +00:00
GSTREAMER_PATH = pkgs.gst_all_1.gstreamer;
NSS_PATH = pkgs.nss;
2024-06-25 13:53:01 +00:00
# Used for linuxdeployqt
# TODO:check which deps are needed
2024-06-25 13:53:01 +00:00
LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath (
[
alsaLib
expat
fontconfig
freetype
gcc-unwrapped
glib
gmp
harfbuzz
libglvnd
libkrb5
libpng
libpulseaudio
libxkbcommon
2024-01-25 14:53:22 +00:00
openexr
openssl
2024-06-25 13:53:01 +00:00
p11-kit
zlib
] ++ (with xorg; [
2024-06-25 13:53:01 +00:00
libICE
libSM
libX11
libXrender
libxcb
xcbutil
xcbutilimage
xcbutilkeysyms
xcbutilrenderutil
xcbutilwm
]) ++ (with gst_all_1; [
gst-plugins-base
2024-01-25 14:53:22 +00:00
gst-plugins-good
gst-plugins-bad
gst-plugins-ugly
2024-06-25 13:53:01 +00:00
gstreamer
]));
}