1- # Maps of system pkg references from
2- # cabal file to nixpkgs pkgs.
3- # See ../docs/dev/pkg-map.md
1+ # Maps of system pkg references from cabal file to nixpkgs pkgs.
2+ # library name (from `extra-libraries` field of `.cabal` file) -> nixpkgs package(s) mapping.
3+ # This mapping is used to construct the `libs` component attribute.
4+ # See ../docs/tutorials/pkg-map.md
45pkgs :
5- # fetchgit should always come from the evalPackages
6- # if it comes from the targetPackages we won't even
7- # be able to execute it.
8- { fetchgit = pkgs . evalPackages . fetchgit ; }
9- # haskell lib -> nix lib mapping
6+
7+ with pkgs ;
8+
109# -- linux
11- // { crypto = pkgs . openssl ;
12- "c++" = null ; # no libc++
13- "stdc++" = null ; "stdc++-6" = null ;
14- ssl = pkgs . openssl ;
15- z = pkgs . zlib ;
16- pthread = null ; # available by default
17- GL = pkgs . libGL ;
18- GLU = pkgs . libGLU ;
19- alut = pkgs . freealut ;
20- X11 = pkgs . xorg . libX11 ;
21- Xrandr = pkgs . xorg . libXrandr ;
22- Xext = pkgs . xorg . libXext ;
23- Xi = pkgs . xorg . libXi ;
24- Xxf86vm = pkgs . xorg . libXxf86vm ;
25- Xcursor = pkgs . xorg . libXcursor ;
26- Xinerama = pkgs . xorg . libXinerama ;
27- mysqlclient = pkgs . mysql ;
28- Imlib2 = pkgs . imlib2 ;
29- asound = pkgs . alsaLib ;
30- ffi = null ;
31- bz2 = pkgs . bzip2 ;
32- util = pkgs . utillinux ;
33- magic = pkgs . file ;
34- pq = pkgs . postgresql ;
35- iconv = pkgs . libiconv ;
36- lapack = pkgs . liblapack ;
37- boost_atomic = pkgs . boost ;
38- boost_chrono = pkgs . boost ;
39- boost_container = pkgs . boost ;
40- boost_context = pkgs . boost ;
41- boost_contract = pkgs . boost ;
42- boost_coroutine = pkgs . boost ;
43- boost_date_time = pkgs . boost ;
44- boost_fiber = pkgs . boost ;
45- boost_filesystem = pkgs . boost ;
46- boost_graph = pkgs . boost ;
47- boost_iostreams = pkgs . boost ;
48- boost_locale = pkgs . boost ;
49- boost_log_setup = pkgs . boost ;
50- boost_log = pkgs . boost ;
51- boost_math_c99f = pkgs . boost ;
52- boost_math_c99l = pkgs . boost ;
53- boost_math_c99 = pkgs . boost ;
54- boost_math_tr1f = pkgs . boost ;
55- boost_math_tr1l = pkgs . boost ;
56- boost_math_tr1 = pkgs . boost ;
57- boost_prg_exec_monitor = pkgs . boost ;
58- boost_program_options = pkgs . boost ;
59- boost_random = pkgs . boost ;
60- boost_regex = pkgs . boost ;
61- boost_serialization = pkgs . boost ;
62- boost_signals = pkgs . boost ;
63- boost_stacktrace_addr2line = pkgs . boost ;
64- boost_stacktrace_basic = pkgs . boost ;
65- boost_stacktrace_noop = pkgs . boost ;
66- boost_system = pkgs . boost ;
67- boost_thread = pkgs . boost ;
68- boost_timer = pkgs . boost ;
69- boost_type_erasure = pkgs . boost ;
70- boost_unit_test_framework = pkgs . boost ;
71- boost_wave = pkgs . boost ;
72- boost_wserialization = pkgs . boost ;
73- tensorflow = pkgs . libtensorflow ;
74- opencv = pkgs . opencv3 ;
75- icuuc = pkgs . icu ;
76- icui18n = pkgs . icu ;
77- icudata = pkgs . icu ;
78- vulkan = pkgs . vulkan-loader ;
79- sodium = pkgs . libsodium ;
80- gfortran = pkgs . gfortran . cc . lib ;
81- }
10+ { crypto = [ openssl ] ;
11+ "c++" = null ; # no libc++
12+ "stdc++" = null ;
13+ "stdc++-6" = null ;
14+ ssl = [ openssl ] ;
15+ z = [ zlib ] ;
16+ pthread = null ; # available by default
17+ GL = [ libGL ] ;
18+ GLU = [ libGLU ] ;
19+ alut = [ freealut ] ;
20+ X11 = with xorg ; [ libX11 ] ;
21+ Xrandr = [ xorg . libXrandr ] ;
22+ Xrender = [ xorg . libXrender ] ;
23+ Xss = [ xorg . libXScrnSaver ] ;
24+ Xext = [ xorg . libXext ] ;
25+ Xi = [ xorg . libXi ] ;
26+ Xxf86vm = [ xorg . libXxf86vm ] ;
27+ Xcursor = [ xorg . libXcursor ] ;
28+ Xinerama = [ xorg . libXinerama ] ;
29+ mysqlclient = [ mysql ] ;
30+ Imlib2 = [ imlib2 ] ;
31+ asound = [ alsaLib ] ;
32+ ffi = null ;
33+ bz2 = [ bzip2 ] ;
34+ util = [ utillinux ] ;
35+ magic = [ file ] ;
36+ pq = [ postgresql ] ;
37+ iconv = [ libiconv ] ;
38+ lapack = [ liblapack ] ;
39+ boost_atomic = [ boost ] ;
40+ boost_chrono = [ boost ] ;
41+ boost_container = [ boost ] ;
42+ boost_context = [ boost ] ;
43+ boost_contract = [ boost ] ;
44+ boost_coroutine = [ boost ] ;
45+ boost_date_time = [ boost ] ;
46+ boost_fiber = [ boost ] ;
47+ boost_filesystem = [ boost ] ;
48+ boost_graph = [ boost ] ;
49+ boost_iostreams = [ boost ] ;
50+ boost_locale = [ boost ] ;
51+ boost_log_setup = [ boost ] ;
52+ boost_log = [ boost ] ;
53+ boost_math_c99f = [ boost ] ;
54+ boost_math_c99l = [ boost ] ;
55+ boost_math_c99 = [ boost ] ;
56+ boost_math_tr1f = [ boost ] ;
57+ boost_math_tr1l = [ boost ] ;
58+ boost_math_tr1 = [ boost ] ;
59+ boost_prg_exec_monitor = [ boost ] ;
60+ boost_program_options = [ boost ] ;
61+ boost_random = [ boost ] ;
62+ boost_regex = [ boost ] ;
63+ boost_serialization = [ boost ] ;
64+ boost_signals = [ boost ] ;
65+ boost_stacktrace_addr2line = [ boost ] ;
66+ boost_stacktrace_basic = [ boost ] ;
67+ boost_stacktrace_noop = [ boost ] ;
68+ boost_system = [ boost ] ;
69+ boost_thread = [ boost ] ;
70+ boost_timer = [ boost ] ;
71+ boost_type_erasure = [ boost ] ;
72+ boost_unit_test_framework = [ boost ] ;
73+ boost_wave = [ boost ] ;
74+ boost_wserialization = [ boost ] ;
75+ tensorflow = [ libtensorflow ] ;
76+ opencv = [ opencv3 ] ;
77+ icuuc = [ icu ] ;
78+ icui18n = [ icu ] ;
79+ icudata = [ icu ] ;
80+ vulkan = [ vulkan-loader ] ;
81+ sodium = [ libsodium ] ;
82+ gfortran = [ gfortran . cc . lib ] ;
83+ }
8284# -- windows
8385// { advapi32 = null ; gdi32 = null ; imm32 = null ; msimg32 = null ;
8486 shell32 = null ; shfolder = null ; shlwapi = null ; user32 = null ;
@@ -88,12 +90,12 @@ pkgs:
8890 # if it's not we have more severe
8991 # issues anyway.
9092 gcc_s_seh-1 = null ;
91- ssl32 = null ; eay32 = pkgs . openssl ;
93+ ssl32 = null ; eay32 = [ openssl ] ;
9294 iphlpapi = null ; # IP Help API
9395 msvcrt = null ; # this is the libc
9496 Crypt32 = null ;
9597 mswsock = null ;
9698 }
9799# -- os x
98100# NB: these map almost 1:1 to the framework names
99- // pkgs . darwin . apple_sdk . frameworks
101+ // darwin . apple_sdk . frameworks
0 commit comments