Merge staging-next into staging

authored by github-actions[bot] and committed by GitHub fa361440 c63d89d2

+3982 -819
+19
nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
··· 304 304 </listitem> 305 305 <listitem> 306 306 <para> 307 + The <literal>wordpress</literal> derivation no longer contains 308 + any builtin plugins or themes. If you need them you have to 309 + add them back to prevent your site from breaking. You can find 310 + them in <literal>wordpressPackages.{plugins,themes}</literal>. 311 + </para> 312 + </listitem> 313 + <listitem> 314 + <para> 307 315 <literal>llvmPackages_rocm.llvm</literal> will not contain 308 316 <literal>clang</literal> or <literal>compiler-rt</literal>. 309 317 <literal>llvmPackages_rocm.clang</literal> will not contain ··· 356 364 under 10 packages in nixpkgs, largely unmaintained upstream as 357 365 well, however, out-of-tree package expressions may need to be 358 366 updated manually. 367 + </para> 368 + </listitem> 369 + <listitem> 370 + <para> 371 + The 372 + <link linkend="opt-services.wordpress.sites._name_.plugins">services.wordpress.sites.&lt;name&gt;.plugins</link> 373 + and 374 + <link linkend="opt-services.wordpress.sites._name_.themes">services.wordpress.sites.&lt;name&gt;.themes</link> 375 + options have been converted from sets to attribute sets to 376 + allow for consumers to specify explicit install paths via 377 + attribute name. 359 378 </para> 360 379 </listitem> 361 380 <listitem>
+4
nixos/doc/manual/release-notes/rl-2305.section.md
··· 77 77 78 78 - `tut` has been updated from 1.0.34 to 2.0.0, and now uses the TOML format for the configuration file instead of INI. Additional information can be found [here](https://github.com/RasmusLindroth/tut/releases/tag/2.0.0). 79 79 80 + - The `wordpress` derivation no longer contains any builtin plugins or themes. If you need them you have to add them back to prevent your site from breaking. You can find them in `wordpressPackages.{plugins,themes}`. 81 + 80 82 - `llvmPackages_rocm.llvm` will not contain `clang` or `compiler-rt`. `llvmPackages_rocm.clang` will not contain `llvm`. `llvmPackages_rocm.clangNoCompilerRt` has been removed in favor of using `llvmPackages_rocm.clang-unwrapped`. 81 83 82 84 - The EC2 image module previously detected and automatically mounted ext3-formatted instance store devices and partitions in stage-1 (initramfs), storing `/tmp` on the first discovered device. This behaviour, which only catered to very specific use cases and could not be disabled, has been removed. Users relying on this should provide their own implementation, and probably use ext4 and perform the mount in stage-2. ··· 88 90 - Calling `makeSetupHook` without passing a `name` argument is deprecated. 89 91 90 92 - Qt 5.12 and 5.14 have been removed, as the corresponding branches have been EOL upstream for a long time. This affected under 10 packages in nixpkgs, largely unmaintained upstream as well, however, out-of-tree package expressions may need to be updated manually. 93 + 94 + - The [services.wordpress.sites.&lt;name&gt;.plugins](#opt-services.wordpress.sites._name_.plugins) and [services.wordpress.sites.&lt;name&gt;.themes](#opt-services.wordpress.sites._name_.themes) options have been converted from sets to attribute sets to allow for consumers to specify explicit install paths via attribute name. 91 95 92 96 - In `mastodon` it is now necessary to specify location of file with `PostgreSQL` database password. In `services.mastodon.database.passwordFile` parameter default value `/var/lib/mastodon/secrets/db-password` has been changed to `null`. 93 97
+23 -40
nixos/modules/services/web-apps/wordpress.nix
··· 32 32 # Since hard linking directories is not allowed, copying is the next best thing. 33 33 34 34 # copy additional plugin(s), theme(s) and language(s) 35 - ${concatMapStringsSep "\n" (theme: "cp -r ${theme} $out/share/wordpress/wp-content/themes/${theme.name}") cfg.themes} 36 - ${concatMapStringsSep "\n" (plugin: "cp -r ${plugin} $out/share/wordpress/wp-content/plugins/${plugin.name}") cfg.plugins} 35 + ${concatStringsSep "\n" (mapAttrsToList (name: theme: "cp -r ${theme} $out/share/wordpress/wp-content/themes/${name}") cfg.themes)} 36 + ${concatStringsSep "\n" (mapAttrsToList (name: plugin: "cp -r ${plugin} $out/share/wordpress/wp-content/plugins/${name}") cfg.plugins)} 37 37 ${concatMapStringsSep "\n" (language: "cp -r ${language} $out/share/wordpress/wp-content/languages/") cfg.languages} 38 38 ''; 39 39 }; ··· 130 130 }; 131 131 132 132 plugins = mkOption { 133 - type = types.listOf types.path; 134 - default = []; 133 + type = with types; coercedTo 134 + (listOf path) 135 + (l: warn "setting this option with a list is deprecated" 136 + listToAttrs (map (p: nameValuePair (p.name or (throw "${p} does not have a name")) p) l)) 137 + (attrsOf path); 138 + default = {}; 135 139 description = lib.mdDoc '' 136 - List of path(s) to respective plugin(s) which are copied from the 'plugins' directory. 140 + Path(s) to respective plugin(s) which are copied from the 'plugins' directory. 137 141 138 142 ::: {.note} 139 143 These plugins need to be packaged before use, see example. 140 144 ::: 141 145 ''; 142 146 example = literalExpression '' 143 - let 144 - # Wordpress plugin 'embed-pdf-viewer' installation example 145 - embedPdfViewerPlugin = pkgs.stdenv.mkDerivation { 146 - name = "embed-pdf-viewer-plugin"; 147 - # Download the theme from the wordpress site 148 - src = pkgs.fetchurl { 149 - url = "https://downloads.wordpress.org/plugin/embed-pdf-viewer.2.0.3.zip"; 150 - sha256 = "1rhba5h5fjlhy8p05zf0p14c9iagfh96y91r36ni0rmk6y891lyd"; 151 - }; 152 - # We need unzip to build this package 153 - nativeBuildInputs = [ pkgs.unzip ]; 154 - # Installing simply means copying all files to the output directory 155 - installPhase = "mkdir -p $out; cp -R * $out/"; 156 - }; 157 - # And then pass this theme to the themes list like this: 158 - in [ embedPdfViewerPlugin ] 147 + { 148 + inherit (pkgs.wordpressPackages.plugins) embed-pdf-viewer-plugin; 149 + } 159 150 ''; 160 151 }; 161 152 162 153 themes = mkOption { 163 - type = types.listOf types.path; 164 - default = []; 154 + type = with types; coercedTo 155 + (listOf path) 156 + (l: warn "setting this option with a list is deprecated" 157 + listToAttrs (map (p: nameValuePair (p.name or (throw "${p} does not have a name")) p) l)) 158 + (attrsOf path); 159 + default = { inherit (pkgs.wordpressPackages.themes) twentytwentythree; }; 160 + defaultText = literalExpression "{ inherit (pkgs.wordpressPackages.themes) twentytwentythree; }"; 165 161 description = lib.mdDoc '' 166 - List of path(s) to respective theme(s) which are copied from the 'theme' directory. 162 + Path(s) to respective theme(s) which are copied from the 'theme' directory. 167 163 168 164 ::: {.note} 169 165 These themes need to be packaged before use, see example. 170 166 ::: 171 167 ''; 172 168 example = literalExpression '' 173 - let 174 - # Let's package the responsive theme 175 - responsiveTheme = pkgs.stdenv.mkDerivation { 176 - name = "responsive-theme"; 177 - # Download the theme from the wordpress site 178 - src = pkgs.fetchurl { 179 - url = "https://downloads.wordpress.org/theme/responsive.3.14.zip"; 180 - sha256 = "0rjwm811f4aa4q43r77zxlpklyb85q08f9c8ns2akcarrvj5ydx3"; 181 - }; 182 - # We need unzip to build this package 183 - nativeBuildInputs = [ pkgs.unzip ]; 184 - # Installing simply means copying all files to the output directory 185 - installPhase = "mkdir -p $out; cp -R * $out/"; 186 - }; 187 - # And then pass this theme to the themes list like this: 188 - in [ responsiveTheme ] 169 + { 170 + inherit (pkgs.wordpressPackages.themes) responsive-theme; 171 + } 189 172 ''; 190 173 }; 191 174
+1 -1
nixos/tests/nextcloud/default.nix
··· 26 26 }; 27 27 }) 28 28 { } 29 - [ 24 25 ] 29 + [ 24 25 26 ]
+2 -2
pkgs/applications/audio/chuck/default.nix
··· 3 3 }: 4 4 5 5 stdenv.mkDerivation rec { 6 - version = "1.4.1.1"; 6 + version = "1.4.2.0"; 7 7 pname = "chuck"; 8 8 9 9 src = fetchurl { 10 10 url = "http://chuck.cs.princeton.edu/release/files/chuck-${version}.tgz"; 11 - sha256 = "sha256-RFnubxUdpy3N4VJeCv4FMp1hCGNWsWjs/AvDpXApD2M="; 11 + sha256 = "sha256-hIwsC9rYgXWSTFqUufKGqoT0Gnsf4nR4KQ0iSVbj8xg="; 12 12 }; 13 13 14 14 nativeBuildInputs = [ flex bison which ]
+2 -2
pkgs/applications/editors/gnome-latex/default.nix
··· 21 21 }: 22 22 23 23 stdenv.mkDerivation rec { 24 - version = "3.42.0"; 24 + version = "3.44.0"; 25 25 pname = "gnome-latex"; 26 26 27 27 src = fetchurl { 28 28 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 29 - sha256 = "ASMecEE3WNGu1pYNqhoigfqRNaYFkQuodM7VMn3LhUM="; 29 + sha256 = "iL1TQL0ox+0Bx5ZqOgBzK72QJ3PfWsZZvmrRGAap50Q="; 30 30 }; 31 31 32 32 nativeBuildInputs = [
+2 -2
pkgs/applications/misc/gnome-firmware/default.nix
··· 20 20 21 21 stdenv.mkDerivation rec { 22 22 pname = "gnome-firmware"; 23 - version = "42.2"; 23 + version = "43.1"; 24 24 25 25 src = fetchFromGitLab { 26 26 domain = "gitlab.gnome.org"; 27 27 owner = "World"; 28 28 repo = "gnome-firmware"; 29 29 rev = version; 30 - sha256 = "L0R2lXU69I6NI7Srq5s+8N9261Ic8B7FVaaXNjz2Ll0="; 30 + sha256 = "9QS6X1Cm9/wToQ8hnGNn3VytSCpZI8StZ3+vf0/wbAw="; 31 31 }; 32 32 33 33 nativeBuildInputs = [
+2 -2
pkgs/applications/misc/orca/default.nix
··· 34 34 35 35 buildPythonApplication rec { 36 36 pname = "orca"; 37 - version = "43.0"; 37 + version = "43.1"; 38 38 39 39 format = "other"; 40 40 41 41 src = fetchurl { 42 42 url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; 43 - sha256 = "HKdaAMSoUSoJ5KJuszn615RNHtQayjL3D2lickQhglA="; 43 + sha256 = "9ljgSc4WknO4Q0aBBCTW9QkpHwXX7MOnegPZEqo+aEA="; 44 44 }; 45 45 46 46 patches = [
+342 -175
pkgs/applications/networking/n8n/node-packages.nix
··· 292 292 sha512 = "+00smmZBradoGFEkRjliN7BjqPh/Hx0KCHWOEibUmflUqZz2RwBTU0MrVovEEHozhx3AUSGcO/rl3/5f9e9Biw=="; 293 293 }; 294 294 }; 295 + "@codemirror/lang-css-6.0.1" = { 296 + name = "_at_codemirror_slash_lang-css"; 297 + packageName = "@codemirror/lang-css"; 298 + version = "6.0.1"; 299 + src = fetchurl { 300 + url = "https://registry.npmjs.org/@codemirror/lang-css/-/lang-css-6.0.1.tgz"; 301 + sha512 = "rlLq1Dt0WJl+2epLQeAsfqIsx3lGu4HStHCJu95nGGuz2P2fNugbU3dQYafr2VRjM4eMC9HviI6jvS98CNtG5w=="; 302 + }; 303 + }; 295 304 "@codemirror/lang-javascript-6.1.2" = { 296 305 name = "_at_codemirror_slash_lang-javascript"; 297 306 packageName = "@codemirror/lang-javascript"; ··· 643 652 sha512 = "SVgiGtMnMnW3ActR8SXgsDhw7a0w0ChHSYAyAUxxrOiJ1OqYWEKk/xJd84tTSPo1mo6DXLObAJALNnd0Hrv7Ng=="; 644 653 }; 645 654 }; 655 + "@lezer/css-1.1.1" = { 656 + name = "_at_lezer_slash_css"; 657 + packageName = "@lezer/css"; 658 + version = "1.1.1"; 659 + src = fetchurl { 660 + url = "https://registry.npmjs.org/@lezer/css/-/css-1.1.1.tgz"; 661 + sha512 = "mSjx+unLLapEqdOYDejnGBokB5+AiJKZVclmud0MKQOKx3DLJ5b5VTCstgDDknR6iIV4gVrN6euzsCnj0A2gQA=="; 662 + }; 663 + }; 646 664 "@lezer/highlight-1.1.3" = { 647 665 name = "_at_lezer_slash_highlight"; 648 666 packageName = "@lezer/highlight"; ··· 650 668 src = fetchurl { 651 669 url = "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.1.3.tgz"; 652 670 sha512 = "3vLKLPThO4td43lYRBygmMY18JN3CPh9w+XS2j8WC30vR4yZeFG4z1iFe4jXE43NtGqe//zHW5q8ENLlHvz9gw=="; 671 + }; 672 + }; 673 + "@lezer/html-1.3.0" = { 674 + name = "_at_lezer_slash_html"; 675 + packageName = "@lezer/html"; 676 + version = "1.3.0"; 677 + src = fetchurl { 678 + url = "https://registry.npmjs.org/@lezer/html/-/html-1.3.0.tgz"; 679 + sha512 = "jU/ah8DEoiECLTMouU/X/ujIg6k9WQMIOFMaCLebzaXfrguyGaR3DpTgmk0tbljiuIJ7hlmVJPcJcxGzmCd0Mg=="; 653 680 }; 654 681 }; 655 682 "@lezer/javascript-1.4.1" = { ··· 949 976 sha512 = "gW69MEamZ4wk1OsOq1nG1jcyhXIQcnrsX5JwixVw/9xaiav8TCyjESAruu1Rz9yyInhgBXxkNwMeygKnN2uxNA=="; 950 977 }; 951 978 }; 952 - "@sentry/core-7.33.0" = { 979 + "@sentry/core-7.34.0" = { 953 980 name = "_at_sentry_slash_core"; 954 981 packageName = "@sentry/core"; 955 - version = "7.33.0"; 982 + version = "7.34.0"; 956 983 src = fetchurl { 957 - url = "https://registry.npmjs.org/@sentry/core/-/core-7.33.0.tgz"; 958 - sha512 = "mrSgUnXjxHVi0cVea1lv7gC/Y66ya2a3atCHaPEij/+l+3APg5d0Ixt1zMx5YllMiZKf6wpxlZ0uwXcqdAAw+w=="; 984 + url = "https://registry.npmjs.org/@sentry/core/-/core-7.34.0.tgz"; 985 + sha512 = "J1oxsYZX1N0tkEcaHt/uuDqk6zOnaivyampp+EvBsUMCdemjg7rwKvawlRB0ZtBEQu3HAhi8zecm03mlpWfCDw=="; 959 986 }; 960 987 }; 961 - "@sentry/integrations-7.33.0" = { 988 + "@sentry/integrations-7.34.0" = { 962 989 name = "_at_sentry_slash_integrations"; 963 990 packageName = "@sentry/integrations"; 964 - version = "7.33.0"; 991 + version = "7.34.0"; 965 992 src = fetchurl { 966 - url = "https://registry.npmjs.org/@sentry/integrations/-/integrations-7.33.0.tgz"; 967 - sha512 = "r67/9R+DaOZETg7gRvOuYPo5XQdzEaE8f7OaET071dUP0kyUBjO74Y7SZxZV/xjBthMXexw5TANHmLVrZQQVag=="; 993 + url = "https://registry.npmjs.org/@sentry/integrations/-/integrations-7.34.0.tgz"; 994 + sha512 = "xbWnTvG4gkKeCVpmhhdPtMbQkPO0RAfEJ8VPO5TWmUMT23ZWy2kE0gTZHtnBopy7AXxg231XxTi4fxnwgQGxEQ=="; 968 995 }; 969 996 }; 970 - "@sentry/node-7.33.0" = { 997 + "@sentry/node-7.34.0" = { 971 998 name = "_at_sentry_slash_node"; 972 999 packageName = "@sentry/node"; 973 - version = "7.33.0"; 1000 + version = "7.34.0"; 974 1001 src = fetchurl { 975 - url = "https://registry.npmjs.org/@sentry/node/-/node-7.33.0.tgz"; 976 - sha512 = "isQVF9LLSG4EZLHiSJ3chgK6f3ZBdGxm8fX6YGm8HWz07CubJddes3yBPLPRNXrRLd7X3SK8pPcK5oc3LIKqAw=="; 1002 + url = "https://registry.npmjs.org/@sentry/node/-/node-7.34.0.tgz"; 1003 + sha512 = "VM4XeydRdgeaNTRe8kwqYg2oNPddVyY74PlCFEFnPEN1NccycNuwiFno68kNrApeqxxLlTTmzkJy0BWo16x2Yg=="; 977 1004 }; 978 1005 }; 979 - "@sentry/types-7.33.0" = { 1006 + "@sentry/types-7.34.0" = { 980 1007 name = "_at_sentry_slash_types"; 981 1008 packageName = "@sentry/types"; 982 - version = "7.33.0"; 1009 + version = "7.34.0"; 983 1010 src = fetchurl { 984 - url = "https://registry.npmjs.org/@sentry/types/-/types-7.33.0.tgz"; 985 - sha512 = "5kkmYjtBWSbPxfYGiXdZFPS6xpFBNlXvDqeX4NpCFXz6/LiEDn6tZ61kuCSFb8MZlyqyCX5WsP3aiI2FJfpGIA=="; 1011 + url = "https://registry.npmjs.org/@sentry/types/-/types-7.34.0.tgz"; 1012 + sha512 = "K+OeHIrl35PSYn6Zwqe4b8WWyAJQoI5NeWxHVkM7oQTGJ1YLG4BvLsR+UiUXnKdR5krE4EDtEA5jLsDlBEyPvw=="; 986 1013 }; 987 1014 }; 988 - "@sentry/utils-7.33.0" = { 1015 + "@sentry/utils-7.34.0" = { 989 1016 name = "_at_sentry_slash_utils"; 990 1017 packageName = "@sentry/utils"; 991 - version = "7.33.0"; 1018 + version = "7.34.0"; 992 1019 src = fetchurl { 993 - url = "https://registry.npmjs.org/@sentry/utils/-/utils-7.33.0.tgz"; 994 - sha512 = "msp02GV1gOfaN5FjKjWxI00rtbYLXEE5cTGldhs/Dt9KI63dDk1nwPDkSLhg6joqRItAq0thlBh6un717HdWbg=="; 1020 + url = "https://registry.npmjs.org/@sentry/utils/-/utils-7.34.0.tgz"; 1021 + sha512 = "VIHHXEBw0htzqxnU8A7WkXKvmsG2pZVqHlAn0H9W/yyFQtXMuP1j1i0NsjADB/3JXUKK83kTNWGzScXvp0o+Jg=="; 995 1022 }; 996 1023 }; 997 1024 "@servie/events-1.0.0" = { ··· 1012 1039 sha512 = "Uy0+khmZqUrUGm5dmMqVlnvufZRSK0FbYzVgp0UMstm+F5+W2/jnEEQyc9vo1ZR/E5ZI/B1WjjoTqBqwJL6Krw=="; 1013 1040 }; 1014 1041 }; 1015 - "@swc/core-1.3.28" = { 1042 + "@swc/core-1.3.29" = { 1016 1043 name = "_at_swc_slash_core"; 1017 1044 packageName = "@swc/core"; 1018 - version = "1.3.28"; 1045 + version = "1.3.29"; 1019 1046 src = fetchurl { 1020 - url = "https://registry.npmjs.org/@swc/core/-/core-1.3.28.tgz"; 1021 - sha512 = "yzc61HbAIjHeOYTUW/IgXAywlSviMFymnUiLY7dNUELGHjMVxSp0XnIlPQN4v5UekYbwLEV8+KChaoQRACiQCw=="; 1047 + url = "https://registry.npmjs.org/@swc/core/-/core-1.3.29.tgz"; 1048 + sha512 = "BYDBEqQ77ASZNQYTP7PlKnMLwbHh3lhtlzD/gQP2zIK9XhqQlcy/zIcLljYDn0EOogLn3IyaUiXgAzDWoAmWMg=="; 1022 1049 }; 1023 1050 }; 1024 - "@swc/wasm-1.3.28" = { 1051 + "@swc/wasm-1.3.29" = { 1025 1052 name = "_at_swc_slash_wasm"; 1026 1053 packageName = "@swc/wasm"; 1027 - version = "1.3.28"; 1054 + version = "1.3.29"; 1028 1055 src = fetchurl { 1029 - url = "https://registry.npmjs.org/@swc/wasm/-/wasm-1.3.28.tgz"; 1030 - sha512 = "6RDkQHSi6FxaoPmGnzMq5smYxXlcEec+t6EHrv8rk4emIrnsFjSc2D2PQ0K4xoryJn2NVD3cDbAEVHe6XZX5AQ=="; 1056 + url = "https://registry.npmjs.org/@swc/wasm/-/wasm-1.3.29.tgz"; 1057 + sha512 = "Tzpl541GRLyzQufasGScL9tMOzk0SsdcVX0jYpG74u6VZHqr0u62Cw6nYtRhTtkcsFsfNpg7RQM+CycyXY8Nmw=="; 1031 1058 }; 1032 1059 }; 1033 1060 "@techteamer/ocsp-1.0.0" = { ··· 1109 1136 src = fetchurl { 1110 1137 url = "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz"; 1111 1138 sha512 = "yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ=="; 1139 + }; 1140 + }; 1141 + "@types/asn1-0.2.0" = { 1142 + name = "_at_types_slash_asn1"; 1143 + packageName = "@types/asn1"; 1144 + version = "0.2.0"; 1145 + src = fetchurl { 1146 + url = "https://registry.npmjs.org/@types/asn1/-/asn1-0.2.0.tgz"; 1147 + sha512 = "5TMxIpYbIA9c1J0hYQjQDX3wr+rTgQEAXaW2BI8ECM8FO53wSW4HFZplTalrKSHuZUc76NtXcePRhwuOHqGD5g=="; 1112 1148 }; 1113 1149 }; 1114 1150 "@types/big.js-6.1.6" = { ··· 1336 1372 sha512 = "sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA=="; 1337 1373 }; 1338 1374 }; 1375 + "@types/uuid-9.0.0" = { 1376 + name = "_at_types_slash_uuid"; 1377 + packageName = "@types/uuid"; 1378 + version = "9.0.0"; 1379 + src = fetchurl { 1380 + url = "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.0.tgz"; 1381 + sha512 = "kr90f+ERiQtKWMz5rP32ltJ/BtULDI5RVO0uavn1HQUOwjx0R1h0rnDYNL0CepF1zL5bSY6FISAfd9tOdDhU5Q=="; 1382 + }; 1383 + }; 1339 1384 "@types/validator-13.7.11" = { 1340 1385 name = "_at_types_slash_validator"; 1341 1386 packageName = "@types/validator"; ··· 1867 1912 sha512 = "9cYNccliXZDByFsFliVwk5GvTq058Fj513CiR4E60ndDwmuXzTJEp/Bp8FyuRmGyYupLjHLs+JA9/CBoVS4/NQ=="; 1868 1913 }; 1869 1914 }; 1870 - "aws-sdk-2.1301.0" = { 1915 + "aws-sdk-2.1304.0" = { 1871 1916 name = "aws-sdk"; 1872 1917 packageName = "aws-sdk"; 1873 - version = "2.1301.0"; 1918 + version = "2.1304.0"; 1874 1919 src = fetchurl { 1875 - url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1301.0.tgz"; 1876 - sha512 = "AxCt0GfWV14AWC0yvN3+WEBr45JMu2X3FHb8r3H8EhZjJfHk3hWcDwu6vS5Qd8NFDATlFdWJfyQjPVU1YuaDfw=="; 1920 + url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1304.0.tgz"; 1921 + sha512 = "9mf2uafa2M9yFC5IlMe85TIc7OUo1HSProCQWzpRmAAYhcSwmfbRyt02Wtr5YSVvJJPmcSgcyI92snsQR1c3nw=="; 1877 1922 }; 1878 1923 }; 1879 1924 "aws-sign2-0.7.0" = { ··· 2632 2677 sha512 = "RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA=="; 2633 2678 }; 2634 2679 }; 2680 + "codemirror-lang-html-n8n-1.0.0" = { 2681 + name = "codemirror-lang-html-n8n"; 2682 + packageName = "codemirror-lang-html-n8n"; 2683 + version = "1.0.0"; 2684 + src = fetchurl { 2685 + url = "https://registry.npmjs.org/codemirror-lang-html-n8n/-/codemirror-lang-html-n8n-1.0.0.tgz"; 2686 + sha512 = "ofNP6VTDGJ5rue+kTCZlDZdF1PnE0sl2cAkfrsCAd5MlBgDmqTwuFJIkTI6KXOJXs0ucdTYH6QLhy9BSW7EaOQ=="; 2687 + }; 2688 + }; 2635 2689 "codemirror-lang-n8n-expression-0.1.0" = { 2636 2690 name = "codemirror-lang-n8n-expression"; 2637 2691 packageName = "codemirror-lang-n8n-expression"; ··· 3703 3757 sha512 = "hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w=="; 3704 3758 }; 3705 3759 }; 3706 - "entities-2.2.0" = { 3707 - name = "entities"; 3708 - packageName = "entities"; 3709 - version = "2.2.0"; 3710 - src = fetchurl { 3711 - url = "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz"; 3712 - sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="; 3713 - }; 3714 - }; 3715 3760 "entities-4.4.0" = { 3716 3761 name = "entities"; 3717 3762 packageName = "entities"; ··· 3991 4036 sha512 = "5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ=="; 3992 4037 }; 3993 4038 }; 4039 + "express-async-errors-3.1.1" = { 4040 + name = "express-async-errors"; 4041 + packageName = "express-async-errors"; 4042 + version = "3.1.1"; 4043 + src = fetchurl { 4044 + url = "https://registry.npmjs.org/express-async-errors/-/express-async-errors-3.1.1.tgz"; 4045 + sha512 = "h6aK1da4tpqWSbyCa3FxB/V6Ehd4EEB15zyQq9qe75OZBp0krinNKuH4rAY+S/U/2I36vdLAUFSjQJ+TFmODng=="; 4046 + }; 4047 + }; 3994 4048 "express-openapi-validator-4.13.8" = { 3995 4049 name = "express-openapi-validator"; 3996 4050 packageName = "express-openapi-validator"; ··· 4891 4945 sha512 = "4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA=="; 4892 4946 }; 4893 4947 }; 4894 - "http-cache-semantics-4.1.0" = { 4948 + "http-cache-semantics-4.1.1" = { 4895 4949 name = "http-cache-semantics"; 4896 4950 packageName = "http-cache-semantics"; 4897 - version = "4.1.0"; 4951 + version = "4.1.1"; 4898 4952 src = fetchurl { 4899 - url = "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz"; 4900 - sha512 = "carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ=="; 4953 + url = "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz"; 4954 + sha512 = "er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ=="; 4901 4955 }; 4902 4956 }; 4903 4957 "http-errors-2.0.0" = { ··· 4945 4999 sha512 = "dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA=="; 4946 5000 }; 4947 5001 }; 5002 + "humanize-duration-3.28.0" = { 5003 + name = "humanize-duration"; 5004 + packageName = "humanize-duration"; 5005 + version = "3.28.0"; 5006 + src = fetchurl { 5007 + url = "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.28.0.tgz"; 5008 + sha512 = "jMAxraOOmHuPbffLVDKkEKi/NeG8dMqP8lGRd6Tbf7JgAeG33jjgPWDbXXU7ypCI0o+oNKJFgbSB9FKVdWNI2A=="; 5009 + }; 5010 + }; 4948 5011 "humanize-ms-1.2.1" = { 4949 5012 name = "humanize-ms"; 4950 5013 packageName = "humanize-ms"; ··· 5134 5197 sha512 = "3GYo0GJtLqgNXj4YhrisLaNNvWSNwSS2wS4OELGfGxH8I69+XfNdnmV1AyN+ZqMh0i7eX+SWjrwFKDBDgfBC1A=="; 5135 5198 }; 5136 5199 }; 5137 - "ioredis-5.2.6" = { 5200 + "ioredis-5.3.0" = { 5138 5201 name = "ioredis"; 5139 5202 packageName = "ioredis"; 5140 - version = "5.2.6"; 5203 + version = "5.3.0"; 5141 5204 src = fetchurl { 5142 - url = "https://registry.npmjs.org/ioredis/-/ioredis-5.2.6.tgz"; 5143 - sha512 = "F1xO+kYIz+TCOccvhThs2pem6sc9uTl9JsZybWpqe4FeCFDmf04XwbLQUGIqi2UWaDUuR61w2dhxx6NJEFehOA=="; 5205 + url = "https://registry.npmjs.org/ioredis/-/ioredis-5.3.0.tgz"; 5206 + sha512 = "Id9jKHhsILuIZpHc61QkagfVdUj2Rag5GzG1TGEvRNeM7dtTOjICgjC+tvqYxi//PuX2wjQ+Xjva2ONBuf92Pw=="; 5144 5207 }; 5145 5208 }; 5146 5209 "ip-1.1.8" = { ··· 5926 5989 sha512 = "Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A=="; 5927 5990 }; 5928 5991 }; 5992 + "ldapts-4.2.2" = { 5993 + name = "ldapts"; 5994 + packageName = "ldapts"; 5995 + version = "4.2.2"; 5996 + src = fetchurl { 5997 + url = "https://registry.npmjs.org/ldapts/-/ldapts-4.2.2.tgz"; 5998 + sha512 = "UHe7BtEhPUFHZZ6XHnRvLHWQrftTap3PgGU0nOLtrFeigZvfpXSsqJ8C9uXNouDV+iDHqoWwplS0eHoDu/GIEQ=="; 5999 + }; 6000 + }; 5929 6001 "leac-0.6.0" = { 5930 6002 name = "leac"; 5931 6003 packageName = "leac"; ··· 6547 6619 sha512 = "TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg=="; 6548 6620 }; 6549 6621 }; 6622 + "markdown-it-13.0.1" = { 6623 + name = "markdown-it"; 6624 + packageName = "markdown-it"; 6625 + version = "13.0.1"; 6626 + src = fetchurl { 6627 + url = "https://registry.npmjs.org/markdown-it/-/markdown-it-13.0.1.tgz"; 6628 + sha512 = "lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q=="; 6629 + }; 6630 + }; 6550 6631 "markdown-it-emoji-2.0.2" = { 6551 6632 name = "markdown-it-emoji"; 6552 6633 packageName = "markdown-it-emoji"; ··· 7033 7114 sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q=="; 7034 7115 }; 7035 7116 }; 7036 - "n8n-core-0.151.2" = { 7117 + "n8n-core-0.152.0" = { 7037 7118 name = "n8n-core"; 7038 7119 packageName = "n8n-core"; 7039 - version = "0.151.2"; 7120 + version = "0.152.0"; 7040 7121 src = fetchurl { 7041 - url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.151.2.tgz"; 7042 - sha512 = "QIGNeKuRuY+G+kPxDShjXnxVjCMCEbZ6xB530+V30s2MFa+XnEKJtPdLbsCr0j8AUTHqEb/oMkHAoEyPPg8M1g=="; 7122 + url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.152.0.tgz"; 7123 + sha512 = "Bx+4vv3E7SwjFvxLDqzpDbJwVzDUYAw1QTcqAfMnHpkUM9uxlYHV5U3kgSsjpkw0TAF7RVVroHWFYWgnrW9XHA=="; 7043 7124 }; 7044 7125 }; 7045 - "n8n-design-system-0.51.1" = { 7126 + "n8n-design-system-0.52.0" = { 7046 7127 name = "n8n-design-system"; 7047 7128 packageName = "n8n-design-system"; 7048 - version = "0.51.1"; 7129 + version = "0.52.0"; 7049 7130 src = fetchurl { 7050 - url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.51.1.tgz"; 7051 - sha512 = "zK4UI/LkdRzAGZfL9K7/tZSLjxXTIKgt/72LrgEJ8CGNxYPavk0f7eYTH9Q8tbcLAaMLDjUcbcdzVEWh5YZofA=="; 7131 + url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.52.0.tgz"; 7132 + sha512 = "Dd6SdWYDjlhgrpPbof4DFPP4hPdpH9cA+3YkFSCgQLNyCi0RdqiQJqPQ5xQFlNVaxd6a7R69RHy/oNwt6/+cLw=="; 7052 7133 }; 7053 7134 }; 7054 - "n8n-editor-ui-0.178.1" = { 7135 + "n8n-editor-ui-0.179.0" = { 7055 7136 name = "n8n-editor-ui"; 7056 7137 packageName = "n8n-editor-ui"; 7057 - version = "0.178.1"; 7138 + version = "0.179.0"; 7058 7139 src = fetchurl { 7059 - url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.178.1.tgz"; 7060 - sha512 = "bpSRVRys6fIAuhsmxQrU2QXP0UaRfGan+wODcZbX8SnWSG90ANN7R++CvS6tfL+i8vKvDzLYFjWlm1y40Esbag=="; 7140 + url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.179.0.tgz"; 7141 + sha512 = "mo1HoCA7myKzkNkZgmjp9UZ5euxDUX+ZPAyLCoxI+HXki3mhVxELeffzbkBiXAfezi9xlaYAKzehg5HuUyiHjg=="; 7061 7142 }; 7062 7143 }; 7063 - "n8n-nodes-base-0.210.1" = { 7144 + "n8n-nodes-base-0.211.0" = { 7064 7145 name = "n8n-nodes-base"; 7065 7146 packageName = "n8n-nodes-base"; 7066 - version = "0.210.1"; 7147 + version = "0.211.0"; 7067 7148 src = fetchurl { 7068 - url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.210.1.tgz"; 7069 - sha512 = "UvkjbmJoBtgqHMz+ff7AJYnVcRpPLY7rh0OPQSR3B6BQ7lzE9eBaBpfTvtIopxRwKeK3vke9UUb6ztdkgDaBDw=="; 7149 + url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.211.0.tgz"; 7150 + sha512 = "AoERAZJTuztzCuVvSeAPJk0fko4XcnlK7oweum08+0C1g0X1o9iHQE2kkoHwTxsY77eS6mRbGd2r6OCggpKftQ=="; 7070 7151 }; 7071 7152 }; 7072 - "n8n-workflow-0.133.2" = { 7153 + "n8n-workflow-0.134.0" = { 7073 7154 name = "n8n-workflow"; 7074 7155 packageName = "n8n-workflow"; 7075 - version = "0.133.2"; 7156 + version = "0.134.0"; 7076 7157 src = fetchurl { 7077 - url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.133.2.tgz"; 7078 - sha512 = "XnNmt5idpqb/7nVFtNCS4RQUDMfIslfepl2WJfwa/0jSQYWaJmFWhV0OmIj3mJTWaLaiy1qDjAEaEYZZBaQ69A=="; 7158 + url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.134.0.tgz"; 7159 + sha512 = "m9sbI29zCXSeFprBEQ+Lqk1E53iI2Dbu0LoL+5Nw3fBcbxnTYCxReD9pSssZSKlHzb9BHSMSYeZk4pK5RyQuvw=="; 7079 7160 }; 7080 7161 }; 7081 7162 "named-placeholders-1.1.3" = { ··· 7204 7285 sha512 = "L8RfEgjBTHAISTuagw51PprVAqNZoG6KSB6LQ6H1bskMVkFs5E71IyjauLBv3XbuomJlguWF/VnRHdJ1gqiAqA=="; 7205 7286 }; 7206 7287 }; 7207 - "node-abort-controller-3.0.1" = { 7288 + "node-abort-controller-3.1.1" = { 7208 7289 name = "node-abort-controller"; 7209 7290 packageName = "node-abort-controller"; 7210 - version = "3.0.1"; 7291 + version = "3.1.1"; 7211 7292 src = fetchurl { 7212 - url = "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.0.1.tgz"; 7213 - sha512 = "/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw=="; 7293 + url = "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz"; 7294 + sha512 = "AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ=="; 7214 7295 }; 7215 7296 }; 7216 7297 "node-addon-api-4.3.0" = { ··· 7330 7411 sha512 = "EjYvSmHzekz6VNkNd12aUqAco+bOkRe3Of5jVhltqKhEsjw/y0PYPJfp83+s9Wzh1dspYAkUW/YNQ350NATbSQ=="; 7331 7412 }; 7332 7413 }; 7333 - "nodemailer-6.9.0" = { 7414 + "nodemailer-6.9.1" = { 7334 7415 name = "nodemailer"; 7335 7416 packageName = "nodemailer"; 7336 - version = "6.9.0"; 7417 + version = "6.9.1"; 7337 7418 src = fetchurl { 7338 - url = "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.0.tgz"; 7339 - sha512 = "jFaCEGTeT3E/m/5R2MHWiyQH3pSARECRUDM+1hokOYc3lQAAG7ASuy+2jIsYVf+RVa9zePopSQwKNVFH8DKUpA=="; 7419 + url = "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.1.tgz"; 7420 + sha512 = "qHw7dOiU5UKNnQpXktdgQ1d3OFgRAekuvbJLcdG5dnEo/GtcTHRYM7+UfJARdOFU9WUQO8OiIamgWPmiSFHYAA=="; 7340 7421 }; 7341 7422 }; 7342 7423 "nopt-5.0.0" = { ··· 8005 8086 sha512 = "UXYN0ziKj+AeNNP7VDMwrehpACThH7LUl/p8TDFpEUuSejCUIwGSfxpHsPvtM6/WXFy6SU4E5RG4IJV/TZAGjw=="; 8006 8087 }; 8007 8088 }; 8089 + "pg-8.9.0" = { 8090 + name = "pg"; 8091 + packageName = "pg"; 8092 + version = "8.9.0"; 8093 + src = fetchurl { 8094 + url = "https://registry.npmjs.org/pg/-/pg-8.9.0.tgz"; 8095 + sha512 = "ZJM+qkEbtOHRuXjmvBtOgNOXOtLSbxiMiUVMgE4rV6Zwocy03RicCVvDXgx8l4Biwo8/qORUnEqn2fdQzV7KCg=="; 8096 + }; 8097 + }; 8008 8098 "pg-connection-string-2.5.0" = { 8009 8099 name = "pg-connection-string"; 8010 8100 packageName = "pg-connection-string"; ··· 8014 8104 sha512 = "r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ=="; 8015 8105 }; 8016 8106 }; 8017 - "pg-cursor-2.7.4" = { 8107 + "pg-cursor-2.8.0" = { 8018 8108 name = "pg-cursor"; 8019 8109 packageName = "pg-cursor"; 8020 - version = "2.7.4"; 8110 + version = "2.8.0"; 8021 8111 src = fetchurl { 8022 - url = "https://registry.npmjs.org/pg-cursor/-/pg-cursor-2.7.4.tgz"; 8023 - sha512 = "CNWwOzTTZ9QvphoOL+Wg/7pmVr9GnAWBjPbuK2FRclrB4A/WRO/ssCJ9BlkzIGmmofK2M/LyokNHgsLSn+fMHA=="; 8112 + url = "https://registry.npmjs.org/pg-cursor/-/pg-cursor-2.8.0.tgz"; 8113 + sha512 = "LrOaEHK+R1C40e+xeri3FTRY/VKp9uTOCVsKtGB7LJ57qbeaphYvWjbVly8AesdT1GfHXYcAnVdExKhW7DKOvA=="; 8024 8114 }; 8025 8115 }; 8026 8116 "pg-int8-1.0.1" = { ··· 8068 8158 sha512 = "BKlHCMCdNUmF6gagVbehRWSEiVcZzPVltEx14OJExR9Iz9/1R6KETDWLLGv2l6yRqYFnEZZy1VDjRhArzeIGrw=="; 8069 8159 }; 8070 8160 }; 8071 - "pg-protocol-1.5.0" = { 8161 + "pg-protocol-1.6.0" = { 8072 8162 name = "pg-protocol"; 8073 8163 packageName = "pg-protocol"; 8074 - version = "1.5.0"; 8164 + version = "1.6.0"; 8075 8165 src = fetchurl { 8076 - url = "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.5.0.tgz"; 8077 - sha512 = "muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ=="; 8166 + url = "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.6.0.tgz"; 8167 + sha512 = "M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q=="; 8078 8168 }; 8079 8169 }; 8080 - "pg-query-stream-4.2.4" = { 8170 + "pg-query-stream-4.3.0" = { 8081 8171 name = "pg-query-stream"; 8082 8172 packageName = "pg-query-stream"; 8083 - version = "4.2.4"; 8173 + version = "4.3.0"; 8084 8174 src = fetchurl { 8085 - url = "https://registry.npmjs.org/pg-query-stream/-/pg-query-stream-4.2.4.tgz"; 8086 - sha512 = "Et3gTrWn4C2rj4LVioNq1QDd7aH/3mSJcBm79jZALv3wopvx9bWENtbOYZbHQ6KM+IkfFxs0JF1ZLjMDJ9/N6Q=="; 8175 + url = "https://registry.npmjs.org/pg-query-stream/-/pg-query-stream-4.3.0.tgz"; 8176 + sha512 = "+Eer4Y1e43rAaphFNu9/VJKn9nKTApFKCSwVtDjXYnuO4QYqWHOEkApmGJv8gvaU5T6fcuEtjsN24gk+Rx7X9A=="; 8087 8177 }; 8088 8178 }; 8089 8179 "pg-types-1.13.0" = { ··· 8257 8347 sha512 = "9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ=="; 8258 8348 }; 8259 8349 }; 8260 - "posthog-node-2.2.3" = { 8350 + "posthog-node-2.3.0" = { 8261 8351 name = "posthog-node"; 8262 8352 packageName = "posthog-node"; 8263 - version = "2.2.3"; 8353 + version = "2.3.0"; 8264 8354 src = fetchurl { 8265 - url = "https://registry.npmjs.org/posthog-node/-/posthog-node-2.2.3.tgz"; 8266 - sha512 = "dYlLZhrDus+uRov/Hh+EiRlMoMhRKchNjNa7mNE2iWmKg/ryOTipf0XYKS9UKdki7aU1NzWFhnLe11HF615XuA=="; 8355 + url = "https://registry.npmjs.org/posthog-node/-/posthog-node-2.3.0.tgz"; 8356 + sha512 = "VV4s1DP2DTAL1WaR4Detq28epLlX2DVWfr/+itRWLvDVFyK9EDbAMqBhOkh8dd3JPkng0kcIjJ8PFII/cCXP9A=="; 8267 8357 }; 8268 8358 }; 8269 8359 "prebuild-install-7.1.1" = { ··· 8282 8372 src = fetchurl { 8283 8373 url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz"; 8284 8374 sha512 = "ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w=="; 8375 + }; 8376 + }; 8377 + "prettier-2.8.3" = { 8378 + name = "prettier"; 8379 + packageName = "prettier"; 8380 + version = "2.8.3"; 8381 + src = fetchurl { 8382 + url = "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz"; 8383 + sha512 = "tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw=="; 8285 8384 }; 8286 8385 }; 8287 8386 "pretty-bytes-5.6.0" = { ··· 9049 9148 sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="; 9050 9149 }; 9051 9150 }; 9052 - "sanitize-html-2.7.0" = { 9151 + "sanitize-html-2.7.3" = { 9053 9152 name = "sanitize-html"; 9054 9153 packageName = "sanitize-html"; 9055 - version = "2.7.0"; 9154 + version = "2.7.3"; 9056 9155 src = fetchurl { 9057 - url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.7.0.tgz"; 9058 - sha512 = "jfQelabOn5voO7FAfnQF7v+jsA6z9zC/O4ec0z3E35XPEtHYJT/OdUziVWlKW4irCr2kXaQAyXTXDHWAibg1tA=="; 9156 + url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.7.3.tgz"; 9157 + sha512 = "jMaHG29ak4miiJ8wgqA1849iInqORgNv7SLfSw9LtfOhEUQ1C0YHKH73R+hgyufBW9ZFeJrb057k9hjlfBCVlw=="; 9059 9158 }; 9060 9159 }; 9061 9160 "sax-1.2.1" = { ··· 9634 9733 sha512 = "KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw=="; 9635 9734 }; 9636 9735 }; 9736 + "stream-browserify-3.0.0" = { 9737 + name = "stream-browserify"; 9738 + packageName = "stream-browserify"; 9739 + version = "3.0.0"; 9740 + src = fetchurl { 9741 + url = "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz"; 9742 + sha512 = "H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA=="; 9743 + }; 9744 + }; 9637 9745 "stream-events-1.0.5" = { 9638 9746 name = "stream-events"; 9639 9747 packageName = "stream-events"; ··· 9661 9769 sha512 = "Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg=="; 9662 9770 }; 9663 9771 }; 9772 + "strict-event-emitter-types-2.0.0" = { 9773 + name = "strict-event-emitter-types"; 9774 + packageName = "strict-event-emitter-types"; 9775 + version = "2.0.0"; 9776 + src = fetchurl { 9777 + url = "https://registry.npmjs.org/strict-event-emitter-types/-/strict-event-emitter-types-2.0.0.tgz"; 9778 + sha512 = "Nk/brWYpD85WlOgzw5h173aci0Teyv8YdIAEtV+N88nDB0dLlazZyJMIsN6eo1/AR61l+p6CJTG1JIyFaoNEEA=="; 9779 + }; 9780 + }; 9664 9781 "strict-uri-encode-2.0.0" = { 9665 9782 name = "strict-uri-encode"; 9666 9783 packageName = "strict-uri-encode"; ··· 10192 10309 sha512 = "Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="; 10193 10310 }; 10194 10311 }; 10195 - "tslib-2.4.1" = { 10312 + "tslib-2.5.0" = { 10196 10313 name = "tslib"; 10197 10314 packageName = "tslib"; 10198 - version = "2.4.1"; 10315 + version = "2.5.0"; 10199 10316 src = fetchurl { 10200 - url = "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz"; 10201 - sha512 = "tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA=="; 10317 + url = "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz"; 10318 + sha512 = "336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg=="; 10202 10319 }; 10203 10320 }; 10204 10321 "tsscmp-1.0.6" = { ··· 10597 10714 sha512 = "+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="; 10598 10715 }; 10599 10716 }; 10717 + "uuid-9.0.0" = { 10718 + name = "uuid"; 10719 + packageName = "uuid"; 10720 + version = "9.0.0"; 10721 + src = fetchurl { 10722 + url = "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz"; 10723 + sha512 = "MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg=="; 10724 + }; 10725 + }; 10600 10726 "v-click-outside-3.2.0" = { 10601 10727 name = "v-click-outside"; 10602 10728 packageName = "v-click-outside"; ··· 10714 10840 sha512 = "C5GZjs1tYlAqjwymaaCPDjCyGo10ajUphiwA922jKt9n7KPpqR7oM1PCwYzhB/E7+nT3wfdG3oRre5raIT1rKA=="; 10715 10841 }; 10716 10842 }; 10843 + "vue-infinite-loading-2.4.5" = { 10844 + name = "vue-infinite-loading"; 10845 + packageName = "vue-infinite-loading"; 10846 + version = "2.4.5"; 10847 + src = fetchurl { 10848 + url = "https://registry.npmjs.org/vue-infinite-loading/-/vue-infinite-loading-2.4.5.tgz"; 10849 + sha512 = "xhq95Mxun060bRnsOoLE2Be6BR7jYwuC89kDe18+GmCLVrRA/dU0jrGb12Xu6NjmKs+iTW0AA6saSEmEW4cR7g=="; 10850 + }; 10851 + }; 10717 10852 "vue-json-pretty-1.9.3" = { 10718 10853 name = "vue-json-pretty"; 10719 10854 packageName = "vue-json-pretty"; ··· 10766 10901 src = fetchurl { 10767 10902 url = "https://registry.npmjs.org/vue2-boring-avatars/-/vue2-boring-avatars-0.3.4.tgz"; 10768 10903 sha512 = "N3FYX9Z6rZdTeP3BOBz2LMxlWo9WRmPF6SOsYzz+tEuUH0QjX8UD7c1X95J8pZ7cFvbh9QflVujYQRqRiiwoAg=="; 10904 + }; 10905 + }; 10906 + "vue2-boring-avatars-0.3.8" = { 10907 + name = "vue2-boring-avatars"; 10908 + packageName = "vue2-boring-avatars"; 10909 + version = "0.3.8"; 10910 + src = fetchurl { 10911 + url = "https://registry.npmjs.org/vue2-boring-avatars/-/vue2-boring-avatars-0.3.8.tgz"; 10912 + sha512 = "8vNN+zhCIiIMnSQDu0DwhJ11e9r3t4t12dromXmXDtRryBhV58NPn4XgMb4JKrBlfNK92KFrY/cxRy3nzhQfpQ=="; 10769 10913 }; 10770 10914 }; 10771 10915 "vue2-teleport-1.0.1" = { ··· 11179 11323 n8n = nodeEnv.buildNodePackage { 11180 11324 name = "n8n"; 11181 11325 packageName = "n8n"; 11182 - version = "0.212.1"; 11326 + version = "0.213.0"; 11183 11327 src = fetchurl { 11184 - url = "https://registry.npmjs.org/n8n/-/n8n-0.212.1.tgz"; 11185 - sha512 = "9i4U/dJ84TEFIkj++nx+u3lLgpOxeco5QjopG+Ejjv6Gd3Jc+oL8MF3opN9v0JWagPX+yOnszol6aN+U4Sl8tA=="; 11328 + url = "https://registry.npmjs.org/n8n/-/n8n-0.213.0.tgz"; 11329 + sha512 = "O6ZOT3nhCSBXt0aA3OH64M+6UNwVO7coURqTaCI0oVwbaH387OawtKn+mVnn5Jho52hAAZAoHdF1RVal2LQtJQ=="; 11186 11330 }; 11187 11331 dependencies = [ 11188 11332 (sources."@acuminous/bitsyntax-0.1.2" // { ··· 11198 11342 }) 11199 11343 (sources."@azure/abort-controller-1.1.0" // { 11200 11344 dependencies = [ 11201 - sources."tslib-2.4.1" 11345 + sources."tslib-2.5.0" 11202 11346 ]; 11203 11347 }) 11204 11348 (sources."@azure/core-auth-1.4.0" // { 11205 11349 dependencies = [ 11206 - sources."tslib-2.4.1" 11350 + sources."tslib-2.5.0" 11207 11351 ]; 11208 11352 }) 11209 11353 (sources."@azure/core-client-1.7.0" // { 11210 11354 dependencies = [ 11211 - sources."tslib-2.4.1" 11355 + sources."tslib-2.5.0" 11212 11356 ]; 11213 11357 }) 11214 11358 (sources."@azure/core-http-2.3.1" // { 11215 11359 dependencies = [ 11216 11360 sources."@azure/core-tracing-1.0.0-preview.13" 11217 11361 sources."tough-cookie-4.1.2" 11218 - sources."tslib-2.4.1" 11362 + sources."tslib-2.5.0" 11219 11363 sources."universalify-0.2.0" 11220 11364 ]; 11221 11365 }) 11222 11366 sources."@azure/core-http-compat-1.3.0" 11223 11367 (sources."@azure/core-lro-2.5.0" // { 11224 11368 dependencies = [ 11225 - sources."tslib-2.4.1" 11369 + sources."tslib-2.5.0" 11226 11370 ]; 11227 11371 }) 11228 11372 (sources."@azure/core-paging-1.4.0" // { 11229 11373 dependencies = [ 11230 - sources."tslib-2.4.1" 11374 + sources."tslib-2.5.0" 11231 11375 ]; 11232 11376 }) 11233 11377 (sources."@azure/core-rest-pipeline-1.10.1" // { 11234 11378 dependencies = [ 11235 11379 sources."@tootallnate/once-2.0.0" 11236 11380 sources."http-proxy-agent-5.0.0" 11237 - sources."tslib-2.4.1" 11381 + sources."tslib-2.5.0" 11238 11382 ]; 11239 11383 }) 11240 11384 (sources."@azure/core-tracing-1.0.1" // { 11241 11385 dependencies = [ 11242 - sources."tslib-2.4.1" 11386 + sources."tslib-2.5.0" 11243 11387 ]; 11244 11388 }) 11245 11389 (sources."@azure/core-util-1.1.1" // { 11246 11390 dependencies = [ 11247 - sources."tslib-2.4.1" 11391 + sources."tslib-2.5.0" 11248 11392 ]; 11249 11393 }) 11250 11394 (sources."@azure/identity-2.1.0" // { ··· 11252 11396 sources."jwa-2.0.0" 11253 11397 sources."jws-4.0.0" 11254 11398 sources."open-8.4.0" 11255 - sources."tslib-2.4.1" 11399 + sources."tslib-2.5.0" 11256 11400 ]; 11257 11401 }) 11258 11402 (sources."@azure/keyvault-keys-4.6.0" // { 11259 11403 dependencies = [ 11260 - sources."tslib-2.4.1" 11404 + sources."tslib-2.5.0" 11261 11405 ]; 11262 11406 }) 11263 11407 (sources."@azure/logger-1.0.3" // { 11264 11408 dependencies = [ 11265 - sources."tslib-2.4.1" 11409 + sources."tslib-2.5.0" 11266 11410 ]; 11267 11411 }) 11268 11412 sources."@azure/ms-rest-azure-env-2.0.0" ··· 11286 11430 (sources."@azure/storage-blob-12.12.0" // { 11287 11431 dependencies = [ 11288 11432 sources."@azure/core-tracing-1.0.0-preview.13" 11289 - sources."tslib-2.4.1" 11433 + sources."tslib-2.5.0" 11290 11434 ]; 11291 11435 }) 11292 11436 sources."@babel/parser-7.20.13" 11293 11437 sources."@babel/runtime-7.20.13" 11294 11438 sources."@codemirror/autocomplete-6.4.0" 11295 11439 sources."@codemirror/commands-6.2.0" 11440 + sources."@codemirror/lang-css-6.0.1" 11296 11441 sources."@codemirror/lang-javascript-6.1.2" 11297 11442 sources."@codemirror/language-6.4.0" 11298 11443 sources."@codemirror/lint-6.1.0" ··· 11363 11508 sources."@kwsites/file-exists-1.1.1" 11364 11509 sources."@kwsites/promise-deferred-1.1.1" 11365 11510 sources."@lezer/common-1.0.2" 11511 + sources."@lezer/css-1.1.1" 11366 11512 sources."@lezer/highlight-1.1.3" 11513 + sources."@lezer/html-1.3.0" 11367 11514 sources."@lezer/javascript-1.4.1" 11368 11515 sources."@lezer/lr-1.3.1" 11369 11516 sources."@mapbox/node-pre-gyp-1.0.10" ··· 11385 11532 sources."@oclif/command-1.8.21" 11386 11533 (sources."@oclif/config-1.18.6" // { 11387 11534 dependencies = [ 11388 - sources."tslib-2.4.1" 11535 + sources."tslib-2.5.0" 11389 11536 ]; 11390 11537 }) 11391 11538 (sources."@oclif/core-1.26.1" // { 11392 11539 dependencies = [ 11393 11540 sources."supports-color-8.1.1" 11394 - sources."tslib-2.4.1" 11541 + sources."tslib-2.5.0" 11395 11542 sources."wrap-ansi-7.0.0" 11396 11543 ]; 11397 11544 }) ··· 11407 11554 sources."@oclif/linewrap-1.0.0" 11408 11555 (sources."@oclif/parser-3.8.9" // { 11409 11556 dependencies = [ 11410 - sources."tslib-2.4.1" 11557 + sources."tslib-2.5.0" 11411 11558 ]; 11412 11559 }) 11413 11560 sources."@oclif/screen-3.0.4" ··· 11440 11587 sources."domhandler-5.0.3" 11441 11588 ]; 11442 11589 }) 11443 - sources."@sentry/core-7.33.0" 11444 - sources."@sentry/integrations-7.33.0" 11445 - sources."@sentry/node-7.33.0" 11446 - sources."@sentry/types-7.33.0" 11447 - sources."@sentry/utils-7.33.0" 11590 + sources."@sentry/core-7.34.0" 11591 + sources."@sentry/integrations-7.34.0" 11592 + sources."@sentry/node-7.34.0" 11593 + sources."@sentry/types-7.34.0" 11594 + sources."@sentry/utils-7.34.0" 11448 11595 sources."@servie/events-1.0.0" 11449 11596 sources."@sqltools/formatter-1.2.5" 11450 - sources."@swc/core-1.3.28" 11451 - sources."@swc/wasm-1.3.28" 11597 + sources."@swc/core-1.3.29" 11598 + sources."@swc/wasm-1.3.29" 11452 11599 sources."@techteamer/ocsp-1.0.0" 11453 11600 sources."@tediousjs/connection-string-0.3.0" 11454 11601 sources."@tokenizer/token-0.3.0" ··· 11457 11604 sources."@tsconfig/node12-1.0.11" 11458 11605 sources."@tsconfig/node14-1.0.3" 11459 11606 sources."@tsconfig/node16-1.0.3" 11607 + sources."@types/asn1-0.2.0" 11460 11608 sources."@types/big.js-6.1.6" 11461 11609 sources."@types/body-parser-1.19.2" 11462 11610 sources."@types/connect-3.4.35" ··· 11486 11634 sources."@types/stoppable-1.1.1" 11487 11635 sources."@types/tough-cookie-2.3.8" 11488 11636 sources."@types/tunnel-0.0.3" 11637 + sources."@types/uuid-9.0.0" 11489 11638 sources."@types/validator-13.7.11" 11490 11639 sources."@types/webidl-conversions-7.0.0" 11491 11640 sources."@types/whatwg-url-8.2.2" ··· 11560 11709 sources."assert-plus-1.0.0" 11561 11710 (sources."ast-types-0.13.4" // { 11562 11711 dependencies = [ 11563 - sources."tslib-2.4.1" 11712 + sources."tslib-2.5.0" 11564 11713 ]; 11565 11714 }) 11566 11715 sources."async-3.2.4" ··· 11574 11723 }) 11575 11724 sources."available-typed-arrays-1.0.5" 11576 11725 sources."avsc-5.7.7" 11577 - (sources."aws-sdk-2.1301.0" // { 11726 + (sources."aws-sdk-2.1304.0" // { 11578 11727 dependencies = [ 11579 11728 sources."buffer-4.9.2" 11580 11729 sources."events-1.1.1" ··· 11611 11760 sources."bignumber.js-2.4.0" 11612 11761 sources."binary-extensions-2.2.0" 11613 11762 sources."binascii-0.0.2" 11614 - (sources."bindings-1.5.0" // { 11615 - dependencies = [ 11616 - sources."file-uri-to-path-1.0.0" 11617 - ]; 11618 - }) 11763 + sources."bindings-1.5.0" 11619 11764 sources."bintrees-1.0.2" 11620 11765 (sources."bl-4.1.0" // { 11621 11766 dependencies = [ ··· 11666 11811 sources."callsites-3.1.0" 11667 11812 (sources."camel-case-4.1.2" // { 11668 11813 dependencies = [ 11669 - sources."tslib-2.4.1" 11814 + sources."tslib-2.5.0" 11670 11815 ]; 11671 11816 }) 11672 11817 (sources."capital-case-1.0.4" // { 11673 11818 dependencies = [ 11674 - sources."tslib-2.4.1" 11819 + sources."tslib-2.5.0" 11675 11820 ]; 11676 11821 }) 11677 11822 sources."cardinal-2.1.1" ··· 11684 11829 sources."chalk-4.1.2" 11685 11830 (sources."change-case-4.1.2" // { 11686 11831 dependencies = [ 11687 - sources."tslib-2.4.1" 11832 + sources."tslib-2.5.0" 11688 11833 ]; 11689 11834 }) 11690 11835 sources."chardet-0.7.0" ··· 11719 11864 ]; 11720 11865 }) 11721 11866 sources."cluster-key-slot-1.1.2" 11867 + sources."codemirror-lang-html-n8n-1.0.0" 11722 11868 sources."codemirror-lang-n8n-expression-0.1.0" 11723 11869 sources."codepage-1.15.0" 11724 11870 (sources."color-3.2.1" // { ··· 11753 11899 sources."console-control-strings-1.1.0" 11754 11900 (sources."constant-case-3.0.4" // { 11755 11901 dependencies = [ 11756 - sources."tslib-2.4.1" 11902 + sources."tslib-2.5.0" 11757 11903 ]; 11758 11904 }) 11759 11905 sources."content-disposition-0.5.4" ··· 11823 11969 sources."domutils-2.8.0" 11824 11970 (sources."dot-case-3.0.4" // { 11825 11971 dependencies = [ 11826 - sources."tslib-2.4.1" 11972 + sources."tslib-2.5.0" 11827 11973 ]; 11828 11974 }) 11829 11975 sources."dotenv-8.6.0" ··· 11841 11987 sources."encoding-japanese-2.0.0" 11842 11988 sources."end-of-stream-1.4.4" 11843 11989 sources."ent-2.2.0" 11844 - sources."entities-2.2.0" 11990 + sources."entities-2.1.0" 11845 11991 sources."env-paths-2.2.1" 11846 11992 sources."err-code-2.0.3" 11847 11993 sources."es-abstract-1.21.1" ··· 11875 12021 sources."ms-2.0.0" 11876 12022 ]; 11877 12023 }) 12024 + sources."express-async-errors-3.1.1" 11878 12025 (sources."express-openapi-validator-4.13.8" // { 11879 12026 dependencies = [ 11880 12027 sources."media-typer-1.1.0" ··· 11906 12053 }) 11907 12054 sources."file-saver-2.0.5" 11908 12055 sources."file-type-16.5.4" 11909 - sources."file-uri-to-path-2.0.0" 12056 + sources."file-uri-to-path-1.0.0" 11910 12057 (sources."filelist-1.0.4" // { 11911 12058 dependencies = [ 11912 12059 sources."minimatch-5.1.6" ··· 11968 12115 sources."get-system-fonts-2.0.2" 11969 12116 (sources."get-uri-3.0.2" // { 11970 12117 dependencies = [ 12118 + sources."file-uri-to-path-2.0.0" 11971 12119 sources."fs-extra-8.1.0" 11972 12120 sources."jsonfile-4.0.0" 11973 12121 sources."universalify-0.1.2" ··· 12031 12179 sources."he-1.2.0" 12032 12180 (sources."header-case-2.0.4" // { 12033 12181 dependencies = [ 12034 - sources."tslib-2.4.1" 12182 + sources."tslib-2.5.0" 12035 12183 ]; 12036 12184 }) 12037 12185 sources."heap-0.2.7" ··· 12049 12197 ]; 12050 12198 }) 12051 12199 sources."htmlparser2-6.1.0" 12052 - sources."http-cache-semantics-4.1.0" 12200 + sources."http-cache-semantics-4.1.1" 12053 12201 sources."http-errors-2.0.0" 12054 12202 sources."http-proxy-agent-4.0.1" 12055 12203 sources."http-signature-1.2.0" 12056 12204 sources."https-proxy-agent-5.0.1" 12205 + sources."humanize-duration-3.28.0" 12057 12206 sources."humanize-ms-1.2.1" 12058 12207 sources."hyperlinker-1.0.0" 12059 12208 sources."iconv-lite-0.6.3" ··· 12082 12231 sources."inquirer-7.3.3" 12083 12232 sources."internal-slot-1.0.4" 12084 12233 sources."interpret-1.4.0" 12085 - (sources."ioredis-5.2.6" // { 12234 + (sources."ioredis-5.3.0" // { 12086 12235 dependencies = [ 12087 12236 sources."denque-2.1.0" 12088 12237 ]; ··· 12178 12327 sources."jws-3.2.2" 12179 12328 sources."kafkajs-1.16.0" 12180 12329 sources."kuler-2.0.0" 12330 + (sources."ldapts-4.2.2" // { 12331 + dependencies = [ 12332 + sources."uuid-9.0.0" 12333 + ]; 12334 + }) 12181 12335 sources."leac-0.6.0" 12182 12336 sources."leven-2.1.0" 12183 12337 sources."levn-0.3.0" ··· 12233 12387 sources."lossless-json-1.0.5" 12234 12388 (sources."lower-case-2.0.2" // { 12235 12389 dependencies = [ 12236 - sources."tslib-2.4.1" 12390 + sources."tslib-2.5.0" 12237 12391 ]; 12238 12392 }) 12239 12393 sources."lru-cache-4.0.2" ··· 12263 12417 ]; 12264 12418 }) 12265 12419 sources."mappersmith-2.41.0" 12266 - (sources."markdown-it-12.3.2" // { 12267 - dependencies = [ 12268 - sources."argparse-2.0.1" 12269 - sources."entities-2.1.0" 12270 - ]; 12271 - }) 12420 + sources."markdown-it-13.0.1" 12272 12421 sources."markdown-it-emoji-2.0.2" 12273 12422 sources."markdown-it-link-attributes-4.0.1" 12274 12423 sources."markdown-it-task-lists-2.1.1" ··· 12378 12527 ]; 12379 12528 }) 12380 12529 sources."mz-2.7.0" 12381 - (sources."n8n-core-0.151.2" // { 12530 + (sources."n8n-core-0.152.0" // { 12382 12531 dependencies = [ 12383 12532 sources."concat-stream-2.0.0" 12384 12533 sources."readable-stream-3.6.0" 12385 12534 ]; 12386 12535 }) 12387 - sources."n8n-design-system-0.51.1" 12388 - (sources."n8n-editor-ui-0.178.1" // { 12536 + (sources."n8n-design-system-0.52.0" // { 12537 + dependencies = [ 12538 + sources."argparse-2.0.1" 12539 + sources."markdown-it-12.3.2" 12540 + sources."vue2-boring-avatars-0.3.8" 12541 + ]; 12542 + }) 12543 + (sources."n8n-editor-ui-0.179.0" // { 12389 12544 dependencies = [ 12390 12545 sources."luxon-2.5.2" 12391 12546 ]; 12392 12547 }) 12393 - (sources."n8n-nodes-base-0.210.1" // { 12548 + (sources."n8n-nodes-base-0.211.0" // { 12394 12549 dependencies = [ 12395 12550 sources."chokidar-3.5.2" 12396 12551 sources."luxon-2.3.2" 12397 12552 ]; 12398 12553 }) 12399 - (sources."n8n-workflow-0.133.2" // { 12554 + (sources."n8n-workflow-0.134.0" // { 12400 12555 dependencies = [ 12401 12556 sources."luxon-2.3.2" 12402 12557 ]; ··· 12418 12573 sources."nice-try-1.0.5" 12419 12574 (sources."no-case-3.0.4" // { 12420 12575 dependencies = [ 12421 - sources."tslib-2.4.1" 12576 + sources."tslib-2.5.0" 12422 12577 ]; 12423 12578 }) 12424 12579 sources."node-abi-3.31.0" 12425 - sources."node-abort-controller-3.0.1" 12580 + sources."node-abort-controller-3.1.1" 12426 12581 sources."node-addon-api-4.3.0" 12427 12582 sources."node-ensure-0.0.0" 12428 12583 sources."node-fetch-2.6.8" ··· 12451 12606 sources."node-rsa-1.1.1" 12452 12607 sources."node-ssh-12.0.5" 12453 12608 sources."nodeify-1.0.1" 12454 - sources."nodemailer-6.9.0" 12609 + sources."nodemailer-6.9.1" 12455 12610 sources."nopt-5.0.0" 12456 12611 sources."normalize-path-3.0.0" 12457 12612 sources."normalize-wheel-1.0.1" ··· 12498 12653 sources."packet-reader-1.0.0" 12499 12654 (sources."param-case-3.0.4" // { 12500 12655 dependencies = [ 12501 - sources."tslib-2.4.1" 12656 + sources."tslib-2.5.0" 12502 12657 ]; 12503 12658 }) 12504 12659 sources."parse-github-url-1.0.2" ··· 12510 12665 sources."parseurl-1.3.3" 12511 12666 (sources."pascal-case-3.1.2" // { 12512 12667 dependencies = [ 12513 - sources."tslib-2.4.1" 12668 + sources."tslib-2.5.0" 12514 12669 ]; 12515 12670 }) 12516 12671 sources."passport-0.6.0" ··· 12524 12679 }) 12525 12680 (sources."path-case-3.0.4" // { 12526 12681 dependencies = [ 12527 - sources."tslib-2.4.1" 12682 + sources."tslib-2.5.0" 12528 12683 ]; 12529 12684 }) 12530 12685 sources."path-dirname-1.0.2" ··· 12543 12698 sources."peberminta-0.8.0" 12544 12699 sources."peek-readable-4.1.0" 12545 12700 sources."performance-now-2.1.0" 12546 - sources."pg-8.8.0" 12701 + sources."pg-8.9.0" 12547 12702 sources."pg-connection-string-2.5.0" 12548 - sources."pg-cursor-2.7.4" 12703 + sources."pg-cursor-2.8.0" 12549 12704 sources."pg-int8-1.0.1" 12550 12705 sources."pg-minify-1.6.2" 12551 12706 (sources."pg-native-3.0.1" // { ··· 12558 12713 ]; 12559 12714 }) 12560 12715 sources."pg-pool-3.5.2" 12561 - sources."pg-promise-10.15.4" 12562 - sources."pg-protocol-1.5.0" 12563 - sources."pg-query-stream-4.2.4" 12716 + (sources."pg-promise-10.15.4" // { 12717 + dependencies = [ 12718 + sources."pg-8.8.0" 12719 + ]; 12720 + }) 12721 + sources."pg-protocol-1.6.0" 12722 + sources."pg-query-stream-4.3.0" 12564 12723 sources."pg-types-2.2.0" 12565 12724 (sources."pgpass-1.0.5" // { 12566 12725 dependencies = [ ··· 12582 12741 sources."postgres-bytea-1.0.0" 12583 12742 sources."postgres-date-1.0.7" 12584 12743 sources."postgres-interval-1.2.0" 12585 - (sources."posthog-node-2.2.3" // { 12744 + (sources."posthog-node-2.3.0" // { 12586 12745 dependencies = [ 12587 12746 sources."axios-0.27.2" 12588 12747 ]; 12589 12748 }) 12590 12749 sources."prebuild-install-7.1.1" 12591 12750 sources."prelude-ls-1.1.2" 12751 + sources."prettier-2.8.3" 12592 12752 sources."pretty-bytes-5.6.0" 12593 12753 sources."printj-1.1.2" 12594 12754 sources."prismjs-1.29.0" ··· 12651 12811 (sources."recast-0.21.5" // { 12652 12812 dependencies = [ 12653 12813 sources."ast-types-0.15.2" 12654 - sources."tslib-2.4.1" 12814 + sources."tslib-2.5.0" 12655 12815 ]; 12656 12816 }) 12657 12817 sources."rechoir-0.6.2" ··· 12710 12870 sources."safe-regex-test-1.0.0" 12711 12871 sources."safe-stable-stringify-2.4.2" 12712 12872 sources."safer-buffer-2.1.2" 12713 - (sources."sanitize-html-2.7.0" // { 12873 + (sources."sanitize-html-2.7.3" // { 12714 12874 dependencies = [ 12715 12875 sources."deepmerge-4.2.2" 12716 12876 ]; ··· 12737 12897 }) 12738 12898 (sources."sentence-case-3.0.4" // { 12739 12899 dependencies = [ 12740 - sources."tslib-2.4.1" 12900 + sources."tslib-2.5.0" 12741 12901 ]; 12742 12902 }) 12743 12903 sources."seq-queue-0.0.5" ··· 12767 12927 sources."smart-buffer-4.2.0" 12768 12928 (sources."snake-case-3.0.4" // { 12769 12929 dependencies = [ 12770 - sources."tslib-2.4.1" 12930 + sources."tslib-2.5.0" 12771 12931 ]; 12772 12932 }) 12773 12933 (sources."snowflake-sdk-1.6.17" // { ··· 12820 12980 sources."statuses-2.0.1" 12821 12981 sources."stealthy-require-1.1.1" 12822 12982 sources."stoppable-1.1.0" 12983 + (sources."stream-browserify-3.0.0" // { 12984 + dependencies = [ 12985 + sources."readable-stream-3.6.0" 12986 + ]; 12987 + }) 12823 12988 sources."stream-events-1.0.5" 12824 12989 sources."stream-shift-1.0.1" 12825 12990 sources."streamsearch-1.1.0" 12991 + sources."strict-event-emitter-types-2.0.0" 12826 12992 sources."strict-uri-encode-2.0.0" 12827 12993 sources."string-similarity-4.0.4" 12828 12994 sources."string-width-4.2.3" ··· 12957 13123 sources."bl-5.1.0" 12958 13124 ]; 12959 13125 }) 12960 - sources."tslib-2.4.1" 13126 + sources."tslib-2.5.0" 12961 13127 sources."wrap-ansi-7.0.0" 12962 13128 sources."yargs-17.6.2" 12963 13129 sources."yargs-parser-21.1.1" ··· 12978 13144 sources."unpipe-1.0.0" 12979 13145 (sources."upper-case-2.0.2" // { 12980 13146 dependencies = [ 12981 - sources."tslib-2.4.1" 13147 + sources."tslib-2.5.0" 12982 13148 ]; 12983 13149 }) 12984 13150 (sources."upper-case-first-2.0.2" // { 12985 13151 dependencies = [ 12986 - sources."tslib-2.4.1" 13152 + sources."tslib-2.5.0" 12987 13153 ]; 12988 13154 }) 12989 13155 sources."uri-js-4.4.1" ··· 13033 13199 sources."vue-demi-0.13.11" 13034 13200 sources."vue-fragment-1.5.1" 13035 13201 sources."vue-i18n-8.28.2" 13202 + sources."vue-infinite-loading-2.4.5" 13036 13203 sources."vue-json-pretty-1.9.3" 13037 13204 sources."vue-prism-editor-0.3.0" 13038 13205 sources."vue-router-3.6.5"
+4 -2
pkgs/applications/networking/qv2ray/default.nix
··· 74 74 75 75 meta = with lib; { 76 76 description = "An GUI frontend to v2ray"; 77 - homepage = "https://qv2ray.net"; 78 - license = licenses.gpl3; 77 + homepage = "https://github.com/Qv2ray/Qv2ray"; 78 + license = licenses.gpl3Plus; 79 79 maintainers = with maintainers; [ poscat rewine ]; 80 80 platforms = platforms.all; 81 + # never built on aarch64-darwin, x86_64-darwin since update to unstable-2022-09-25 82 + broken = stdenv.isDarwin; 81 83 }; 82 84 }
+2 -2
pkgs/applications/video/haruna/default.nix
··· 26 26 27 27 mkDerivation rec { 28 28 pname = "haruna"; 29 - version = "0.10.0"; 29 + version = "0.10.2"; 30 30 31 31 src = fetchFromGitLab { 32 32 owner = "multimedia"; 33 33 repo = "haruna"; 34 34 rev = "v${version}"; 35 - hash = "sha256-UU8tbaZz7udDulh+PHPZDc3rm1MvK4dafPgXL50apMI="; 35 + hash = "sha256-hhHWxmr2EzW9QqfV1bpJCiWOWsmGJmvxvtQcuXlMTc4="; 36 36 domain = "invent.kde.org"; 37 37 }; 38 38
+5
pkgs/build-support/cc-wrapper/default.nix
··· 321 321 && !(stdenv.targetPlatform.useLLVM or false) 322 322 && gccForLibs != null) '' 323 323 echo "--gcc-toolchain=${gccForLibs}" >> $out/nix-support/cc-cflags 324 + 325 + # Pull in 'cc.out' target to get 'libstdc++fs.a'. It should be in 326 + # 'cc.lib'. But it's a gcc package bug. 327 + # TODO(trofi): remove once gcc is fixed to move libraries to .lib output. 328 + echo "-L${gccForLibs}/${optionalString (targetPlatform != hostPlatform) "/${targetPlatform.config}"}/lib" >> $out/nix-support/cc-ldflags 324 329 '' 325 330 326 331 ##
+1 -1
pkgs/data/fonts/andika/default.nix
··· 13 13 runHook preInstall 14 14 15 15 install -Dm644 *.ttf -t $out/share/fonts/truetype 16 - install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} 16 + install -Dm644 OFL.txt OFL-FAQ.txt README.txt FONTLOG.txt -t $out/share/doc/${pname}-${version} 17 17 18 18 runHook postInstall 19 19 '';
+1 -1
pkgs/data/fonts/annapurna-sil/default.nix
··· 13 13 runHook preInstall 14 14 15 15 install -Dm644 *.ttf -t $out/share/fonts/truetype 16 - install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} 16 + install -Dm644 OFL.txt OFL-FAQ.txt README.txt FONTLOG.txt -t $out/share/doc/${pname}-${version} 17 17 18 18 runHook postInstall 19 19 '';
+1 -1
pkgs/data/fonts/charis-sil/default.nix
··· 13 13 runHook preInstall 14 14 15 15 install -Dm644 *.ttf -t $out/share/fonts/truetype 16 - install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} 16 + install -Dm644 OFL.txt OFL-FAQ.txt README.txt FONTLOG.txt -t $out/share/doc/${pname}-${version} 17 17 18 18 runHook postInstall 19 19 '';
+1 -1
pkgs/data/fonts/doulos-sil/default.nix
··· 13 13 runHook preInstall 14 14 15 15 install -Dm644 *.ttf -t $out/share/fonts/truetype 16 - install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} 16 + install -Dm644 OFL.txt OFL-FAQ.txt README.txt FONTLOG.txt -t $out/share/doc/${pname}-${version} 17 17 18 18 runHook postInstall 19 19 '';
+2 -2
pkgs/data/fonts/eb-garamond/default.nix
··· 13 13 runHook preInstall 14 14 15 15 mkdir -p $out/share/{doc,fonts} 16 - install -Dm644 otf/*.otf -t $out/share/fonts/opentype 17 - install -Dm644 *Changes *README.markdown *README.xelualatex -t $out/share/doc/${pname}-${version} 16 + install -Dm644 otf/*.otf -t $out/share/fonts/opentype 17 + install -Dm644 Changes README.markdown README.xelualatex -t $out/share/doc/${pname}-${version} 18 18 19 19 runHook postInstall 20 20 '';
+2 -2
pkgs/data/fonts/encode-sans/default.nix
··· 12 12 installPhase = '' 13 13 runHook preInstall 14 14 15 - install -Dm644 *.ttf -t $out/share/fonts/truetype 16 - install -Dm644 *README.md *FONTLOG.txt -t $out/share/doc/${pname}-${version} 15 + install -Dm644 *.ttf -t $out/share/fonts/truetype 16 + install -Dm644 README.md FONTLOG.txt -t $out/share/doc/${pname}-${version} 17 17 18 18 runHook postInstall 19 19 '';
+1 -1
pkgs/data/fonts/ezra-sil/default.nix
··· 13 13 runHook preInstall 14 14 15 15 install -Dm644 *.ttf -t $out/share/fonts/truetype 16 - install -Dm644 *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} 16 + install -Dm644 OFL-FAQ.txt README.txt FONTLOG.txt -t $out/share/doc/${pname}-${version} 17 17 18 18 runHook postInstall 19 19 '';
+2 -2
pkgs/data/fonts/fraunces/default.nix
··· 12 12 installPhase = '' 13 13 runHook preInstall 14 14 15 - install -Dm644 *Desktop/static/otf/*.otf -t $out/share/fonts/opentype 16 - install -Dm644 *Desktop/static/ttf/*.ttf *Desktop/*.ttf -t $out/share/fonts/truetype 15 + install -Dm644 */static/otf/*.otf -t $out/share/fonts/opentype 16 + install -Dm644 */static/ttf/*.ttf */*.ttf -t $out/share/fonts/truetype 17 17 18 18 runHook postInstall 19 19 '';
+2 -2
pkgs/data/fonts/julia-mono/default.nix
··· 2 2 3 3 stdenvNoCC.mkDerivation rec { 4 4 pname = "JuliaMono-ttf"; 5 - version = "0.046"; 5 + version = "0.047"; 6 6 7 7 src = fetchzip { 8 8 url = "https://github.com/cormullion/juliamono/releases/download/v${version}/${pname}.tar.gz"; 9 9 stripRoot = false; 10 - hash = "sha256-mq37L3bhUhdjB8z3I9i8+wyLrMSsu/nZrZXOuqE3JlU="; 10 + hash = "sha256-tCZo48SBGdhcsP1wgaWkfWr3L3Yz+p/iqesLmarSWbk="; 11 11 }; 12 12 13 13 installPhase = ''
+17 -14
pkgs/data/fonts/public-sans/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "public-sans"; 5 5 version = "2.001"; 6 - in (fetchzip { 7 - name = "public-sans-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/uswds/public-sans/releases/download/v${version}/public-sans-v${version}.zip"; 9 + stripRoot = false; 10 + hash = "sha256-XFs/UMXI/kdrW+53t8Mj26+Rn5p+LQ6KW2K2/ShoIag="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 8 15 9 - url = "https://github.com/uswds/public-sans/releases/download/v${version}/public-sans-v${version}.zip"; 16 + install -Dm644 */*/*.otf -t $out/share/fonts/opentype 17 + install -Dm644 */*/*.ttf -t $out/share/fonts/truetype 10 18 11 - sha256 = "sha256-Ba7D4J72GZQsGn0KINRib9BmHsAnoEsAwAOC+M3CkMU="; 19 + runHook postInstall 20 + ''; 12 21 13 22 meta = with lib; { 14 23 description = "A strong, neutral, principles-driven, open source typeface for text or display"; ··· 18 27 maintainers = with maintainers; [ dtzWill ]; 19 28 platforms = platforms.all; 20 29 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/fonts 24 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 25 - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype 26 - ''; 27 - }) 30 + }
+18 -16
pkgs/data/fonts/quattrocento-sans/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "quattrocento-sans"; 5 5 version = "2.0"; 6 - name = "quattrocento-sans-${version}"; 7 - in (fetchzip rec { 8 - inherit name; 9 6 10 - url = "https://web.archive.org/web/20170709124317/http://www.impallari.com/media/releases/quattrocento-sans-v${version}.zip"; 7 + src = fetchzip { 8 + url = "https://web.archive.org/web/20170709124317/http://www.impallari.com/media/releases/quattrocento-sans-v${version}.zip"; 9 + stripRoot = false; 10 + hash = "sha256-L3aFZmaA94B9APxsp8bSBpocIlK3Ehvj/RFXVcW2nso="; 11 + }; 11 12 12 - sha256 = "0g8hnn92ks4y0jbizwj7yfa097lk887wqkqpqjdmc09sd2n44343"; 13 + installPhase = '' 14 + runHook preInstall 15 + 16 + install -Dm644 */*/QuattrocentoSans*.otf -t $out/share/fonts/opentype 17 + install -Dm644 */FONTLOG.txt -t $out/share/doc/${pname}-${version} 18 + 19 + runHook postInstall 20 + ''; 13 21 14 22 meta = with lib; { 15 23 homepage = "http://www.impallari.com/quattrocentosans/"; 16 24 description = "A classic, elegant and sober sans-serif typeface"; 17 25 license = licenses.ofl; 18 26 platforms = platforms.all; 19 - maintainers = [maintainers.rycee]; 27 + maintainers = [ maintainers.rycee ]; 20 28 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/{fonts,doc} 24 - unzip -j $downloadedFile '*/QuattrocentoSans*.otf' -d $out/share/fonts/opentype 25 - unzip -j $downloadedFile '*/FONTLOG.txt' -d $out/share/doc/${name} 26 - ''; 27 - }) 29 + }
+17 -16
pkgs/data/fonts/quattrocento/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "quattrocento"; 5 5 version = "1.1"; 6 - name = "quattrocento-${version}"; 7 - in (fetchzip rec { 8 - inherit name; 6 + 7 + src = fetchzip { 8 + url = "https://web.archive.org/web/20170707001804/http://www.impallari.com/media/releases/quattrocento-v${version}.zip"; 9 + hash = "sha256-ntY6Wl6TI8F7SShMyD8mdOxVg4oz9kvJ7vKTyGdPLtE="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 9 14 10 - url = "https://web.archive.org/web/20170707001804/http://www.impallari.com/media/releases/quattrocento-v${version}.zip"; 15 + install -Dm644 */*.otf -t $out/share/fonts/opentype 16 + install -Dm644 FONTLOG.txt -t $out/share/doc/${pname}-${version} 11 17 12 - sha256 = "0f8l19y61y20sszn8ni8h9kgl0zy1gyzychg22z5k93ip4h7kfd0"; 18 + runHook postInstall 19 + ''; 13 20 14 21 meta = with lib; { 15 22 homepage = "http://www.impallari.com/quattrocento/"; 16 23 description = "A classic, elegant, sober and strong serif typeface"; 17 24 license = licenses.ofl; 18 25 platforms = platforms.all; 19 - maintainers = [maintainers.rycee]; 26 + maintainers = [ maintainers.rycee ]; 20 27 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/{fonts,doc} 24 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 25 - unzip -j $downloadedFile \*FONTLOG.txt -d $out/share/doc/${name} 26 - ''; 27 - }) 28 + }
+16 -13
pkgs/data/fonts/roboto/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "roboto"; 5 5 version = "2.138"; 6 - in (fetchzip { 7 - name = "roboto-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/google/roboto/releases/download/v${version}/roboto-unhinted.zip"; 9 + stripRoot = false; 10 + hash = "sha256-ue3PUZinBpcYgSho1Zrw1KHl7gc/GlN1GhWFk6g5QXE="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 8 15 9 - url = "https://github.com/google/roboto/releases/download/v${version}/roboto-unhinted.zip"; 16 + install -Dm644 *.ttf -t $out/share/fonts/truetype 10 17 11 - sha256 = "1s3c48wwvvwd3p4w3hfkri5v2c54j2bdxmd3bjv54klc5mrlh6z3"; 18 + runHook postInstall 19 + ''; 12 20 13 21 meta = { 14 22 homepage = "https://github.com/google/roboto"; ··· 22 30 platforms = lib.platforms.all; 23 31 maintainers = [ lib.maintainers.romildo ]; 24 32 }; 25 - }).overrideAttrs (_: { 26 - postFetch = '' 27 - mkdir -p $out/share/fonts 28 - unzip -j $downloadedFile \*.ttf -x __MACOSX/\* -d $out/share/fonts/truetype 29 - ''; 30 - }) 33 + }
+21 -20
pkgs/data/fonts/scheherazade/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip, version ? "3.300" }: 1 + { lib, stdenvNoCC, fetchzip, version ? "3.300" }: 3 2 4 3 let 5 4 new = lib.versionAtLeast version "3.000"; 6 - sha256 = { 7 - "2.100" = "1g5f5f9gzamkq3kqyf7vbzvl4rdj3wmjf6chdrbxksrm3rnb926z"; 8 - "3.300" = "1bja1ma1mnna0qlk3dis31cvq5z1kgcqj7wjp8ml03zc5mpa2wb2"; 5 + hash = { 6 + "2.100" = "sha256-d2UyOOOnmE1afCwyIrM1bL3lQC7XRwh03hzetk/4V30="; 7 + "3.300" = "sha256-LaaA6DWAE2dcwVVX4go9cJaiuwI6efYbPk82ym3W3IY="; 9 8 }."${version}"; 10 - name = "scheherazade${lib.optionalString new "-new"}-${version}"; 9 + pname = "scheherazade${lib.optionalString new "-new"}"; 10 + in 11 + stdenvNoCC.mkDerivation rec { 12 + inherit pname version; 11 13 12 - in (fetchzip rec { 13 - inherit name; 14 + src = fetchzip { 15 + url = "http://software.sil.org/downloads/r/scheherazade/Scheherazade${lib.optionalString new "New"}-${version}.zip"; 16 + inherit hash; 17 + }; 18 + 19 + installPhase = '' 20 + runHook preInstall 14 21 15 - url = "http://software.sil.org/downloads/r/scheherazade/Scheherazade${lib.optionalString new "New"}-${version}.zip"; 22 + install -Dm644 *.ttf -t $out/share/fonts/truetype 23 + install -Dm644 FONTLOG.txt README.txt -t $out/share/doc 24 + cp -r documentation $out/share/doc/ 16 25 17 - inherit sha256; 26 + runHook postInstall 27 + ''; 18 28 19 29 meta = with lib; { 20 30 homepage = "https://software.sil.org/scheherazade/"; ··· 40 50 license = licenses.ofl; 41 51 platforms = platforms.all; 42 52 }; 43 - }).overrideAttrs (_: { 44 - postFetch = '' 45 - mkdir -p $out/share/{doc,fonts} 46 - unzip -l $downloadedFile 47 - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype 48 - unzip $downloadedFile \*/documentation/\* -d $out/share/doc/ 49 - mv $out/share/doc/* $out/share/doc/${name} 50 - unzip -j $downloadedFile \*/FONTLOG.txt \*/README.txt -d $out/share/doc/${name} 51 - ''; 52 - }) 53 + }
+16 -13
pkgs/data/fonts/source-code-pro/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "source-code-pro"; 5 5 version = "2.038"; 6 - in (fetchzip { 7 - name = "source-code-pro-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/adobe-fonts/source-code-pro/releases/download/${version}R-ro%2F1.058R-it%2F1.018R-VAR/OTF-source-code-pro-${version}R-ro-1.058R-it.zip"; 9 + stripRoot = false; 10 + hash = "sha256-ijeTLka131jf6B9xj/eNWK1T5r7r3aBXBgnVyRAxmuY="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 8 15 9 - url = "https://github.com/adobe-fonts/source-code-pro/releases/download/${version}R-ro%2F1.058R-it%2F1.018R-VAR/OTF-source-code-pro-${version}R-ro-1.058R-it.zip"; 16 + install -Dm644 *.otf -t $out/share/fonts/opentype 10 17 11 - sha256 = "027cf62zj27q7l3d4sqzdfgz423lzysihdg8cvmkk6z910a1v368"; 18 + runHook postInstall 19 + ''; 12 20 13 21 meta = { 14 22 description = "Monospaced font family for user interface and coding environments"; ··· 17 25 homepage = "https://adobe-fonts.github.io/source-code-pro/"; 18 26 license = lib.licenses.ofl; 19 27 }; 20 - }).overrideAttrs (_: { 21 - postFetch = '' 22 - mkdir -p $out/share/fonts 23 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 24 - ''; 25 - }) 28 + }
+15 -14
pkgs/data/fonts/source-han-code-jp/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 5 4 pname = "source-han-code-jp"; 6 - version = "2.012R"; 7 - in (fetchzip { 8 - name = "${pname}-${version}"; 5 + version = "2.012"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/adobe-fonts/${pname}/archive/${version}R.zip"; 9 + hash = "sha256-ljO/1/CaE9Yj+AN5xxlIr30/nV/axGQPO0fGACAZGCQ="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 9 14 10 - url = "https://github.com/adobe-fonts/${pname}/archive/${version}.zip"; 15 + install -Dm444 OTF/*.otf -t $out/share/fonts/opentype 11 16 12 - sha256 = "16y5as1k864ghy3vzp8svr3q0sw57rv53za3f48700ksvxz5pwry"; 17 + runHook postInstall 18 + ''; 13 19 14 20 meta = { 15 21 description = "A monospaced Latin font suitable for coding"; ··· 18 24 homepage = "https://blogs.adobe.com/CCJKType/2015/06/source-han-code-jp.html"; 19 25 license = lib.licenses.ofl; 20 26 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/fonts 24 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 25 - ''; 26 - }) 27 + }
+32 -24
pkgs/data/fonts/source-han/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { stdenvNoCC 3 - , lib 4 - , fetchzip 1 + { lib 2 + , stdenvNoCC 3 + , fetchurl 4 + , unzip 5 5 }: 6 6 7 7 let ··· 9 9 { family 10 10 , description 11 11 , rev 12 - , sha256 13 - , postFetch ? '' 14 - install -m444 -Dt $out/share/fonts/opentype/source-han-${family} $downloadedFile 15 - '' 12 + , hash 16 13 , zip ? "" 17 14 }: 18 15 let Family = 19 16 lib.toUpper (lib.substring 0 1 family) + 20 17 lib.substring 1 (lib.stringLength family) family; 21 18 in 22 - (fetchzip { 23 - name = "source-han-${family}-${lib.removeSuffix "R" rev}"; 19 + stdenvNoCC.mkDerivation rec { 20 + pname = "source-han-${family}"; 21 + version = lib.removeSuffix "R" rev; 24 22 25 - url = "https://github.com/adobe-fonts/source-han-${family}/releases/download/${rev}/SourceHan${Family}.ttc${zip}"; 26 - inherit sha256; 23 + src = fetchurl { 24 + url = "https://github.com/adobe-fonts/source-han-${family}/releases/download/${rev}/SourceHan${Family}.ttc${zip}"; 25 + inherit hash; 26 + }; 27 + 28 + nativeBuildInputs = lib.optionals (zip == ".zip") [ unzip ]; 29 + 30 + unpackPhase = lib.optionalString (zip == "") '' 31 + cp $src SourceHan${Family}.ttc${zip} 32 + '' + lib.optionalString (zip == ".zip") '' 33 + unzip $src 34 + ''; 35 + 36 + installPhase = '' 37 + runHook preInstall 38 + 39 + install -Dm444 *.ttc -t $out/share/fonts/opentype/${pname} 40 + 41 + runHook postInstall 42 + ''; 27 43 28 44 meta = { 29 45 description = "An open source Pan-CJK ${description} typeface"; ··· 31 47 license = lib.licenses.ofl; 32 48 maintainers = with lib.maintainers; [ taku0 emily ]; 33 49 }; 34 - }).overrideAttrs (_: { inherit postFetch; }); 50 + }; 35 51 in 36 52 { 37 53 sans = makePackage { 38 54 family = "sans"; 39 55 description = "sans-serif"; 40 56 rev = "2.004R"; 41 - sha256 = "052d17hvz435zc4r2y1p9cgkkgn0ps8g74mfbvnbm1pv8ykj40m9"; 42 - postFetch = '' 43 - mkdir -p $out/share/fonts/opentype/source-han-sans 44 - unzip $downloadedFile -d $out/share/fonts/opentype/source-han-sans 45 - ''; 57 + hash = "sha256-b1kRiprdpaf+Tp5rtTgwn34dPFQR+anTKvMqeVAbfk8="; 46 58 zip = ".zip"; 47 59 }; 48 60 ··· 50 62 family = "serif"; 51 63 description = "serif"; 52 64 rev = "2.000R"; 53 - sha256 = "0x3n6s4khdd6l0crwd7g9sjaqp8lkvksglhc7kj3cv80hldab9wp"; 54 - postFetch = '' 55 - mkdir -p $out/share/fonts/opentype/source-han-serif 56 - unzip $downloadedFile -d $out/share/fonts/opentype/source-han-serif 57 - ''; 65 + hash = "sha256-RDgywab7gwT+YBO7F1KJvKOv0E/3+7Zi/pQl+UDsGcM="; 58 66 zip = ".zip"; 59 67 }; 60 68 ··· 62 70 family = "mono"; 63 71 description = "monospaced"; 64 72 rev = "1.002"; 65 - sha256 = "010h1y469c21bjavwdmkpbwk3ny686inz8i062wh1dhcv8cnqk3c"; 73 + hash = "sha256-DBkkSN6QhI8R64M2h2iDqaNtxluJZeSJYAz8x6ZzWME="; 66 74 }; 67 75 }
+18 -15
pkgs/data/fonts/source-sans-pro/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 3 # Source Sans Pro got renamed to Source Sans 3 (see 5 4 # https://github.com/adobe-fonts/source-sans/issues/192). This is the 6 5 # last version named "Pro". It is useful for backward compatibility 7 6 # with older documents/templates/etc. 8 - let 7 + 8 + stdenvNoCC.mkDerivation rec { 9 + name = "source-sans-pro-${version}"; 9 10 version = "3.006"; 10 - in (fetchzip { 11 - name = "source-sans-pro-${version}"; 11 + 12 + src = fetchzip { 13 + url = "https://github.com/adobe-fonts/source-sans/archive/${version}R.zip"; 14 + hash = "sha256-1Savijgq3INuUN89MR0t748HOuGseXVw5Kd4hYwuVas="; 15 + }; 16 + 17 + installPhase = '' 18 + runHook preInstall 12 19 13 - url = "https://github.com/adobe-fonts/source-sans/archive/${version}R.zip"; 20 + install -Dm444 OTF/*.otf -t $out/share/fonts/opentype 21 + install -Dm444 TTF/*.ttf -t $out/share/fonts/truetype 22 + install -Dm444 VAR/*.otf -t $out/share/fonts/variable 14 23 15 - sha256 = "sha256-uWr/dFyLF65v0o6+oN/3RQoe4ziPspzGB1rgiBkoTYY="; 24 + runHook postInstall 25 + ''; 16 26 17 27 meta = with lib; { 18 28 homepage = "https://adobe-fonts.github.io/source-sans/"; ··· 21 31 platforms = platforms.all; 22 32 maintainers = with maintainers; [ ttuegel ]; 23 33 }; 24 - }).overrideAttrs (_: { 25 - postFetch = '' 26 - mkdir -p $out/share/fonts/{opentype,truetype,variable} 27 - unzip -j $downloadedFile "*/OTF/*.otf" -d $out/share/fonts/opentype 28 - unzip -j $downloadedFile "*/TTF/*.ttf" -d $out/share/fonts/truetype 29 - unzip -j $downloadedFile "*/VAR/*.otf" -d $out/share/fonts/variable 30 - ''; 31 - }) 34 + }
+17 -15
pkgs/data/fonts/source-sans/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "source-sans"; 5 5 version = "3.046"; 6 - in (fetchzip { 7 - name = "source-sans-${version}"; 8 6 9 - url = "https://github.com/adobe-fonts/source-sans/archive/${version}R.zip"; 7 + src = fetchzip { 8 + url = "https://github.com/adobe-fonts/source-sans/archive/${version}R.zip"; 9 + hash = "sha256-nBLEK+T5n1CdZK2zvCWIhF2MxPmiAwL9l55a55yHtgU="; 10 + }; 10 11 11 - sha256 = "1wxdinnliq0xqbjrs0sqykwaggkmyqawfq862d9xn05g1pnxda94"; 12 + installPhase = '' 13 + runHook preInstall 14 + 15 + install -Dm444 OTF/*.otf -t $out/share/fonts/opentype 16 + install -Dm444 TTF/*.ttf -t $out/share/fonts/truetype 17 + install -Dm444 VAR/*.otf -t $out/share/fonts/variable 18 + 19 + runHook postInstall 20 + ''; 12 21 13 22 meta = with lib; { 14 23 homepage = "https://adobe-fonts.github.io/source-sans/"; ··· 17 26 platforms = platforms.all; 18 27 maintainers = with maintainers; [ ttuegel ]; 19 28 }; 20 - }).overrideAttrs (_: { 21 - postFetch = '' 22 - mkdir -p $out/share/fonts/{opentype,truetype,variable} 23 - unzip -j $downloadedFile "*/OTF/*.otf" -d $out/share/fonts/opentype 24 - unzip -j $downloadedFile "*/TTF/*.ttf" -d $out/share/fonts/truetype 25 - unzip -j $downloadedFile "*/VAR/*.otf" -d $out/share/fonts/variable 26 - ''; 27 - }) 29 + }
+18 -15
pkgs/data/fonts/source-serif-pro/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 3 # Source Serif Pro got renamed to Source Serif 4 (see 5 4 # https://github.com/adobe-fonts/source-serif/issues/77). This is the 6 5 # last version named "Pro". It is useful for backward compatibility 7 6 # with older documents/templates/etc. 8 - let 7 + 8 + stdenvNoCC.mkDerivation rec { 9 + pname = "source-serif-pro"; 9 10 version = "3.001"; 10 - in (fetchzip { 11 - name = "source-serif-pro-${version}"; 11 + 12 + src = fetchzip { 13 + url = "https://github.com/adobe-fonts/source-serif/releases/download/${version}R/source-serif-pro-${version}R.zip"; 14 + hash = "sha256-chXoaPOACtQ7wz/etElXuIJH/yvUsP03WlxeCfqWF/w="; 15 + }; 16 + 17 + installPhase = '' 18 + runHook preInstall 12 19 13 - url = "https://github.com/adobe-fonts/source-serif/releases/download/${version}R/source-serif-pro-${version}R.zip"; 20 + install -Dm444 OTF/*.otf -t $out/share/fonts/opentype 21 + install -Dm444 TTF/*.ttf -t $out/share/fonts/truetype 22 + install -Dm444 VAR/*.otf -t $out/share/fonts/variable 14 23 15 - sha256 = "sha256-rYWk8D41QMuuSP+cQMk8ttT7uX3a7gBk4OqjA7K9udk="; 24 + runHook postInstall 25 + ''; 16 26 17 27 meta = with lib; { 18 28 homepage = "https://adobe-fonts.github.io/source-serif/"; ··· 21 31 platforms = platforms.all; 22 32 maintainers = with maintainers; [ ttuegel ]; 23 33 }; 24 - }).overrideAttrs (_: { 25 - postFetch = '' 26 - mkdir -p $out/share/fonts/{opentype,truetype,variable} 27 - unzip -j $downloadedFile "*/OTF/*.otf" -d $out/share/fonts/opentype 28 - unzip -j $downloadedFile "*/TTF/*.ttf" -d $out/share/fonts/truetype 29 - unzip -j $downloadedFile "*/VAR/*.otf" -d $out/share/fonts/variable 30 - ''; 31 - }) 34 + }
+17 -15
pkgs/data/fonts/source-serif/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "source-serif"; 5 5 version = "4.004"; 6 - in (fetchzip { 7 - name = "source-serif-${version}"; 8 6 9 - url = "https://github.com/adobe-fonts/source-serif/releases/download/${version}R/source-serif-${version}.zip"; 7 + src = fetchzip { 8 + url = "https://github.com/adobe-fonts/source-serif/releases/download/${version}R/source-serif-${version}.zip"; 9 + hash = "sha256-tGSMOwYBEZat7MI78wkPr6lgJdsOdOaIZb+IAOoOlq4="; 10 + }; 10 11 11 - sha256 = "06814hcp20abca6p0ii61f23g6h1ibqyhq30lsva59wbwx5iha0h"; 12 + installPhase = '' 13 + runHook preInstall 14 + 15 + install -Dm444 OTF/*.otf -t $out/share/fonts/opentype 16 + install -Dm444 TTF/*.ttf -t $out/share/fonts/truetype 17 + install -Dm444 VAR/*.otf -t $out/share/fonts/variable 18 + 19 + runHook postInstall 20 + ''; 12 21 13 22 meta = with lib; { 14 23 homepage = "https://adobe-fonts.github.io/source-serif/"; ··· 17 26 platforms = platforms.all; 18 27 maintainers = with maintainers; [ ttuegel ]; 19 28 }; 20 - }).overrideAttrs (_: { 21 - postFetch = '' 22 - mkdir -p $out/share/fonts/{opentype,truetype,variable} 23 - unzip -j $downloadedFile "*/OTF/*.otf" -d $out/share/fonts/opentype 24 - unzip -j $downloadedFile "*/TTF/*.ttf" -d $out/share/fonts/truetype 25 - unzip -j $downloadedFile "*/VAR/*.otf" -d $out/share/fonts/variable 26 - ''; 27 - }) 29 + }
+18 -15
pkgs/data/fonts/stix-two/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 3 - let 1 + { lib, stdenvNoCC, fetchzip }: 2 + 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "stix-two"; 4 5 version = "2.13"; 5 - in 6 - (fetchzip { 7 - name = "stix-two-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/stipub/stixfonts/raw/v${version}/zipfiles/STIX${builtins.replaceStrings [ "." ] [ "_" ] version}-all.zip"; 9 + stripRoot = false; 10 + hash = "sha256-hfQmrw7HjlhQSA0rVTs84i3j3iMVR0k7tCRBcB6hEpU="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 8 15 9 - url = "https://github.com/stipub/stixfonts/raw/v${version}/zipfiles/STIX${builtins.replaceStrings [ "." ] [ "_" ] version}-all.zip"; 16 + install -Dm644 */*.otf -t $out/share/fonts/opentype 17 + install -Dm644 */*.ttf -t $out/share/fonts/truetype 10 18 11 - sha256 = "sha256-cBtZe/oq4bQCscSAhJ4YuTSghDleD9O/+3MHOJyI50o="; 19 + runHook postInstall 20 + ''; 12 21 13 22 meta = with lib; { 14 23 homepage = "https://www.stixfonts.org/"; ··· 17 26 platforms = platforms.all; 18 27 maintainers = [ maintainers.rycee ]; 19 28 }; 20 - }).overrideAttrs (_: { 21 - postFetch = '' 22 - mkdir -p $out/share/fonts/ 23 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 24 - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype 25 - ''; 26 - }) 29 + }
+17 -13
pkgs/data/fonts/sudo/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "sudo-font"; 5 5 version = "0.64"; 6 - in (fetchzip { 7 - name = "sudo-font-${version}"; 8 - url = "https://github.com/jenskutilek/sudo-font/releases/download/v${version}/sudo.zip"; 9 - sha256 = "sha256-ewLTeIVY76eq5mHTnjIsJ5Q2CMuBqXJzxvjZTONPsr8="; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/jenskutilek/sudo-font/releases/download/v${version}/sudo.zip"; 9 + hash = "sha256-Y99YPoNpe55Wrj5epiqqQ6ddUBTj9uI4oj4M5ARTzJo="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 14 + 15 + install -Dm644 *.ttf -t $out/share/fonts/truetype/ 16 + 17 + runHook postInstall 18 + ''; 10 19 11 20 meta = with lib; { 12 21 description = "Font for programmers and command line users"; ··· 16 25 maintainers = with maintainers; [ dtzWill ]; 17 26 platforms = platforms.all; 18 27 }; 19 - }).overrideAttrs (_: { 20 - postFetch = '' 21 - mkdir -p $out/share/fonts/ 22 - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype/ 23 - ''; 24 - }) 28 + }
+20 -19
pkgs/data/fonts/terminus-font-ttf/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "terminus-font-ttf"; 5 5 version = "4.49.1"; 6 - in (fetchzip { 7 - name = "terminus-font-ttf-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://files.ax86.net/terminus-ttf/files/${version}/terminus-ttf-${version}.zip"; 9 + hash = "sha256-NKswkZR05V21mszT56S2x85k//qhfzRShhepYaAybDc="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 14 + 15 + for i in *.ttf; do 16 + local destname="$(echo "$i" | sed -E 's|-[[:digit:].]+\.ttf$|.ttf|')" 17 + install -Dm 644 "$i" "$out/share/fonts/truetype/$destname" 18 + done 8 19 9 - url = "https://files.ax86.net/terminus-ttf/files/${version}/terminus-ttf-${version}.zip"; 20 + install -Dm 644 COPYING "$out/share/doc/terminus-font-ttf/COPYING" 10 21 11 - sha256 = "sha256-UaTnCamIRN/3xZsYt5nYzvykXQ3ri94a047sWOJ2RfU="; 22 + runHook postInstall 23 + ''; 12 24 13 25 meta = with lib; { 14 26 description = "A clean fixed width TTF font"; ··· 20 32 license = licenses.ofl; 21 33 maintainers = with maintainers; [ ]; 22 34 }; 23 - }).overrideAttrs (_: { 24 - postFetch = '' 25 - unzip -j $downloadedFile 26 - 27 - for i in *.ttf; do 28 - local destname="$(echo "$i" | sed -E 's|-[[:digit:].]+\.ttf$|.ttf|')" 29 - install -Dm 644 "$i" "$out/share/fonts/truetype/$destname" 30 - done 31 - 32 - install -Dm 644 COPYING "$out/share/doc/terminus-font-ttf/COPYING" 33 - ''; 34 - }) 35 + }
+19 -16
pkgs/data/fonts/theano/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "theano"; 5 5 version = "2.0"; 6 - name = "theano-${version}"; 7 - in (fetchzip rec { 8 - inherit name; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/akryukov/theano/releases/download/v${version}/theano-${version}.otf.zip"; 9 + stripRoot = false; 10 + hash = "sha256-9wnwHcRHB+AToOvGwZSXvHkQ8hqMd7Sdl26Ty/IwbPw="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 9 15 10 - url = "https://github.com/akryukov/theano/releases/download/v${version}/theano-${version}.otf.zip"; 16 + mkdir -p $out/share/fonts/opentype 17 + mkdir -p $out/share/doc/${pname}-${version} 18 + cp *.otf $out/share/fonts/opentype 19 + cp *.txt $out/share/doc/${pname}-${version} 11 20 12 - sha256 = "1my1symb7k80ys33iphsxvmf6432wx6vjdnxhzhkgrang1rhx1h8"; 21 + runHook postInstall 22 + ''; 13 23 14 24 meta = with lib; { 15 25 homepage = "https://github.com/akryukov/theano"; ··· 18 28 license = licenses.ofl; 19 29 platforms = platforms.all; 20 30 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/fonts/opentype 24 - mkdir -p $out/share/doc/${name} 25 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 26 - unzip -j $downloadedFile \*.txt -d "$out/share/doc/${name}" 27 - ''; 28 - }) 31 + }
+17 -14
pkgs/data/fonts/times-newer-roman/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation { 4 + pname = "times-newer-roman"; 5 5 version = "unstable-2018-09-11"; 6 - in 7 - (fetchzip { 8 - name = "times-newer-roman-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://web.archive.org/web/20210609022835/https://timesnewerroman.com/assets/TimesNewerRoman.zip"; 9 + stripRoot = false; 10 + hash = "sha256-wO4rxyJNQyhRLpswCYKXdeiXy5G+iWyxulYCHZb60QM="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 9 15 10 - url = "https://web.archive.org/web/20210609022835/https://timesnewerroman.com/assets/TimesNewerRoman.zip"; 16 + mkdir -p $out/share/fonts/opentype 17 + cp *.otf $out/share/fonts/opentype 11 18 12 - hash = "sha256-Hx59RYLLwfimEQjEEes0lCpg6iql46DFwhQ7kVGiEzc="; 19 + runHook postInstall 20 + ''; 13 21 14 22 meta = with lib; { 15 23 description = "A font that looks just like Times New Roman, except each character is 5-10% wider"; ··· 18 26 maintainers = with maintainers; [ ]; 19 27 platforms = platforms.all; 20 28 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/fonts/opentype 24 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 25 - ''; 26 - }) 29 + }
+19 -14
pkgs/data/fonts/ultimate-oldschool-pc-font-pack/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "ultimate-oldschool-pc-font-pack"; 5 5 version = "2.2"; 6 - in 7 - (fetchzip { 8 - name = "ultimate-oldschool-pc-font-pack-${version}"; 9 - url = "https://int10h.org/oldschool-pc-fonts/download/oldschool_pc_font_pack_v${version}_linux.zip"; 10 - sha256 = "sha256-BOA2fMa2KT3Bkpvj/0DzrzuZbl3RARvNn4qbI/+dApU="; 6 + 7 + src = fetchzip { 8 + url = "https://int10h.org/oldschool-pc-fonts/download/oldschool_pc_font_pack_v${version}_linux.zip"; 9 + stripRoot = false; 10 + hash = "sha256-54U8tZzvivTSOgmGesj9QbIgkSTm9w4quMhsuEc0Xy4="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 15 + 16 + mkdir -p $out/share/fonts/truetype 17 + cp */*.ttf $out/share/fonts/truetype 18 + 19 + runHook postInstall 20 + ''; 11 21 12 22 meta = with lib; { 13 23 description = "The Ultimate Oldschool PC Font Pack (TTF Fonts)"; ··· 16 26 license = licenses.cc-by-sa-40; 17 27 maintainers = [ maintainers.endgame ]; 18 28 }; 19 - }).overrideAttrs (_: { 20 - postFetch= '' 21 - mkdir -p $out/share/fonts/truetype 22 - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype 23 - ''; 24 - }) 29 + }
+17 -13
pkgs/data/fonts/undefined-medium/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 3 - let name = "undefined-medium-1.0"; 4 - in (fetchzip rec { 5 - inherit name; 1 + { lib, stdenvNoCC, fetchzip }: 6 2 7 - url = "https://github.com/andirueckel/undefined-medium/archive/v1.0.zip"; 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "undefined-medium"; 5 + version = "1.0"; 8 6 9 - sha256 = "1wa04jzbffshwcxm705yb5wja8wakn8j7fvim1mlih2z1sqw0njk"; 7 + src = fetchzip { 8 + url = "https://github.com/andirueckel/undefined-medium/archive/v1.0.zip"; 9 + hash = "sha256-HG+V7jR7dDI6LeoiCg/8F38lW8Zdo6CyLj2DXy/ff64="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 14 + 15 + install -Dm644 fonts/otf/*.otf -t $out/share/fonts/opentype 16 + 17 + runHook postInstall 18 + ''; 10 19 11 20 meta = with lib; { 12 21 homepage = "https://undefined-medium.com/"; ··· 19 28 license = licenses.ofl; 20 29 platforms = platforms.all; 21 30 }; 22 - }).overrideAttrs (_: { 23 - postFetch = '' 24 - mkdir -p $out/share/fonts 25 - unzip -j $downloadedFile ${name}/fonts/otf/\*.otf -d $out/share/fonts/opentype 26 - ''; 27 - }) 31 + }
+22 -19
pkgs/data/fonts/vollkorn/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, stdenv, fetchzip }: 3 - let 1 + { lib, stdenvNoCC, fetchzip }: 2 + 3 + stdenvNoCC.mkDerivation rec { 4 4 pname = "vollkorn"; 5 5 version = "4.105"; 6 - in 7 - (fetchzip { 8 - name = "${pname}-${version}"; 9 - url = "http://vollkorn-typeface.com/download/vollkorn-${builtins.replaceStrings ["."] ["-"] version}.zip"; 10 - sha256 = "0srff2nqs7353mqcpmvaq156lamfh621py4h1771n0l9ix2c8mss"; 11 - stripRoot = false; 12 6 13 - meta = with lib; { 14 - homepage = "http://vollkorn-typeface.com/"; 15 - description = "The free and healthy typeface for bread and butter use"; 16 - license = licenses.ofl; 17 - platforms = platforms.all; 18 - maintainers = [ maintainers.schmittlauch ]; 7 + src = fetchzip { 8 + url = "http://vollkorn-typeface.com/download/vollkorn-${builtins.replaceStrings ["."] ["-"] version}.zip"; 9 + stripRoot = false; 10 + hash = "sha256-oG79GgCwCavbMFAPakza08IPmt13Gwujrkc/NKTai7g="; 19 11 }; 20 - }).overrideAttrs (_: { 21 - postFetch = '' 12 + 13 + installPhase = '' 14 + runHook preInstall 15 + 22 16 mkdir -pv $out/share/{doc/${pname}-${version},fonts/{opentype,truetype,WOFF,WOFF2}} 23 - unzip $downloadedFile 24 17 cp -v {Fontlog,OFL-FAQ,OFL}.txt $out/share/doc/${pname}-${version}/ 25 18 cp -v PS-OTF/*.otf $out/share/fonts/opentype 26 19 cp -v TTF/*.ttf $out/share/fonts/truetype 27 20 cp -v WOFF/*.woff $out/share/fonts/WOFF 28 21 cp -v WOFF2/*.woff2 $out/share/fonts/WOFF2 22 + 23 + runHook postInstall 29 24 ''; 30 - }) 25 + 26 + meta = with lib; { 27 + homepage = "http://vollkorn-typeface.com/"; 28 + description = "The free and healthy typeface for bread and butter use"; 29 + license = licenses.ofl; 30 + platforms = platforms.all; 31 + maintainers = [ maintainers.schmittlauch ]; 32 + }; 33 + }
+16 -13
pkgs/data/fonts/weather-icons/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "weather-icons"; 5 5 version = "2.0.12"; 6 - in (fetchzip { 7 - name = "weather-icons-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/erikflowers/weather-icons/archive/refs/tags/${version}.zip"; 9 + hash = "sha256-0ZFH2awUo4BkTpK1OsWZ4YKczJHo+HHM6ezGBJAmT+U="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 14 + 15 + install -Dm644 _docs/font-source/weathericons-regular.otf -t $out/share/fonts/opentype 8 16 9 - url = "https://github.com/erikflowers/weather-icons/archive/refs/tags/${version}.zip"; 10 - sha256 = "sha256-NGPzAloeZa1nCazb+mjAbYw7ZYYDoKpLwcvzg1Ly9oM="; 17 + runHook postInstall 18 + ''; 11 19 12 20 meta = with lib; { 13 21 description = "Weather Icons"; ··· 21 29 platforms = platforms.all; 22 30 maintainers = with maintainers; [ pnelson ]; 23 31 }; 24 - }).overrideAttrs (_: { 25 - postFetch = '' 26 - mkdir -p $out/share/fonts 27 - unzip -j $downloadedFile weather-icons-${version}/_docs/font-source/weathericons-regular.otf -d $out/share/fonts/opentype 28 - ''; 29 - }) 32 + }
+15 -14
pkgs/data/fonts/work-sans/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "work-sans"; 5 5 version = "2.010"; 6 - in 7 - (fetchzip { 8 - name = "work-sans-${version}"; 6 + 7 + src = fetchzip { 8 + url = "https://github.com/weiweihuanghuang/Work-Sans/archive/refs/tags/v${version}.zip"; 9 + hash = "sha256-cedcx3CpcPZk3jxxIs5Bz78dxZNtOemvXnUBO6zl2dw="; 10 + }; 11 + 12 + installPhase = '' 13 + runHook preInstall 9 14 10 - url = "https://github.com/weiweihuanghuang/Work-Sans/archive/refs/tags/v${version}.zip"; 15 + install -Dm644 fonts/variable/*.ttf fonts/static/TTF/*.ttf -t $out/share/fonts/opentype 11 16 12 - sha256 = "sha256-S4O5EoKY4w/p+MHeHRCmPyQRAOUfEwNiETxMgNcsrws="; 17 + runHook postInstall 18 + ''; 13 19 14 20 meta = with lib; { 15 21 description = "A grotesque sans"; ··· 18 24 maintainers = [ maintainers.marsam ]; 19 25 platforms = platforms.all; 20 26 }; 21 - }).overrideAttrs (_: { 22 - postFetch = '' 23 - mkdir -p $out/share/fonts 24 - unzip -j $downloadedFile "*/fonts/*.ttf" -d $out/share/fonts/opentype 25 - ''; 26 - }) 27 + }
+17 -12
pkgs/data/fonts/yanone-kaffeesatz/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 2 + 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "yanone-kaffeesatz"; 5 + version = "2004"; 6 + 7 + src = fetchzip { 8 + url = "https://yanone.de/2015/data/UIdownloads/Yanone%20Kaffeesatz.zip"; 9 + stripRoot = false; 10 + hash = "sha256-8yAB73UJ77/c8/VLqiFeT1KtoBQzOh+vWrI+JA2dCoY="; 11 + }; 3 12 4 - (fetchzip { 5 - name = "yanone-kaffeesatz-2004"; 13 + installPhase = '' 14 + runHook preInstall 6 15 7 - url = "https://yanone.de/2015/data/UIdownloads/Yanone%20Kaffeesatz.zip"; 16 + install -Dm644 *.otf -t $out/share/fonts/opentype 8 17 9 - sha256 = "190c4wx7avy3kp98lsyml7kc0jw7csf5n79af2ypbkhsadfsy8di"; 18 + runHook postInstall 19 + ''; 10 20 11 21 meta = { 12 22 description = "The free font classic"; ··· 15 25 homepage = "https://yanone.de/fonts/kaffeesatz/"; 16 26 license = lib.licenses.ofl; 17 27 }; 18 - }).overrideAttrs (_: { 19 - postFetch = '' 20 - mkdir -p $out/share/fonts 21 - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype 22 - ''; 23 - }) 28 + }
+18 -14
pkgs/data/fonts/zilla-slab/default.nix
··· 1 - # when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' 2 - { lib, fetchzip }: 1 + { lib, stdenvNoCC, fetchzip }: 3 2 4 - let 3 + stdenvNoCC.mkDerivation rec { 4 + pname = "zilla-slab"; 5 5 version = "1.002"; 6 - in (fetchzip { 7 - name = "zilla-slab-${version}"; 8 6 9 - url = "https://github.com/mozilla/zilla-slab/releases/download/v${version}/Zilla-Slab-Fonts-v${version}.zip"; 10 - sha256 = "1b1ys28hyjcl4qwbnsyi6527nj01g3d6id9jl23fv6f8fjm4ph0f"; 7 + src = fetchzip { 8 + url = "https://github.com/mozilla/zilla-slab/releases/download/v${version}/Zilla-Slab-Fonts-v${version}.zip"; 9 + stripRoot = false; 10 + hash = "sha256-yOHu+dSWlyI7w1N1teED9R1Fphso2bKAlYDC1KdqBCc="; 11 + }; 12 + 13 + installPhase = '' 14 + runHook preInstall 15 + 16 + mkdir -p $out/share/fonts/truetype 17 + cp -v zilla-slab/ttf/*.ttf $out/share/fonts/truetype/ 18 + 19 + runHook postInstall 20 + ''; 11 21 12 22 meta = with lib; { 13 23 homepage = "https://github.com/mozilla/zilla-slab"; ··· 26 36 maintainers = with maintainers; [ caugner ]; 27 37 platforms = platforms.all; 28 38 }; 29 - }).overrideAttrs (_: { 30 - postFetch = '' 31 - unzip $downloadedFile 32 - mkdir -p $out/share/fonts/truetype 33 - cp -v zilla-slab/ttf/*.ttf $out/share/fonts/truetype/ 34 - ''; 35 - }) 39 + }
+15 -6
pkgs/desktops/deepin/library/gio-qt/default.nix
··· 6 6 , wrapQtAppsHook 7 7 , glibmm 8 8 , doxygen 9 - , buildDocs ? false 9 + , qttools 10 + , qtbase 11 + , buildDocs ? true 10 12 }: 11 13 12 14 stdenv.mkDerivation rec { ··· 20 22 sha256 = "sha256-dlY1CTlXywgGZUonBBe3cDwx8h2xXrPY6Ft/D59nlug="; 21 23 }; 22 24 23 - nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ]; 25 + nativeBuildInputs = [ 26 + cmake 27 + pkg-config 28 + wrapQtAppsHook 29 + ] ++ lib.optional buildDocs [ doxygen qttools.dev ]; 24 30 25 31 cmakeFlags = [ 26 32 "-DCMAKE_INSTALL_LIBDIR=lib" 27 33 "-DPROJECT_VERSION=${version}" 28 - ] 29 - ++ lib.optional (!buildDocs) [ "-DBUILD_DOCS=OFF" ]; 34 + ] ++ lib.optional (!buildDocs) [ "-DBUILD_DOCS=OFF" ]; 30 35 31 - buildInputs = lib.optional buildDocs doxygen; 36 + propagatedBuildInputs = [ glibmm ]; 32 37 33 - propagatedBuildInputs = [ glibmm ]; 38 + preConfigure = '' 39 + # qt.qpa.plugin: Could not find the Qt platform plugin "minimal" 40 + # A workaround is to set QT_PLUGIN_PATH explicitly 41 + export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix} 42 + ''; 34 43 35 44 meta = with lib; { 36 45 description = "Gio wrapper for Qt applications";
+2 -2
pkgs/desktops/gnome/apps/gedit/default.nix
··· 28 28 29 29 stdenv.mkDerivation rec { 30 30 pname = "gedit"; 31 - version = "43.2"; 31 + version = "44.2"; 32 32 33 33 outputs = [ "out" "devdoc" ]; 34 34 35 35 src = fetchurl { 36 36 url = "mirror://gnome/sources/gedit/${lib.versions.major version}/gedit-${version}.tar.xz"; 37 - sha256 = "+VDS01xZS7bI28n1RAytd4jKCoaI4rB4Rvg96aTj/CU="; 37 + sha256 = "O7sbN3XUwnfa9UqqtEsOuDpOsfCfA5GAAEHJ5WiT7BE="; 38 38 }; 39 39 40 40 patches = [
+2 -2
pkgs/desktops/gnome/games/gnome-sudoku/default.nix
··· 20 20 21 21 stdenv.mkDerivation rec { 22 22 pname = "gnome-sudoku"; 23 - version = "43.0"; 23 + version = "43.1"; 24 24 25 25 src = fetchurl { 26 26 url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz"; 27 - sha256 = "ftJ0KJz1ykELHJKxU3BQpcNi99szmaMrU0PQ3nBGbkk="; 27 + sha256 = "we6/QJPzNrSJ+5HHMO2mcdpo7vZeYZehKYqVRseImZ8="; 28 28 }; 29 29 30 30 nativeBuildInputs = [
+3 -11
pkgs/desktops/gnome/misc/gpaste/default.nix
··· 1 1 { stdenv 2 2 , lib 3 3 , fetchFromGitHub 4 - , fetchpatch 5 4 , appstream-glib 6 5 , clutter 7 6 , gjs ··· 22 21 }: 23 22 24 23 stdenv.mkDerivation rec { 25 - version = "43.0"; 24 + version = "43.1"; 26 25 pname = "gpaste"; 27 26 28 27 src = fetchFromGitHub { 29 28 owner = "Keruspe"; 30 29 repo = "GPaste"; 31 30 rev = "v${version}"; 32 - sha256 = "sha256-F+AWTYVK145RzJ1Zldh4Q4R/hN/D7aXO3SIJ1t6ClWs="; 31 + sha256 = "sha256-wOxhaYWX76jSur3uh75vDfAedbiLh2ikoMuobCZx3jE="; 33 32 }; 34 33 35 34 patches = [ 36 35 ./fix-paths.patch 37 - 38 - # Build against GCR 4. 39 - # Patch was temporarily reverted. 40 - # https://github.com/Keruspe/GPaste/pull/409 41 - (fetchpatch { 42 - url = "https://github.com/Keruspe/GPaste/commit/0378cb4a657042ce5321f1d9728cff31e55bede6.patch"; 43 - sha256 = "0Ngr+/fS5/wICR84GEiE0pXEXQ/f/3G59lDivH167m8="; 44 - }) 45 36 ]; 46 37 47 38 # TODO: switch to substituteAll with placeholder ··· 79 70 ]; 80 71 81 72 mesonFlags = [ 73 + "-Dgcr3=false" # Build with gcr4 82 74 "-Dcontrol-center-keybindings-dir=${placeholder "out"}/share/gnome-control-center/keybindings" 83 75 "-Ddbus-services-dir=${placeholder "out"}/share/dbus-1/services" 84 76 "-Dsystemd-user-unit-dir=${placeholder "out"}/etc/systemd/user"
+40
pkgs/development/compilers/llvm/15/bintools/default.nix
··· 1 + { runCommand, stdenv, llvm, lld, version }: 2 + 3 + let 4 + prefix = 5 + if stdenv.hostPlatform != stdenv.targetPlatform 6 + then "${stdenv.targetPlatform.config}-" 7 + else ""; 8 + in runCommand "llvm-binutils-${version}" { 9 + preferLocalBuild = true; 10 + passthru = { 11 + isLLVM = true; 12 + }; 13 + } '' 14 + mkdir -p $out/bin 15 + for prog in ${lld}/bin/*; do 16 + ln -s $prog $out/bin/${prefix}$(basename $prog) 17 + done 18 + for prog in ${llvm}/bin/*; do 19 + ln -sf $prog $out/bin/${prefix}$(basename $prog) 20 + done 21 + 22 + ln -s ${llvm}/bin/llvm-ar $out/bin/${prefix}ar 23 + ln -s ${llvm}/bin/llvm-ar $out/bin/${prefix}dlltool 24 + ln -s ${llvm}/bin/llvm-ar $out/bin/${prefix}ranlib 25 + ln -s ${llvm}/bin/llvm-cxxfilt $out/bin/${prefix}c++filt 26 + ln -s ${llvm}/bin/llvm-debuginfod $out/bin/${prefix}debuginfod 27 + ln -s ${llvm}/bin/llvm-debuginfod-find $out/bin/${prefix}debuginfod-find 28 + ln -s ${llvm}/bin/llvm-dwp $out/bin/${prefix}dwp 29 + ln -s ${llvm}/bin/llvm-nm $out/bin/${prefix}nm 30 + ln -s ${llvm}/bin/llvm-objcopy $out/bin/${prefix}objcopy 31 + ln -s ${llvm}/bin/llvm-objcopy $out/bin/${prefix}strip 32 + ln -s ${llvm}/bin/llvm-objdump $out/bin/${prefix}objdump 33 + ln -s ${llvm}/bin/llvm-rc $out/bin/${prefix}windres 34 + ln -s ${llvm}/bin/llvm-readobj $out/bin/${prefix}readelf 35 + ln -s ${llvm}/bin/llvm-size $out/bin/${prefix}size 36 + ln -s ${llvm}/bin/llvm-strings $out/bin/${prefix}strings 37 + ln -s ${llvm}/bin/llvm-symbolizer $out/bin/${prefix}addr2line 38 + 39 + ln -s ${lld}/bin/lld $out/bin/${prefix}ld 40 + ''
+129
pkgs/development/compilers/llvm/15/clang/default.nix
··· 1 + { lib, stdenv, llvm_meta 2 + , monorepoSrc, runCommand 3 + , substituteAll, cmake, ninja, libxml2, libllvm, version, python3 4 + , buildLlvmTools 5 + , fixDarwinDylibNames 6 + , enableManpages ? false 7 + }: 8 + 9 + let 10 + self = stdenv.mkDerivation (rec { 11 + pname = "clang"; 12 + inherit version; 13 + 14 + src = runCommand "${pname}-src-${version}" {} '' 15 + mkdir -p "$out" 16 + cp -r ${monorepoSrc}/cmake "$out" 17 + cp -r ${monorepoSrc}/${pname} "$out" 18 + cp -r ${monorepoSrc}/clang-tools-extra "$out" 19 + ''; 20 + 21 + sourceRoot = "${src.name}/${pname}"; 22 + 23 + nativeBuildInputs = [ cmake ninja python3 ] 24 + ++ lib.optional enableManpages python3.pkgs.sphinx 25 + ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; 26 + 27 + buildInputs = [ libxml2 libllvm ]; 28 + 29 + cmakeFlags = [ 30 + "-DCLANG_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/clang" 31 + "-DCLANGD_BUILD_XPC=OFF" 32 + "-DLLVM_ENABLE_RTTI=ON" 33 + ] ++ lib.optionals enableManpages [ 34 + "-DCLANG_INCLUDE_DOCS=ON" 35 + "-DLLVM_ENABLE_SPHINX=ON" 36 + "-DSPHINX_OUTPUT_MAN=ON" 37 + "-DSPHINX_OUTPUT_HTML=OFF" 38 + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" 39 + ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ 40 + "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen" 41 + "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen" 42 + ]; 43 + 44 + patches = [ 45 + ./purity.patch 46 + # https://reviews.llvm.org/D51899 47 + ./gnu-install-dirs.patch 48 + (substituteAll { 49 + src = ../../clang-11-12-LLVMgold-path.patch; 50 + libllvmLibdir = "${libllvm.lib}/lib"; 51 + }) 52 + ]; 53 + 54 + postPatch = '' 55 + (cd tools && ln -s ../../clang-tools-extra extra) 56 + 57 + sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \ 58 + -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \ 59 + lib/Driver/ToolChains/*.cpp 60 + '' + lib.optionalString stdenv.hostPlatform.isMusl '' 61 + sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp 62 + ''; 63 + 64 + outputs = [ "out" "lib" "dev" "python" ]; 65 + 66 + postInstall = '' 67 + ln -sv $out/bin/clang $out/bin/cpp 68 + 69 + # Move libclang to 'lib' output 70 + moveToOutput "lib/libclang.*" "$lib" 71 + moveToOutput "lib/libclang-cpp.*" "$lib" 72 + substituteInPlace $dev/lib/cmake/clang/ClangTargets-release.cmake \ 73 + --replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang." \ 74 + --replace "\''${_IMPORT_PREFIX}/lib/libclang-cpp." "$lib/lib/libclang-cpp." 75 + 76 + mkdir -p $python/bin $python/share/clang/ 77 + mv $out/bin/{git-clang-format,scan-view} $python/bin 78 + if [ -e $out/bin/set-xcode-analyzer ]; then 79 + mv $out/bin/set-xcode-analyzer $python/bin 80 + fi 81 + mv $out/share/clang/*.py $python/share/clang 82 + rm $out/bin/c-index-test 83 + patchShebangs $python/bin 84 + 85 + mkdir -p $dev/bin 86 + cp bin/clang-tblgen $dev/bin 87 + ''; 88 + 89 + passthru = { 90 + isClang = true; 91 + inherit libllvm; 92 + }; 93 + 94 + meta = llvm_meta // { 95 + homepage = "https://clang.llvm.org/"; 96 + description = "A C language family frontend for LLVM"; 97 + longDescription = '' 98 + The Clang project provides a language front-end and tooling 99 + infrastructure for languages in the C language family (C, C++, Objective 100 + C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project. 101 + It aims to deliver amazingly fast compiles, extremely useful error and 102 + warning messages and to provide a platform for building great source 103 + level tools. The Clang Static Analyzer and clang-tidy are tools that 104 + automatically find bugs in your code, and are great examples of the sort 105 + of tools that can be built using the Clang frontend as a library to 106 + parse C/C++ code. 107 + ''; 108 + mainProgram = "clang"; 109 + }; 110 + } // lib.optionalAttrs enableManpages { 111 + pname = "clang-manpages"; 112 + 113 + ninjaFlags = [ "docs-clang-man" ]; 114 + 115 + installPhase = '' 116 + mkdir -p $out/share/man/man1 117 + # Manually install clang manpage 118 + cp docs/man/*.1 $out/share/man/man1/ 119 + ''; 120 + 121 + outputs = [ "out" ]; 122 + 123 + doCheck = false; 124 + 125 + meta = llvm_meta // { 126 + description = "man page for Clang ${version}"; 127 + }; 128 + }); 129 + in self
+105
pkgs/development/compilers/llvm/15/clang/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index c27beec313d7..480f13e73c9f 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -78,15 +78,17 @@ if(CLANG_BUILT_STANDALONE) 6 + if (NOT LLVM_CONFIG_FOUND) 7 + # Pull values from LLVMConfig.cmake. We can drop this once the llvm-config 8 + # path is removed. 9 + - set(MAIN_INCLUDE_DIR "${LLVM_INCLUDE_DIR}") 10 + + set(INCLUDE_DIRS ${LLVM_INCLUDE_DIRS}) 11 + set(LLVM_OBJ_DIR "${LLVM_BINARY_DIR}") 12 + # N.B. this is just a default value, the CACHE PATHs below can be overriden. 13 + set(MAIN_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../llvm") 14 + set(TOOLS_BINARY_DIR "${LLVM_TOOLS_BINARY_DIR}") 15 + set(LIBRARY_DIR "${LLVM_LIBRARY_DIR}") 16 + + else() 17 + + set(INCLUDE_DIRS "${LLVM_BINARY_DIR}/include" "${MAIN_INCLUDE_DIR}") 18 + endif() 19 + 20 + - set(LLVM_MAIN_INCLUDE_DIR "${MAIN_INCLUDE_DIR}" CACHE PATH "Path to llvm/include") 21 + + set(LLVM_INCLUDE_DIRS ${INCLUDE_DIRS} CACHE PATH "Path to llvm/include and any other header dirs needed") 22 + set(LLVM_BINARY_DIR "${LLVM_OBJ_ROOT}" CACHE PATH "Path to LLVM build tree") 23 + set(LLVM_MAIN_SRC_DIR "${MAIN_SRC_DIR}" CACHE PATH "Path to LLVM source tree") 24 + set(LLVM_TOOLS_BINARY_DIR "${TOOLS_BINARY_DIR}" CACHE PATH "Path to llvm/bin") 25 + @@ -128,7 +130,7 @@ if(CLANG_BUILT_STANDALONE) 26 + set(LLVM_INCLUDE_TESTS ON) 27 + endif() 28 + 29 + - include_directories("${LLVM_BINARY_DIR}/include" "${LLVM_MAIN_INCLUDE_DIR}") 30 + + include_directories(${LLVM_INCLUDE_DIRS}) 31 + link_directories("${LLVM_LIBRARY_DIR}") 32 + 33 + set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) 34 + diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake 35 + index 21ac332e4f5f..b16c314bd1e2 100644 36 + --- a/cmake/modules/AddClang.cmake 37 + +++ b/cmake/modules/AddClang.cmake 38 + @@ -119,8 +119,8 @@ macro(add_clang_library name) 39 + install(TARGETS ${lib} 40 + COMPONENT ${lib} 41 + ${export_to_clangtargets} 42 + - LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} 43 + - ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} 44 + + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" 45 + + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" 46 + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") 47 + 48 + if (NOT LLVM_ENABLE_IDE) 49 + diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt 50 + index 6e2060991b92..b9bc930d26b8 100644 51 + --- a/lib/Headers/CMakeLists.txt 52 + +++ b/lib/Headers/CMakeLists.txt 53 + @@ -420,7 +420,7 @@ add_header_target("openmp-resource-headers" ${openmp_wrapper_files}) 54 + add_header_target("windows-resource-headers" ${windows_only_files}) 55 + add_header_target("utility-resource-headers" ${utility_files}) 56 + 57 + -set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include) 58 + +set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include) 59 + 60 + ############################################################# 61 + # Install rules for the catch-all clang-resource-headers target 62 + diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt 63 + index 8d95d0900e8c..ebc70ff7526d 100644 64 + --- a/tools/libclang/CMakeLists.txt 65 + +++ b/tools/libclang/CMakeLists.txt 66 + @@ -180,7 +180,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS}) 67 + COMPONENT 68 + libclang-python-bindings 69 + DESTINATION 70 + - "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages") 71 + + "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages") 72 + endforeach() 73 + if(NOT LLVM_ENABLE_IDE) 74 + add_custom_target(libclang-python-bindings) 75 + diff --git a/tools/scan-build-py/CMakeLists.txt b/tools/scan-build-py/CMakeLists.txt 76 + index 061dc7ef4dd9..adc54b2edc32 100644 77 + --- a/tools/scan-build-py/CMakeLists.txt 78 + +++ b/tools/scan-build-py/CMakeLists.txt 79 + @@ -88,7 +88,7 @@ foreach(lib ${LibScanbuild}) 80 + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/lib/libscanbuild/${lib}) 81 + list(APPEND Depends ${CMAKE_BINARY_DIR}/lib/libscanbuild/${lib}) 82 + install(PROGRAMS lib/libscanbuild/${lib} 83 + - DESTINATION lib/libscanbuild 84 + + DESTINATION "${CMAKE_INSTALL_LIBDIR}/libscanbuild" 85 + COMPONENT scan-build-py) 86 + endforeach() 87 + 88 + @@ -106,7 +106,7 @@ foreach(resource ${LibScanbuildResources}) 89 + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/lib/libscanbuild/resources/${resource}) 90 + list(APPEND Depends ${CMAKE_BINARY_DIR}/lib/libscanbuild/resources/${resource}) 91 + install(PROGRAMS lib/libscanbuild/resources/${resource} 92 + - DESTINATION lib/libscanbuild/resources 93 + + DESTINATION "${CMAKE_INSTALL_LIBDIR}/libscanbuild/resources" 94 + COMPONENT scan-build-py) 95 + endforeach() 96 + 97 + @@ -122,7 +122,7 @@ foreach(lib ${LibEar}) 98 + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/lib/libear/${lib}) 99 + list(APPEND Depends ${CMAKE_BINARY_DIR}/lib/libear/${lib}) 100 + install(PROGRAMS lib/libear/${lib} 101 + - DESTINATION lib/libear 102 + + DESTINATION "${CMAKE_INSTALL_LIBDIR}/libear" 103 + COMPONENT scan-build-py) 104 + endforeach() 105 +
+29
pkgs/development/compilers/llvm/15/clang/purity.patch
··· 1 + From 4add81bba40dcec62c4ea4481be8e35ac53e89d8 Mon Sep 17 00:00:00 2001 2 + From: Will Dietz <w@wdtz.org> 3 + Date: Thu, 18 May 2017 11:56:12 -0500 4 + Subject: [PATCH] "purity" patch for 5.0 5 + 6 + --- 7 + lib/Driver/ToolChains/Gnu.cpp | 7 ------- 8 + 1 file changed, 7 deletions(-) 9 + 10 + diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp 11 + index fe3c0191bb..c6a482bece 100644 12 + --- a/lib/Driver/ToolChains/Gnu.cpp 13 + +++ b/lib/Driver/ToolChains/Gnu.cpp 14 + @@ -487,13 +487,7 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA, 15 + } else { 16 + if (Args.hasArg(options::OPT_rdynamic)) 17 + CmdArgs.push_back("-export-dynamic"); 18 + 19 + - if (!Args.hasArg(options::OPT_shared) && !IsStaticPIE && 20 + - !Args.hasArg(options::OPT_r)) { 21 + - CmdArgs.push_back("-dynamic-linker"); 22 + - CmdArgs.push_back(Args.MakeArgString(Twine(D.DyldPrefix) + 23 + - ToolChain.getDynamicLinker(Args))); 24 + - } 25 + } 26 + 27 + CmdArgs.push_back("-o"); 28 + -- 29 + 2.11.0
+21
pkgs/development/compilers/llvm/15/compiler-rt/X86-support-extension.patch
··· 1 + diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt 2 + index 3a66dd9c3fb..7efc85d9f9f 100644 3 + --- a/lib/builtins/CMakeLists.txt 4 + +++ b/lib/builtins/CMakeLists.txt 5 + @@ -348,4 +348,8 @@ if (NOT MSVC) 6 + 7 + + set(i486_SOURCES ${i386_SOURCES}) 8 + + set(i586_SOURCES ${i386_SOURCES}) 9 + + set(i686_SOURCES ${i386_SOURCES}) 10 + + 11 + if (WIN32) 12 + set(i386_SOURCES 13 + ${i386_SOURCES} 14 + @@ -723,6 +723,7 @@ else () 15 + endif() 16 + 17 + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) 18 + + message("arch: ${arch}") 19 + if (CAN_TARGET_${arch}) 20 + # For ARM archs, exclude any VFP builtins if VFP is not supported 21 + if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
+32
pkgs/development/compilers/llvm/15/compiler-rt/armv7l.patch
··· 1 + diff -ur a/cmake/builtin-config-ix.cmake b/cmake/builtin-config-ix.cmake 2 + --- a/cmake/builtin-config-ix.cmake @llvm 15.0.6 3 + +++ b/cmake/builtin-config-ix.cmake 4 + @@ -46,7 +46,7 @@ 5 + 6 + set(ARM64 aarch64) 7 + -set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv8m.main armv8.1m.main) 8 + +set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv7l armv8m.main armv8.1m.main) 9 + set(AVR avr) 10 + set(HEXAGON hexagon) 11 + set(X86 i386) 12 + set(X86_64 x86_64) 13 + diff -ur a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt 14 + --- a/lib/builtins/CMakeLists.txt @llvm 15.0.6 15 + +++ b/lib/builtins/CMakeLists.txt 16 + @@ -565,6 +565,7 @@ 17 + set(armv7_SOURCES ${arm_SOURCES}) 18 + set(armv7s_SOURCES ${arm_SOURCES}) 19 + set(armv7k_SOURCES ${arm_SOURCES}) 20 + +set(armv7l_SOURCES ${arm_SOURCES}) 21 + set(arm64_SOURCES ${aarch64_SOURCES}) 22 + 23 + # macho_embedded archs 24 + @@ -734,7 +735,7 @@ 25 + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) 26 + if (CAN_TARGET_${arch}) 27 + # For ARM archs, exclude any VFP builtins if VFP is not supported 28 + - if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em|armv8m.main|armv8.1m.main)$") 29 + + if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7l|armv7m|armv7em|armv8m.main|armv8.1m.main)$") 30 + string(REPLACE ";" " " _TARGET_${arch}_CFLAGS "${TARGET_${arch}_CFLAGS}") 31 + check_compile_definition(__VFP_FP__ "${CMAKE_C_FLAGS} ${_TARGET_${arch}_CFLAGS}" COMPILER_RT_HAS_${arch}_VFP) 32 + if(NOT COMPILER_RT_HAS_${arch}_VFP)
+71
pkgs/development/compilers/llvm/15/compiler-rt/darwin-targetconditionals.patch
··· 1 + diff --git a/lib/sanitizer_common/sanitizer_mac.cpp b/lib/sanitizer_common/sanitizer_mac.cpp 2 + --- a/lib/sanitizer_common/sanitizer_mac.cpp 3 + +++ b/lib/sanitizer_common/sanitizer_mac.cpp 4 + @@ -613,9 +613,15 @@ HandleSignalMode GetHandleSignalMode(int signum) { 5 + // Offset example: 6 + // XNU 17 -- macOS 10.13 -- iOS 11 -- tvOS 11 -- watchOS 4 7 + constexpr u16 GetOSMajorKernelOffset() { 8 + - if (TARGET_OS_OSX) return 4; 9 + - if (TARGET_OS_IOS || TARGET_OS_TV) return 6; 10 + - if (TARGET_OS_WATCH) return 13; 11 + +#if TARGET_OS_OSX 12 + + return 4; 13 + +#endif 14 + +#if TARGET_OS_IOS || TARGET_OS_TV 15 + + return 6; 16 + +#endif 17 + +#if TARGET_OS_WATCH 18 + + return 13; 19 + +#endif 20 + } 21 + 22 + using VersStr = char[64]; 23 + @@ -627,13 +633,13 @@ static uptr ApproximateOSVersionViaKernelVersion(VersStr vers) { 24 + u16 os_major = kernel_major - offset; 25 + 26 + const char *format = "%d.0"; 27 + - if (TARGET_OS_OSX) { 28 + - if (os_major >= 16) { // macOS 11+ 29 + - os_major -= 5; 30 + - } else { // macOS 10.15 and below 31 + - format = "10.%d"; 32 + - } 33 + +#if TARGET_OS_OSX 34 + + if (os_major >= 16) { // macOS 11+ 35 + + os_major -= 5; 36 + + } else { // macOS 10.15 and below 37 + + format = "10.%d"; 38 + } 39 + +#endif 40 + return internal_snprintf(vers, sizeof(VersStr), format, os_major); 41 + } 42 + 43 + @@ -681,15 +687,14 @@ void ParseVersion(const char *vers, u16 *major, u16 *minor) { 44 + // Aligned versions example: 45 + // macOS 10.15 -- iOS 13 -- tvOS 13 -- watchOS 6 46 + static void MapToMacos(u16 *major, u16 *minor) { 47 + - if (TARGET_OS_OSX) 48 + - return; 49 + - 50 + - if (TARGET_OS_IOS || TARGET_OS_TV) 51 + +#if !TARGET_OS_OSX 52 + +#if TARGET_OS_IOS || TARGET_OS_TV 53 + *major += 2; 54 + - else if (TARGET_OS_WATCH) 55 + +#elif TARGET_OS_WATCH 56 + *major += 9; 57 + - else 58 + +#else 59 + UNREACHABLE("unsupported platform"); 60 + +#endif 61 + 62 + if (*major >= 16) { // macOS 11+ 63 + *major -= 5; 64 + @@ -697,6 +702,7 @@ static void MapToMacos(u16 *major, u16 *minor) { 65 + *minor = *major; 66 + *major = 10; 67 + } 68 + +#endif 69 + } 70 + 71 + static MacosVersion GetMacosAlignedVersionInternal() {
+156
pkgs/development/compilers/llvm/15/compiler-rt/default.nix
··· 1 + { lib, stdenv, llvm_meta, version 2 + , monorepoSrc, runCommand 3 + , cmake, ninja, python3, xcbuild, libllvm, libcxxabi, libxcrypt 4 + , doFakeLibgcc ? stdenv.hostPlatform.isFreeBSD 5 + }: 6 + 7 + let 8 + 9 + useLLVM = stdenv.hostPlatform.useLLVM or false; 10 + bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none"; 11 + haveLibc = stdenv.cc.libc != null; 12 + inherit (stdenv.hostPlatform) isMusl isGnu; 13 + 14 + baseName = "compiler-rt"; 15 + 16 + src = runCommand "${baseName}-src-${version}" {} '' 17 + mkdir -p "$out" 18 + cp -r ${monorepoSrc}/cmake "$out" 19 + cp -r ${monorepoSrc}/${baseName} "$out" 20 + ''; 21 + in 22 + 23 + stdenv.mkDerivation { 24 + pname = baseName + lib.optionalString (haveLibc) "-libc"; 25 + inherit version; 26 + 27 + inherit src; 28 + sourceRoot = "${src.name}/${baseName}"; 29 + 30 + nativeBuildInputs = [ cmake ninja python3 libllvm.dev ] 31 + ++ lib.optional stdenv.isDarwin xcbuild.xcrun; 32 + buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi; 33 + 34 + NIX_CFLAGS_COMPILE = [ 35 + "-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0" 36 + ]; 37 + 38 + cmakeFlags = [ 39 + "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON" 40 + "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}" 41 + "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}" 42 + ] ++ lib.optionals (haveLibc && stdenv.hostPlatform.libc == "glibc") [ 43 + "-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include" 44 + ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [ 45 + "-DCOMPILER_RT_BUILD_SANITIZERS=OFF" 46 + "-DCOMPILER_RT_BUILD_XRAY=OFF" 47 + "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF" 48 + "-DCOMPILER_RT_BUILD_PROFILE=OFF" 49 + "-DCOMPILER_RT_BUILD_MEMPROF=OFF" 50 + "-DCOMPILER_RT_BUILD_ORC=OFF" # may be possible to build with musl if necessary 51 + ] ++ lib.optionals (useLLVM || bareMetal) [ 52 + "-DCOMPILER_RT_BUILD_PROFILE=OFF" 53 + ] ++ lib.optionals ((useLLVM && !haveLibc) || bareMetal) [ 54 + "-DCMAKE_C_COMPILER_WORKS=ON" 55 + "-DCMAKE_CXX_COMPILER_WORKS=ON" 56 + "-DCOMPILER_RT_BAREMETAL_BUILD=ON" 57 + "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" 58 + ] ++ lib.optionals (useLLVM && !haveLibc) [ 59 + "-DCMAKE_C_FLAGS=-nodefaultlibs" 60 + ] ++ lib.optionals (useLLVM) [ 61 + "-DCOMPILER_RT_BUILD_BUILTINS=ON" 62 + #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program 63 + "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY" 64 + ] ++ lib.optionals (bareMetal) [ 65 + "-DCOMPILER_RT_OS_DIR=baremetal" 66 + ] ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ 67 + "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON" 68 + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" 69 + "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}" 70 + 71 + # `COMPILER_RT_DEFAULT_TARGET_ONLY` does not apply to Darwin: 72 + # https://github.com/llvm/llvm-project/blob/27ef42bec80b6c010b7b3729ed0528619521a690/compiler-rt/cmake/base-config-ix.cmake#L153 73 + "-DCOMPILER_RT_ENABLE_IOS=OFF" 74 + ]; 75 + 76 + outputs = [ "out" "dev" ]; 77 + 78 + patches = [ 79 + ./X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config 80 + ./gnu-install-dirs.patch 81 + # ld-wrapper dislikes `-rpath-link //nix/store`, so we normalize away the 82 + # extra `/`. 83 + ./normalize-var.patch 84 + # Prevent a compilation error on darwin 85 + ./darwin-targetconditionals.patch 86 + # See: https://github.com/NixOS/nixpkgs/pull/186575 87 + ../../common/compiler-rt/darwin-plistbuddy-workaround.patch 88 + # See: https://github.com/NixOS/nixpkgs/pull/194634#discussion_r999829893 89 + ./armv7l.patch 90 + ] 91 + # The `compiler-rt` build inspects `ld` to figure out whether it needs to 92 + # explicitly call `codesign`: 93 + # https://github.com/llvm/llvm-project/blob/27ef42bec80b6c010b7b3729ed0528619521a690/compiler-rt/cmake/Modules/AddCompilerRT.cmake#L409-L422 94 + # 95 + # In our case, despite (currently) having an `ld` version than 609, we don't 96 + # need an explicit codesigning step because `postLinkSignHook` handles this 97 + # for us. 98 + # 99 + # Unfortunately there isn't an easy way to override 100 + # `NEED_EXPLICIT_ADHOC_CODESIGN`. 101 + # 102 + # Adding `codesign` as a build input also doesn't currently work because, as 103 + # of this writing, `codesign` in nixpkgs doesn't support the `--sign` alias 104 + # which the `compiler-rt` build uses. See here for context: 105 + # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272116014 106 + # 107 + # So, for now, we patch `compiler-rt` to skip the explicit codesigning step. 108 + ++ lib.optional stdenv.hostPlatform.isDarwin ./skip-explicit-codesign.patch; 109 + 110 + # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks 111 + # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra 112 + # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd 113 + # get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by 114 + # a flag and turn the flag off during the stdenv build. 115 + postPatch = lib.optionalString (!stdenv.isDarwin) '' 116 + substituteInPlace cmake/builtin-config-ix.cmake \ 117 + --replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)' 118 + '' + lib.optionalString stdenv.isDarwin '' 119 + substituteInPlace cmake/builtin-config-ix.cmake \ 120 + --replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)' 121 + substituteInPlace cmake/config-ix.cmake \ 122 + --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)' 123 + '' + lib.optionalString (useLLVM) '' 124 + substituteInPlace lib/builtins/int_util.c \ 125 + --replace "#include <stdlib.h>" "" 126 + substituteInPlace lib/builtins/clear_cache.c \ 127 + --replace "#include <assert.h>" "" 128 + substituteInPlace lib/builtins/cpu_model.c \ 129 + --replace "#include <assert.h>" "" 130 + ''; 131 + 132 + # Hack around weird upsream RPATH bug 133 + postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' 134 + ln -s "$out/lib"/*/* "$out/lib" 135 + '' + lib.optionalString (useLLVM) '' 136 + ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o 137 + ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o 138 + ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o 139 + ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o 140 + '' + lib.optionalString doFakeLibgcc '' 141 + ln -s $out/lib/freebsd/libclang_rt.builtins-*.a $out/lib/libgcc.a 142 + ''; 143 + 144 + meta = llvm_meta // { 145 + homepage = "https://compiler-rt.llvm.org/"; 146 + description = "Compiler runtime libraries"; 147 + longDescription = '' 148 + The compiler-rt project provides highly tuned implementations of the 149 + low-level code generator support routines like "__fixunsdfdi" and other 150 + calls generated when a target doesn't have a short sequence of native 151 + instructions to implement a core IR operation. It also provides 152 + implementations of run-time libraries for dynamic testing tools such as 153 + AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer. 154 + ''; 155 + }; 156 + }
+20
pkgs/development/compilers/llvm/15/compiler-rt/gnu-install-dirs.patch
··· 1 + diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake 2 + index 8a6219568b3f..30ee68a47ccf 100644 3 + --- a/cmake/base-config-ix.cmake 4 + +++ b/cmake/base-config-ix.cmake 5 + @@ -100,13 +100,13 @@ endif() 6 + if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE) 7 + set(COMPILER_RT_OUTPUT_LIBRARY_DIR 8 + ${COMPILER_RT_OUTPUT_DIR}/lib) 9 + - extend_path(default_install_path "${COMPILER_RT_INSTALL_PATH}" lib) 10 + + extend_path(default_install_path "${COMPILER_RT_INSTALL_PATH}" "${CMAKE_INSTALL_LIBDIR}") 11 + set(COMPILER_RT_INSTALL_LIBRARY_DIR "${default_install_path}" CACHE PATH 12 + "Path where built compiler-rt libraries should be installed.") 13 + else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE) 14 + set(COMPILER_RT_OUTPUT_LIBRARY_DIR 15 + ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR}) 16 + - extend_path(default_install_path "${COMPILER_RT_INSTALL_PATH}" "lib/${COMPILER_RT_OS_DIR}") 17 + + extend_path(default_install_path "${COMPILER_RT_INSTALL_PATH}" "${CMAKE_INSTALL_LIBDIR}/${COMPILER_RT_OS_DIR}") 18 + set(COMPILER_RT_INSTALL_LIBRARY_DIR "${default_install_path}" CACHE PATH 19 + "Path where built compiler-rt libraries should be installed.") 20 + endif()
+16
pkgs/development/compilers/llvm/15/compiler-rt/normalize-var.patch
··· 1 + diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake 2 + index f1f46fb9599c..6f19e69507ba 100644 3 + --- a/cmake/Modules/CompilerRTUtils.cmake 4 + +++ b/cmake/Modules/CompilerRTUtils.cmake 5 + @@ -302,8 +302,9 @@ macro(load_llvm_config) 6 + # Get some LLVM variables from LLVMConfig. 7 + include("${LLVM_CMAKE_PATH}/LLVMConfig.cmake") 8 + 9 + - set(LLVM_LIBRARY_OUTPUT_INTDIR 10 + - ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX}) 11 + + get_filename_component(LLVM_LIBRARY_OUTPUT_INTDIR 12 + + ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX} 13 + + REALPATH) 14 + endif() 15 + endmacro() 16 +
+12
pkgs/development/compilers/llvm/15/compiler-rt/skip-explicit-codesign.patch
··· 1 + diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake 2 + --- a/cmake/Modules/AddCompilerRT.cmake 3 + +++ b/cmake/Modules/AddCompilerRT.cmake 4 + @@ -406,7 +406,7 @@ function(add_compiler_rt_runtime name type) 5 + if (HAD_ERROR) 6 + message(FATAL_ERROR "${CMAKE_LINKER} failed with status ${HAD_ERROR}") 7 + endif() 8 + - set(NEED_EXPLICIT_ADHOC_CODESIGN 1) 9 + + set(NEED_EXPLICIT_ADHOC_CODESIGN 0) # `postLinkSignHook` handles this for us 10 + if ("${LD_V_OUTPUT}" MATCHES ".*ld64-([0-9.]+).*") 11 + string(REGEX REPLACE ".*ld64-([0-9.]+).*" "\\1" HOST_LINK_VERSION ${LD_V_OUTPUT}) 12 + if (HOST_LINK_VERSION VERSION_GREATER_EQUAL 609)
+354
pkgs/development/compilers/llvm/15/default.nix
··· 1 + { lowPrio, newScope, pkgs, lib, stdenv, stdenvNoCC, cmake, ninja 2 + , gccForLibs, preLibcCrossHeaders 3 + , libxml2, python3, fetchFromGitHub, overrideCC, wrapCCWith, wrapBintoolsWith 4 + , buildLlvmTools # tools, but from the previous stage, for cross 5 + , targetLlvmLibraries # libraries, but from the next stage, for cross 6 + , targetLlvm 7 + # This is the default binutils, but with *this* version of LLD rather 8 + # than the default LLVM verion's, if LLD is the choice. We use these for 9 + # the `useLLVM` bootstrapping below. 10 + , bootBintoolsNoLibc ? 11 + if stdenv.targetPlatform.linker == "lld" 12 + then null 13 + else pkgs.bintoolsNoLibc 14 + , bootBintools ? 15 + if stdenv.targetPlatform.linker == "lld" 16 + then null 17 + else pkgs.bintools 18 + , darwin 19 + # LLVM release information; specify one of these but not both: 20 + , gitRelease ? null 21 + # i.e.: 22 + # { 23 + # version = /* i.e. "15.0.0" */; 24 + # rev = /* commit SHA */; 25 + # rev-version = /* human readable version; i.e. "unstable-2022-26-07" */; 26 + # sha256 = /* checksum for this release, can omit if specifying your own `monorepoSrc` */; 27 + # } 28 + , officialRelease ? { version = "15.0.7"; sha256 = "sha256-wjuZQyXQ/jsmvy6y1aksCcEDXGBjuhpgngF3XQJ/T4s="; } 29 + # i.e.: 30 + # { 31 + # version = /* i.e. "15.0.0" */; 32 + # candidate = /* optional; if specified, should be: "rcN" */ 33 + # sha256 = /* checksum for this release, can omit if specifying your own `monorepoSrc` */; 34 + # } 35 + # By default, we'll try to fetch a release from `github:llvm/llvm-project` 36 + # corresponding to the `gitRelease` or `officialRelease` specified. 37 + # 38 + # You can provide your own LLVM source by specifying this arg but then it's up 39 + # to you to make sure that the LLVM repo given matches the release configuration 40 + # specified. 41 + , monorepoSrc ? null 42 + }: 43 + 44 + assert let 45 + int = a: if a then 1 else 0; 46 + xor = a: b: ((builtins.bitXor (int a) (int b)) == 1); 47 + in 48 + lib.assertMsg 49 + (xor 50 + (gitRelease != null) 51 + (officialRelease != null)) 52 + ("must specify `gitRelease` or `officialRelease`" + 53 + (lib.optionalString (gitRelease != null) " — not both")); 54 + let 55 + monorepoSrc' = monorepoSrc; 56 + in let 57 + releaseInfo = if gitRelease != null then rec { 58 + original = gitRelease; 59 + release_version = original.version; 60 + version = gitRelease.rev-version; 61 + } else rec { 62 + original = officialRelease; 63 + release_version = original.version; 64 + version = if original ? candidate then 65 + "${release_version}-${original.candidate}" 66 + else 67 + release_version; 68 + }; 69 + 70 + monorepoSrc = if monorepoSrc' != null then 71 + monorepoSrc' 72 + else let 73 + sha256 = releaseInfo.original.sha256; 74 + rev = if gitRelease != null then 75 + gitRelease.rev 76 + else 77 + "llvmorg-${releaseInfo.version}"; 78 + in fetchFromGitHub { 79 + owner = "llvm"; 80 + repo = "llvm-project"; 81 + inherit rev sha256; 82 + }; 83 + 84 + inherit (releaseInfo) release_version version; 85 + 86 + llvm_meta = { 87 + license = with lib.licenses; [ ncsa llvm-exception ]; 88 + maintainers = lib.teams.llvm.members; 89 + platforms = lib.platforms.all; 90 + }; 91 + 92 + tools = lib.makeExtensible (tools: let 93 + callPackage = newScope (tools // { inherit stdenv cmake ninja libxml2 python3 release_version version monorepoSrc buildLlvmTools; }); 94 + mkExtraBuildCommands0 = cc: '' 95 + rsrc="$out/resource-root" 96 + mkdir "$rsrc" 97 + ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc" 98 + echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags 99 + ''; 100 + mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + '' 101 + ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib" 102 + ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share" 103 + ''; 104 + 105 + bintoolsNoLibc' = 106 + if bootBintoolsNoLibc == null 107 + then tools.bintoolsNoLibc 108 + else bootBintoolsNoLibc; 109 + bintools' = 110 + if bootBintools == null 111 + then tools.bintools 112 + else bootBintools; 113 + 114 + in { 115 + 116 + libllvm = callPackage ./llvm { 117 + inherit llvm_meta; 118 + }; 119 + 120 + # `llvm` historically had the binaries. When choosing an output explicitly, 121 + # we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get* 122 + llvm = tools.libllvm.out // { outputSpecified = false; }; 123 + 124 + libclang = callPackage ./clang { 125 + inherit llvm_meta; 126 + }; 127 + 128 + clang-unwrapped = tools.libclang.out // { outputSpecified = false; }; 129 + 130 + llvm-manpages = lowPrio (tools.libllvm.override { 131 + enableManpages = true; 132 + python3 = pkgs.python3; # don't use python-boot 133 + }); 134 + 135 + clang-manpages = lowPrio (tools.libclang.override { 136 + enableManpages = true; 137 + python3 = pkgs.python3; # don't use python-boot 138 + }); 139 + 140 + lldb-manpages = lowPrio (tools.lldb.override { 141 + enableManpages = true; 142 + python3 = pkgs.python3; # don't use python-boot 143 + }); 144 + 145 + # pick clang appropriate for package set we are targeting 146 + clang = 147 + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM 148 + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang 149 + else tools.libcxxClang; 150 + 151 + libstdcxxClang = wrapCCWith rec { 152 + cc = tools.clang-unwrapped; 153 + # libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper. 154 + libcxx = null; 155 + extraPackages = [ 156 + targetLlvmLibraries.compiler-rt 157 + ]; 158 + extraBuildCommands = mkExtraBuildCommands cc; 159 + }; 160 + 161 + libcxxClang = wrapCCWith rec { 162 + cc = tools.clang-unwrapped; 163 + libcxx = targetLlvmLibraries.libcxx; 164 + extraPackages = [ 165 + libcxx.cxxabi 166 + targetLlvmLibraries.compiler-rt 167 + ]; 168 + extraBuildCommands = mkExtraBuildCommands cc; 169 + }; 170 + 171 + lld = callPackage ./lld { 172 + inherit llvm_meta; 173 + }; 174 + 175 + lldb = callPackage ./lldb { 176 + inherit llvm_meta; 177 + inherit (darwin) libobjc bootstrap_cmds; 178 + inherit (darwin.apple_sdk.libs) xpc; 179 + inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa; 180 + }; 181 + 182 + # Below, is the LLVM bootstrapping logic. It handles building a 183 + # fully LLVM toolchain from scratch. No GCC toolchain should be 184 + # pulled in. As a consequence, it is very quick to build different 185 + # targets provided by LLVM and we can also build for what GCC 186 + # doesn’t support like LLVM. Probably we should move to some other 187 + # file. 188 + 189 + bintools-unwrapped = callPackage ./bintools {}; 190 + 191 + bintoolsNoLibc = wrapBintoolsWith { 192 + bintools = tools.bintools-unwrapped; 193 + libc = preLibcCrossHeaders; 194 + }; 195 + 196 + bintools = wrapBintoolsWith { 197 + bintools = tools.bintools-unwrapped; 198 + }; 199 + 200 + clangUseLLVM = wrapCCWith rec { 201 + cc = tools.clang-unwrapped; 202 + libcxx = targetLlvmLibraries.libcxx; 203 + bintools = bintools'; 204 + extraPackages = [ 205 + libcxx.cxxabi 206 + targetLlvmLibraries.compiler-rt 207 + ] ++ lib.optionals (!stdenv.targetPlatform.isWasm) [ 208 + targetLlvmLibraries.libunwind 209 + ]; 210 + extraBuildCommands = mkExtraBuildCommands cc; 211 + nixSupport.cc-cflags = 212 + [ "-rtlib=compiler-rt" 213 + "-Wno-unused-command-line-argument" 214 + "-B${targetLlvmLibraries.compiler-rt}/lib" 215 + ] 216 + ++ lib.optional (!stdenv.targetPlatform.isWasm) "--unwindlib=libunwind" 217 + ++ lib.optional 218 + (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) 219 + "-lunwind" 220 + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; 221 + }; 222 + 223 + clangNoLibcxx = wrapCCWith rec { 224 + cc = tools.clang-unwrapped; 225 + libcxx = null; 226 + bintools = bintools'; 227 + extraPackages = [ 228 + targetLlvmLibraries.compiler-rt 229 + ]; 230 + extraBuildCommands = mkExtraBuildCommands cc; 231 + nixSupport.cc-cflags = [ 232 + "-rtlib=compiler-rt" 233 + "-B${targetLlvmLibraries.compiler-rt}/lib" 234 + "-nostdlib++" 235 + ]; 236 + }; 237 + 238 + clangNoLibc = wrapCCWith rec { 239 + cc = tools.clang-unwrapped; 240 + libcxx = null; 241 + bintools = bintoolsNoLibc'; 242 + extraPackages = [ 243 + targetLlvmLibraries.compiler-rt 244 + ]; 245 + extraBuildCommands = mkExtraBuildCommands cc; 246 + nixSupport.cc-cflags = [ 247 + "-rtlib=compiler-rt" 248 + "-B${targetLlvmLibraries.compiler-rt}/lib" 249 + ]; 250 + }; 251 + 252 + clangNoCompilerRt = wrapCCWith rec { 253 + cc = tools.clang-unwrapped; 254 + libcxx = null; 255 + bintools = bintoolsNoLibc'; 256 + extraPackages = [ ]; 257 + extraBuildCommands = mkExtraBuildCommands0 cc; 258 + nixSupport.cc-cflags = [ "-nostartfiles" ]; 259 + }; 260 + 261 + clangNoCompilerRtWithLibc = wrapCCWith rec { 262 + cc = tools.clang-unwrapped; 263 + libcxx = null; 264 + bintools = bintools'; 265 + extraPackages = [ ]; 266 + extraBuildCommands = mkExtraBuildCommands0 cc; 267 + }; 268 + 269 + }); 270 + 271 + libraries = lib.makeExtensible (libraries: let 272 + callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake ninja libxml2 python3 release_version version monorepoSrc; }); 273 + in { 274 + 275 + compiler-rt-libc = callPackage ./compiler-rt { 276 + inherit llvm_meta; 277 + stdenv = if stdenv.hostPlatform.useLLVM or false 278 + then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc 279 + else stdenv; 280 + }; 281 + 282 + compiler-rt-no-libc = callPackage ./compiler-rt { 283 + inherit llvm_meta; 284 + stdenv = if stdenv.hostPlatform.useLLVM or false 285 + then overrideCC stdenv buildLlvmTools.clangNoCompilerRt 286 + else stdenv; 287 + }; 288 + 289 + # N.B. condition is safe because without useLLVM both are the same. 290 + compiler-rt = if stdenv.hostPlatform.isAndroid 291 + then libraries.compiler-rt-libc 292 + else libraries.compiler-rt-no-libc; 293 + 294 + stdenv = overrideCC stdenv buildLlvmTools.clang; 295 + 296 + libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang; 297 + 298 + libcxxabi = let 299 + # CMake will "require" a compiler capable of compiling C++ programs 300 + # cxx-header's build does not actually use one so it doesn't really matter 301 + # what stdenv we use here, as long as CMake is happy. 302 + cxx-headers = callPackage ./libcxx { 303 + inherit llvm_meta; 304 + # Note that if we use the regular stdenv here we'll get cycle errors 305 + # when attempting to use this compiler in the stdenv. 306 + # 307 + # The final stdenv pulls `cxx-headers` from the package set where 308 + # hostPlatform *is* the target platform which means that `stdenv` at 309 + # that point attempts to use this toolchain. 310 + # 311 + # So, we use `stdenv_` (the stdenv containing `clang` from this package 312 + # set, defined below) to sidestep this issue. 313 + # 314 + # Because we only use `cxx-headers` in `libcxxabi` (which depends on the 315 + # clang stdenv _anyways_), this is okay. 316 + stdenv = stdenv_; 317 + headersOnly = true; 318 + }; 319 + 320 + # `libcxxabi` *doesn't* need a compiler with a working C++ stdlib but it 321 + # *does* need a relatively modern C++ compiler (see: 322 + # https://releases.llvm.org/15.0.0/projects/libcxx/docs/index.html#platform-and-compiler-support). 323 + # 324 + # So, we use the clang from this LLVM package set, like libc++ 325 + # "boostrapping builds" do: 326 + # https://releases.llvm.org/15.0.0/projects/libcxx/docs/BuildingLibcxx.html#bootstrapping-build 327 + # 328 + # We cannot use `clangNoLibcxx` because that contains `compiler-rt` which, 329 + # on macOS, depends on `libcxxabi`, thus forming a cycle. 330 + stdenv_ = overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc; 331 + in callPackage ./libcxxabi { 332 + stdenv = stdenv_; 333 + inherit llvm_meta cxx-headers; 334 + }; 335 + 336 + # Like `libcxxabi` above, `libcxx` requires a fairly modern C++ compiler, 337 + # so: we use the clang from this LLVM package set instead of the regular 338 + # stdenv's compiler. 339 + libcxx = callPackage ./libcxx { 340 + inherit llvm_meta; 341 + stdenv = overrideCC stdenv buildLlvmTools.clangNoLibcxx; 342 + }; 343 + 344 + libunwind = callPackage ./libunwind { 345 + inherit llvm_meta; 346 + stdenv = overrideCC stdenv buildLlvmTools.clangNoLibcxx; 347 + }; 348 + 349 + openmp = callPackage ./openmp { 350 + inherit llvm_meta targetLlvm; 351 + }; 352 + }); 353 + 354 + in { inherit tools libraries release_version; } // libraries // tools
+107
pkgs/development/compilers/llvm/15/libcxx/default.nix
··· 1 + { lib, stdenv, llvm_meta 2 + , monorepoSrc, runCommand 3 + , cmake, ninja, python3, fixDarwinDylibNames, version 4 + , cxxabi ? if stdenv.hostPlatform.isFreeBSD then libcxxrt else libcxxabi 5 + , libcxxabi, libcxxrt 6 + , enableShared ? !stdenv.hostPlatform.isStatic 7 + 8 + # If headersOnly is true, the resulting package would only include the headers. 9 + # Use this to break the circular dependency between libcxx and libcxxabi. 10 + # 11 + # Some context: 12 + # https://reviews.llvm.org/rG1687f2bbe2e2aaa092f942d4a97d41fad43eedfb 13 + , headersOnly ? false 14 + }: 15 + 16 + let 17 + basename = "libcxx"; 18 + in 19 + 20 + assert stdenv.isDarwin -> cxxabi.libName == "c++abi"; 21 + 22 + stdenv.mkDerivation rec { 23 + pname = basename + lib.optionalString headersOnly "-headers"; 24 + inherit version; 25 + 26 + src = runCommand "${pname}-src-${version}" {} '' 27 + mkdir -p "$out" 28 + cp -r ${monorepoSrc}/cmake "$out" 29 + cp -r ${monorepoSrc}/${basename} "$out" 30 + mkdir -p "$out/libcxxabi" 31 + cp -r ${monorepoSrc}/libcxxabi/include "$out/libcxxabi" 32 + mkdir -p "$out/llvm" 33 + cp -r ${monorepoSrc}/llvm/cmake "$out/llvm" 34 + cp -r ${monorepoSrc}/llvm/utils "$out/llvm" 35 + cp -r ${monorepoSrc}/third-party "$out" 36 + cp -r ${monorepoSrc}/runtimes "$out" 37 + ''; 38 + 39 + sourceRoot = "${src.name}/runtimes"; 40 + 41 + outputs = [ "out" ] ++ lib.optional (!headersOnly) "dev"; 42 + 43 + prePatch = '' 44 + cd ../${basename} 45 + chmod -R u+w . 46 + ''; 47 + 48 + patches = [ 49 + ./gnu-install-dirs.patch 50 + ] ++ lib.optionals stdenv.hostPlatform.isMusl [ 51 + ../../libcxx-0001-musl-hacks.patch 52 + ]; 53 + 54 + postPatch = '' 55 + cd ../runtimes 56 + ''; 57 + 58 + preConfigure = lib.optionalString stdenv.hostPlatform.isMusl '' 59 + patchShebangs utils/cat_files.py 60 + ''; 61 + 62 + nativeBuildInputs = [ cmake ninja python3 ] 63 + ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; 64 + 65 + buildInputs = lib.optionals (!headersOnly) [ cxxabi ]; 66 + 67 + cmakeFlags = let 68 + # See: https://libcxx.llvm.org/BuildingLibcxx.html#cmdoption-arg-libcxx-cxx-abi-string 69 + libcxx_cxx_abi_opt = { 70 + "c++abi" = "system-libcxxabi"; 71 + "cxxrt" = "libcxxrt"; 72 + }.${cxxabi.libName} or (throw "unknown cxxabi: ${cxxabi.libName} (${cxxabi.pname})"); 73 + in [ 74 + "-DLLVM_ENABLE_RUNTIMES=libcxx" 75 + "-DLIBCXX_CXX_ABI=${if headersOnly then "none" else libcxx_cxx_abi_opt}" 76 + ] ++ lib.optional (!headersOnly && cxxabi.libName == "c++abi") "-DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi.dev}/include/c++/v1" 77 + ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1" 78 + ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON" 79 + ++ lib.optionals stdenv.hostPlatform.isWasm [ 80 + "-DLIBCXX_ENABLE_THREADS=OFF" 81 + "-DLIBCXX_ENABLE_FILESYSTEM=OFF" 82 + "-DLIBCXX_ENABLE_EXCEPTIONS=OFF" 83 + ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF" 84 + # If we're only building the headers we don't actually *need* a functioning 85 + # C/C++ compiler: 86 + ++ lib.optionals (headersOnly) [ 87 + "-DCMAKE_C_COMPILER_WORKS=ON" 88 + "-DCMAKE_CXX_COMPILER_WORKS=ON" 89 + ]; 90 + 91 + ninjaFlags = lib.optional headersOnly "generate-cxx-headers"; 92 + installTargets = lib.optional headersOnly "install-cxx-headers"; 93 + 94 + passthru = { 95 + isLLVM = true; 96 + inherit cxxabi; 97 + }; 98 + 99 + meta = llvm_meta // { 100 + homepage = "https://libcxx.llvm.org/"; 101 + description = "C++ standard library"; 102 + longDescription = '' 103 + libc++ is an implementation of the C++ standard library, targeting C++11, 104 + C++14 and above. 105 + ''; 106 + }; 107 + }
+22
pkgs/development/compilers/llvm/15/libcxx/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index 74eff2002fc9..c935d10878bb 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -419,7 +419,7 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE) 6 + set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}) 7 + set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1") 8 + set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LLVM_BINARY_DIR}/include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1") 9 + - set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 10 + + set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 11 + "Path where built libc++ libraries should be installed.") 12 + set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${CMAKE_INSTALL_INCLUDEDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1" CACHE PATH 13 + "Path where target-specific libc++ headers should be installed.") 14 + @@ -436,7 +436,7 @@ else() 15 + set(LIBCXX_GENERATED_INCLUDE_DIR "${CMAKE_BINARY_DIR}/include/c++/v1") 16 + endif() 17 + set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}") 18 + - set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 19 + + set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 20 + "Path where built libc++ libraries should be installed.") 21 + set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}" CACHE PATH 22 + "Path where target-specific libc++ headers should be installed.")
+105
pkgs/development/compilers/llvm/15/libcxxabi/default.nix
··· 1 + { lib, stdenv, llvm_meta, cmake, ninja, python3 2 + , monorepoSrc, runCommand, fetchpatch 3 + , cxx-headers, libunwind, version 4 + , enableShared ? !stdenv.hostPlatform.isStatic 5 + }: 6 + 7 + stdenv.mkDerivation rec { 8 + pname = "libcxxabi"; 9 + inherit version; 10 + 11 + src = runCommand "${pname}-src-${version}" {} '' 12 + mkdir -p "$out" 13 + cp -r ${monorepoSrc}/cmake "$out" 14 + cp -r ${monorepoSrc}/${pname} "$out" 15 + mkdir -p "$out/libcxx/src" 16 + cp -r ${monorepoSrc}/libcxx/cmake "$out/libcxx" 17 + cp -r ${monorepoSrc}/libcxx/include "$out/libcxx" 18 + cp -r ${monorepoSrc}/libcxx/src/include "$out/libcxx/src" 19 + mkdir -p "$out/llvm" 20 + cp -r ${monorepoSrc}/llvm/cmake "$out/llvm" 21 + cp -r ${monorepoSrc}/llvm/utils "$out/llvm" 22 + cp -r ${monorepoSrc}/runtimes "$out" 23 + ''; 24 + 25 + sourceRoot = "${src.name}/runtimes"; 26 + 27 + outputs = [ "out" "dev" ]; 28 + 29 + postUnpack = lib.optionalString stdenv.isDarwin '' 30 + export TRIPLE=x86_64-apple-darwin 31 + '' + lib.optionalString stdenv.hostPlatform.isWasm '' 32 + patch -p1 -d llvm -i ${./wasm.patch} 33 + ''; 34 + 35 + prePatch = '' 36 + cd ../${pname} 37 + chmod -R u+w . 38 + ''; 39 + 40 + patches = [ 41 + ./gnu-install-dirs.patch 42 + 43 + # https://reviews.llvm.org/D132298, Allow building libcxxabi alone 44 + (fetchpatch { 45 + url = "https://github.com/llvm/llvm-project/commit/e6a0800532bb409f6d1c62f3698bdd6994a877dc.patch"; 46 + sha256 = "1xyjd56m4pfwq8p3xh6i8lhkk9kq15jaml7qbhxdf87z4jjkk63a"; 47 + stripLen = 1; 48 + }) 49 + ]; 50 + 51 + postPatch = '' 52 + cd ../runtimes 53 + ''; 54 + 55 + nativeBuildInputs = [ cmake ninja python3 ]; 56 + buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.hostPlatform.isWasm) libunwind; 57 + 58 + cmakeFlags = [ 59 + "-DLLVM_ENABLE_RUNTIMES=libcxxabi" 60 + "-DLIBCXXABI_LIBCXX_INCLUDES=${cxx-headers}/include/c++/v1" 61 + 62 + # `libcxxabi`'s build does not need a toolchain with a c++ stdlib attached 63 + # (we specify the headers it should use explicitly above). 64 + # 65 + # CMake however checks for this anyways; this flag tells it not to. See: 66 + # https://github.com/llvm/llvm-project/blob/4bd3f3759259548e159aeba5c76efb9a0864e6fa/llvm/runtimes/CMakeLists.txt#L243 67 + "-DCMAKE_CXX_COMPILER_WORKS=ON" 68 + ] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [ 69 + "-DLLVM_ENABLE_LIBCXX=ON" 70 + "-DLIBCXXABI_USE_LLVM_UNWINDER=ON" 71 + ] ++ lib.optionals stdenv.hostPlatform.isWasm [ 72 + "-DLIBCXXABI_ENABLE_THREADS=OFF" 73 + "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF" 74 + ] ++ lib.optionals (!enableShared) [ 75 + "-DLIBCXXABI_ENABLE_SHARED=OFF" 76 + ]; 77 + 78 + preInstall = lib.optionalString stdenv.isDarwin '' 79 + for file in lib/*.dylib; do 80 + # this should be done in CMake, but having trouble figuring out 81 + # the magic combination of necessary CMake variables 82 + # if you fancy a try, take a look at 83 + # https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling 84 + install_name_tool -id $out/$file $file 85 + done 86 + ''; 87 + 88 + postInstall = '' 89 + mkdir -p "$dev/include" 90 + install -m 644 ../../${pname}/include/${if stdenv.isDarwin then "*" else "cxxabi.h"} "$dev/include" 91 + ''; 92 + 93 + passthru = { 94 + libName = "c++abi"; 95 + }; 96 + 97 + meta = llvm_meta // { 98 + homepage = "https://libcxxabi.llvm.org/"; 99 + description = "Provides C++ standard library support"; 100 + longDescription = '' 101 + libc++abi is a new implementation of low level support for a standard C++ library. 102 + ''; 103 + maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ]; 104 + }; 105 + }
+22
pkgs/development/compilers/llvm/15/libcxxabi/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index b8326d08d23a..a1e36f713161 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -187,7 +187,7 @@ set(LIBCXXABI_INSTALL_RUNTIME_DIR "${CMAKE_INSTALL_BINDIR}" CACHE PATH 6 + if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE) 7 + set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR}) 8 + set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}) 9 + - set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 10 + + set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 11 + "Path where built libc++abi libraries should be installed.") 12 + if(LIBCXX_LIBDIR_SUBDIR) 13 + string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR}) 14 + @@ -201,7 +201,7 @@ else() 15 + set(LIBCXXABI_HEADER_DIR ${CMAKE_BINARY_DIR}) 16 + set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX}) 17 + endif() 18 + - set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX} CACHE PATH 19 + + set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} CACHE PATH 20 + "Path where built libc++abi libraries should be installed.") 21 + endif() 22 +
+16
pkgs/development/compilers/llvm/15/libcxxabi/wasm.patch
··· 1 + diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake 2 + index 15497d405e0..33f7f18193a 100644 3 + --- a/cmake/modules/HandleLLVMOptions.cmake 4 + +++ b/cmake/modules/HandleLLVMOptions.cmake 5 + @@ -127,7 +127,10 @@ else(WIN32) 6 + set(LLVM_HAVE_LINK_VERSION_SCRIPT 1) 7 + endif() 8 + else(FUCHSIA OR UNIX) 9 + - MESSAGE(SEND_ERROR "Unable to determine platform") 10 + + if(${CMAKE_SYSTEM_NAME} MATCHES "Wasi") 11 + + else() 12 + + MESSAGE(SEND_ERROR "Unable to determine platform") 13 + + endif() 14 + endif(FUCHSIA OR UNIX) 15 + endif(WIN32) 16 +
+62
pkgs/development/compilers/llvm/15/libunwind/default.nix
··· 1 + { lib, stdenv, llvm_meta, version 2 + , monorepoSrc, runCommand 3 + , cmake 4 + , ninja 5 + , python3 6 + , enableShared ? !stdenv.hostPlatform.isStatic 7 + }: 8 + 9 + stdenv.mkDerivation rec { 10 + pname = "libunwind"; 11 + inherit version; 12 + 13 + # I am not so comfortable giving libc++ and friends the whole monorepo as 14 + # requested, so I filter it to what is needed. 15 + src = runCommand "${pname}-src-${version}" {} '' 16 + mkdir -p "$out" 17 + cp -r ${monorepoSrc}/cmake "$out" 18 + cp -r ${monorepoSrc}/${pname} "$out" 19 + mkdir -p "$out/libcxx" 20 + cp -r ${monorepoSrc}/libcxx/cmake "$out/libcxx" 21 + cp -r ${monorepoSrc}/libcxx/utils "$out/libcxx" 22 + mkdir -p "$out/llvm" 23 + cp -r ${monorepoSrc}/llvm/cmake "$out/llvm" 24 + cp -r ${monorepoSrc}/llvm/utils "$out/llvm" 25 + cp -r ${monorepoSrc}/runtimes "$out" 26 + ''; 27 + 28 + sourceRoot = "${src.name}/runtimes"; 29 + 30 + prePatch = '' 31 + cd ../${pname} 32 + chmod -R u+w . 33 + ''; 34 + 35 + patches = [ 36 + ./gnu-install-dirs.patch 37 + ]; 38 + 39 + postPatch = '' 40 + cd ../runtimes 41 + ''; 42 + 43 + outputs = [ "out" "dev" ]; 44 + 45 + nativeBuildInputs = [ cmake ninja python3 ]; 46 + 47 + cmakeFlags = [ 48 + "-DLLVM_ENABLE_RUNTIMES=libunwind" 49 + ] ++ lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF"; 50 + 51 + meta = llvm_meta // { 52 + # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst 53 + homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library"; 54 + description = "LLVM's unwinder library"; 55 + longDescription = '' 56 + The unwind library provides a family of _Unwind_* functions implementing 57 + the language-neutral stack unwinding portion of the Itanium C++ ABI (Level 58 + I). It is a dependency of the C++ ABI library, and sometimes is a 59 + dependency of other runtimes. 60 + ''; 61 + }; 62 + }
+22
pkgs/development/compilers/llvm/15/libunwind/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index 5a06805f05f1..86a50329e6a8 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -117,7 +117,7 @@ set(LIBUNWIND_INSTALL_RUNTIME_DIR "${CMAKE_INSTALL_BINDIR}" CACHE PATH 6 + 7 + if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE) 8 + set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}) 9 + - set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 10 + + set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 11 + "Path where built libunwind libraries should be installed.") 12 + if(LIBCXX_LIBDIR_SUBDIR) 13 + string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR}) 14 + @@ -129,7 +129,7 @@ else() 15 + else() 16 + set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX}) 17 + endif() 18 + - set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX} CACHE PATH 19 + + set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX} CACHE PATH 20 + "Path where built libunwind libraries should be installed.") 21 + endif() 22 +
+55
pkgs/development/compilers/llvm/15/lld/default.nix
··· 1 + { lib, stdenv, llvm_meta 2 + , buildLlvmTools 3 + , monorepoSrc, runCommand 4 + , cmake 5 + , ninja 6 + , libxml2 7 + , libllvm 8 + , version 9 + }: 10 + 11 + stdenv.mkDerivation rec { 12 + pname = "lld"; 13 + inherit version; 14 + 15 + # Blank llvm dir just so relative path works 16 + src = runCommand "${pname}-src-${version}" {} '' 17 + mkdir -p "$out" 18 + cp -r ${monorepoSrc}/cmake "$out" 19 + cp -r ${monorepoSrc}/${pname} "$out" 20 + mkdir -p "$out/libunwind" 21 + cp -r ${monorepoSrc}/libunwind/include "$out/libunwind" 22 + mkdir -p "$out/llvm" 23 + ''; 24 + 25 + sourceRoot = "${src.name}/${pname}"; 26 + 27 + patches = [ 28 + ./gnu-install-dirs.patch 29 + ]; 30 + 31 + nativeBuildInputs = [ cmake ninja ]; 32 + buildInputs = [ libllvm libxml2 ]; 33 + 34 + cmakeFlags = [ 35 + "-DLLD_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/lld" 36 + ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ 37 + "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen" 38 + ]; 39 + LDFLAGS = lib.optionalString stdenv.hostPlatform.isMusl "-Wl,-z,stack-size=2097152"; 40 + 41 + outputs = [ "out" "lib" "dev" ]; 42 + 43 + meta = llvm_meta // { 44 + homepage = "https://lld.llvm.org/"; 45 + description = "The LLVM linker (unwrapped)"; 46 + longDescription = '' 47 + LLD is a linker from the LLVM project that is a drop-in replacement for 48 + system linkers and runs much faster than them. It also provides features 49 + that are useful for toolchain developers. 50 + The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and 51 + WebAssembly in descending order of completeness. Internally, LLD consists 52 + of several different linkers. 53 + ''; 54 + }; 55 + }
+46
pkgs/development/compilers/llvm/15/lld/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index dcc649629a4b..58dca54642e4 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -70,13 +70,15 @@ if(LLD_BUILT_STANDALONE) 6 + if (NOT LLVM_CONFIG_FOUND) 7 + # Pull values from LLVMConfig.cmake. We can drop this once the llvm-config 8 + # path is removed. 9 + - set(MAIN_INCLUDE_DIR "${LLVM_INCLUDE_DIR}") 10 + + set(INCLUDE_DIRS ${LLVM_INCLUDE_DIRS}) 11 + set(LLVM_OBJ_DIR "${LLVM_BINARY_DIR}") 12 + # N.B. this is just a default value, the CACHE PATHs below can be overridden. 13 + set(MAIN_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../llvm") 14 + + else() 15 + + set(INCLUDE_DIRS "${LLVM_BINARY_DIR}/include" "${MAIN_INCLUDE_DIR}") 16 + endif() 17 + 18 + - set(LLVM_MAIN_INCLUDE_DIR "${MAIN_INCLUDE_DIR}" CACHE PATH "Path to llvm/include") 19 + + set(LLVM_INCLUDE_DIRS ${INCLUDE_DIRS} CACHE PATH "Path to llvm/include and any other header dirs needed") 20 + set(LLVM_BINARY_DIR "${LLVM_OBJ_ROOT}" CACHE PATH "Path to LLVM build tree") 21 + set(LLVM_MAIN_SRC_DIR "${MAIN_SRC_DIR}" CACHE PATH "Path to LLVM source tree") 22 + 23 + @@ -95,7 +97,7 @@ if(LLD_BUILT_STANDALONE) 24 + 25 + set(PACKAGE_VERSION "${LLVM_PACKAGE_VERSION}") 26 + 27 + - include_directories("${LLVM_BINARY_DIR}/include" ${LLVM_INCLUDE_DIRS}) 28 + + include_directories(${LLVM_INCLUDE_DIRS}) 29 + link_directories(${LLVM_LIBRARY_DIRS}) 30 + 31 + if(LLVM_INCLUDE_TESTS) 32 + diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake 33 + index d3924f7243d4..42a7cd62281c 100644 34 + --- a/cmake/modules/AddLLD.cmake 35 + +++ b/cmake/modules/AddLLD.cmake 36 + @@ -18,8 +18,8 @@ macro(add_lld_library name) 37 + install(TARGETS ${name} 38 + COMPONENT ${name} 39 + ${export_to_lldtargets} 40 + - LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} 41 + - ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} 42 + + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" 43 + + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" 44 + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") 45 + 46 + if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+12
pkgs/development/compilers/llvm/15/lldb/cpu_subtype_arm64e_replacement.patch
··· 1 + diff --git a/source/Host/macosx/objcxx/HostInfoMacOSX.mm b/source/Host/macosx/objcxx/HostInfoMacOSX.mm 2 + --- a/source/Host/macosx/objcxx/HostInfoMacOSX.mm 3 + +++ b/source/Host/macosx/objcxx/HostInfoMacOSX.mm 4 + @@ -233,7 +233,7 @@ void HostInfoMacOSX::ComputeHostArchitectureSupport(ArchSpec &arch_32, 5 + len = sizeof(is_64_bit_capable); 6 + ::sysctlbyname("hw.cpu64bit_capable", &is_64_bit_capable, &len, NULL, 0); 7 + 8 + - if (cputype == CPU_TYPE_ARM64 && cpusubtype == CPU_SUBTYPE_ARM64E) { 9 + + if (cputype == CPU_TYPE_ARM64 && cpusubtype == ((cpu_subtype_t) 2)) { // CPU_SUBTYPE_ARM64E is not available in the macOS 10.12 headers 10 + // The arm64e architecture is a preview. Pretend the host architecture 11 + // is arm64. 12 + cpusubtype = CPU_SUBTYPE_ARM64_ALL;
+186
pkgs/development/compilers/llvm/15/lldb/default.nix
··· 1 + { lib, stdenv, llvm_meta 2 + , runCommand 3 + , monorepoSrc 4 + , cmake 5 + , ninja 6 + , zlib 7 + , ncurses 8 + , swig 9 + , which 10 + , libedit 11 + , libxml2 12 + , libllvm 13 + , libclang 14 + , python3 15 + , version 16 + , libobjc 17 + , xpc 18 + , Foundation 19 + , bootstrap_cmds 20 + , Carbon 21 + , Cocoa 22 + , lit 23 + , makeWrapper 24 + , darwin 25 + , enableManpages ? false 26 + , lua5_3 27 + }: 28 + 29 + # TODO: we build the python bindings but don't expose them as a python package 30 + # TODO: expose the vscode extension? 31 + 32 + stdenv.mkDerivation (rec { 33 + pname = "lldb"; 34 + inherit version; 35 + 36 + src = runCommand "${pname}-src-${version}" {} '' 37 + mkdir -p "$out" 38 + cp -r ${monorepoSrc}/cmake "$out" 39 + cp -r ${monorepoSrc}/${pname} "$out" 40 + ''; 41 + 42 + sourceRoot = "${src.name}/${pname}"; 43 + 44 + patches = [ 45 + ./procfs.patch 46 + (runCommand "resource-dir.patch" { 47 + clangLibDir = "${libclang.lib}/lib"; 48 + } '' 49 + substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir 50 + '') 51 + ./gnu-install-dirs.patch 52 + ] 53 + # This is a stopgap solution if/until the macOS SDK used for x86_64 is 54 + # updated. 55 + # 56 + # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h` 57 + # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use 58 + # of this preprocessor symbol in `lldb` with its expansion. 59 + # 60 + # See here for some context: 61 + # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 62 + ++ lib.optional ( 63 + stdenv.targetPlatform.isDarwin 64 + && !stdenv.targetPlatform.isAarch64 65 + && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0") 66 + ) ./cpu_subtype_arm64e_replacement.patch; 67 + 68 + outputs = [ "out" "lib" "dev" ]; 69 + 70 + nativeBuildInputs = [ 71 + cmake ninja python3 which swig lit makeWrapper lua5_3 72 + ] ++ lib.optionals enableManpages [ 73 + python3.pkgs.sphinx python3.pkgs.recommonmark 74 + ]; 75 + 76 + buildInputs = [ 77 + ncurses 78 + zlib 79 + libedit 80 + libxml2 81 + libllvm 82 + ] ++ lib.optionals stdenv.isDarwin [ 83 + libobjc 84 + xpc 85 + Foundation 86 + bootstrap_cmds 87 + Carbon 88 + Cocoa 89 + ] 90 + # The older libSystem used on x86_64 macOS is missing the 91 + # `<bsm/audit_session.h>` header which `lldb` uses. 92 + # 93 + # We copy this header over from macOS 10.12 SDK. 94 + # 95 + # See here for context: 96 + # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132 97 + ++ lib.optional ( 98 + stdenv.targetPlatform.isDarwin 99 + && !stdenv.targetPlatform.isAarch64 100 + ) ( 101 + runCommand "bsm-audit-session-header" { } '' 102 + install -Dm444 \ 103 + "${lib.getDev darwin.apple_sdk.sdk}/include/bsm/audit_session.h" \ 104 + "$out/include/bsm/audit_session.h" 105 + '' 106 + ); 107 + 108 + hardeningDisable = [ "format" ]; 109 + 110 + cmakeFlags = [ 111 + "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}" 112 + "-DLLVM_ENABLE_RTTI=OFF" 113 + "-DClang_DIR=${libclang.dev}/lib/cmake" 114 + "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit" 115 + ] ++ lib.optionals stdenv.isDarwin [ 116 + "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON" 117 + ] ++ lib.optionals (!stdenv.isDarwin) [ 118 + "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic 119 + ] ++ lib.optionals enableManpages [ 120 + "-DLLVM_ENABLE_SPHINX=ON" 121 + "-DSPHINX_OUTPUT_MAN=ON" 122 + "-DSPHINX_OUTPUT_HTML=OFF" 123 + 124 + # docs reference `automodapi` but it's not added to the extensions list when 125 + # only building the manpages: 126 + # https://github.com/llvm/llvm-project/blob/af6ec9200b09039573d85e349496c4f5b17c3d7f/lldb/docs/conf.py#L54 127 + # 128 + # so, we just ignore the resulting errors 129 + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" 130 + ] ++ lib.optionals doCheck [ 131 + "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" 132 + "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++" 133 + ]; 134 + 135 + doCheck = false; 136 + 137 + installCheckPhase = '' 138 + if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then 139 + return 1; 140 + fi 141 + ''; 142 + 143 + postInstall = '' 144 + wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/ 145 + 146 + # Editor support 147 + # vscode: 148 + install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json 149 + mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin 150 + ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin 151 + ''; 152 + 153 + meta = llvm_meta // { 154 + homepage = "https://lldb.llvm.org/"; 155 + description = "A next-generation high-performance debugger"; 156 + longDescription = '' 157 + LLDB is a next generation, high-performance debugger. It is built as a set 158 + of reusable components which highly leverage existing libraries in the 159 + larger LLVM Project, such as the Clang expression parser and LLVM 160 + disassembler. 161 + ''; 162 + }; 163 + } // lib.optionalAttrs enableManpages { 164 + pname = "lldb-manpages"; 165 + 166 + ninjaFlags = [ "docs-lldb-man" ]; 167 + 168 + propagatedBuildInputs = []; 169 + 170 + # manually install lldb man page 171 + installPhase = '' 172 + mkdir -p $out/share/man/man1 173 + install docs/man/lldb.1 -t $out/share/man/man1/ 174 + ''; 175 + 176 + postPatch = null; 177 + postInstall = null; 178 + 179 + outputs = [ "out" ]; 180 + 181 + doCheck = false; 182 + 183 + meta = llvm_meta // { 184 + description = "man pages for LLDB ${version}"; 185 + }; 186 + })
+23
pkgs/development/compilers/llvm/15/lldb/gnu-install-dirs.patch
··· 1 + diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake 2 + index 3291a7c808e1..b27d27ce6a87 100644 3 + --- a/cmake/modules/AddLLDB.cmake 4 + +++ b/cmake/modules/AddLLDB.cmake 5 + @@ -109,7 +109,7 @@ function(add_lldb_library name) 6 + endif() 7 + 8 + if(PARAM_SHARED) 9 + - set(install_dest lib${LLVM_LIBDIR_SUFFIX}) 10 + + set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}) 11 + if(PARAM_INSTALL_PREFIX) 12 + set(install_dest ${PARAM_INSTALL_PREFIX}) 13 + endif() 14 + diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt 15 + index 7d48491ec89a..c04543585588 100644 16 + --- a/tools/intel-features/CMakeLists.txt 17 + +++ b/tools/intel-features/CMakeLists.txt 18 + @@ -30,4 +30,4 @@ add_lldb_library(lldbIntelFeatures SHARED 19 + ) 20 + 21 + install(TARGETS lldbIntelFeatures 22 + - LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}) 23 + + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+46
pkgs/development/compilers/llvm/15/lldb/procfs.patch
··· 1 + --- a/source/Plugins/Process/Linux/Procfs.h 2 + +++ b/source/Plugins/Process/Linux/Procfs.h 3 + @@ -10,6 +10,13 @@ 4 + // sys/procfs.h on Android/Linux for all supported architectures. 5 + 6 + #include <sys/ptrace.h> 7 + +#include <asm/ptrace.h> 8 + + 9 + +// on i686 preprocessor symbols with these register names are defined as 10 + +// numeric constants; these symbols clash with identifier names used in 11 + +// `llvm/Support/VirtualFileSystem.h` and `llvm/ADT/SmallVector.h` 12 + +#undef FS 13 + +#undef CS 14 + 15 + #include "lldb/lldb-types.h" 16 + 17 + @@ -17,23 +24,13 @@ 18 + 19 + #include <vector> 20 + 21 + -#ifdef __ANDROID__ 22 + -#if defined(__arm64__) || defined(__aarch64__) 23 + -typedef unsigned long elf_greg_t; 24 + -typedef elf_greg_t 25 + - elf_gregset_t[(sizeof(struct user_pt_regs) / sizeof(elf_greg_t))]; 26 + -typedef struct user_fpsimd_state elf_fpregset_t; 27 + -#ifndef NT_FPREGSET 28 + -#define NT_FPREGSET NT_PRFPREG 29 + -#endif // NT_FPREGSET 30 + -#elif defined(__mips__) 31 + -#ifndef NT_FPREGSET 32 + -#define NT_FPREGSET NT_PRFPREG 33 + -#endif // NT_FPREGSET 34 + -#endif 35 + -#else // __ANDROID__ 36 + +#if !defined(__GLIBC__) && defined(__powerpc__) 37 + +#define pt_regs musl_pt_regs 38 + +#include <sys/procfs.h> 39 + +#undef pt_regs 40 + +#else 41 + #include <sys/procfs.h> 42 + -#endif // __ANDROID__ 43 + +#endif 44 + 45 + namespace lldb_private { 46 + namespace process_linux {
+13
pkgs/development/compilers/llvm/15/lldb/resource-dir.patch
··· 1 + diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake 2 + index 37364341ff8b..7f74c1a3e257 100644 3 + --- a/cmake/modules/LLDBConfig.cmake 4 + +++ b/cmake/modules/LLDBConfig.cmake 5 + @@ -257,7 +257,7 @@ if (NOT TARGET clang-resource-headers) 6 + # Iterate over the possible places where the external resource directory 7 + # could be and pick the first that exists. 8 + foreach(CANDIDATE "${Clang_DIR}/../.." "${LLVM_DIR}" "${LLVM_LIBRARY_DIRS}" 9 + - "${LLVM_BUILD_LIBRARY_DIR}" 10 + + "${LLVM_BUILD_LIBRARY_DIR}" "@clangLibDir@" 11 + "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}") 12 + # Build the resource directory path by appending 'clang/<version number>'. 13 + set(CANDIDATE_RESOURCE_DIR "${CANDIDATE}/clang/${LLDB_CLANG_RESOURCE_DIR_NAME}")
+429
pkgs/development/compilers/llvm/15/llvm/default.nix
··· 1 + { lib, stdenv, llvm_meta 2 + , pkgsBuildBuild 3 + , monorepoSrc 4 + , runCommand 5 + , fetchpatch 6 + , cmake 7 + , darwin 8 + , ninja 9 + , python3 10 + , python3Packages 11 + , libffi 12 + , libbfd 13 + , libpfm 14 + , libxml2 15 + , ncurses 16 + , version 17 + , release_version 18 + , zlib 19 + , which 20 + , sysctl 21 + , buildLlvmTools 22 + , debugVersion ? false 23 + , doCheck ? (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl) 24 + && (stdenv.hostPlatform == stdenv.buildPlatform) 25 + , enableManpages ? false 26 + , enableSharedLibraries ? !stdenv.hostPlatform.isStatic 27 + , enablePFM ? stdenv.isLinux /* PFM only supports Linux */ 28 + # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245 29 + # broken for the armv7l builder 30 + && !stdenv.hostPlatform.isAarch 31 + , enablePolly ? true 32 + } @args: 33 + 34 + let 35 + inherit (lib) optional optionals optionalString; 36 + 37 + # Used when creating a version-suffixed symlink of libLLVM.dylib 38 + shortVersion = with lib; 39 + concatStringsSep "." (take 1 (splitString "." release_version)); 40 + 41 + # Ordinarily we would just the `doCheck` and `checkDeps` functionality 42 + # `mkDerivation` gives us to manage our test dependencies (instead of breaking 43 + # out `doCheck` as a package level attribute). 44 + # 45 + # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in 46 + # particular the children it uses to do feature detection. 47 + # 48 + # This means that python deps we add to `checkDeps` (which the python 49 + # interpreter is made aware of via `$PYTHONPATH` – populated by the python 50 + # setup hook) are not picked up by `lit` which causes it to skip tests. 51 + # 52 + # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work 53 + # because this package is shadowed in `$PATH` by the regular `python3` 54 + # package. 55 + # 56 + # So, we "manually" assemble one python derivation for the package to depend 57 + # on, taking into account whether checks are enabled or not: 58 + python = if doCheck then 59 + # Note that we _explicitly_ ask for a python interpreter for our host 60 + # platform here; the splicing that would ordinarily take care of this for 61 + # us does not seem to work once we use `withPackages`. 62 + let 63 + checkDeps = ps: with ps; [ psutil ]; 64 + in pkgsBuildBuild.targetPackages.python3.withPackages checkDeps 65 + else python3; 66 + 67 + in stdenv.mkDerivation (rec { 68 + pname = "llvm"; 69 + inherit version; 70 + 71 + src = runCommand "${pname}-src-${version}" {} ('' 72 + mkdir -p "$out" 73 + cp -r ${monorepoSrc}/cmake "$out" 74 + cp -r ${monorepoSrc}/${pname} "$out" 75 + cp -r ${monorepoSrc}/third-party "$out" 76 + '' + lib.optionalString enablePolly '' 77 + chmod u+w "$out/${pname}/tools" 78 + cp -r ${monorepoSrc}/polly "$out/${pname}/tools" 79 + ''); 80 + 81 + sourceRoot = "${src.name}/${pname}"; 82 + 83 + outputs = [ "out" "lib" "dev" "python" ]; 84 + 85 + nativeBuildInputs = [ cmake ninja python ] 86 + ++ optionals enableManpages [ 87 + # Note: we intentionally use `python3Packages` instead of `python3.pkgs`; 88 + # splicing does *not* work with the latter. (TODO: fix) 89 + python3Packages.sphinx python3Packages.recommonmark 90 + ]; 91 + 92 + buildInputs = [ libxml2 libffi ] 93 + ++ optional enablePFM libpfm; # exegesis 94 + 95 + propagatedBuildInputs = [ ncurses zlib ]; 96 + 97 + nativeCheckInputs = [ 98 + which 99 + ] ++ lib.optional stdenv.isDarwin sysctl; 100 + 101 + patches = [ 102 + ./gnu-install-dirs.patch 103 + 104 + # Running the tests involves invoking binaries (like `opt`) that depend on 105 + # the LLVM dylibs and reference them by absolute install path (i.e. their 106 + # nix store path). 107 + # 108 + # Because we have not yet run the install phase (we're running these tests 109 + # as part of `checkPhase` instead of `installCheckPhase`) these absolute 110 + # paths do not exist yet; to work around this we point the loader (`ld` on 111 + # unix, `dyld` on macOS) at the `lib` directory which will later become this 112 + # package's `lib` output. 113 + # 114 + # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib` 115 + # dir but: 116 + # - this doesn't generalize well to other platforms; `lit` doesn't forward 117 + # `DYLD_LIBRARY_PATH` (macOS): 118 + # + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26 119 + # - even if `lit` forwarded this env var, we actually cannot set 120 + # `DYLD_LIBRARY_PATH` in the child processes `lit` launches because 121 + # `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for 122 + # "protected processes" (i.e. the python interpreter that runs `lit`): 123 + # https://stackoverflow.com/a/35570229 124 + # - other LLVM subprojects deal with this issue by having their `lit` 125 + # configuration set these env vars for us; it makes sense to do the same 126 + # for LLVM: 127 + # + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31 128 + # 129 + # !!! TODO: look into upstreaming this patch 130 + ./llvm-lit-cfg-add-libs-to-dylib-path.patch 131 + 132 + # `lit` has a mode where it executes run lines as a shell script which is 133 + # constructs; this is problematic for macOS because it means that there's 134 + # another process in between `lit` and the binaries being tested. As noted 135 + # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our 136 + # tests fail with dyld errors. 137 + # 138 + # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when 139 + # present in the test configuration. 140 + # 141 + # It's not clear to me why this isn't an issue for LLVM developers running 142 + # on macOS (nothing about this _seems_ nix specific).. 143 + ./lit-shell-script-runner-set-dyld-library-path.patch 144 + ] ++ lib.optionals enablePolly [ 145 + ./gnu-install-dirs-polly.patch 146 + 147 + # Just like the `llvm-lit-cfg` patch, but for `polly`. 148 + ./polly-lit-cfg-add-libs-to-dylib-path.patch 149 + ]; 150 + 151 + postPatch = optionalString stdenv.isDarwin '' 152 + substituteInPlace cmake/modules/AddLLVM.cmake \ 153 + --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ 154 + --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" 155 + 156 + # As of LLVM 15, marked as XFAIL on arm64 macOS but lit doesn't seem to pick 157 + # this up: https://github.com/llvm/llvm-project/blob/c344d97a125b18f8fed0a64aace73c49a870e079/llvm/test/MC/ELF/cfi-version.ll#L7 158 + rm test/MC/ELF/cfi-version.ll 159 + 160 + # This test tries to call `sw_vers` by absolute path (`/usr/bin/sw_vers`) 161 + # and thus fails under the sandbox: 162 + substituteInPlace unittests/Support/Host.cpp \ 163 + --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }" 164 + '' + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86) '' 165 + # This test tries to call the intrinsics `@llvm.roundeven.f32` and 166 + # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf` 167 + # and `roundeven` on x86_64 macOS. 168 + # 169 + # However these functions are glibc specific so the test fails: 170 + # - https://www.gnu.org/software/gnulib/manual/html_node/roundevenf.html 171 + # - https://www.gnu.org/software/gnulib/manual/html_node/roundeven.html 172 + # 173 + # TODO(@rrbutani): this seems to run fine on `aarch64-darwin`, why does it 174 + # pass there? 175 + substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \ 176 + --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \ 177 + --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" "" 178 + 179 + # This test fails on darwin x86_64 because `sw_vers` reports a different 180 + # macOS version than what LLVM finds by reading 181 + # `/System/Library/CoreServices/SystemVersion.plist` (which is passed into 182 + # the sandbox on macOS). 183 + # 184 + # The `sw_vers` provided by nixpkgs reports the macOS version associated 185 + # with the `CoreFoundation` framework with which it was built. Because 186 + # nixpkgs pins the SDK for `aarch64-darwin` and `x86_64-darwin` what 187 + # `sw_vers` reports is not guaranteed to match the macOS version of the host 188 + # that's building this derivation. 189 + # 190 + # Astute readers will note that we only _patch_ this test on aarch64-darwin 191 + # (to use the nixpkgs provided `sw_vers`) instead of disabling it outright. 192 + # So why does this test pass on aarch64? 193 + # 194 + # Well, it seems that `sw_vers` on aarch64 actually links against the _host_ 195 + # CoreFoundation framework instead of the nixpkgs provided one. 196 + # 197 + # Not entirely sure what the right fix is here. I'm assuming aarch64 198 + # `sw_vers` doesn't intentionally link against the host `CoreFoundation` 199 + # (still digging into how this ends up happening, will follow up) but that 200 + # aside I think the more pertinent question is: should we be patching LLVM's 201 + # macOS version detection logic to use `sw_vers` instead of reading host 202 + # paths? This *is* a way in which details about builder machines can creep 203 + # into the artifacts that are produced, affecting reproducibility, but it's 204 + # not clear to me when/where/for what this even gets used in LLVM. 205 + # 206 + # TODO(@rrbutani): fix/follow-up 207 + substituteInPlace unittests/Support/Host.cpp \ 208 + --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion" 209 + 210 + # This test fails with a `dysmutil` crash; have not yet dug into what's 211 + # going on here (TODO(@rrbutani)). 212 + rm test/tools/dsymutil/ARM/obfuscated.test 213 + '' + '' 214 + # FileSystem permissions tests fail with various special bits 215 + substituteInPlace unittests/Support/CMakeLists.txt \ 216 + --replace "Path.cpp" "" 217 + rm unittests/Support/Path.cpp 218 + substituteInPlace unittests/IR/CMakeLists.txt \ 219 + --replace "PassBuilderCallbacksTest.cpp" "" 220 + rm unittests/IR/PassBuilderCallbacksTest.cpp 221 + rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test 222 + '' + optionalString stdenv.hostPlatform.isMusl '' 223 + patch -p1 -i ${../../TLI-musl.patch} 224 + substituteInPlace unittests/Support/CMakeLists.txt \ 225 + --replace "add_subdirectory(DynamicLibrary)" "" 226 + rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp 227 + # valgrind unhappy with musl or glibc, but fails w/musl only 228 + rm test/CodeGen/AArch64/wineh4.mir 229 + '' + optionalString stdenv.hostPlatform.isAarch32 '' 230 + # skip failing X86 test cases on 32-bit ARM 231 + rm test/DebugInfo/X86/convert-debugloc.ll 232 + rm test/DebugInfo/X86/convert-inlined.ll 233 + rm test/DebugInfo/X86/convert-linked.ll 234 + rm test/tools/dsymutil/X86/op-convert.test 235 + rm test/tools/gold/X86/split-dwarf.ll 236 + rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s 237 + rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s 238 + 239 + # !!! Note: these tests are removed in LLVM 16. 240 + # 241 + # See here for context: https://github.com/NixOS/nixpkgs/pull/194634#discussion_r999790443 242 + rm test/CodeGen/RISCV/rv32zbp.ll 243 + rm test/CodeGen/RISCV/rv64zbp.ll 244 + '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") '' 245 + # Seems to require certain floating point hardware (NEON?) 246 + rm test/ExecutionEngine/frem.ll 247 + '' + '' 248 + patchShebangs test/BugPoint/compile-custom.ll.py 249 + ''; 250 + 251 + preConfigure = '' 252 + # Workaround for configure flags that need to have spaces 253 + cmakeFlagsArray+=( 254 + -DLLVM_LIT_ARGS="-svj''${NIX_BUILD_CORES} --no-progress-bar" 255 + ) 256 + ''; 257 + 258 + # Defensive check: some paths (that we make symlinks to) depend on the release 259 + # version, for example: 260 + # - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185 261 + # 262 + # So we want to sure that the version in the source matches the release 263 + # version we were given. 264 + # 265 + # We do this check here, in the LLVM build, because it happens early. 266 + postConfigure = let 267 + v = lib.versions; 268 + major = v.major release_version; 269 + minor = v.minor release_version; 270 + patch = v.patch release_version; 271 + in '' 272 + # $1: part, $2: expected 273 + check_version() { 274 + part="''${1^^}" 275 + part="$(cat include/llvm/Config/llvm-config.h | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)" 276 + 277 + if [[ "$part" != "$2" ]]; then 278 + echo >&2 \ 279 + "mismatch in the $1 version! we have version ${release_version}" \ 280 + "and expected the $1 version to be '$2'; the source has '$part' instead" 281 + exit 3 282 + fi 283 + } 284 + 285 + check_version major ${major} 286 + check_version minor ${minor} 287 + check_version patch ${patch} 288 + ''; 289 + 290 + # E.g. mesa.drivers use the build-id as a cache key (see #93946): 291 + LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; 292 + 293 + cmakeFlags = with stdenv; let 294 + # These flags influence llvm-config's BuildVariables.inc in addition to the 295 + # general build. We need to make sure these are also passed via 296 + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native 297 + # will return different results from the cross llvm-config. 298 + # 299 + # Some flags don't need to be repassed because LLVM already does so (like 300 + # CMAKE_BUILD_TYPE), others are irrelevant to the result. 301 + flagsForLlvmConfig = [ 302 + "-DLLVM_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/llvm" 303 + "-DLLVM_ENABLE_RTTI=ON" 304 + ] ++ optionals enableSharedLibraries [ 305 + "-DLLVM_LINK_LLVM_DYLIB=ON" 306 + ]; 307 + in flagsForLlvmConfig ++ [ 308 + "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" 309 + "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc 310 + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" 311 + "-DLLVM_ENABLE_FFI=ON" 312 + "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" 313 + "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" 314 + "-DLLVM_ENABLE_DUMP=ON" 315 + ] ++ optionals stdenv.hostPlatform.isStatic [ 316 + # Disables building of shared libs, -fPIC is still injected by cc-wrapper 317 + "-DLLVM_ENABLE_PIC=OFF" 318 + "-DLLVM_BUILD_STATIC=ON" 319 + "-DLLVM_LINK_LLVM_DYLIB=off" 320 + # libxml2 needs to be disabled because the LLVM build system ignores its .la 321 + # file and doesn't link zlib as well. 322 + # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812 323 + "-DLLVM_ENABLE_LIBXML2=OFF" 324 + ] ++ optionals enableManpages [ 325 + "-DLLVM_BUILD_DOCS=ON" 326 + "-DLLVM_ENABLE_SPHINX=ON" 327 + "-DSPHINX_OUTPUT_MAN=ON" 328 + "-DSPHINX_OUTPUT_HTML=OFF" 329 + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" 330 + ] ++ optionals (!isDarwin) [ 331 + "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include" 332 + ] ++ optionals isDarwin [ 333 + "-DLLVM_ENABLE_LIBCXX=ON" 334 + "-DCAN_TARGET_i386=false" 335 + ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ 336 + "-DCMAKE_CROSSCOMPILING=True" 337 + "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen" 338 + ( 339 + let 340 + nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc; 341 + nativeBintools = nativeCC.bintools.bintools; 342 + nativeToolchainFlags = [ 343 + "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc" 344 + "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++" 345 + "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar" 346 + "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" 347 + "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" 348 + ]; 349 + # We need to repass the custom GNUInstallDirs values, otherwise CMake 350 + # will choose them for us, leading to wrong results in llvm-config-native 351 + nativeInstallFlags = [ 352 + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" 353 + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" 354 + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" 355 + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" 356 + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" 357 + ]; 358 + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" 359 + + lib.concatStringsSep ";" (lib.concatLists [ 360 + flagsForLlvmConfig 361 + nativeToolchainFlags 362 + nativeInstallFlags 363 + ]) 364 + ) 365 + ]; 366 + 367 + postInstall = '' 368 + mkdir -p $python/share 369 + mv $out/share/opt-viewer $python/share/opt-viewer 370 + moveToOutput "bin/llvm-config*" "$dev" 371 + substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ 372 + --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \ 373 + --replace "$out/bin/llvm-config" "$dev/bin/llvm-config" 374 + substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \ 375 + --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "'"$lib"'")' 376 + '' 377 + + optionalString (stdenv.isDarwin && enableSharedLibraries) '' 378 + ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib 379 + ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib 380 + '' 381 + + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' 382 + cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native 383 + ''; 384 + 385 + inherit doCheck; 386 + 387 + checkTarget = "check-all"; 388 + 389 + # For the update script: 390 + passthru.monorepoSrc = monorepoSrc; 391 + 392 + requiredSystemFeatures = [ "big-parallel" ]; 393 + meta = llvm_meta // { 394 + homepage = "https://llvm.org/"; 395 + description = "A collection of modular and reusable compiler and toolchain technologies"; 396 + longDescription = '' 397 + The LLVM Project is a collection of modular and reusable compiler and 398 + toolchain technologies. Despite its name, LLVM has little to do with 399 + traditional virtual machines. The name "LLVM" itself is not an acronym; it 400 + is the full name of the project. 401 + LLVM began as a research project at the University of Illinois, with the 402 + goal of providing a modern, SSA-based compilation strategy capable of 403 + supporting both static and dynamic compilation of arbitrary programming 404 + languages. Since then, LLVM has grown to be an umbrella project consisting 405 + of a number of subprojects, many of which are being used in production by 406 + a wide variety of commercial and open source projects as well as being 407 + widely used in academic research. Code in the LLVM project is licensed 408 + under the "Apache 2.0 License with LLVM exceptions". 409 + ''; 410 + }; 411 + } // lib.optionalAttrs enableManpages { 412 + pname = "llvm-manpages"; 413 + 414 + propagatedBuildInputs = []; 415 + 416 + ninjaFlags = [ "docs-llvm-man" ]; 417 + installTargets = [ "install-docs-llvm-man" ]; 418 + 419 + postPatch = null; 420 + postInstall = null; 421 + 422 + outputs = [ "out" ]; 423 + 424 + doCheck = false; 425 + 426 + meta = llvm_meta // { 427 + description = "man pages for LLVM ${version}"; 428 + }; 429 + })
+19
pkgs/development/compilers/llvm/15/llvm/gnu-install-dirs-polly.patch
··· 1 + This is the one remaining Polly install dirs related change that hasn't made it 2 + into upstream yet; previously this patch file also included: 3 + https://reviews.llvm.org/D117541 4 + 5 + diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake 6 + index 518a09b45a42..bd9d6f5542ad 100644 7 + --- a/tools/polly/cmake/polly_macros.cmake 8 + +++ b/tools/polly/cmake/polly_macros.cmake 9 + @@ -44,8 +44,8 @@ macro(add_polly_library name) 10 + if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly") 11 + install(TARGETS ${name} 12 + EXPORT LLVMExports 13 + - LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} 14 + - ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}) 15 + + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} 16 + + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}) 17 + endif() 18 + set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) 19 + endmacro(add_polly_library)
+138
pkgs/development/compilers/llvm/15/llvm/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index 45399dc0537e..5d946e9e6583 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -942,7 +942,7 @@ if (NOT TENSORFLOW_AOT_PATH STREQUAL "") 6 + add_subdirectory(${TENSORFLOW_AOT_PATH}/xla_aot_runtime_src 7 + ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/tf_runtime) 8 + install(TARGETS tf_xla_runtime EXPORT LLVMExports 9 + - ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT tf_xla_runtime) 10 + + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT tf_xla_runtime) 11 + set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS tf_xla_runtime) 12 + # Once we add more modules, we should handle this more automatically. 13 + if (DEFINED LLVM_OVERRIDE_MODEL_HEADER_INLINERSIZEMODEL) 14 + diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake 15 + index 057431208322..56f0dcb258da 100644 16 + --- a/cmake/modules/AddLLVM.cmake 17 + +++ b/cmake/modules/AddLLVM.cmake 18 + @@ -844,8 +844,8 @@ macro(add_llvm_library name) 19 + get_target_export_arg(${name} LLVM export_to_llvmexports ${umbrella}) 20 + install(TARGETS ${name} 21 + ${export_to_llvmexports} 22 + - LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name} 23 + - ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name} 24 + + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" COMPONENT ${name} 25 + + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" COMPONENT ${name} 26 + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT ${name}) 27 + 28 + if (NOT LLVM_ENABLE_IDE) 29 + @@ -2007,7 +2007,7 @@ function(llvm_install_library_symlink name dest type) 30 + set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX}) 31 + set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX}) 32 + 33 + - set(output_dir lib${LLVM_LIBDIR_SUFFIX}) 34 + + set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}) 35 + if(WIN32 AND "${type}" STREQUAL "SHARED") 36 + set(output_dir "${CMAKE_INSTALL_BINDIR}") 37 + endif() 38 + @@ -2271,15 +2271,15 @@ function(llvm_setup_rpath name) 39 + 40 + if (APPLE) 41 + set(_install_name_dir INSTALL_NAME_DIR "@rpath") 42 + - set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir}) 43 + + set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir}) 44 + elseif(${CMAKE_SYSTEM_NAME} MATCHES "AIX" AND BUILD_SHARED_LIBS) 45 + # $ORIGIN is not interpreted at link time by aix ld. 46 + # Since BUILD_SHARED_LIBS is only recommended for use by developers, 47 + # hardcode the rpath to build/install lib dir first in this mode. 48 + # FIXME: update this when there is better solution. 49 + - set(_install_rpath "${LLVM_LIBRARY_OUTPUT_INTDIR}" "${CMAKE_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir}) 50 + + set(_install_rpath "${LLVM_LIBRARY_OUTPUT_INTDIR}" "${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir}) 51 + elseif(UNIX) 52 + - set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir}) 53 + + set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir}) 54 + if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)") 55 + set_property(TARGET ${name} APPEND_STRING PROPERTY 56 + LINK_FLAGS " -Wl,-z,origin ") 57 + diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake 58 + index 891c9e6d618c..8d963f3b0069 100644 59 + --- a/cmake/modules/AddOCaml.cmake 60 + +++ b/cmake/modules/AddOCaml.cmake 61 + @@ -147,9 +147,9 @@ function(add_ocaml_library name) 62 + endforeach() 63 + 64 + if( APPLE ) 65 + - set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}") 66 + + set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}") 67 + elseif( UNIX ) 68 + - set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}") 69 + + set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}") 70 + endif() 71 + list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}") 72 + 73 + diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt 74 + index d4b0ab959148..26ed981fd09f 100644 75 + --- a/cmake/modules/CMakeLists.txt 76 + +++ b/cmake/modules/CMakeLists.txt 77 + @@ -128,7 +128,7 @@ set(LLVM_CONFIG_INCLUDE_DIRS 78 + ) 79 + list(REMOVE_DUPLICATES LLVM_CONFIG_INCLUDE_DIRS) 80 + 81 + -extend_path(LLVM_CONFIG_LIBRARY_DIR "\${LLVM_INSTALL_PREFIX}" "lib\${LLVM_LIBDIR_SUFFIX}") 82 + +extend_path(LLVM_CONFIG_LIBRARY_DIR "\${LLVM_INSTALL_PREFIX}" "${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}") 83 + set(LLVM_CONFIG_LIBRARY_DIRS 84 + "${LLVM_CONFIG_LIBRARY_DIR}" 85 + # FIXME: Should there be other entries here? 86 + diff --git a/docs/CMake.rst b/docs/CMake.rst 87 + index 879b7b231d4c..9c31d14e8950 100644 88 + --- a/docs/CMake.rst 89 + +++ b/docs/CMake.rst 90 + @@ -250,7 +250,7 @@ description is in `LLVM-related variables`_ below. 91 + **LLVM_LIBDIR_SUFFIX**:STRING 92 + Extra suffix to append to the directory where libraries are to be 93 + installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64`` 94 + - to install libraries to ``/usr/lib64``. 95 + + to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``. 96 + 97 + **LLVM_PARALLEL_{COMPILE,LINK}_JOBS**:STRING 98 + Building the llvm toolchain can use a lot of resources, particularly 99 + @@ -284,6 +284,10 @@ manual, or execute ``cmake --help-variable VARIABLE_NAME``. 100 + The path to install executables, relative to the *CMAKE_INSTALL_PREFIX*. 101 + Defaults to "bin". 102 + 103 + +**CMAKE_INSTALL_LIBDIR**:PATH 104 + + The path to install libraries, relative to the *CMAKE_INSTALL_PREFIX*. 105 + + Defaults to "lib". 106 + + 107 + **CMAKE_INSTALL_INCLUDEDIR**:PATH 108 + The path to install header files, relative to the *CMAKE_INSTALL_PREFIX*. 109 + Defaults to "include". 110 + diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in 111 + index 370005cd8d7d..7e790bc52111 100644 112 + --- a/tools/llvm-config/BuildVariables.inc.in 113 + +++ b/tools/llvm-config/BuildVariables.inc.in 114 + @@ -23,6 +23,7 @@ 115 + #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@" 116 + #define LLVM_BUILDMODE "@LLVM_BUILDMODE@" 117 + #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@" 118 + +#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@" 119 + #define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@" 120 + #define LLVM_INSTALL_PACKAGE_DIR "@LLVM_INSTALL_PACKAGE_DIR@" 121 + #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" 122 + diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp 123 + index 2c6c55f89d38..f6d2068a0827 100644 124 + --- a/tools/llvm-config/llvm-config.cpp 125 + +++ b/tools/llvm-config/llvm-config.cpp 126 + @@ -369,7 +369,11 @@ int main(int argc, char **argv) { 127 + sys::fs::make_absolute(ActivePrefix, Path); 128 + ActiveBinDir = std::string(Path.str()); 129 + } 130 + - ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX; 131 + + { 132 + + SmallString<256> Path(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX); 133 + + sys::fs::make_absolute(ActivePrefix, Path); 134 + + ActiveLibDir = std::string(Path.str()); 135 + + } 136 + { 137 + SmallString<256> Path(LLVM_INSTALL_PACKAGE_DIR); 138 + sys::fs::make_absolute(ActivePrefix, Path);
+26
pkgs/development/compilers/llvm/15/llvm/lit-shell-script-runner-set-dyld-library-path.patch
··· 1 + diff --git a/utils/lit/lit/TestRunner.py b/utils/lit/lit/TestRunner.py 2 + index 0242e0b75af3..d732011306f7 100644 3 + --- a/utils/lit/lit/TestRunner.py 4 + +++ b/utils/lit/lit/TestRunner.py 5 + @@ -1029,6 +1029,12 @@ def executeScript(test, litConfig, tmpBase, commands, cwd): 6 + f.write('@echo off\n') 7 + f.write('\n@if %ERRORLEVEL% NEQ 0 EXIT\n'.join(commands)) 8 + else: 9 + + # This env var is *purged* when invoking subprocesses so we have to 10 + + # manually set it from within the bash script in order for the commands 11 + + # in run lines to see this var: 12 + + if "DYLD_LIBRARY_PATH" in test.config.environment: 13 + + f.write(f'export DYLD_LIBRARY_PATH="{test.config.environment["DYLD_LIBRARY_PATH"]}"\n') 14 + + 15 + for i, ln in enumerate(commands): 16 + match = re.match(kPdbgRegex, ln) 17 + if match: 18 + @@ -1363,7 +1369,7 @@ def applySubstitutions(script, substitutions, conditions={}, 19 + return processed 20 + 21 + process = processLine if recursion_limit is None else processLineToFixedPoint 22 + - 23 + + 24 + return [unescapePercents(process(ln)) for ln in script] 25 + 26 +
+79
pkgs/development/compilers/llvm/15/llvm/llvm-lit-cfg-add-libs-to-dylib-path.patch
··· 1 + diff --git a/test/Unit/lit.cfg.py b/test/Unit/lit.cfg.py 2 + index 81e8dc04acea..479ff95681e2 100644 3 + --- a/test/Unit/lit.cfg.py 4 + +++ b/test/Unit/lit.cfg.py 5 + @@ -3,6 +3,7 @@ 6 + # Configuration file for the 'lit' test runner. 7 + 8 + import os 9 + +import platform 10 + import subprocess 11 + 12 + import lit.formats 13 + @@ -55,3 +56,26 @@ if sys.platform in ['win32', 'cygwin'] and os.path.isdir(config.shlibdir): 14 + # Win32 may use %SYSTEMDRIVE% during file system shell operations, so propogate. 15 + if sys.platform == 'win32' and 'SYSTEMDRIVE' in os.environ: 16 + config.environment['SYSTEMDRIVE'] = os.environ['SYSTEMDRIVE'] 17 + + 18 + +# Add the LLVM dynamic libs to the platform-specific loader search path env var: 19 + +# 20 + +# TODO: this is copied from `clang`'s `lit.cfg.py`; should unify.. 21 + +def find_shlibpath_var(): 22 + + if platform.system() in ['Linux', 'FreeBSD', 'NetBSD', 'OpenBSD', 'SunOS']: 23 + + yield 'LD_LIBRARY_PATH' 24 + + elif platform.system() == 'Darwin': 25 + + yield 'DYLD_LIBRARY_PATH' 26 + + elif platform.system() == 'Windows': 27 + + yield 'PATH' 28 + + elif platform.system() == 'AIX': 29 + + yield 'LIBPATH' 30 + + 31 + +for shlibpath_var in find_shlibpath_var(): 32 + + shlibpath = os.path.pathsep.join( 33 + + (config.shlibdir, 34 + + config.environment.get(shlibpath_var, ''))) 35 + + config.environment[shlibpath_var] = shlibpath 36 + + break 37 + +else: 38 + + lit_config.warning("unable to inject shared library path on '{}'" 39 + + .format(platform.system())) 40 + diff --git a/test/lit.cfg.py b/test/lit.cfg.py 41 + index 75a38b4c5dad..856fc75c9d74 100644 42 + --- a/test/lit.cfg.py 43 + +++ b/test/lit.cfg.py 44 + @@ -42,6 +42,26 @@ llvm_config.with_environment('PATH', config.llvm_tools_dir, append_path=True) 45 + llvm_config.with_system_environment( 46 + ['HOME', 'INCLUDE', 'LIB', 'TMP', 'TEMP']) 47 + 48 + +# Add the LLVM dynamic libs to the platform-specific loader search path env var: 49 + +# 50 + +# TODO: this is copied from `clang`'s `lit.cfg.py`; should unify.. 51 + +def find_shlibpath_var(): 52 + + if platform.system() in ['Linux', 'FreeBSD', 'NetBSD', 'OpenBSD', 'SunOS']: 53 + + yield 'LD_LIBRARY_PATH' 54 + + elif platform.system() == 'Darwin': 55 + + yield 'DYLD_LIBRARY_PATH' 56 + + elif platform.system() == 'Windows': 57 + + yield 'PATH' 58 + + elif platform.system() == 'AIX': 59 + + yield 'LIBPATH' 60 + + 61 + +for shlibpath_var in find_shlibpath_var(): 62 + + shlibpath = config.llvm_shlib_dir 63 + + llvm_config.with_environment(shlibpath_var, shlibpath, append_path = True) 64 + + break 65 + +else: 66 + + lit_config.warning("unable to inject shared library path on '{}'" 67 + + .format(platform.system())) 68 + 69 + # Set up OCAMLPATH to include newly built OCaml libraries. 70 + top_ocaml_lib = os.path.join(config.llvm_lib_dir, 'ocaml') 71 + @@ -318,7 +338,7 @@ def have_cxx_shared_library(): 72 + 73 + try: 74 + readobj_cmd = subprocess.Popen( 75 + - [readobj_exe, '--needed-libs', readobj_exe], stdout=subprocess.PIPE) 76 + + [readobj_exe, '--needed-libs', readobj_exe], stdout=subprocess.PIPE, env=config.environment) 77 + except OSError: 78 + print('could not exec llvm-readobj') 79 + return False
+24
pkgs/development/compilers/llvm/15/llvm/polly-lit-cfg-add-libs-to-dylib-path.patch
··· 1 + diff --git a/tools/polly/test/lit.cfg b/tools/polly/test/lit.cfg 2 + index 41e3a589c61e..09f3b17498b0 100644 3 + --- a/tools/polly/test/lit.cfg 4 + +++ b/tools/polly/test/lit.cfg 5 + @@ -36,9 +36,17 @@ base_paths = [config.llvm_tools_dir, config.environment['PATH']] 6 + path = os.path.pathsep.join(base_paths + config.extra_paths) 7 + config.environment['PATH'] = path 8 + 9 + +# (Copied from polly/test/Unit/lit.cfg) 10 + +if platform.system() == 'Darwin': 11 + + shlibpath_var = 'DYLD_LIBRARY_PATH' 12 + +elif platform.system() == 'Windows': 13 + + shlibpath_var = 'PATH' 14 + +else: 15 + + shlibpath_var = 'LD_LIBRARY_PATH' 16 + + 17 + path = os.path.pathsep.join((config.llvm_libs_dir, 18 + - config.environment.get('LD_LIBRARY_PATH',''))) 19 + -config.environment['LD_LIBRARY_PATH'] = path 20 + + config.environment.get(shlibpath_var,''))) 21 + +config.environment[shlibpath_var] = path 22 + 23 + llvm_config.use_default_substitutions() 24 +
+71
pkgs/development/compilers/llvm/15/openmp/default.nix
··· 1 + { lib 2 + , stdenv 3 + , llvm_meta 4 + , monorepoSrc 5 + , runCommand 6 + , cmake 7 + , ninja 8 + , llvm 9 + , targetLlvm 10 + , lit 11 + , clang-unwrapped 12 + , perl 13 + , pkg-config 14 + , xcbuild 15 + , version 16 + }: 17 + 18 + stdenv.mkDerivation rec { 19 + pname = "openmp"; 20 + inherit version; 21 + 22 + src = runCommand "${pname}-src-${version}" {} '' 23 + mkdir -p "$out" 24 + cp -r ${monorepoSrc}/cmake "$out" 25 + cp -r ${monorepoSrc}/${pname} "$out" 26 + ''; 27 + 28 + sourceRoot = "${src.name}/${pname}"; 29 + 30 + patches = [ 31 + ./fix-find-tool.patch 32 + ./gnu-install-dirs.patch 33 + ./run-lit-directly.patch 34 + ]; 35 + 36 + outputs = [ "out" "dev" ]; 37 + 38 + nativeBuildInputs = [ cmake ninja perl pkg-config lit ]; 39 + buildInputs = [ 40 + (if stdenv.buildPlatform == stdenv.hostPlatform then llvm else targetLlvm) 41 + ]; 42 + 43 + nativeCheckInputs = lib.optional stdenv.hostPlatform.isDarwin xcbuild.xcrun; 44 + 45 + # Unsup:Pass:XFail:Fail 46 + # 26:267:16:8 47 + doCheck = false; 48 + checkTarget = "check-openmp"; 49 + 50 + preCheck = '' 51 + patchShebangs ../tools/archer/tests/deflake.bash 52 + ''; 53 + 54 + cmakeFlags = [ 55 + "-DCLANG_TOOL=${clang-unwrapped}/bin/clang" 56 + "-DOPT_TOOL=${llvm}/bin/opt" 57 + "-DLINK_TOOL=${llvm}/bin/llvm-link" 58 + ]; 59 + 60 + meta = llvm_meta // { 61 + homepage = "https://openmp.llvm.org/"; 62 + description = "Support for the OpenMP language"; 63 + longDescription = '' 64 + The OpenMP subproject of LLVM contains the components required to build an 65 + executable OpenMP program that are outside the compiler itself. 66 + Contains the code for the runtime library against which code compiled by 67 + "clang -fopenmp" must be linked before it can run and the library that 68 + supports offload to target devices. 69 + ''; 70 + }; 71 + }
+18
pkgs/development/compilers/llvm/15/openmp/fix-find-tool.patch
··· 1 + diff --git a/libomptarget/DeviceRTL/CMakeLists.txt b/libomptarget/DeviceRTL/CMakeLists.txt 2 + index ce66214822a2..6ab7b33c95da 100644 3 + --- a/libomptarget/DeviceRTL/CMakeLists.txt 4 + +++ b/libomptarget/DeviceRTL/CMakeLists.txt 5 + @@ -27,10 +27,10 @@ endif() 6 + if (LLVM_DIR) 7 + # Builds that use pre-installed LLVM have LLVM_DIR set. 8 + # A standalone or LLVM_ENABLE_RUNTIMES=openmp build takes this route 9 + - find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) 10 + + find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR}) 11 + find_program(LINK_TOOL llvm-link PATHS ${LLVM_TOOLS_BINARY_DIR} 12 + - NO_DEFAULT_PATH) 13 + - find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) 14 + + ) 15 + + find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR}) 16 + if ((NOT CLANG_TOOL) OR (NOT LINK_TOOL) OR (NOT OPT_TOOL)) 17 + libomptarget_say("Not building DeviceRTL. Missing clang: ${CLANG_TOOL}, llvm-link: ${LINK_TOOL} or opt: ${OPT_TOOL}") 18 + return()
+22
pkgs/development/compilers/llvm/15/openmp/gnu-install-dirs.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index b6ddbe90516d..311ab1d50e7f 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -29,7 +29,7 @@ if (OPENMP_STANDALONE_BUILD) 6 + set(OPENMP_LIBDIR_SUFFIX "" CACHE STRING 7 + "Suffix of lib installation directory, e.g. 64 => lib64") 8 + # Do not use OPENMP_LIBDIR_SUFFIX directly, use OPENMP_INSTALL_LIBDIR. 9 + - set(OPENMP_INSTALL_LIBDIR "lib${OPENMP_LIBDIR_SUFFIX}") 10 + + set(OPENMP_INSTALL_LIBDIR "${CMAKE_INSTALL_LIBDIR}${OPENMP_LIBDIR_SUFFIX}") 11 + 12 + # Group test settings. 13 + set(OPENMP_TEST_C_COMPILER ${CMAKE_C_COMPILER} CACHE STRING 14 + @@ -40,7 +40,7 @@ if (OPENMP_STANDALONE_BUILD) 15 + else() 16 + set(OPENMP_ENABLE_WERROR ${LLVM_ENABLE_WERROR}) 17 + # If building in tree, we honor the same install suffix LLVM uses. 18 + - set(OPENMP_INSTALL_LIBDIR "lib${LLVM_LIBDIR_SUFFIX}") 19 + + set(OPENMP_INSTALL_LIBDIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}") 20 + 21 + if (NOT MSVC) 22 + set(OPENMP_TEST_C_COMPILER ${LLVM_RUNTIME_OUTPUT_INTDIR}/clang)
+12
pkgs/development/compilers/llvm/15/openmp/run-lit-directly.patch
··· 1 + diff --git a/cmake/OpenMPTesting.cmake b/cmake/OpenMPTesting.cmake 2 + --- a/cmake/OpenMPTesting.cmake 3 + +++ b/cmake/OpenMPTesting.cmake 4 + @@ -185,7 +185,7 @@ function(add_openmp_testsuite target comment) 5 + if (${OPENMP_STANDALONE_BUILD}) 6 + set(LIT_ARGS ${OPENMP_LIT_ARGS} ${ARG_ARGS}) 7 + add_custom_target(${target} 8 + - COMMAND ${PYTHON_EXECUTABLE} ${OPENMP_LLVM_LIT_EXECUTABLE} ${LIT_ARGS} ${ARG_UNPARSED_ARGUMENTS} 9 + + COMMAND ${OPENMP_LLVM_LIT_EXECUTABLE} ${LIT_ARGS} ${ARG_UNPARSED_ARGUMENTS} 10 + COMMENT ${comment} 11 + DEPENDS ${ARG_DEPENDS} 12 + USES_TERMINAL
+39 -4
pkgs/development/compilers/swift/compiler/default.nix
··· 36 36 , CoreServices 37 37 , Foundation 38 38 , Combine 39 + , MacOSX-SDK 39 40 , CLTools_Executables 40 41 }: 41 42 ··· 169 170 chmod a+x "$targetFile" 170 171 ''; 171 172 173 + # On Darwin, we need to use BOOTSTRAPPING-WITH-HOSTLIBS because of ABI 174 + # stability, and have to provide the definitions for the system stdlib. 175 + appleSwiftCore = stdenv.mkDerivation { 176 + name = "apple-swift-core"; 177 + dontUnpack = true; 178 + 179 + installPhase = '' 180 + mkdir -p $out/lib/swift 181 + cp -r \ 182 + "${MacOSX-SDK}/usr/lib/swift/Swift.swiftmodule" \ 183 + "${MacOSX-SDK}/usr/lib/swift/libswiftCore.tbd" \ 184 + $out/lib/swift/ 185 + ''; 186 + }; 187 + 172 188 in stdenv.mkDerivation { 173 189 pname = "swift"; 174 190 inherit (sources) version; ··· 263 279 patch -p1 -d swift -i ${./patches/swift-wrap.patch} 264 280 patch -p1 -d swift -i ${./patches/swift-nix-resource-root.patch} 265 281 patch -p1 -d swift -i ${./patches/swift-linux-fix-linking.patch} 266 - patch -p1 -d swift -i ${./patches/swift-darwin-fix-bootstrap.patch} 267 282 patch -p1 -d swift -i ${substituteAll { 268 283 src = ./patches/swift-darwin-plistbuddy-workaround.patch; 269 284 inherit swiftArch; ··· 395 410 " 396 411 buildProject llvm llvm-project/llvm 397 412 413 + '' + lib.optionalString stdenv.isDarwin '' 414 + # Add appleSwiftCore to the search paths. We can't simply add it to 415 + # buildInputs, because it is potentially an older stdlib than the one we're 416 + # building. We have to remove it again after the main Swift build, or later 417 + # build steps may fail. (Specific case: Concurrency backdeploy uses the 418 + # Sendable protocol, which appears to not be present in the macOS 11 SDK.) 419 + OLD_NIX_SWIFTFLAGS_COMPILE="$NIX_SWIFTFLAGS_COMPILE" 420 + OLD_NIX_LDFLAGS="$NIX_LDFLAGS" 421 + export NIX_SWIFTFLAGS_COMPILE+=" -I ${appleSwiftCore}/lib/swift" 422 + export NIX_LDFLAGS+=" -L ${appleSwiftCore}/lib/swift" 423 + '' + '' 424 + 398 425 # Some notes: 399 - # - Building with libswift defaults to OFF in CMake, but is enabled in 400 - # standard builds, so we enable it as well. 426 + # - BOOTSTRAPPING_MODE defaults to OFF in CMake, but is enabled in standard 427 + # builds, so we enable it as well. On Darwin, we have to use the system 428 + # Swift libs because of ABI-stability, but this may be trouble if the 429 + # builder is an older macOS. 401 430 # - Experimental features are OFF by default in CMake, but some are 402 431 # required to build the stdlib. 403 432 # - SWIFT_STDLIB_ENABLE_OBJC_INTEROP is set explicitely because its check ··· 405 434 # Fixed in: https://github.com/apple/swift/commit/84083afef1de5931904d5c815d53856cdb3fb232 406 435 cmakeFlags=" 407 436 -GNinja 408 - -DBOOTSTRAPPING_MODE=BOOTSTRAPPING 437 + -DBOOTSTRAPPING_MODE=BOOTSTRAPPING${lib.optionalString stdenv.isDarwin "-WITH-HOSTLIBS"} 409 438 -DSWIFT_ENABLE_EXPERIMENTAL_CONCURRENCY=ON 410 439 -DLLVM_DIR=$SWIFT_BUILD_ROOT/llvm/lib/cmake/llvm 411 440 -DClang_DIR=$SWIFT_BUILD_ROOT/llvm/lib/cmake/clang ··· 417 446 -DSWIFT_STDLIB_ENABLE_OBJC_INTEROP=${if stdenv.isDarwin then "ON" else "OFF"} 418 447 " 419 448 buildProject swift 449 + 450 + '' + lib.optionalString stdenv.isDarwin '' 451 + # Restore search paths to remove appleSwiftCore. 452 + export NIX_SWIFTFLAGS_COMPILE="$OLD_NIX_SWIFTFLAGS_COMPILE" 453 + export NIX_LDFLAGS="$OLD_NIX_LDFLAGS" 454 + '' + '' 420 455 421 456 # These are based on flags in `utils/build-script-impl`. 422 457 #
-20
pkgs/development/compilers/swift/compiler/patches/swift-darwin-fix-bootstrap.patch
··· 1 - This patch fixes dylib references during bootstrapping. It's possible 2 - `LIBSWIFT_BUILD_MODE=BOOTSTRAPPING` is not really well tested on Darwin, 3 - because official builds don't use it. 4 - 5 - In the near future, Swift will require an existing Swift toolchain to 6 - bootstrap, and we will likely have to replace this any way. 7 - 8 - --- a/stdlib/cmake/modules/AddSwiftStdlib.cmake 9 - +++ b/stdlib/cmake/modules/AddSwiftStdlib.cmake 10 - @@ -1035,6 +1035,10 @@ function(add_swift_target_library_single target name) 11 - set(install_name_dir "${SWIFTLIB_SINGLE_DARWIN_INSTALL_NAME_DIR}") 12 - endif() 13 - 14 - + if(DEFINED SWIFTLIB_SINGLE_BOOTSTRAPPING) 15 - + set(install_name_dir "${lib_dir}/${output_sub_dir}") 16 - + endif() 17 - + 18 - set_target_properties("${target}" 19 - PROPERTIES 20 - INSTALL_NAME_DIR "${install_name_dir}")
+1 -1
pkgs/development/compilers/swift/default.nix
··· 49 49 50 50 swift-unwrapped = callPackage ./compiler { 51 51 inherit (darwin) DarwinTools cctools sigtool; 52 - inherit (apple_sdk) CLTools_Executables; 52 + inherit (apple_sdk) MacOSX-SDK CLTools_Executables; 53 53 inherit (apple_sdk.frameworks) CoreServices Foundation Combine; 54 54 }; 55 55
+2 -2
pkgs/development/libraries/gusb/default.nix
··· 1 1 { lib, stdenv, fetchurl, substituteAll, meson, ninja, pkg-config, gettext, gobject-introspection 2 2 , gtk-doc, docbook_xsl, docbook_xml_dtd_412, docbook_xml_dtd_44, python3 3 - , glib, systemd, libusb1, vala, hwdata 3 + , glib, libusb1, vala, hwdata 4 4 }: 5 5 6 6 let ··· 31 31 gtk-doc docbook_xsl docbook_xml_dtd_412 docbook_xml_dtd_44 32 32 gobject-introspection vala 33 33 ]; 34 - buildInputs = [ systemd glib ]; 34 + buildInputs = [ glib ]; 35 35 36 36 propagatedBuildInputs = [ libusb1 ]; 37 37
+2 -2
pkgs/development/libraries/mesa/default.nix
··· 39 39 let 40 40 # Release calendar: https://www.mesa3d.org/release-calendar.html 41 41 # Release frequency: https://www.mesa3d.org/releasing.html#schedule 42 - version = "22.3.3"; 42 + version = "22.3.4"; 43 43 branch = lib.versions.major version; 44 44 45 45 withLibdrm = lib.meta.availableOn stdenv.hostPlatform libdrm; ··· 62 62 "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" 63 63 "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz" 64 64 ]; 65 - sha256 = "sha256-vteZeIvyvZ7wedl82OCTSL9TywhoGFeOQHc7KxeBKSI="; 65 + sha256 = "37a1ddaf03f41919ee3c89c97cff41e87de96e00e9d3247959cc8279d8294593"; 66 66 }; 67 67 68 68 # TODO:
+2 -2
pkgs/development/libraries/tepl/default.nix
··· 15 15 16 16 stdenv.mkDerivation rec { 17 17 pname = "tepl"; 18 - version = "6.2.0"; 18 + version = "6.4.0"; 19 19 20 20 outputs = [ "out" "dev" "devdoc" ]; 21 21 22 22 src = fetchurl { 23 23 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 24 - sha256 = "jNaGXCw4GIdgyzjK4z3J4KiI+tGNCwTx1V5laqmJqEQ="; 24 + sha256 = "XlayBmnQzwX6HWS1jIw0LFkVgSLcUYEA0JPVnfm4cyE="; 25 25 }; 26 26 27 27 nativeBuildInputs = [
+10 -14
pkgs/development/ocaml-modules/mdx/default.nix
··· 1 - { lib, fetchFromGitHub, buildDunePackage, ocaml 1 + { lib, fetchurl, buildDunePackage, ocaml 2 2 , alcotest 3 - , astring, cmdliner, cppo, fmt, logs, ocaml-version, odoc-parser, ocaml_lwt, re, result, csexp 4 - , pandoc 3 + , astring, cppo, fmt, logs, ocaml-version, odoc-parser, lwt, re, csexp 5 4 , gitUpdater 6 5 }: 7 6 8 7 buildDunePackage rec { 9 8 pname = "mdx"; 10 - version = "2.1.0"; 9 + version = "2.2.1"; 11 10 12 11 minimalOCamlVersion = "4.08"; 12 + duneVersion = "3"; 13 13 14 - src = fetchFromGitHub { 15 - owner = "realworldocaml"; 16 - repo = pname; 17 - rev = version; 18 - hash = "sha256-p7jmksltgfLFTSkPxMuJWJexLq2VvPWT/DJtDveOL/A="; 14 + src = fetchurl { 15 + url = "https://github.com/realworldocaml/mdx/releases/download/${version}/mdx-${version}.tbz"; 16 + hash = "sha256-8J7XM/5EYWBfApdzdIpjU9Ablb5l65hrzOF9bdr1Cdg="; 19 17 }; 20 18 21 19 nativeBuildInputs = [ cppo ]; 22 - buildInputs = [ cmdliner ]; 23 - propagatedBuildInputs = [ astring fmt logs result csexp ocaml-version odoc-parser re ]; 24 - nativeCheckInputs = [ alcotest ocaml_lwt pandoc ]; 20 + propagatedBuildInputs = [ astring fmt logs csexp ocaml-version odoc-parser re ]; 21 + nativeCheckInputs = [ alcotest lwt ]; 25 22 26 - # Check fails with cmdliner ≥ 1.1 27 - doCheck = false; 23 + doCheck = true; 28 24 29 25 outputs = [ "bin" "lib" "out" ]; 30 26
+10 -3
pkgs/development/python-modules/aladdin-connect/default.nix
··· 2 2 , requests 3 3 , buildPythonPackage 4 4 , fetchFromGitHub 5 + , pythonOlder 5 6 }: 6 7 7 8 buildPythonPackage rec { 8 9 pname = "aladdin-connect"; 9 10 version = "0.4"; 11 + format = "setuptools"; 12 + 13 + disabled = pythonOlder "3.7"; 10 14 11 15 src = fetchFromGitHub { 12 16 owner = "shoejosh"; 13 17 repo = pname; 14 - rev = version; 15 - sha256 = "sha256-kLvMpSGa5WyDOH3ejAJyFGsB9IiMXp+nvVxM/ZkxyFw="; 18 + rev = "refs/tags/${version}"; 19 + hash = "sha256-kLvMpSGa5WyDOH3ejAJyFGsB9IiMXp+nvVxM/ZkxyFw="; 16 20 }; 17 21 18 22 propagatedBuildInputs = [ ··· 22 26 # Project has no tests 23 27 doCheck = false; 24 28 25 - pythonImportsCheck = [ "aladdin_connect" ]; 29 + pythonImportsCheck = [ 30 + "aladdin_connect" 31 + ]; 26 32 27 33 meta = with lib; { 28 34 description = "Python library for interacting with Genie Aladdin Connect devices"; 29 35 homepage = "https://github.com/shoejosh/aladdin-connect"; 36 + changelog = "https://github.com/shoejosh/aladdin-connect/releases/tag/${version}"; 30 37 license = with licenses; [ mit ]; 31 38 maintainers = with maintainers; [ fab ]; 32 39 };
+2 -2
pkgs/development/python-modules/cvss/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "cvss"; 11 - version = "2.5"; 11 + version = "2.6"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.7"; ··· 17 17 owner = "RedHatProductSecurity"; 18 18 repo = pname; 19 19 rev = "refs/tags/v${version}"; 20 - sha256 = "sha256-6S646cvm+UwdpRGOtCuNijWcUxhZD6IG407hNBz+NA4="; 20 + sha256 = "sha256-gD9MreJQPaxziy02Wt3BGFiIoQ/+pW3KqiNfNlTijJY="; 21 21 }; 22 22 23 23 nativeCheckInputs = [
+4 -3
pkgs/development/python-modules/datasette-publish-fly/default.nix
··· 10 10 11 11 buildPythonPackage rec { 12 12 pname = "datasette-publish-fly"; 13 - version = "1.2"; 13 + version = "1.3"; 14 14 format = "setuptools"; 15 15 16 16 disabled = pythonOlder "3.7"; ··· 18 18 src = fetchFromGitHub { 19 19 owner = "simonw"; 20 20 repo = pname; 21 - rev = version; 22 - hash = "sha256-0frP/RkpZX6LCR8cOlzcBG3pbcOh0KPuELlYUXS3dRE="; 21 + rev = "refs/tags/${version}"; 22 + hash = "sha256-L94QYcrTWjuoz0aEFTxPi8Xg0xERP1zCs7+vzhoJagc="; 23 23 }; 24 24 25 25 propagatedBuildInputs = [ ··· 39 39 meta = with lib; { 40 40 description = "Datasette plugin for publishing data using Fly"; 41 41 homepage = "https://datasette.io/plugins/datasette-publish-fly"; 42 + changelog = "https://github.com/simonw/datasette-publish-fly/releases/tag/${version}"; 42 43 license = licenses.asl20; 43 44 maintainers = with maintainers; [ fab ]; 44 45 };
+4 -3
pkgs/development/python-modules/django-tastypie/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "django-tastypie"; 11 - version = "0.14.4"; 11 + version = "0.14.5"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.7"; ··· 16 16 src = fetchFromGitHub { 17 17 owner = "django-tastypie"; 18 18 repo = pname; 19 - rev = "v${version}"; 20 - hash = "sha256-O/aVi8BshOZmg9WQxrFlBEOXfgyqJKVK/QlEFG3Edqs="; 19 + rev = "refs/tags/v${version}"; 20 + hash = "sha256-RgYinpo8eVzRaSkcnFkSq+IqpcFt6LCCHkpHyB/7u5M="; 21 21 }; 22 22 23 23 propagatedBuildInputs = [ ··· 35 35 meta = with lib; { 36 36 description = "Utilities and helpers for writing Pylint plugins"; 37 37 homepage = "https://github.com/django-tastypie/django-tastypie"; 38 + changelog = "https://github.com/django-tastypie/django-tastypie/releases/tag/v${version}"; 38 39 license = licenses.gpl2Only; 39 40 maintainers = with maintainers; [ fab ]; 40 41 };
+5 -3
pkgs/development/python-modules/intake/default.nix
··· 26 26 27 27 buildPythonPackage rec { 28 28 pname = "intake"; 29 - version = "0.6.5"; 29 + version = "0.6.6"; 30 30 format = "setuptools"; 31 31 32 32 disabled = pythonOlder "3.7"; ··· 34 34 src = fetchFromGitHub { 35 35 owner = pname; 36 36 repo = pname; 37 - rev = version; 38 - hash = "sha256-ABMXWUVptpOSPB1jQ57iXk/UG92puNCICzXo3ZMG2Pk="; 37 + rev = "refs/tags/${version}"; 38 + hash = "sha256-/VQKLmEpIOULTPpJKuVLyqqQVLKVhwVBoos9Q/upwQM="; 39 39 }; 40 40 41 41 propagatedBuildInputs = [ ··· 98 98 "test_read_pattern" 99 99 "test_remote_arr" 100 100 "test_remote_cat" 101 + "test_remote_env" 101 102 # ValueError 102 103 "test_mlist_parameter" 103 104 # ImportError ··· 118 119 meta = with lib; { 119 120 description = "Data load and catalog system"; 120 121 homepage = "https://github.com/ContinuumIO/intake"; 122 + changelog = "https://github.com/intake/intake/blob/${version}/docs/source/changelog.rst"; 121 123 license = licenses.bsd2; 122 124 maintainers = with maintainers; [ costrouc ]; 123 125 };
+14 -20
pkgs/development/python-modules/loguru/default.nix
··· 4 4 , buildPythonPackage 5 5 , colorama 6 6 , fetchpatch 7 - , fetchPypi 7 + , fetchFromGitHub 8 + , freezegun 9 + , mypy 8 10 , pytestCheckHook 9 11 , pythonOlder 10 12 }: 11 13 12 14 buildPythonPackage rec { 13 15 pname = "loguru"; 14 - version = "0.6.0"; 16 + # No release since Jan 2022, only master is compatible with Python 3.11 17 + # https://github.com/Delgan/loguru/issues/740 18 + version = "unstable-2023-01-20"; 15 19 format = "setuptools"; 16 20 17 21 disabled = pythonOlder "3.5"; 18 22 19 - src = fetchPypi { 20 - inherit pname version; 21 - sha256 = "sha256-BmvQZ1jQpRPpg2/ZxrWnW/s/02hB9LmWvGC1R6MJ1Bw="; 23 + src = fetchFromGitHub { 24 + owner = "Delgan"; 25 + repo = pname; 26 + rev = "07f94f3c8373733119f85aa8b9ca05ace3325a4b"; 27 + hash = "sha256-lMGyQbBX3z6186ojs/iew7JMrG91ivPA679T9r+7xYw="; 22 28 }; 23 29 24 - patches = [ 25 - (fetchpatch { 26 - name = "fix-test-repr-infinite-recursion.patch"; 27 - url = "https://github.com/Delgan/loguru/commit/4fe21f66991abeb1905e24c3bc3c634543d959a2.patch"; 28 - hash = "sha256-NUOkgUS28TOazO0txMinFtaKwsi/J1Y7kqjjvMRCnR8="; 29 - }) 30 - ]; 31 - 32 30 propagatedBuildInputs = lib.optionals (pythonOlder "3.7") [ 33 31 aiocontextvars 34 32 ]; ··· 36 34 nativeCheckInputs = [ 37 35 pytestCheckHook 38 36 colorama 37 + freezegun 38 + mypy 39 39 ]; 40 40 41 41 disabledTestPaths = lib.optionals stdenv.isDarwin [ 42 42 "tests/test_multiprocessing.py" 43 43 ]; 44 44 45 - disabledTests = [ 46 - "test_time_rotation_reopening" 47 - "test_file_buffering" 48 - # Tests are failing with Python 3.10 49 - "test_exception_others" 50 - "" 51 - ] ++ lib.optionals stdenv.isDarwin [ 45 + disabledTests = lib.optionals stdenv.isDarwin [ 52 46 "test_rotation_and_retention" 53 47 "test_rotation_and_retention_timed_file" 54 48 "test_renaming"
+21 -6
pkgs/development/python-modules/monty/default.nix
··· 1 1 { lib 2 2 , buildPythonPackage 3 3 , fetchFromGitHub 4 - , pythonOlder 5 4 , msgpack 6 - , pytestCheckHook 7 5 , numpy 8 6 , pandas 9 7 , pydantic 10 8 , pymongo 9 + , pytestCheckHook 10 + , pythonOlder 11 11 , ruamel-yaml 12 12 , tqdm 13 13 }: ··· 15 15 buildPythonPackage rec { 16 16 pname = "monty"; 17 17 version = "2022.9.9"; 18 - disabled = pythonOlder "3.5"; # uses type annotations 18 + format = "setuptools"; 19 + 20 + disabled = pythonOlder "3.7"; 19 21 20 22 src = fetchFromGitHub { 21 23 owner = "materialsvirtuallab"; 22 24 repo = pname; 23 25 rev = "refs/tags/v${version}"; 24 - sha256 = "sha256-7ToNiRSWxe9nNcaWWmS6bhVqWMEwXN4uiwtjAmuK5qw="; 26 + hash = "sha256-7ToNiRSWxe9nNcaWWmS6bhVqWMEwXN4uiwtjAmuK5qw="; 25 27 }; 26 28 27 29 postPatch = '' ··· 30 32 ''; 31 33 32 34 propagatedBuildInputs = [ 35 + msgpack 33 36 ruamel-yaml 34 37 tqdm 35 - msgpack 36 38 ]; 37 39 38 40 nativeCheckInputs = [ 39 - pytestCheckHook 40 41 numpy 41 42 pandas 42 43 pydantic 43 44 pymongo 45 + pytestCheckHook 46 + ]; 47 + 48 + pythonImportsCheck = [ 49 + "monty" 50 + ]; 51 + 52 + disabledTests = [ 53 + # Test file was removed and re-added after 2022.9.9 54 + "test_reverse_readfile_gz" 55 + "test_Path_objects" 56 + "test_zopen" 57 + "test_zpath" 44 58 ]; 45 59 46 60 meta = with lib; { ··· 51 65 patterns such as singleton and cached_class, and many more. 52 66 "; 53 67 homepage = "https://github.com/materialsvirtuallab/monty"; 68 + changelog = "https://github.com/materialsvirtuallab/monty/releases/tag/v${version}"; 54 69 license = licenses.mit; 55 70 maintainers = with maintainers; [ psyanticy ]; 56 71 };
+2 -2
pkgs/development/python-modules/neo4j/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "neo4j"; 11 - version = "5.4.0"; 11 + version = "5.5.0"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.7"; ··· 17 17 owner = "neo4j"; 18 18 repo = "neo4j-python-driver"; 19 19 rev = "refs/tags/${version}"; 20 - hash = "sha256-emUz6DHnrDBOu9Wlhum7ntK3JIt94/05tuBAT2x4Bjs="; 20 + hash = "sha256-K3ggXXDDdyPIcWL4eLo1HrpZB05tA9oYWpbOohcCF/w="; 21 21 }; 22 22 23 23 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/notify-py/default.nix
··· 18 18 19 19 buildPythonPackage rec { 20 20 pname = "notify-py"; 21 - version = "0.3.39"; 21 + version = "0.3.42"; 22 22 format = "pyproject"; 23 23 24 24 disabled = pythonOlder "3.6"; ··· 27 27 owner = "ms7m"; 28 28 repo = pname; 29 29 rev = "refs/tags/v${version}"; 30 - hash = "sha256-QIK5MCCOsD8SStoh7TRw+l9k28SjChwV2J/T7gMKnAs="; 30 + hash = "sha256-XtjJImH9UwPPZS/Yqs8S5xGXOLBRmJRawzxWXoPWvrM="; 31 31 }; 32 32 33 33 patches = lib.optionals stdenv.isLinux [
+2 -2
pkgs/development/python-modules/peaqevcore/default.nix
··· 6 6 7 7 buildPythonPackage rec { 8 8 pname = "peaqevcore"; 9 - version = "11.0.0"; 9 + version = "11.0.4"; 10 10 format = "setuptools"; 11 11 12 12 disabled = pythonOlder "3.7"; 13 13 14 14 src = fetchPypi { 15 15 inherit pname version; 16 - hash = "sha256-XWJlhbpOyEuAmnjOCYDe0LEtWckwi38rZv6KBydFgfM="; 16 + hash = "sha256-SU8vsKwZio/5UD2SMhLenfkBjXRuMZCPo2k6+1hx8Y4="; 17 17 }; 18 18 19 19 postPatch = ''
+2 -2
pkgs/development/python-modules/plugwise/default.nix
··· 21 21 22 22 buildPythonPackage rec { 23 23 pname = "plugwise"; 24 - version = "0.27.3"; 24 + version = "0.27.4"; 25 25 format = "setuptools"; 26 26 27 27 disabled = pythonOlder "3.7"; ··· 30 30 owner = pname; 31 31 repo = "python-plugwise"; 32 32 rev = "refs/tags/v${version}"; 33 - hash = "sha256-JO9Gc7ZhWeQIheAwanzCBQFum1BUoh7K/exAEkWp/1U="; 33 + hash = "sha256-Ti0ZQlWsZaGvpfCTUnGNzdKcqKO84fAtlIUWC0wiyTI="; 34 34 }; 35 35 36 36 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/pylutron/default.nix
··· 5 5 6 6 buildPythonPackage rec { 7 7 pname = "pylutron"; 8 - version = "0.2.9"; 8 + version = "0.2.10"; 9 9 10 10 src = fetchPypi { 11 11 inherit pname version; 12 - sha256 = "sha256-xy5XPNOrvdPZMCfa2MYA+xtUcFdGSurW5QYL6H7n2VI="; 12 + sha256 = "sha256-DKwjBQXC7O/8bFxq5shJJxRV3HYgBeS7tJXg4m3vQMY="; 13 13 }; 14 14 15 15 # Project has no tests
+4 -2
pkgs/development/python-modules/pyswitchbee/default.nix
··· 1 1 { lib 2 + , awesomeversion 2 3 , buildPythonPackage 3 4 , aiohttp 4 5 , fetchFromGitHub ··· 9 10 10 11 buildPythonPackage rec { 11 12 pname = "pyswitchbee"; 12 - version = "1.7.18"; 13 + version = "1.7.21"; 13 14 format = "pyproject"; 14 15 15 16 disabled = pythonOlder "3.9"; ··· 18 19 owner = "jafar-atili"; 19 20 repo = "pySwitchbee"; 20 21 rev = "refs/tags/${version}"; 21 - hash = "sha256-LQjtePFSMvZdAGH6f8CveaE7ASm/x9GuFj9s3TipYHQ="; 22 + hash = "sha256-3Ujs9GgdJm69vb8F00ZWaRgWXxkaPguX5DJ71bqOFec="; 22 23 }; 23 24 24 25 nativeBuildInputs = [ ··· 27 28 28 29 propagatedBuildInputs = [ 29 30 aiohttp 31 + awesomeversion 30 32 packaging 31 33 ]; 32 34
+6 -9
pkgs/development/python-modules/pywerview/default.nix
··· 7 7 , ldap3 8 8 , lxml 9 9 , pyasn1 10 + , pycryptodome 10 11 , pythonOlder 11 12 }: 12 13 13 14 buildPythonPackage rec { 14 15 pname = "pywerview"; 15 - version = "0.4.0"; 16 + version = "0.4.1"; 16 17 format = "setuptools"; 17 18 18 19 disabled = pythonOlder "3.7"; ··· 20 21 src = fetchFromGitHub { 21 22 owner = "the-useless-one"; 22 23 repo = pname; 23 - rev = "v${version}"; 24 - hash = "sha256-nrPhyBHW13dkXFC5YJfrkiztAxMw4KuEif0zCdjQEq0="; 24 + rev = "refs/tags/v${version}"; 25 + hash = "sha256-5/Cn70qQaUp38qko1Wq+gZMCcQtcAPtZwt7Zrx8MFc4="; 25 26 }; 26 27 27 28 propagatedBuildInputs = [ ··· 30 31 impacket 31 32 ldap3 32 33 lxml 34 + pycryptodome 33 35 pyasn1 34 36 ]; 35 37 36 38 # Module has no tests 37 39 doCheck = false; 38 40 39 - postPatch = '' 40 - # https://github.com/the-useless-one/pywerview/pull/51 41 - substituteInPlace setup.py \ 42 - --replace "bs4" "beautifulsoup4" 43 - ''; 44 - 45 41 pythonImportsCheck = [ 46 42 "pywerview" 47 43 ]; ··· 49 45 meta = with lib; { 50 46 description = "Module for PowerSploit's PowerView support"; 51 47 homepage = "https://github.com/the-useless-one/pywerview"; 48 + changelog = "https://github.com/the-useless-one/pywerview/releases/tag/v${version}"; 52 49 license = licenses.gpl3Plus; 53 50 maintainers = with maintainers; [ fab ]; 54 51 };
-1
pkgs/development/python-modules/sphinxcontrib-autoapi/default.nix
··· 47 47 longDescription = "Sphinx AutoAPI provides 'autodoc' style documentation for multiple programming languages without needing to load, run, or import the project being documented."; 48 48 license = licenses.mit; 49 49 maintainers = with maintainers; [ karolchmist ]; 50 - broken = stdenv.isDarwin; 51 50 }; 52 51 }
+2 -2
pkgs/development/python-modules/whois/default.nix
··· 7 7 8 8 buildPythonPackage rec { 9 9 pname = "whois"; 10 - version = "0.9.24"; 10 + version = "0.9.25"; 11 11 format = "setuptools"; 12 12 13 13 disabled = pythonOlder "3.7"; ··· 16 16 owner = "DannyCork"; 17 17 repo = "python-whois"; 18 18 rev = "refs/tags/${version}"; 19 - hash = "sha256-DxjfRBJh/qLafxXN2VcXHTWuajDg6lvmJ5U86Na3L5g="; 19 + hash = "sha256-h4s0cJbzc5uorT9yPtXIgVDwUExUe3cNMSHCWRhN1Q4="; 20 20 }; 21 21 22 22 propagatedBuildInputs = [
+36 -5
pkgs/development/python-modules/yark/default.nix
··· 1 - { lib, buildPythonPackage, fetchPypi, 2 - click, colorama, flask, requests, yt-dlp }: 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , poetry-core 5 + , pythonRelaxDepsHook 6 + , click 7 + , colorama 8 + , flask 9 + , requests 10 + , yt-dlp 11 + , progress 12 + }: 3 13 4 14 buildPythonPackage rec { 5 15 pname = "yark"; 6 - version = "1.2.3"; 16 + version = "1.2.4"; 17 + 18 + format = "pyproject"; 7 19 8 20 src = fetchPypi { 9 21 inherit pname version; 10 - sha256 = "sha256-KMnQpEH2Z19Y0jBjqx2rZjmlle2M9bcuDCjDIljQEYY="; 22 + sha256 = "fdd50d0e832b4522cbe24433f42ed571a1f199f571c1d0c98472b94a501db9cf"; 11 23 }; 12 24 25 + pythonRelaxDeps = [ 26 + "requests" 27 + ]; 28 + 29 + nativeBuildInputs = [ 30 + poetry-core 31 + pythonRelaxDepsHook 32 + ]; 33 + 13 34 propagatedBuildInputs = [ 14 - click colorama flask requests yt-dlp 35 + click 36 + colorama 37 + flask 38 + progress 39 + requests 40 + yt-dlp 15 41 ]; 16 42 17 43 # There aren't any unit tests. If test discovery runs, it will crash, halting the build. 18 44 # When upstream adds unit tests, please configure them here. Thanks! ~ C. 19 45 doCheck = false; 20 46 47 + pythonImportsCheck = [ 48 + "yark" 49 + ]; 50 + 21 51 meta = with lib; { 22 52 description = "YouTube archiving made simple"; 23 53 homepage = "https://github.com/Owez/yark"; 24 54 license = licenses.mit; 55 + maintainers = [ ]; 25 56 }; 26 57 }
+3 -3
pkgs/development/tools/buf/default.nix
··· 10 10 11 11 buildGoModule rec { 12 12 pname = "buf"; 13 - version = "1.12.0"; 13 + version = "1.13.1"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "bufbuild"; 17 17 repo = pname; 18 18 rev = "v${version}"; 19 - hash = "sha256-tEeAr1QSec1Sayfg2/erk5u6wBZDodZIMYq9MaU7ATA="; 19 + hash = "sha256-FEc83SVFCsGDrCg7IYmn8iZ6NozYFsIUJ3QORBYUdMI="; 20 20 }; 21 21 22 - vendorHash = "sha256-FCAxqyacDdt3mR628/sguvrBx+nG10648XqF5hA8z+s="; 22 + vendorHash = "sha256-Zmias6mJWYh+PCyBdnRlNyKIoFqEYJZNF19i559SGTI="; 23 23 24 24 patches = [ 25 25 # Skip a test that requires networking to be available to work.
+3 -3
pkgs/development/tools/cocogitto/default.nix
··· 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "cocogitto"; 5 - version = "5.3.0"; 5 + version = "5.3.1"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "oknozor"; 9 9 repo = pname; 10 10 rev = version; 11 - sha256 = "sha256-BqyV4hJw7H9yN5Kj/XwhYS6hElXdKUJEUi5M/PNlPO0="; 11 + sha256 = "sha256-Z0snC5NomUWzxI2qcRMxdZbC1aOQ8P2Ll9EdVfhP7ZU="; 12 12 }; 13 13 14 - cargoHash = "sha256-MA3XW2tPn0qVx7ve+UqCoG4nQ7UyuvXEebrPuLKqS4g="; 14 + cargoHash = "sha256-P/xwE3oLVsIoxPmG+S0htSHhZxCj79z2ARGe2WzWCEo="; 15 15 16 16 # Test depend on git configuration that would likly exist in a normal user enviroment 17 17 # and might be failing to create the test repository it works in.
+10
pkgs/misc/uboot/default.nix
··· 92 92 93 93 passAsFile = [ "extraConfig" ]; 94 94 95 + # Workaround '-idirafter' ordering bug in staging-next: 96 + # https://github.com/NixOS/nixpkgs/pull/210004 97 + # where libc '-idirafter' gets added after user's idirafter and 98 + # breaks. 99 + # TODO(trofi): remove it in staging once fixed in cc-wrapper. 100 + preConfigure = '' 101 + export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] buildPackages.stdenv.hostPlatform.config}=$(< ${buildPackages.stdenv.cc}/nix-support/libc-cflags) 102 + export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] stdenv.hostPlatform.config}=$(< ${stdenv.cc}/nix-support/libc-cflags) 103 + ''; 104 + 95 105 configurePhase = '' 96 106 runHook preConfigure 97 107
+1 -1
pkgs/os-specific/darwin/apple-sdk-11.0/frameworks.nix
··· 159 159 ScreenSaver = {}; 160 160 ScreenTime = {}; 161 161 ScriptingBridge = {}; 162 - Security = { inherit IOKit libDER xpc; }; 162 + Security = { inherit IOKit libDER; }; 163 163 SecurityFoundation = { inherit Security; }; 164 164 SecurityInterface = { inherit Security SecurityFoundation; }; 165 165 SensorKit = {};
+5 -4
pkgs/servers/dns/knot-resolver/default.nix
··· 3 3 , runCommand, pkg-config, meson, ninja, makeWrapper 4 4 # build+runtime deps. 5 5 , knot-dns, luajitPackages, libuv, gnutls, lmdb 6 - , systemd, libcap_ng, dns-root-data, nghttp2 # optionals, in principle 6 + , jemalloc, systemd, libcap_ng, dns-root-data, nghttp2 # optionals, in principle 7 7 # test-only deps. 8 8 , cmocka, which, cacert 9 9 , extraFeatures ? false /* catch-all if defaults aren't enough */ ··· 17 17 18 18 unwrapped = stdenv.mkDerivation rec { 19 19 pname = "knot-resolver"; 20 - version = "5.5.3"; 20 + version = "5.6.0"; 21 21 22 22 src = fetchurl { 23 23 url = "https://secure.nic.cz/files/knot-resolver/${pname}-${version}.tar.xz"; 24 - sha256 = "a38f57c68b7d237d662784d8406e6098aad66a148f44dcf498d1e9664c5fed2d"; 24 + sha256 = "0c82ae937b685dc477fb3176098e3dc106c898b7cd83553e5bc54dccb83c80d7"; 25 25 }; 26 26 27 27 outputs = [ "out" "dev" ]; ··· 63 63 # http://knot-resolver.readthedocs.io/en/latest/build.html#requirements 64 64 buildInputs = [ knot-dns lua.lua libuv gnutls lmdb ] 65 65 ++ optionals stdenv.isLinux [ /*lib*/systemd libcap_ng ] 66 - ++ [ nghttp2 ] 66 + ++ [ jemalloc nghttp2 ] 67 67 ## optional dependencies; TODO: dnstap 68 68 ; 69 69 ··· 71 71 "-Dkeyfile_default=${dns-root-data}/root.ds" 72 72 "-Droot_hints=${dns-root-data}/root.hints" 73 73 "-Dinstall_kresd_conf=disabled" # not really useful; examples are inside share/doc/ 74 + "-Dmalloc=jemalloc" 74 75 "--default-library=static" # not used by anyone 75 76 ] 76 77 ++ optional doInstallCheck "-Dunit_tests=enabled"
+2 -2
pkgs/servers/jackett/default.nix
··· 9 9 10 10 buildDotnetModule rec { 11 11 pname = "jackett"; 12 - version = "0.20.2688"; 12 + version = "0.20.2732"; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = pname; 16 16 repo = pname; 17 17 rev = "v${version}"; 18 - hash = "sha512-e2uJ4uV6e3cwvnt3hw8qAYmUOhoyfX93YEgsV1pT/lZynYS7/FRF2jgo8ZUa1WC8lr/+tBQl+17jkxuQoIT7AA=="; 18 + hash = "sha512-h9vQ4OFXt3Fb7+2QSsXJh/uqy9glRFAZfZ8fdBqqna/59PV8GtItYWSJi7FhGVeFMX+WMQnsxG0/8Hq1z7akMA=="; 19 19 }; 20 20 21 21 projectFile = "src/Jackett.Server/Jackett.Server.csproj";
+13 -7
pkgs/servers/nextcloud/default.nix
··· 2 2 3 3 let 4 4 generic = { 5 - version, sha256, 5 + version, hash, 6 6 eol ? false, extraVulnerabilities ? [] 7 7 }: let 8 8 major = lib.versions.major version; 9 + prerelease = builtins.length (lib.versions.splitVersion version) > 3; 9 10 in stdenv.mkDerivation rec { 10 11 pname = "nextcloud"; 11 12 inherit version; 12 13 13 14 src = fetchurl { 14 - url = "https://download.nextcloud.com/server/releases/${pname}-${version}.tar.bz2"; 15 - inherit sha256; 15 + url = "https://download.nextcloud.com/server/${if prerelease then "prereleases" else "release"}/${pname}-${version}.tar.bz2"; 16 + inherit hash; 16 17 }; 17 18 18 19 patches = [ (./patches + "/v${major}/0001-Setup-remove-custom-dbuser-creation-behavior.patch") ]; ··· 51 52 52 53 nextcloud24 = generic { 53 54 version = "24.0.9"; 54 - sha256 = "580a3384c9c09aefb8e9b41553d21a6e20001799549dbd25b31dea211d97dd1e"; 55 + hash = "sha256-WAozhMnAmu+46bQVU9IabiAAF5lUnb0lsx3qIR2X3R4="; 55 56 }; 56 57 57 58 nextcloud25 = generic { 58 59 version = "25.0.3"; 59 - sha256 = "4b2b1423736ef92469096fe24f61c24cad87a34e07c1c7a81b385d3ea25c00ec"; 60 + hash = "sha256-SysUI3Nu+SRpCW/iT2HCTK2Ho04HwceoGzhdPqJcAOw="; 61 + }; 62 + 63 + nextcloud26 = generic { 64 + version = "26.0.0beta1"; 65 + hash = "sha256-EfSfn0KjQzciHa3VcrDhGC/aZUw/KDjihXs+qVIcYX0="; 60 66 }; 61 67 62 - # tip: get the sha with: 63 - # curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256' 68 + # tip: get hash with: 69 + # nix hash to-sri --type sha256 $(curl https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256 | cut -d' ' -f1) 64 70 }
+12 -12
pkgs/servers/nextcloud/packages/24.json
··· 20 20 ] 21 21 }, 22 22 "contacts": { 23 - "sha256": "0qv3c7wmf9j74562xbjvhk6kbpna6ansiw3724dh4w8j5sldqysd", 24 - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.3/contacts-v4.2.3.tar.gz", 25 - "version": "4.2.3", 23 + "sha256": "1996f97w74slmh7ihv8p1lxl32rri5nnzp90mbb1imclpgac2i63", 24 + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.4/contacts-v4.2.4.tar.gz", 25 + "version": "4.2.4", 26 26 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 27 27 "homepage": "https://github.com/nextcloud/contacts#readme", 28 28 "licenses": [ ··· 110 110 ] 111 111 }, 112 112 "news": { 113 - "sha256": "0pnriarr2iqci2v2hn6vpvszf4m4pkcxsd2i13bp7n1zqkg6swd7", 114 - "url": "https://github.com/nextcloud/news/releases/download/20.0.0/news.tar.gz", 115 - "version": "20.0.0", 113 + "sha256": "0iz1yrl7h60yhc1d1gkalkzc5vlj8sq6lff0ggns6a6qpsdpn9c5", 114 + "url": "https://github.com/nextcloud/news/releases/download/20.0.1/news.tar.gz", 115 + "version": "20.0.1", 116 116 "description": "📰 A RSS/Atom Feed reader App for Nextcloud\n\n- 📲 Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- 🔄 Automatic updates of your news feeds\n- 🆓 Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", 117 117 "homepage": "https://github.com/nextcloud/news", 118 118 "licenses": [ ··· 140 140 ] 141 141 }, 142 142 "polls": { 143 - "sha256": "b6ef0e8b34cdb5169341e30340bc9cefaa1254a1a6020e951f86e828f8591a11", 144 - "url": "https://github.com/nextcloud/polls/releases/download/v3.8.3/polls.tar.gz", 145 - "version": "3.8.3", 143 + "sha256": "0qdm0hnljkv0df1s929awyjj1gsp3d6xv9llr52cxv66kkfx086y", 144 + "url": "https://github.com/nextcloud/polls/releases/download/v3.8.4/polls.tar.gz", 145 + "version": "3.8.4", 146 146 "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", 147 147 "homepage": "https://github.com/nextcloud/polls", 148 148 "licenses": [ ··· 160 160 ] 161 161 }, 162 162 "spreed": { 163 - "sha256": "0frilxny4mvp34fxw0k8al3r5apy3q6vq7z35jkph3vaq1889m9k", 164 - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v14.0.7/spreed-v14.0.7.tar.gz", 165 - "version": "14.0.7", 163 + "sha256": "0c5b46g5vi8fsjcd2r0wqza7iqyvbgznwww5zcyajf29a32950c6", 164 + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v14.0.8/spreed-v14.0.8.tar.gz", 165 + "version": "14.0.8", 166 166 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\n\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds", 167 167 "homepage": "https://github.com/nextcloud/spreed", 168 168 "licenses": [
+15 -15
pkgs/servers/nextcloud/packages/25.json
··· 10 10 ] 11 11 }, 12 12 "calendar": { 13 - "sha256": "04g1xm3q46j7harxr0n56r7kkkqjxvah7xijddyq5fj7icr6qf5d", 14 - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.1/calendar-v4.2.1.tar.gz", 15 - "version": "4.2.1", 13 + "sha256": "0yqpfp5nbzd7zar2rbcx3bhfgjxrp1sy6a57fdagndfi4y0r56hq", 14 + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.2/calendar-v4.2.2.tar.gz", 15 + "version": "4.2.2", 16 16 "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 17 17 "homepage": "https://github.com/nextcloud/calendar/", 18 18 "licenses": [ ··· 20 20 ] 21 21 }, 22 22 "contacts": { 23 - "sha256": "097a71if6kkc7nphfc8b6llqlsskjwp1vg83134hzgfscvllvaj8", 24 - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.0.2/contacts-v5.0.2.tar.gz", 25 - "version": "5.0.2", 23 + "sha256": "181lycyz4v7v1yir6ylmblgha625sn23nf3661g3izq1whi0wgr9", 24 + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.0.3/contacts-v5.0.3.tar.gz", 25 + "version": "5.0.3", 26 26 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 27 27 "homepage": "https://github.com/nextcloud/contacts#readme", 28 28 "licenses": [ ··· 90 90 ] 91 91 }, 92 92 "news": { 93 - "sha256": "0pnriarr2iqci2v2hn6vpvszf4m4pkcxsd2i13bp7n1zqkg6swd7", 94 - "url": "https://github.com/nextcloud/news/releases/download/20.0.0/news.tar.gz", 95 - "version": "20.0.0", 93 + "sha256": "0iz1yrl7h60yhc1d1gkalkzc5vlj8sq6lff0ggns6a6qpsdpn9c5", 94 + "url": "https://github.com/nextcloud/news/releases/download/20.0.1/news.tar.gz", 95 + "version": "20.0.1", 96 96 "description": "📰 A RSS/Atom Feed reader App for Nextcloud\n\n- 📲 Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- 🔄 Automatic updates of your news feeds\n- 🆓 Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", 97 97 "homepage": "https://github.com/nextcloud/news", 98 98 "licenses": [ ··· 120 120 ] 121 121 }, 122 122 "polls": { 123 - "sha256": "1amywiw91acp4g90wazmqmnw51s7z6rf27bdrzxrcqryd8igsniq", 124 - "url": "https://github.com/nextcloud/polls/releases/download/v4.1.0-beta4/polls.tar.gz", 125 - "version": "4.1.0-beta4", 123 + "sha256": "0mqc9zmxrm98byy6v13si3hwii8hx85998c4kv91vk6ad0sfxjhb", 124 + "url": "https://github.com/nextcloud/polls/releases/download/v4.1.2/polls.tar.gz", 125 + "version": "4.1.2", 126 126 "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", 127 127 "homepage": "https://github.com/nextcloud/polls", 128 128 "licenses": [ ··· 140 140 ] 141 141 }, 142 142 "spreed": { 143 - "sha256": "1w5v866lkd0skv666vhz75zwalr2w83shrhdvv354kill9k53awh", 144 - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.2/spreed-v15.0.2.tar.gz", 145 - "version": "15.0.2", 143 + "sha256": "07nh7nlz8di69ms1156fklj29526i3phlvki5vf2mxnlcz8ihg27", 144 + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.3/spreed-v15.0.3.tar.gz", 145 + "version": "15.0.3", 146 146 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\n\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds", 147 147 "homepage": "https://github.com/nextcloud/spreed", 148 148 "licenses": [
+62
pkgs/servers/nextcloud/packages/26.json
··· 1 + { 2 + "calendar": { 3 + "sha256": "0yqpfp5nbzd7zar2rbcx3bhfgjxrp1sy6a57fdagndfi4y0r56hq", 4 + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.2/calendar-v4.2.2.tar.gz", 5 + "version": "4.2.2", 6 + "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 7 + "homepage": "https://github.com/nextcloud/calendar/", 8 + "licenses": [ 9 + "agpl" 10 + ] 11 + }, 12 + "files_texteditor": { 13 + "sha256": "0rmk14iw34pd81snp3lm01k07wm5j2nh9spcd4j0m43l20b7kxss", 14 + "url": "https://github.com/nextcloud-releases/files_texteditor/releases/download/v2.15.0/files_texteditor.tar.gz", 15 + "version": "2.15.0", 16 + "description": "This application enables Nextcloud users to open, save and edit text files in the web browser. If enabled, an entry called \"Text file\" in the \"New\" button menu at the top of the web browser appears. When clicked, a new text file opens in the browser and the file can be saved into the current Nextcloud directory. Further, when a text file is clicked in the web browser, it will be opened and editable. If the privileges allow, a user can also edit shared files and save these changes back into the web browser.\nMore information is available in the text editor documentation.", 17 + "homepage": "https://github.com/nextcloud/files_texteditor", 18 + "licenses": [ 19 + "agpl" 20 + ] 21 + }, 22 + "mail": { 23 + "sha256": "", 24 + "url": "https://github.com/nextcloud-releases/mail/releases/download/v2.2.2/mail-v2.2.2.tar.gz", 25 + "version": "2.2.2", 26 + "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!", 27 + "homepage": "https://github.com/nextcloud/mail#readme", 28 + "licenses": [ 29 + "agpl" 30 + ] 31 + }, 32 + "notes": { 33 + "sha256": "1jcgv3awr45jq3n3qv851qlpbdl2plixba0iq2s54dmhciypdckl", 34 + "url": "https://github.com/nextcloud/notes/releases/download/v4.6.0/notes.tar.gz", 35 + "version": "4.6.0", 36 + "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/stefan-niedermann/nextcloud-notes), [iOS](https://github.com/owncloud/notes-iOS-App) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.", 37 + "homepage": "https://github.com/nextcloud/notes", 38 + "licenses": [ 39 + "agpl" 40 + ] 41 + }, 42 + "tasks": { 43 + "sha256": "0jm13d6nm7cfsw27yfiq1il9xjlh0qrq8xby2yz9dmggn7lk1dx5", 44 + "url": "https://github.com/nextcloud/tasks/releases/download/v0.14.5/tasks.tar.gz", 45 + "version": "0.14.5", 46 + "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.", 47 + "homepage": "https://github.com/nextcloud/tasks/", 48 + "licenses": [ 49 + "agpl" 50 + ] 51 + }, 52 + "unsplash": { 53 + "sha256": "17qqn6kwpvkq21c92jyy3pfvjaj5xms1hr07fnn39zxg0nmwjdd8", 54 + "url": "https://github.com/nextcloud/unsplash/releases/download/v2.1.1/unsplash.tar.gz", 55 + "version": "2.1.1", 56 + "description": "Show a new random featured nature photo in your nextcloud. Now with choosable motives!", 57 + "homepage": "https://github.com/nextcloud/unsplash/", 58 + "licenses": [ 59 + "agpl" 60 + ] 61 + } 62 + }
+149
pkgs/servers/nextcloud/patches/v26/0001-Setup-remove-custom-dbuser-creation-behavior.patch
··· 1 + From fc3e14155b3c4300b691ab46579830e725457a54 Mon Sep 17 00:00:00 2001 2 + From: Maximilian Bosch <maximilian@mbosch.me> 3 + Date: Sat, 10 Sep 2022 15:18:05 +0200 4 + Subject: [PATCH] Setup: remove custom dbuser creation behavior 5 + 6 + Both PostgreSQL and MySQL can be authenticated against from Nextcloud by 7 + supplying a database password. Now, during setup the following things 8 + happen: 9 + 10 + * When using postgres and the db user has elevated permissions, a new 11 + unprivileged db user is created and the settings `dbuser`/`dbpass` are 12 + altered in `config.php`. 13 + 14 + * When using MySQL, the password is **always** regenerated since 15 + 24.0.5/23.0.9[1]. 16 + 17 + I consider both cases problematic: the reason why people do configuration 18 + management is to have it as single source of truth! So, IMHO any 19 + application that silently alters config and thus causes deployed 20 + nodes to diverge from the configuration is harmful for that. 21 + 22 + I guess it was sheer luck that it worked for so long in NixOS because 23 + nobody has apparently used password authentication with a privileged 24 + user to operate Nextcloud (which is a good thing in fact). 25 + 26 + [1] https://github.com/nextcloud/server/pull/33513 27 + --- 28 + lib/private/Setup/MySQL.php | 53 -------------------------------- 29 + lib/private/Setup/PostgreSQL.php | 37 ---------------------- 30 + 2 files changed, 90 deletions(-) 31 + 32 + diff --git a/lib/private/Setup/MySQL.php b/lib/private/Setup/MySQL.php 33 + index e3004c269bc..bc958e84e44 100644 34 + --- a/lib/private/Setup/MySQL.php 35 + +++ b/lib/private/Setup/MySQL.php 36 + @@ -141,62 +141,6 @@ 37 + $rootUser = $this->dbUser; 38 + $rootPassword = $this->dbPassword; 39 + 40 + - //create a random password so we don't need to store the admin password in the config file 41 + - $saveSymbols = str_replace(['\"', '\\', '\'', '`'], '', ISecureRandom::CHAR_SYMBOLS); 42 + - $password = $this->random->generate(22, ISecureRandom::CHAR_ALPHANUMERIC . $saveSymbols) 43 + - . $this->random->generate(2, ISecureRandom::CHAR_UPPER) 44 + - . $this->random->generate(2, ISecureRandom::CHAR_LOWER) 45 + - . $this->random->generate(2, ISecureRandom::CHAR_DIGITS) 46 + - . $this->random->generate(2, $saveSymbols) 47 + - ; 48 + - $this->dbPassword = str_shuffle($password); 49 + - 50 + - try { 51 + - //user already specified in config 52 + - $oldUser = $this->config->getValue('dbuser', false); 53 + - 54 + - //we don't have a dbuser specified in config 55 + - if ($this->dbUser !== $oldUser) { 56 + - //add prefix to the admin username to prevent collisions 57 + - $adminUser = substr('oc_' . $username, 0, 16); 58 + - 59 + - $i = 1; 60 + - while (true) { 61 + - //this should be enough to check for admin rights in mysql 62 + - $query = 'SELECT user FROM mysql.user WHERE user=?'; 63 + - $result = $connection->executeQuery($query, [$adminUser]); 64 + - 65 + - //current dbuser has admin rights 66 + - $data = $result->fetchAll(); 67 + - $result->closeCursor(); 68 + - //new dbuser does not exist 69 + - if (count($data) === 0) { 70 + - //use the admin login data for the new database user 71 + - $this->dbUser = $adminUser; 72 + - $this->createDBUser($connection); 73 + - 74 + - break; 75 + - } else { 76 + - //repeat with different username 77 + - $length = strlen((string)$i); 78 + - $adminUser = substr('oc_' . $username, 0, 16 - $length) . $i; 79 + - $i++; 80 + - } 81 + - } 82 + - } else { 83 + - // Reuse existing password if a database config is already present 84 + - $this->dbPassword = $rootPassword; 85 + - } 86 + - } catch (\Exception $ex) { 87 + - $this->logger->info('Can not create a new MySQL user, will continue with the provided user.', [ 88 + - 'exception' => $ex, 89 + - 'app' => 'mysql.setup', 90 + - ]); 91 + - // Restore the original credentials 92 + - $this->dbUser = $rootUser; 93 + - $this->dbPassword = $rootPassword; 94 + - } 95 + - 96 + $this->config->setValues([ 97 + 'dbuser' => $this->dbUser, 98 + 'dbpassword' => $this->dbPassword, 99 + diff --git a/lib/private/Setup/PostgreSQL.php b/lib/private/Setup/PostgreSQL.php 100 + index af816c7ad04..e49e5508e15 100644 101 + --- a/lib/private/Setup/PostgreSQL.php 102 + +++ b/lib/private/Setup/PostgreSQL.php 103 + @@ -45,43 +45,6 @@ class PostgreSQL extends AbstractDatabase { 104 + $connection = $this->connect([ 105 + 'dbname' => 'postgres' 106 + ]); 107 + - //check for roles creation rights in postgresql 108 + - $builder = $connection->getQueryBuilder(); 109 + - $builder->automaticTablePrefix(false); 110 + - $query = $builder 111 + - ->select('rolname') 112 + - ->from('pg_roles') 113 + - ->where($builder->expr()->eq('rolcreaterole', new Literal('TRUE'))) 114 + - ->andWhere($builder->expr()->eq('rolname', $builder->createNamedParameter($this->dbUser))); 115 + - 116 + - try { 117 + - $result = $query->execute(); 118 + - $canCreateRoles = $result->rowCount() > 0; 119 + - } catch (DatabaseException $e) { 120 + - $canCreateRoles = false; 121 + - } 122 + - 123 + - if ($canCreateRoles) { 124 + - $connectionMainDatabase = $this->connect(); 125 + - //use the admin login data for the new database user 126 + - 127 + - //add prefix to the postgresql user name to prevent collisions 128 + - $this->dbUser = 'oc_' . strtolower($username); 129 + - //create a new password so we don't need to store the admin config in the config file 130 + - $this->dbPassword = \OC::$server->getSecureRandom()->generate(30, ISecureRandom::CHAR_ALPHANUMERIC); 131 + - 132 + - $this->createDBUser($connection); 133 + - 134 + - // Go to the main database and grant create on the public schema 135 + - // The code below is implemented to make installing possible with PostgreSQL version 15: 136 + - // https://www.postgresql.org/docs/release/15.0/ 137 + - // From the release notes: For new databases having no need to defend against insider threats, granting CREATE permission will yield the behavior of prior releases 138 + - // Therefore we assume that the database is only used by one user/service which is Nextcloud 139 + - // Additional services should get installed in a separate database in order to stay secure 140 + - // Also see https://www.postgresql.org/docs/15/ddl-schemas.html#DDL-SCHEMAS-PATTERNS 141 + - $connectionMainDatabase->executeQuery('GRANT CREATE ON SCHEMA public TO ' . addslashes($this->dbUser)); 142 + - $connectionMainDatabase->close(); 143 + - } 144 + 145 + $this->config->setValues([ 146 + 'dbuser' => $this->dbUser, 147 + -- 148 + 2.38.1 149 +
+9
pkgs/servers/web-apps/wordpress/generic.nix
··· 12 12 installPhase = '' 13 13 runHook preInstall 14 14 15 + # remove non-essential plugins and themes 16 + rm -r wp-content/{plugins,themes} 17 + mkdir wp-content/plugins 18 + cat << EOF > wp-content/plugins/index.php 19 + <?php 20 + // Silence is golden. 21 + EOF 22 + cp -a wp-content/{plugins,themes} 23 + 15 24 mkdir -p $out/share/wordpress 16 25 cp -r . $out/share/wordpress 17 26
+3 -3
pkgs/servers/x11/xorg/default.nix
··· 1180 1180 # THIS IS A GENERATED FILE. DO NOT EDIT! 1181 1181 libXpm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXt, gettext }: stdenv.mkDerivation { 1182 1182 pname = "libXpm"; 1183 - version = "3.5.13"; 1183 + version = "3.5.15"; 1184 1184 builder = ./builder.sh; 1185 1185 src = fetchurl { 1186 - url = "mirror://xorg/individual/lib/libXpm-3.5.13.tar.bz2"; 1187 - sha256 = "09dc6nwlb2122h02vl64k9x56mxnyqz2gwpga0abfv4bb1bxmlcw"; 1186 + url = "mirror://xorg/individual/lib/libXpm-3.5.15.tar.xz"; 1187 + sha256 = "1hfivygzrzpq81vg9z2l46pd5nrzm326k6z3cfw6syiibin91fv0"; 1188 1188 }; 1189 1189 hardeningDisable = [ "bindnow" "relro" ]; 1190 1190 strictDeps = true;
+2
pkgs/servers/x11/xorg/overrides.nix
··· 4 4 automake, autoconf, libiconv, libtool, intltool, 5 5 freetype, tradcpp, fontconfig, meson, ninja, ed, fontforge, 6 6 libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm, netbsd, 7 + ncompress, 7 8 mesa, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook, 8 9 mcpp, libepoxy, openssl, pkg-config, llvm, libxslt, libxcrypt, 9 10 ApplicationServices, Carbon, Cocoa, Xplugin, ··· 314 315 libXpm = super.libXpm.overrideAttrs (attrs: { 315 316 outputs = [ "bin" "dev" "out" ]; # tiny man in $bin 316 317 patchPhase = "sed -i '/USE_GETTEXT_TRUE/d' sxpm/Makefile.in cxpm/Makefile.in"; 318 + XPM_PATH_COMPRESS = lib.makeBinPath [ ncompress ]; 317 319 }); 318 320 319 321 libXpresent = super.libXpresent.overrideAttrs (attrs: {
+1 -1
pkgs/servers/x11/xorg/tarballs.list
··· 193 193 mirror://xorg/individual/lib/libxkbfile-1.1.0.tar.bz2 194 194 mirror://xorg/individual/lib/libXmu-1.1.3.tar.bz2 195 195 mirror://xorg/individual/lib/libXp-1.0.3.tar.bz2 196 - mirror://xorg/individual/lib/libXpm-3.5.13.tar.bz2 196 + mirror://xorg/individual/lib/libXpm-3.5.15.tar.xz 197 197 mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2 198 198 mirror://xorg/individual/lib/libXrandr-1.5.2.tar.bz2 199 199 mirror://xorg/individual/lib/libXrender-0.9.10.tar.bz2
+3 -3
pkgs/tools/admin/syft/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "syft"; 5 - version = "0.66.2"; 5 + version = "0.68.1"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "anchore"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-CIFK4XIYpRK9CJOwQUV6kRGU++iWJCdMBR7v6xh0iaY="; 11 + sha256 = "sha256-iOJnSeVRAjmJblaipmk05J9BvAkYgyS1OA8b3xDykXc="; 12 12 # populate values that require us to use git. By doing this in postFetch we 13 13 # can delete .git afterwards and maintain better reproducibility of the src. 14 14 leaveDotGit = true; ··· 22 22 }; 23 23 # hash mismatch with darwin 24 24 proxyVendor = true; 25 - vendorHash = "sha256-ttvfzlSFgh0xQ0W/ftLeSrJNOzg7Iq1qdLgflGy7N8Q="; 25 + vendorHash = "sha256-5erZB2CoXVfIK0jYEe0HmdZaeLKLAqOiKi8QAQQFVKU="; 26 26 27 27 nativeBuildInputs = [ installShellFiles ]; 28 28
+34
pkgs/tools/misc/gh-actions-cache/default.nix
··· 1 + { lib 2 + , fetchFromGitHub 3 + , buildGoModule 4 + }: 5 + 6 + buildGoModule rec { 7 + pname = "gh-actions-cache"; 8 + version = "1.0.3"; 9 + 10 + src = fetchFromGitHub { 11 + owner = "actions"; 12 + repo = "gh-actions-cache"; 13 + rev = "v${version}"; 14 + hash = "sha256-5iCj6z4HCMVFeplb3dGP/V60z6zMUnUPVBMnPi4yU1Q="; 15 + }; 16 + 17 + vendorHash = "sha256-i9akQ0IjH9NItjYvMWLiGnFQrfZhA7SOvPZiUvdtDrk="; 18 + 19 + ldflags = [ 20 + "-s" 21 + "-w" 22 + ]; 23 + 24 + # Tests need network 25 + doCheck = false; 26 + 27 + meta = { 28 + description = "gh extension to manage GitHub Actions caches"; 29 + homepage = "https://github.com/actions/gh-actions-cache"; 30 + changelog = "https://github.com/actions/gh-actions-cache/releases/tag/${src.rev}"; 31 + license = lib.licenses.mit; 32 + maintainers = with lib.maintainers; [ amesgen ]; 33 + }; 34 + }
+4 -8
pkgs/tools/misc/licensor/default.nix
··· 17 17 18 18 cargoSha256 = "1h66d1brx441bg7vzbqdish4avgmc6h7rrkw2qf1siwmplwqqhw0"; 19 19 20 - patches = [ 21 - # Support for 2022, https://github.com/raftario/licensor/pull/68 22 - (fetchpatch { 23 - name = "support-for-2022.patch"; 24 - url = "https://github.com/raftario/licensor/commit/6b2f248e5ad9e454fe30d71397691e47ac69b19e.patch"; 25 - sha256 = "sha256-kXiY5s2kuU+ibV3RpBoy7y3cmJU+gECBTsmRXWBOTP8="; 26 - }) 27 - ]; 20 + # https://github.com/raftario/licensor/issues/67 21 + postPatch = '' 22 + sed "/Copyright (c) 2021/s/2021/$(date +%Y)/" -i tests/integration.rs 23 + ''; 28 24 29 25 meta = with lib; { 30 26 description = "Write licenses to stdout";
+3 -3
pkgs/tools/networking/s3rs/default.nix
··· 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "s3rs"; 5 - version = "0.4.16"; 5 + version = "0.4.19"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "yanganto"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-n95ejw6EZ4zXzP16xFoUkVn1zIMcVgINy7m5NOz063A="; 11 + sha256 = "sha256-mJ1bMfv/HY74TknpRvu8RIs1d2VlNreEVtHCtQSHQw8="; 12 12 }; 13 13 14 - cargoSha256 = "sha256-eecQi03w7lq3VAsv9o+3kulwhAXPoxuDPMu/ZCQEom4="; 14 + cargoHash = "sha256-Q1EqEyNxWIx3wD8zuU7/MO3Qz6zsfBZbtT/IIUmJccE="; 15 15 16 16 nativeBuildInputs = [ python3 perl pkg-config ]; 17 17 buildInputs = [ openssl ]
+2
pkgs/tools/package-management/nix/common.nix
··· 169 169 "--disable-init-state" 170 170 ] ++ lib.optionals stdenv.isLinux [ 171 171 "--with-sandbox-shell=${busybox-sandbox-shell}/bin/busybox" 172 + ] ++ lib.optionals (atLeast210 && stdenv.isLinux && stdenv.hostPlatform.isStatic) [ 173 + "--enable-embedded-sandbox-shell" 172 174 ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform ? nix && stdenv.hostPlatform.nix ? system) [ 173 175 "--with-system=${stdenv.hostPlatform.nix.system}" 174 176 ] ++ lib.optionals (!withLibseccomp) [
+3 -3
pkgs/tools/security/grype/default.nix
··· 8 8 9 9 buildGoModule rec { 10 10 pname = "grype"; 11 - version = "0.55.0"; 11 + version = "0.56.0"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "anchore"; 15 15 repo = pname; 16 16 rev = "v${version}"; 17 - hash = "sha256-Y72h1YCf42RinGw2mKZb8Bz8ip+LUW377xwJht67Q1s="; 17 + hash = "sha256-xNv4pI6iT6lNmjeUIW8ObPFJw9H1SiVTg9fRx6Osiwc="; 18 18 # populate values that require us to use git. By doing this in postFetch we 19 19 # can delete .git afterwards and maintain better reproducibility of the src. 20 20 leaveDotGit = true; ··· 28 28 }; 29 29 proxyVendor = true; 30 30 31 - vendorHash = "sha256-xzBOZyzwxVFTFgtmu7DLBpdkV9bwzJ9RETkdyV2HtQo="; 31 + vendorHash = "sha256-Sez5jNFdL11cHBBPcY0b8qUiupmjPo9MHwUUi7FaNiA="; 32 32 33 33 nativeBuildInputs = [ 34 34 installShellFiles
+3 -3
pkgs/tools/security/trufflehog/default.nix
··· 5 5 6 6 buildGoModule rec { 7 7 pname = "trufflehog"; 8 - version = "3.25.4"; 8 + version = "3.26.0"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "trufflesecurity"; 12 12 repo = "trufflehog"; 13 13 rev = "refs/tags/v${version}"; 14 - hash = "sha256-aj7Zeaj2zvIp/USRYnhCWCsTiYlPL9AmEFKQYZbwhCE="; 14 + hash = "sha256-cjggYIc/xy7w8Q8yXd26QWr1ky4gMuwRAmxrEObVlx0="; 15 15 }; 16 16 17 - vendorHash = "sha256-71gPd42kaJaLpyXH1FpCf6sRiKmyGNuGxkX3QV8vvHY="; 17 + vendorHash = "sha256-z2na/CO/YqIYEAYJ9ATQ/wbOOBFt0Kr+ERN5TCFbZbA="; 18 18 19 19 # Test cases run git clone and require network access 20 20 doCheck = false;
+3 -3
pkgs/tools/system/automatic-timezoned/default.nix
··· 5 5 6 6 rustPlatform.buildRustPackage rec { 7 7 pname = "automatic-timezoned"; 8 - version = "1.0.57"; 8 + version = "1.0.60"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "maxbrunet"; 12 12 repo = pname; 13 13 rev = "v${version}"; 14 - sha256 = "sha256-Wb7X4eDG9vZLJF5b9JPb0JVjQgstFo7Zr1MnidKcuZI="; 14 + sha256 = "sha256-6p9hLbU5ZaA4o6PRyfSt/gb3D3XeeWacJ2LlpJ0+w18="; 15 15 }; 16 16 17 - cargoHash = "sha256-BcIGaAGTwm8QBvrL7J91asNEpnFdsgDtRPDSWdE9JHI="; 17 + cargoHash = "sha256-COWvEfFQMi3ltQSEFK3S6y07YLqqtjAf2H4p0TX/U70="; 18 18 19 19 meta = with lib; { 20 20 description = "Automatically update system timezone based on location";
+2 -2
pkgs/tools/system/clinfo/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "clinfo"; 5 - version = "3.0.21.02.21"; 5 + version = "3.0.23.01.25"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "Oblomov"; 9 9 repo = "clinfo"; 10 10 rev = version; 11 - sha256 = "sha256-0ijfbfv1F6mnt1uFH/A4yOADJoAFrPMa3yAOFJW53ek="; 11 + sha256 = "sha256-1jZP4SnLIHh3vQJLBp+j/eQ1c8XBGFR2hjYxflhpWAU="; 12 12 }; 13 13 14 14 buildInputs = lib.optionals (!stdenv.isDarwin) [
+21 -1
pkgs/top-level/all-packages.nix
··· 1425 1425 1426 1426 gfshare = callPackage ../tools/security/gfshare { }; 1427 1427 1428 + gh-actions-cache = callPackage ../tools/misc/gh-actions-cache { }; 1429 + 1428 1430 gh-cal = callPackage ../tools/misc/gh-cal { 1429 1431 inherit (darwin.apple_sdk.frameworks) Security; 1430 1432 }; ··· 9992 9994 grocy = callPackage ../servers/grocy { }; 9993 9995 9994 9996 inherit (callPackage ../servers/nextcloud {}) 9995 - nextcloud23 nextcloud24 nextcloud25; 9997 + nextcloud23 nextcloud24 nextcloud25 nextcloud26; 9996 9998 9997 9999 nextcloud23Packages = ( callPackage ../servers/nextcloud/packages { 9998 10000 apps = lib.importJSON ../servers/nextcloud/packages/23.json; ··· 10002 10004 }); 10003 10005 nextcloud25Packages = ( callPackage ../servers/nextcloud/packages { 10004 10006 apps = lib.importJSON ../servers/nextcloud/packages/25.json; 10007 + }); 10008 + nextcloud26Packages = ( callPackage ../servers/nextcloud/packages { 10009 + apps = lib.importJSON ../servers/nextcloud/packages/26.json; 10005 10010 }); 10006 10011 10007 10012 nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { }; ··· 14015 14020 clang_12 = llvmPackages_12.clang; 14016 14021 clang_13 = llvmPackages_13.clang; 14017 14022 clang_14 = llvmPackages_14.clang; 14023 + clang_15 = llvmPackages_15.clang; 14018 14024 14019 14025 clang-tools = callPackage ../development/tools/clang-tools { 14020 14026 llvmPackages = llvmPackages_latest; ··· 14058 14064 14059 14065 clang-tools_14 = callPackage ../development/tools/clang-tools { 14060 14066 llvmPackages = llvmPackages_14; 14067 + }; 14068 + 14069 + clang-tools_15 = callPackage ../development/tools/clang-tools { 14070 + llvmPackages = llvmPackages_15; 14061 14071 }; 14062 14072 14063 14073 clang-analyzer = callPackage ../development/tools/analysis/clang-analyzer { ··· 15042 15052 lld_12 = llvmPackages_12.lld; 15043 15053 lld_13 = llvmPackages_13.lld; 15044 15054 lld_14 = llvmPackages_14.lld; 15055 + lld_15 = llvmPackages_15.lld; 15045 15056 15046 15057 lldb = llvmPackages_latest.lldb; 15047 15058 lldb_5 = llvmPackages_5.lldb; ··· 15054 15065 lldb_12 = llvmPackages_12.lldb; 15055 15066 lldb_13 = llvmPackages_13.lldb; 15056 15067 lldb_14 = llvmPackages_14.lldb; 15068 + lldb_15 = llvmPackages_15.lldb; 15057 15069 15058 15070 llvm = llvmPackages.llvm; 15059 15071 llvm_5 = llvmPackages_5.llvm; ··· 15066 15078 llvm_12 = llvmPackages_12.llvm; 15067 15079 llvm_13 = llvmPackages_13.llvm; 15068 15080 llvm_14 = llvmPackages_14.llvm; 15081 + llvm_15 = llvmPackages_15.llvm; 15069 15082 15070 15083 libllvm = llvmPackages.libllvm; 15071 15084 llvm-manpages = llvmPackages.llvm-manpages; ··· 15158 15171 buildLlvmTools = buildPackages.llvmPackages_14.tools; 15159 15172 targetLlvmLibraries = targetPackages.llvmPackages_14.libraries or llvmPackages_14.libraries; 15160 15173 targetLlvm = targetPackages.llvmPackages_14.llvm or llvmPackages_14.llvm; 15174 + })); 15175 + 15176 + llvmPackages_15 = recurseIntoAttrs (callPackage ../development/compilers/llvm/15 ({ 15177 + inherit (stdenvAdapters) overrideCC; 15178 + buildLlvmTools = buildPackages.llvmPackages_15.tools; 15179 + targetLlvmLibraries = targetPackages.llvmPackages_15.libraries or llvmPackages_15.libraries; 15180 + targetLlvm = targetPackages.llvmPackages_15.llvm or llvmPackages_15.llvm; 15161 15181 })); 15162 15182 15163 15183 llvmPackages_latest = llvmPackages_14;