Merge master into staging-next

authored by nixpkgs-ci[bot] and committed by GitHub f71ec3ed 758b9a02

+926 -624
+3 -3
pkgs/applications/editors/emacs/elisp-packages/manual-packages/el-easydraw/package.nix
··· 8 9 melpaBuild { 10 pname = "edraw"; 11 - version = "1.2.0-unstable-2025-02-01"; 12 13 src = fetchFromGitHub { 14 owner = "misohena"; 15 repo = "el-easydraw"; 16 - rev = "7f41e93554e4855ae44c0d719f7253f873ed4cb8"; 17 - hash = "sha256-dwmyBm+PtrfW74WRlhdXql8yLuB2fKwdvobaChKoBP0="; 18 }; 19 20 propagatedUserEnvPkgs = [ gzip ];
··· 8 9 melpaBuild { 10 pname = "edraw"; 11 + version = "1.2.0-unstable-2025-02-15"; 12 13 src = fetchFromGitHub { 14 owner = "misohena"; 15 repo = "el-easydraw"; 16 + rev = "7d557a3ea1b1308d3fc56607bd00fee1be36007f"; 17 + hash = "sha256-7quQwBR5dnSkT8HZd/Tng5qQiqL+H6BCuQCWSe0B4Hw="; 18 }; 19 20 propagatedUserEnvPkgs = [ gzip ];
+41 -32
pkgs/applications/editors/neovim/build-neovim-plugin.nix
··· 1 - { lib 2 - , stdenv 3 - , lua 4 - , toVimPlugin 5 }: 6 let 7 # sanitizeDerivationName 8 normalizeName = lib.replaceStrings [ "." ] [ "-" ]; 9 in 10 11 - # function to create vim plugin from lua packages that are already packaged in 12 - # luaPackages 13 - { 14 - # the lua derivation to convert into a neovim plugin 15 - luaAttr ? (lua.pkgs.${normalizeName attrs.pname}) 16 - , ... 17 - }@attrs: 18 - let 19 - originalLuaDrv = if (lib.typeOf luaAttr == "string") then 20 - lib.warn "luaAttr as string is deprecated since September 2024. Pass a lua derivation directly ( e.g., `buildNeovimPlugin { luaAttr = lua.pkgs.plenary-nvim; }`)" lua.pkgs.${normalizeName luaAttr} 21 - else luaAttr; 22 23 24 - luaDrv = originalLuaDrv.overrideAttrs (oa: { 25 - version = attrs.version or oa.version; 26 - rockspecVersion = oa.rockspecVersion; 27 - 28 - extraConfig = '' 29 - -- to create a flat hierarchy 30 - lua_modules_path = "lua" 31 - ''; 32 - }); 33 34 - finalDrv = toVimPlugin (luaDrv.overrideAttrs(oa: attrs // { 35 - nativeBuildInputs = oa.nativeBuildInputs or [] ++ [ 36 - lua.pkgs.luarocksMoveDataFolder 37 - ]; 38 - version = "${originalLuaDrv.version}-unstable-${oa.version}"; 39 - })); 40 - in 41 - finalDrv
··· 1 + { 2 + lib, 3 + lua, 4 + toVimPlugin, 5 }: 6 let 7 # sanitizeDerivationName 8 normalizeName = lib.replaceStrings [ "." ] [ "-" ]; 9 in 10 11 + # function to create vim plugin from lua packages that are already packaged in 12 + # luaPackages 13 + { 14 + # the lua derivation to convert into a neovim plugin 15 + luaAttr ? (lua.pkgs.${normalizeName attrs.pname}), 16 + ... 17 + }@attrs: 18 + let 19 + originalLuaDrv = 20 + if (lib.typeOf luaAttr == "string") then 21 + lib.warn 22 + "luaAttr as string is deprecated since September 2024. Pass a lua derivation directly ( e.g., `buildNeovimPlugin { luaAttr = lua.pkgs.plenary-nvim; }`)" 23 + lua.pkgs.${normalizeName luaAttr} 24 + else 25 + luaAttr; 26 27 + luaDrv = originalLuaDrv.overrideAttrs (oa: { 28 + version = attrs.version or oa.version; 29 + rockspecVersion = oa.rockspecVersion; 30 31 + extraConfig = '' 32 + -- to create a flat hierarchy 33 + lua_modules_path = "lua" 34 + ''; 35 + }); 36 37 + finalDrv = toVimPlugin ( 38 + luaDrv.overrideAttrs ( 39 + oa: 40 + attrs 41 + // { 42 + nativeBuildInputs = oa.nativeBuildInputs or [ ] ++ [ 43 + lua.pkgs.luarocksMoveDataFolder 44 + ]; 45 + version = "${originalLuaDrv.version}-unstable-${oa.version}"; 46 + } 47 + ) 48 + ); 49 + in 50 + finalDrv
+4 -4
pkgs/applications/editors/neovim/utils.nix
··· 171 withPython3 ? true, 172 withNodeJs ? false, 173 withRuby ? true, 174 - # perl is problematic https://github.com/NixOS/nixpkgs/issues/132368 175 withPerl ? false, 176 177 # so that we can pass the full neovim config while ignoring it ··· 272 )); 273 274 /* 275 - Fork of vimUtils.packDir that additionnally generates a propagated-build-inputs-file that 276 can be used by the lua hooks to generate a proper LUA_PATH 277 278 Generates a packpath folder as expected by vim ··· 286 rawPackDir = vimUtils.packDir packages; 287 288 in 289 - rawPackDir.override ({ 290 postBuild = '' 291 mkdir $out/nix-support 292 for i in $(find -L $out -name propagated-build-inputs ); do 293 cat "$i" >> $out/nix-support/propagated-build-inputs 294 done 295 ''; 296 - }); 297 298 in 299 {
··· 171 withPython3 ? true, 172 withNodeJs ? false, 173 withRuby ? true, 174 + # Perl is problematic https://github.com/NixOS/nixpkgs/issues/132368 175 withPerl ? false, 176 177 # so that we can pass the full neovim config while ignoring it ··· 272 )); 273 274 /* 275 + Fork of vimUtils.packDir that additionally generates a propagated-build-inputs-file that 276 can be used by the lua hooks to generate a proper LUA_PATH 277 278 Generates a packpath folder as expected by vim ··· 286 rawPackDir = vimUtils.packDir packages; 287 288 in 289 + rawPackDir.override { 290 postBuild = '' 291 mkdir $out/nix-support 292 for i in $(find -L $out -name propagated-build-inputs ); do 293 cat "$i" >> $out/nix-support/propagated-build-inputs 294 done 295 ''; 296 + }; 297 298 in 299 {
+326 -254
pkgs/applications/editors/neovim/wrapper.nix
··· 1 - { stdenv, symlinkJoin, lib, makeWrapper 2 - , bundlerEnv 3 - , ruby 4 - , nodejs 5 - , writeText 6 - , neovim-node-client 7 - , python3 8 - , callPackage 9 - , neovimUtils 10 - , perl 11 - , lndir 12 - , vimUtils 13 }: 14 15 neovim-unwrapped: ··· 18 # inherit interpreter from neovim 19 lua = neovim-unwrapped.lua; 20 21 - wrapper = { 22 - extraName ? "" 23 - # certain plugins need a custom configuration (available in passthru.initLua) 24 - # to work with nix. 25 - # if true, the wrapper automatically appends those snippets when necessary 26 - , autoconfigure ? true 27 28 - # append to PATH runtime deps of plugins 29 - , autowrapRuntimeDeps ? true 30 31 - # should contain all args but the binary. Can be either a string or list 32 - , wrapperArgs ? [] 33 - , withPython2 ? false 34 - , withPython3 ? true 35 - /* the function you would have passed to python3.withPackages */ 36 - , extraPython3Packages ? (_: [ ]) 37 38 - , withNodeJs ? false 39 - , withPerl ? false 40 - , withRuby ? true 41 42 - # wether to create symlinks in $out/bin/vi(m) -> $out/bin/nvim 43 - , vimAlias ? false 44 - , viAlias ? false 45 46 - # additional argument not generated by makeNeovimConfig 47 - # it will append "-u <customRc>" to the wrapped arguments 48 - # set to false if you want to control where to save the generated config 49 - # (e.g., in ~/.config/init.vim or project/.nvimrc) 50 - , wrapRc ? true 51 - # vimL code that should be sourced as part of the generated init.lua file 52 - , neovimRcContent ? null 53 - # lua code to put into the generated init.lua file 54 - , luaRcContent ? "" 55 - # DEPRECATED: entry to load in packpath 56 - # use 'plugins' instead 57 - , packpathDirs ? null # not used anymore 58 59 - # a list of neovim plugin derivations, for instance 60 - # plugins = [ 61 - # { plugin=far-vim; config = "let g:far#source='rg'"; optional = false; } 62 - # ] 63 - , plugins ? [] 64 - , ... 65 - }@attrs: 66 - assert withPython2 -> throw "Python2 support has been removed from the neovim wrapper, please remove withPython2 and python2Env."; 67 68 - assert packpathDirs != null -> throw "packpathdirs is not used anymore: pass a list of neovim plugin derivations in 'plugins' instead."; 69 70 - stdenv.mkDerivation (finalAttrs: 71 - let 72 - pluginsNormalized = neovimUtils.normalizePlugins finalAttrs.plugins; 73 74 - myVimPackage = neovimUtils.normalizedPluginsToVimPackage pluginsNormalized; 75 76 - rubyEnv = bundlerEnv { 77 - name = "neovim-ruby-env"; 78 - gemdir = ./ruby_provider; 79 - postBuild = '' 80 - ln -sf ${ruby}/bin/* $out/bin 81 - ''; 82 - }; 83 84 - pluginRC = lib.foldl (acc: p: if p.config != null then acc ++ [p.config] else acc) [] pluginsNormalized; 85 86 - # a limited RC script used only to generate the manifest for remote plugins 87 - manifestRc = ""; 88 - # we call vimrcContent without 'packages' to avoid the init.vim generation 89 - neovimRcContent' = lib.concatStringsSep "\n" (pluginRC ++ lib.optional (neovimRcContent != null) neovimRcContent); 90 91 - packpathDirs.myNeovimPackages = myVimPackage; 92 - finalPackdir = neovimUtils.packDir packpathDirs; 93 94 - luaPluginRC = let 95 - op = acc: normalizedPlugin: 96 - acc ++ lib.optional (finalAttrs.autoconfigure && normalizedPlugin.plugin.passthru ? initLua) normalizedPlugin.plugin.passthru.initLua; 97 - in 98 - lib.foldl' op [] pluginsNormalized; 99 100 - rcContent = '' 101 - ${luaRcContent} 102 - '' + lib.optionalString (neovimRcContent' != null) '' 103 - vim.cmd.source "${writeText "init.vim" neovimRcContent'}" 104 - '' + 105 - lib.concatStringsSep "\n" luaPluginRC 106 - ; 107 108 - getDeps = attrname: map (plugin: plugin.${attrname} or (_: [ ])); 109 110 - requiredPlugins = vimUtils.requiredPluginsForPackage myVimPackage; 111 - pluginPython3Packages = getDeps "python3Dependencies" requiredPlugins; 112 113 - python3Env = lib.warnIf (attrs ? python3Env) "Pass your python packages via the `extraPython3Packages`, e.g., `extraPython3Packages = ps: [ ps.pandas ]`" 114 - python3.pkgs.python.withPackages (ps: 115 - [ ps.pynvim ] 116 - ++ (extraPython3Packages ps) 117 - ++ (lib.concatMap (f: f ps) pluginPython3Packages)); 118 119 120 - wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs; 121 122 - generatedWrapperArgs = 123 - [ 124 - # vim accepts a limited number of commands so we join all the provider ones 125 - "--add-flags" ''--cmd "lua ${providerLuaRc}"'' 126 - ] 127 - ++ lib.optionals (finalAttrs.packpathDirs.myNeovimPackages.start != [] || finalAttrs.packpathDirs.myNeovimPackages.opt != []) [ 128 - "--add-flags" ''--cmd "set packpath^=${finalPackdir}"'' 129 - "--add-flags" ''--cmd "set rtp^=${finalPackdir}"'' 130 - ] 131 - ++ lib.optionals finalAttrs.withRuby [ 132 - "--set" "GEM_HOME" "${rubyEnv}/${rubyEnv.ruby.gemPath}" 133 - ] ++ lib.optionals (finalAttrs.runtimeDeps != []) [ 134 - "--suffix" "PATH" ":" (lib.makeBinPath finalAttrs.runtimeDeps) 135 - ] 136 ; 137 - 138 - providerLuaRc = neovimUtils.generateProviderRc { 139 - inherit (finalAttrs) withPython3 withNodeJs withPerl withRuby; 140 - }; 141 - 142 - # If configure != {}, we can't generate the rplugin.vim file with e.g 143 - # NVIM_SYSTEM_RPLUGIN_MANIFEST *and* NVIM_RPLUGIN_MANIFEST env vars set in 144 - # the wrapper. That's why only when configure != {} (tested both here and 145 - # when postBuild is evaluated), we call makeWrapper once to generate a 146 - # wrapper with most arguments we need, excluding those that cause problems to 147 - # generate rplugin.vim, but still required for the final wrapper. 148 - finalMakeWrapperArgs = 149 - [ "${neovim-unwrapped}/bin/nvim" "${placeholder "out"}/bin/nvim" ] 150 - ++ [ "--set" "NVIM_SYSTEM_RPLUGIN_MANIFEST" "${placeholder "out"}/rplugin.vim" ] 151 - ++ lib.optionals finalAttrs.wrapRc [ "--add-flags" "-u ${writeText "init.lua" rcContent}" ] 152 - ++ finalAttrs.generatedWrapperArgs 153 - ; 154 - 155 - perlEnv = perl.withPackages (p: [ p.NeovimExt p.Appcpanminus ]); 156 - 157 - pname = "neovim"; 158 - version = lib.getVersion neovim-unwrapped; 159 - in { 160 - name = "${pname}-${version}${extraName}"; 161 - inherit pname version; 162 - inherit plugins; 163 164 - __structuredAttrs = true; 165 - dontUnpack = true; 166 - inherit viAlias vimAlias withNodeJs withPython3 withPerl withRuby; 167 - inherit autoconfigure autowrapRuntimeDeps wrapRc providerLuaRc packpathDirs; 168 - inherit python3Env rubyEnv; 169 - inherit wrapperArgs generatedWrapperArgs; 170 171 172 - runtimeDeps = let 173 - op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or []; 174 - runtimeDeps = lib.foldl' op [] pluginsNormalized; 175 in 176 - lib.optional finalAttrs.withRuby rubyEnv 177 - ++ lib.optional finalAttrs.withNodeJs nodejs 178 - ++ lib.optionals finalAttrs.autowrapRuntimeDeps runtimeDeps 179 ; 180 181 182 - luaRcContent = rcContent; 183 - # Remove the symlinks created by symlinkJoin which we need to perform 184 - # extra actions upon 185 - postBuild = lib.optionalString stdenv.hostPlatform.isLinux '' 186 - rm $out/share/applications/nvim.desktop 187 - substitute ${neovim-unwrapped}/share/applications/nvim.desktop $out/share/applications/nvim.desktop \ 188 - --replace-warn 'Name=Neovim' 'Name=Neovim wrapper' 189 - '' 190 - + lib.optionalString finalAttrs.withPython3 '' 191 - makeWrapper ${python3Env.interpreter} $out/bin/nvim-python3 --unset PYTHONPATH --unset PYTHONSAFEPATH 192 - '' 193 - + lib.optionalString (finalAttrs.withRuby) '' 194 - ln -s ${finalAttrs.rubyEnv}/bin/neovim-ruby-host $out/bin/nvim-ruby 195 - '' 196 - + lib.optionalString finalAttrs.withNodeJs '' 197 - ln -s ${neovim-node-client}/bin/neovim-node-host $out/bin/nvim-node 198 - '' 199 - + lib.optionalString finalAttrs.withPerl '' 200 - ln -s ${perlEnv}/bin/perl $out/bin/nvim-perl 201 - '' 202 - + lib.optionalString finalAttrs.vimAlias '' 203 - ln -s $out/bin/nvim $out/bin/vim 204 - '' 205 - + lib.optionalString finalAttrs.viAlias '' 206 - ln -s $out/bin/nvim $out/bin/vi 207 - '' 208 - + lib.optionalString (manifestRc != null) (let 209 - manifestWrapperArgs = 210 - [ "${neovim-unwrapped}/bin/nvim" "${placeholder "out"}/bin/nvim-wrapper" ] ++ finalAttrs.generatedWrapperArgs; 211 - in '' 212 - echo "Generating remote plugin manifest" 213 - export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim 214 - makeWrapper ${lib.escapeShellArgs manifestWrapperArgs} ${wrapperArgsStr} 215 216 - # Some plugins assume that the home directory is accessible for 217 - # initializing caches, temporary files, etc. Even if the plugin isn't 218 - # actively used, it may throw an error as soon as Neovim is launched 219 - # (e.g., inside an autoload script), causing manifest generation to 220 - # fail. Therefore, let's create a fake home directory before generating 221 - # the manifest, just to satisfy the needs of these plugins. 222 - # 223 - # See https://github.com/Yggdroot/LeaderF/blob/v1.21/autoload/lfMru.vim#L10 224 - # for an example of this behavior. 225 - export HOME="$(mktemp -d)" 226 - # Launch neovim with a vimrc file containing only the generated plugin 227 - # code. Pass various flags to disable temp file generation 228 - # (swap/viminfo) and redirect errors to stderr. 229 - # Only display the log on error since it will contain a few normally 230 - # irrelevant messages. 231 - if ! $out/bin/nvim-wrapper \ 232 - -u ${writeText "manifest.vim" manifestRc} \ 233 - -i NONE -n \ 234 - -V1rplugins.log \ 235 - +UpdateRemotePlugins +quit! > outfile 2>&1; then 236 - cat outfile 237 - echo -e "\nGenerating rplugin.vim failed!" 238 - exit 1 239 - fi 240 - rm "${placeholder "out"}/bin/nvim-wrapper" 241 - '') 242 - + '' 243 - rm $out/bin/nvim 244 - touch $out/rplugin.vim 245 246 - echo "Looking for lua dependencies..." 247 - source ${lua}/nix-support/utils.sh 248 249 - _addToLuaPath "${finalPackdir}" 250 251 - echo "LUA_PATH towards the end of packdir: $LUA_PATH" 252 253 - makeWrapper ${lib.escapeShellArgs finalMakeWrapperArgs} ${wrapperArgsStr} \ 254 - --prefix LUA_PATH ';' "$LUA_PATH" \ 255 - --prefix LUA_CPATH ';' "$LUA_CPATH" 256 - ''; 257 258 - buildPhase = '' 259 - runHook preBuild 260 - mkdir -p $out 261 - for i in ${neovim-unwrapped}; do 262 - lndir -silent $i $out 263 - done 264 - runHook postBuild 265 - ''; 266 267 - preferLocalBuild = true; 268 269 - nativeBuildInputs = [ makeWrapper lndir ]; 270 271 - # A Vim "package", see ':h packages' 272 - vimPackage = myVimPackage; 273 274 - checkPhase = '' 275 - runHook preCheck 276 277 - $out/bin/nvim -i NONE -e +quitall! 278 - runHook postCheck 279 - ''; 280 281 - passthru = { 282 - inherit providerLuaRc packpathDirs; 283 - unwrapped = neovim-unwrapped; 284 - initRc = neovimRcContent'; 285 286 - tests = callPackage ./tests { 287 - }; 288 - }; 289 290 - meta = { 291 - inherit (neovim-unwrapped.meta) 292 - description 293 - longDescription 294 - homepage 295 - mainProgram 296 - license 297 - maintainers 298 - platforms; 299 300 - # To prevent builds on hydra 301 - hydraPlatforms = []; 302 - # prefer wrapper over the package 303 - priority = (neovim-unwrapped.meta.priority or lib.meta.defaultPriority) - 1; 304 - }; 305 - }); 306 in 307 - lib.makeOverridable wrapper
··· 1 + { 2 + stdenv, 3 + lib, 4 + makeWrapper, 5 + bundlerEnv, 6 + ruby, 7 + nodejs, 8 + writeText, 9 + neovim-node-client, 10 + python3, 11 + callPackage, 12 + neovimUtils, 13 + perl, 14 + lndir, 15 + vimUtils, 16 }: 17 18 neovim-unwrapped: ··· 21 # inherit interpreter from neovim 22 lua = neovim-unwrapped.lua; 23 24 + wrapper = 25 + { 26 + extraName ? "", 27 + # certain plugins need a custom configuration (available in passthru.initLua) 28 + # to work with nix. 29 + # if true, the wrapper automatically appends those snippets when necessary 30 + autoconfigure ? true, 31 32 + # append to PATH runtime deps of plugins 33 + autowrapRuntimeDeps ? true, 34 35 + # should contain all args but the binary. Can be either a string or list 36 + wrapperArgs ? [ ], 37 + withPython2 ? false, 38 + withPython3 ? true, 39 + # the function you would have passed to python3.withPackages 40 + extraPython3Packages ? (_: [ ]), 41 42 + withNodeJs ? false, 43 + withPerl ? false, 44 + withRuby ? true, 45 46 + # wether to create symlinks in $out/bin/vi(m) -> $out/bin/nvim 47 + vimAlias ? false, 48 + viAlias ? false, 49 50 + # additional argument not generated by makeNeovimConfig 51 + # it will append "-u <customRc>" to the wrapped arguments 52 + # set to false if you want to control where to save the generated config 53 + # (e.g., in ~/.config/init.vim or project/.nvimrc) 54 + wrapRc ? true, 55 + # vimL code that should be sourced as part of the generated init.lua file 56 + neovimRcContent ? null, 57 + # lua code to put into the generated init.lua file 58 + luaRcContent ? "", 59 + # DEPRECATED: entry to load in packpath 60 + # use 'plugins' instead 61 + packpathDirs ? null, # not used anymore 62 63 + # a list of neovim plugin derivations, for instance 64 + # plugins = [ 65 + # { plugin=far-vim; config = "let g:far#source='rg'"; optional = false; } 66 + # ] 67 + plugins ? [ ], 68 + ... 69 + }@attrs: 70 + assert 71 + withPython2 72 + -> throw "Python2 support has been removed from the neovim wrapper, please remove withPython2 and python2Env."; 73 74 + assert 75 + packpathDirs != null 76 + -> throw "packpathdirs is not used anymore: pass a list of neovim plugin derivations in 'plugins' instead."; 77 78 + stdenv.mkDerivation ( 79 + finalAttrs: 80 + let 81 + pluginsNormalized = neovimUtils.normalizePlugins finalAttrs.plugins; 82 83 + myVimPackage = neovimUtils.normalizedPluginsToVimPackage pluginsNormalized; 84 85 + rubyEnv = bundlerEnv { 86 + name = "neovim-ruby-env"; 87 + gemdir = ./ruby_provider; 88 + postBuild = '' 89 + ln -sf ${ruby}/bin/* $out/bin 90 + ''; 91 + }; 92 93 + pluginRC = lib.foldl ( 94 + acc: p: if p.config != null then acc ++ [ p.config ] else acc 95 + ) [ ] pluginsNormalized; 96 97 + # a limited RC script used only to generate the manifest for remote plugins 98 + manifestRc = ""; 99 + # we call vimrcContent without 'packages' to avoid the init.vim generation 100 + neovimRcContent' = lib.concatStringsSep "\n" ( 101 + pluginRC ++ lib.optional (neovimRcContent != null) neovimRcContent 102 + ); 103 104 + packpathDirs.myNeovimPackages = myVimPackage; 105 + finalPackdir = neovimUtils.packDir packpathDirs; 106 107 + luaPluginRC = 108 + let 109 + op = 110 + acc: normalizedPlugin: 111 + acc 112 + ++ lib.optional ( 113 + finalAttrs.autoconfigure && normalizedPlugin.plugin.passthru ? initLua 114 + ) normalizedPlugin.plugin.passthru.initLua; 115 + in 116 + lib.foldl' op [ ] pluginsNormalized; 117 118 + rcContent = 119 + '' 120 + ${luaRcContent} 121 + '' 122 + + lib.optionalString (neovimRcContent' != null) '' 123 + vim.cmd.source "${writeText "init.vim" neovimRcContent'}" 124 + '' 125 + + lib.concatStringsSep "\n" luaPluginRC; 126 127 + getDeps = attrname: map (plugin: plugin.${attrname} or (_: [ ])); 128 129 + requiredPlugins = vimUtils.requiredPluginsForPackage myVimPackage; 130 + pluginPython3Packages = getDeps "python3Dependencies" requiredPlugins; 131 132 + python3Env = 133 + lib.warnIf (attrs ? python3Env) 134 + "Pass your python packages via the `extraPython3Packages`, e.g., `extraPython3Packages = ps: [ ps.pandas ]`" 135 + python3.pkgs.python.withPackages 136 + (ps: [ ps.pynvim ] ++ (extraPython3Packages ps) ++ (lib.concatMap (f: f ps) pluginPython3Packages)); 137 138 + wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs; 139 140 + generatedWrapperArgs = 141 + [ 142 + # vim accepts a limited number of commands so we join all the provider ones 143 + "--add-flags" 144 + ''--cmd "lua ${providerLuaRc}"'' 145 + ] 146 + ++ 147 + lib.optionals 148 + ( 149 + finalAttrs.packpathDirs.myNeovimPackages.start != [ ] 150 + || finalAttrs.packpathDirs.myNeovimPackages.opt != [ ] 151 + ) 152 + [ 153 + "--add-flags" 154 + ''--cmd "set packpath^=${finalPackdir}"'' 155 + "--add-flags" 156 + ''--cmd "set rtp^=${finalPackdir}"'' 157 + ] 158 + ++ lib.optionals finalAttrs.withRuby [ 159 + "--set" 160 + "GEM_HOME" 161 + "${rubyEnv}/${rubyEnv.ruby.gemPath}" 162 + ] 163 + ++ lib.optionals (finalAttrs.runtimeDeps != [ ]) [ 164 + "--suffix" 165 + "PATH" 166 + ":" 167 + (lib.makeBinPath finalAttrs.runtimeDeps) 168 + ]; 169 170 + providerLuaRc = neovimUtils.generateProviderRc { 171 + inherit (finalAttrs) 172 + withPython3 173 + withNodeJs 174 + withPerl 175 + withRuby 176 ; 177 + }; 178 179 + # If `configure` != {}, we can't generate the rplugin.vim file with e.g 180 + # NVIM_SYSTEM_RPLUGIN_MANIFEST *and* NVIM_RPLUGIN_MANIFEST env vars set in 181 + # the wrapper. That's why only when `configure` != {} (tested both here and 182 + # when `postBuild` is evaluated), we call makeWrapper once to generate a 183 + # wrapper with most arguments we need, excluding those that cause problems to 184 + # generate rplugin.vim, but still required for the final wrapper. 185 + finalMakeWrapperArgs = 186 + [ 187 + "${neovim-unwrapped}/bin/nvim" 188 + "${placeholder "out"}/bin/nvim" 189 + ] 190 + ++ [ 191 + "--set" 192 + "NVIM_SYSTEM_RPLUGIN_MANIFEST" 193 + "${placeholder "out"}/rplugin.vim" 194 + ] 195 + ++ lib.optionals finalAttrs.wrapRc [ 196 + "--add-flags" 197 + "-u ${writeText "init.lua" rcContent}" 198 + ] 199 + ++ finalAttrs.generatedWrapperArgs; 200 201 + perlEnv = perl.withPackages (p: [ 202 + p.NeovimExt 203 + p.Appcpanminus 204 + ]); 205 206 + pname = "neovim"; 207 + version = lib.getVersion neovim-unwrapped; 208 in 209 + { 210 + name = "${pname}-${version}${extraName}"; 211 + inherit pname version; 212 + inherit plugins; 213 + 214 + __structuredAttrs = true; 215 + dontUnpack = true; 216 + inherit 217 + viAlias 218 + vimAlias 219 + withNodeJs 220 + withPython3 221 + withPerl 222 + withRuby 223 ; 224 + inherit 225 + autoconfigure 226 + autowrapRuntimeDeps 227 + wrapRc 228 + providerLuaRc 229 + packpathDirs 230 + ; 231 + inherit python3Env rubyEnv; 232 + inherit wrapperArgs generatedWrapperArgs; 233 234 + runtimeDeps = 235 + let 236 + op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or [ ]; 237 + runtimeDeps = lib.foldl' op [ ] pluginsNormalized; 238 + in 239 + lib.optional finalAttrs.withRuby rubyEnv 240 + ++ lib.optional finalAttrs.withNodeJs nodejs 241 + ++ lib.optionals finalAttrs.autowrapRuntimeDeps runtimeDeps; 242 243 + luaRcContent = rcContent; 244 + # Remove the symlinks created by symlinkJoin which we need to perform 245 + # extra actions upon 246 + postBuild = 247 + lib.optionalString stdenv.hostPlatform.isLinux '' 248 + rm $out/share/applications/nvim.desktop 249 + substitute ${neovim-unwrapped}/share/applications/nvim.desktop $out/share/applications/nvim.desktop \ 250 + --replace-warn 'Name=Neovim' 'Name=Neovim wrapper' 251 + '' 252 + + lib.optionalString finalAttrs.withPython3 '' 253 + makeWrapper ${python3Env.interpreter} $out/bin/nvim-python3 --unset PYTHONPATH --unset PYTHONSAFEPATH 254 + '' 255 + + lib.optionalString (finalAttrs.withRuby) '' 256 + ln -s ${finalAttrs.rubyEnv}/bin/neovim-ruby-host $out/bin/nvim-ruby 257 + '' 258 + + lib.optionalString finalAttrs.withNodeJs '' 259 + ln -s ${neovim-node-client}/bin/neovim-node-host $out/bin/nvim-node 260 + '' 261 + + lib.optionalString finalAttrs.withPerl '' 262 + ln -s ${perlEnv}/bin/perl $out/bin/nvim-perl 263 + '' 264 + + lib.optionalString finalAttrs.vimAlias '' 265 + ln -s $out/bin/nvim $out/bin/vim 266 + '' 267 + + lib.optionalString finalAttrs.viAlias '' 268 + ln -s $out/bin/nvim $out/bin/vi 269 + '' 270 + + lib.optionalString (manifestRc != null) ( 271 + let 272 + manifestWrapperArgs = [ 273 + "${neovim-unwrapped}/bin/nvim" 274 + "${placeholder "out"}/bin/nvim-wrapper" 275 + ] ++ finalAttrs.generatedWrapperArgs; 276 + in 277 + '' 278 + echo "Generating remote plugin manifest" 279 + export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim 280 + makeWrapper ${lib.escapeShellArgs manifestWrapperArgs} ${wrapperArgsStr} 281 282 + # Some plugins assume that the home directory is accessible for 283 + # initializing caches, temporary files, etc. Even if the plugin isn't 284 + # actively used, it may throw an error as soon as Neovim is launched 285 + # (e.g., inside an autoload script), causing manifest generation to 286 + # fail. Therefore, let's create a fake home directory before generating 287 + # the manifest, just to satisfy the needs of these plugins. 288 + # 289 + # See https://github.com/Yggdroot/LeaderF/blob/v1.21/autoload/lfMru.vim#L10 290 + # for an example of this behavior. 291 + export HOME="$(mktemp -d)" 292 + # Launch neovim with a vimrc file containing only the generated plugin 293 + # code. Pass various flags to disable temp file generation 294 + # (swap/viminfo) and redirect errors to stderr. 295 + # Only display the log on error since it will contain a few normally 296 + # irrelevant messages. 297 + if ! $out/bin/nvim-wrapper \ 298 + -u ${writeText "manifest.vim" manifestRc} \ 299 + -i NONE -n \ 300 + -V1rplugins.log \ 301 + +UpdateRemotePlugins +quit! > outfile 2>&1; then 302 + cat outfile 303 + echo -e "\nGenerating rplugin.vim failed!" 304 + exit 1 305 + fi 306 + rm "${placeholder "out"}/bin/nvim-wrapper" 307 + '' 308 + ) 309 + + '' 310 + rm $out/bin/nvim 311 + touch $out/rplugin.vim 312 313 + echo "Looking for lua dependencies..." 314 + source ${lua}/nix-support/utils.sh 315 316 + _addToLuaPath "${finalPackdir}" 317 318 + echo "LUA_PATH towards the end of packdir: $LUA_PATH" 319 320 + makeWrapper ${lib.escapeShellArgs finalMakeWrapperArgs} ${wrapperArgsStr} \ 321 + --prefix LUA_PATH ';' "$LUA_PATH" \ 322 + --prefix LUA_CPATH ';' "$LUA_CPATH" 323 + ''; 324 325 + buildPhase = '' 326 + runHook preBuild 327 + mkdir -p $out 328 + for i in ${neovim-unwrapped}; do 329 + lndir -silent $i $out 330 + done 331 + runHook postBuild 332 + ''; 333 334 + preferLocalBuild = true; 335 336 + nativeBuildInputs = [ 337 + makeWrapper 338 + lndir 339 + ]; 340 341 + # A Vim "package", see ':h packages' 342 + vimPackage = myVimPackage; 343 344 + checkPhase = '' 345 + runHook preCheck 346 347 + $out/bin/nvim -i NONE -e +quitall! 348 + runHook postCheck 349 + ''; 350 351 + passthru = { 352 + inherit providerLuaRc packpathDirs; 353 + unwrapped = neovim-unwrapped; 354 + initRc = neovimRcContent'; 355 356 + tests = callPackage ./tests { 357 + }; 358 + }; 359 360 + meta = { 361 + inherit (neovim-unwrapped.meta) 362 + description 363 + longDescription 364 + homepage 365 + mainProgram 366 + license 367 + maintainers 368 + platforms 369 + ; 370 371 + # To prevent builds on hydra 372 + hydraPlatforms = [ ]; 373 + # prefer wrapper over the package 374 + priority = (neovim-unwrapped.meta.priority or lib.meta.defaultPriority) - 1; 375 + }; 376 + } 377 + ); 378 in 379 + lib.makeOverridable wrapper
+3 -3
pkgs/by-name/ac/act/package.nix
··· 8 }: 9 10 let 11 - version = "0.2.72"; 12 in 13 buildGoModule { 14 pname = "act"; ··· 18 owner = "nektos"; 19 repo = "act"; 20 tag = "v${version}"; 21 - hash = "sha256-7tllNoloKlwBYL4TQY0o2ojbCtT0zG9GrU3xeRJu298="; 22 }; 23 24 - vendorHash = "sha256-Px+pftEqpf/JhN11vNxYWIKVhUsrtd+XLIDaEAJHkX0="; 25 26 doCheck = false; 27
··· 8 }: 9 10 let 11 + version = "0.2.74"; 12 in 13 buildGoModule { 14 pname = "act"; ··· 18 owner = "nektos"; 19 repo = "act"; 20 tag = "v${version}"; 21 + hash = "sha256-UfETstrK8iAGbCn2BRjI8eRkFp/RGVYe0S1P8P8MUHg="; 22 }; 23 24 + vendorHash = "sha256-NIXiXD1JCtvgTG7QPSMCjQfZSSEcdMUKdqureSWDB4k="; 25 26 doCheck = false; 27
+3 -3
pkgs/by-name/bi/bilibili/sources.nix
··· 1 # Generated by ./update.sh - do not update manually! 2 { 3 - version = "1.16.2-3"; 4 - arm64-hash = "sha256-IRzBbURF/qbPiExihycfeAQQuxO1ZG9Zy/DGr5BeCVE="; 5 - x86_64-hash = "sha256-Es/1Dbs0/aV8zFYFBck4y2VaNYu4+nu0bdDvyyfsk9Q="; 6 }
··· 1 # Generated by ./update.sh - do not update manually! 2 { 3 + version = "1.16.2-4"; 4 + arm64-hash = "sha256-3R6VmDteqrUzzAp/ki12bkSEBLZVMhewI507oXZ5kF4="; 5 + x86_64-hash = "sha256-PamrsXNIKrBHq1r6d0DOE5482hGR92ipWNUO5dwxpbA="; 6 }
+3 -3
pkgs/by-name/de/deck/package.nix
··· 8 9 buildGoModule rec { 10 pname = "deck"; 11 - version = "1.43.1"; 12 13 src = fetchFromGitHub { 14 owner = "Kong"; 15 repo = "deck"; 16 tag = "v${version}"; 17 - hash = "sha256-6GzO3FyrVyhggjPPOsdX7gnOddYpthNbxQPa8t8gvbM="; 18 }; 19 20 nativeBuildInputs = [ installShellFiles ]; ··· 27 ]; 28 29 proxyVendor = true; # darwin/linux hash mismatch 30 - vendorHash = "sha256-b1c6bazXENCsphxasKfS3pPhuYkZBXywxopWUiyxXeY="; 31 32 postInstall = '' 33 installShellCompletion --cmd deck \
··· 8 9 buildGoModule rec { 10 pname = "deck"; 11 + version = "1.44.1"; 12 13 src = fetchFromGitHub { 14 owner = "Kong"; 15 repo = "deck"; 16 tag = "v${version}"; 17 + hash = "sha256-PXFbYxBlHLWcxzyWfbK+n7G/dt/MgbyC1gGy7sq0OtM="; 18 }; 19 20 nativeBuildInputs = [ installShellFiles ]; ··· 27 ]; 28 29 proxyVendor = true; # darwin/linux hash mismatch 30 + vendorHash = "sha256-XBiOAVXuvhaJrhgvM2b/rdt/bmvMAp6ctgWzIgeaUGc="; 31 32 postInstall = '' 33 installShellCompletion --cmd deck \
+2 -2
pkgs/by-name/ep/epiphany/package.nix
··· 37 38 stdenv.mkDerivation (finalAttrs: { 39 pname = "epiphany"; 40 - version = "47.2"; 41 42 src = fetchurl { 43 url = "mirror://gnome/sources/epiphany/${lib.versions.major finalAttrs.version}/epiphany-${finalAttrs.version}.tar.xz"; 44 - hash = "sha256-NNr9g2OgmLRNR24umCO0y+puZq+tM7uhDtehP/GpZPE="; 45 }; 46 47 nativeBuildInputs = [
··· 37 38 stdenv.mkDerivation (finalAttrs: { 39 pname = "epiphany"; 40 + version = "47.3.1"; 41 42 src = fetchurl { 43 url = "mirror://gnome/sources/epiphany/${lib.versions.major finalAttrs.version}/epiphany-${finalAttrs.version}.tar.xz"; 44 + hash = "sha256-eV17gfGLdIfZ6b/Ayy1oqJPSIA9F+Tl81CyzOSsggak="; 45 }; 46 47 nativeBuildInputs = [
+2 -2
pkgs/by-name/fl/flashmq/package.nix
··· 9 10 stdenv.mkDerivation (finalAttrs: { 11 pname = "flashmq"; 12 - version = "1.19.0"; 13 14 src = fetchFromGitHub { 15 owner = "halfgaar"; 16 repo = "FlashMQ"; 17 tag = "v${finalAttrs.version}"; 18 - hash = "sha256-sMpXDriH/uko0zvrliK+knAcw2unBbDHQfYHG7brhTk="; 19 }; 20 21 nativeBuildInputs = [
··· 9 10 stdenv.mkDerivation (finalAttrs: { 11 pname = "flashmq"; 12 + version = "1.20.0"; 13 14 src = fetchFromGitHub { 15 owner = "halfgaar"; 16 repo = "FlashMQ"; 17 tag = "v${finalAttrs.version}"; 18 + hash = "sha256-JvR03keUJkqVdjPC8q3DCFoDWzqHNozj4rZq9rnuexM="; 19 }; 20 21 nativeBuildInputs = [
+6 -6
pkgs/by-name/gh/ghex/package.nix
··· 20 wrapGAppsHook4, 21 }: 22 23 - stdenv.mkDerivation rec { 24 pname = "ghex"; 25 - version = "46.1"; 26 27 outputs = [ 28 "out" ··· 31 ]; 32 33 src = fetchurl { 34 - url = "mirror://gnome/sources/ghex/${lib.versions.major version}/ghex-${version}.tar.xz"; 35 - hash = "sha256-ihOXVHTu4ncZsprXY/GyR2Chrt5tfaS2I3AwcLwm6f0="; 36 }; 37 38 nativeBuildInputs = [ ··· 83 84 meta = with lib; { 85 homepage = "https://gitlab.gnome.org/GNOME/ghex"; 86 - changelog = "https://gitlab.gnome.org/GNOME/ghex/-/blob/${version}/NEWS?ref_type=tags"; 87 description = "Hex editor for GNOME desktop environment"; 88 mainProgram = "ghex"; 89 platforms = platforms.linux; 90 license = licenses.gpl2Plus; 91 maintainers = teams.gnome.members; 92 }; 93 - }
··· 20 wrapGAppsHook4, 21 }: 22 23 + stdenv.mkDerivation (finalAttrs: { 24 pname = "ghex"; 25 + version = "46.2"; 26 27 outputs = [ 28 "out" ··· 31 ]; 32 33 src = fetchurl { 34 + url = "mirror://gnome/sources/ghex/${lib.versions.major finalAttrs.version}/ghex-${finalAttrs.version}.tar.xz"; 35 + hash = "sha256-qPJ2o2OXpw0guGL/fGZCQ9nPKJHeub4G10Wk8axmHzE="; 36 }; 37 38 nativeBuildInputs = [ ··· 83 84 meta = with lib; { 85 homepage = "https://gitlab.gnome.org/GNOME/ghex"; 86 + changelog = "https://gitlab.gnome.org/GNOME/ghex/-/blob/${finalAttrs.version}/NEWS?ref_type=tags"; 87 description = "Hex editor for GNOME desktop environment"; 88 mainProgram = "ghex"; 89 platforms = platforms.linux; 90 license = licenses.gpl2Plus; 91 maintainers = teams.gnome.members; 92 }; 93 + })
+10 -8
pkgs/by-name/gn/gnome-connections/package.nix
··· 20 gnome, 21 }: 22 23 - stdenv.mkDerivation rec { 24 pname = "gnome-connections"; 25 - version = "47.0"; 26 27 src = fetchurl { 28 - url = "mirror://gnome/sources/gnome-connections/${lib.versions.major version}/gnome-connections-${version}.tar.xz"; 29 - hash = "sha256-lT4jQ8C9SRawLtE6Ce8Rhv6WmSSSct/tuKI9ibQ3Lm0="; 30 }; 31 32 nativeBuildInputs = [ ··· 52 ]; 53 54 passthru = { 55 - updateScript = gnome.updateScript { packageName = "gnome-connections"; }; 56 }; 57 58 meta = with lib; { 59 - homepage = "https://gitlab.gnome.org/GNOME/connections"; 60 - changelog = "https://gitlab.gnome.org/GNOME/connections/-/blob/${version}/NEWS?ref_type=tags"; 61 description = "Remote desktop client for the GNOME desktop environment"; 62 mainProgram = "gnome-connections"; 63 maintainers = teams.gnome.members; 64 license = licenses.gpl3Plus; 65 platforms = platforms.linux; 66 }; 67 - }
··· 20 gnome, 21 }: 22 23 + stdenv.mkDerivation (finalAttrs: { 24 pname = "gnome-connections"; 25 + version = "47.2.1"; 26 27 src = fetchurl { 28 + url = "mirror://gnome/sources/gnome-connections/${lib.versions.major finalAttrs.version}/gnome-connections-${finalAttrs.version}.tar.xz"; 29 + hash = "sha256-BSPjy4edSsC5Xn7l8y22YSi1q4QE/xGSMHHNVs/k2Lg="; 30 }; 31 32 nativeBuildInputs = [ ··· 52 ]; 53 54 passthru = { 55 + updateScript = gnome.updateScript { 56 + packageName = "gnome-connections"; 57 + }; 58 }; 59 60 meta = with lib; { 61 + homepage = "https://gitlab.gnome.org/GNOME/gnome-connections"; 62 + changelog = "https://gitlab.gnome.org/GNOME/gnome-connections/-/blob/${finalAttrs.version}/NEWS?ref_type=tags"; 63 description = "Remote desktop client for the GNOME desktop environment"; 64 mainProgram = "gnome-connections"; 65 maintainers = teams.gnome.members; 66 license = licenses.gpl3Plus; 67 platforms = platforms.linux; 68 }; 69 + })
+2 -2
pkgs/by-name/gn/gnome-control-center/package.nix
··· 74 75 stdenv.mkDerivation (finalAttrs: { 76 pname = "gnome-control-center"; 77 - version = "47.3"; 78 79 src = fetchurl { 80 url = "mirror://gnome/sources/gnome-control-center/${lib.versions.major finalAttrs.version}/gnome-control-center-${finalAttrs.version}.tar.xz"; 81 - hash = "sha256-eDgdWn8dWyl8mhlhEUXuXgWE8GrFde0IrQcKDAe76qI="; 82 }; 83 84 patches = [
··· 74 75 stdenv.mkDerivation (finalAttrs: { 76 pname = "gnome-control-center"; 77 + version = "47.4"; 78 79 src = fetchurl { 80 url = "mirror://gnome/sources/gnome-control-center/${lib.versions.major finalAttrs.version}/gnome-control-center-${finalAttrs.version}.tar.xz"; 81 + hash = "sha256-KMfbdNcg/MnyE8EtNy5+rMF2ekm8TKZrK9ILD9ECJmg="; 82 }; 83 84 patches = [
+2 -2
pkgs/by-name/gn/gnome-initial-setup/package.nix
··· 37 38 stdenv.mkDerivation (finalAttrs: { 39 pname = "gnome-initial-setup"; 40 - version = "47.2"; 41 42 src = fetchurl { 43 url = "mirror://gnome/sources/gnome-initial-setup/${lib.versions.major finalAttrs.version}/gnome-initial-setup-${finalAttrs.version}.tar.xz"; 44 - hash = "sha256-T00Y61YnXMVqGZOlofTRPVpkJoad5nCWuS8rKcryIjw="; 45 }; 46 47 patches = [
··· 37 38 stdenv.mkDerivation (finalAttrs: { 39 pname = "gnome-initial-setup"; 40 + version = "47.4"; 41 42 src = fetchurl { 43 url = "mirror://gnome/sources/gnome-initial-setup/${lib.versions.major finalAttrs.version}/gnome-initial-setup-${finalAttrs.version}.tar.xz"; 44 + hash = "sha256-LAKZ3CtxaBGCNZUNWJijUclMuduP2AjarV1uS6lbh7g="; 45 }; 46 47 patches = [
+9 -7
pkgs/by-name/gn/gnome-mahjongg/package.nix
··· 18 desktop-file-utils, 19 }: 20 21 - stdenv.mkDerivation rec { 22 pname = "gnome-mahjongg"; 23 - version = "47.0"; 24 25 src = fetchurl { 26 - url = "mirror://gnome/sources/gnome-mahjongg/${lib.versions.major version}/gnome-mahjongg-${version}.tar.xz"; 27 - hash = "sha256-WPFX8Lxexxq42jXc5+c8ougZLFsvIZFnqSaTC5cdpJs="; 28 }; 29 30 nativeBuildInputs = [ ··· 48 ]; 49 50 passthru = { 51 - updateScript = gnome.updateScript { packageName = "gnome-mahjongg"; }; 52 }; 53 54 meta = with lib; { 55 homepage = "https://gitlab.gnome.org/GNOME/gnome-mahjongg"; 56 - changelog = "https://gitlab.gnome.org/GNOME/gnome-mahjongg/-/blob/${version}/NEWS?ref_type=tags"; 57 description = "Disassemble a pile of tiles by removing matching pairs"; 58 mainProgram = "gnome-mahjongg"; 59 maintainers = teams.gnome.members; 60 license = licenses.gpl3Plus; 61 platforms = platforms.unix; 62 }; 63 - }
··· 18 desktop-file-utils, 19 }: 20 21 + stdenv.mkDerivation (finalAttrs: { 22 pname = "gnome-mahjongg"; 23 + version = "47.2"; 24 25 src = fetchurl { 26 + url = "mirror://gnome/sources/gnome-mahjongg/${lib.versions.major finalAttrs.version}/gnome-mahjongg-${finalAttrs.version}.tar.xz"; 27 + hash = "sha256-Nd+SZBnzeCY4CjNGIHVjzYfH6ZoT3r4Ok6FAnYXMYVc="; 28 }; 29 30 nativeBuildInputs = [ ··· 48 ]; 49 50 passthru = { 51 + updateScript = gnome.updateScript { 52 + packageName = "gnome-mahjongg"; 53 + }; 54 }; 55 56 meta = with lib; { 57 homepage = "https://gitlab.gnome.org/GNOME/gnome-mahjongg"; 58 + changelog = "https://gitlab.gnome.org/GNOME/gnome-mahjongg/-/blob/${finalAttrs.version}/NEWS?ref_type=tags"; 59 description = "Disassemble a pile of tiles by removing matching pairs"; 60 mainProgram = "gnome-mahjongg"; 61 maintainers = teams.gnome.members; 62 license = licenses.gpl3Plus; 63 platforms = platforms.unix; 64 }; 65 + })
+2 -2
pkgs/by-name/gn/gnome-maps/package.nix
··· 30 31 stdenv.mkDerivation (finalAttrs: { 32 pname = "gnome-maps"; 33 - version = "47.3"; 34 35 src = fetchurl { 36 url = "mirror://gnome/sources/gnome-maps/${lib.versions.major finalAttrs.version}/gnome-maps-${finalAttrs.version}.tar.xz"; 37 - hash = "sha256-HpAwe6/njiML1OrdCUcicakp+1FolCJFkG+fEdrhPLg="; 38 }; 39 40 doCheck = !stdenv.hostPlatform.isDarwin;
··· 30 31 stdenv.mkDerivation (finalAttrs: { 32 pname = "gnome-maps"; 33 + version = "47.4"; 34 35 src = fetchurl { 36 url = "mirror://gnome/sources/gnome-maps/${lib.versions.major finalAttrs.version}/gnome-maps-${finalAttrs.version}.tar.xz"; 37 + hash = "sha256-GMXicPtSLP08AD7AEJPgZesvK40bJ4Dfwnngv3dzXgs="; 38 }; 39 40 doCheck = !stdenv.hostPlatform.isDarwin;
+2 -2
pkgs/by-name/gn/gnome-shell/package.nix
··· 69 in 70 stdenv.mkDerivation (finalAttrs: { 71 pname = "gnome-shell"; 72 - version = "47.3"; 73 74 outputs = [ 75 "out" ··· 78 79 src = fetchurl { 80 url = "mirror://gnome/sources/gnome-shell/${lib.versions.major finalAttrs.version}/gnome-shell-${finalAttrs.version}.tar.xz"; 81 - hash = "sha256-eD3rmghlEeSlPbEFdL+7ppVXb2mAeCGMpsgMse/sKT4="; 82 }; 83 84 patches = [
··· 69 in 70 stdenv.mkDerivation (finalAttrs: { 71 pname = "gnome-shell"; 72 + version = "47.4"; 73 74 outputs = [ 75 "out" ··· 78 79 src = fetchurl { 80 url = "mirror://gnome/sources/gnome-shell/${lib.versions.major finalAttrs.version}/gnome-shell-${finalAttrs.version}.tar.xz"; 81 + hash = "sha256-aAuvaU9F+PyDLSRa2mxjtfxLAwzPvrv8Dg47wo2i5G0="; 82 }; 83 84 patches = [
+5 -5
pkgs/by-name/gn/gnome-system-monitor/package.nix
··· 23 systemd, 24 }: 25 26 - stdenv.mkDerivation rec { 27 pname = "gnome-system-monitor"; 28 - version = "47.0"; 29 30 src = fetchurl { 31 - url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major version}/gnome-system-monitor-${version}.tar.xz"; 32 - hash = "sha256-7ee5JetxTYs8K/v3QFobcUSU/kfgLwrwj1g3s+JWVH8="; 33 }; 34 35 patches = [ ··· 78 license = licenses.gpl2; 79 platforms = platforms.linux; 80 }; 81 - }
··· 23 systemd, 24 }: 25 26 + stdenv.mkDerivation (finalAttrs: { 27 pname = "gnome-system-monitor"; 28 + version = "47.1"; 29 30 src = fetchurl { 31 + url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major finalAttrs.version}/gnome-system-monitor-${finalAttrs.version}.tar.xz"; 32 + hash = "sha256-08VxT9kfp/BdZ3XmeXzNqzFJ8THRqndqM1LirdsRDwE="; 33 }; 34 35 patches = [ ··· 78 license = licenses.gpl2; 79 platforms = platforms.linux; 80 }; 81 + })
+2 -2
pkgs/by-name/gn/gnome-text-editor/package.nix
··· 24 25 stdenv.mkDerivation (finalAttrs: { 26 pname = "gnome-text-editor"; 27 - version = "47.2"; 28 29 src = fetchurl { 30 url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major finalAttrs.version}/gnome-text-editor-${finalAttrs.version}.tar.xz"; 31 - hash = "sha256-fQQDmxYXTsX9Zf6i9Efz/r2f3yqjbpmXq8b/mSzDHjg="; 32 }; 33 34 nativeBuildInputs = [
··· 24 25 stdenv.mkDerivation (finalAttrs: { 26 pname = "gnome-text-editor"; 27 + version = "47.3"; 28 29 src = fetchurl { 30 url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major finalAttrs.version}/gnome-text-editor-${finalAttrs.version}.tar.xz"; 31 + hash = "sha256-RsZyv+huRN6YB5djaigPBcxer2zem0LcS8yVZAVilyU="; 32 }; 33 34 nativeBuildInputs = [
+3 -3
pkgs/by-name/gt/gtk-frdp/package.nix
··· 16 17 stdenv.mkDerivation rec { 18 pname = "gtk-frdp"; 19 - version = "0-unstable-2024-07-03"; 20 21 src = fetchFromGitLab { 22 domain = "gitlab.gnome.org"; 23 owner = "GNOME"; 24 repo = pname; 25 - rev = "6cfdc840159bb349310c3b81cd2df949f1522760"; 26 - sha256 = "Fth2kaZEy5pOvaHu10Mr/6awWuAeyQ1T9JbNL9Sl8fU="; 27 }; 28 29 nativeBuildInputs = [
··· 16 17 stdenv.mkDerivation rec { 18 pname = "gtk-frdp"; 19 + version = "0-unstable-2024-12-23"; 20 21 src = fetchFromGitLab { 22 domain = "gitlab.gnome.org"; 23 owner = "GNOME"; 24 repo = pname; 25 + rev = "46ca0beb9b5bf8c9b245a596231016bcca9baf6b"; 26 + sha256 = "zRC3YVe2WwOmVzEDaJwsct3YQ4ZbvYTr2CTyRmfCXFY="; 27 }; 28 29 nativeBuildInputs = [
+5 -5
pkgs/by-name/gt/gtk-vnc/package.nix
··· 24 zlib, 25 }: 26 27 - stdenv.mkDerivation rec { 28 pname = "gtk-vnc"; 29 - version = "1.4.0"; 30 31 outputs = [ 32 "out" ··· 37 ]; 38 39 src = fetchurl { 40 - url = "mirror://gnome/sources/gtk-vnc/${lib.versions.majorMinor version}/gtk-vnc-${version}.tar.xz"; 41 - sha256 = "G+ZMTkdgxSs+wzBnKQ0e+kCtTOyrbGc4E4BOPFWdloM="; 42 }; 43 44 nativeBuildInputs = [ ··· 95 platforms = platforms.unix; 96 mainProgram = "gvnccapture"; 97 }; 98 - }
··· 24 zlib, 25 }: 26 27 + stdenv.mkDerivation (finalAttrs: { 28 pname = "gtk-vnc"; 29 + version = "1.5.0"; 30 31 outputs = [ 32 "out" ··· 37 ]; 38 39 src = fetchurl { 40 + url = "mirror://gnome/sources/gtk-vnc/${lib.versions.majorMinor finalAttrs.version}/gtk-vnc-${finalAttrs.version}.tar.xz"; 41 + sha256 = "wL60dHUorZMdpDrMVnxqAZD3/GJEZVce2czs4Cw03SM="; 42 }; 43 44 nativeBuildInputs = [ ··· 95 platforms = platforms.unix; 96 mainProgram = "gvnccapture"; 97 }; 98 + })
+8 -8
pkgs/by-name/ke/keycloak/package.nix
··· 3 lib, 4 fetchzip, 5 makeWrapper, 6 - jre, 7 nixosTests, 8 callPackage, 9 confFile ? null, ··· 33 34 nativeBuildInputs = [ 35 makeWrapper 36 - jre 37 ]; 38 39 patches = [ ··· 81 82 postFixup = '' 83 for script in $(find $out/bin -type f -executable); do 84 - wrapProgram "$script" --set JAVA_HOME ${jre} --prefix PATH : ${jre}/bin 85 done 86 ''; 87 ··· 91 enabledPlugins = plugins; 92 }; 93 94 - meta = with lib; { 95 homepage = "https://www.keycloak.org/"; 96 description = "Identity and access management for modern applications and services"; 97 - sourceProvenance = with sourceTypes; [ binaryBytecode ]; 98 - license = licenses.asl20; 99 - platforms = jre.meta.platforms; 100 - maintainers = with maintainers; [ 101 ngerstle 102 talyz 103 nickcao
··· 3 lib, 4 fetchzip, 5 makeWrapper, 6 + jre_headless, 7 nixosTests, 8 callPackage, 9 confFile ? null, ··· 33 34 nativeBuildInputs = [ 35 makeWrapper 36 + jre_headless 37 ]; 38 39 patches = [ ··· 81 82 postFixup = '' 83 for script in $(find $out/bin -type f -executable); do 84 + wrapProgram "$script" --set JAVA_HOME ${jre_headless} --prefix PATH : ${jre_headless}/bin 85 done 86 ''; 87 ··· 91 enabledPlugins = plugins; 92 }; 93 94 + meta = { 95 homepage = "https://www.keycloak.org/"; 96 description = "Identity and access management for modern applications and services"; 97 + sourceProvenance = [ lib.sourceTypes.binaryBytecode ]; 98 + license = lib.licenses.asl20; 99 + platforms = jre_headless.meta.platforms; 100 + maintainers = with lib.maintainers; [ 101 ngerstle 102 talyz 103 nickcao
+7
pkgs/by-name/km/kmscon/package.nix
··· 57 libxslt # xsltproc 58 ]; 59 60 patches = [ 61 (fetchpatch { 62 name = "0001-tests-fix-warnings.patch"; 63 url = "https://github.com/Aetf/kmscon/commit/b65f4269b03de580923ab390bde795e7956b633f.patch"; 64 sha256 = "sha256-ngflPwmNMM/2JzhV+hHiH3efQyoSULfqEywzWox9iAQ="; 65 }) 66 ]; 67
··· 57 libxslt # xsltproc 58 ]; 59 60 + # Remove the patches attrlist once the package is bumped to something newer than both of these patches 61 patches = [ 62 (fetchpatch { 63 name = "0001-tests-fix-warnings.patch"; 64 url = "https://github.com/Aetf/kmscon/commit/b65f4269b03de580923ab390bde795e7956b633f.patch"; 65 sha256 = "sha256-ngflPwmNMM/2JzhV+hHiH3efQyoSULfqEywzWox9iAQ="; 66 + }) 67 + (fetchpatch { 68 + # https://github.com/Aetf/kmscon/pull/96 69 + name = "0002-runtime-fix-logout.patch"; 70 + url = "https://github.com/Aetf/kmscon/commit/a81941f4464e6f9cee75bfb8a1db88c253ede33d.patch"; 71 + sha256 = "sha256-geWu8MVsHKs8VHauh5Tf9eWJrdA5+0bPFAQ32T6Xsqg="; 72 }) 73 ]; 74
+10 -5
pkgs/by-name/li/libpanel/package.nix
··· 14 gnome, 15 }: 16 17 - stdenv.mkDerivation rec { 18 pname = "libpanel"; 19 version = "1.8.1"; 20 ··· 27 outputBin = "dev"; 28 29 src = fetchurl { 30 - url = "mirror://gnome/sources/libpanel/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 31 hash = "sha256-uHuPqbeXaMxwQkN5PwFYoECh5G03uYiRiFRaf33Kpvs="; 32 }; 33 ··· 51 libadwaita 52 ]; 53 54 - mesonFlags = [ (lib.mesonBool "install-examples" true) ]; 55 56 postFixup = '' 57 # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. ··· 59 ''; 60 61 passthru = { 62 - updateScript = gnome.updateScript { packageName = pname; }; 63 }; 64 65 meta = with lib; { ··· 70 maintainers = teams.gnome.members; 71 platforms = platforms.unix; 72 }; 73 - }
··· 14 gnome, 15 }: 16 17 + stdenv.mkDerivation (finalAttrs: { 18 pname = "libpanel"; 19 version = "1.8.1"; 20 ··· 27 outputBin = "dev"; 28 29 src = fetchurl { 30 + url = "mirror://gnome/sources/libpanel/${lib.versions.majorMinor finalAttrs.version}/libpanel-${finalAttrs.version}.tar.xz"; 31 hash = "sha256-uHuPqbeXaMxwQkN5PwFYoECh5G03uYiRiFRaf33Kpvs="; 32 }; 33 ··· 51 libadwaita 52 ]; 53 54 + mesonFlags = [ 55 + (lib.mesonBool "install-examples" true) 56 + ]; 57 58 postFixup = '' 59 # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. ··· 61 ''; 62 63 passthru = { 64 + updateScript = gnome.updateScript { 65 + packageName = "libpanel"; 66 + versionPolicy = "odd-unstable"; 67 + }; 68 }; 69 70 meta = with lib; { ··· 75 maintainers = teams.gnome.members; 76 platforms = platforms.unix; 77 }; 78 + })
+2 -2
pkgs/by-name/li/libshumate/package.nix
··· 23 24 stdenv.mkDerivation (finalAttrs: { 25 pname = "libshumate"; 26 - version = "1.3.1"; 27 28 outputs = [ 29 "out" ··· 34 35 src = fetchurl { 36 url = "mirror://gnome/sources/libshumate/${lib.versions.majorMinor finalAttrs.version}/libshumate-${finalAttrs.version}.tar.xz"; 37 - hash = "sha256-bv6TUtkXRIItQerUcUoqtLN4SBqGoiBLe+xAgt/8G4s="; 38 }; 39 40 depsBuildBuild = [
··· 23 24 stdenv.mkDerivation (finalAttrs: { 25 pname = "libshumate"; 26 + version = "1.3.2"; 27 28 outputs = [ 29 "out" ··· 34 35 src = fetchurl { 36 url = "mirror://gnome/sources/libshumate/${lib.versions.majorMinor finalAttrs.version}/libshumate-${finalAttrs.version}.tar.xz"; 37 + hash = "sha256-+HYrvG4pbXi+H4Qi9W2kxAvI0Sr8cAKjJBcqkZju7Vw="; 38 }; 39 40 depsBuildBuild = [
+2 -2
pkgs/by-name/mu/mutter/package.nix
··· 69 70 stdenv.mkDerivation (finalAttrs: { 71 pname = "mutter"; 72 - version = "47.4"; 73 74 outputs = [ 75 "out" ··· 80 81 src = fetchurl { 82 url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz"; 83 - hash = "sha256-9TH8AObsbbtXCzv5QrZJD3qT35HEwmepGLTSr+khG9o="; 84 }; 85 86 mesonFlags = [
··· 69 70 stdenv.mkDerivation (finalAttrs: { 71 pname = "mutter"; 72 + version = "47.5"; 73 74 outputs = [ 75 "out" ··· 80 81 src = fetchurl { 82 url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz"; 83 + hash = "sha256-ZVGjPOiH5oQVsTlSr21rQw6VMG+Sl63IwRGVPplcUVs="; 84 }; 85 86 mesonFlags = [
+2 -2
pkgs/by-name/na/nautilus/package.nix
··· 40 41 stdenv.mkDerivation (finalAttrs: { 42 pname = "nautilus"; 43 - version = "47.1"; 44 45 outputs = [ 46 "out" ··· 50 51 src = fetchurl { 52 url = "mirror://gnome/sources/nautilus/${lib.versions.major finalAttrs.version}/nautilus-${finalAttrs.version}.tar.xz"; 53 - hash = "sha256-FUUOvHqmHtL65jEwr567uuFM5walR/WUxmu4zKck10w="; 54 }; 55 56 patches = [
··· 40 41 stdenv.mkDerivation (finalAttrs: { 42 pname = "nautilus"; 43 + version = "47.2"; 44 45 outputs = [ 46 "out" ··· 50 51 src = fetchurl { 52 url = "mirror://gnome/sources/nautilus/${lib.versions.major finalAttrs.version}/nautilus-${finalAttrs.version}.tar.xz"; 53 + hash = "sha256-fzIDR08uY3ShHGdU7zPzNg6vf1tehfXkd+igrg+nZNk="; 54 }; 55 56 patches = [
+2 -2
pkgs/by-name/so/sonarr/package.nix
··· 21 applyPatches, 22 }: 23 let 24 - version = "4.0.12.2823"; 25 # The dotnet8 compatibility patches also change `yarn.lock`, so we must pass 26 # the already patched lockfile to `fetchYarnDeps`. 27 src = applyPatches { ··· 29 owner = "Sonarr"; 30 repo = "Sonarr"; 31 tag = "v${version}"; 32 - hash = "sha256-gAvbA3Idx73QEDthLwrM8Jbt6YhXxK8LzEJI6eF2k20="; 33 }; 34 patches = 35 [
··· 21 applyPatches, 22 }: 23 let 24 + version = "4.0.13.2932"; 25 # The dotnet8 compatibility patches also change `yarn.lock`, so we must pass 26 # the already patched lockfile to `fetchYarnDeps`. 27 src = applyPatches { ··· 29 owner = "Sonarr"; 30 repo = "Sonarr"; 31 tag = "v${version}"; 32 + hash = "sha256-BR7CU8q+L2CY2UqR9n0cbX9R7ergzRPPvSrLl7Cn7EU="; 33 }; 34 patches = 35 [
+2 -1
pkgs/by-name/so/sonarr/update.py
··· 116 old_source_hash: new_source_hash, 117 }) 118 119 - # We need access to the patched and updated src to get the patched `yarn.lock`. 120 patched_src = os.path.join(work_dir, "patched-src") 121 subprocess.run( 122 [
··· 116 old_source_hash: new_source_hash, 117 }) 118 119 + # We need access to the patched and updated src to get the patched 120 + # `yarn.lock`. 121 patched_src = os.path.join(work_dir, "patched-src") 122 subprocess.run( 123 [
+3 -3
pkgs/by-name/te/terragrunt/package.nix
··· 7 8 buildGoModule rec { 9 pname = "terragrunt"; 10 - version = "0.72.6"; 11 12 src = fetchFromGitHub { 13 owner = "gruntwork-io"; 14 repo = pname; 15 tag = "v${version}"; 16 - hash = "sha256-dlEyeDh5OkERboEUPhe/jYYEc7jnGZL6PhW9Tu6vxcs="; 17 }; 18 19 nativeBuildInputs = [ go-mockery ]; ··· 22 make generate-mocks 23 ''; 24 25 - vendorHash = "sha256-hgjVmbM0qh8o1e2UaU9Q0GURzC8XPthLAuXZ+eCuflU="; 26 27 doCheck = false; 28
··· 7 8 buildGoModule rec { 9 pname = "terragrunt"; 10 + version = "0.73.5"; 11 12 src = fetchFromGitHub { 13 owner = "gruntwork-io"; 14 repo = pname; 15 tag = "v${version}"; 16 + hash = "sha256-0I2lMu2RyZ6F5GosWome6uzedllN3qn6smupZLbNuBg="; 17 }; 18 19 nativeBuildInputs = [ go-mockery ]; ··· 22 make generate-mocks 23 ''; 24 25 + vendorHash = "sha256-q8HCRPD1PUchtktcs3+5GM2zMaEBy348d+6fMLJR1uk="; 26 27 doCheck = false; 28
+11 -11
pkgs/by-name/ya/yandex-cloud/sources.json
··· 1 { 2 - "version": "0.142.0", 3 "binaries": { 4 "aarch64-darwin": { 5 - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.142.0/darwin/arm64/yc", 6 - "hash": "sha256-5IJYcb0uIqnZK1yH2vFCLSyjInJKFWaTZmnVub1cywg=" 7 }, 8 "aarch64-linux": { 9 - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.142.0/linux/arm64/yc", 10 - "hash": "sha256-THxJ4HrHw8zk2q/VkYFY3djO8qs/sXF8XvHTpDZDlBw=" 11 }, 12 "i686-linux": { 13 - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.142.0/linux/386/yc", 14 - "hash": "sha256-Q7YyNDkX+TZ/d/byJ0JFJZ3t6FWtAk+yFrVSc35/Fk0=" 15 }, 16 "x86_64-darwin": { 17 - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.142.0/darwin/amd64/yc", 18 - "hash": "sha256-7IiVmLegCYZW31QHc3I1a1URQaVYuyXu1sCDWym8vRs=" 19 }, 20 "x86_64-linux": { 21 - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.142.0/linux/amd64/yc", 22 - "hash": "sha256-awwxmUQRe3BLAxYqSzGoPseqOxcpARYtnfj10mDagiQ=" 23 } 24 } 25 }
··· 1 { 2 + "version": "0.143.0", 3 "binaries": { 4 "aarch64-darwin": { 5 + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.143.0/darwin/arm64/yc", 6 + "hash": "sha256-LZA3mac/jnvYdNkyfOhfcRqGoQYyXvegZ0a3ik0A6F0=" 7 }, 8 "aarch64-linux": { 9 + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.143.0/linux/arm64/yc", 10 + "hash": "sha256-xwoR4GbJLLhsQfRhGNXrxFyEkFb1G8ktdtmP9/l65Zw=" 11 }, 12 "i686-linux": { 13 + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.143.0/linux/386/yc", 14 + "hash": "sha256-+kCCFX2bPRi9ounbgoH5XruTFYEueMTVsG9BviNjGqc=" 15 }, 16 "x86_64-darwin": { 17 + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.143.0/darwin/amd64/yc", 18 + "hash": "sha256-h+yItND8bwEineqhyMN+P6m7widbmTJjBh9B3M5F27E=" 19 }, 20 "x86_64-linux": { 21 + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.143.0/linux/amd64/yc", 22 + "hash": "sha256-uXIhrkvtVyjafyqowjRrSXd7JsU/0vBPc8Qghc9f7bo=" 23 } 24 } 25 }
+2 -2
pkgs/by-name/yt/ytdl-sub/package.nix
··· 8 }: 9 python3Packages.buildPythonApplication rec { 10 pname = "ytdl-sub"; 11 - version = "2025.01.28"; 12 pyproject = true; 13 14 src = fetchFromGitHub { 15 owner = "jmbannon"; 16 repo = "ytdl-sub"; 17 tag = version; 18 - hash = "sha256-V1qz6YNI/4bGbMOEbedTOGxmInMjzGhmk5lG9qkGNsg="; 19 }; 20 21 postPatch = ''
··· 8 }: 9 python3Packages.buildPythonApplication rec { 10 pname = "ytdl-sub"; 11 + version = "2025.02.05"; 12 pyproject = true; 13 14 src = fetchFromGitHub { 15 owner = "jmbannon"; 16 repo = "ytdl-sub"; 17 tag = version; 18 + hash = "sha256-HGAzug8GetDMJYLSzSl+B8mA6PLHTyexJeDFnM6Fh+I="; 19 }; 20 21 postPatch = ''
+1
pkgs/by-name/ze/zenity/package.nix
··· 43 passthru = { 44 updateScript = gnome.updateScript { 45 packageName = "zenity"; 46 }; 47 }; 48
··· 43 passthru = { 44 updateScript = gnome.updateScript { 45 packageName = "zenity"; 46 + versionPolicy = "odd-unstable"; 47 }; 48 }; 49
+12 -2
pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix
··· 1 { 2 mkXfceDerivation, 3 lib, 4 cmake, 5 accountsservice, 6 exo, ··· 18 mkXfceDerivation { 19 category = "panel-plugins"; 20 pname = "xfce4-whiskermenu-plugin"; 21 - version = "2.9.0"; 22 rev-prefix = "v"; 23 odd-unstable = false; 24 - sha256 = "sha256-j2KatlML8NuUH+IKWodDT5VeG7XL27wwiqMKjurt9rM="; 25 26 nativeBuildInputs = [ 27 cmake
··· 1 { 2 mkXfceDerivation, 3 lib, 4 + fetchpatch, 5 cmake, 6 accountsservice, 7 exo, ··· 19 mkXfceDerivation { 20 category = "panel-plugins"; 21 pname = "xfce4-whiskermenu-plugin"; 22 + version = "2.9.1"; 23 rev-prefix = "v"; 24 odd-unstable = false; 25 + sha256 = "sha256-CHxKCH8FcikNzhI3rUU2IH0bTbBGqEz85f/ST8PSnSo="; 26 + 27 + patches = [ 28 + # Fix menu not shown on correct monitor 29 + # https://gitlab.xfce.org/panel-plugins/xfce4-whiskermenu-plugin/-/issues/154 30 + (fetchpatch { 31 + url = "https://gitlab.xfce.org/panel-plugins/xfce4-whiskermenu-plugin/-/commit/e13216dcaa455e08368dcde256a6896d6e8918a1.patch"; 32 + hash = "sha256-sRy1EgG8SaLgjdMH7XNSg97kj+tq2TI+G1P1d9aUXPc="; 33 + }) 34 + ]; 35 36 nativeBuildInputs = [ 37 cmake
+5 -5
pkgs/development/libraries/gcr/4.nix
··· 26 systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd, 27 }: 28 29 - stdenv.mkDerivation rec { 30 pname = "gcr"; 31 - version = "4.3.0"; 32 33 outputs = [ 34 "out" ··· 38 ]; 39 40 src = fetchurl { 41 - url = "mirror://gnome/sources/gcr/${lib.versions.majorMinor version}/gcr-${version}.tar.xz"; 42 - hash = "sha256-w+6HKOQ2SwOX9DX6IPkvkBqxOdKyZPTgWdZ7PA9DzTY="; 43 }; 44 45 strictDeps = true; ··· 125 (G)object oriented way. 126 ''; 127 }; 128 - }
··· 26 systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd, 27 }: 28 29 + stdenv.mkDerivation (finalAttrs: { 30 pname = "gcr"; 31 + version = "4.3.1"; 32 33 outputs = [ 34 "out" ··· 38 ]; 39 40 src = fetchurl { 41 + url = "mirror://gnome/sources/gcr/${lib.versions.majorMinor finalAttrs.version}/gcr-${finalAttrs.version}.tar.xz"; 42 + hash = "sha256-svBw//GEDu9wVGoovoAjVCfBFqrcWTtbaMzIab46oJ0="; 43 }; 44 45 strictDeps = true; ··· 125 (G)object oriented way. 126 ''; 127 }; 128 + })
+329 -194
pkgs/development/lua-modules/overrides.nix
··· 1 # do not add pkgs, it messes up splicing 2 - { stdenv 3 - , cargo 4 - , cmake 5 6 - # plenary utilities 7 - , which 8 - , findutils 9 - , clang 10 - , coreutils 11 - , curl 12 - , cyrus_sasl 13 - , dbus 14 - , expat 15 - , fetchFromGitHub 16 - , fetchpatch 17 - , fetchurl 18 - , fixDarwinDylibNames 19 - , glib 20 - , glibc 21 - , gmp 22 - , gnulib 23 - , gnum4 24 - , gobject-introspection 25 - , imagemagick 26 - , installShellFiles 27 - , lib 28 - , libevent 29 - , libiconv 30 - , libmpack 31 - , libmysqlclient 32 - , libpsl 33 - , libpq 34 - , libuuid 35 - , libuv 36 - , libxcrypt 37 - , libyaml 38 - , luajitPackages 39 - , lua-language-server 40 - , mariadb 41 - , magic-enum 42 - , mpfr 43 - , neovim-unwrapped 44 - , openldap 45 - , openssl 46 - , pcre 47 - , pkg-config 48 - , readline 49 - , rustPlatform 50 - , sol2 51 - , sqlite 52 - , tomlplusplus 53 - , tree-sitter 54 - , unbound 55 - , vimPlugins 56 - , vimUtils 57 - , yajl 58 - , zip 59 - , unzip 60 - , zlib 61 - , zziplib 62 }: 63 64 final: prev: 65 let 66 - inherit (prev) luaOlder luaAtLeast lua isLuaJIT isLua51; 67 in 68 { 69 - argparse = prev.argparse.overrideAttrs(oa: { 70 71 doCheck = true; 72 checkInputs = [ final.busted ]; ··· 108 109 cqueues = prev.cqueues.overrideAttrs (oa: rec { 110 # Parse out a version number without the Lua version inserted 111 - version = let 112 - version' = prev.cqueues.version; 113 - rel = lib.splitVersion version'; 114 - date = lib.head rel; 115 - rev = lib.last (lib.splitString "-" (lib.last rel)); 116 - in 117 - "${date}-${rev}"; 118 119 meta.broken = luaOlder "5.1" || luaAtLeast "5.4"; 120 ··· 123 ]; 124 125 externalDeps = [ 126 - { name = "CRYPTO"; dep = openssl; } 127 - { name = "OPENSSL"; dep = openssl; } 128 ]; 129 130 # Upstream rockspec is pointlessly broken into separate rockspecs, per Lua 131 # version, which doesn't work well for us, so modify it 132 - postConfigure = let inherit (prev.cqueues) pname; in 133 '' 134 # 'all' target auto-detects correct Lua version, which is fine for us as 135 # we only have the right one available :) ··· 145 146 # Until https://github.com/swarn/fzy-lua/pull/8 is merged, 147 # we have to invoke busted manually 148 - fzy = prev.fzy.overrideAttrs(oa: { 149 doCheck = true; 150 nativeCheckInputs = [ final.busted ]; 151 checkPhase = '' ··· 161 sha256 = "1vmx039n3nqfx50faqhs3wgiw28ws416rhw6vh6srmh9i826dac7"; 162 }) 163 ]; 164 - /* TODO: separate docs derivation? (pandoc is heavy) 165 nativeBuildInputs = [ pandoc ]; 166 makeFlags = [ "-C doc" "lua-http.html" "lua-http.3" ]; 167 */ ··· 242 propagatedBuildInputs = oa.propagatedBuildInputs ++ [ lua-language-server ]; 243 }); 244 245 - lmathx = prev.luaLib.overrideLuarocks prev.lmathx (drv: 246 - if luaAtLeast "5.1" && luaOlder "5.2" then { 247 - version = "20120430.51-1"; 248 - knownRockspec = (fetchurl { 249 - url = "mirror://luarocks/lmathx-20120430.51-1.rockspec"; 250 - sha256 = "148vbv2g3z5si2db7rqg5bdily7m4sjyh9w6r3jnx3csvfaxyhp0"; 251 - }).outPath; 252 - src = fetchurl { 253 - url = "https://web.tecgraf.puc-rio.br/~lhf/ftp/lua/5.1/lmathx.tar.gz"; 254 - sha256 = "0sa553d0zlxhvpsmr4r7d841f16yq4wr3fg7i07ibxkz6yzxax51"; 255 - }; 256 - } else 257 - if luaAtLeast "5.2" && luaOlder "5.3" then { 258 version = "20120430.52-1"; 259 - knownRockspec = (fetchurl { 260 - url = "mirror://luarocks/lmathx-20120430.52-1.rockspec"; 261 - sha256 = "14rd625sipakm72wg6xqsbbglaxyjba9nsajsfyvhg0sz8qjgdya"; 262 - }).outPath; 263 src = fetchurl { 264 url = "http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/5.2/lmathx.tar.gz"; 265 sha256 = "19dwa4z266l2njgi6fbq9rak4rmx2fsx1s0p9sl166ar3mnrdwz5"; 266 }; 267 - } else 268 - { 269 - disabled = luaOlder "5.1" || luaAtLeast "5.5"; 270 - # works fine with 5.4 as well 271 - postConfigure = '' 272 - substituteInPlace ''${rockspecFilename} \ 273 - --replace 'lua ~> 5.3' 'lua >= 5.3, < 5.5' 274 - ''; 275 - }); 276 277 lmpfrlib = prev.lmpfrlib.overrideAttrs (oa: { 278 externalDeps = [ 279 - { name = "GMP"; dep = gmp; } 280 - { name = "MPFR"; dep = mpfr; } 281 ]; 282 unpackPhase = '' 283 cp $src $(stripHash $src) ··· 292 293 lrexlib-pcre = prev.lrexlib-pcre.overrideAttrs (oa: { 294 externalDeps = [ 295 - { name = "PCRE"; dep = pcre; } 296 ]; 297 }); 298 ··· 328 ''; 329 }); 330 331 - lua-resty-jwt = prev.lua-resty-jwt.overrideAttrs(oa: { 332 src = fetchFromGitHub { 333 owner = "cdbattags"; 334 repo = "lua-resty-jwt"; ··· 342 buildInputs = oa.buildInputs ++ [ 343 zlib.dev 344 ]; 345 - meta = oa.meta // { broken = luaOlder "5.1" || luaAtLeast "5.4"; }; 346 }); 347 348 luadbi-mysql = prev.luadbi-mysql.overrideAttrs (oa: { ··· 367 368 luadbi-sqlite3 = prev.luadbi-sqlite3.overrideAttrs (oa: { 369 externalDeps = [ 370 - { name = "SQLITE"; dep = sqlite; } 371 ]; 372 }); 373 ··· 376 final.luasocket 377 ]; 378 externalDeps = [ 379 - { name = "EVENT"; dep = libevent; } 380 ]; 381 meta.broken = luaOlder "5.1" || luaAtLeast "5.4"; 382 }); 383 384 luaexpat = prev.luaexpat.overrideAttrs (_: { 385 externalDeps = [ 386 - { name = "EXPAT"; dep = expat; } 387 ]; 388 }); 389 ··· 403 404 lualdap = prev.lualdap.overrideAttrs (_: { 405 externalDeps = [ 406 - { name = "LDAP"; dep = openldap; } 407 ]; 408 }); 409 410 luaossl = prev.luaossl.overrideAttrs (_: { 411 externalDeps = [ 412 - { name = "CRYPTO"; dep = openssl; } 413 - { name = "OPENSSL"; dep = openssl; } 414 ]; 415 }); 416 417 luaposix = prev.luaposix.overrideAttrs (_: { 418 externalDeps = [ 419 - { name = "CRYPT"; dep = libxcrypt; } 420 ]; 421 }); 422 423 luaprompt = prev.luaprompt.overrideAttrs (oa: { 424 externalDeps = [ 425 - { name = "READLINE"; dep = readline; } 426 - { name = "HISTORY"; dep = readline; } 427 ]; 428 429 nativeBuildInputs = oa.nativeBuildInputs ++ [ installShellFiles ]; ··· 436 # As a nix user, use this derivation instead of "luarocks_bootstrap" 437 luarocks = prev.luarocks.overrideAttrs (oa: { 438 439 - nativeBuildInputs = oa.nativeBuildInputs ++ [ installShellFiles lua unzip ]; 440 # cmake is just to compile packages with "cmake" buildType, not luarocks itself 441 dontUseCmakeConfigure = true; 442 443 - propagatedBuildInputs = [ zip unzip cmake ]; 444 445 postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 446 installShellCompletion --cmd luarocks \ ··· 462 463 luasec = prev.luasec.overrideAttrs (oa: { 464 externalDeps = [ 465 - { name = "OPENSSL"; dep = openssl; } 466 ]; 467 }); 468 469 luasql-sqlite3 = prev.luasql-sqlite3.overrideAttrs (oa: { 470 externalDeps = [ 471 - { name = "SQLITE"; dep = sqlite; } 472 ]; 473 }); 474 475 - luasystem = prev.luasystem.overrideAttrs (oa: lib.optionalAttrs stdenv.hostPlatform.isLinux { 476 - buildInputs = [ glibc.out ]; 477 - }); 478 479 luazip = prev.luazip.overrideAttrs (oa: { 480 buildInputs = oa.buildInputs ++ [ ··· 487 # meta.broken = true; 488 # }); 489 490 - lua-yajl = prev.lua-yajl.overrideAttrs (oa: { 491 buildInputs = oa.buildInputs ++ [ 492 yajl 493 ]; ··· 495 496 luaunbound = prev.luaunbound.overrideAttrs (oa: { 497 externalDeps = [ 498 - { name = "libunbound"; dep = unbound; } 499 ]; 500 }); 501 ··· 510 hash = "sha256-7mFn4dLgaxfAxtPFCc3VzcBx2HuywcZTYqCGTbaGS0k="; 511 }; 512 513 - propagatedBuildInputs = oa.propagatedBuildInputs ++ [ cargo rustPlatform.cargoSetupHook ]; 514 515 # ld: symbol(s) not found for architecture arm64 516 # clang-16: error: linker command failed with exit code 1 (use -v to see invocation) ··· 527 528 luuid = prev.luuid.overrideAttrs (oa: { 529 externalDeps = [ 530 - { name = "LIBUUID"; dep = libuuid; } 531 ]; 532 # Trivial patch to make it work in both 5.1 and 5.2. Basically just the 533 # tiny diff between the two upstream versions placed behind an #if. ··· 538 patches = [ 539 ./luuid.patch 540 ]; 541 - postConfigure = '' 542 sed -Ei ''${rockspecFilename} -e 's|lua >= 5.2|lua >= 5.1,|' 543 ''; 544 meta = oa.meta // { ··· 547 }; 548 }); 549 550 - lz-n = prev.lz-n.overrideAttrs(oa: { 551 doCheck = lua.luaversion == "5.1"; 552 - nativeCheckInputs = [ final.nlua final.busted ]; 553 checkPhase = '' 554 runHook preCheck 555 export HOME=$(mktemp -d) 556 busted --lua=nlua 557 runHook postCheck 558 - ''; 559 }); 560 561 - lze = prev.lze.overrideAttrs(oa: { 562 doCheck = lua.luaversion == "5.1"; 563 - nativeCheckInputs = [ final.nlua final.busted ]; 564 checkPhase = '' 565 runHook preCheck 566 export HOME=$(mktemp -d) ··· 569 ''; 570 }); 571 572 - neotest = prev.neotest.overrideAttrs(oa: { 573 doCheck = stdenv.hostPlatform.isLinux; 574 nativeCheckInputs = oa.nativeCheckInputs ++ [ 575 - final.nlua final.busted neovim-unwrapped 576 ]; 577 578 checkPhase = '' ··· 584 -c "PlenaryBustedDirectory tests/ {sequential = true}" 585 586 runHook postCheck 587 - ''; 588 }); 589 590 - haskell-tools-nvim = prev.haskell-tools-nvim.overrideAttrs(oa: { 591 doCheck = lua.luaversion == "5.1"; 592 - nativeCheckInputs = [ final.nlua final.busted ]; 593 checkPhase = '' 594 runHook preCheck 595 export HOME=$(mktemp -d) ··· 608 609 nvim-nio = prev.nvim-nio.overrideAttrs (oa: { 610 doCheck = lua.luaversion == "5.1"; 611 - nativeCheckInputs = [ final.nlua final.busted ]; 612 613 # upstream uses PlenaryBusted which is a pain to setup 614 checkPhase = '' ··· 665 rm -rf deps/lua deps/libuv 666 ''; 667 668 - buildInputs = [ libuv final.lua ]; 669 670 - nativeBuildInputs = [ pkg-config cmake ] 671 - ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ]; 672 }; 673 674 luv = prev.luv.overrideAttrs (oa: { ··· 678 679 # Use system libuv instead of building local and statically linking 680 luarocksConfig = lib.recursiveUpdate oa.luarocksConfig { 681 - variables = { WITH_SHARED_LIBUV = "ON"; }; 682 }; 683 684 # we unset the LUA_PATH since the hook erases the interpreter defaults (To fix) ··· 715 }); 716 717 mpack = prev.mpack.overrideAttrs (drv: { 718 - buildInputs = (drv.buildInputs or []) ++ [ libmpack ]; 719 env = { 720 # the rockspec doesn't use the makefile so you may need to export more flags 721 USE_SYSTEM_LUA = "yes"; ··· 723 }; 724 }); 725 726 - nlua = prev.nlua.overrideAttrs(oa: { 727 728 # patchShebang removes the nvim in nlua's shebang so we hardcode one 729 postFixup = '' 730 sed -i -e "1 s|.*|#\!${coreutils}/bin/env -S ${neovim-unwrapped}/bin/nvim -l|" "$out/bin/nlua" 731 - ''; 732 dontPatchShebangs = true; 733 }); 734 ··· 749 }); 750 751 # upstream broken, can't be generated, so moved out from the generated set 752 - readline = final.callPackage({ buildLuarocksPackage, fetchurl, luaAtLeast, luaOlder, lua, luaposix }: 753 - buildLuarocksPackage ({ 754 - pname = "readline"; 755 - version = "3.2-0"; 756 - knownRockspec = (fetchurl { 757 - url = "mirror://luarocks/readline-3.2-0.rockspec"; 758 - sha256 = "1r0sgisxm4xd1r6i053iibxh30j7j3rcj4wwkd8rzkj8nln20z24"; 759 - }).outPath; 760 - src = fetchurl { 761 - # the rockspec url doesn't work because 'www.' is not covered by the certificate so 762 - # I manually removed the 'www' prefix here 763 - url = "http://pjb.com.au/comp/lua/readline-3.2.tar.gz"; 764 - sha256 = "1mk9algpsvyqwhnq7jlw4cgmfzj30l7n2r6ak4qxgdxgc39f48k4"; 765 - }; 766 767 - luarocksConfig.variables = rec { 768 - READLINE_INCDIR = "${readline.dev}/include"; 769 - HISTORY_INCDIR = READLINE_INCDIR; 770 - }; 771 - unpackCmd = '' 772 - unzip "$curSrc" 773 - tar xf *.tar.gz 774 - ''; 775 776 - propagatedBuildInputs = [ 777 - luaposix 778 - readline.out 779 - ]; 780 781 - meta = { 782 - homepage = "https://pjb.com.au/comp/lua/readline.html"; 783 - description = "Interface to the readline library"; 784 - license.fullName = "MIT/X11"; 785 - broken = (luaOlder "5.1") || (luaAtLeast "5.5"); 786 - }; 787 - })) {}; 788 789 - rtp-nvim = prev.rtp-nvim.overrideAttrs(oa: { 790 doCheck = lua.luaversion == "5.1"; 791 - nativeCheckInputs = [ final.nlua final.busted ]; 792 checkPhase = '' 793 runHook preCheck 794 export HOME=$(mktemp -d) 795 busted --lua=nlua 796 runHook postCheck 797 - ''; 798 }); 799 800 - rustaceanvim = prev.rustaceanvim.overrideAttrs(oa: { 801 doCheck = lua.luaversion == "5.1"; 802 - nativeCheckInputs = [ final.nlua final.busted ]; 803 checkPhase = '' 804 runHook preCheck 805 export HOME=$(mktemp -d) 806 busted --lua=nlua 807 runHook postCheck 808 - ''; 809 }); 810 811 sqlite = prev.sqlite.overrideAttrs (drv: { 812 doCheck = stdenv.hostPlatform.isLinux; 813 - nativeCheckInputs = [ final.plenary-nvim neovim-unwrapped ]; 814 815 # the plugin loads the library from either the LIBSQLITE env 816 # or the vim.g.sqlite_clib_path variable. ··· 849 src = oa.src; 850 hash = "sha256-sO2q4cmkJc6T4iyJUWpBfr2ISycS1cXAIO0ibMfzyIE="; 851 }; 852 - nativeBuildInputs = oa.nativeBuildInputs ++ [ cargo rustPlatform.cargoSetupHook ]; 853 }); 854 855 tl = prev.tl.overrideAttrs ({ ··· 865 hash = "sha256-ow0zefFFrU91Q2PJww2jtd6nqUjwXUtfQzjkzl/AXuo="; 866 }; 867 868 - NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin 869 - (if lua.pkgs.isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua"); 870 871 nativeBuildInputs = oa.nativeBuildInputs ++ [ 872 cargo ··· 895 }); 896 897 tree-sitter-norg = prev.tree-sitter-norg.overrideAttrs (oa: { 898 - propagatedBuildInputs = let 899 - # HACK: luarocks-nix puts rockspec build dependencies in the nativeBuildInputs, 900 - # but that doesn't seem to work 901 - lua = lib.head oa.propagatedBuildInputs; 902 - in oa.propagatedBuildInputs ++ [ 903 - lua.pkgs.luarocks-build-treesitter-parser-cpp 904 - ]; 905 }); 906 907 tree-sitter-orgmode = prev.tree-sitter-orgmode.overrideAttrs (oa: { ··· 932 chmod -x $out/bin/vusted_entry.vim 933 ''; 934 }); 935 - 936 937 # aliases 938 cjson = prev.lua-cjson;
··· 1 # do not add pkgs, it messes up splicing 2 + { 3 + stdenv, 4 + cargo, 5 + cmake, 6 7 + # plenary utilities 8 + which, 9 + findutils, 10 + clang, 11 + coreutils, 12 + curl, 13 + cyrus_sasl, 14 + dbus, 15 + expat, 16 + fetchFromGitHub, 17 + fetchpatch, 18 + fetchurl, 19 + fixDarwinDylibNames, 20 + glib, 21 + glibc, 22 + gmp, 23 + gnulib, 24 + gnum4, 25 + gobject-introspection, 26 + imagemagick, 27 + installShellFiles, 28 + lib, 29 + libevent, 30 + libiconv, 31 + libmpack, 32 + libmysqlclient, 33 + libpsl, 34 + libpq, 35 + libuuid, 36 + libuv, 37 + libxcrypt, 38 + libyaml, 39 + luajitPackages, 40 + lua-language-server, 41 + mariadb, 42 + magic-enum, 43 + mpfr, 44 + neovim-unwrapped, 45 + openldap, 46 + openssl, 47 + pcre, 48 + pkg-config, 49 + readline, 50 + rustPlatform, 51 + sol2, 52 + sqlite, 53 + tomlplusplus, 54 + tree-sitter, 55 + unbound, 56 + vimPlugins, 57 + vimUtils, 58 + yajl, 59 + zip, 60 + unzip, 61 + zlib, 62 + zziplib, 63 }: 64 65 final: prev: 66 let 67 + inherit (prev) 68 + luaOlder 69 + luaAtLeast 70 + lua 71 + isLuaJIT 72 + isLua51 73 + ; 74 in 75 { 76 + argparse = prev.argparse.overrideAttrs (oa: { 77 78 doCheck = true; 79 checkInputs = [ final.busted ]; ··· 115 116 cqueues = prev.cqueues.overrideAttrs (oa: rec { 117 # Parse out a version number without the Lua version inserted 118 + version = 119 + let 120 + version' = prev.cqueues.version; 121 + rel = lib.splitVersion version'; 122 + date = lib.head rel; 123 + rev = lib.last (lib.splitString "-" (lib.last rel)); 124 + in 125 + "${date}-${rev}"; 126 127 meta.broken = luaOlder "5.1" || luaAtLeast "5.4"; 128 ··· 131 ]; 132 133 externalDeps = [ 134 + { 135 + name = "CRYPTO"; 136 + dep = openssl; 137 + } 138 + { 139 + name = "OPENSSL"; 140 + dep = openssl; 141 + } 142 ]; 143 144 # Upstream rockspec is pointlessly broken into separate rockspecs, per Lua 145 # version, which doesn't work well for us, so modify it 146 + postConfigure = 147 + let 148 + inherit (prev.cqueues) pname; 149 + in 150 '' 151 # 'all' target auto-detects correct Lua version, which is fine for us as 152 # we only have the right one available :) ··· 162 163 # Until https://github.com/swarn/fzy-lua/pull/8 is merged, 164 # we have to invoke busted manually 165 + fzy = prev.fzy.overrideAttrs (oa: { 166 doCheck = true; 167 nativeCheckInputs = [ final.busted ]; 168 checkPhase = '' ··· 178 sha256 = "1vmx039n3nqfx50faqhs3wgiw28ws416rhw6vh6srmh9i826dac7"; 179 }) 180 ]; 181 + /* 182 + TODO: separate docs derivation? (pandoc is heavy) 183 nativeBuildInputs = [ pandoc ]; 184 makeFlags = [ "-C doc" "lua-http.html" "lua-http.3" ]; 185 */ ··· 260 propagatedBuildInputs = oa.propagatedBuildInputs ++ [ lua-language-server ]; 261 }); 262 263 + lmathx = prev.luaLib.overrideLuarocks prev.lmathx ( 264 + drv: 265 + if luaAtLeast "5.1" && luaOlder "5.2" then 266 + { 267 + version = "20120430.51-1"; 268 + knownRockspec = 269 + (fetchurl { 270 + url = "mirror://luarocks/lmathx-20120430.51-1.rockspec"; 271 + sha256 = "148vbv2g3z5si2db7rqg5bdily7m4sjyh9w6r3jnx3csvfaxyhp0"; 272 + }).outPath; 273 + src = fetchurl { 274 + url = "https://web.tecgraf.puc-rio.br/~lhf/ftp/lua/5.1/lmathx.tar.gz"; 275 + sha256 = "0sa553d0zlxhvpsmr4r7d841f16yq4wr3fg7i07ibxkz6yzxax51"; 276 + }; 277 + } 278 + else if luaAtLeast "5.2" && luaOlder "5.3" then 279 + { 280 version = "20120430.52-1"; 281 + knownRockspec = 282 + (fetchurl { 283 + url = "mirror://luarocks/lmathx-20120430.52-1.rockspec"; 284 + sha256 = "14rd625sipakm72wg6xqsbbglaxyjba9nsajsfyvhg0sz8qjgdya"; 285 + }).outPath; 286 src = fetchurl { 287 url = "http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/5.2/lmathx.tar.gz"; 288 sha256 = "19dwa4z266l2njgi6fbq9rak4rmx2fsx1s0p9sl166ar3mnrdwz5"; 289 }; 290 + } 291 + else 292 + { 293 + disabled = luaOlder "5.1" || luaAtLeast "5.5"; 294 + # works fine with 5.4 as well 295 + postConfigure = '' 296 + substituteInPlace ''${rockspecFilename} \ 297 + --replace 'lua ~> 5.3' 'lua >= 5.3, < 5.5' 298 + ''; 299 + } 300 + ); 301 302 lmpfrlib = prev.lmpfrlib.overrideAttrs (oa: { 303 externalDeps = [ 304 + { 305 + name = "GMP"; 306 + dep = gmp; 307 + } 308 + { 309 + name = "MPFR"; 310 + dep = mpfr; 311 + } 312 ]; 313 unpackPhase = '' 314 cp $src $(stripHash $src) ··· 323 324 lrexlib-pcre = prev.lrexlib-pcre.overrideAttrs (oa: { 325 externalDeps = [ 326 + { 327 + name = "PCRE"; 328 + dep = pcre; 329 + } 330 ]; 331 }); 332 ··· 362 ''; 363 }); 364 365 + lua-resty-jwt = prev.lua-resty-jwt.overrideAttrs (oa: { 366 src = fetchFromGitHub { 367 owner = "cdbattags"; 368 repo = "lua-resty-jwt"; ··· 376 buildInputs = oa.buildInputs ++ [ 377 zlib.dev 378 ]; 379 + meta = oa.meta // { 380 + broken = luaOlder "5.1" || luaAtLeast "5.4"; 381 + }; 382 }); 383 384 luadbi-mysql = prev.luadbi-mysql.overrideAttrs (oa: { ··· 403 404 luadbi-sqlite3 = prev.luadbi-sqlite3.overrideAttrs (oa: { 405 externalDeps = [ 406 + { 407 + name = "SQLITE"; 408 + dep = sqlite; 409 + } 410 ]; 411 }); 412 ··· 415 final.luasocket 416 ]; 417 externalDeps = [ 418 + { 419 + name = "EVENT"; 420 + dep = libevent; 421 + } 422 ]; 423 meta.broken = luaOlder "5.1" || luaAtLeast "5.4"; 424 }); 425 426 luaexpat = prev.luaexpat.overrideAttrs (_: { 427 externalDeps = [ 428 + { 429 + name = "EXPAT"; 430 + dep = expat; 431 + } 432 ]; 433 }); 434 ··· 448 449 lualdap = prev.lualdap.overrideAttrs (_: { 450 externalDeps = [ 451 + { 452 + name = "LDAP"; 453 + dep = openldap; 454 + } 455 ]; 456 }); 457 458 luaossl = prev.luaossl.overrideAttrs (_: { 459 externalDeps = [ 460 + { 461 + name = "CRYPTO"; 462 + dep = openssl; 463 + } 464 + { 465 + name = "OPENSSL"; 466 + dep = openssl; 467 + } 468 ]; 469 }); 470 471 luaposix = prev.luaposix.overrideAttrs (_: { 472 externalDeps = [ 473 + { 474 + name = "CRYPT"; 475 + dep = libxcrypt; 476 + } 477 ]; 478 }); 479 480 luaprompt = prev.luaprompt.overrideAttrs (oa: { 481 externalDeps = [ 482 + { 483 + name = "READLINE"; 484 + dep = readline; 485 + } 486 + { 487 + name = "HISTORY"; 488 + dep = readline; 489 + } 490 ]; 491 492 nativeBuildInputs = oa.nativeBuildInputs ++ [ installShellFiles ]; ··· 499 # As a nix user, use this derivation instead of "luarocks_bootstrap" 500 luarocks = prev.luarocks.overrideAttrs (oa: { 501 502 + nativeBuildInputs = oa.nativeBuildInputs ++ [ 503 + installShellFiles 504 + lua 505 + unzip 506 + ]; 507 # cmake is just to compile packages with "cmake" buildType, not luarocks itself 508 dontUseCmakeConfigure = true; 509 510 + propagatedBuildInputs = [ 511 + zip 512 + unzip 513 + cmake 514 + ]; 515 516 postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 517 installShellCompletion --cmd luarocks \ ··· 533 534 luasec = prev.luasec.overrideAttrs (oa: { 535 externalDeps = [ 536 + { 537 + name = "OPENSSL"; 538 + dep = openssl; 539 + } 540 ]; 541 }); 542 543 luasql-sqlite3 = prev.luasql-sqlite3.overrideAttrs (oa: { 544 externalDeps = [ 545 + { 546 + name = "SQLITE"; 547 + dep = sqlite; 548 + } 549 ]; 550 }); 551 552 + luasystem = prev.luasystem.overrideAttrs ( 553 + oa: 554 + lib.optionalAttrs stdenv.hostPlatform.isLinux { 555 + buildInputs = [ glibc.out ]; 556 + } 557 + ); 558 559 luazip = prev.luazip.overrideAttrs (oa: { 560 buildInputs = oa.buildInputs ++ [ ··· 567 # meta.broken = true; 568 # }); 569 570 + lua-yajl = prev.lua-yajl.overrideAttrs (oa: { 571 buildInputs = oa.buildInputs ++ [ 572 yajl 573 ]; ··· 575 576 luaunbound = prev.luaunbound.overrideAttrs (oa: { 577 externalDeps = [ 578 + { 579 + name = "libunbound"; 580 + dep = unbound; 581 + } 582 ]; 583 }); 584 ··· 593 hash = "sha256-7mFn4dLgaxfAxtPFCc3VzcBx2HuywcZTYqCGTbaGS0k="; 594 }; 595 596 + propagatedBuildInputs = oa.propagatedBuildInputs ++ [ 597 + cargo 598 + rustPlatform.cargoSetupHook 599 + ]; 600 601 # ld: symbol(s) not found for architecture arm64 602 # clang-16: error: linker command failed with exit code 1 (use -v to see invocation) ··· 613 614 luuid = prev.luuid.overrideAttrs (oa: { 615 externalDeps = [ 616 + { 617 + name = "LIBUUID"; 618 + dep = libuuid; 619 + } 620 ]; 621 # Trivial patch to make it work in both 5.1 and 5.2. Basically just the 622 # tiny diff between the two upstream versions placed behind an #if. ··· 627 patches = [ 628 ./luuid.patch 629 ]; 630 + postConfigure = '' 631 sed -Ei ''${rockspecFilename} -e 's|lua >= 5.2|lua >= 5.1,|' 632 ''; 633 meta = oa.meta // { ··· 636 }; 637 }); 638 639 + lz-n = prev.lz-n.overrideAttrs (oa: { 640 doCheck = lua.luaversion == "5.1"; 641 + nativeCheckInputs = [ 642 + final.nlua 643 + final.busted 644 + ]; 645 checkPhase = '' 646 runHook preCheck 647 export HOME=$(mktemp -d) 648 busted --lua=nlua 649 runHook postCheck 650 + ''; 651 }); 652 653 + lze = prev.lze.overrideAttrs (oa: { 654 doCheck = lua.luaversion == "5.1"; 655 + nativeCheckInputs = [ 656 + final.nlua 657 + final.busted 658 + ]; 659 checkPhase = '' 660 runHook preCheck 661 export HOME=$(mktemp -d) ··· 664 ''; 665 }); 666 667 + neotest = prev.neotest.overrideAttrs (oa: { 668 doCheck = stdenv.hostPlatform.isLinux; 669 nativeCheckInputs = oa.nativeCheckInputs ++ [ 670 + final.nlua 671 + final.busted 672 + neovim-unwrapped 673 ]; 674 675 checkPhase = '' ··· 681 -c "PlenaryBustedDirectory tests/ {sequential = true}" 682 683 runHook postCheck 684 + ''; 685 }); 686 687 + haskell-tools-nvim = prev.haskell-tools-nvim.overrideAttrs (oa: { 688 doCheck = lua.luaversion == "5.1"; 689 + nativeCheckInputs = [ 690 + final.nlua 691 + final.busted 692 + ]; 693 checkPhase = '' 694 runHook preCheck 695 export HOME=$(mktemp -d) ··· 708 709 nvim-nio = prev.nvim-nio.overrideAttrs (oa: { 710 doCheck = lua.luaversion == "5.1"; 711 + nativeCheckInputs = [ 712 + final.nlua 713 + final.busted 714 + ]; 715 716 # upstream uses PlenaryBusted which is a pain to setup 717 checkPhase = '' ··· 768 rm -rf deps/lua deps/libuv 769 ''; 770 771 + buildInputs = [ 772 + libuv 773 + final.lua 774 + ]; 775 776 + nativeBuildInputs = [ 777 + pkg-config 778 + cmake 779 + ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ]; 780 }; 781 782 luv = prev.luv.overrideAttrs (oa: { ··· 786 787 # Use system libuv instead of building local and statically linking 788 luarocksConfig = lib.recursiveUpdate oa.luarocksConfig { 789 + variables = { 790 + WITH_SHARED_LIBUV = "ON"; 791 + }; 792 }; 793 794 # we unset the LUA_PATH since the hook erases the interpreter defaults (To fix) ··· 825 }); 826 827 mpack = prev.mpack.overrideAttrs (drv: { 828 + buildInputs = (drv.buildInputs or [ ]) ++ [ libmpack ]; 829 env = { 830 # the rockspec doesn't use the makefile so you may need to export more flags 831 USE_SYSTEM_LUA = "yes"; ··· 833 }; 834 }); 835 836 + nlua = prev.nlua.overrideAttrs (oa: { 837 838 # patchShebang removes the nvim in nlua's shebang so we hardcode one 839 postFixup = '' 840 sed -i -e "1 s|.*|#\!${coreutils}/bin/env -S ${neovim-unwrapped}/bin/nvim -l|" "$out/bin/nlua" 841 + ''; 842 dontPatchShebangs = true; 843 }); 844 ··· 859 }); 860 861 # upstream broken, can't be generated, so moved out from the generated set 862 + readline = final.callPackage ( 863 + { 864 + buildLuarocksPackage, 865 + fetchurl, 866 + luaAtLeast, 867 + luaOlder, 868 + lua, 869 + luaposix, 870 + }: 871 + buildLuarocksPackage ({ 872 + pname = "readline"; 873 + version = "3.2-0"; 874 + knownRockspec = 875 + (fetchurl { 876 + url = "mirror://luarocks/readline-3.2-0.rockspec"; 877 + sha256 = "1r0sgisxm4xd1r6i053iibxh30j7j3rcj4wwkd8rzkj8nln20z24"; 878 + }).outPath; 879 + src = fetchurl { 880 + # the rockspec url doesn't work because 'www.' is not covered by the certificate so 881 + # I manually removed the 'www' prefix here 882 + url = "http://pjb.com.au/comp/lua/readline-3.2.tar.gz"; 883 + sha256 = "1mk9algpsvyqwhnq7jlw4cgmfzj30l7n2r6ak4qxgdxgc39f48k4"; 884 + }; 885 886 + luarocksConfig.variables = rec { 887 + READLINE_INCDIR = "${readline.dev}/include"; 888 + HISTORY_INCDIR = READLINE_INCDIR; 889 + }; 890 + unpackCmd = '' 891 + unzip "$curSrc" 892 + tar xf *.tar.gz 893 + ''; 894 895 + propagatedBuildInputs = [ 896 + luaposix 897 + readline.out 898 + ]; 899 900 + meta = { 901 + homepage = "https://pjb.com.au/comp/lua/readline.html"; 902 + description = "Interface to the readline library"; 903 + license.fullName = "MIT/X11"; 904 + broken = (luaOlder "5.1") || (luaAtLeast "5.5"); 905 + }; 906 + }) 907 + ) { }; 908 909 + rtp-nvim = prev.rtp-nvim.overrideAttrs (oa: { 910 doCheck = lua.luaversion == "5.1"; 911 + nativeCheckInputs = [ 912 + final.nlua 913 + final.busted 914 + ]; 915 checkPhase = '' 916 runHook preCheck 917 export HOME=$(mktemp -d) 918 busted --lua=nlua 919 runHook postCheck 920 + ''; 921 }); 922 923 + rustaceanvim = prev.rustaceanvim.overrideAttrs (oa: { 924 doCheck = lua.luaversion == "5.1"; 925 + nativeCheckInputs = [ 926 + final.nlua 927 + final.busted 928 + ]; 929 checkPhase = '' 930 runHook preCheck 931 export HOME=$(mktemp -d) 932 busted --lua=nlua 933 runHook postCheck 934 + ''; 935 }); 936 937 sqlite = prev.sqlite.overrideAttrs (drv: { 938 doCheck = stdenv.hostPlatform.isLinux; 939 + nativeCheckInputs = [ 940 + final.plenary-nvim 941 + neovim-unwrapped 942 + ]; 943 944 # the plugin loads the library from either the LIBSQLITE env 945 # or the vim.g.sqlite_clib_path variable. ··· 978 src = oa.src; 979 hash = "sha256-sO2q4cmkJc6T4iyJUWpBfr2ISycS1cXAIO0ibMfzyIE="; 980 }; 981 + nativeBuildInputs = oa.nativeBuildInputs ++ [ 982 + cargo 983 + rustPlatform.cargoSetupHook 984 + ]; 985 }); 986 987 tl = prev.tl.overrideAttrs ({ ··· 997 hash = "sha256-ow0zefFFrU91Q2PJww2jtd6nqUjwXUtfQzjkzl/AXuo="; 998 }; 999 1000 + NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin ( 1001 + if lua.pkgs.isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua" 1002 + ); 1003 1004 nativeBuildInputs = oa.nativeBuildInputs ++ [ 1005 cargo ··· 1028 }); 1029 1030 tree-sitter-norg = prev.tree-sitter-norg.overrideAttrs (oa: { 1031 + propagatedBuildInputs = 1032 + let 1033 + # HACK: luarocks-nix puts rockspec build dependencies in the nativeBuildInputs, 1034 + # but that doesn't seem to work 1035 + lua = lib.head oa.propagatedBuildInputs; 1036 + in 1037 + oa.propagatedBuildInputs 1038 + ++ [ 1039 + lua.pkgs.luarocks-build-treesitter-parser-cpp 1040 + ]; 1041 }); 1042 1043 tree-sitter-orgmode = prev.tree-sitter-orgmode.overrideAttrs (oa: { ··· 1068 chmod -x $out/bin/vusted_entry.vim 1069 ''; 1070 }); 1071 1072 # aliases 1073 cjson = prev.lua-cjson;
+2 -2
pkgs/development/python-modules/dbt-core/default.nix
··· 12 jinja2, 13 logbook, 14 mashumaro, 15 - minimal-snowplow-tracker, 16 networkx, 17 packaging, 18 pathspec, ··· 23 pyyaml, 24 requests, 25 setuptools, 26 sqlparse, 27 typing-extensions, 28 }: ··· 72 jinja2 73 logbook 74 mashumaro 75 - minimal-snowplow-tracker 76 networkx 77 packaging 78 pathspec ··· 80 pytz 81 pyyaml 82 requests 83 sqlparse 84 typing-extensions 85 ] ++ mashumaro.optional-dependencies.msgpack;
··· 12 jinja2, 13 logbook, 14 mashumaro, 15 networkx, 16 packaging, 17 pathspec, ··· 22 pyyaml, 23 requests, 24 setuptools, 25 + snowplow-tracker, 26 sqlparse, 27 typing-extensions, 28 }: ··· 72 jinja2 73 logbook 74 mashumaro 75 networkx 76 packaging 77 pathspec ··· 79 pytz 80 pyyaml 81 requests 82 + snowplow-tracker 83 sqlparse 84 typing-extensions 85 ] ++ mashumaro.optional-dependencies.msgpack;
+2 -2
pkgs/development/python-modules/elevenlabs/default.nix
··· 12 }: 13 14 let 15 - version = "1.50.6"; 16 tag = version; 17 in 18 buildPythonPackage { ··· 24 owner = "elevenlabs"; 25 repo = "elevenlabs-python"; 26 inherit tag; 27 - hash = "sha256-o+J9UnYWE0/3SXQJtv2sm6xibXUPG1V1T7d+SXyBW50="; 28 }; 29 30 build-system = [ poetry-core ];
··· 12 }: 13 14 let 15 + version = "1.51.0"; 16 tag = version; 17 in 18 buildPythonPackage { ··· 24 owner = "elevenlabs"; 25 repo = "elevenlabs-python"; 26 inherit tag; 27 + hash = "sha256-yiMtONiRPEaJNjG3Q3womQObMVD+lqNENeFIPeoCneg="; 28 }; 29 30 build-system = [ poetry-core ];
+33 -23
pkgs/development/python-modules/neurokit2/default.nix
··· 1 { 2 lib, 3 stdenv, 4 - fetchFromGitHub, 5 buildPythonPackage, 6 setuptools, 7 - pytest, 8 - scipy, 9 - scikit-learn, 10 pandas, 11 - matplotlib, 12 requests, 13 - cvxopt, 14 - biosppy, 15 - pytest-cov-stub, 16 - mock, 17 - plotly, 18 astropy, 19 coverage, 20 pytestCheckHook, 21 }: 22 ··· 34 35 postPatch = '' 36 substituteInPlace setup.py \ 37 - --replace-fail '"pytest-runner"' '"pytest"' 38 ''; 39 40 build-system = [ 41 setuptools 42 - pytest 43 ]; 44 45 dependencies = [ 46 - scipy 47 - scikit-learn 48 - pandas 49 matplotlib 50 requests 51 - cvxopt 52 - biosppy 53 ]; 54 55 nativeCheckInputs = [ ··· 68 69 disabledTestPaths = [ 70 # Required dependencies not available in nixpkgs 71 - "tests/tests_complexity.py" 72 - "tests/tests_eeg.py" 73 - "tests/tests_eog.py" 74 - "tests/tests_ecg.py" 75 "tests/tests_bio.py" 76 "tests/tests_data.py" 77 - "tests/tests_epochs.py" 78 "tests/tests_ecg_findpeaks.py" 79 "tests/tests_eda.py" 80 "tests/tests_emg.py" 81 "tests/tests_hrv.py" 82 "tests/tests_rsp.py" 83 - "tests/tests_ppg.py" 84 "tests/tests_signal.py" 85 86 # Dependency is broken `mne-python` 87 "tests/tests_microstates.py" 88 ]; 89 90 pythonImportsCheck = [
··· 1 { 2 lib, 3 stdenv, 4 buildPythonPackage, 5 + fetchFromGitHub, 6 + 7 + # build-system 8 setuptools, 9 + 10 + # dependencies 11 + matplotlib, 12 + numpy, 13 pandas, 14 requests, 15 + scikit-learn, 16 + scipy, 17 + 18 + # tests 19 astropy, 20 coverage, 21 + mock, 22 + plotly, 23 + pytest-cov-stub, 24 pytestCheckHook, 25 }: 26 ··· 38 39 postPatch = '' 40 substituteInPlace setup.py \ 41 + --replace-fail '"pytest-runner", ' "" 42 ''; 43 44 build-system = [ 45 setuptools 46 ]; 47 48 dependencies = [ 49 matplotlib 50 + numpy 51 + pandas 52 requests 53 + scikit-learn 54 + scipy 55 ]; 56 57 nativeCheckInputs = [ ··· 70 71 disabledTestPaths = [ 72 # Required dependencies not available in nixpkgs 73 "tests/tests_bio.py" 74 + "tests/tests_complexity.py" 75 "tests/tests_data.py" 76 + "tests/tests_ecg.py" 77 + "tests/tests_ecg_delineate.py" 78 "tests/tests_ecg_findpeaks.py" 79 "tests/tests_eda.py" 80 + "tests/tests_eeg.py" 81 "tests/tests_emg.py" 82 + "tests/tests_eog.py" 83 + "tests/tests_epochs.py" 84 "tests/tests_hrv.py" 85 + "tests/tests_ppg.py" 86 "tests/tests_rsp.py" 87 "tests/tests_signal.py" 88 89 # Dependency is broken `mne-python` 90 "tests/tests_microstates.py" 91 + ]; 92 + 93 + pytestFlagsArray = [ 94 + # Otherwise, test collection fails with: 95 + # AttributeError: module 'scipy.ndimage._delegators' has no attribute '@py_builtins_signature'. Did you mean: 'grey_dilation_signature'? 96 + # https://github.com/scipy/scipy/issues/22236 97 + "--assert=plain" 98 ]; 99 100 pythonImportsCheck = [
+5 -8
pkgs/development/python-modules/rubicon-objc/default.nix
··· 1 { 2 lib, 3 buildPythonPackage, 4 - darwin, 5 fetchFromGitHub, 6 pythonOlder, 7 setuptools, 8 setuptools-scm, 9 - unittestCheckHook, 10 }: 11 12 buildPythonPackage rec { ··· 14 version = "0.5.0"; 15 pyproject = true; 16 17 - disabled = pythonOlder "3.8"; 18 19 src = fetchFromGitHub { 20 owner = "beeware"; ··· 25 26 postPatch = '' 27 substituteInPlace pyproject.toml \ 28 - --replace-fail "setuptools==69.5.1" "setuptools" \ 29 - --replace-fail "setuptools_scm==8.0.4" "setuptools_scm" 30 ''; 31 32 build-system = [ ··· 38 make -C tests/objc 39 ''; 40 41 - nativeCheckInputs = [ unittestCheckHook ]; 42 - 43 - checkInputs = [ darwin.apple_sdk.frameworks.Foundation ]; 44 45 pythonImportsCheck = [ "rubicon.objc" ]; 46
··· 1 { 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pythonOlder, 6 setuptools, 7 setuptools-scm, 8 + pytestCheckHook, 9 }: 10 11 buildPythonPackage rec { ··· 13 version = "0.5.0"; 14 pyproject = true; 15 16 + disabled = pythonOlder "3.9"; 17 18 src = fetchFromGitHub { 19 owner = "beeware"; ··· 24 25 postPatch = '' 26 substituteInPlace pyproject.toml \ 27 + --replace-fail "setuptools==75.7.0" "setuptools" \ 28 + --replace-fail "setuptools_scm==8.1.0" "setuptools_scm" 29 ''; 30 31 build-system = [ ··· 37 make -C tests/objc 38 ''; 39 40 + nativeCheckInputs = [ pytestCheckHook ]; 41 42 pythonImportsCheck = [ "rubicon.objc" ]; 43
+49
pkgs/development/python-modules/snowplow-tracker/default.nix
···
··· 1 + { 2 + buildPythonPackage, 3 + fetchFromGitHub, 4 + freezegun, 5 + httmock, 6 + lib, 7 + pytestCheckHook, 8 + requests, 9 + setuptools, 10 + types-requests, 11 + typing-extensions, 12 + }: 13 + 14 + buildPythonPackage rec { 15 + pname = "snowplow-tracker"; 16 + version = "1.0.4"; 17 + pyproject = true; 18 + 19 + src = fetchFromGitHub { 20 + owner = "snowplow"; 21 + repo = "snowplow-python-tracker"; 22 + tag = version; 23 + hash = "sha256-JYAmVW/+MK0XadF/Mjm3YX+ruSF/SBg0B7IMFz/G+X0="; 24 + }; 25 + 26 + build-system = [ setuptools ]; 27 + 28 + dependencies = [ 29 + requests 30 + types-requests 31 + typing-extensions 32 + ]; 33 + 34 + pythonImportsCheck = [ "snowplow_tracker" ]; 35 + 36 + nativeCheckInputs = [ 37 + httmock 38 + freezegun 39 + pytestCheckHook 40 + ]; 41 + 42 + meta = { 43 + changelog = "https://github.com/snowplow/snowplow-python-tracker/releases/tag/${src.tag}"; 44 + description = "Add analytics to your Python and Django apps, webapps and games"; 45 + homepage = "https://github.com/snowplow/snowplow-python-tracker"; 46 + license = lib.licenses.asl20; 47 + maintainers = with lib.maintainers; [ dotlambda ]; 48 + }; 49 + }
+2
pkgs/top-level/python-packages.nix
··· 15230 15231 snowflake-sqlalchemy = callPackage ../development/python-modules/snowflake-sqlalchemy { }; 15232 15233 snscrape = callPackage ../development/python-modules/snscrape { }; 15234 15235 snuggs = callPackage ../development/python-modules/snuggs { };
··· 15230 15231 snowflake-sqlalchemy = callPackage ../development/python-modules/snowflake-sqlalchemy { }; 15232 15233 + snowplow-tracker = callPackage ../development/python-modules/snowplow-tracker { }; 15234 + 15235 snscrape = callPackage ../development/python-modules/snscrape { }; 15236 15237 snuggs = callPackage ../development/python-modules/snuggs { };