Last active
July 29, 2023 17:25
-
-
Save MMesch/cecf9f86f3d18b8adacb0670bba15b51 to your computer and use it in GitHub Desktop.
a development shell for inkscape
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ pkgs ? import (builtins.fetchGit { | |
url = https://github.com/nixos/nixpkgs/; | |
rev = "ec97c20fff7fac51dc3eb3f2d91ff7f0376c8c8f"; | |
}) {} }: | |
let | |
python3Env = pkgs.python37.withPackages(ps: with ps; | |
[ pytest ipdb pylint numpy lxml scour pyserial ]); | |
in | |
pkgs.stdenv.mkDerivation { | |
name = "inkscape-dev"; | |
buildInputs = with pkgs; [ | |
mypy | |
pkgconfig cmake perl gtk3 gsettings-desktop-schemas | |
xorg.libXft libpng libsoup pcre double-conversion gdl | |
utillinuxMinimal gnome3.gtkmm xorg.libpthreadstubs zlib popt boehmgc | |
xorg.libXdmcp libselinux libsepol gtkspell3 sqlite libpsl libwpd | |
brotli icu libxkbcommon epoxy at-spi2-atk ccache | |
libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext | |
gsl poppler imagemagick libwpg librevenge | |
libvisio libcdr libexif potrace | |
wrapGAppsHook vim | |
cups | |
hicolor-icon-theme | |
librsvg # for loading icons | |
python3Env perlPackages.perl | |
]; | |
shellHook = '' | |
export GIO_EXTRA_MODULES="${pkgs.gnome3.dconf}/lib/gio/modules" | |
export GDK_PIXBUF_MODULE_FILE='/nix/store/6f515bb69f62ig45y56imja2hx891452-librsvg-2.44.15/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache' | |
export XDG_DATA_DIRS="${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}"''${XDG_DATA_DIRS:+':'}$XDG_DATA_DIRS | |
export XDG_DATA_DIRS="${pkgs.hicolor-icon-theme}/share/"''${XDG_DATA_DIRS:+':'}$XDG_DATA_DIRS | |
export XDG_DATA_DIRS="${pkgs.cups}/share/"''${XDG_DATA_DIRS:+':'}$XDG_DATA_DIRS | |
export XDG_DATA_DIRS="''${pwd}/build/install_dir/share/"''${XDG_DATA_DIRS:+':'}$XDG_DATA_DIRS | |
''; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks for this! I've used the starting point to make a version for my Bazel project that builds Inkscape as a dependency.