forked from marko/svitak
temporary change
This commit is contained in:
parent
ff6772c7c1
commit
41201ebb58
3 changed files with 115 additions and 26 deletions
27
flake.lock
generated
Normal file
27
flake.lock
generated
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1754923922,
|
||||
"narHash": "sha256-xRFTBIzOkHAyUJzWuGRoITGPvPTKYV+zedivG426Iqc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "7b6142dae00643a9dfa37723a7bee73ffe54f8dc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "7b6142dae006",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
80
flake.nix
80
flake.nix
|
|
@ -1,6 +1,5 @@
|
|||
# flake.nix
|
||||
{
|
||||
description = "Haskell Development Environment with GTK and WebKit";
|
||||
description = "svitak dev shell (GHC 9.12, GTK4, WebKit 6.0)";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/7b6142dae006";
|
||||
|
|
@ -11,26 +10,89 @@
|
|||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
in {
|
||||
devShells.${system}.default = pkgs.mkShell {
|
||||
|
||||
buildInputs = [
|
||||
pkgs.haskellPackages.ghc
|
||||
pkgs.haskellPackages.cabal-install
|
||||
pkgs.gtk3
|
||||
pkgs.webkitgtk
|
||||
# Haskell toolchain
|
||||
pkgs.haskell.compiler.ghc912
|
||||
pkgs.cabal-install
|
||||
|
||||
# Build tools
|
||||
pkgs.pkg-config
|
||||
pkgs.zlib
|
||||
pkgs.libsysprof-capture
|
||||
pkgs.pcre2
|
||||
pkgs.libxdmcp
|
||||
pkgs.util-linux
|
||||
pkgs.libselinux
|
||||
pkgs.libsepol
|
||||
pkgs.libpsl
|
||||
pkgs.libnghttp2
|
||||
pkgs.libnghttp2_asio
|
||||
pkgs.nghttp2
|
||||
pkgs.fribidi
|
||||
pkgs.libthai
|
||||
pkgs.libdatrie
|
||||
pkgs.libdeflate
|
||||
pkgs.lerc
|
||||
pkgs.liblzma
|
||||
|
||||
# GTK stack
|
||||
pkgs.gtk4
|
||||
pkgs.webkitgtk_6_0
|
||||
pkgs.libsoup_3
|
||||
pkgs.glib
|
||||
pkgs.gobject-introspection
|
||||
pkgs.libx11
|
||||
pkgs.gdk-pixbuf
|
||||
pkgs.cairo
|
||||
pkgs.pango
|
||||
pkgs.libsoup
|
||||
pkgs.atk
|
||||
|
||||
# X11 runtime
|
||||
pkgs.xorg.libX11
|
||||
pkgs.xorg.libXext
|
||||
pkgs.xorg.libXcursor
|
||||
pkgs.xorg.libXrandr
|
||||
pkgs.xorg.libXrender
|
||||
pkgs.xorg.libXfixes
|
||||
pkgs.xorg.libXcomposite
|
||||
pkgs.xorg.libXdamage
|
||||
pkgs.xorg.libXScrnSaver
|
||||
pkgs.xorg.libICE
|
||||
pkgs.xorg.libSM
|
||||
|
||||
# Optional but common
|
||||
pkgs.sqlite
|
||||
];
|
||||
|
||||
shellHook = ''
|
||||
echo "Welcome to the Haskell shell for Svitak."
|
||||
echo "Entering svitak dev shell (GHC 9.12 + GTK4 + WebKit6)"
|
||||
unset GHC_PACKAGE_PATH
|
||||
|
||||
# Haskell GI needs pkg-config for gobject-introspection
|
||||
export PKG_CONFIG_PATH=${pkgs.gobject-introspection}/lib/pkgconfig
|
||||
|
||||
# Runtime libraries
|
||||
export LD_LIBRARY_PATH=${pkgs.lib.makeLibraryPath [
|
||||
pkgs.webkitgtk_6_0
|
||||
pkgs.libsoup_3
|
||||
pkgs.gtk4
|
||||
pkgs.glib
|
||||
pkgs.gobject-introspection
|
||||
pkgs.gdk-pixbuf
|
||||
pkgs.cairo
|
||||
pkgs.pango
|
||||
pkgs.xorg.libX11
|
||||
pkgs.xorg.libXext
|
||||
pkgs.xorg.libXcursor
|
||||
pkgs.xorg.libXrandr
|
||||
pkgs.xorg.libXrender
|
||||
pkgs.xorg.libXfixes
|
||||
pkgs.xorg.libXcomposite
|
||||
pkgs.xorg.libXdamage
|
||||
pkgs.xorg.libXScrnSaver
|
||||
pkgs.xorg.libICE
|
||||
pkgs.xorg.libSM
|
||||
]}:$LD_LIBRARY_PATH
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
|
|
|||
34
svitak.cabal
34
svitak.cabal
|
|
@ -58,26 +58,26 @@ executable svitak
|
|||
Types,
|
||||
Navigation
|
||||
|
||||
build-depends: base ^>=4.21.0.0,
|
||||
build-depends: base,
|
||||
base64-bytestring,
|
||||
bytestring >= 0.12.2.0,
|
||||
containers >= 0.7,
|
||||
directory >= 1.3.9.0,
|
||||
epub-metadata >=5.4,
|
||||
filepath >= 1.5.4.0,
|
||||
bytestring,
|
||||
containers,
|
||||
directory,
|
||||
epub-metadata,
|
||||
filepath,
|
||||
gi-gdk4,
|
||||
gi-gio,
|
||||
gi-gtk == 4.0.*,
|
||||
gi-webkit == 6.0.*,
|
||||
gi-gtk,
|
||||
gi-webkit,
|
||||
haskell-gi-base,
|
||||
mtl >= 2.3.2,
|
||||
scalpel >= 0.6.2.2,
|
||||
text >= 2.1.2,
|
||||
zip-archive >= 0.4.3.2,
|
||||
stm >=2.5.3.1,
|
||||
gi-glib >= 2.0.30,
|
||||
async >= 2.2.6,
|
||||
scalpel-core >= 0.6.2.2
|
||||
mtl,
|
||||
scalpel,
|
||||
text,
|
||||
zip-archive,
|
||||
stm,
|
||||
gi-glib,
|
||||
async,
|
||||
scalpel-core
|
||||
|
||||
hs-source-dirs: app
|
||||
default-language: Haskell2010
|
||||
|
|
@ -92,7 +92,7 @@ test-suite svitak-test
|
|||
|
||||
hs-source-dirs: test, app
|
||||
|
||||
build-depends: base ^>= 4.21.0.0,
|
||||
build-depends: base,
|
||||
base64-bytestring,
|
||||
bytestring,
|
||||
epub-metadata,
|
||||
|
|
|
|||
Loading…
Reference in a new issue