status-desktop/shell.nix

90 lines
1.8 KiB
Nix
Raw Normal View History

2024-06-25 13:53:01 +00:00
{
pkgs ? import ./nix/pkgs.nix
}:
let
qtCustom = (with pkgs.qt515_8;
# 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
QT_INSTALL_PLUGINS = "${qtCustom}/${pkgs.qt515.qtbase.qtPluginPrefix}";
shellHook = ''
2024-06-25 13:53:01 +00:00
export PATH="${pkgs.lddWrapped}/bin:$PATH"
'';
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
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
gstreamer
]));
}