Merge master into staging-next

authored by

github-actions[bot] and committed by
GitHub
51ecdeca d9d6f71e

+4064 -477
+6
lib/licenses.nix
··· 734 734 free = false; 735 735 }; 736 736 737 + stk = { 738 + shortName = "stk"; 739 + fullName = "Synthesis Tool Kit 4.3"; 740 + url = https://github.com/thestk/stk/blob/master/LICENSE; 741 + }; 742 + 737 743 tcltk = spdx { 738 744 spdxId = "TCL"; 739 745 fullName = "TCL/TK License";
+2
nixos/modules/module-list.nix
··· 139 139 ./programs/flexoptix-app.nix 140 140 ./programs/freetds.nix 141 141 ./programs/fuse.nix 142 + ./programs/gamemode.nix 142 143 ./programs/geary.nix 143 144 ./programs/gnome-disks.nix 144 145 ./programs/gnome-documents.nix ··· 553 554 ./services/misc/siproxd.nix 554 555 ./services/misc/snapper.nix 555 556 ./services/misc/sonarr.nix 557 + ./services/misc/sourcehut 556 558 ./services/misc/spice-vdagentd.nix 557 559 ./services/misc/ssm-agent.nix 558 560 ./services/misc/sssd.nix
+96
nixos/modules/programs/gamemode.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.programs.gamemode; 7 + settingsFormat = pkgs.formats.ini { }; 8 + configFile = settingsFormat.generate "gamemode.ini" cfg.settings; 9 + in 10 + { 11 + options = { 12 + programs.gamemode = { 13 + enable = mkEnableOption "GameMode to optimise system performance on demand"; 14 + 15 + enableRenice = mkEnableOption "CAP_SYS_NICE on gamemoded to support lowering process niceness" // { 16 + default = true; 17 + }; 18 + 19 + settings = mkOption { 20 + type = settingsFormat.type; 21 + default = {}; 22 + description = '' 23 + System-wide configuration for GameMode (/etc/gamemode.ini). 24 + See gamemoded(8) man page for available settings. 25 + ''; 26 + example = literalExample '' 27 + { 28 + general = { 29 + renice = 10; 30 + }; 31 + 32 + # Warning: GPU optimisations have the potential to damage hardware 33 + gpu = { 34 + apply_gpu_optimisations = "accept-responsibility"; 35 + gpu_device = 0; 36 + amd_performance_level = "high"; 37 + }; 38 + 39 + custom = { 40 + start = "''${pkgs.libnotify}/bin/notify-send 'GameMode started'"; 41 + end = "''${pkgs.libnotify}/bin/notify-send 'GameMode ended'"; 42 + }; 43 + } 44 + ''; 45 + }; 46 + }; 47 + }; 48 + 49 + config = mkIf cfg.enable { 50 + environment = { 51 + systemPackages = [ pkgs.gamemode ]; 52 + etc."gamemode.ini".source = configFile; 53 + }; 54 + 55 + security = { 56 + polkit.enable = true; 57 + wrappers = mkIf cfg.enableRenice { 58 + gamemoded = { 59 + source = "${pkgs.gamemode}/bin/gamemoded"; 60 + capabilities = "cap_sys_nice+ep"; 61 + }; 62 + }; 63 + }; 64 + 65 + systemd = { 66 + packages = [ pkgs.gamemode ]; 67 + user.services.gamemoded = { 68 + # The upstream service already defines this, but doesn't get applied. 69 + # See https://github.com/NixOS/nixpkgs/issues/81138 70 + wantedBy = [ "default.target" ]; 71 + 72 + # Use pkexec from the security wrappers to allow users to 73 + # run libexec/cpugovctl & libexec/gpuclockctl as root with 74 + # the the actions defined in share/polkit-1/actions. 75 + # 76 + # This uses a link farm to make sure other wrapped executables 77 + # aren't included in PATH. 78 + environment.PATH = mkForce (pkgs.linkFarm "pkexec" [ 79 + { 80 + name = "pkexec"; 81 + path = "${config.security.wrapperDir}/pkexec"; 82 + } 83 + ]); 84 + 85 + serviceConfig.ExecStart = mkIf cfg.enableRenice [ 86 + "" # Tell systemd to clear the existing ExecStart list, to prevent appending to it. 87 + "${config.security.wrapperDir}/gamemoded" 88 + ]; 89 + }; 90 + }; 91 + }; 92 + 93 + meta = { 94 + maintainers = with maintainers; [ kira-bruneau ]; 95 + }; 96 + }
+220
nixos/modules/services/misc/sourcehut/builds.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + scfg = cfg.builds; 7 + rcfg = config.services.redis; 8 + iniKey = "builds.sr.ht"; 9 + 10 + drv = pkgs.sourcehut.buildsrht; 11 + in 12 + { 13 + options.services.sourcehut.builds = { 14 + user = mkOption { 15 + type = types.str; 16 + default = "buildsrht"; 17 + description = '' 18 + User for builds.sr.ht. 19 + ''; 20 + }; 21 + 22 + port = mkOption { 23 + type = types.port; 24 + default = 5002; 25 + description = '' 26 + Port on which the "builds" module should listen. 27 + ''; 28 + }; 29 + 30 + database = mkOption { 31 + type = types.str; 32 + default = "builds.sr.ht"; 33 + description = '' 34 + PostgreSQL database name for builds.sr.ht. 35 + ''; 36 + }; 37 + 38 + statePath = mkOption { 39 + type = types.path; 40 + default = "${cfg.statePath}/buildsrht"; 41 + description = '' 42 + State path for builds.sr.ht. 43 + ''; 44 + }; 45 + 46 + enableWorker = mkOption { 47 + type = types.bool; 48 + default = false; 49 + description = '' 50 + Run workers for builds.sr.ht. 51 + Perform manually on machine: `cd ${scfg.statePath}/images; docker build -t qemu -f qemu/Dockerfile .` 52 + ''; 53 + }; 54 + 55 + images = mkOption { 56 + type = types.attrsOf (types.attrsOf (types.attrsOf types.package)); 57 + default = { }; 58 + example = lib.literalExample ''(let 59 + # Pinning unstable to allow usage with flakes and limit rebuilds. 60 + pkgs_unstable = builtins.fetchGit { 61 + url = "https://github.com/NixOS/nixpkgs"; 62 + rev = "ff96a0fa5635770390b184ae74debea75c3fd534"; 63 + ref = "nixos-unstable"; 64 + }; 65 + image_from_nixpkgs = pkgs_unstable: (import ("${pkgs.sourcehut.buildsrht}/lib/images/nixos/image.nix") { 66 + pkgs = (import pkgs_unstable {}); 67 + }); 68 + in 69 + { 70 + nixos.unstable.x86_64 = image_from_nixpkgs pkgs_unstable; 71 + } 72 + )''; 73 + description = '' 74 + Images for builds.sr.ht. Each package should be distro.release.arch and point to a /nix/store/package/root.img.qcow2. 75 + ''; 76 + }; 77 + 78 + }; 79 + 80 + config = with scfg; let 81 + image_dirs = lib.lists.flatten ( 82 + lib.attrsets.mapAttrsToList 83 + (distro: revs: 84 + lib.attrsets.mapAttrsToList 85 + (rev: archs: 86 + lib.attrsets.mapAttrsToList 87 + (arch: image: 88 + pkgs.runCommandNoCC "buildsrht-images" { } '' 89 + mkdir -p $out/${distro}/${rev}/${arch} 90 + ln -s ${image}/*.qcow2 $out/${distro}/${rev}/${arch}/root.img.qcow2 91 + '') 92 + archs) 93 + revs) 94 + scfg.images); 95 + image_dir_pre = pkgs.symlinkJoin { 96 + name = "builds.sr.ht-worker-images-pre"; 97 + paths = image_dirs ++ [ 98 + "${pkgs.sourcehut.buildsrht}/lib/images" 99 + ]; 100 + }; 101 + image_dir = pkgs.runCommandNoCC "builds.sr.ht-worker-images" { } '' 102 + mkdir -p $out/images 103 + cp -Lr ${image_dir_pre}/* $out/images 104 + ''; 105 + in 106 + lib.mkIf (cfg.enable && elem "builds" cfg.services) { 107 + users = { 108 + users = { 109 + "${user}" = { 110 + isSystemUser = true; 111 + group = user; 112 + extraGroups = lib.optionals cfg.builds.enableWorker [ "docker" ]; 113 + description = "builds.sr.ht user"; 114 + }; 115 + }; 116 + 117 + groups = { 118 + "${user}" = { }; 119 + }; 120 + }; 121 + 122 + services.postgresql = { 123 + authentication = '' 124 + local ${database} ${user} trust 125 + ''; 126 + ensureDatabases = [ database ]; 127 + ensureUsers = [ 128 + { 129 + name = user; 130 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 131 + } 132 + ]; 133 + }; 134 + 135 + systemd = { 136 + tmpfiles.rules = [ 137 + "d ${statePath} 0755 ${user} ${user} -" 138 + ] ++ (lib.optionals cfg.builds.enableWorker 139 + [ "d ${statePath}/logs 0775 ${user} ${user} - -" ] 140 + ); 141 + 142 + services = { 143 + buildsrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey 144 + { 145 + after = [ "postgresql.service" "network.target" ]; 146 + requires = [ "postgresql.service" ]; 147 + wantedBy = [ "multi-user.target" ]; 148 + 149 + description = "builds.sr.ht website service"; 150 + 151 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 152 + 153 + # Hack to bypass this hack: https://git.sr.ht/~sircmpwn/core.sr.ht/tree/master/item/srht-update-profiles#L6 154 + } // { preStart = " "; }; 155 + 156 + buildsrht-worker = { 157 + enable = scfg.enableWorker; 158 + after = [ "postgresql.service" "network.target" ]; 159 + requires = [ "postgresql.service" ]; 160 + wantedBy = [ "multi-user.target" ]; 161 + partOf = [ "buildsrht.service" ]; 162 + description = "builds.sr.ht worker service"; 163 + path = [ pkgs.openssh pkgs.docker ]; 164 + serviceConfig = { 165 + Type = "simple"; 166 + User = user; 167 + Group = "nginx"; 168 + Restart = "always"; 169 + }; 170 + serviceConfig.ExecStart = "${pkgs.sourcehut.buildsrht}/bin/builds.sr.ht-worker"; 171 + }; 172 + }; 173 + }; 174 + 175 + services.sourcehut.settings = { 176 + # URL builds.sr.ht is being served at (protocol://domain) 177 + "builds.sr.ht".origin = mkDefault "http://builds.${cfg.originBase}"; 178 + # Address and port to bind the debug server to 179 + "builds.sr.ht".debug-host = mkDefault "0.0.0.0"; 180 + "builds.sr.ht".debug-port = mkDefault port; 181 + # Configures the SQLAlchemy connection string for the database. 182 + "builds.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 183 + # Set to "yes" to automatically run migrations on package upgrade. 184 + "builds.sr.ht".migrate-on-upgrade = mkDefault "yes"; 185 + # builds.sr.ht's OAuth client ID and secret for meta.sr.ht 186 + # Register your client at meta.example.org/oauth 187 + "builds.sr.ht".oauth-client-id = mkDefault null; 188 + "builds.sr.ht".oauth-client-secret = mkDefault null; 189 + # The redis connection used for the celery worker 190 + "builds.sr.ht".redis = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/3"; 191 + # The shell used for ssh 192 + "builds.sr.ht".shell = mkDefault "runner-shell"; 193 + # Register the builds.sr.ht dispatcher 194 + "git.sr.ht::dispatch".${builtins.unsafeDiscardStringContext "${pkgs.sourcehut.buildsrht}/bin/buildsrht-keys"} = mkDefault "${user}:${user}"; 195 + 196 + # Location for build logs, images, and control command 197 + } // lib.attrsets.optionalAttrs scfg.enableWorker { 198 + # Default worker stores logs that are accessible via this address:port 199 + "builds.sr.ht::worker".name = mkDefault "127.0.0.1:5020"; 200 + "builds.sr.ht::worker".buildlogs = mkDefault "${scfg.statePath}/logs"; 201 + "builds.sr.ht::worker".images = mkDefault "${image_dir}/images"; 202 + "builds.sr.ht::worker".controlcmd = mkDefault "${image_dir}/images/control"; 203 + "builds.sr.ht::worker".timeout = mkDefault "3m"; 204 + }; 205 + 206 + services.nginx.virtualHosts."logs.${cfg.originBase}" = 207 + if scfg.enableWorker then { 208 + listen = with builtins; let address = split ":" cfg.settings."builds.sr.ht::worker".name; 209 + in [{ addr = elemAt address 0; port = lib.toInt (elemAt address 2); }]; 210 + locations."/logs".root = "${scfg.statePath}"; 211 + } else { }; 212 + 213 + services.nginx.virtualHosts."builds.${cfg.originBase}" = { 214 + forceSSL = true; 215 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 216 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 217 + locations."/static".root = "${pkgs.sourcehut.buildsrht}/${pkgs.sourcehut.python.sitePackages}/buildsrht"; 218 + }; 219 + }; 220 + }
+198
nixos/modules/services/misc/sourcehut/default.nix
··· 1 + { config, pkgs, lib, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + settingsFormat = pkgs.formats.ini { }; 8 + 9 + # Specialized python containing all the modules 10 + python = pkgs.sourcehut.python.withPackages (ps: with ps; [ 11 + gunicorn 12 + # Sourcehut services 13 + srht 14 + buildsrht 15 + dispatchsrht 16 + gitsrht 17 + hgsrht 18 + hubsrht 19 + listssrht 20 + mansrht 21 + metasrht 22 + pastesrht 23 + todosrht 24 + ]); 25 + in 26 + { 27 + imports = 28 + [ 29 + ./git.nix 30 + ./hg.nix 31 + ./hub.nix 32 + ./todo.nix 33 + ./man.nix 34 + ./meta.nix 35 + ./paste.nix 36 + ./builds.nix 37 + ./lists.nix 38 + ./dispatch.nix 39 + (mkRemovedOptionModule [ "services" "sourcehut" "nginx" "enable" ] '' 40 + The sourcehut module supports `nginx` as a local reverse-proxy by default and doesn't 41 + support other reverse-proxies officially. 42 + 43 + However it's possible to use an alternative reverse-proxy by 44 + 45 + * disabling nginx 46 + * adjusting the relevant settings for server addresses and ports directly 47 + 48 + Further details about this can be found in the `Sourcehut`-section of the NixOS-manual. 49 + '') 50 + ]; 51 + 52 + options.services.sourcehut = { 53 + enable = mkOption { 54 + type = types.bool; 55 + default = false; 56 + description = '' 57 + Enable sourcehut - git hosting, continuous integration, mailing list, ticket tracking, 58 + task dispatching, wiki and account management services 59 + ''; 60 + }; 61 + 62 + services = mkOption { 63 + type = types.nonEmptyListOf (types.enum [ "builds" "dispatch" "git" "hub" "hg" "lists" "man" "meta" "paste" "todo" ]); 64 + default = [ "man" "meta" "paste" ]; 65 + example = [ "builds" "dispatch" "git" "hub" "hg" "lists" "man" "meta" "paste" "todo" ]; 66 + description = '' 67 + Services to enable on the sourcehut network. 68 + ''; 69 + }; 70 + 71 + originBase = mkOption { 72 + type = types.str; 73 + default = with config.networking; hostName + lib.optionalString (domain != null) ".${domain}"; 74 + description = '' 75 + Host name used by reverse-proxy and for default settings. Will host services at git."''${originBase}". For example: git.sr.ht 76 + ''; 77 + }; 78 + 79 + address = mkOption { 80 + type = types.str; 81 + default = "127.0.0.1"; 82 + description = '' 83 + Address to bind to. 84 + ''; 85 + }; 86 + 87 + python = mkOption { 88 + internal = true; 89 + type = types.package; 90 + default = python; 91 + description = '' 92 + The python package to use. It should contain references to the *srht modules and also 93 + gunicorn. 94 + ''; 95 + }; 96 + 97 + statePath = mkOption { 98 + type = types.path; 99 + default = "/var/lib/sourcehut"; 100 + description = '' 101 + Root state path for the sourcehut network. If left as the default value 102 + this directory will automatically be created before the sourcehut server 103 + starts, otherwise the sysadmin is responsible for ensuring the 104 + directory exists with appropriate ownership and permissions. 105 + ''; 106 + }; 107 + 108 + settings = mkOption { 109 + type = lib.types.submodule { 110 + freeformType = settingsFormat.type; 111 + }; 112 + default = { }; 113 + description = '' 114 + The configuration for the sourcehut network. 115 + ''; 116 + }; 117 + }; 118 + 119 + config = mkIf cfg.enable { 120 + assertions = 121 + [ 122 + { 123 + assertion = with cfgIni.webhooks; private-key != null && stringLength private-key == 44; 124 + message = "The webhook's private key must be defined and of a 44 byte length."; 125 + } 126 + 127 + { 128 + assertion = hasAttrByPath [ "meta.sr.ht" "origin" ] cfgIni && cfgIni."meta.sr.ht".origin != null; 129 + message = "meta.sr.ht's origin must be defined."; 130 + } 131 + ]; 132 + 133 + virtualisation.docker.enable = true; 134 + environment.etc."sr.ht/config.ini".source = 135 + settingsFormat.generate "sourcehut-config.ini" (mapAttrsRecursive 136 + ( 137 + path: v: if v == null then "" else v 138 + ) 139 + cfg.settings); 140 + 141 + environment.systemPackages = [ pkgs.sourcehut.coresrht ]; 142 + 143 + # PostgreSQL server 144 + services.postgresql.enable = mkOverride 999 true; 145 + # Mail server 146 + services.postfix.enable = mkOverride 999 true; 147 + # Cron daemon 148 + services.cron.enable = mkOverride 999 true; 149 + # Redis server 150 + services.redis.enable = mkOverride 999 true; 151 + services.redis.bind = mkOverride 999 "127.0.0.1"; 152 + 153 + services.sourcehut.settings = { 154 + # The name of your network of sr.ht-based sites 155 + "sr.ht".site-name = mkDefault "sourcehut"; 156 + # The top-level info page for your site 157 + "sr.ht".site-info = mkDefault "https://sourcehut.org"; 158 + # {{ site-name }}, {{ site-blurb }} 159 + "sr.ht".site-blurb = mkDefault "the hacker's forge"; 160 + # If this != production, we add a banner to each page 161 + "sr.ht".environment = mkDefault "development"; 162 + # Contact information for the site owners 163 + "sr.ht".owner-name = mkDefault "Drew DeVault"; 164 + "sr.ht".owner-email = mkDefault "sir@cmpwn.com"; 165 + # The source code for your fork of sr.ht 166 + "sr.ht".source-url = mkDefault "https://git.sr.ht/~sircmpwn/srht"; 167 + # A secret key to encrypt session cookies with 168 + "sr.ht".secret-key = mkDefault null; 169 + "sr.ht".global-domain = mkDefault null; 170 + 171 + # Outgoing SMTP settings 172 + mail.smtp-host = mkDefault null; 173 + mail.smtp-port = mkDefault null; 174 + mail.smtp-user = mkDefault null; 175 + mail.smtp-password = mkDefault null; 176 + mail.smtp-from = mkDefault null; 177 + # Application exceptions are emailed to this address 178 + mail.error-to = mkDefault null; 179 + mail.error-from = mkDefault null; 180 + # Your PGP key information (DO NOT mix up pub and priv here) 181 + # You must remove the password from your secret key, if present. 182 + # You can do this with gpg --edit-key [key-id], then use the passwd 183 + # command and do not enter a new password. 184 + mail.pgp-privkey = mkDefault null; 185 + mail.pgp-pubkey = mkDefault null; 186 + mail.pgp-key-id = mkDefault null; 187 + 188 + # base64-encoded Ed25519 key for signing webhook payloads. This should be 189 + # consistent for all *.sr.ht sites, as we'll use this key to verify signatures 190 + # from other sites in your network. 191 + # 192 + # Use the srht-webhook-keygen command to generate a key. 193 + webhooks.private-key = mkDefault null; 194 + }; 195 + }; 196 + meta.doc = ./sourcehut.xml; 197 + meta.maintainers = with maintainers; [ tomberek ]; 198 + }
+125
nixos/modules/services/misc/sourcehut/dispatch.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + scfg = cfg.dispatch; 8 + iniKey = "dispatch.sr.ht"; 9 + 10 + drv = pkgs.sourcehut.dispatchsrht; 11 + in 12 + { 13 + options.services.sourcehut.dispatch = { 14 + user = mkOption { 15 + type = types.str; 16 + default = "dispatchsrht"; 17 + description = '' 18 + User for dispatch.sr.ht. 19 + ''; 20 + }; 21 + 22 + port = mkOption { 23 + type = types.port; 24 + default = 5005; 25 + description = '' 26 + Port on which the "dispatch" module should listen. 27 + ''; 28 + }; 29 + 30 + database = mkOption { 31 + type = types.str; 32 + default = "dispatch.sr.ht"; 33 + description = '' 34 + PostgreSQL database name for dispatch.sr.ht. 35 + ''; 36 + }; 37 + 38 + statePath = mkOption { 39 + type = types.path; 40 + default = "${cfg.statePath}/dispatchsrht"; 41 + description = '' 42 + State path for dispatch.sr.ht. 43 + ''; 44 + }; 45 + }; 46 + 47 + config = with scfg; lib.mkIf (cfg.enable && elem "dispatch" cfg.services) { 48 + 49 + users = { 50 + users = { 51 + "${user}" = { 52 + isSystemUser = true; 53 + group = user; 54 + description = "dispatch.sr.ht user"; 55 + }; 56 + }; 57 + 58 + groups = { 59 + "${user}" = { }; 60 + }; 61 + }; 62 + 63 + services.postgresql = { 64 + authentication = '' 65 + local ${database} ${user} trust 66 + ''; 67 + ensureDatabases = [ database ]; 68 + ensureUsers = [ 69 + { 70 + name = user; 71 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 72 + } 73 + ]; 74 + }; 75 + 76 + systemd = { 77 + tmpfiles.rules = [ 78 + "d ${statePath} 0750 ${user} ${user} -" 79 + ]; 80 + 81 + services.dispatchsrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 82 + after = [ "postgresql.service" "network.target" ]; 83 + requires = [ "postgresql.service" ]; 84 + wantedBy = [ "multi-user.target" ]; 85 + 86 + description = "dispatch.sr.ht website service"; 87 + 88 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 89 + }; 90 + }; 91 + 92 + services.sourcehut.settings = { 93 + # URL dispatch.sr.ht is being served at (protocol://domain) 94 + "dispatch.sr.ht".origin = mkDefault "http://dispatch.${cfg.originBase}"; 95 + # Address and port to bind the debug server to 96 + "dispatch.sr.ht".debug-host = mkDefault "0.0.0.0"; 97 + "dispatch.sr.ht".debug-port = mkDefault port; 98 + # Configures the SQLAlchemy connection string for the database. 99 + "dispatch.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 100 + # Set to "yes" to automatically run migrations on package upgrade. 101 + "dispatch.sr.ht".migrate-on-upgrade = mkDefault "yes"; 102 + # dispatch.sr.ht's OAuth client ID and secret for meta.sr.ht 103 + # Register your client at meta.example.org/oauth 104 + "dispatch.sr.ht".oauth-client-id = mkDefault null; 105 + "dispatch.sr.ht".oauth-client-secret = mkDefault null; 106 + 107 + # Github Integration 108 + "dispatch.sr.ht::github".oauth-client-id = mkDefault null; 109 + "dispatch.sr.ht::github".oauth-client-secret = mkDefault null; 110 + 111 + # Gitlab Integration 112 + "dispatch.sr.ht::gitlab".enabled = mkDefault null; 113 + "dispatch.sr.ht::gitlab".canonical-upstream = mkDefault "gitlab.com"; 114 + "dispatch.sr.ht::gitlab".repo-cache = mkDefault "./repo-cache"; 115 + # "dispatch.sr.ht::gitlab"."gitlab.com" = mkDefault "GitLab:application id:secret"; 116 + }; 117 + 118 + services.nginx.virtualHosts."dispatch.${cfg.originBase}" = { 119 + forceSSL = true; 120 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 121 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 122 + locations."/static".root = "${pkgs.sourcehut.dispatchsrht}/${pkgs.sourcehut.python.sitePackages}/dispatchsrht"; 123 + }; 124 + }; 125 + }
+214
nixos/modules/services/misc/sourcehut/git.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + scfg = cfg.git; 7 + iniKey = "git.sr.ht"; 8 + 9 + rcfg = config.services.redis; 10 + drv = pkgs.sourcehut.gitsrht; 11 + in 12 + { 13 + options.services.sourcehut.git = { 14 + user = mkOption { 15 + type = types.str; 16 + visible = false; 17 + internal = true; 18 + readOnly = true; 19 + default = "git"; 20 + description = '' 21 + User for git.sr.ht. 22 + ''; 23 + }; 24 + 25 + port = mkOption { 26 + type = types.port; 27 + default = 5001; 28 + description = '' 29 + Port on which the "git" module should listen. 30 + ''; 31 + }; 32 + 33 + database = mkOption { 34 + type = types.str; 35 + default = "git.sr.ht"; 36 + description = '' 37 + PostgreSQL database name for git.sr.ht. 38 + ''; 39 + }; 40 + 41 + statePath = mkOption { 42 + type = types.path; 43 + default = "${cfg.statePath}/gitsrht"; 44 + description = '' 45 + State path for git.sr.ht. 46 + ''; 47 + }; 48 + 49 + package = mkOption { 50 + type = types.package; 51 + default = pkgs.git; 52 + example = literalExample "pkgs.gitFull"; 53 + description = '' 54 + Git package for git.sr.ht. This can help silence collisions. 55 + ''; 56 + }; 57 + }; 58 + 59 + config = with scfg; lib.mkIf (cfg.enable && elem "git" cfg.services) { 60 + # sshd refuses to run with `Unsafe AuthorizedKeysCommand ... bad ownership or modes for directory /nix/store` 61 + environment.etc."ssh/gitsrht-dispatch" = { 62 + mode = "0755"; 63 + text = '' 64 + #! ${pkgs.stdenv.shell} 65 + ${cfg.python}/bin/gitsrht-dispatch "$@" 66 + ''; 67 + }; 68 + 69 + # Needs this in the $PATH when sshing into the server 70 + environment.systemPackages = [ cfg.git.package ]; 71 + 72 + users = { 73 + users = { 74 + "${user}" = { 75 + isSystemUser = true; 76 + group = user; 77 + # https://stackoverflow.com/questions/22314298/git-push-results-in-fatal-protocol-error-bad-line-length-character-this 78 + # Probably could use gitsrht-shell if output is restricted to just parameters... 79 + shell = pkgs.bash; 80 + description = "git.sr.ht user"; 81 + }; 82 + }; 83 + 84 + groups = { 85 + "${user}" = { }; 86 + }; 87 + }; 88 + 89 + services = { 90 + cron.systemCronJobs = [ "*/20 * * * * ${cfg.python}/bin/gitsrht-periodic" ]; 91 + fcgiwrap.enable = true; 92 + 93 + openssh.authorizedKeysCommand = ''/etc/ssh/gitsrht-dispatch "%u" "%h" "%t" "%k"''; 94 + openssh.authorizedKeysCommandUser = "root"; 95 + openssh.extraConfig = '' 96 + PermitUserEnvironment SRHT_* 97 + ''; 98 + 99 + postgresql = { 100 + authentication = '' 101 + local ${database} ${user} trust 102 + ''; 103 + ensureDatabases = [ database ]; 104 + ensureUsers = [ 105 + { 106 + name = user; 107 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 108 + } 109 + ]; 110 + }; 111 + }; 112 + 113 + systemd = { 114 + tmpfiles.rules = [ 115 + # /var/log is owned by root 116 + "f /var/log/git-srht-shell 0644 ${user} ${user} -" 117 + 118 + "d ${statePath} 0750 ${user} ${user} -" 119 + "d ${cfg.settings."${iniKey}".repos} 2755 ${user} ${user} -" 120 + ]; 121 + 122 + services = { 123 + gitsrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 124 + after = [ "redis.service" "postgresql.service" "network.target" ]; 125 + requires = [ "redis.service" "postgresql.service" ]; 126 + wantedBy = [ "multi-user.target" ]; 127 + 128 + # Needs internally to create repos at the very least 129 + path = [ pkgs.git ]; 130 + description = "git.sr.ht website service"; 131 + 132 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 133 + }; 134 + 135 + gitsrht-webhooks = { 136 + after = [ "postgresql.service" "network.target" ]; 137 + requires = [ "postgresql.service" ]; 138 + wantedBy = [ "multi-user.target" ]; 139 + 140 + description = "git.sr.ht webhooks service"; 141 + serviceConfig = { 142 + Type = "simple"; 143 + User = user; 144 + Restart = "always"; 145 + }; 146 + 147 + serviceConfig.ExecStart = "${cfg.python}/bin/celery -A ${drv.pname}.webhooks worker --loglevel=info"; 148 + }; 149 + }; 150 + }; 151 + 152 + services.sourcehut.settings = { 153 + # URL git.sr.ht is being served at (protocol://domain) 154 + "git.sr.ht".origin = mkDefault "http://git.${cfg.originBase}"; 155 + # Address and port to bind the debug server to 156 + "git.sr.ht".debug-host = mkDefault "0.0.0.0"; 157 + "git.sr.ht".debug-port = mkDefault port; 158 + # Configures the SQLAlchemy connection string for the database. 159 + "git.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 160 + # Set to "yes" to automatically run migrations on package upgrade. 161 + "git.sr.ht".migrate-on-upgrade = mkDefault "yes"; 162 + # The redis connection used for the webhooks worker 163 + "git.sr.ht".webhooks = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/1"; 164 + 165 + # A post-update script which is installed in every git repo. 166 + "git.sr.ht".post-update-script = mkDefault "${pkgs.sourcehut.gitsrht}/bin/gitsrht-update-hook"; 167 + 168 + # git.sr.ht's OAuth client ID and secret for meta.sr.ht 169 + # Register your client at meta.example.org/oauth 170 + "git.sr.ht".oauth-client-id = mkDefault null; 171 + "git.sr.ht".oauth-client-secret = mkDefault null; 172 + # Path to git repositories on disk 173 + "git.sr.ht".repos = mkDefault "/var/lib/git"; 174 + 175 + "git.sr.ht".outgoing-domain = mkDefault "http://git.${cfg.originBase}"; 176 + 177 + # The authorized keys hook uses this to dispatch to various handlers 178 + # The format is a program to exec into as the key, and the user to match as the 179 + # value. When someone tries to log in as this user, this program is executed 180 + # and is expected to omit an AuthorizedKeys file. 181 + # 182 + # Discard of the string context is in order to allow derivation-derived strings. 183 + # This is safe if the relevant package is installed which will be the case if the setting is utilized. 184 + "git.sr.ht::dispatch".${builtins.unsafeDiscardStringContext "${pkgs.sourcehut.gitsrht}/bin/gitsrht-keys"} = mkDefault "${user}:${user}"; 185 + }; 186 + 187 + services.nginx.virtualHosts."git.${cfg.originBase}" = { 188 + forceSSL = true; 189 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 190 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 191 + locations."/static".root = "${pkgs.sourcehut.gitsrht}/${pkgs.sourcehut.python.sitePackages}/gitsrht"; 192 + extraConfig = '' 193 + location = /authorize { 194 + proxy_pass http://${cfg.address}:${toString port}; 195 + proxy_pass_request_body off; 196 + proxy_set_header Content-Length ""; 197 + proxy_set_header X-Original-URI $request_uri; 198 + } 199 + location ~ ^/([^/]+)/([^/]+)/(HEAD|info/refs|objects/info/.*|git-upload-pack).*$ { 200 + auth_request /authorize; 201 + root /var/lib/git; 202 + fastcgi_pass unix:/run/fcgiwrap.sock; 203 + fastcgi_param SCRIPT_FILENAME ${pkgs.git}/bin/git-http-backend; 204 + fastcgi_param PATH_INFO $uri; 205 + fastcgi_param GIT_PROJECT_ROOT $document_root; 206 + fastcgi_read_timeout 500s; 207 + include ${pkgs.nginx}/conf/fastcgi_params; 208 + gzip off; 209 + } 210 + ''; 211 + 212 + }; 213 + }; 214 + }
+173
nixos/modules/services/misc/sourcehut/hg.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + scfg = cfg.hg; 7 + iniKey = "hg.sr.ht"; 8 + 9 + rcfg = config.services.redis; 10 + drv = pkgs.sourcehut.hgsrht; 11 + in 12 + { 13 + options.services.sourcehut.hg = { 14 + user = mkOption { 15 + type = types.str; 16 + internal = true; 17 + readOnly = true; 18 + default = "hg"; 19 + description = '' 20 + User for hg.sr.ht. 21 + ''; 22 + }; 23 + 24 + port = mkOption { 25 + type = types.port; 26 + default = 5010; 27 + description = '' 28 + Port on which the "hg" module should listen. 29 + ''; 30 + }; 31 + 32 + database = mkOption { 33 + type = types.str; 34 + default = "hg.sr.ht"; 35 + description = '' 36 + PostgreSQL database name for hg.sr.ht. 37 + ''; 38 + }; 39 + 40 + statePath = mkOption { 41 + type = types.path; 42 + default = "${cfg.statePath}/hgsrht"; 43 + description = '' 44 + State path for hg.sr.ht. 45 + ''; 46 + }; 47 + 48 + cloneBundles = mkOption { 49 + type = types.bool; 50 + default = false; 51 + description = '' 52 + Generate clonebundles (which require more disk space but dramatically speed up cloning large repositories). 53 + ''; 54 + }; 55 + }; 56 + 57 + config = with scfg; lib.mkIf (cfg.enable && elem "hg" cfg.services) { 58 + # In case it ever comes into being 59 + environment.etc."ssh/hgsrht-dispatch" = { 60 + mode = "0755"; 61 + text = '' 62 + #! ${pkgs.stdenv.shell} 63 + ${cfg.python}/bin/gitsrht-dispatch $@ 64 + ''; 65 + }; 66 + 67 + environment.systemPackages = [ pkgs.mercurial ]; 68 + 69 + users = { 70 + users = { 71 + "${user}" = { 72 + isSystemUser = true; 73 + group = user; 74 + # Assuming hg.sr.ht needs this too 75 + shell = pkgs.bash; 76 + description = "hg.sr.ht user"; 77 + }; 78 + }; 79 + 80 + groups = { 81 + "${user}" = { }; 82 + }; 83 + }; 84 + 85 + services = { 86 + cron.systemCronJobs = [ "*/20 * * * * ${cfg.python}/bin/hgsrht-periodic" ] 87 + ++ optional cloneBundles "0 * * * * ${cfg.python}/bin/hgsrht-clonebundles"; 88 + 89 + openssh.authorizedKeysCommand = ''/etc/ssh/hgsrht-dispatch "%u" "%h" "%t" "%k"''; 90 + openssh.authorizedKeysCommandUser = "root"; 91 + openssh.extraConfig = '' 92 + PermitUserEnvironment SRHT_* 93 + ''; 94 + 95 + postgresql = { 96 + authentication = '' 97 + local ${database} ${user} trust 98 + ''; 99 + ensureDatabases = [ database ]; 100 + ensureUsers = [ 101 + { 102 + name = user; 103 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 104 + } 105 + ]; 106 + }; 107 + }; 108 + 109 + systemd = { 110 + tmpfiles.rules = [ 111 + # /var/log is owned by root 112 + "f /var/log/hg-srht-shell 0644 ${user} ${user} -" 113 + 114 + "d ${statePath} 0750 ${user} ${user} -" 115 + "d ${cfg.settings."${iniKey}".repos} 2755 ${user} ${user} -" 116 + ]; 117 + 118 + services.hgsrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 119 + after = [ "redis.service" "postgresql.service" "network.target" ]; 120 + requires = [ "redis.service" "postgresql.service" ]; 121 + wantedBy = [ "multi-user.target" ]; 122 + 123 + path = [ pkgs.mercurial ]; 124 + description = "hg.sr.ht website service"; 125 + 126 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 127 + }; 128 + }; 129 + 130 + services.sourcehut.settings = { 131 + # URL hg.sr.ht is being served at (protocol://domain) 132 + "hg.sr.ht".origin = mkDefault "http://hg.${cfg.originBase}"; 133 + # Address and port to bind the debug server to 134 + "hg.sr.ht".debug-host = mkDefault "0.0.0.0"; 135 + "hg.sr.ht".debug-port = mkDefault port; 136 + # Configures the SQLAlchemy connection string for the database. 137 + "hg.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 138 + # The redis connection used for the webhooks worker 139 + "hg.sr.ht".webhooks = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/1"; 140 + # A post-update script which is installed in every mercurial repo. 141 + "hg.sr.ht".changegroup-script = mkDefault "${cfg.python}/bin/hgsrht-hook-changegroup"; 142 + # hg.sr.ht's OAuth client ID and secret for meta.sr.ht 143 + # Register your client at meta.example.org/oauth 144 + "hg.sr.ht".oauth-client-id = mkDefault null; 145 + "hg.sr.ht".oauth-client-secret = mkDefault null; 146 + # Path to mercurial repositories on disk 147 + "hg.sr.ht".repos = mkDefault "/var/lib/hg"; 148 + # Path to the srht mercurial extension 149 + # (defaults to where the hgsrht code is) 150 + # "hg.sr.ht".srhtext = mkDefault null; 151 + # .hg/store size (in MB) past which the nightly job generates clone bundles. 152 + # "hg.sr.ht".clone_bundle_threshold = mkDefault 50; 153 + # Path to hg-ssh (if not in $PATH) 154 + # "hg.sr.ht".hg_ssh = mkDefault /path/to/hg-ssh; 155 + 156 + # The authorized keys hook uses this to dispatch to various handlers 157 + # The format is a program to exec into as the key, and the user to match as the 158 + # value. When someone tries to log in as this user, this program is executed 159 + # and is expected to omit an AuthorizedKeys file. 160 + # 161 + # Uncomment the relevant lines to enable the various sr.ht dispatchers. 162 + "hg.sr.ht::dispatch"."/run/current-system/sw/bin/hgsrht-keys" = mkDefault "${user}:${user}"; 163 + }; 164 + 165 + # TODO: requires testing and addition of hg-specific requirements 166 + services.nginx.virtualHosts."hg.${cfg.originBase}" = { 167 + forceSSL = true; 168 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 169 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 170 + locations."/static".root = "${pkgs.sourcehut.hgsrht}/${pkgs.sourcehut.python.sitePackages}/hgsrht"; 171 + }; 172 + }; 173 + }
+118
nixos/modules/services/misc/sourcehut/hub.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + scfg = cfg.hub; 8 + iniKey = "hub.sr.ht"; 9 + 10 + drv = pkgs.sourcehut.hubsrht; 11 + in 12 + { 13 + options.services.sourcehut.hub = { 14 + user = mkOption { 15 + type = types.str; 16 + default = "hubsrht"; 17 + description = '' 18 + User for hub.sr.ht. 19 + ''; 20 + }; 21 + 22 + port = mkOption { 23 + type = types.port; 24 + default = 5014; 25 + description = '' 26 + Port on which the "hub" module should listen. 27 + ''; 28 + }; 29 + 30 + database = mkOption { 31 + type = types.str; 32 + default = "hub.sr.ht"; 33 + description = '' 34 + PostgreSQL database name for hub.sr.ht. 35 + ''; 36 + }; 37 + 38 + statePath = mkOption { 39 + type = types.path; 40 + default = "${cfg.statePath}/hubsrht"; 41 + description = '' 42 + State path for hub.sr.ht. 43 + ''; 44 + }; 45 + }; 46 + 47 + config = with scfg; lib.mkIf (cfg.enable && elem "hub" cfg.services) { 48 + users = { 49 + users = { 50 + "${user}" = { 51 + isSystemUser = true; 52 + group = user; 53 + description = "hub.sr.ht user"; 54 + }; 55 + }; 56 + 57 + groups = { 58 + "${user}" = { }; 59 + }; 60 + }; 61 + 62 + services.postgresql = { 63 + authentication = '' 64 + local ${database} ${user} trust 65 + ''; 66 + ensureDatabases = [ database ]; 67 + ensureUsers = [ 68 + { 69 + name = user; 70 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 71 + } 72 + ]; 73 + }; 74 + 75 + systemd = { 76 + tmpfiles.rules = [ 77 + "d ${statePath} 0750 ${user} ${user} -" 78 + ]; 79 + 80 + services.hubsrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 81 + after = [ "postgresql.service" "network.target" ]; 82 + requires = [ "postgresql.service" ]; 83 + wantedBy = [ "multi-user.target" ]; 84 + 85 + description = "hub.sr.ht website service"; 86 + 87 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 88 + }; 89 + }; 90 + 91 + services.sourcehut.settings = { 92 + # URL hub.sr.ht is being served at (protocol://domain) 93 + "hub.sr.ht".origin = mkDefault "http://hub.${cfg.originBase}"; 94 + # Address and port to bind the debug server to 95 + "hub.sr.ht".debug-host = mkDefault "0.0.0.0"; 96 + "hub.sr.ht".debug-port = mkDefault port; 97 + # Configures the SQLAlchemy connection string for the database. 98 + "hub.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 99 + # Set to "yes" to automatically run migrations on package upgrade. 100 + "hub.sr.ht".migrate-on-upgrade = mkDefault "yes"; 101 + # hub.sr.ht's OAuth client ID and secret for meta.sr.ht 102 + # Register your client at meta.example.org/oauth 103 + "hub.sr.ht".oauth-client-id = mkDefault null; 104 + "hub.sr.ht".oauth-client-secret = mkDefault null; 105 + }; 106 + 107 + services.nginx.virtualHosts."${cfg.originBase}" = { 108 + forceSSL = true; 109 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 110 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 111 + locations."/static".root = "${pkgs.sourcehut.hubsrht}/${pkgs.sourcehut.python.sitePackages}/hubsrht"; 112 + }; 113 + services.nginx.virtualHosts."hub.${cfg.originBase}" = { 114 + globalRedirect = "${cfg.originBase}"; 115 + forceSSL = true; 116 + }; 117 + }; 118 + }
+185
nixos/modules/services/misc/sourcehut/lists.nix
··· 1 + # Email setup is fairly involved, useful references: 2 + # https://drewdevault.com/2018/08/05/Local-mail-server.html 3 + 4 + { config, lib, pkgs, ... }: 5 + 6 + with lib; 7 + let 8 + cfg = config.services.sourcehut; 9 + cfgIni = cfg.settings; 10 + scfg = cfg.lists; 11 + iniKey = "lists.sr.ht"; 12 + 13 + rcfg = config.services.redis; 14 + drv = pkgs.sourcehut.listssrht; 15 + in 16 + { 17 + options.services.sourcehut.lists = { 18 + user = mkOption { 19 + type = types.str; 20 + default = "listssrht"; 21 + description = '' 22 + User for lists.sr.ht. 23 + ''; 24 + }; 25 + 26 + port = mkOption { 27 + type = types.port; 28 + default = 5006; 29 + description = '' 30 + Port on which the "lists" module should listen. 31 + ''; 32 + }; 33 + 34 + database = mkOption { 35 + type = types.str; 36 + default = "lists.sr.ht"; 37 + description = '' 38 + PostgreSQL database name for lists.sr.ht. 39 + ''; 40 + }; 41 + 42 + statePath = mkOption { 43 + type = types.path; 44 + default = "${cfg.statePath}/listssrht"; 45 + description = '' 46 + State path for lists.sr.ht. 47 + ''; 48 + }; 49 + }; 50 + 51 + config = with scfg; lib.mkIf (cfg.enable && elem "lists" cfg.services) { 52 + users = { 53 + users = { 54 + "${user}" = { 55 + isSystemUser = true; 56 + group = user; 57 + extraGroups = [ "postfix" ]; 58 + description = "lists.sr.ht user"; 59 + }; 60 + }; 61 + groups = { 62 + "${user}" = { }; 63 + }; 64 + }; 65 + 66 + services.postgresql = { 67 + authentication = '' 68 + local ${database} ${user} trust 69 + ''; 70 + ensureDatabases = [ database ]; 71 + ensureUsers = [ 72 + { 73 + name = user; 74 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 75 + } 76 + ]; 77 + }; 78 + 79 + systemd = { 80 + tmpfiles.rules = [ 81 + "d ${statePath} 0750 ${user} ${user} -" 82 + ]; 83 + 84 + services = { 85 + listssrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 86 + after = [ "postgresql.service" "network.target" ]; 87 + requires = [ "postgresql.service" ]; 88 + wantedBy = [ "multi-user.target" ]; 89 + 90 + description = "lists.sr.ht website service"; 91 + 92 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 93 + }; 94 + 95 + listssrht-process = { 96 + after = [ "postgresql.service" "network.target" ]; 97 + requires = [ "postgresql.service" ]; 98 + wantedBy = [ "multi-user.target" ]; 99 + 100 + description = "lists.sr.ht process service"; 101 + serviceConfig = { 102 + Type = "simple"; 103 + User = user; 104 + Restart = "always"; 105 + ExecStart = "${cfg.python}/bin/celery -A ${drv.pname}.process worker --loglevel=info"; 106 + }; 107 + }; 108 + 109 + listssrht-lmtp = { 110 + after = [ "postgresql.service" "network.target" ]; 111 + requires = [ "postgresql.service" ]; 112 + wantedBy = [ "multi-user.target" ]; 113 + 114 + description = "lists.sr.ht process service"; 115 + serviceConfig = { 116 + Type = "simple"; 117 + User = user; 118 + Restart = "always"; 119 + ExecStart = "${cfg.python}/bin/listssrht-lmtp"; 120 + }; 121 + }; 122 + 123 + 124 + listssrht-webhooks = { 125 + after = [ "postgresql.service" "network.target" ]; 126 + requires = [ "postgresql.service" ]; 127 + wantedBy = [ "multi-user.target" ]; 128 + 129 + description = "lists.sr.ht webhooks service"; 130 + serviceConfig = { 131 + Type = "simple"; 132 + User = user; 133 + Restart = "always"; 134 + ExecStart = "${cfg.python}/bin/celery -A ${drv.pname}.webhooks worker --loglevel=info"; 135 + }; 136 + }; 137 + }; 138 + }; 139 + 140 + services.sourcehut.settings = { 141 + # URL lists.sr.ht is being served at (protocol://domain) 142 + "lists.sr.ht".origin = mkDefault "http://lists.${cfg.originBase}"; 143 + # Address and port to bind the debug server to 144 + "lists.sr.ht".debug-host = mkDefault "0.0.0.0"; 145 + "lists.sr.ht".debug-port = mkDefault port; 146 + # Configures the SQLAlchemy connection string for the database. 147 + "lists.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 148 + # Set to "yes" to automatically run migrations on package upgrade. 149 + "lists.sr.ht".migrate-on-upgrade = mkDefault "yes"; 150 + # lists.sr.ht's OAuth client ID and secret for meta.sr.ht 151 + # Register your client at meta.example.org/oauth 152 + "lists.sr.ht".oauth-client-id = mkDefault null; 153 + "lists.sr.ht".oauth-client-secret = mkDefault null; 154 + # Outgoing email for notifications generated by users 155 + "lists.sr.ht".notify-from = mkDefault "CHANGEME@example.org"; 156 + # The redis connection used for the webhooks worker 157 + "lists.sr.ht".webhooks = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/2"; 158 + # The redis connection used for the celery worker 159 + "lists.sr.ht".redis = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/4"; 160 + # Network-key 161 + "lists.sr.ht".network-key = mkDefault null; 162 + # Allow creation 163 + "lists.sr.ht".allow-new-lists = mkDefault "no"; 164 + # Posting Domain 165 + "lists.sr.ht".posting-domain = mkDefault "lists.${cfg.originBase}"; 166 + 167 + # Path for the lmtp daemon's unix socket. Direct incoming mail to this socket. 168 + # Alternatively, specify IP:PORT and an SMTP server will be run instead. 169 + "lists.sr.ht::worker".sock = mkDefault "/tmp/lists.sr.ht-lmtp.sock"; 170 + # The lmtp daemon will make the unix socket group-read/write for users in this 171 + # group. 172 + "lists.sr.ht::worker".sock-group = mkDefault "postfix"; 173 + "lists.sr.ht::worker".reject-url = mkDefault "https://man.sr.ht/lists.sr.ht/etiquette.md"; 174 + "lists.sr.ht::worker".reject-mimetypes = mkDefault "text/html"; 175 + 176 + }; 177 + 178 + services.nginx.virtualHosts."lists.${cfg.originBase}" = { 179 + forceSSL = true; 180 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 181 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 182 + locations."/static".root = "${pkgs.sourcehut.listssrht}/${pkgs.sourcehut.python.sitePackages}/listssrht"; 183 + }; 184 + }; 185 + }
+122
nixos/modules/services/misc/sourcehut/man.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + scfg = cfg.man; 8 + iniKey = "man.sr.ht"; 9 + 10 + drv = pkgs.sourcehut.mansrht; 11 + in 12 + { 13 + options.services.sourcehut.man = { 14 + user = mkOption { 15 + type = types.str; 16 + default = "mansrht"; 17 + description = '' 18 + User for man.sr.ht. 19 + ''; 20 + }; 21 + 22 + port = mkOption { 23 + type = types.port; 24 + default = 5004; 25 + description = '' 26 + Port on which the "man" module should listen. 27 + ''; 28 + }; 29 + 30 + database = mkOption { 31 + type = types.str; 32 + default = "man.sr.ht"; 33 + description = '' 34 + PostgreSQL database name for man.sr.ht. 35 + ''; 36 + }; 37 + 38 + statePath = mkOption { 39 + type = types.path; 40 + default = "${cfg.statePath}/mansrht"; 41 + description = '' 42 + State path for man.sr.ht. 43 + ''; 44 + }; 45 + }; 46 + 47 + config = with scfg; lib.mkIf (cfg.enable && elem "man" cfg.services) { 48 + assertions = 49 + [ 50 + { 51 + assertion = hasAttrByPath [ "git.sr.ht" "oauth-client-id" ] cfgIni; 52 + message = "man.sr.ht needs access to git.sr.ht."; 53 + } 54 + ]; 55 + 56 + users = { 57 + users = { 58 + "${user}" = { 59 + isSystemUser = true; 60 + group = user; 61 + description = "man.sr.ht user"; 62 + }; 63 + }; 64 + 65 + groups = { 66 + "${user}" = { }; 67 + }; 68 + }; 69 + 70 + services.postgresql = { 71 + authentication = '' 72 + local ${database} ${user} trust 73 + ''; 74 + ensureDatabases = [ database ]; 75 + ensureUsers = [ 76 + { 77 + name = user; 78 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 79 + } 80 + ]; 81 + }; 82 + 83 + systemd = { 84 + tmpfiles.rules = [ 85 + "d ${statePath} 0750 ${user} ${user} -" 86 + ]; 87 + 88 + services.mansrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 89 + after = [ "postgresql.service" "network.target" ]; 90 + requires = [ "postgresql.service" ]; 91 + wantedBy = [ "multi-user.target" ]; 92 + 93 + description = "man.sr.ht website service"; 94 + 95 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 96 + }; 97 + }; 98 + 99 + services.sourcehut.settings = { 100 + # URL man.sr.ht is being served at (protocol://domain) 101 + "man.sr.ht".origin = mkDefault "http://man.${cfg.originBase}"; 102 + # Address and port to bind the debug server to 103 + "man.sr.ht".debug-host = mkDefault "0.0.0.0"; 104 + "man.sr.ht".debug-port = mkDefault port; 105 + # Configures the SQLAlchemy connection string for the database. 106 + "man.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 107 + # Set to "yes" to automatically run migrations on package upgrade. 108 + "man.sr.ht".migrate-on-upgrade = mkDefault "yes"; 109 + # man.sr.ht's OAuth client ID and secret for meta.sr.ht 110 + # Register your client at meta.example.org/oauth 111 + "man.sr.ht".oauth-client-id = mkDefault null; 112 + "man.sr.ht".oauth-client-secret = mkDefault null; 113 + }; 114 + 115 + services.nginx.virtualHosts."man.${cfg.originBase}" = { 116 + forceSSL = true; 117 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 118 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 119 + locations."/static".root = "${pkgs.sourcehut.mansrht}/${pkgs.sourcehut.python.sitePackages}/mansrht"; 120 + }; 121 + }; 122 + }
+211
nixos/modules/services/misc/sourcehut/meta.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + scfg = cfg.meta; 8 + iniKey = "meta.sr.ht"; 9 + 10 + rcfg = config.services.redis; 11 + drv = pkgs.sourcehut.metasrht; 12 + in 13 + { 14 + options.services.sourcehut.meta = { 15 + user = mkOption { 16 + type = types.str; 17 + default = "metasrht"; 18 + description = '' 19 + User for meta.sr.ht. 20 + ''; 21 + }; 22 + 23 + port = mkOption { 24 + type = types.port; 25 + default = 5000; 26 + description = '' 27 + Port on which the "meta" module should listen. 28 + ''; 29 + }; 30 + 31 + database = mkOption { 32 + type = types.str; 33 + default = "meta.sr.ht"; 34 + description = '' 35 + PostgreSQL database name for meta.sr.ht. 36 + ''; 37 + }; 38 + 39 + statePath = mkOption { 40 + type = types.path; 41 + default = "${cfg.statePath}/metasrht"; 42 + description = '' 43 + State path for meta.sr.ht. 44 + ''; 45 + }; 46 + }; 47 + 48 + config = with scfg; lib.mkIf (cfg.enable && elem "meta" cfg.services) { 49 + assertions = 50 + [ 51 + { 52 + assertion = with cfgIni."meta.sr.ht::billing"; enabled == "yes" -> (stripe-public-key != null && stripe-secret-key != null); 53 + message = "If meta.sr.ht::billing is enabled, the keys should be defined."; 54 + } 55 + ]; 56 + 57 + users = { 58 + users = { 59 + ${user} = { 60 + isSystemUser = true; 61 + group = user; 62 + description = "meta.sr.ht user"; 63 + }; 64 + }; 65 + 66 + groups = { 67 + "${user}" = { }; 68 + }; 69 + }; 70 + 71 + services.cron.systemCronJobs = [ "0 0 * * * ${cfg.python}/bin/metasrht-daily" ]; 72 + services.postgresql = { 73 + authentication = '' 74 + local ${database} ${user} trust 75 + ''; 76 + ensureDatabases = [ database ]; 77 + ensureUsers = [ 78 + { 79 + name = user; 80 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 81 + } 82 + ]; 83 + }; 84 + 85 + systemd = { 86 + tmpfiles.rules = [ 87 + "d ${statePath} 0750 ${user} ${user} -" 88 + ]; 89 + 90 + services = { 91 + metasrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 92 + after = [ "postgresql.service" "network.target" ]; 93 + requires = [ "postgresql.service" ]; 94 + wantedBy = [ "multi-user.target" ]; 95 + 96 + description = "meta.sr.ht website service"; 97 + 98 + preStart = '' 99 + # Configure client(s) as "preauthorized" 100 + ${concatMapStringsSep "\n\n" 101 + (attr: '' 102 + if ! test -e "${statePath}/${attr}.oauth" || [ "$(cat ${statePath}/${attr}.oauth)" != "${cfgIni."${attr}".oauth-client-id}" ]; then 103 + # Configure ${attr}'s OAuth client as "preauthorized" 104 + psql ${database} \ 105 + -c "UPDATE oauthclient SET preauthorized = true WHERE client_id = '${cfgIni."${attr}".oauth-client-id}'" 106 + 107 + printf "%s" "${cfgIni."${attr}".oauth-client-id}" > "${statePath}/${attr}.oauth" 108 + fi 109 + '') 110 + (builtins.attrNames (filterAttrs 111 + (k: v: !(hasInfix "::" k) && builtins.hasAttr "oauth-client-id" v && v.oauth-client-id != null) 112 + cfg.settings))} 113 + ''; 114 + 115 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 116 + }; 117 + 118 + metasrht-api = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 119 + after = [ "postgresql.service" "network.target" ]; 120 + requires = [ "postgresql.service" ]; 121 + wantedBy = [ "multi-user.target" ]; 122 + 123 + description = "meta.sr.ht api service"; 124 + 125 + preStart = '' 126 + # Configure client(s) as "preauthorized" 127 + ${concatMapStringsSep "\n\n" 128 + (attr: '' 129 + if ! test -e "${statePath}/${attr}.oauth" || [ "$(cat ${statePath}/${attr}.oauth)" != "${cfgIni."${attr}".oauth-client-id}" ]; then 130 + # Configure ${attr}'s OAuth client as "preauthorized" 131 + psql ${database} \ 132 + -c "UPDATE oauthclient SET preauthorized = true WHERE client_id = '${cfgIni."${attr}".oauth-client-id}'" 133 + 134 + printf "%s" "${cfgIni."${attr}".oauth-client-id}" > "${statePath}/${attr}.oauth" 135 + fi 136 + '') 137 + (builtins.attrNames (filterAttrs 138 + (k: v: !(hasInfix "::" k) && builtins.hasAttr "oauth-client-id" v && v.oauth-client-id != null) 139 + cfg.settings))} 140 + ''; 141 + 142 + serviceConfig.ExecStart = "${pkgs.sourcehut.metasrht}/bin/metasrht-api -b :${toString (port + 100)}"; 143 + }; 144 + 145 + metasrht-webhooks = { 146 + after = [ "postgresql.service" "network.target" ]; 147 + requires = [ "postgresql.service" ]; 148 + wantedBy = [ "multi-user.target" ]; 149 + 150 + description = "meta.sr.ht webhooks service"; 151 + serviceConfig = { 152 + Type = "simple"; 153 + User = user; 154 + Restart = "always"; 155 + ExecStart = "${cfg.python}/bin/celery -A ${drv.pname}.webhooks worker --loglevel=info"; 156 + }; 157 + 158 + }; 159 + }; 160 + }; 161 + 162 + services.sourcehut.settings = { 163 + # URL meta.sr.ht is being served at (protocol://domain) 164 + "meta.sr.ht".origin = mkDefault "https://meta.${cfg.originBase}"; 165 + # Address and port to bind the debug server to 166 + "meta.sr.ht".debug-host = mkDefault "0.0.0.0"; 167 + "meta.sr.ht".debug-port = mkDefault port; 168 + # Configures the SQLAlchemy connection string for the database. 169 + "meta.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 170 + # Set to "yes" to automatically run migrations on package upgrade. 171 + "meta.sr.ht".migrate-on-upgrade = mkDefault "yes"; 172 + # If "yes", the user will be sent the stock sourcehut welcome emails after 173 + # signup (requires cron to be configured properly). These are specific to the 174 + # sr.ht instance so you probably want to patch these before enabling this. 175 + "meta.sr.ht".welcome-emails = mkDefault "no"; 176 + 177 + # The redis connection used for the webhooks worker 178 + "meta.sr.ht".webhooks = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/6"; 179 + 180 + # If "no", public registration will not be permitted. 181 + "meta.sr.ht::settings".registration = mkDefault "no"; 182 + # Where to redirect new users upon registration 183 + "meta.sr.ht::settings".onboarding-redirect = mkDefault "https://meta.${cfg.originBase}"; 184 + # How many invites each user is issued upon registration (only applicable if 185 + # open registration is disabled) 186 + "meta.sr.ht::settings".user-invites = mkDefault 5; 187 + 188 + # Origin URL for API, 100 more than web 189 + "meta.sr.ht".api-origin = mkDefault "http://localhost:5100"; 190 + 191 + # You can add aliases for the client IDs of commonly used OAuth clients here. 192 + # 193 + # Example: 194 + "meta.sr.ht::aliases" = mkDefault { }; 195 + # "meta.sr.ht::aliases"."git.sr.ht" = 12345; 196 + 197 + # "yes" to enable the billing system 198 + "meta.sr.ht::billing".enabled = mkDefault "no"; 199 + # Get your keys at https://dashboard.stripe.com/account/apikeys 200 + "meta.sr.ht::billing".stripe-public-key = mkDefault null; 201 + "meta.sr.ht::billing".stripe-secret-key = mkDefault null; 202 + }; 203 + 204 + services.nginx.virtualHosts."meta.${cfg.originBase}" = { 205 + forceSSL = true; 206 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 207 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 208 + locations."/static".root = "${pkgs.sourcehut.metasrht}/${pkgs.sourcehut.python.sitePackages}/metasrht"; 209 + }; 210 + }; 211 + }
+133
nixos/modules/services/misc/sourcehut/paste.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + scfg = cfg.paste; 8 + iniKey = "paste.sr.ht"; 9 + 10 + rcfg = config.services.redis; 11 + drv = pkgs.sourcehut.pastesrht; 12 + in 13 + { 14 + options.services.sourcehut.paste = { 15 + user = mkOption { 16 + type = types.str; 17 + default = "pastesrht"; 18 + description = '' 19 + User for paste.sr.ht. 20 + ''; 21 + }; 22 + 23 + port = mkOption { 24 + type = types.port; 25 + default = 5011; 26 + description = '' 27 + Port on which the "paste" module should listen. 28 + ''; 29 + }; 30 + 31 + database = mkOption { 32 + type = types.str; 33 + default = "paste.sr.ht"; 34 + description = '' 35 + PostgreSQL database name for paste.sr.ht. 36 + ''; 37 + }; 38 + 39 + statePath = mkOption { 40 + type = types.path; 41 + default = "${cfg.statePath}/pastesrht"; 42 + description = '' 43 + State path for pastesrht.sr.ht. 44 + ''; 45 + }; 46 + }; 47 + 48 + config = with scfg; lib.mkIf (cfg.enable && elem "paste" cfg.services) { 49 + users = { 50 + users = { 51 + "${user}" = { 52 + isSystemUser = true; 53 + group = user; 54 + description = "paste.sr.ht user"; 55 + }; 56 + }; 57 + 58 + groups = { 59 + "${user}" = { }; 60 + }; 61 + }; 62 + 63 + services.postgresql = { 64 + authentication = '' 65 + local ${database} ${user} trust 66 + ''; 67 + ensureDatabases = [ database ]; 68 + ensureUsers = [ 69 + { 70 + name = user; 71 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 72 + } 73 + ]; 74 + }; 75 + 76 + systemd = { 77 + tmpfiles.rules = [ 78 + "d ${statePath} 0750 ${user} ${user} -" 79 + ]; 80 + 81 + services = { 82 + pastesrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 83 + after = [ "postgresql.service" "network.target" ]; 84 + requires = [ "postgresql.service" ]; 85 + wantedBy = [ "multi-user.target" ]; 86 + 87 + description = "paste.sr.ht website service"; 88 + 89 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 90 + }; 91 + 92 + pastesrht-webhooks = { 93 + after = [ "postgresql.service" "network.target" ]; 94 + requires = [ "postgresql.service" ]; 95 + wantedBy = [ "multi-user.target" ]; 96 + 97 + description = "paste.sr.ht webhooks service"; 98 + serviceConfig = { 99 + Type = "simple"; 100 + User = user; 101 + Restart = "always"; 102 + ExecStart = "${cfg.python}/bin/celery -A ${drv.pname}.webhooks worker --loglevel=info"; 103 + }; 104 + 105 + }; 106 + }; 107 + }; 108 + 109 + services.sourcehut.settings = { 110 + # URL paste.sr.ht is being served at (protocol://domain) 111 + "paste.sr.ht".origin = mkDefault "http://paste.${cfg.originBase}"; 112 + # Address and port to bind the debug server to 113 + "paste.sr.ht".debug-host = mkDefault "0.0.0.0"; 114 + "paste.sr.ht".debug-port = mkDefault port; 115 + # Configures the SQLAlchemy connection string for the database. 116 + "paste.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 117 + # Set to "yes" to automatically run migrations on package upgrade. 118 + "paste.sr.ht".migrate-on-upgrade = mkDefault "yes"; 119 + # paste.sr.ht's OAuth client ID and secret for meta.sr.ht 120 + # Register your client at meta.example.org/oauth 121 + "paste.sr.ht".oauth-client-id = mkDefault null; 122 + "paste.sr.ht".oauth-client-secret = mkDefault null; 123 + "paste.sr.ht".webhooks = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/5"; 124 + }; 125 + 126 + services.nginx.virtualHosts."paste.${cfg.originBase}" = { 127 + forceSSL = true; 128 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 129 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 130 + locations."/static".root = "${pkgs.sourcehut.pastesrht}/${pkgs.sourcehut.python.sitePackages}/pastesrht"; 131 + }; 132 + }; 133 + }
+66
nixos/modules/services/misc/sourcehut/service.nix
··· 1 + { config, pkgs, lib }: 2 + serviceCfg: serviceDrv: iniKey: attrs: 3 + let 4 + cfg = config.services.sourcehut; 5 + cfgIni = cfg.settings."${iniKey}"; 6 + pgSuperUser = config.services.postgresql.superUser; 7 + 8 + setupDB = pkgs.writeScript "${serviceDrv.pname}-gen-db" '' 9 + #! ${cfg.python}/bin/python 10 + from ${serviceDrv.pname}.app import db 11 + db.create() 12 + ''; 13 + in 14 + with serviceCfg; with lib; recursiveUpdate 15 + { 16 + environment.HOME = statePath; 17 + path = [ config.services.postgresql.package ] ++ (attrs.path or [ ]); 18 + restartTriggers = [ config.environment.etc."sr.ht/config.ini".source ]; 19 + serviceConfig = { 20 + Type = "simple"; 21 + User = user; 22 + Group = user; 23 + Restart = "always"; 24 + WorkingDirectory = statePath; 25 + } // (if (cfg.statePath == "/var/lib/sourcehut/${serviceDrv.pname}") then { 26 + StateDirectory = [ "sourcehut/${serviceDrv.pname}" ]; 27 + } else {}) 28 + ; 29 + 30 + preStart = '' 31 + if ! test -e ${statePath}/db; then 32 + # Setup the initial database 33 + ${setupDB} 34 + 35 + # Set the initial state of the database for future database upgrades 36 + if test -e ${cfg.python}/bin/${serviceDrv.pname}-migrate; then 37 + # Run alembic stamp head once to tell alembic the schema is up-to-date 38 + ${cfg.python}/bin/${serviceDrv.pname}-migrate stamp head 39 + fi 40 + 41 + printf "%s" "${serviceDrv.version}" > ${statePath}/db 42 + fi 43 + 44 + # Update copy of each users' profile to the latest 45 + # See https://lists.sr.ht/~sircmpwn/sr.ht-admins/<20190302181207.GA13778%40cirno.my.domain> 46 + if ! test -e ${statePath}/webhook; then 47 + # Update ${iniKey}'s users' profile copy to the latest 48 + ${cfg.python}/bin/srht-update-profiles ${iniKey} 49 + 50 + touch ${statePath}/webhook 51 + fi 52 + 53 + ${optionalString (builtins.hasAttr "migrate-on-upgrade" cfgIni && cfgIni.migrate-on-upgrade == "yes") '' 54 + if [ "$(cat ${statePath}/db)" != "${serviceDrv.version}" ]; then 55 + # Manage schema migrations using alembic 56 + ${cfg.python}/bin/${serviceDrv.pname}-migrate -a upgrade head 57 + 58 + # Mark down current package version 59 + printf "%s" "${serviceDrv.version}" > ${statePath}/db 60 + fi 61 + ''} 62 + 63 + ${attrs.preStart or ""} 64 + ''; 65 + } 66 + (builtins.removeAttrs attrs [ "path" "preStart" ])
+115
nixos/modules/services/misc/sourcehut/sourcehut.xml
··· 1 + <chapter xmlns="http://docbook.org/ns/docbook" 2 + xmlns:xlink="http://www.w3.org/1999/xlink" 3 + xmlns:xi="http://www.w3.org/2001/XInclude" 4 + version="5.0" 5 + xml:id="module-services-sourcehut"> 6 + <title>Sourcehut</title> 7 + <para> 8 + <link xlink:href="https://sr.ht.com/">Sourcehut</link> is an open-source, 9 + self-hostable software development platform. The server setup can be automated using 10 + <link linkend="opt-services.sourcehut.enable">services.sourcehut</link>. 11 + </para> 12 + 13 + <section xml:id="module-services-sourcehut-basic-usage"> 14 + <title>Basic usage</title> 15 + <para> 16 + Sourcehut is a Python and Go based set of applications. 17 + <literal><link linkend="opt-services.sourcehut.enable">services.sourcehut</link></literal> 18 + by default will use 19 + <literal><link linkend="opt-services.nginx.enable">services.nginx</link></literal>, 20 + <literal><link linkend="opt-services.nginx.enable">services.redis</link></literal>, 21 + <literal><link linkend="opt-services.nginx.enable">services.cron</link></literal>, 22 + and 23 + <literal><link linkend="opt-services.postgresql.enable">services.postgresql</link></literal>. 24 + </para> 25 + 26 + <para> 27 + A very basic configuration may look like this: 28 + <programlisting> 29 + { pkgs, ... }: 30 + let 31 + fqdn = 32 + let 33 + join = hostName: domain: hostName + optionalString (domain != null) ".${domain}"; 34 + in join config.networking.hostName config.networking.domain; 35 + in { 36 + 37 + networking = { 38 + <link linkend="opt-networking.hostName">hostName</link> = "srht"; 39 + <link linkend="opt-networking.domain">domain</link> = "tld"; 40 + <link linkend="opt-networking.firewall.allowedTCPPorts">firewall.allowedTCPPorts</link> = [ 22 80 443 ]; 41 + }; 42 + 43 + services.sourcehut = { 44 + <link linkend="opt-services.sourcehut.enable">enable</link> = true; 45 + <link linkend="opt-services.sourcehut.originBase">originBase</link> = fqdn; 46 + <link linkend="opt-services.sourcehut.services">services</link> = [ "meta" "man" "git" ]; 47 + <link linkend="opt-services.sourcehut.settings">settings</link> = { 48 + "sr.ht" = { 49 + environment = "production"; 50 + global-domain = fqdn; 51 + origin = "https://${fqdn}"; 52 + # Produce keys with srht-keygen from <package>sourcehut.coresrht</package>. 53 + network-key = "SECRET"; 54 + service-key = "SECRET"; 55 + }; 56 + webhooks.private-key= "SECRET"; 57 + }; 58 + }; 59 + 60 + <link linkend="opt-security.acme.certs._name_.extraDomainNames">security.acme.certs."${fqdn}".extraDomainNames</link> = [ 61 + "meta.${fqdn}" 62 + "man.${fqdn}" 63 + "git.${fqdn}" 64 + ]; 65 + 66 + services.nginx = { 67 + <link linkend="opt-services.nginx.enable">enable</link> = true; 68 + # only recommendedProxySettings are strictly required, but the rest make sense as well. 69 + <link linkend="opt-services.nginx.recommendedTlsSettings">recommendedTlsSettings</link> = true; 70 + <link linkend="opt-services.nginx.recommendedOptimisation">recommendedOptimisation</link> = true; 71 + <link linkend="opt-services.nginx.recommendedGzipSettings">recommendedGzipSettings</link> = true; 72 + <link linkend="opt-services.nginx.recommendedProxySettings">recommendedProxySettings</link> = true; 73 + 74 + # Settings to setup what certificates are used for which endpoint. 75 + <link linkend="opt-services.nginx.virtualHosts">virtualHosts</link> = { 76 + <link linkend="opt-services.nginx.virtualHosts._name_.enableACME">"${fqdn}".enableACME</link> = true; 77 + <link linkend="opt-services.nginx.virtualHosts._name_.useACMEHost">"meta.${fqdn}".useACMEHost</link> = fqdn: 78 + <link linkend="opt-services.nginx.virtualHosts._name_.useACMEHost">"man.${fqdn}".useACMEHost</link> = fqdn: 79 + <link linkend="opt-services.nginx.virtualHosts._name_.useACMEHost">"git.${fqdn}".useACMEHost</link> = fqdn: 80 + }; 81 + }; 82 + } 83 + </programlisting> 84 + </para> 85 + 86 + <para> 87 + The <literal>hostName</literal> option is used internally to configure the nginx 88 + reverse-proxy. The <literal>settings</literal> attribute set is 89 + used by the configuration generator and the result is placed in <literal>/etc/sr.ht/config.ini</literal>. 90 + </para> 91 + </section> 92 + 93 + <section xml:id="module-services-sourcehut-configuration"> 94 + <title>Configuration</title> 95 + 96 + <para> 97 + All configuration parameters are also stored in 98 + <literal>/etc/sr.ht/config.ini</literal> which is generated by 99 + the module and linked from the store to ensure that all values from <literal>config.ini</literal> 100 + can be modified by the module. 101 + </para> 102 + 103 + </section> 104 + 105 + <section xml:id="module-services-sourcehut-httpd"> 106 + <title>Using an alternative webserver as reverse-proxy (e.g. <literal>httpd</literal>)</title> 107 + <para> 108 + By default, <package>nginx</package> is used as reverse-proxy for <package>sourcehut</package>. 109 + However, it's possible to use e.g. <package>httpd</package> by explicitly disabling 110 + <package>nginx</package> using <xref linkend="opt-services.nginx.enable" /> and fixing the 111 + <literal>settings</literal>. 112 + </para> 113 + </section> 114 + 115 + </chapter>
+161
nixos/modules/services/misc/sourcehut/todo.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.services.sourcehut; 6 + cfgIni = cfg.settings; 7 + scfg = cfg.todo; 8 + iniKey = "todo.sr.ht"; 9 + 10 + rcfg = config.services.redis; 11 + drv = pkgs.sourcehut.todosrht; 12 + in 13 + { 14 + options.services.sourcehut.todo = { 15 + user = mkOption { 16 + type = types.str; 17 + default = "todosrht"; 18 + description = '' 19 + User for todo.sr.ht. 20 + ''; 21 + }; 22 + 23 + port = mkOption { 24 + type = types.port; 25 + default = 5003; 26 + description = '' 27 + Port on which the "todo" module should listen. 28 + ''; 29 + }; 30 + 31 + database = mkOption { 32 + type = types.str; 33 + default = "todo.sr.ht"; 34 + description = '' 35 + PostgreSQL database name for todo.sr.ht. 36 + ''; 37 + }; 38 + 39 + statePath = mkOption { 40 + type = types.path; 41 + default = "${cfg.statePath}/todosrht"; 42 + description = '' 43 + State path for todo.sr.ht. 44 + ''; 45 + }; 46 + }; 47 + 48 + config = with scfg; lib.mkIf (cfg.enable && elem "todo" cfg.services) { 49 + users = { 50 + users = { 51 + "${user}" = { 52 + isSystemUser = true; 53 + group = user; 54 + extraGroups = [ "postfix" ]; 55 + description = "todo.sr.ht user"; 56 + }; 57 + }; 58 + groups = { 59 + "${user}" = { }; 60 + }; 61 + }; 62 + 63 + services.postgresql = { 64 + authentication = '' 65 + local ${database} ${user} trust 66 + ''; 67 + ensureDatabases = [ database ]; 68 + ensureUsers = [ 69 + { 70 + name = user; 71 + ensurePermissions = { "DATABASE \"${database}\"" = "ALL PRIVILEGES"; }; 72 + } 73 + ]; 74 + }; 75 + 76 + systemd = { 77 + tmpfiles.rules = [ 78 + "d ${statePath} 0750 ${user} ${user} -" 79 + ]; 80 + 81 + services = { 82 + todosrht = import ./service.nix { inherit config pkgs lib; } scfg drv iniKey { 83 + after = [ "postgresql.service" "network.target" ]; 84 + requires = [ "postgresql.service" ]; 85 + wantedBy = [ "multi-user.target" ]; 86 + 87 + description = "todo.sr.ht website service"; 88 + 89 + serviceConfig.ExecStart = "${cfg.python}/bin/gunicorn ${drv.pname}.app:app -b ${cfg.address}:${toString port}"; 90 + }; 91 + 92 + todosrht-lmtp = { 93 + after = [ "postgresql.service" "network.target" ]; 94 + bindsTo = [ "postgresql.service" ]; 95 + wantedBy = [ "multi-user.target" ]; 96 + 97 + description = "todo.sr.ht process service"; 98 + serviceConfig = { 99 + Type = "simple"; 100 + User = user; 101 + Restart = "always"; 102 + ExecStart = "${cfg.python}/bin/todosrht-lmtp"; 103 + }; 104 + }; 105 + 106 + todosrht-webhooks = { 107 + after = [ "postgresql.service" "network.target" ]; 108 + requires = [ "postgresql.service" ]; 109 + wantedBy = [ "multi-user.target" ]; 110 + 111 + description = "todo.sr.ht webhooks service"; 112 + serviceConfig = { 113 + Type = "simple"; 114 + User = user; 115 + Restart = "always"; 116 + ExecStart = "${cfg.python}/bin/celery -A ${drv.pname}.webhooks worker --loglevel=info"; 117 + }; 118 + 119 + }; 120 + }; 121 + }; 122 + 123 + services.sourcehut.settings = { 124 + # URL todo.sr.ht is being served at (protocol://domain) 125 + "todo.sr.ht".origin = mkDefault "http://todo.${cfg.originBase}"; 126 + # Address and port to bind the debug server to 127 + "todo.sr.ht".debug-host = mkDefault "0.0.0.0"; 128 + "todo.sr.ht".debug-port = mkDefault port; 129 + # Configures the SQLAlchemy connection string for the database. 130 + "todo.sr.ht".connection-string = mkDefault "postgresql:///${database}?user=${user}&host=/var/run/postgresql"; 131 + # Set to "yes" to automatically run migrations on package upgrade. 132 + "todo.sr.ht".migrate-on-upgrade = mkDefault "yes"; 133 + # todo.sr.ht's OAuth client ID and secret for meta.sr.ht 134 + # Register your client at meta.example.org/oauth 135 + "todo.sr.ht".oauth-client-id = mkDefault null; 136 + "todo.sr.ht".oauth-client-secret = mkDefault null; 137 + # Outgoing email for notifications generated by users 138 + "todo.sr.ht".notify-from = mkDefault "CHANGEME@example.org"; 139 + # The redis connection used for the webhooks worker 140 + "todo.sr.ht".webhooks = mkDefault "redis://${rcfg.bind}:${toString rcfg.port}/1"; 141 + # Network-key 142 + "todo.sr.ht".network-key = mkDefault null; 143 + 144 + # Path for the lmtp daemon's unix socket. Direct incoming mail to this socket. 145 + # Alternatively, specify IP:PORT and an SMTP server will be run instead. 146 + "todo.sr.ht::mail".sock = mkDefault "/tmp/todo.sr.ht-lmtp.sock"; 147 + # The lmtp daemon will make the unix socket group-read/write for users in this 148 + # group. 149 + "todo.sr.ht::mail".sock-group = mkDefault "postfix"; 150 + 151 + "todo.sr.ht::mail".posting-domain = mkDefault "todo.${cfg.originBase}"; 152 + }; 153 + 154 + services.nginx.virtualHosts."todo.${cfg.originBase}" = { 155 + forceSSL = true; 156 + locations."/".proxyPass = "http://${cfg.address}:${toString port}"; 157 + locations."/query".proxyPass = "http://${cfg.address}:${toString (port + 100)}"; 158 + locations."/static".root = "${pkgs.sourcehut.todosrht}/${pkgs.sourcehut.python.sitePackages}/todosrht"; 159 + }; 160 + }; 161 + }
+1
nixos/modules/services/monitoring/prometheus/exporters.nix
··· 51 51 "pihole" 52 52 "postfix" 53 53 "postgres" 54 + "process" 54 55 "py-air-control" 55 56 "redis" 56 57 "rspamd"
+48
nixos/modules/services/monitoring/prometheus/exporters/process.nix
··· 1 + { config, lib, pkgs, options }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.services.prometheus.exporters.process; 7 + configFile = pkgs.writeText "process-exporter.yaml" (builtins.toJSON cfg.settings); 8 + in 9 + { 10 + port = 9256; 11 + extraOpts = { 12 + settings.process_names = mkOption { 13 + type = types.listOf types.anything; 14 + default = {}; 15 + example = literalExample '' 16 + { 17 + process_names = [ 18 + # Remove nix store path from process name 19 + { name = "{{.Matches.Wrapped}} {{ .Matches.Args }}"; cmdline = [ "^/nix/store[^ ]*/(?P<Wrapped>[^ /]*) (?P<Args>.*)" ]; } 20 + ]; 21 + } 22 + ''; 23 + description = '' 24 + All settings expressed as an Nix attrset. 25 + 26 + Check the official documentation for the corresponding YAML 27 + settings that can all be used here: <link xlink:href="https://github.com/ncabatoff/process-exporter" /> 28 + ''; 29 + }; 30 + }; 31 + serviceOpts = { 32 + serviceConfig = { 33 + DynamicUser = false; 34 + ExecStart = '' 35 + ${pkgs.prometheus-process-exporter}/bin/process-exporter \ 36 + --web.listen-address ${cfg.listenAddress}:${toString cfg.port} \ 37 + --config.path ${configFile} \ 38 + ${concatStringsSep " \\\n " cfg.extraFlags} 39 + ''; 40 + NoNewPrivileges = true; 41 + ProtectHome = true; 42 + ProtectSystem = true; 43 + ProtectKernelTunables = true; 44 + ProtectKernelModules = true; 45 + ProtectControlGroups = true; 46 + }; 47 + }; 48 + }
+3 -3
nixos/modules/virtualisation/openvswitch.nix
··· 66 66 }; 67 67 68 68 in (mkMerge [{ 69 - 70 - environment.systemPackages = [ cfg.package pkgs.ipsecTools ]; 71 - 69 + environment.systemPackages = [ cfg.package ]; 72 70 boot.kernelModules = [ "tun" "openvswitch" ]; 73 71 74 72 boot.extraModulePackages = [ cfg.package ]; ··· 146 144 147 145 } 148 146 (mkIf (cfg.ipsec && (versionOlder cfg.package.version "2.6.0")) { 147 + environment.systemPackages = [ pkgs.ipsecTools ]; 148 + 149 149 services.racoon.enable = true; 150 150 services.racoon.configPath = "${runDir}/ipsec/etc/racoon/racoon.conf"; 151 151
+19
nixos/tests/prometheus-exporters.nix
··· 864 864 ''; 865 865 }; 866 866 867 + process = { 868 + exporterConfig = { 869 + enable = true; 870 + settings.process_names = [ 871 + # Remove nix store path from process name 872 + { name = "{{.Matches.Wrapped}} {{ .Matches.Args }}"; cmdline = [ "^/nix/store[^ ]*/(?P<Wrapped>[^ /]*) (?P<Args>.*)" ]; } 873 + ]; 874 + }; 875 + exporterTest = '' 876 + wait_for_unit("prometheus-process-exporter.service") 877 + wait_for_open_port(9256) 878 + wait_until_succeeds( 879 + "curl -sSf localhost:9256/metrics | grep -q '{}'".format( 880 + 'namedprocess_namegroup_cpu_seconds_total{groupname="process-exporter ' 881 + ) 882 + ) 883 + ''; 884 + }; 885 + 867 886 py-air-control = { 868 887 nodeName = "py_air_control"; 869 888 exporterConfig = {
+1 -1
nixos/tests/rss2email.nix
··· 1 1 import ./make-test-python.nix { 2 - name = "opensmtpd"; 2 + name = "rss2email"; 3 3 4 4 nodes = { 5 5 server = { pkgs, ... }: {
+29
nixos/tests/sourcehut.nix
··· 1 + import ./make-test-python.nix ({ pkgs, ... }: 2 + 3 + { 4 + name = "sourcehut"; 5 + 6 + meta.maintainers = [ pkgs.lib.maintainers.tomberek ]; 7 + 8 + machine = { config, pkgs, ... }: { 9 + virtualisation.memorySize = 2048; 10 + networking.firewall.allowedTCPPorts = [ 80 ]; 11 + 12 + services.sourcehut = { 13 + enable = true; 14 + services = [ "meta" ]; 15 + originBase = "sourcehut"; 16 + settings."sr.ht".service-key = "8888888888888888888888888888888888888888888888888888888888888888"; 17 + settings."sr.ht".network-key = "0000000000000000000000000000000000000000000="; 18 + settings.webhooks.private-key = "0000000000000000000000000000000000000000000="; 19 + }; 20 + }; 21 + 22 + testScript = '' 23 + start_all() 24 + machine.wait_for_unit("multi-user.target") 25 + machine.wait_for_unit("metasrht.service") 26 + machine.wait_for_open_port(5000) 27 + machine.succeed("curl -sL http://localhost:5000 | grep meta.sourcehut") 28 + ''; 29 + })
+2 -2
pkgs/applications/audio/boops/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "boops"; 5 - version = "1.4.0"; 5 + version = "1.6.0"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "sjaehn"; 9 9 repo = "BOops"; 10 10 rev = version; 11 - sha256 = "1kkp6s431pjb1qrg1dq8ak3lj0ksqnxsij9jg6biscpfgbmaqdcq"; 11 + sha256 = "sha256-7eNvt8PxIZCp83Y5XX5fBolBon4j+HPtu8wrgG8Miok="; 12 12 }; 13 13 14 14 nativeBuildInputs = [ pkg-config ];
+39
pkgs/applications/audio/faustPhysicalModeling/default.nix
··· 1 + { stdenv, lib, fetchFromGitHub, faust2jaqt, faust2lv2 }: 2 + stdenv.mkDerivation rec { 3 + pname = "faustPhysicalModeling"; 4 + version = "2.20.2"; 5 + 6 + src = fetchFromGitHub { 7 + owner = "grame-cncm"; 8 + repo = "faust"; 9 + rev = version; 10 + sha256 = "1mm93ba26b7q69hvabzalg30dh8pl858nj4m2bb57pznnp09lq9a"; 11 + }; 12 + 13 + buildInputs = [ faust2jaqt faust2lv2 ]; 14 + 15 + buildPhase = '' 16 + cd examples/physicalModeling 17 + 18 + for f in *MIDI.dsp; do 19 + faust2jaqt -time -vec -double -midi -nvoices 16 -t 99999 $f 20 + faust2lv2 -time -vec -double -gui -nvoices 16 -t 99999 $f 21 + done 22 + ''; 23 + 24 + installPhase = '' 25 + mkdir -p $out/lib/lv2 $out/bin 26 + mv *.lv2/ $out/lib/lv2 27 + for f in $(find . -executable -type f); do 28 + cp $f $out/bin/ 29 + done 30 + ''; 31 + 32 + meta = with lib; { 33 + description = "The physical models included with faust compiled as jack standalone and lv2 instruments"; 34 + homepage = "https://github.com/grame-cncm/faust/tree/master-dev/examples/physicalModeling"; 35 + license = licenses.mit; 36 + platforms = platforms.linux; 37 + maintainers = with maintainers; [ magnetophon ]; 38 + }; 39 + }
+39
pkgs/applications/audio/faustStk/default.nix
··· 1 + { stdenv, lib, fetchFromGitHub, faust2jaqt, faust2lv2 }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "faustPhhysicalModeling"; 5 + version = "2.20.2"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "grame-cncm"; 9 + repo = "faust"; 10 + rev = version; 11 + sha256 = "1mm93ba26b7q69hvabzalg30dh8pl858nj4m2bb57pznnp09lq9a"; 12 + }; 13 + 14 + buildInputs = [ faust2jaqt faust2lv2 ]; 15 + 16 + buildPhase = '' 17 + cd examples/physicalModeling/faust-stk 18 + 19 + for f in *.dsp; do 20 + faust2jaqt -time -vec -midi -nvoices 8 -t 99999 $f 21 + faust2lv2 -time -vec -double -gui -nvoices 32 -t 99999 $f 22 + done 23 + ''; 24 + 25 + installPhase = '' 26 + mkdir -p $out/lib/lv2 $out/bin 27 + mv *.lv2/ $out/lib/lv2 28 + for f in $(find . -executable -type f); do 29 + cp $f $out/bin/ 30 + done 31 + ''; 32 + meta = with lib; { 33 + description = "The physical modeling instruments included with faust, compiled as jack standalone and lv2 instruments"; 34 + homepage = "https://ccrma.stanford.edu/~rmichon/faustSTK/"; 35 + license = licenses.stk; 36 + platforms = platforms.linux; 37 + maintainers = with maintainers; [ magnetophon ]; 38 + }; 39 + }
+11 -1
pkgs/applications/audio/helvum/default.nix
··· 1 1 { lib 2 2 , fetchFromGitLab 3 + , makeDesktopItem 4 + , copyDesktopItems 3 5 , rustPlatform 4 6 , pkg-config 5 7 , clang ··· 23 25 24 26 cargoSha256 = "sha256-uNTSU06Fz/ud04K40e98rb7o/uAht0DsiJOXeHX72vw="; 25 27 26 - nativeBuildInputs = [ clang pkg-config ]; 28 + nativeBuildInputs = [ clang copyDesktopItems pkg-config ]; 27 29 buildInputs = [ glib gtk4 pipewire ]; 28 30 29 31 LIBCLANG_PATH = "${libclang.lib}/lib"; 32 + 33 + desktopItems = makeDesktopItem { 34 + name = "Helvum"; 35 + exec = pname; 36 + desktopName = "Helvum"; 37 + genericName = "Helvum"; 38 + categories = "AudioVideo;"; 39 + }; 30 40 31 41 meta = with lib; { 32 42 description = "A GTK patchbay for pipewire";
+2 -2
pkgs/applications/audio/stochas/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "stochas"; 5 - version = "1.3.4"; 5 + version = "1.3.5"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "surge-synthesizer"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "0b26mbj727dnygavz4kihnhmnnvwsr9l145w6kydq7bd7nwiw7lq"; 11 + sha256 = "1z8q53qfigw6wwbvpca92b9pf9d0mv3nyb0fmszz5ikj3pcybi7m"; 12 12 fetchSubmodules = true; 13 13 }; 14 14
+2 -2
pkgs/applications/misc/logseq/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "logseq"; 5 - version = "0.0.16"; 5 + version = "0.1.3"; 6 6 7 7 src = fetchurl { 8 8 url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage"; 9 - sha256 = "dmgwFHJRy5qE71naRJKX0HCrVG0qQBOIM9TvCh4j/lY="; 9 + sha256 = "1akg3xjbh01nb7l06qpvz3xsjj64kf042xjnapn60jlgg5y34vbm"; 10 10 name = "${pname}-${version}.AppImage"; 11 11 }; 12 12
+2
pkgs/applications/misc/moonlight-qt/default.nix
··· 15 15 , openssl 16 16 , libopus 17 17 , ffmpeg 18 + , wayland 18 19 }: 19 20 20 21 stdenv.mkDerivation rec { ··· 47 48 openssl 48 49 libopus 49 50 ffmpeg 51 + wayland 50 52 ]; 51 53 52 54 meta = with lib; {
+11 -3
pkgs/applications/misc/nimbo/default.nix
··· 1 - { lib, setuptools, boto3, requests, click, pyyaml, pydantic, buildPythonApplication 2 - , pythonOlder, fetchFromGitHub, awscli }: 1 + { lib, setuptools, boto3, requests, click, pyyaml, pydantic 2 + , buildPythonApplication, pythonOlder, installShellFiles, fetchFromGitHub 3 + , awscli }: 3 4 4 5 buildPythonApplication rec { 5 6 pname = "nimbo"; ··· 12 13 rev = "v${version}"; 13 14 sha256 = "1fs28s9ynfxrb4rzba6cmik0kl0q0vkpb4zdappsq62jqf960k24"; 14 15 }; 15 - 16 + nativeBuildInputs = [ installShellFiles ]; 16 17 propagatedBuildInputs = [ setuptools boto3 awscli requests click pyyaml pydantic ]; 17 18 18 19 # nimbo tests require an AWS instance 19 20 doCheck = false; 20 21 pythonImportsCheck = [ "nimbo" ]; 22 + 23 + postInstall = '' 24 + installShellCompletion --cmd nimbo \ 25 + --zsh <(_NIMBO_COMPLETE=source_zsh $out/bin/nimbo) \ 26 + --bash <(_NIMBO_COMPLETE=source_bash $out/bin/nimbo) \ 27 + --fish <(_NIMBO_COMPLETE=source_fish $out/bin/nimbo) 28 + ''; 21 29 22 30 meta = with lib; { 23 31 description = "Run machine learning jobs on AWS with a single command";
+2 -1
pkgs/applications/networking/gns3/server.nix
··· 24 24 25 25 postPatch = '' 26 26 substituteInPlace requirements.txt \ 27 - --replace "aiohttp==3.6.2" "aiohttp>=3.6.2" 27 + --replace "aiohttp==3.6.2" "aiohttp>=3.6.2" \ 28 + --replace "py-cpuinfo==7.0.0" "py-cpuinfo>=8.0.0" 28 29 ''; 29 30 30 31 propagatedBuildInputs = with python.pkgs; [
+2 -1
pkgs/applications/networking/instant-messengers/viber/default.nix
··· 9 9 version = "13.3.1.22"; 10 10 11 11 src = fetchurl { 12 - url = "https://download.cdn.viber.com/cdn/desktop/Linux/viber.deb"; 12 + # Official link: https://download.cdn.viber.com/cdn/desktop/Linux/viber.deb 13 + url = "http://web.archive.org/web/20210602004133/https://download.cdn.viber.com/cdn/desktop/Linux/viber.deb"; 13 14 sha256 = "0rs26x0lycavybn6k1hbb5kzms0zzcmxlrmi4g8k7vyafj6s8dqh"; 14 15 }; 15 16
+53
pkgs/applications/networking/p2p/retroshare/default.nix
··· 1 + { lib, mkDerivation, fetchFromGitHub, qmake, cmake, pkg-config, miniupnpc, bzip2 2 + , speex, libmicrohttpd, libxml2, libxslt, sqlcipher, rapidjson, libXScrnSaver 3 + , qtbase, qtx11extras, qtmultimedia, libgnome-keyring3 4 + }: 5 + 6 + mkDerivation rec { 7 + pname = "retroshare"; 8 + version = "0.6.6"; 9 + 10 + src = fetchFromGitHub { 11 + owner = "RetroShare"; 12 + repo = "RetroShare"; 13 + rev = "v${version}"; 14 + sha256 = "1hsymbhsfgycj39mdkrdp2hgq8irmvxa4a6jx2gg339m1fgf2xmh"; 15 + fetchSubmodules = true; 16 + }; 17 + 18 + patches = [ 19 + # The build normally tries to get git sub-modules during build 20 + # but we already have them checked out 21 + ./no-submodules.patch 22 + ]; 23 + 24 + nativeBuildInputs = [ pkg-config qmake cmake ]; 25 + buildInputs = [ 26 + speex miniupnpc qtmultimedia qtx11extras qtbase libgnome-keyring3 27 + bzip2 libXScrnSaver libxml2 libxslt sqlcipher libmicrohttpd rapidjson 28 + ]; 29 + 30 + qmakeFlags = [ 31 + # Upnp library autodetection doesn't work 32 + "RS_UPNP_LIB=miniupnpc" 33 + 34 + # These values are normally found from the .git folder 35 + "RS_MAJOR_VERSION=${lib.versions.major version}" 36 + "RS_MINOR_VERSION=${lib.versions.minor version}" 37 + "RS_MINI_VERSION=${lib.versions.patch version}" 38 + "RS_EXTRA_VERSION=" 39 + ]; 40 + 41 + postInstall = '' 42 + # BT DHT bootstrap 43 + cp libbitdht/src/bitdht/bdboot.txt $out/share/retroshare 44 + ''; 45 + 46 + meta = with lib; { 47 + description = "Decentralized peer to peer chat application."; 48 + homepage = "http://retroshare.sourceforge.net/"; 49 + license = licenses.gpl2Plus; 50 + platforms = platforms.linux; 51 + maintainers = with maintainers; [ StijnDW ]; 52 + }; 53 + }
+62
pkgs/applications/networking/p2p/retroshare/no-submodules.patch
··· 1 + diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro 2 + index 84d18944e..71aeb67d2 100644 3 + --- a/libretroshare/src/libretroshare.pro 4 + +++ b/libretroshare/src/libretroshare.pro 5 + @@ -870,20 +870,14 @@ rs_jsonapi { 6 + genrestbedlib.variable_out = PRE_TARGETDEPS 7 + win32-g++:isEmpty(QMAKE_SH) { 8 + genrestbedlib.commands = \ 9 + - cd /D $$shell_path($${RS_SRC_PATH}) && git submodule update --init supportlibs/restbed || cd . $$escape_expand(\\n\\t) \ 10 + - cd /D $$shell_path($${RESTBED_SRC_PATH}) && git submodule update --init dependency/asio || cd . $$escape_expand(\\n\\t) \ 11 + - cd /D $$shell_path($${RESTBED_SRC_PATH}) && git submodule update --init dependency/catch || cd . $$escape_expand(\\n\\t )\ 12 + - cd /D $$shell_path($${RESTBED_SRC_PATH}) && git submodule update --init dependency/kashmir || cd . $$escape_expand(\\n\\t) \ 13 + + cd /D $$shell_path($${RS_SRC_PATH}) && cd . $$escape_expand(\\n\\t) \ 14 + + cd /D $$shell_path($${RESTBED_SRC_PATH}) && cd . $$escape_expand(\\n\\t) \ 15 + + cd /D $$shell_path($${RESTBED_SRC_PATH}) && cd . $$escape_expand(\\n\\t )\ 16 + + cd /D $$shell_path($${RESTBED_SRC_PATH}) && cd . $$escape_expand(\\n\\t) \ 17 + $(CHK_DIR_EXISTS) $$shell_path($$UDP_DISCOVERY_BUILD_PATH) $(MKDIR) $$shell_path($${UDP_DISCOVERY_BUILD_PATH}) $$escape_expand(\\n\\t) 18 + } else { 19 + genrestbedlib.commands = \ 20 + - cd $${RS_SRC_PATH} && ( \ 21 + - git submodule update --init supportlibs/restbed ; \ 22 + - cd $${RESTBED_SRC_PATH} ; \ 23 + - git submodule update --init dependency/asio ; \ 24 + - git submodule update --init dependency/catch ; \ 25 + - git submodule update --init dependency/kashmir ; \ 26 + - true ) && \ 27 + + cd $${RS_SRC_PATH} && \ 28 + mkdir -p $${RESTBED_BUILD_PATH} && 29 + } 30 + genrestbedlib.commands += \ 31 + @@ -991,14 +985,9 @@ rs_broadcast_discovery { 32 + udpdiscoverycpplib.variable_out = PRE_TARGETDEPS 33 + win32-g++:isEmpty(QMAKE_SH) { 34 + udpdiscoverycpplib.commands = \ 35 + - cd /D $$shell_path($${RS_SRC_PATH}) && git submodule update --init supportlibs/udp-discovery-cpp || cd . $$escape_expand(\\n\\t) \ 36 + $(CHK_DIR_EXISTS) $$shell_path($$UDP_DISCOVERY_BUILD_PATH) $(MKDIR) $$shell_path($${UDP_DISCOVERY_BUILD_PATH}) $$escape_expand(\\n\\t) 37 + } else { 38 + - udpdiscoverycpplib.commands = \ 39 + - cd $${RS_SRC_PATH} && ( \ 40 + - git submodule update --init supportlibs/udp-discovery-cpp || \ 41 + - true ) && \ 42 + - mkdir -p $${UDP_DISCOVERY_BUILD_PATH} && 43 + + udpdiscoverycpplib.commands = mkdir -p $${UDP_DISCOVERY_BUILD_PATH} && 44 + } 45 + udpdiscoverycpplib.commands += \ 46 + cd $$shell_path($${UDP_DISCOVERY_BUILD_PATH}) && \ 47 + diff --git a/retroshare-gui/src/retroshare-gui.pro b/retroshare-gui/src/retroshare-gui.pro 48 + index 654efd170..06cba9ba3 100644 49 + --- a/retroshare-gui/src/retroshare-gui.pro 50 + +++ b/retroshare-gui/src/retroshare-gui.pro 51 + @@ -66,10 +66,7 @@ rs_gui_cmark { 52 + gencmarklib.CONFIG += target_predeps combine 53 + gencmarklib.variable_out = PRE_TARGETDEPS 54 + gencmarklib.commands = \ 55 + - cd $${RS_SRC_PATH} && ( \ 56 + - git submodule update --init supportlibs/cmark ; \ 57 + - cd $${CMARK_SRC_PATH} ; \ 58 + - true ) && \ 59 + + cd $${RS_SRC_PATH} && \ 60 + mkdir -p $${CMARK_BUILD_PATH} && cd $${CMARK_BUILD_PATH} && \ 61 + cmake \ 62 + -DCMAKE_CXX_COMPILER=$$QMAKE_CXX \
+11
pkgs/applications/science/electronics/dsview/default.nix
··· 25 25 # Using local file instead of content of commit #33e3d896a47 because 26 26 # sourceRoot make it unappliable 27 27 ./qt515.patch 28 + 29 + # Change from upstream master that removes extern-C scopes which 30 + # cause failures with modern glib. This can likely be removed if 31 + # there is an upstream release >1.12 32 + (fetchpatch { 33 + name = "fix-extern-c.patch"; 34 + url = "https://github.com/DreamSourceLab/DSView/commit/33cc733abe19872bf5ed08540a94b798d0d4ecf4.patch"; 35 + sha256 = "sha256-TLfLQa3sdyNHTpMMvId/V6uUuOFihOZMFJOj9frnDoY="; 36 + stripLen = 2; 37 + extraPrefix = ""; 38 + }) 28 39 ]; 29 40 30 41 nativeBuildInputs = [ cmake pkg-config ];
+2 -2
pkgs/applications/version-management/git-and-tools/tig/default.nix
··· 4 4 5 5 stdenv.mkDerivation rec { 6 6 pname = "tig"; 7 - version = "2.5.3"; 7 + version = "2.5.4"; 8 8 9 9 src = fetchFromGitHub { 10 10 owner = "jonas"; 11 11 repo = pname; 12 12 rev = "${pname}-${version}"; 13 - sha256 = "sha256-BXs7aKUYiU5L2OjhhmJ+dkHvNcrnw5qREwOTB6npLnw="; 13 + sha256 = "sha256-dZqqUydZ4q/mDEjtojpMGfzAmW3yCNDvT9oCEmhq1hg="; 14 14 }; 15 15 16 16 nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs pkg-config ];
+1
pkgs/applications/version-management/sourcehut/default.nix
··· 31 31 in 32 32 with python.pkgs; recurseIntoAttrs { 33 33 inherit python; 34 + coresrht = toPythonApplication srht; 34 35 buildsrht = toPythonApplication buildsrht; 35 36 dispatchsrht = toPythonApplication dispatchsrht; 36 37 gitsrht = toPythonApplication gitsrht;
+29
pkgs/data/fonts/edwin/default.nix
··· 1 + { lib, fetchurl }: 2 + 3 + let 4 + version = "0.52"; 5 + in fetchurl { 6 + name = "edwin-${version}"; 7 + 8 + url = "https://github.com/MuseScoreFonts/Edwin/archive/refs/tags/v${version}.tar.gz"; 9 + 10 + downloadToTemp = true; 11 + 12 + recursiveHash = true; 13 + 14 + sha256 = "sha256-e0ADK72ECl+QMvLWtFJfeHBmuEwzr9M+Kqvkd5Z2mmo="; 15 + 16 + postFetch = '' 17 + tar xzf $downloadedFile 18 + mkdir -p $out/share/fonts/opentype 19 + install Edwin-${version}/*.otf $out/share/fonts/opentype 20 + ''; 21 + 22 + meta = with lib; { 23 + description = "A text font for musical scores"; 24 + homepage = "https://github.com/MuseScoreFonts/Edwin"; 25 + license = licenses.ofl; 26 + platforms = platforms.all; 27 + maintainers = with maintainers; [ fortuneteller2k ]; 28 + }; 29 + }
+12 -1
pkgs/development/beam-modules/rebar3-release.nix
··· 80 80 dir=${if releaseType == "escript" 81 81 then "bin" 82 82 else "rel"} 83 - mkdir -p "$out/$dir" 83 + mkdir -p "$out/$dir" "$out/bin" 84 84 cp -R --preserve=mode "_build/${profile}/$dir" "$out" 85 + ${lib.optionalString (releaseType == "release") 86 + "find $out/rel/*/bin -type f -executable -exec ln -s -t $out/bin {} \\;"} 85 87 runHook postInstall 88 + ''; 89 + 90 + postInstall = '' 91 + for dir in $out/rel/*/erts-*; do 92 + echo "ERTS found in $dir - removing references to erlang to reduce closure size" 93 + for f in $dir/bin/{erl,start}; do 94 + substituteInPlace "$f" --replace "${erlang}/lib/erlang" "''${dir/\/erts-*/}" 95 + done 96 + done 86 97 ''; 87 98 88 99 meta = {
+10 -13
pkgs/development/compilers/ponyc/default.nix
··· 3 3 4 4 stdenv.mkDerivation (rec { 5 5 pname = "ponyc"; 6 - version = "0.38.3"; 6 + version = "0.41.1"; 7 7 8 8 src = fetchFromGitHub { 9 9 owner = "ponylang"; 10 10 repo = pname; 11 11 rev = version; 12 - sha256 = "14kivmyphi7gbd7mgd4cnsiwl4cl7wih8kwzh7n79s2s4c5hj4ak"; 12 + sha256 = "02wx070cy1193xzv58vh79yzwgpqiayqlwd3i285698fppbcg69a"; 13 13 14 14 # Due to a bug in LLVM 9.x, ponyc has to include its own vendored patched 15 15 # LLVM. (The submodule is a specific tag in the LLVM source tree). ··· 23 23 fetchSubmodules = true; 24 24 }; 25 25 26 - ponygbenchmark = fetchurl { 27 - url = "https://github.com/google/benchmark/archive/v1.5.0.tar.gz"; 28 - sha256 = "06i2cr4rj126m1zfz0x1rbxv1mw1l7a11mzal5kqk56cdrdicsiw"; 29 - name = "v1.5.0.tar.gz"; 26 + ponygbenchmark = fetchFromGitHub { 27 + owner = "google"; 28 + repo = "benchmark"; 29 + rev = "v1.5.2"; 30 + sha256 = "13rxagpzw6bal6ajlmrxlh9kgfvcixn6j734b2bvfqz7lch8n0pa"; 30 31 }; 31 32 32 33 nativeBuildInputs = [ cmake makeWrapper which ]; 33 34 buildInputs = [ libxml2 z3 ]; 34 - propagatedBuildInputs = [ cc ]; 35 35 36 36 # Sandbox disallows network access, so disabling problematic networking tests 37 37 patches = [ 38 38 ./disable-tests.patch 39 + ./fix-libstdcpp-path.patch 39 40 (substituteAll { 40 41 src = ./make-safe-for-sandbox.patch; 41 42 googletest = fetchurl { 42 43 url = "https://github.com/google/googletest/archive/release-1.8.1.tar.gz"; 43 44 sha256 = "17147961i01fl099ygxjx4asvjanwdd446nwbq9v8156h98zxwcv"; 44 - name = "release-1.8.1.tar.gz"; 45 45 }; 46 46 }) 47 47 ]; 48 48 49 49 postUnpack = '' 50 50 mkdir -p source/build/build_libs/gbenchmark-prefix/src 51 - tar -C source/build/build_libs/gbenchmark-prefix/src -zxvf "$ponygbenchmark" 52 - mv source/build/build_libs/gbenchmark-prefix/src/benchmark-1.5.0 \ 53 - source/build/build_libs/gbenchmark-prefix/src/benchmark 51 + cp -r "$ponygbenchmark"/ source/build/build_libs/gbenchmark-prefix/src/benchmark 52 + chmod -R u+w source/build/build_libs/gbenchmark-prefix/src/benchmark 54 53 ''; 55 54 56 55 dontConfigure = true; ··· 61 60 patch -d lib/llvm/src/ -p1 < lib/llvm/patches/2020-09-01-is-trivially-copyable.diff 62 61 patch -d lib/llvm/src/ -p1 < lib/llvm/patches/2020-01-07-01-c-exports.diff 63 62 patch -d lib/llvm/src/ -p1 < lib/llvm/patches/2019-12-23-01-jit-eh-frames.diff 64 - 65 63 substituteInPlace packages/process/_test.pony \ 66 64 --replace '"/bin/' '"${coreutils}/bin/' \ 67 65 --replace '=/bin' "${coreutils}/bin" ··· 91 89 + lib.optionalString stdenv.isDarwin "bits=64 " 92 90 + lib.optionalString (stdenv.isDarwin && (!lto)) "lto=no " 93 91 + '' install 94 - 95 92 wrapProgram $out/bin/ponyc \ 96 93 --prefix PATH ":" "${stdenv.cc}/bin" \ 97 94 --set-default CC "$CC" \
+14
pkgs/development/compilers/ponyc/fix-libstdcpp-path.patch
··· 1 + diff --git a/src/libponyc/CMakeLists.txt b/src/libponyc/CMakeLists.txt 2 + index bf2c385e..11d0d619 100644 3 + --- a/src/libponyc/CMakeLists.txt 4 + +++ b/src/libponyc/CMakeLists.txt 5 + @@ -136,7 +136,7 @@ elseif(${CMAKE_HOST_SYSTEM_NAME} MATCHES "DragonFly") 6 + else() 7 + # add a rule to generate the standalone library if needed 8 + add_custom_command(OUTPUT libponyc-standalone.a 9 + - COMMAND cp `find /usr/lib/ -name 'libstdc++.a' -print -quit` libstdcpp.a 10 + + COMMAND cp `${CMAKE_CXX_COMPILER} --print-file-name='libstdc++.a'` libstdcpp.a 11 + COMMAND echo "create libponyc-standalone.a" > standalone.mri 12 + COMMAND echo "addlib ${PROJECT_SOURCE_DIR}/../../build/libs/lib/libblake2.a" >> standalone.mri 13 + COMMAND echo "addlib libstdcpp.a" >> standalone.mri 14 +
+5 -5
pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
··· 1 - --- a/lib/CMakeLists.txt 2020-09-27 02:39:12.862940179 +0000 2 - +++ b/lib/CMakeLists.txt 2020-09-27 02:39:16.451957865 +0000 1 + --- a/lib/CMakeLists.txt 2021-05-27 15:58:36.819331229 -0400 2 + +++ b/lib/CMakeLists.txt 2021-05-27 16:00:19.768268649 -0400 3 3 @@ -10,12 +10,12 @@ 4 4 endif() 5 5 6 6 ExternalProject_Add(gbenchmark 7 - - URL https://github.com/google/benchmark/archive/v1.5.0.tar.gz 7 + - URL https://github.com/google/benchmark/archive/v1.5.2.tar.gz 8 8 + SOURCE_DIR gbenchmark-prefix/src/benchmark 9 9 CMAKE_ARGS -DCMAKE_BUILD_TYPE=${PONYC_LIBS_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DBENCHMARK_ENABLE_GTEST_TESTS=OFF -DCMAKE_CXX_FLAGS=-fpic --no-warn-unused-cli 10 10 ) ··· 30 30 - option(GIT_SUBMODULE "Check submodules during build" ON) 31 31 - if(GIT_SUBMODULE) 32 32 - message(STATUS "Updating submodules...") 33 - - execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive 33 + - execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive --depth 1 34 34 - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} 35 35 - RESULT_VARIABLE git_submod_result) 36 36 - #message("git_submod_result ${git_submod_result}") 37 37 - if(NOT git_submod_result EQUAL "0") 38 - - message(FATAL_ERROR "git submodule update --init --recursive failed with ${git_submod_result}, please checkout submodules") 38 + - message(FATAL_ERROR "git submodule update --init --recursive --depth 1 failed with ${git_submod_result}, please checkout submodules") 39 39 - endif() 40 40 - 41 41 - # we check to make sure the submodule hash matches
+3 -3
pkgs/development/interpreters/evcxr/default.nix
··· 3 3 4 4 rustPlatform.buildRustPackage rec { 5 5 pname = "evcxr"; 6 - version = "0.9.0"; 6 + version = "0.10.0"; 7 7 8 8 src = fetchFromGitHub { 9 9 owner = "google"; 10 10 repo = "evcxr"; 11 11 rev = "v${version}"; 12 - sha256 = "sha256-89+RZrG/QUo3JY9N5eTiMigUnlUP+wZWRW8PSnCcsrY="; 12 + sha256 = "sha256-EPxWLPw+V5eIm+eL8m8Xw14adgshthJSDRyWohsJH88="; 13 13 }; 14 14 15 - cargoSha256 = "sha256-gZLSTWS5cLfJvk4/tv8FG2I2vH3PKljWbJDOflNDmTQ="; 15 + cargoSha256 = "sha256-5jGrv0YRVMo2X9p/WPgjYV3z193hl2+NiFTZr3v0Iik="; 16 16 17 17 RUST_SRC_PATH = "${rustPlatform.rustLibSrc}"; 18 18
+2 -5
pkgs/development/libraries/aws-c-common/default.nix
··· 6 6 7 7 stdenv.mkDerivation rec { 8 8 pname = "aws-c-common"; 9 - version = "0.5.5"; 9 + version = "0.5.11"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "awslabs"; 13 13 repo = pname; 14 14 rev = "v${version}"; 15 - sha256 = "sha256-rGv+fa+UF/f6mY8CmZpkjP98CAcAQCTjL3OI7HsUHcU="; 15 + sha256 = "sha256-4CYbL+ICabKvpfjlALJ0wRbuwgy+JKJnKqYbQFsHQsI="; 16 16 }; 17 17 18 18 nativeBuildInputs = [ cmake ]; ··· 21 21 "-DBUILD_SHARED_LIBS=ON" 22 22 "-DCMAKE_SKIP_BUILD_RPATH=OFF" # for tests 23 23 ]; 24 - 25 - NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin 26 - "-Wno-nullability-extension -Wno-typedef-redefinition"; 27 24 28 25 doCheck = true; 29 26
+3 -3
pkgs/development/libraries/box2d/default.nix
··· 6 6 version = "2.3.1"; 7 7 8 8 src = fetchurl { 9 - url = "https://github.com/erincatto/Box2D/archive/v${version}.tar.gz"; 10 - sha256 = "0llpcifl8zbjbpxdwz87drd01m3lwnv82xb4av6kca1xn4w2gmkm"; 9 + url = "https://github.com/erincatto/box2d/archive/v${version}.tar.gz"; 10 + sha256 = "0p03ngsmyz0r5kbpiaq10ns4fxwkjvvawi8k6pfall46b93wizsq"; 11 11 }; 12 12 13 - sourceRoot = "Box2D-${version}/Box2D"; 13 + sourceRoot = "box2d-${version}/Box2D"; 14 14 15 15 nativeBuildInputs = [ cmake unzip pkg-config ]; 16 16 buildInputs = [ libGLU libGL freeglut libX11 xorgproto libXi ];
+9
pkgs/development/libraries/gupnp/default.nix
··· 1 1 { lib, stdenv 2 2 , fetchurl 3 + , fetchpatch 3 4 , meson 4 5 , ninja 5 6 , pkg-config ··· 27 28 url = "mirror://gnome/sources/gupnp/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 28 29 sha256 = "sha256-96AwfqUfXkTRuDL0k92QRURKOk4hHvhd/Zql3W6up9E="; 29 30 }; 31 + 32 + patches = [ 33 + (fetchpatch { 34 + name = "CVE-2021-33516.patch"; 35 + url = "https://gitlab.gnome.org/GNOME/gupnp/-/commit/ca6ec9dcb26fd7a2a630eb6a68118659b589afac.patch"; 36 + sha256 = "sha256-G7e/xNQB7Kp2fPzqVeD/cH3h1co9hZXh55QOUBnAnvU="; 37 + }) 38 + ]; 30 39 31 40 nativeBuildInputs = [ 32 41 meson
+73
pkgs/development/libraries/mvapich/default.nix
··· 1 + { lib, stdenv, fetchurl, pkg-config, bison, numactl, libxml2 2 + , perl, gfortran, slurm, openssh, hwloc, zlib, makeWrapper 3 + # InfiniBand dependencies 4 + , opensm, rdma-core 5 + # OmniPath dependencies 6 + , libpsm2, libfabric 7 + # Compile with slurm as a process manager 8 + , useSlurm ? false 9 + # Network type for MVAPICH2 10 + , network ? "ethernet" 11 + } : 12 + 13 + assert builtins.elem network [ "ethernet" "infiniband" "omnipath" ]; 14 + 15 + stdenv.mkDerivation rec { 16 + pname = "mvapich"; 17 + version = "2.3.6"; 18 + 19 + src = fetchurl { 20 + url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-${version}.tar.gz"; 21 + sha256 = "0jd28vy9ivl3rcpkxmhw73b6krzm0pd9jps8asw92wa00lm2z9mk"; 22 + }; 23 + 24 + nativeBuildInputs = [ pkg-config bison makeWrapper ]; 25 + propagatedBuildInputs = [ numactl rdma-core zlib opensm ]; 26 + buildInputs = with lib; [ 27 + numactl 28 + libxml2 29 + perl 30 + gfortran 31 + openssh 32 + hwloc 33 + ] ++ optionals (network == "infiniband") [ rdma-core opensm ] 34 + ++ optionals (network == "omnipath") [ libpsm2 libfabric ] 35 + ++ optional useSlurm slurm; 36 + 37 + configureFlags = with lib; [ 38 + "--with-pm=hydra" 39 + "--enable-fortran=all" 40 + "--enable-cxx" 41 + "--enable-threads=multiple" 42 + "--enable-hybrid" 43 + "--enable-shared" 44 + ] ++ optional useSlurm "--with-pm=slurm" 45 + ++ optional (network == "ethernet") "--with-device=ch3:sock" 46 + ++ optionals (network == "infiniband") [ "--with-device=ch3:mrail" "--with-rdma=gen2" ] 47 + ++ optionals (network == "omnipath") ["--with-device=ch3:psm" "--with-psm2=${libpsm2}"]; 48 + 49 + doCheck = true; 50 + 51 + preFixup = '' 52 + # /tmp/nix-build... ends up in the RPATH, fix it manually 53 + for entry in $out/bin/mpichversion $out/bin/mpivars; do 54 + echo "fix rpath: $entry" 55 + patchelf --set-rpath "$out/lib" $entry 56 + done 57 + 58 + # Ensure the default compilers are the ones mvapich was built with 59 + substituteInPlace $out/bin/mpicc --replace 'CC="gcc"' 'CC=${stdenv.cc}/bin/gcc' 60 + substituteInPlace $out/bin/mpicxx --replace 'CXX="g++"' 'CC=${stdenv.cc}/bin/g++' 61 + substituteInPlace $out/bin/mpifort --replace 'FC="gfortran"' 'CC=${gfortran}/bin/gfortran' 62 + ''; 63 + 64 + enableParallelBuilding = true; 65 + 66 + meta = with lib; { 67 + description = "MPI-3.1 implementation optimized for Infiband transport"; 68 + homepage = "https://mvapich.cse.ohio-state.edu"; 69 + license = licenses.bsd3; 70 + maintainers = [ maintainers.markuskowa ]; 71 + platforms = platforms.linux; 72 + }; 73 + }
+2 -2
pkgs/development/libraries/sundials/default.nix
··· 17 17 outputs = [ "out" "examples" ]; 18 18 19 19 src = fetchurl { 20 - url = "https://computation.llnl.gov/projects/${pname}/download/${pname}-${version}.tar.gz"; 21 - sha256 = "jW3QlP7Mu41uzEE0DsFqZfq6yC7UQVAj9tfBwjkOovM="; 20 + url = "https://github.com/LLNL/sundials/releases/download/v${version}/sundials-${version}.tar.gz"; 21 + hash = "sha256-SNp7qoFS3bIq7RsC2C0du0+/6iKs9nY0ARqgMDoQCkM="; 22 22 }; 23 23 24 24 nativeBuildInputs = [ cmake ];
+36
pkgs/development/libraries/xtensor/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchFromGitHub 4 + , cmake 5 + , gtest 6 + , xsimd 7 + , xtl 8 + }: 9 + stdenv.mkDerivation rec { 10 + pname = "xtensor"; 11 + version = "0.23.10"; 12 + 13 + src = fetchFromGitHub { 14 + owner = "xtensor-stack"; 15 + repo = "xtensor"; 16 + rev = version; 17 + sha256 = "1ayrhyh9x33b87ic01b4jzxc8x27yxpxzya5x54ikazvz8p71n14"; 18 + }; 19 + 20 + nativeBuildInputs = [ cmake ]; 21 + propagatedBuildInputs = [ xtl xsimd ]; 22 + 23 + cmakeFlags = [ "-DBUILD_TESTS=ON" ]; 24 + 25 + doCheck = true; 26 + checkInputs = [ gtest ]; 27 + checkTarget = "xtest"; 28 + 29 + meta = with lib; { 30 + description = "Multi-dimensional arrays with broadcasting and lazy computing."; 31 + homepage = "https://github.com/xtensor-stack/xtensor"; 32 + license = licenses.bsd3; 33 + maintainers = with maintainers; [ cpcloud ]; 34 + platforms = platforms.all; 35 + }; 36 + }
+7 -2
pkgs/development/php-packages/deployer/default.nix
··· 1 - { mkDerivation, fetchurl, makeWrapper, lib, php }: 1 + { mkDerivation, fetchurl, makeWrapper, installShellFiles, lib, php }: 2 2 3 3 mkDerivation rec { 4 4 pname = "deployer"; ··· 11 11 12 12 dontUnpack = true; 13 13 14 - nativeBuildInputs = [ makeWrapper ]; 14 + nativeBuildInputs = [ makeWrapper installShellFiles ]; 15 15 16 16 installPhase = '' 17 17 mkdir -p $out/bin 18 18 install -D $src $out/libexec/deployer/deployer.phar 19 19 makeWrapper ${php}/bin/php $out/bin/dep --add-flags "$out/libexec/deployer/deployer.phar" 20 + 21 + # fish support currently broken: https://github.com/deployphp/deployer/issues/2527 22 + installShellCompletion --cmd dep \ 23 + --bash <($out/bin/dep autocomplete --install) \ 24 + --zsh <($out/bin/dep autocomplete --install) 20 25 ''; 21 26 22 27 meta = with lib; {
+51
pkgs/development/python-modules/aio-georss-client/default.nix
··· 1 + { lib 2 + , aiohttp 3 + , aresponses 4 + , asynctest 5 + , buildPythonPackage 6 + , dateparser 7 + , fetchFromGitHub 8 + , haversine 9 + , pytest-asyncio 10 + , pytestCheckHook 11 + , pythonOlder 12 + , requests 13 + , xmltodict 14 + }: 15 + 16 + buildPythonPackage rec { 17 + pname = "aio-georss-client"; 18 + version = "0.7"; 19 + disabled = pythonOlder "3.7"; 20 + 21 + src = fetchFromGitHub { 22 + owner = "exxamalte"; 23 + repo = "python-aio-georss-client"; 24 + rev = "v${version}"; 25 + sha256 = "1nhw2sf92dbizxdcil1wdmbaa3hbmsiriy8jfzpqxsliw5dc0kmh"; 26 + }; 27 + 28 + propagatedBuildInputs = [ 29 + aiohttp 30 + haversine 31 + xmltodict 32 + requests 33 + dateparser 34 + ]; 35 + 36 + checkInputs = [ 37 + aresponses 38 + asynctest 39 + pytest-asyncio 40 + pytestCheckHook 41 + ]; 42 + 43 + pythonImportsCheck = [ "aio_georss_client" ]; 44 + 45 + meta = with lib; { 46 + description = "Python library for accessing GeoRSS feeds"; 47 + homepage = "https://github.com/exxamalte/python-aio-georss-client"; 48 + license = with licenses; [ asl20 ]; 49 + maintainers = with maintainers; [ fab ]; 50 + }; 51 + }
+43
pkgs/development/python-modules/aio-georss-gdacs/default.nix
··· 1 + { lib 2 + , aio-georss-client 3 + , aresponses 4 + , buildPythonPackage 5 + , dateparser 6 + , fetchFromGitHub 7 + , pytest-asyncio 8 + , pytestCheckHook 9 + , pythonOlder 10 + }: 11 + 12 + buildPythonPackage rec { 13 + pname = "aio-georss-gdacs"; 14 + version = "0.4"; 15 + disabled = pythonOlder "3.7"; 16 + 17 + src = fetchFromGitHub { 18 + owner = "exxamalte"; 19 + repo = "python-aio-georss-gdacs"; 20 + rev = "v${version}"; 21 + sha256 = "0rcrhdpgj84hfifx9rzxz15ajzsk069iknb28gicw1cm1qv4vfxm"; 22 + }; 23 + 24 + propagatedBuildInputs = [ 25 + aio-georss-client 26 + dateparser 27 + ]; 28 + 29 + checkInputs = [ 30 + aresponses 31 + pytest-asyncio 32 + pytestCheckHook 33 + ]; 34 + 35 + pythonImportsCheck = [ "aio_georss_gdacs" ]; 36 + 37 + meta = with lib; { 38 + description = "Python library for accessing GeoRSS feeds"; 39 + homepage = "https://github.com/exxamalte/python-aio-georss-gdacs"; 40 + license = with licenses; [ asl20 ]; 41 + maintainers = with maintainers; [ fab ]; 42 + }; 43 + }
+10 -11
pkgs/development/python-modules/aiokafka/default.nix
··· 1 1 { lib 2 2 , buildPythonPackage 3 3 , fetchFromGitHub 4 - , isPy27 4 + , pythonOlder 5 + , dataclasses 5 6 , kafka-python 6 7 , cython 7 8 , zlib ··· 9 10 10 11 buildPythonPackage rec { 11 12 pname = "aiokafka"; 12 - version = "0.7.0"; 13 - 14 - disabled = isPy27; 13 + version = "0.7.1"; 14 + disabled = pythonOlder "3.6"; 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "aio-libs"; 18 - repo = "aiokafka"; 18 + repo = pname; 19 19 rev = "v${version}"; 20 - sha256 = "16pcgv38syqy6sj3w7zx95zgynpd642n3i95dpiw0ivhpqrxxhrf"; 20 + sha256 = "sha256-D89ppIUliJJMDuCySrZUyN6Rlm01gFskz6ayHmqploc="; 21 21 }; 22 22 23 23 nativeBuildInputs = [ ··· 30 30 31 31 propagatedBuildInputs = [ 32 32 kafka-python 33 + ] ++ lib.optionals (pythonOlder "3.7") [ 34 + dataclasses 33 35 ]; 34 36 35 - postPatch = '' 36 - substituteInPlace setup.py \ 37 - --replace "kafka-python==1.4.6" "kafka-python" 38 - ''; 39 - 40 37 # checks require running kafka server 41 38 doCheck = false; 39 + 40 + pythonImportsCheck = [ "aiokafka" ]; 42 41 43 42 meta = with lib; { 44 43 description = "Kafka integration with asyncio";
+2 -2
pkgs/development/python-modules/aioswitcher/default.nix
··· 12 12 13 13 buildPythonPackage rec { 14 14 pname = "aioswitcher"; 15 - version = "1.2.3"; 15 + version = "1.2.5"; 16 16 format = "pyproject"; 17 17 18 18 src = fetchFromGitHub { 19 19 owner = "TomerFi"; 20 20 repo = pname; 21 21 rev = version; 22 - sha256 = "sha256-Qp5iVk71JxhPVrytWuXkzpqPNPmMQubO0t9sgeQfO8c="; 22 + sha256 = "sha256-eiWmB2DVNAYHPHfnVwv0+4A/wYLgtAa1ReGsmwiIvAk="; 23 23 }; 24 24 25 25 nativeBuildInputs = [
+3 -3
pkgs/development/python-modules/clldutils/default.nix
··· 15 15 16 16 buildPythonPackage rec { 17 17 pname = "clldutils"; 18 - version = "3.8.0"; 18 + version = "3.9.0"; 19 19 disabled = isPy27; 20 20 21 21 src = fetchFromGitHub { 22 22 owner = "clld"; 23 23 repo = pname; 24 24 rev = "v${version}"; 25 - sha256 = "18sjcqzprf96s7bkn5zm3lh83hxfxj56nycxyldrwz7ndgkgxxx2"; 25 + sha256 = "07ljq7v1zvaxyl6xn4a2p4097lgd5j9bz71lf05y5bz8k024mxbr"; 26 26 }; 27 27 28 28 patchPhase = '' ··· 48 48 description = "CSV on the Web"; 49 49 homepage = "https://github.com/cldf/csvw"; 50 50 license = licenses.asl20; 51 - maintainers = with maintainers; [ hexa ]; 51 + maintainers = with maintainers; [ ]; 52 52 }; 53 53 }
+43
pkgs/development/python-modules/georss-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , dateparser 4 + , fetchFromGitHub 5 + , haversine 6 + , pytestCheckHook 7 + , pythonOlder 8 + , requests 9 + , xmltodict 10 + }: 11 + 12 + buildPythonPackage rec { 13 + pname = "georss-client"; 14 + version = "0.13"; 15 + disabled = pythonOlder "3.7"; 16 + 17 + src = fetchFromGitHub { 18 + owner = "exxamalte"; 19 + repo = "python-georss-client"; 20 + rev = "v${version}"; 21 + sha256 = "1pvx2qb8gs2f7bb8xxq689ydxirsl3bcgsbi5qv5klc4c051dj8i"; 22 + }; 23 + 24 + propagatedBuildInputs = [ 25 + haversine 26 + xmltodict 27 + requests 28 + dateparser 29 + ]; 30 + 31 + checkInputs = [ 32 + pytestCheckHook 33 + ]; 34 + 35 + pythonImportsCheck = [ "georss_client" ]; 36 + 37 + meta = with lib; { 38 + description = "Python library for accessing GeoRSS feeds"; 39 + homepage = "https://github.com/exxamalte/python-georss-client"; 40 + license = with licenses; [ asl20 ]; 41 + maintainers = with maintainers; [ fab ]; 42 + }; 43 + }
+37
pkgs/development/python-modules/georss-generic-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-generic-client"; 11 + version = "0.4"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-generic-client"; 17 + rev = "v${version}"; 18 + sha256 = "0i4shx6fvwibx0hlfmd0dyq2n5lkrqwmlm0l476fdb9bw5lkaiy0"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_generic_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing generic GeoRSS feeds"; 33 + homepage = "https://github.com/exxamalte/python-georss-generic-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+37
pkgs/development/python-modules/georss-ign-sismologia-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-ign-sismologia-client"; 11 + version = "0.2"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-ign-sismologia-client"; 17 + rev = "v${version}"; 18 + sha256 = "1xylgvbdrpl3wxa6qqc8jma4c9520rld0pv28y3b6b0m07ab6ijl"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_ign_sismologia_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing the IGN Sismologia GeoRSS feed"; 33 + homepage = "https://github.com/exxamalte/python-georss-ign-sismologia-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+37
pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-ingv-centro-nazionale-terremoti-client"; 11 + version = "0.4"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-ingv-centro-nazionale-terremoti-client"; 17 + rev = "v${version}"; 18 + sha256 = "06qhxczznckb208bnfly0q5099scq1yj5rk67a6fqczpsmzcln6x"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_ingv_centro_nazionale_terremoti_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing the INGV Centro Nazionale Terremoti GeoRSS feed"; 33 + homepage = "https://github.com/exxamalte/python-georss-ingv-centro-nazionale-terremoti-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+37
pkgs/development/python-modules/georss-nrcan-earthquakes-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-nrcan-earthquakes-client"; 11 + version = "0.2"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-nrcan-earthquakes-client"; 17 + rev = "v${version}"; 18 + sha256 = "0d5cdvi35wj30yvql1sr5n4vz0g4ydrslhql3bya1b7pndfs0h3y"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_nrcan_earthquakes_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing Natural Resources Canada Earthquakes feed"; 33 + homepage = "https://github.com/exxamalte/python-georss-nrcan-earthquakes-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+37
pkgs/development/python-modules/georss-qld-bushfire-alert-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-qld-bushfire-alert-client"; 11 + version = "0.4"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-qld-bushfire-alert-client"; 17 + rev = "v${version}"; 18 + sha256 = "14k7q0ynray1fj0lhxvgxpbdh4pmsqqk9gzmv38p9i7ijx8h1sc8"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_qld_bushfire_alert_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing Queensland Bushfire Alert feed"; 33 + homepage = "https://github.com/exxamalte/python-georss-qld-bushfire-alert-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+37
pkgs/development/python-modules/georss-tfs-incidents-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-tfs-incidents-client"; 11 + version = "0.2"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-tfs-incidents-client"; 17 + rev = "v${version}"; 18 + sha256 = "10qscn7kncb7h0b8mjykkf5kmm3ga9l8gss4acb888iaigcjgavf"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_tfs_incidents_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing Tasmania Fire Service Incidents feed"; 33 + homepage = "https://github.com/exxamalte/python-georss-tfs-incidents-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+37
pkgs/development/python-modules/georss-wa-dfes-client/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , georss-client 5 + , pytestCheckHook 6 + , pythonOlder 7 + }: 8 + 9 + buildPythonPackage rec { 10 + pname = "georss-wa-dfes-client"; 11 + version = "0.2"; 12 + disabled = pythonOlder "3.7"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "exxamalte"; 16 + repo = "python-georss-wa-dfes-client"; 17 + rev = "v${version}"; 18 + sha256 = "0zfjq6yyrss61vwgdrykwkikb009q63kg9ab6ryb2509wiwwfwvk"; 19 + }; 20 + 21 + propagatedBuildInputs = [ 22 + georss-client 23 + ]; 24 + 25 + checkInputs = [ 26 + pytestCheckHook 27 + ]; 28 + 29 + pythonImportsCheck = [ "georss_wa_dfes_client" ]; 30 + 31 + meta = with lib; { 32 + description = "Python library for accessing WA Department of Fire and Emergency Services (DFES) feed"; 33 + homepage = "https://github.com/exxamalte/python-georss-wa-dfes-client"; 34 + license = with licenses; [ asl20 ]; 35 + maintainers = with maintainers; [ fab ]; 36 + }; 37 + }
+3 -5
pkgs/development/python-modules/icmplib/default.nix
··· 4 4 , pbr 5 5 , pythonOlder 6 6 , requests 7 - , six 8 7 }: 9 8 10 9 buildPythonPackage rec { 11 10 pname = "icmplib"; 12 - version = "2.1.1"; 13 - disabled = pythonOlder "3.6"; 11 + version = "3.0.0"; 12 + disabled = pythonOlder "3.7"; 14 13 15 14 src = fetchFromGitHub { 16 15 owner = "ValentinBELYN"; 17 16 repo = pname; 18 17 rev = "v${version}"; 19 - sha256 = "06xx9854yzxa7x1mjfzbhhw5rfzgjnw269j5k0rshyqh3qvw1nwv"; 18 + sha256 = "sha256-i5cmL8kOrehldOwX2RfVAfL4HdzJ+9S3BojJI2raUSA="; 20 19 }; 21 20 22 21 propagatedBuildInputs = [ 23 22 pbr 24 - six 25 23 requests 26 24 ]; 27 25
+2 -2
pkgs/development/python-modules/motioneye-client/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "motioneye-client"; 14 - version = "0.3.8"; 14 + version = "0.3.9"; 15 15 format = "pyproject"; 16 16 disabled = pythonOlder "3.8"; 17 17 ··· 19 19 owner = "dermotduffy"; 20 20 repo = pname; 21 21 rev = "v${version}"; 22 - sha256 = "sha256-vTTjH4LhUcbh+/838wR0vnvml2y78Ro8SGwSZ6aApdQ="; 22 + sha256 = "sha256-pLdAxBipmr+HUr9NSupm7h/68PK95r3zY/qZTBs1m54="; 23 23 }; 24 24 25 25 nativeBuildInputs = [
+2
pkgs/development/python-modules/sanic/default.nix
··· 42 42 "test_zero_downtime" 43 43 # flaky 44 44 "test_keep_alive_client_timeout" 45 + "test_check_timeouts_request_timeout" 46 + "test_check_timeouts_response_timeout" 45 47 "test_reloader_live" 46 48 ]; 47 49
+30
pkgs/development/python-modules/sphinxcontrib-excel-table/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , sphinx 5 + , openpyxl 6 + }: 7 + 8 + buildPythonPackage rec { 9 + pname = "sphinxcontrib-excel-table"; 10 + version = "1.0.8"; 11 + 12 + src = fetchPypi { 13 + inherit pname version; 14 + hash = "sha256:1q79byn3k3ribvwqafbpixwabjhymk46ns8ym0hxcn8vhf5nljzd"; 15 + }; 16 + 17 + propagatedBuildInputs = [ sphinx openpyxl ]; 18 + 19 + pythonImportsCheck = [ "sphinxcontrib.excel_table" ]; 20 + 21 + # No tests present upstream 22 + doCheck = false; 23 + 24 + meta = with lib; { 25 + description = "Sphinx excel-table extension"; 26 + homepage = "https://github.com/hackerain/sphinxcontrib-excel-table"; 27 + maintainers = with maintainers; [ raboof ]; 28 + license = licenses.asl20; 29 + }; 30 + }
+2 -3
pkgs/development/python-modules/subliminal/default.nix
··· 1 1 { lib 2 2 , fetchPypi 3 3 , buildPythonPackage 4 - , isPy3k 5 4 , guessit 6 5 , babelfish 7 6 , enzyme ··· 16 15 , appdirs 17 16 , rarfile 18 17 , pytz 19 - , futures 20 18 , sympy 21 19 , vcrpy 22 20 , pytest ··· 38 36 guessit babelfish enzyme beautifulsoup4 requests 39 37 click dogpile_cache stevedore chardet pysrt six 40 38 appdirs rarfile pytz 41 - ] ++ lib.optional (!isPy3k) futures; 39 + ]; 42 40 43 41 checkInputs = [ 44 42 sympy vcrpy pytest pytest-flakes ··· 47 45 48 46 # https://github.com/Diaoul/subliminal/pull/963 49 47 doCheck = false; 48 + pythonImportsCheck = [ "subliminal" ]; 50 49 51 50 meta = with lib; { 52 51 homepage = "https://github.com/Diaoul/subliminal";
+1
pkgs/development/r-modules/default.nix
··· 375 375 affyio = [ pkgs.zlib.dev ]; 376 376 VariantAnnotation = [ pkgs.zlib.dev pkgs.curl.dev ]; 377 377 snpStats = [ pkgs.zlib.dev ]; 378 + hdf5r = [ pkgs.hdf5.dev ]; 378 379 }; 379 380 380 381 packagesWithBuildInputs = {
+32
pkgs/development/tools/f2c/default.nix
··· 1 + { lib, stdenv, fetchurl }: 2 + 3 + stdenv.mkDerivation { 4 + pname = "f2c"; 5 + version = "20200916"; 6 + 7 + src = fetchurl { 8 + url = "https://www.netlib.org/f2c/src.tgz"; 9 + sha256 = "0d8xfbv6dk4dz95qds7sd44b5hvara07f2g2c5g4xiwim9b7916l"; 10 + }; 11 + 12 + makeFlags = [ "-f" "makefile.u" ]; 13 + 14 + installPhase = '' 15 + runHook preInstall 16 + 17 + mkdir -p $out/bin $out/share/man/man1 18 + install -m755 f2c $out/bin 19 + install -m755 xsum $out/bin 20 + install f2c.1t $out/share/man/man1 21 + 22 + runHook postInstall 23 + ''; 24 + 25 + meta = with lib; { 26 + description = "Convert Fortran 77 source code to C"; 27 + homepage = "https://www.netlib.org/f2c/"; 28 + license = licenses.mit; 29 + maintainers = [ maintainers.markuskowa ]; 30 + platforms = platforms.unix; 31 + }; 32 + }
+45
pkgs/games/fheroes2/default.nix
··· 1 + { stdenv, lib, fetchFromGitHub 2 + , gettext, libpng, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, zlib 3 + }: 4 + 5 + stdenv.mkDerivation rec { 6 + pname = "fheroes2"; 7 + version = "0.9.4"; 8 + 9 + src = fetchFromGitHub { 10 + owner = "ihhub"; 11 + repo = "fheroes2"; 12 + rev = version; 13 + sha256 = "sha256-z+88tVsf4uyMFzNfZDKXo0cYqBCYn1ehX+A+e+aIfSg="; 14 + }; 15 + 16 + buildInputs = [ gettext libpng SDL2 SDL2_image SDL2_mixer SDL2_ttf zlib ]; 17 + 18 + makeFlags = [ 19 + "FHEROES2_STRICT_COMPILATION=1" 20 + "RELEASE=1" 21 + ]; 22 + 23 + enableParallelBuilding = true; 24 + 25 + installPhase = '' 26 + runHook preInstall 27 + 28 + install -Dm755 $PWD/src/dist/fheroes2 $out/bin/fheroes2 29 + 30 + runHook postInstall 31 + ''; 32 + 33 + meta = with lib; { 34 + homepage = "https://github.com/ihhub/fheroes2"; 35 + description = "Free implementation of Heroes of Might and Magic II game engine"; 36 + longDescription = '' 37 + In order to play this game, an original game data is required. 38 + Please refer to README of the project for instructions. 39 + On linux, the data can be placed in ~/.local/share/fheroes2 folder. 40 + ''; 41 + license = licenses.gpl2Plus; 42 + maintainers = [ maintainers.karolchmist ]; 43 + platforms = platforms.linux; 44 + }; 45 + }
+2 -2
pkgs/games/lunar-client/default.nix
··· 2 2 3 3 let 4 4 name = "lunar-client"; 5 - version = "2.6.0"; 5 + version = "2.7.3"; 6 6 7 7 desktopItem = makeDesktopItem { 8 8 name = "Lunar Client"; ··· 21 21 src = fetchurl { 22 22 url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}.AppImage"; 23 23 name = "lunar-client.AppImage"; 24 - sha256 = "1pmblnnvs5jv5v7y5nnxr3liw9xfp5h6l44x7pln8kr9zg85dzma"; 24 + sha256 = "0ihi937rrj677y9b377b4hhp9wsarbqwrdrd6k3lhzx3jyh2fynf"; 25 25 }; 26 26 in appimageTools.wrapType1 rec { 27 27 inherit name src;
+104
pkgs/games/torus-trooper/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchpatch 4 + , fetchurl 5 + , unzip 6 + , gdc 7 + , SDL 8 + , SDL_mixer 9 + , bulletml 10 + }: 11 + 12 + let 13 + debianPatch = patchname: hash: fetchpatch { 14 + name = "${patchname}.patch"; 15 + url = "https://sources.debian.org/data/main/t/torus-trooper/0.22.dfsg1-12/debian/patches/${patchname}.patch"; 16 + sha256 = hash; 17 + }; 18 + 19 + in stdenv.mkDerivation { 20 + pname = "torus-trooper"; 21 + version = "0.22"; 22 + 23 + src = fetchurl { 24 + url = "http://abagames.sakura.ne.jp/windows/tt0_22.zip"; 25 + sha256 = "1yhki1fdp3fi4y2iq12vca69f6k38dqjaw9z4lwcxky5kbgb7jvg"; 26 + }; 27 + 28 + patches = [ 29 + (debianPatch 30 + "imports" 31 + "0mifw0mj66zljpq6iqnh0rhkgs2sky8rz0p32k98vxfnsb39ibsf") 32 + (debianPatch 33 + "fixes" 34 + "05f93zq2v14lymq748c9g646ckbh9mqpr5rrahb63s90x8hlcqil") 35 + (debianPatch 36 + "directories" 37 + "0y5xvf26v9fk0rx6ncrxx4czckhjbi891hp3pixlmv568pg9cihd") 38 + (debianPatch 39 + "windowed" 40 + "1d8ghj4shvpb0s8l16kscz4l7rz1fxmfdpddy1ikz3678pw1sc8p") 41 + (debianPatch 42 + "dotfile" 43 + "17yirmnjhbd1clzhmdd2mfdhbxkyinaahd6v3yz5kzbcylvjz2r2") 44 + (debianPatch 45 + "window-resizing" 46 + "1n64gbhabl6vis7s294wxlj2k8s3ypxljpdg71icwz1m9jjx59df") 47 + (debianPatch 48 + "save-score-444372" 49 + "1skny6s3hjxkh8w4fq86vp51j7z40fvn80b8myl4i1zzlwag3x17") 50 + (debianPatch 51 + "level-select-444948" 52 + "008248s55188plggg2kg01nimjgc7w0sqd3c22sl6lzd1fjsflv8") 53 + (debianPatch 54 + "avoid-segfault-when-sdl-fails" 55 + "1yp758gi4i15gqk6wiqp815rqcmlyqx62ir1sw20hn6zb3j97bmc") 56 + (debianPatch 57 + "dlang_v2" 58 + "1lxsbckhvl8a8j43pw2dyl5nlavvdbgxb5zlb2450a0vml55nswd") 59 + (debianPatch 60 + "lowest-level-position-602808" 61 + "19r48wirc9zssjmv57drn2fd0f56dcgyqqaz3j49cvv6yd74qf20") 62 + (debianPatch 63 + "libbulletml0v5-segfault" 64 + "0pad2daz60hswkhkdpssxaqc9p9ca0sw1nraqzr453x0zdwwq0hn") 65 + (debianPatch 66 + "std.math.fabs" 67 + "18xnnqlj20bxv2h9fa8dn4rmxwi3k6y3g50kwvh8i8p3b4hgag3r") 68 + (debianPatch 69 + "gdc-8" 70 + "10z702y75c48hjcnvv8m7f3ka52cj3r3jqafdbby85nb0p2lbssx") 71 + ]; 72 + 73 + postPatch = '' 74 + for f in src/abagames/tt/barrage.d src/abagames/util/sdl/sound.d src/abagames/util/sdl/texture.d; do 75 + substituteInPlace $f \ 76 + --replace "/usr/" "$out/" 77 + done 78 + ''; 79 + 80 + nativeBuildInputs = [ 81 + unzip 82 + gdc 83 + ]; 84 + 85 + buildInputs = [ 86 + SDL 87 + SDL_mixer 88 + bulletml 89 + ]; 90 + 91 + installPhase = '' 92 + install -Dm755 torus-trooper $out/bin/torus-trooper 93 + mkdir -p $out/share/games/torus-trooper 94 + cp -r barrage sounds images $out/share/games/torus-trooper/ 95 + ''; 96 + 97 + meta = with lib; { 98 + homepage = "http://www.asahi-net.or.jp/~cs8k-cyu/windows/tt_e.html"; 99 + description = "Fast-paced abstract scrolling shooter game"; 100 + license = licenses.bsd2; 101 + maintainers = with maintainers; [ fgaz ]; 102 + platforms = platforms.all; 103 + }; 104 + }
+97
pkgs/games/tumiki-fighters/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchpatch 4 + , fetchurl 5 + , unzip 6 + , gdc 7 + , SDL 8 + , SDL_mixer 9 + , bulletml 10 + }: 11 + 12 + let 13 + debianPatch = patchname: hash: fetchpatch { 14 + name = "${patchname}.patch"; 15 + url = "https://sources.debian.org/data/main/t/tumiki-fighters/0.2.dfsg1-9/debian/patches/${patchname}.patch"; 16 + sha256 = hash; 17 + }; 18 + 19 + in stdenv.mkDerivation { 20 + pname = "tumiki-fighters"; 21 + version = "0.21"; 22 + 23 + src = fetchurl { 24 + url = "http://abagames.sakura.ne.jp/windows/tf0_21.zip"; 25 + sha256 = "0djykfc1r8ysapklm621h89ana1c4qzc1m5nr9bqw4iccnmvwk3p"; 26 + }; 27 + 28 + patches = [ 29 + (debianPatch 30 + "imports" 31 + "1l3kc67b43gdi139cpz5cka1nkn0pjp9mrgrrxlmr0liwx2aryhn") 32 + (debianPatch 33 + "fixes" 34 + "1iy1a5vii6yz9zdlk2bcj6gkj4y25hn9y2fczz15jpqd9r2zm603") 35 + (debianPatch 36 + "directories" 37 + "0kmv0s7jgr693fzrkjsmz4dnicc4w7njanxm2la3cf4vmgdyipmm") 38 + (debianPatch 39 + "windowed" 40 + "1wp74l0bi8wq85pcxnmkwrlfmlf09im95n27pxgz082lhwf2ksy1") 41 + (debianPatch 42 + "dotfile" 43 + "0d8x519bclh41j992qn6ijzfcrgacb79px6zjd1awypkwyc0j2p6") 44 + (debianPatch 45 + "makefile" 46 + "11xf2b31kjyps53jfryv82dv0g6q0smc9xgp8imrbr93mzi51vf0") 47 + (debianPatch 48 + "window-resizing" 49 + "1dm79d0yisa8zs5fr89y3wq2kzd3khcaxs0la8lhncvkqbd4smx8") 50 + (debianPatch 51 + "dlang_v2" 52 + "1isnvbl3bjnpyphji8k3fl0yd1z4869h0lai143vpwgj6518lpg4") 53 + (debianPatch 54 + "gdc-8" 55 + "1md0zwmv50jnak5g9d93bglv9v4z41blinjii6kv3vmgjnajapzj") 56 + ]; 57 + 58 + postPatch = '' 59 + for f in \ 60 + src/abagames/tf/barragemanager.d \ 61 + src/abagames/util/sdl/sound.d \ 62 + src/abagames/util/sdl/texture.d \ 63 + src/abagames/tf/enemyspec.d \ 64 + src/abagames/tf/field.d \ 65 + src/abagames/tf/stagemanager.d \ 66 + src/abagames/tf/tumikiset.d 67 + do 68 + substituteInPlace $f \ 69 + --replace "/usr/" "$out/" 70 + done 71 + ''; 72 + 73 + nativeBuildInputs = [ 74 + unzip 75 + gdc 76 + ]; 77 + 78 + buildInputs = [ 79 + SDL 80 + SDL_mixer 81 + bulletml 82 + ]; 83 + 84 + installPhase = '' 85 + install -Dm755 tumiki-fighters $out/bin/tumiki-fighters 86 + mkdir -p $out/share/games/tumiki-fighters 87 + cp -r barrage sounds enemy field stage tumiki $out/share/games/tumiki-fighters/ 88 + ''; 89 + 90 + meta = with lib; { 91 + homepage = "http://www.asahi-net.or.jp/~cs8k-cyu/windows/tf_e.html"; 92 + description = "Sticky 2D shooter"; 93 + license = licenses.bsd2; 94 + maintainers = with maintainers; [ fgaz ]; 95 + platforms = platforms.all; 96 + }; 97 + }
+374 -326
pkgs/misc/vim-plugins/generated.nix
··· 69 69 src = fetchFromGitHub { 70 70 owner = "dense-analysis"; 71 71 repo = "ale"; 72 - rev = "a02a4f2811f810877f3c3859cca963f9578ff94a"; 73 - sha256 = "0c96zhz8ia1yfgv58jrib49kp250kilv2awr2jgnriqznkl9l4h9"; 72 + rev = "1b08791228f5aca4545a3fba6699b29a003028fe"; 73 + sha256 = "07fmvg4hcri98zxnyjab2inzaapqc2w08rzdkspcgrhibqvp53jk"; 74 74 }; 75 75 meta.homepage = "https://github.com/dense-analysis/ale/"; 76 76 }; ··· 89 89 90 90 aniseed = buildVimPluginFrom2Nix { 91 91 pname = "aniseed"; 92 - version = "2021-05-15"; 92 + version = "2021-05-31"; 93 93 src = fetchFromGitHub { 94 94 owner = "Olical"; 95 95 repo = "aniseed"; 96 - rev = "d1c07000f95825579f00e24077e65387fc1db0d6"; 97 - sha256 = "1n1vs0n596mg82kmhmscfy983di6h86mhangs6rk3zdyhzyjax5b"; 96 + rev = "4ca3d418eebc0da452b7defc18970c83f7de5070"; 97 + sha256 = "0ax3hfwppbkm7haxvsllac6r4zk2ys9rrj7sj4p3ayl1w8v3n8nq"; 98 98 }; 99 99 meta.homepage = "https://github.com/Olical/aniseed/"; 100 100 }; 101 101 102 102 ansible-vim = buildVimPluginFrom2Nix { 103 103 pname = "ansible-vim"; 104 - version = "2021-05-24"; 104 + version = "2021-06-01"; 105 105 src = fetchFromGitHub { 106 106 owner = "pearofducks"; 107 107 repo = "ansible-vim"; 108 - rev = "f351f0d36e1c8990d8bb1eb2f1d8c25e76ff99bb"; 109 - sha256 = "1hsyk5zc0nmh0hv0c803giimgmx1nahs1zm4gw61bkq2dkjfb4dn"; 108 + rev = "804099202b72ffd4bf4ea4ce24d8d7bac8b9ae2d"; 109 + sha256 = "0p93g0zi8j6bf5zh0ng9vdl9f76dan524g22jpb8c0xmm6ywns5l"; 110 110 }; 111 111 meta.homepage = "https://github.com/pearofducks/ansible-vim/"; 112 112 }; ··· 185 185 186 186 aurora = buildVimPluginFrom2Nix { 187 187 pname = "aurora"; 188 - version = "2021-05-10"; 188 + version = "2021-06-03"; 189 189 src = fetchFromGitHub { 190 190 owner = "ray-x"; 191 191 repo = "aurora"; 192 - rev = "bf185b9c5aaaad7cfd20f29f92d3b77164f8f1e7"; 193 - sha256 = "17ir0daw3rsfgprgvrskip2r19g15z05spdk14dz105nrgv4hh4y"; 192 + rev = "8d5601629f123e9553688a6705a1490ee8be9a1c"; 193 + sha256 = "0i2nyk46yvr59hxwc99iaa0zdy0xcnaa1z1q93xf85i2pdyjg99b"; 194 194 }; 195 195 meta.homepage = "https://github.com/ray-x/aurora/"; 196 196 }; ··· 221 221 222 222 auto-session = buildVimPluginFrom2Nix { 223 223 pname = "auto-session"; 224 - version = "2021-05-26"; 224 + version = "2021-06-01"; 225 225 src = fetchFromGitHub { 226 226 owner = "rmagatti"; 227 227 repo = "auto-session"; 228 - rev = "c051b0d86395c3c4c9db5ddc1b116d43b5dce6c6"; 229 - sha256 = "1006rnpprqh3xsmlas07ay4z743g2zd7z7pqwa4n1bb97y9k89ly"; 228 + rev = "80ddcf26eca11cf4d48a52ffec094fe5a4711f32"; 229 + sha256 = "0kh6a5hm0ppsbfpp7yhr2k4v36mj203q59wy15sgajx08ww0jj3m"; 230 230 }; 231 231 meta.homepage = "https://github.com/rmagatti/auto-session/"; 232 232 }; ··· 269 269 270 270 barbar-nvim = buildVimPluginFrom2Nix { 271 271 pname = "barbar-nvim"; 272 - version = "2021-05-23"; 272 + version = "2021-06-03"; 273 273 src = fetchFromGitHub { 274 274 owner = "romgrk"; 275 275 repo = "barbar.nvim"; 276 - rev = "fc90a9bceba1ccacf8a5331bb7c508baac7d5110"; 277 - sha256 = "0lwky1zbv4a4ng0bzbpz5v3b7lnk6xzj4sfzm6x5qyhagpw4812v"; 276 + rev = "23b6f64c9523522dd185482c856de492476a760c"; 277 + sha256 = "1ijm4w4nqa037vjpjgjizhzrnpj10hwjc93lhzq29qs3cx85df1q"; 278 278 }; 279 279 meta.homepage = "https://github.com/romgrk/barbar.nvim/"; 280 280 }; ··· 413 413 414 414 chadtree = buildVimPluginFrom2Nix { 415 415 pname = "chadtree"; 416 - version = "2021-05-27"; 416 + version = "2021-06-05"; 417 417 src = fetchFromGitHub { 418 418 owner = "ms-jpq"; 419 419 repo = "chadtree"; 420 - rev = "77f56c4938b512b20c2da76a54a362dffc5bc7d4"; 421 - sha256 = "1hyadig7f0mjj3vwz6pxyzwa155knbqd9dcpk64p215wagc08nfm"; 420 + rev = "a33387ffed163f922d93f142a908adfda521a224"; 421 + sha256 = "1gs06vs1bgjr76hg1pdkxsd81c12fnaqg8r1lfvwcvph1nzqj7d9"; 422 422 }; 423 423 meta.homepage = "https://github.com/ms-jpq/chadtree/"; 424 424 }; ··· 449 449 450 450 ci_dark = buildVimPluginFrom2Nix { 451 451 pname = "ci_dark"; 452 - version = "2021-04-24"; 452 + version = "2021-06-04"; 453 453 src = fetchFromGitHub { 454 454 owner = "yunlingz"; 455 455 repo = "ci_dark"; 456 - rev = "4c314000b5a21a1b9f52442a0c80e4b3fd4f0a1f"; 457 - sha256 = "1wxsgaixdmb8v87kavvyyiyqlkn7ck5g39hkq4j19747jnb6lvqf"; 456 + rev = "d50cd0c60ecdaffb779d2acb7ce2bb94df1ed867"; 457 + sha256 = "0pqpvqas1z173c2ngka787d9gp49ai3x85haingkxvir3bf0nbqm"; 458 458 }; 459 459 meta.homepage = "https://github.com/yunlingz/ci_dark/"; 460 460 }; ··· 509 509 510 510 coc-fzf = buildVimPluginFrom2Nix { 511 511 pname = "coc-fzf"; 512 - version = "2021-04-24"; 512 + version = "2021-05-29"; 513 513 src = fetchFromGitHub { 514 514 owner = "antoinemadec"; 515 515 repo = "coc-fzf"; 516 - rev = "70f0691e14c8e55290e554591c0a2661dea530fa"; 517 - sha256 = "1m3kwgng7xi8xycc0dcx0wr9i7q0anx9lpax0r4p2a26vaqam539"; 516 + rev = "1be2273dc37c07b98b7a1b2b67fd57c80feb85a9"; 517 + sha256 = "06w052x13idb8wfvyasg36hakffxnzfs7paj3wk83qa2m1kiz1n4"; 518 518 }; 519 519 meta.homepage = "https://github.com/antoinemadec/coc-fzf/"; 520 520 }; ··· 557 557 558 558 coc-nvim = buildVimPluginFrom2Nix { 559 559 pname = "coc-nvim"; 560 - version = "2021-05-24"; 560 + version = "2021-06-04"; 561 561 src = fetchFromGitHub { 562 562 owner = "neoclide"; 563 563 repo = "coc.nvim"; 564 - rev = "1a74bf3c57fec8442f837b3baad0d6fb75d1b97a"; 565 - sha256 = "105jcl74k006dsslplp40yizfdjrj3p7qr23c53dgs2wlbzqc3kj"; 564 + rev = "06d950e547e8fa1a775399ae5eeb70603084b109"; 565 + sha256 = "1fj8v8zm0w04fyxf12ck4lc3gwq6bxh5shmwc24j0sar3ki0i4rz"; 566 566 }; 567 567 meta.homepage = "https://github.com/neoclide/coc.nvim/"; 568 568 }; ··· 652 652 meta.homepage = "https://github.com/tami5/compe-conjure/"; 653 653 }; 654 654 655 + compe-latex-symbols = buildVimPluginFrom2Nix { 656 + pname = "compe-latex-symbols"; 657 + version = "2021-05-14"; 658 + src = fetchFromGitHub { 659 + owner = "GoldsteinE"; 660 + repo = "compe-latex-symbols"; 661 + rev = "70f58e53e142e3c59fe0f673dd54ce690ae57367"; 662 + sha256 = "0p4xss3zyp6002hsa6dx989zhp672mc30b57w5cjhcgbknw0iy1l"; 663 + }; 664 + meta.homepage = "https://github.com/GoldsteinE/compe-latex-symbols/"; 665 + }; 666 + 655 667 compe-tabnine = buildVimPluginFrom2Nix { 656 668 pname = "compe-tabnine"; 657 669 version = "2021-05-09"; ··· 664 676 meta.homepage = "https://github.com/tzachar/compe-tabnine/"; 665 677 }; 666 678 679 + compe-tmux = buildVimPluginFrom2Nix { 680 + pname = "compe-tmux"; 681 + version = "2021-05-31"; 682 + src = fetchFromGitHub { 683 + owner = "andersevenrud"; 684 + repo = "compe-tmux"; 685 + rev = "b199db008d07caf7f1d488ac3f171910416528a4"; 686 + sha256 = "1qiir95bz046ppp6pp8k6m00jrjcy2yp098s72lwfnsls6pqsgpf"; 687 + }; 688 + meta.homepage = "https://github.com/andersevenrud/compe-tmux/"; 689 + }; 690 + 691 + compe-zsh = buildVimPluginFrom2Nix { 692 + pname = "compe-zsh"; 693 + version = "2021-04-03"; 694 + src = fetchFromGitHub { 695 + owner = "tamago324"; 696 + repo = "compe-zsh"; 697 + rev = "1a46a0ee661242f6a015b2abead34b606bb97171"; 698 + sha256 = "0m8fmsx4bwmgqgjpwpldckp68hpx6qfschwdg275xsxkzw8pdnbk"; 699 + }; 700 + meta.homepage = "https://github.com/tamago324/compe-zsh/"; 701 + }; 702 + 667 703 completion-buffers = buildVimPluginFrom2Nix { 668 704 pname = "completion-buffers"; 669 705 version = "2021-01-17"; ··· 678 714 679 715 completion-nvim = buildVimPluginFrom2Nix { 680 716 pname = "completion-nvim"; 681 - version = "2021-04-08"; 717 + version = "2021-06-01"; 682 718 src = fetchFromGitHub { 683 719 owner = "nvim-lua"; 684 720 repo = "completion-nvim"; 685 - rev = "8bca7aca91c947031a8f14b038459e35e1755d90"; 686 - sha256 = "02zqc75p9ggrz6fyiwvzpnzipfd1s5xfr7fli2yypb4kp72mrbaf"; 721 + rev = "c8db953a8e9f4bc8183e31831297cf84d6f521b8"; 722 + sha256 = "0p35msrh7g100ayl0g8285q43v20n6hlv1grdb0rmw8sil0j881a"; 687 723 }; 688 724 meta.homepage = "https://github.com/nvim-lua/completion-nvim/"; 689 725 }; ··· 738 774 739 775 conjure = buildVimPluginFrom2Nix { 740 776 pname = "conjure"; 741 - version = "2021-05-15"; 777 + version = "2021-05-31"; 742 778 src = fetchFromGitHub { 743 779 owner = "Olical"; 744 780 repo = "conjure"; 745 - rev = "5d3b1afe96d11f059016d0b556f2797b54af916e"; 746 - sha256 = "0f4ms7c3bffak9dpx0c5wgq2asbg7xavr70cwsmxf0fifpacahhs"; 781 + rev = "31820e386ce7a32488ad6b19033c17a8f05c36bf"; 782 + sha256 = "1p35blgnd99kggwyiag6drx3v6zqx50ypxnfvvij102ws50144fk"; 747 783 }; 748 784 meta.homepage = "https://github.com/Olical/conjure/"; 749 785 }; 750 786 751 787 context_filetype-vim = buildVimPluginFrom2Nix { 752 788 pname = "context_filetype-vim"; 753 - version = "2021-05-13"; 789 + version = "2021-06-05"; 754 790 src = fetchFromGitHub { 755 791 owner = "Shougo"; 756 792 repo = "context_filetype.vim"; 757 - rev = "7f8c2f1340d450951462778b412e3b18038b4e82"; 758 - sha256 = "1zb4d5lk1gygyjqlkkjv46d0cgd2mddhgj7srlh0rcnlw3myswnr"; 793 + rev = "eca5b28dca1bace3b5694eb20b3ab244f65180e0"; 794 + sha256 = "0n0av5x6js5ld4xnlq5nh18cdwhvrljdsx17gq2sf54q342hlwp0"; 759 795 }; 760 796 meta.homepage = "https://github.com/Shougo/context_filetype.vim/"; 761 797 }; ··· 774 810 775 811 Coqtail = buildVimPluginFrom2Nix { 776 812 pname = "Coqtail"; 777 - version = "2021-05-11"; 813 + version = "2021-06-01"; 778 814 src = fetchFromGitHub { 779 815 owner = "whonore"; 780 816 repo = "Coqtail"; 781 - rev = "2cababf4c1b6cc2e460bbbd63e69ed5d9fc2ee34"; 782 - sha256 = "086gqc76ki8jwhhk4ihawjciwjsrq9k13bgwlnjhsp2rhm0vslb7"; 817 + rev = "5f92ee08b9c0018df244de47dc6e2ed4ba232a64"; 818 + sha256 = "16xfkblsn149v9rgqjcimaw380xv6l8gimfaj368gh9h2icaz9qc"; 783 819 }; 784 820 meta.homepage = "https://github.com/whonore/Coqtail/"; 785 821 }; ··· 930 966 931 967 defx-nvim = buildVimPluginFrom2Nix { 932 968 pname = "defx-nvim"; 933 - version = "2021-05-05"; 969 + version = "2021-06-05"; 934 970 src = fetchFromGitHub { 935 971 owner = "Shougo"; 936 972 repo = "defx.nvim"; 937 - rev = "e1842ae0020ef53c7ed8f96ab1c51378c3323476"; 938 - sha256 = "1r01lfdk07cybhf957zzkpl6qxiwfladk72qfc525ah2bqcrhik5"; 973 + rev = "27890150286f62d9c2fcb624f6f3bd1fd45c7f3c"; 974 + sha256 = "0fvwdjqiqwhaxwkrnzfai0ay4sksr4ma4akhzqnfqd0blbhc4x2i"; 939 975 }; 940 976 meta.homepage = "https://github.com/Shougo/defx.nvim/"; 941 977 }; ··· 978 1014 979 1015 denite-nvim = buildVimPluginFrom2Nix { 980 1016 pname = "denite-nvim"; 981 - version = "2021-05-17"; 1017 + version = "2021-06-05"; 982 1018 src = fetchFromGitHub { 983 1019 owner = "Shougo"; 984 1020 repo = "denite.nvim"; 985 - rev = "fb8174a07c3a19091bfdbfc9439a15466d1649fa"; 986 - sha256 = "041c8hhq76ih0s730zyfx16svfbzqfqyy6pl686aqikixldcz41l"; 1021 + rev = "70ca378f399be626020e2994f9604eae35c232a6"; 1022 + sha256 = "0njjwa2ixqm792chvkq91fb7dadaf05kws727w1q9r5sp8k000sr"; 987 1023 }; 988 1024 meta.homepage = "https://github.com/Shougo/denite.nvim/"; 989 1025 }; 990 1026 991 1027 deol-nvim = buildVimPluginFrom2Nix { 992 1028 pname = "deol-nvim"; 993 - version = "2021-05-09"; 1029 + version = "2021-06-05"; 994 1030 src = fetchFromGitHub { 995 1031 owner = "Shougo"; 996 1032 repo = "deol.nvim"; 997 - rev = "ca02aa3b59fd3a6674ff6ce471267d1f716a2995"; 998 - sha256 = "15r7wvcchybjp96jw9klr93sdz89qnrw033942kd0q2q19fkbxdj"; 1033 + rev = "5d4ca0cab361962a58db6f4a3ad06b00348b743d"; 1034 + sha256 = "04ja8ps0vmvg5aggr6lr4qb4pv46hi86x8zw8mwrzav04z8fhxcw"; 999 1035 }; 1000 1036 meta.homepage = "https://github.com/Shougo/deol.nvim/"; 1001 1037 }; ··· 1220 1256 1221 1257 deoplete-nvim = buildVimPluginFrom2Nix { 1222 1258 pname = "deoplete-nvim"; 1223 - version = "2021-05-24"; 1259 + version = "2021-06-05"; 1224 1260 src = fetchFromGitHub { 1225 1261 owner = "Shougo"; 1226 1262 repo = "deoplete.nvim"; 1227 - rev = "35e27c325ecf0afa28ca42bbda4793eb7ca5f383"; 1228 - sha256 = "0an2282ykdsb5v25dhd9r2f2s13pcma0i219nvfaf0qdprip57id"; 1263 + rev = "e9bd32d18430ee2c95b154d90533affc3ca6f62b"; 1264 + sha256 = "0g5ssg6363552fx7y74hl5wbmpmdz6z7y98jwa5y3dkq3xqh6ykn"; 1229 1265 }; 1230 1266 meta.homepage = "https://github.com/Shougo/deoplete.nvim/"; 1231 1267 }; ··· 1268 1304 1269 1305 diffview-nvim = buildVimPluginFrom2Nix { 1270 1306 pname = "diffview-nvim"; 1271 - version = "2021-05-21"; 1307 + version = "2021-06-03"; 1272 1308 src = fetchFromGitHub { 1273 1309 owner = "sindrets"; 1274 1310 repo = "diffview.nvim"; 1275 - rev = "991d633b162dd3dd03f50d1fde19366ab5943cb2"; 1276 - sha256 = "1n24ahzzbf66r6pjklca7ivydaxr8q03w4ib32bh8vmbk6b4x85g"; 1311 + rev = "e174aa0a1e8a65fd9699f190c67fd197c2afa09f"; 1312 + sha256 = "0skzir27vzg5h8w0c7hj2p2i0540m768i1vbgqwpgz7y7wkgpbcm"; 1277 1313 }; 1278 1314 meta.homepage = "https://github.com/sindrets/diffview.nvim/"; 1279 1315 }; ··· 1304 1340 1305 1341 dracula-vim = buildVimPluginFrom2Nix { 1306 1342 pname = "dracula-vim"; 1307 - version = "2021-05-19"; 1343 + version = "2021-06-04"; 1308 1344 src = fetchFromGitHub { 1309 1345 owner = "dracula"; 1310 1346 repo = "vim"; 1311 - rev = "c0337ceef66f87640ad02fa4e190a370a6ea6a7b"; 1312 - sha256 = "1007nq0av5lw1jix0dpw6ryvym7kyzq8088fa7baavdxbs0wyr0s"; 1347 + rev = "869f70a7603b77cdb2f63983dd286f3f61b7a966"; 1348 + sha256 = "031c000nr2raw0v6bdnisczjz20y5iw0yapj8wih0nc703dirhih"; 1313 1349 }; 1314 1350 meta.homepage = "https://github.com/dracula/vim/"; 1315 1351 }; 1316 1352 1317 1353 echodoc-vim = buildVimPluginFrom2Nix { 1318 1354 pname = "echodoc-vim"; 1319 - version = "2021-05-11"; 1355 + version = "2021-06-05"; 1320 1356 src = fetchFromGitHub { 1321 1357 owner = "Shougo"; 1322 1358 repo = "echodoc.vim"; 1323 - rev = "7dc1d45d7ffd275c06bf207795cf071ae6c9f1a4"; 1324 - sha256 = "1hxywy423ikfkmcyqm467j741mn0ar4c5k7li0liniygjwpiaxjm"; 1359 + rev = "d02232ff17517f9bc048f0d4a668ef00d57b5f6c"; 1360 + sha256 = "17m9nph5xk1dcd5l89asp2fw6jd97hsmr78ni67id23v9mjyqslk"; 1325 1361 }; 1326 1362 meta.homepage = "https://github.com/Shougo/echodoc.vim/"; 1327 1363 }; ··· 1571 1607 1572 1608 friendly-snippets = buildVimPluginFrom2Nix { 1573 1609 pname = "friendly-snippets"; 1574 - version = "2021-05-22"; 1610 + version = "2021-05-28"; 1575 1611 src = fetchFromGitHub { 1576 1612 owner = "rafamadriz"; 1577 1613 repo = "friendly-snippets"; 1578 - rev = "01a175fb02be0097fbaea20af354e37b0586a5a3"; 1579 - sha256 = "03pxfiz2y5n8v1pych1g98k0kziajhwacx2agrr9c4wwf4rv467j"; 1614 + rev = "496ccb632e1dd66ab4561304faa431125c0bf0de"; 1615 + sha256 = "1rbgji9x0bf8l7kqph77nfnpipy4d1863ml3wx75404q43nld7w8"; 1580 1616 }; 1581 1617 meta.homepage = "https://github.com/rafamadriz/friendly-snippets/"; 1582 1618 }; ··· 1763 1799 1764 1800 gitsigns-nvim = buildVimPluginFrom2Nix { 1765 1801 pname = "gitsigns-nvim"; 1766 - version = "2021-05-27"; 1802 + version = "2021-06-02"; 1767 1803 src = fetchFromGitHub { 1768 1804 owner = "lewis6991"; 1769 1805 repo = "gitsigns.nvim"; 1770 - rev = "f4a4fbe04dd829317b7918367b061b54408049d5"; 1771 - sha256 = "15ma584q9s60nbi8nxg3cj10m3a1ly00y2xzxdnpy9ik4n04s911"; 1806 + rev = "4e3e2626af9573758a4e8c0d463ff3b733d40644"; 1807 + sha256 = "01cr2a6xqzazyapkdlqjbxswsm9y7hnwl3bs7wcp23dwlpdvxc89"; 1772 1808 }; 1773 1809 meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/"; 1774 1810 }; ··· 1787 1823 1788 1824 glow-nvim = buildVimPluginFrom2Nix { 1789 1825 pname = "glow-nvim"; 1790 - version = "2021-05-26"; 1826 + version = "2021-05-29"; 1791 1827 src = fetchFromGitHub { 1792 1828 owner = "npxbr"; 1793 1829 repo = "glow.nvim"; 1794 - rev = "69bc59ab0bb1214234bbf06dbeb6233b21ff2fc5"; 1795 - sha256 = "0jqdalmaisj3gjlqa6kfh83va7a1gd7akggmr66vnccvfxfcdc54"; 1830 + rev = "d7f5eb0af3f2a51c2f493fec066015dc29184a4e"; 1831 + sha256 = "1180g55d6adj9jzx9dxld3345hw80vjjj3r8n7snba1m3c8jd5xm"; 1796 1832 }; 1797 1833 meta.homepage = "https://github.com/npxbr/glow.nvim/"; 1798 1834 }; ··· 1871 1907 1872 1908 gruvbox-nvim = buildVimPluginFrom2Nix { 1873 1909 pname = "gruvbox-nvim"; 1874 - version = "2021-05-12"; 1910 + version = "2021-06-05"; 1875 1911 src = fetchFromGitHub { 1876 1912 owner = "npxbr"; 1877 1913 repo = "gruvbox.nvim"; 1878 - rev = "86bc293204a6c13f1650378c39bf248bd5a5a22f"; 1879 - sha256 = "0if2ad8s9r3pwdsqlkl6y82r0a0z86c6vlkdp28m18sxv848psx5"; 1914 + rev = "ad076d46c76b884d7b555067d3434b3666c3b80b"; 1915 + sha256 = "0m4ks6gxh3clg4vg1rxyvhjjkmmwipb9s38zwbaidfqwifldjriy"; 1880 1916 }; 1881 1917 meta.homepage = "https://github.com/npxbr/gruvbox.nvim/"; 1882 1918 }; ··· 1979 2015 1980 2016 hop-nvim = buildVimPluginFrom2Nix { 1981 2017 pname = "hop-nvim"; 1982 - version = "2021-05-08"; 2018 + version = "2021-06-02"; 1983 2019 src = fetchFromGitHub { 1984 2020 owner = "phaazon"; 1985 2021 repo = "hop.nvim"; 1986 - rev = "3655626906859f572b8c4ce9dd9d69e2e1e43b81"; 1987 - sha256 = "1qjg77zkgfvw9y0g9ab0fg52lx223h60r4jmrqnv89i9b0bfmz6f"; 2022 + rev = "56727073356756a86c4b1be95d7c565e4ab1f11e"; 2023 + sha256 = "00ch6mhcxvqk7kshmi6rfm0n1wna47v5kcxjxwhndm79liq3h91b"; 1988 2024 }; 1989 2025 meta.homepage = "https://github.com/phaazon/hop.nvim/"; 1990 2026 }; ··· 2352 2388 2353 2389 LeaderF = buildVimPluginFrom2Nix { 2354 2390 pname = "LeaderF"; 2355 - version = "2021-05-27"; 2391 + version = "2021-06-03"; 2356 2392 src = fetchFromGitHub { 2357 2393 owner = "Yggdroot"; 2358 2394 repo = "LeaderF"; 2359 - rev = "78bc54d4244854c399447bf9ebd0c8af5f455dc1"; 2360 - sha256 = "1wiyqf4h00lf029533byynh6ijz6a4y8al2061wfxp6690hbl488"; 2395 + rev = "3849b6440299215e5168d569713d2a5540dfbf2b"; 2396 + sha256 = "17if75p3x4lkqncl296f3jdq0rcc69b0mgj0dbz6cl851bmqvy40"; 2361 2397 }; 2362 2398 meta.homepage = "https://github.com/Yggdroot/LeaderF/"; 2363 2399 }; 2364 2400 2365 2401 lean-vim = buildVimPluginFrom2Nix { 2366 2402 pname = "lean-vim"; 2367 - version = "2021-01-02"; 2403 + version = "2021-06-04"; 2368 2404 src = fetchFromGitHub { 2369 2405 owner = "leanprover"; 2370 2406 repo = "lean.vim"; 2371 - rev = "313fd1e09e7a14352f87d44c82005b6e6316c9bc"; 2372 - sha256 = "0f6jq0hliy4jignjc1d30bsvfkb4xl4nzj900hphbc7l2aw7scqr"; 2407 + rev = "fdf448398335434f4b5c45aff5f4ee64a3d090fa"; 2408 + sha256 = "0wi7837yy4x89w6gw72qkaxbb0vdm3hlxnkjplg2g4ibpayxx3s4"; 2373 2409 }; 2374 2410 meta.homepage = "https://github.com/leanprover/lean.vim/"; 2375 2411 }; 2376 2412 2377 2413 lens-vim = buildVimPluginFrom2Nix { 2378 2414 pname = "lens-vim"; 2379 - version = "2020-04-24"; 2415 + version = "2021-05-30"; 2380 2416 src = fetchFromGitHub { 2381 2417 owner = "camspiers"; 2382 2418 repo = "lens.vim"; 2383 - rev = "868b195be3cc3000d1d3f875ee0a52a11972e5b9"; 2384 - sha256 = "0qpx84k52pz29rx6q0zh3qq4g3a1gyvyfcipx3kaw4lxlld6agd5"; 2419 + rev = "099c3502d001f7081edf113de57e8b1cfd121c55"; 2420 + sha256 = "1h25isrw96qhfacf37h3anscnrisdxsz6vv7826hpb17r0ygb5ms"; 2385 2421 }; 2386 2422 meta.homepage = "https://github.com/camspiers/lens.vim/"; 2387 2423 }; ··· 2472 2508 2473 2509 lightline-vim = buildVimPluginFrom2Nix { 2474 2510 pname = "lightline-vim"; 2475 - version = "2021-05-27"; 2511 + version = "2021-05-30"; 2476 2512 src = fetchFromGitHub { 2477 2513 owner = "itchyny"; 2478 2514 repo = "lightline.vim"; 2479 - rev = "d5cea5b04841aedd6e3e46c736f2724be03a43e9"; 2480 - sha256 = "0yixqn80dh0av0kshz0dw8gbd52096bgdg7gj74rir8hh48bsngx"; 2515 + rev = "b06d921023cf6536bcbee5754071d122296e8942"; 2516 + sha256 = "1dsqssxgbglq6al6di9grxl24rgwidgd6jrc8d4gk6v6ymgzckl8"; 2481 2517 }; 2482 2518 meta.homepage = "https://github.com/itchyny/lightline.vim/"; 2483 2519 }; ··· 2544 2580 2545 2581 lsp_signature-nvim = buildVimPluginFrom2Nix { 2546 2582 pname = "lsp_signature-nvim"; 2547 - version = "2021-05-24"; 2583 + version = "2021-06-03"; 2548 2584 src = fetchFromGitHub { 2549 2585 owner = "ray-x"; 2550 2586 repo = "lsp_signature.nvim"; 2551 - rev = "1ebfa3e9c9168d7ee9201abdcc86c07a8f9b89db"; 2552 - sha256 = "17wqqhi9fslv3b7f79cx33bgvahx9mfl9f04vpm9417b0dc77359"; 2587 + rev = "5aca93b10b571a8dfafd2c9e850239dfa2094a6f"; 2588 + sha256 = "1k8k7zq03jnvh4328i0s0d87g9s5y2yc94wnpg059clmp1cizcq4"; 2553 2589 }; 2554 2590 meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/"; 2555 2591 }; ··· 2592 2628 2593 2629 lush-nvim = buildVimPluginFrom2Nix { 2594 2630 pname = "lush-nvim"; 2595 - version = "2021-05-26"; 2631 + version = "2021-06-01"; 2596 2632 src = fetchFromGitHub { 2597 2633 owner = "rktjmp"; 2598 2634 repo = "lush.nvim"; 2599 - rev = "b39af94cb4154a3f0887e94d0a4d5f4ae8f92656"; 2600 - sha256 = "015q2lkihhb8cgbxxc4f7d4w7sqc67wyaavjany3pj0528rrv97d"; 2635 + rev = "684c06d4879a38e50a247ce23b32beaacc75c4d1"; 2636 + sha256 = "1khws788sww2dw4s3nqyigyxi7099kqh60dabs66hj9byb84irql"; 2601 2637 }; 2602 2638 meta.homepage = "https://github.com/rktjmp/lush.nvim/"; 2603 2639 }; ··· 2676 2712 2677 2713 minimap-vim = buildVimPluginFrom2Nix { 2678 2714 pname = "minimap-vim"; 2679 - version = "2021-04-13"; 2715 + version = "2021-06-03"; 2680 2716 src = fetchFromGitHub { 2681 2717 owner = "wfxr"; 2682 2718 repo = "minimap.vim"; 2683 - rev = "6afcca86b2274b43de9d39e3c1235f4b0f659129"; 2684 - sha256 = "08wabfqhj697qy92jrf6mzbhjbybyil45fsvhn6q3ffl161gvsak"; 2719 + rev = "b2c27ca4b25dedef968f3e746533bb973b148c34"; 2720 + sha256 = "0wx1hk7ml4r49gdfqnww1002c5aw4dgndlrhwy8fhyvg8117902r"; 2685 2721 }; 2686 2722 meta.homepage = "https://github.com/wfxr/minimap.vim/"; 2687 2723 }; 2688 2724 2689 2725 mkdx = buildVimPluginFrom2Nix { 2690 2726 pname = "mkdx"; 2691 - version = "2021-05-21"; 2727 + version = "2021-05-28"; 2692 2728 src = fetchFromGitHub { 2693 2729 owner = "SidOfc"; 2694 2730 repo = "mkdx"; 2695 - rev = "b45099a18e88cd61c93a073e2b15cc6025e4774e"; 2696 - sha256 = "0yawlfnghbkr3bcqqcf3znsdjjbh13a46dhkn4sj108adc9c4y56"; 2731 + rev = "e129e3c7d92477563aeb068628ee0ccdd46ed36e"; 2732 + sha256 = "0q0cyigkszw0qsdvg9dxs293sf8hbmwwy6qxlknmrfiy5xyn6ik5"; 2697 2733 }; 2698 2734 meta.homepage = "https://github.com/SidOfc/mkdx/"; 2699 2735 }; ··· 3000 3036 3001 3037 neogit = buildVimPluginFrom2Nix { 3002 3038 pname = "neogit"; 3003 - version = "2021-05-17"; 3039 + version = "2021-06-03"; 3004 3040 src = fetchFromGitHub { 3005 3041 owner = "TimUntersberger"; 3006 3042 repo = "neogit"; 3007 - rev = "4095c328558bfa5c28bbb7b53e921219c45a450f"; 3008 - sha256 = "0cw7hfnrw4r25zcvr38sf6i8vjzhd4ndkj7mybyh6ykwjc646pmq"; 3043 + rev = "f0a22c4609e6f090afdcb147242a2e96ac763f4a"; 3044 + sha256 = "09y03krzg2wl0mlgvc3shvdbvjr8ga69amknbfzvnmplmqyji0g5"; 3009 3045 }; 3010 3046 meta.homepage = "https://github.com/TimUntersberger/neogit/"; 3011 3047 }; ··· 3024 3060 3025 3061 neomake = buildVimPluginFrom2Nix { 3026 3062 pname = "neomake"; 3027 - version = "2021-05-24"; 3063 + version = "2021-06-02"; 3028 3064 src = fetchFromGitHub { 3029 3065 owner = "neomake"; 3030 3066 repo = "neomake"; 3031 - rev = "df653c87bb04753755995579218c3b8bc1639383"; 3032 - sha256 = "1kn23xknakxx5r7n92cpzrvng0nh8gnf1kmr63d1gzsk6a3yh5aw"; 3067 + rev = "3663e065b4f3d0c4a1144b668129ef43e0d8ff10"; 3068 + sha256 = "0l87p48lyx78a9ayqygpba76z04ld64w747m0mrdlgci0x8jnqb7"; 3033 3069 }; 3034 3070 meta.homepage = "https://github.com/neomake/neomake/"; 3035 3071 }; ··· 3060 3096 3061 3097 neosnippet-vim = buildVimPluginFrom2Nix { 3062 3098 pname = "neosnippet-vim"; 3063 - version = "2020-09-10"; 3099 + version = "2021-06-05"; 3064 3100 src = fetchFromGitHub { 3065 3101 owner = "Shougo"; 3066 3102 repo = "neosnippet.vim"; 3067 - rev = "30b6b53b7a86b84371714b4a0f092d5d303c4a35"; 3068 - sha256 = "0q06a0wq2aqgkjc5jndccffibr85hf33w2igcah3x6dl203p4ips"; 3103 + rev = "5d65a8fde5c3f4dfc0dc1a13639515948d8a28a5"; 3104 + sha256 = "1iaapjpx91kcz9h2gp7vzgj7lnjs86g0iqkg3vgr04kj9lsvj3j7"; 3069 3105 }; 3070 3106 meta.homepage = "https://github.com/Shougo/neosnippet.vim/"; 3071 3107 }; ··· 3096 3132 3097 3133 neovim-fuzzy = buildVimPluginFrom2Nix { 3098 3134 pname = "neovim-fuzzy"; 3099 - version = "2020-09-16"; 3135 + version = "2021-04-24"; 3100 3136 src = fetchFromGitHub { 3101 3137 owner = "cloudhead"; 3102 3138 repo = "neovim-fuzzy"; 3103 - rev = "78f4d79f703aff49c9bcee5d527234c2f64425d5"; 3104 - sha256 = "1dq79jabyyyphgigqac9jf7hhadfh336fm8hklh1d64xlzyrfp6s"; 3139 + rev = "46f908aedef6af039c5134056ad008fe7aae1cbc"; 3140 + sha256 = "0mszwcvj61y9jqxc0vgghjl1x0xxvy7mqspmv3ikd8sglg54gz2d"; 3105 3141 }; 3106 3142 meta.homepage = "https://github.com/cloudhead/neovim-fuzzy/"; 3107 3143 }; ··· 3132 3168 3133 3169 nerdcommenter = buildVimPluginFrom2Nix { 3134 3170 pname = "nerdcommenter"; 3135 - version = "2021-04-30"; 3171 + version = "2021-05-29"; 3136 3172 src = fetchFromGitHub { 3137 3173 owner = "preservim"; 3138 3174 repo = "nerdcommenter"; 3139 - rev = "ab475e1325ad6eaec15a3113f201a4e4a3ee2811"; 3140 - sha256 = "00zmrgb8f2i0i00xbqnidxln6bkz740q09cj7kysk5142z27435q"; 3175 + rev = "a5d1663185bee20bfb120c9ab212144444514982"; 3176 + sha256 = "03799774h9f7k52gwjnhjjm2w9s6ip5zdrpljinwp6lfavxd4w8a"; 3141 3177 }; 3142 3178 meta.homepage = "https://github.com/preservim/nerdcommenter/"; 3143 3179 }; ··· 3156 3192 3157 3193 nerdtree-git-plugin = buildVimPluginFrom2Nix { 3158 3194 pname = "nerdtree-git-plugin"; 3159 - version = "2021-05-17"; 3195 + version = "2021-06-04"; 3160 3196 src = fetchFromGitHub { 3161 3197 owner = "Xuyuanp"; 3162 3198 repo = "nerdtree-git-plugin"; 3163 - rev = "4524fb465b11881409482636ae716b4965011550"; 3164 - sha256 = "0cvb33drkv3rrgbniw9bz8xkxyr4cf0lyay9waw3lczpl2wmfwbm"; 3199 + rev = "bca0ed63883d028e6afc7f11a78c56fcaf34d363"; 3200 + sha256 = "1j5llx2l36hgr10mjjdrp8xdv9mhmc6panpjgdxzdg5ncwn4ndzm"; 3165 3201 }; 3166 3202 meta.homepage = "https://github.com/Xuyuanp/nerdtree-git-plugin/"; 3167 3203 }; ··· 3216 3252 3217 3253 nnn-vim = buildVimPluginFrom2Nix { 3218 3254 pname = "nnn-vim"; 3219 - version = "2021-05-21"; 3255 + version = "2021-05-30"; 3220 3256 src = fetchFromGitHub { 3221 3257 owner = "mcchrish"; 3222 3258 repo = "nnn.vim"; 3223 - rev = "065bf84b0b86266b267adfc2584e67eabef49815"; 3224 - sha256 = "1v2jckl4gaai77rqnv1hwv4bb0d6vyk7hy63nlyy3fcnc1z1ic8v"; 3259 + rev = "fb80ed60c642b1f3666125c3051bd2da34453eeb"; 3260 + sha256 = "1p87dc296icb2kpyzlflpzbaq5z2yg106mpsxxzmwzn949smsk7l"; 3225 3261 }; 3226 3262 meta.homepage = "https://github.com/mcchrish/nnn.vim/"; 3227 3263 }; ··· 3240 3276 3241 3277 nord-nvim = buildVimPluginFrom2Nix { 3242 3278 pname = "nord-nvim"; 3243 - version = "2021-05-22"; 3279 + version = "2021-06-02"; 3244 3280 src = fetchFromGitHub { 3245 3281 owner = "shaunsingh"; 3246 3282 repo = "nord.nvim"; 3247 - rev = "6860c64a3002f6dbcf36c0baf7bda8c34c5083c8"; 3248 - sha256 = "0a036xgsklqv2zwlcpyhdrip8mvgqhyb4vcsp7gwp5241917bia3"; 3283 + rev = "6965333869ca172a18606c93d6f6c1275fb9aabb"; 3284 + sha256 = "0nljk4ncxz5syf0wr29j3bdxdw5bjpjn879ls1r910hicn4lg468"; 3249 3285 }; 3250 3286 meta.homepage = "https://github.com/shaunsingh/nord.nvim/"; 3251 3287 }; ··· 3264 3300 3265 3301 nvcode-color-schemes-vim = buildVimPluginFrom2Nix { 3266 3302 pname = "nvcode-color-schemes-vim"; 3267 - version = "2021-04-29"; 3303 + version = "2021-06-02"; 3268 3304 src = fetchFromGitHub { 3269 3305 owner = "ChristianChiarulli"; 3270 3306 repo = "nvcode-color-schemes.vim"; 3271 - rev = "940f2eb232091f970e45232e9c96e5aac7d670de"; 3272 - sha256 = "1sxi0dhbqg6fg23n8m069z6issyng18hbq9v7rxnzw90mqp0y5zb"; 3307 + rev = "7c85366c9d457ed0e3c3532ee312307476afbbdc"; 3308 + sha256 = "02hxjwi8g07zhx6xagma5m3sa0j4ljg79377zfn2vy4snnib452p"; 3273 3309 }; 3274 3310 meta.homepage = "https://github.com/ChristianChiarulli/nvcode-color-schemes.vim/"; 3275 3311 }; ··· 3288 3324 3289 3325 nvim-autopairs = buildVimPluginFrom2Nix { 3290 3326 pname = "nvim-autopairs"; 3291 - version = "2021-05-26"; 3327 + version = "2021-06-05"; 3292 3328 src = fetchFromGitHub { 3293 3329 owner = "windwp"; 3294 3330 repo = "nvim-autopairs"; 3295 - rev = "b5816204bd2f92f1c64dff132fbd67a1530c1751"; 3296 - sha256 = "1w0cw7pp7szqsgq734j4zv8c7jcjblpmfa6iw1r0bpi2jgplb5ha"; 3331 + rev = "b09ab7495e55f09293500aacf460d176f942504d"; 3332 + sha256 = "05w7bjn1iy1qa3ni12vm9p28y4bsz4kkfgmcs44152qmcqj13wp1"; 3297 3333 }; 3298 3334 meta.homepage = "https://github.com/windwp/nvim-autopairs/"; 3299 3335 }; ··· 3312 3348 3313 3349 nvim-bqf = buildVimPluginFrom2Nix { 3314 3350 pname = "nvim-bqf"; 3315 - version = "2021-05-21"; 3351 + version = "2021-06-02"; 3316 3352 src = fetchFromGitHub { 3317 3353 owner = "kevinhwang91"; 3318 3354 repo = "nvim-bqf"; 3319 - rev = "3754935f6c6b9eaae203fe9d4620e2d3e1a8f0ef"; 3320 - sha256 = "16rf7i540mahmlb9mdk5g02ax1v5wkh3fyiy9if8zirf47ywcczd"; 3355 + rev = "554ae68f404492c8d37381545b9a785fda30c26e"; 3356 + sha256 = "0z6xb6wsq5kjcnyiqbp2ik97yl2kb9hxy0rfccfswh5pgmfv2z1i"; 3321 3357 }; 3322 3358 meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/"; 3323 3359 }; 3324 3360 3325 3361 nvim-bufferline-lua = buildVimPluginFrom2Nix { 3326 3362 pname = "nvim-bufferline-lua"; 3327 - version = "2021-05-26"; 3363 + version = "2021-06-01"; 3328 3364 src = fetchFromGitHub { 3329 3365 owner = "akinsho"; 3330 3366 repo = "nvim-bufferline.lua"; 3331 - rev = "026c12d7e4f85c570acf8be4c69c282acbe18953"; 3332 - sha256 = "0l4y15rzhjjgqkdryj399xgnmz1c3ga8li9j8m4qf98isbmqhsws"; 3367 + rev = "883cd1b0d8029c97bb6c3358b8e55c040b0c7bcb"; 3368 + sha256 = "06mcl11jx56wym2jfinpbklpfn55d6j35yy80dv9dy8072mb5f9f"; 3333 3369 }; 3334 3370 meta.homepage = "https://github.com/akinsho/nvim-bufferline.lua/"; 3335 3371 }; ··· 3360 3396 3361 3397 nvim-compe = buildVimPluginFrom2Nix { 3362 3398 pname = "nvim-compe"; 3363 - version = "2021-05-27"; 3399 + version = "2021-06-02"; 3364 3400 src = fetchFromGitHub { 3365 3401 owner = "hrsh7th"; 3366 3402 repo = "nvim-compe"; 3367 - rev = "c7cd3bf1380ce3c6ef2a55537ace40c3a3897c50"; 3368 - sha256 = "0pqka3wi169l8d58hlixhyi9yng62p1ic6fnl2vgbydi72xd1ngd"; 3403 + rev = "310488302c6532646adfe8228e40187a80b36ac5"; 3404 + sha256 = "1anfrybaliyaxgi8iv55hncnac8xgizqw9b9047lw2grkybmrdn4"; 3369 3405 }; 3370 3406 meta.homepage = "https://github.com/hrsh7th/nvim-compe/"; 3371 3407 }; ··· 3384 3420 3385 3421 nvim-dap = buildVimPluginFrom2Nix { 3386 3422 pname = "nvim-dap"; 3387 - version = "2021-05-21"; 3423 + version = "2021-06-03"; 3388 3424 src = fetchFromGitHub { 3389 3425 owner = "mfussenegger"; 3390 3426 repo = "nvim-dap"; 3391 - rev = "260d13945348966f695c46e4c711001066f47300"; 3392 - sha256 = "02nkr4wz63r973myyvvfs5wmdichcxaj0iika0z4j7mh59nqzvha"; 3427 + rev = "826a1931fdf1b3b67a0b456aa3abc1b72185a7a7"; 3428 + sha256 = "0g8x9vk9qv16zlbvx3h8w2vhnqyycssn5v4y8sdhsnhyjljsjygz"; 3393 3429 }; 3394 3430 meta.homepage = "https://github.com/mfussenegger/nvim-dap/"; 3395 3431 }; 3396 3432 3397 3433 nvim-dap-ui = buildVimPluginFrom2Nix { 3398 3434 pname = "nvim-dap-ui"; 3399 - version = "2021-05-27"; 3435 + version = "2021-05-31"; 3400 3436 src = fetchFromGitHub { 3401 3437 owner = "rcarriga"; 3402 3438 repo = "nvim-dap-ui"; 3403 - rev = "bb291ba853759f455e421892a955d67cc8e88173"; 3404 - sha256 = "0wlfh0mgdhlnvwl7m7bdzj7kks9f5hnm2k3awnyl8a14rjl00i0i"; 3439 + rev = "055b143fdd23fee1d86247a8ec7c43c84a2a896b"; 3440 + sha256 = "0v9mxpr5m01w948ddh598k1vzaiyq2zl6fkykbpzkijhk8qvjnv9"; 3405 3441 }; 3406 3442 meta.homepage = "https://github.com/rcarriga/nvim-dap-ui/"; 3407 3443 }; ··· 3420 3456 3421 3457 nvim-gdb = buildVimPluginFrom2Nix { 3422 3458 pname = "nvim-gdb"; 3423 - version = "2021-05-24"; 3459 + version = "2021-05-30"; 3424 3460 src = fetchFromGitHub { 3425 3461 owner = "sakhnik"; 3426 3462 repo = "nvim-gdb"; 3427 - rev = "9a6e8268878352b9ea3087ab745b894531e5e335"; 3428 - sha256 = "1mbjsab96r99hzjh78dsk7cwmn59mgzkr0y6mm6i81g0zz9d9cya"; 3463 + rev = "60994408e6684fb776bcfb80c456cbdf8bc6eb93"; 3464 + sha256 = "044bgiyhi4db5avajry9v168gz55xn6yzr83j610k95hh2aam08a"; 3429 3465 }; 3430 3466 meta.homepage = "https://github.com/sakhnik/nvim-gdb/"; 3431 3467 }; 3432 3468 3433 3469 nvim-highlite = buildVimPluginFrom2Nix { 3434 3470 pname = "nvim-highlite"; 3435 - version = "2021-04-01"; 3471 + version = "2021-05-29"; 3436 3472 src = fetchFromGitHub { 3437 3473 owner = "Iron-E"; 3438 3474 repo = "nvim-highlite"; 3439 - rev = "ff28f2dde464a9e105c7dc041127eb60059d955a"; 3440 - sha256 = "089019br0f3massc2sz3l0r8cjc33i5qqwbm4k7cz50x71g89wrq"; 3475 + rev = "9c15a789df5af1d3c83c0d680154ca226253eb26"; 3476 + sha256 = "0dz3bbyrwgxvsdmix2h6xbgj7wv9zbj08wgy46sjhzdhaxdfjx4z"; 3441 3477 }; 3442 3478 meta.homepage = "https://github.com/Iron-E/nvim-highlite/"; 3443 3479 }; 3444 3480 3445 3481 nvim-hlslens = buildVimPluginFrom2Nix { 3446 3482 pname = "nvim-hlslens"; 3447 - version = "2021-05-26"; 3483 + version = "2021-06-04"; 3448 3484 src = fetchFromGitHub { 3449 3485 owner = "kevinhwang91"; 3450 3486 repo = "nvim-hlslens"; 3451 - rev = "1ec700d81aae9369ee16b5dfb421153377c4bdee"; 3452 - sha256 = "08vi23gaccm0whswg8jsb5pvbcdci51w61m7x079yfarablz1h6c"; 3487 + rev = "d5ba4abab33808dbf653cc8270d82561f96b220b"; 3488 + sha256 = "0qyb6fjjcgjifkgvcy475gxplbvdvzd51z7xv2m7gshy6m4vlzk6"; 3453 3489 }; 3454 3490 meta.homepage = "https://github.com/kevinhwang91/nvim-hlslens/"; 3455 3491 }; ··· 3468 3504 3469 3505 nvim-jdtls = buildVimPluginFrom2Nix { 3470 3506 pname = "nvim-jdtls"; 3471 - version = "2021-05-25"; 3507 + version = "2021-06-03"; 3472 3508 src = fetchFromGitHub { 3473 3509 owner = "mfussenegger"; 3474 3510 repo = "nvim-jdtls"; 3475 - rev = "f39758c426c9409ff35ef730b324bc8cd267a5ef"; 3476 - sha256 = "11md1s3yqyzr4w5ii6d2dqh9njjc6sglpfgh18mgnx8y6fk23r58"; 3511 + rev = "8bd4eac08c637961b10ac01c124fb5091484c265"; 3512 + sha256 = "0jjsq718m0c1f45k9b68z0inlhy5nas48ff5yd0v29qlcv01w3wf"; 3477 3513 }; 3478 3514 meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/"; 3479 3515 }; ··· 3492 3528 3493 3529 nvim-lspconfig = buildVimPluginFrom2Nix { 3494 3530 pname = "nvim-lspconfig"; 3495 - version = "2021-05-25"; 3531 + version = "2021-06-03"; 3496 3532 src = fetchFromGitHub { 3497 3533 owner = "neovim"; 3498 3534 repo = "nvim-lspconfig"; 3499 - rev = "6a25eb0d3fc77cd1b9ff11446dc52d50bc482155"; 3500 - sha256 = "0chb6d3v2n5wka4fgw49rzxqd1vwl7mwwb5z13hvylxbad098n1l"; 3535 + rev = "62c04242031ed65a8d29ebefaaf645e8e3375748"; 3536 + sha256 = "1g1s85dzz7lr3ky90m27m8f3s06xm4c87z96vwzaaajb28927774"; 3501 3537 }; 3502 3538 meta.homepage = "https://github.com/neovim/nvim-lspconfig/"; 3503 3539 }; ··· 3564 3600 3565 3601 nvim-toggleterm-lua = buildVimPluginFrom2Nix { 3566 3602 pname = "nvim-toggleterm-lua"; 3567 - version = "2021-05-26"; 3603 + version = "2021-06-01"; 3568 3604 src = fetchFromGitHub { 3569 3605 owner = "akinsho"; 3570 3606 repo = "nvim-toggleterm.lua"; 3571 - rev = "9215c1955c30b08779bcf1043964a49a9aaf0da8"; 3572 - sha256 = "1w1bxinkn1walx4svjcjwci2h6vwn2jyiyrykvzcr55gnm5dr5kd"; 3607 + rev = "53134b08a5a5e66f343c4e431966a0a19ce2d162"; 3608 + sha256 = "00gxkl87f8gawil9bdxa5s15yswc1ac4y9c5vx3kmhv6g5ipcrrn"; 3573 3609 }; 3574 3610 meta.homepage = "https://github.com/akinsho/nvim-toggleterm.lua/"; 3575 3611 }; 3576 3612 3577 3613 nvim-tree-lua = buildVimPluginFrom2Nix { 3578 3614 pname = "nvim-tree-lua"; 3579 - version = "2021-05-27"; 3615 + version = "2021-06-05"; 3580 3616 src = fetchFromGitHub { 3581 3617 owner = "kyazdani42"; 3582 3618 repo = "nvim-tree.lua"; 3583 - rev = "23935ff0036e26dbfe14e6aee96a7653ee704336"; 3584 - sha256 = "07pvxjijp1k932i1pzw0szd5dqxrh2g4br70z0h149252hya4fkf"; 3619 + rev = "f56ac7884c9b12343d66a2bacf90097af3c58cf6"; 3620 + sha256 = "0v2aznndmc5bsipqbj4q40qqmv384z6k5xh17yfcp7a6iak5zzjq"; 3585 3621 }; 3586 3622 meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/"; 3587 3623 }; 3588 3624 3589 3625 nvim-treesitter = buildVimPluginFrom2Nix { 3590 3626 pname = "nvim-treesitter"; 3591 - version = "2021-05-26"; 3627 + version = "2021-06-04"; 3592 3628 src = fetchFromGitHub { 3593 3629 owner = "nvim-treesitter"; 3594 3630 repo = "nvim-treesitter"; 3595 - rev = "6c2ff319b311fed0160875b878811431399889cf"; 3596 - sha256 = "0vl782k8p5l2gm3y247a70ksrdn863gsv1z47frfnpq30ayxz0mx"; 3631 + rev = "b5d603a876fe8c89e96a9cac2dac2dd375479dac"; 3632 + sha256 = "1x2cn0v7yyqlwz8g4vqxh0vai372946a1akbg50pldq24jxm8j0q"; 3597 3633 }; 3598 3634 meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/"; 3599 3635 }; ··· 3636 3672 3637 3673 nvim-treesitter-textobjects = buildVimPluginFrom2Nix { 3638 3674 pname = "nvim-treesitter-textobjects"; 3639 - version = "2021-05-11"; 3675 + version = "2021-06-02"; 3640 3676 src = fetchFromGitHub { 3641 3677 owner = "nvim-treesitter"; 3642 3678 repo = "nvim-treesitter-textobjects"; 3643 - rev = "4f1ace57fbeed1f4e5613ea8c9b414ff0833eade"; 3644 - sha256 = "1in2q3igq74m900rkchdcgfcy3h60663b58xn2ydlbjsbzhc7vrn"; 3679 + rev = "cadb8110817884fff506043497c0f2b92026aacb"; 3680 + sha256 = "01f1913r1q1x1qwp6l6xrqxfc9lffngnc8js5n37r7naszc9r7w8"; 3645 3681 }; 3646 3682 meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/"; 3647 3683 }; 3648 3684 3649 3685 nvim-ts-rainbow = buildVimPluginFrom2Nix { 3650 3686 pname = "nvim-ts-rainbow"; 3651 - version = "2021-05-26"; 3687 + version = "2021-06-04"; 3652 3688 src = fetchFromGitHub { 3653 3689 owner = "p00f"; 3654 3690 repo = "nvim-ts-rainbow"; 3655 - rev = "de234084fb82ff40ac593410409c77a542456415"; 3656 - sha256 = "1nw53jxdll34xml9064cl65p33cnv2pg9bbg4697wqdhs7rm4z27"; 3691 + rev = "0fffdcb37cf7d43bc138c89eb002957819c748af"; 3692 + sha256 = "0xd79f7a7zyqj6yzkjanli8r4wjhy17gsp1wl7p7vws6axrbgvjl"; 3657 3693 }; 3658 3694 meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/"; 3659 3695 }; ··· 3732 3768 3733 3769 one-nvim = buildVimPluginFrom2Nix { 3734 3770 pname = "one-nvim"; 3735 - version = "2021-05-05"; 3771 + version = "2021-06-02"; 3736 3772 src = fetchFromGitHub { 3737 3773 owner = "Th3Whit3Wolf"; 3738 3774 repo = "one-nvim"; 3739 - rev = "75e845eacc23f544b8990b5b6d10d8edf58cacfe"; 3740 - sha256 = "0zwz2kak0hk0kam0klh3ydynlw814g56vrqdn679ca6xqwzcihy3"; 3775 + rev = "d6e62bc7cdfae97d1ffc4f508a43955664ad5b73"; 3776 + sha256 = "0bna2kpvaxvwglgmdgp1g93bcygvnc1c25w4isawlgmsclzz9cc6"; 3741 3777 }; 3742 3778 meta.homepage = "https://github.com/Th3Whit3Wolf/one-nvim/"; 3743 3779 }; 3744 3780 3745 3781 onedark-vim = buildVimPluginFrom2Nix { 3746 3782 pname = "onedark-vim"; 3747 - version = "2021-05-24"; 3783 + version = "2021-06-02"; 3748 3784 src = fetchFromGitHub { 3749 3785 owner = "joshdick"; 3750 3786 repo = "onedark.vim"; 3751 - rev = "ff7b30ebd2faed7bf2de599ec9f340cffb29a4a4"; 3752 - sha256 = "0irzprhgx5l6il45zw0ivg6fp38h73cd9x10mkn74jxa0djghp76"; 3787 + rev = "f209c5b6741e6cf847bf4a77e19f2fbf6ffc5290"; 3788 + sha256 = "146ypfx9rxcfp031a4zhzns637bjsf0bznplgyfmz3zjarj85422"; 3753 3789 }; 3754 3790 meta.homepage = "https://github.com/joshdick/onedark.vim/"; 3755 3791 }; ··· 3792 3828 3793 3829 packer-nvim = buildVimPluginFrom2Nix { 3794 3830 pname = "packer-nvim"; 3795 - version = "2021-05-27"; 3831 + version = "2021-06-03"; 3796 3832 src = fetchFromGitHub { 3797 3833 owner = "wbthomason"; 3798 3834 repo = "packer.nvim"; 3799 - rev = "a41f6abb3fd0479aab1957c7891531b933154a5f"; 3800 - sha256 = "0khylm6w46gs8j4czvfbgdbh5gdidvlgv4hm2vjglv2dblzm2vdn"; 3835 + rev = "3715ce44c0aae69471511bd93789ccf578c9684c"; 3836 + sha256 = "1xcfmv7dn975hqa1izn4h80vpn3yksm8ali6nbxv62sij6m9na48"; 3801 3837 }; 3802 3838 meta.homepage = "https://github.com/wbthomason/packer.nvim/"; 3803 3839 }; ··· 3888 3924 3889 3925 playground = buildVimPluginFrom2Nix { 3890 3926 pname = "playground"; 3891 - version = "2021-05-07"; 3927 + version = "2021-05-28"; 3892 3928 src = fetchFromGitHub { 3893 3929 owner = "nvim-treesitter"; 3894 3930 repo = "playground"; 3895 - rev = "79f71e2bd73978dfc7d228042d5e90c8545df623"; 3896 - sha256 = "1yrf0bdfn7xqmkzzwkzcf2hbcyaf21va3nd7fr5c9f4cvin3p0vr"; 3931 + rev = "1e02dece0daa4bef6a24c7a8b6edd48169885b18"; 3932 + sha256 = "182nkdzcviz3ap3vphcks4gzw99d4jsmxxlkmb42m0gzd54k1hwq"; 3897 3933 }; 3898 3934 meta.homepage = "https://github.com/nvim-treesitter/playground/"; 3899 3935 }; 3900 3936 3901 3937 plenary-nvim = buildVimPluginFrom2Nix { 3902 3938 pname = "plenary-nvim"; 3903 - version = "2021-05-08"; 3939 + version = "2021-06-02"; 3904 3940 src = fetchFromGitHub { 3905 3941 owner = "nvim-lua"; 3906 3942 repo = "plenary.nvim"; 3907 - rev = "3f993308024697186c02d51df1330bf07c12535a"; 3908 - sha256 = "0riw3wy94qhbdvx32nmlc1s85n3ykg64n45p7i7mii0cd17mqm27"; 3943 + rev = "3834d42236c155bb4240fb4008ea6e62c4a21dae"; 3944 + sha256 = "1y9aqpb6j36873kcp8dbv5mm04qccjicrs0z0z9cy53s8sgfx558"; 3909 3945 }; 3910 3946 meta.homepage = "https://github.com/nvim-lua/plenary.nvim/"; 3911 3947 }; ··· 3973 4009 3974 4010 psc-ide-vim = buildVimPluginFrom2Nix { 3975 4011 pname = "psc-ide-vim"; 3976 - version = "2019-09-17"; 4012 + version = "2021-05-31"; 3977 4013 src = fetchFromGitHub { 3978 4014 owner = "frigoeu"; 3979 4015 repo = "psc-ide-vim"; 3980 - rev = "5fb4e329e5c0c7d80f0356ab4028eee9c8bd3465"; 3981 - sha256 = "0gzbxsq6wh8d9z9vyrff4hdpc66yg9y8hnxq4kjrz9qrccc75c1f"; 4016 + rev = "20ff325813ab114d70573a6768565a36aba796b9"; 4017 + sha256 = "1s79rz8rjp9bqw4yn97wbmzkc6jav4nixvnky22vbma2d0ckkcm0"; 3982 4018 }; 3983 4019 meta.homepage = "https://github.com/frigoeu/psc-ide-vim/"; 3984 4020 }; ··· 4129 4165 4130 4166 registers-nvim = buildVimPluginFrom2Nix { 4131 4167 pname = "registers-nvim"; 4132 - version = "2021-05-27"; 4168 + version = "2021-05-28"; 4133 4169 src = fetchFromGitHub { 4134 4170 owner = "tversteeg"; 4135 4171 repo = "registers.nvim"; 4136 - rev = "016d969788bf01dae310570868c4d1e04ab42e31"; 4137 - sha256 = "1sifwa97laaijssqnn6b691zckkybaprpschvm983k5awcswy4jd"; 4172 + rev = "34bbf868da6ef0225739e7977a4063872cd2b1e8"; 4173 + sha256 = "0ghy760dc07xwjaf5ci2di8qfq0qip8jyrp7x0rsl820ryy7rggy"; 4138 4174 }; 4139 4175 meta.homepage = "https://github.com/tversteeg/registers.nvim/"; 4140 4176 }; ··· 4225 4261 4226 4262 rust-tools-nvim = buildVimPluginFrom2Nix { 4227 4263 pname = "rust-tools-nvim"; 4228 - version = "2021-05-16"; 4264 + version = "2021-06-03"; 4229 4265 src = fetchFromGitHub { 4230 4266 owner = "simrat39"; 4231 4267 repo = "rust-tools.nvim"; 4232 - rev = "6f92ba636c06069592c64f85888b452da7e81cfd"; 4233 - sha256 = "1ng259hs6l6q17hc3y2iyd7v9xm6mkfg0jbpwgrbk4pf2clpn2aa"; 4268 + rev = "177507f1443be150250ce90c18f5f6fb8d798543"; 4269 + sha256 = "0wj6pccjbcvj42i4516y6wjrssyl3p060454yjxhgqnnnzxc2dh4"; 4234 4270 }; 4235 4271 meta.homepage = "https://github.com/simrat39/rust-tools.nvim/"; 4236 4272 }; ··· 4273 4309 4274 4310 scrollbar-nvim = buildVimPluginFrom2Nix { 4275 4311 pname = "scrollbar-nvim"; 4276 - version = "2020-09-28"; 4312 + version = "2021-06-04"; 4277 4313 src = fetchFromGitHub { 4278 4314 owner = "Xuyuanp"; 4279 4315 repo = "scrollbar.nvim"; 4280 - rev = "72a4174a47a89b7f89401fc66de0df95580fa48c"; 4281 - sha256 = "10kk74pmbzc4v70n8vwb2zk0ayr147xy9zk2sbr78zwqf12gas9y"; 4316 + rev = "c338467dd6ef141fa8ce3172097a1f5be6c43779"; 4317 + sha256 = "1wvzdrj8gckhh6x4szipjjb6mg0v3ix5cq5dy83lfb28psyznshw"; 4282 4318 }; 4283 4319 meta.homepage = "https://github.com/Xuyuanp/scrollbar.nvim/"; 4284 4320 }; ··· 4441 4477 4442 4478 sonokai = buildVimPluginFrom2Nix { 4443 4479 pname = "sonokai"; 4444 - version = "2021-05-22"; 4480 + version = "2021-06-01"; 4445 4481 src = fetchFromGitHub { 4446 4482 owner = "sainnhe"; 4447 4483 repo = "sonokai"; 4448 - rev = "53e874723f4564a12ca0af30541dca4a9d315556"; 4449 - sha256 = "1wbwpawmlc25wdnmhidrj9k591zqc2srszh20xv60p0dg2aylmx5"; 4484 + rev = "9dd432b1bce0bd448faf22375fcf6311ff0d4226"; 4485 + sha256 = "0asqmnyizcyg5drfhbm52l654q3s5ibvbnd8n45kbcn3cnaqb148"; 4450 4486 }; 4451 4487 meta.homepage = "https://github.com/sainnhe/sonokai/"; 4452 4488 }; ··· 4574 4610 4575 4611 srcery-vim = buildVimPluginFrom2Nix { 4576 4612 pname = "srcery-vim"; 4577 - version = "2021-05-25"; 4613 + version = "2021-06-01"; 4578 4614 src = fetchFromGitHub { 4579 4615 owner = "srcery-colors"; 4580 4616 repo = "srcery-vim"; 4581 - rev = "44eadc74ff42ced89e85300d69f8297ffe11589e"; 4582 - sha256 = "1k090cy50z6rsh26z6bqw81h60jl7pnjjdfkv8wmzncy7zna86bs"; 4617 + rev = "93711180123b9ba6958bfc682d305ef0a1056fa5"; 4618 + sha256 = "1i3hhihlvh5mkn1vl9f1baiz712h8lwp1hfi5arsb36picsmgbfd"; 4583 4619 }; 4584 4620 meta.homepage = "https://github.com/srcery-colors/srcery-vim/"; 4585 4621 }; 4586 4622 4587 4623 stan-vim = buildVimPluginFrom2Nix { 4588 4624 pname = "stan-vim"; 4589 - version = "2021-05-26"; 4625 + version = "2021-05-28"; 4590 4626 src = fetchFromGitHub { 4591 4627 owner = "eigenfoo"; 4592 4628 repo = "stan-vim"; 4593 - rev = "0216d8eb8fba6c25a960fe940ca419e570789314"; 4594 - sha256 = "0xmkpnrn97y7fny90d57zrklyyhmh7q4ppp1dqdb9q74vikhsch5"; 4629 + rev = "2adaa984e531e1876f053cacb07d8d181d70fbd1"; 4630 + sha256 = "1a826cfmwyn4kfyrj6164425gf2wbjs85cdkhzkqsrj0i924hjqz"; 4595 4631 }; 4596 4632 meta.homepage = "https://github.com/eigenfoo/stan-vim/"; 4597 4633 }; ··· 4658 4694 4659 4695 swift-vim = buildVimPluginFrom2Nix { 4660 4696 pname = "swift-vim"; 4661 - version = "2021-05-05"; 4697 + version = "2021-05-30"; 4662 4698 src = fetchFromGitHub { 4663 4699 owner = "keith"; 4664 4700 repo = "swift.vim"; 4665 - rev = "74af6626f63e331b60524d20dd69c9c5d03dc90c"; 4666 - sha256 = "0cizij9lv93yg8fxnh04vfpywaxywprmkcsvwginbi20hz155q4g"; 4701 + rev = "7ef452b47f14a2bfed26324793777cf12d2a8d78"; 4702 + sha256 = "0s12iv8vmqp8yr8fg7a6yf73kgq84i9zy18fhgb0jcc6cwwwz3iq"; 4667 4703 }; 4668 4704 meta.homepage = "https://github.com/keith/swift.vim/"; 4669 4705 }; ··· 4851 4887 4852 4888 telescope-nvim = buildVimPluginFrom2Nix { 4853 4889 pname = "telescope-nvim"; 4854 - version = "2021-05-27"; 4890 + version = "2021-06-03"; 4855 4891 src = fetchFromGitHub { 4856 4892 owner = "nvim-telescope"; 4857 4893 repo = "telescope.nvim"; 4858 - rev = "904f84942384f988271cd40cc4b195263fe0763a"; 4859 - sha256 = "1dgzp5n6kaphhdm87k5vdbq3srj5dcp1rhnzd72d7n16x0xnki8h"; 4894 + rev = "2697bcfaf0fac861e08c3a55d9334ec6d823029f"; 4895 + sha256 = "0q9kq64y3yrazcks476yplkrhx59z82ij5wj1w8qakidy2i008z1"; 4860 4896 }; 4861 4897 meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/"; 4862 4898 }; ··· 5008 5044 5009 5045 trouble-nvim = buildVimPluginFrom2Nix { 5010 5046 pname = "trouble-nvim"; 5011 - version = "2021-05-26"; 5047 + version = "2021-06-04"; 5012 5048 src = fetchFromGitHub { 5013 5049 owner = "folke"; 5014 5050 repo = "trouble.nvim"; 5015 - rev = "cf87622d661190157dfa7e28a19ee87bb205219b"; 5016 - sha256 = "082sd2x6v8ybyy1pa5jm2mm386c1mn23h9p3nd7fmip2cw9snhd0"; 5051 + rev = "a7dca6204316b9be7c95d056088c67371151c8ab"; 5052 + sha256 = "0b2wha4qmn9gb5fmj57ymhn3jrajq71yk48m8gddr1hx244adknh"; 5017 5053 }; 5018 5054 meta.homepage = "https://github.com/folke/trouble.nvim/"; 5019 5055 }; ··· 5068 5104 5069 5105 undotree = buildVimPluginFrom2Nix { 5070 5106 pname = "undotree"; 5071 - version = "2021-05-16"; 5107 + version = "2021-05-28"; 5072 5108 src = fetchFromGitHub { 5073 5109 owner = "mbbill"; 5074 5110 repo = "undotree"; 5075 - rev = "271c56586196b8e42cdcadc8037aa5d3051071c4"; 5076 - sha256 = "1sjsv4zzmkkj3l56gbb5f0ad0g6clh1wc76q4d6qsaqv4qg4nsal"; 5111 + rev = "1cc3b9069e4356efd4ce1c3c4bdbb227fb54e1e5"; 5112 + sha256 = "0m8wc66ml2h6lsbwq452w8y9s95a4kwp4lfdw94pi4q3h5qhvkxj"; 5077 5113 }; 5078 5114 meta.homepage = "https://github.com/mbbill/undotree/"; 5079 5115 }; ··· 5404 5440 5405 5441 vim-airline = buildVimPluginFrom2Nix { 5406 5442 pname = "vim-airline"; 5407 - version = "2021-05-27"; 5443 + version = "2021-06-04"; 5408 5444 src = fetchFromGitHub { 5409 5445 owner = "vim-airline"; 5410 5446 repo = "vim-airline"; 5411 - rev = "a8b3c254d0e5c43be24298ce16cd01f740fe8d42"; 5412 - sha256 = "1rbdmwah7zxjah5c3rx71h1d6skda0y6pyz7ysasyjj1dnb2kcsi"; 5447 + rev = "82b1b2e87677b468a3b6140372839654d8c346e7"; 5448 + sha256 = "0vvaj84q72z5b473f4823laxdvqb1qqj83n05ixavzpjq2qnlmhq"; 5413 5449 }; 5414 5450 meta.homepage = "https://github.com/vim-airline/vim-airline/"; 5415 5451 }; ··· 5440 5476 5441 5477 vim-android = buildVimPluginFrom2Nix { 5442 5478 pname = "vim-android"; 5443 - version = "2021-05-27"; 5479 + version = "2021-05-28"; 5444 5480 src = fetchFromGitHub { 5445 5481 owner = "hsanson"; 5446 5482 repo = "vim-android"; 5447 - rev = "ae364eb950f6409de820ceb94619a51b724433dc"; 5448 - sha256 = "1b8h4qyvsmap8c2arvp2v1cjax5mskkn382s44ppr0s2dwhcg02b"; 5483 + rev = "520e29d4dd2c4418e246bc28a3383fefdf501cd2"; 5484 + sha256 = "13kdbp6542k2g2vnzvfrijyc3qmkfysn4wyrsq95bai4pqaipraf"; 5449 5485 }; 5450 5486 meta.homepage = "https://github.com/hsanson/vim-android/"; 5451 5487 }; ··· 5680 5716 5681 5717 vim-clap = buildVimPluginFrom2Nix { 5682 5718 pname = "vim-clap"; 5683 - version = "2021-05-24"; 5719 + version = "2021-06-04"; 5684 5720 src = fetchFromGitHub { 5685 5721 owner = "liuchengxu"; 5686 5722 repo = "vim-clap"; 5687 - rev = "ff32ca1e08d3c934aadf21106b1ee623e5544912"; 5688 - sha256 = "0gkbav7icvcy411yaiav8vc4g1q6yk5gixbcwlaxib5c70zmvxlh"; 5723 + rev = "c743b1171194f85469a64556a1f54882cb73cc17"; 5724 + sha256 = "0ws8rvvmszcspwvzns7i82l458sa2mhi0013li8c61g1g2wbpphn"; 5689 5725 }; 5690 5726 meta.homepage = "https://github.com/liuchengxu/vim-clap/"; 5691 5727 }; ··· 5896 5932 5897 5933 vim-css-color = buildVimPluginFrom2Nix { 5898 5934 pname = "vim-css-color"; 5899 - version = "2021-05-20"; 5935 + version = "2021-05-30"; 5900 5936 src = fetchFromGitHub { 5901 5937 owner = "ap"; 5902 5938 repo = "vim-css-color"; 5903 - rev = "47bbd29fedc2c34747ba5ae3a1cdbd62fcf19267"; 5904 - sha256 = "0d6qj36qdshw630g86yh5afbq7azaijypnj6ja4y6ryy8cx11q7c"; 5939 + rev = "7337c35588e9027b516f80f03c3b9621a271e168"; 5940 + sha256 = "05np2fr8q8r8n5mlspjywibl7hx54liy77wxvjya7n2p085n49ks"; 5905 5941 }; 5906 5942 meta.homepage = "https://github.com/ap/vim-css-color/"; 5907 5943 }; ··· 5944 5980 5945 5981 vim-dadbod = buildVimPluginFrom2Nix { 5946 5982 pname = "vim-dadbod"; 5947 - version = "2021-05-19"; 5983 + version = "2021-06-02"; 5948 5984 src = fetchFromGitHub { 5949 5985 owner = "tpope"; 5950 5986 repo = "vim-dadbod"; 5951 - rev = "5198650e81e4f187ab77e1f65bea193d923bc4a1"; 5952 - sha256 = "1pl6m3bqginqfsaa5kqvhang5g24lvh9wlsbbdvan9jyslqqdpq7"; 5987 + rev = "9e4fdb8ab029c0436728a96e1c92677737c2e784"; 5988 + sha256 = "1rmiza1km214mvlrdaqycv5hk8ki35giab11b9ggwcigbh743h01"; 5953 5989 }; 5954 5990 meta.homepage = "https://github.com/tpope/vim-dadbod/"; 5955 5991 }; 5956 5992 5993 + vim-dadbod-completion = buildVimPluginFrom2Nix { 5994 + pname = "vim-dadbod-completion"; 5995 + version = "2021-05-12"; 5996 + src = fetchFromGitHub { 5997 + owner = "kristijanhusak"; 5998 + repo = "vim-dadbod-completion"; 5999 + rev = "a3f8ea8e666f4bebe12739d8854a4bd31544dfbb"; 6000 + sha256 = "04m7drx86r8zqq7rq29wa9zq5ckzf5bqxzyhdc5hqn82jxcvxmpz"; 6001 + }; 6002 + meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-completion/"; 6003 + }; 6004 + 5957 6005 vim-dasht = buildVimPluginFrom2Nix { 5958 6006 pname = "vim-dasht"; 5959 6007 version = "2020-07-11"; ··· 6016 6064 6017 6065 vim-dirdiff = buildVimPluginFrom2Nix { 6018 6066 pname = "vim-dirdiff"; 6019 - version = "2020-11-03"; 6067 + version = "2021-06-03"; 6020 6068 src = fetchFromGitHub { 6021 6069 owner = "will133"; 6022 6070 repo = "vim-dirdiff"; 6023 - rev = "0191693f0d3dfc624c61ac95ec951183a50b3b32"; 6024 - sha256 = "0har8iri09nkjsvag4wgsynb9fxan2g8nlvlvd5zsalbnmlmdh9j"; 6071 + rev = "84bc8999fde4b3c2d8b228b560278ab30c7ea4c9"; 6072 + sha256 = "06qjfz94hqsmg43dpj347cvc72p16xp76zq216js35yphv6sgx65"; 6025 6073 }; 6026 6074 meta.homepage = "https://github.com/will133/vim-dirdiff/"; 6027 6075 }; ··· 6436 6484 6437 6485 vim-fugitive = buildVimPluginFrom2Nix { 6438 6486 pname = "vim-fugitive"; 6439 - version = "2021-05-27"; 6487 + version = "2021-06-03"; 6440 6488 src = fetchFromGitHub { 6441 6489 owner = "tpope"; 6442 6490 repo = "vim-fugitive"; 6443 - rev = "6ae064c5aa1cc24c78abc8d12ec236e99dc01316"; 6444 - sha256 = "017dm18dazg3svqyir1pncvnhczxcsnjdq85aypsrggf1mhd9m1a"; 6491 + rev = "f7f1413ed9b69eb80c8af07d38ebcc889ed64d96"; 6492 + sha256 = "16az604z245bw64dhkgmszifg1ajnf0i9binllixwaifnh6vfnhh"; 6445 6493 }; 6446 6494 meta.homepage = "https://github.com/tpope/vim-fugitive/"; 6447 6495 }; ··· 6508 6556 6509 6557 vim-gitgutter = buildVimPluginFrom2Nix { 6510 6558 pname = "vim-gitgutter"; 6511 - version = "2021-05-24"; 6559 + version = "2021-06-03"; 6512 6560 src = fetchFromGitHub { 6513 6561 owner = "airblade"; 6514 6562 repo = "vim-gitgutter"; 6515 - rev = "10998f303cd85405e51380f6dc406dd756c105e8"; 6516 - sha256 = "0520sqya9i2ry5yfryqi1q7h6yg2vgqw1qa042f1b2r8ddgvxibk"; 6563 + rev = "68a8cb300c75eb1cd2173b2aac70515e99904ef3"; 6564 + sha256 = "0s4c1vb2z3manl2i768f48i2pww2d4dj41plx4mvvi7sczlma30n"; 6517 6565 }; 6518 6566 meta.homepage = "https://github.com/airblade/vim-gitgutter/"; 6519 6567 }; ··· 6556 6604 6557 6605 vim-go = buildVimPluginFrom2Nix { 6558 6606 pname = "vim-go"; 6559 - version = "2021-05-27"; 6607 + version = "2021-06-04"; 6560 6608 src = fetchFromGitHub { 6561 6609 owner = "fatih"; 6562 6610 repo = "vim-go"; 6563 - rev = "696c4a4ef79fc1fb8f090353cf404df95614ce46"; 6564 - sha256 = "1z811b62f5pafv3zmqjjcvmphikml8hzspdb7nvkyrr561awzwab"; 6611 + rev = "edd8c160e54c2861a617777192a48d0a64704192"; 6612 + sha256 = "1xdggzasvv3x1h61yqp2rl30r6kppf6aqdjqsrpzihz809w5zgry"; 6565 6613 }; 6566 6614 meta.homepage = "https://github.com/fatih/vim-go/"; 6567 6615 }; ··· 6604 6652 6605 6653 vim-gruvbox8 = buildVimPluginFrom2Nix { 6606 6654 pname = "vim-gruvbox8"; 6607 - version = "2021-05-03"; 6655 + version = "2021-05-28"; 6608 6656 src = fetchFromGitHub { 6609 6657 owner = "lifepillar"; 6610 6658 repo = "vim-gruvbox8"; 6611 - rev = "68253ac63780918b02669ec15ac5bc3aa36e4641"; 6612 - sha256 = "0k355wqh8x8c35qvll494v98gbvvly96w79d94srzarvj4h9as55"; 6659 + rev = "66d58b569fdbe0ec389acb66eb4a585f3110e43e"; 6660 + sha256 = "0bggkq2p109vc67s0idplrf4sy4j12smwkx2wvsc626bzflzc2fb"; 6613 6661 }; 6614 6662 meta.homepage = "https://github.com/lifepillar/vim-gruvbox8/"; 6615 6663 }; ··· 6688 6736 6689 6737 vim-hcl = buildVimPluginFrom2Nix { 6690 6738 pname = "vim-hcl"; 6691 - version = "2021-03-17"; 6739 + version = "2021-06-03"; 6692 6740 src = fetchFromGitHub { 6693 6741 owner = "jvirtanen"; 6694 6742 repo = "vim-hcl"; 6695 - rev = "d50f93204b606b4ff40a9522be0e8dbf6055b815"; 6696 - sha256 = "0sdaldmdrgha5ij02flsqrc77ijjifdvl8b6pdw24xrpd9j5cwhs"; 6743 + rev = "6289d1a1424229a8f6523f4ef9441dbf2468250b"; 6744 + sha256 = "0x33bdvacmj82m838frr40r16mc0cvb2p9alkr2gw30ls2ym3zdy"; 6697 6745 }; 6698 6746 meta.homepage = "https://github.com/jvirtanen/vim-hcl/"; 6699 6747 }; ··· 6797 6845 6798 6846 vim-html-template-literals = buildVimPluginFrom2Nix { 6799 6847 pname = "vim-html-template-literals"; 6800 - version = "2020-09-02"; 6848 + version = "2021-06-03"; 6801 6849 src = fetchFromGitHub { 6802 6850 owner = "jonsmithers"; 6803 6851 repo = "vim-html-template-literals"; 6804 - rev = "602dba70bdcfc2e280e0c0503e74a8a92519db49"; 6805 - sha256 = "0x0sbmcig3r058sg78bfj8dv0lwlgdcwvw9kxviynyhk2qkg9zl9"; 6852 + rev = "e6f3f8ffaae9c2f9deea2bbb596b64468041616c"; 6853 + sha256 = "1lrkby9m60ccgm35y1z82llgzjd5vmdwfscy7byjd5ycnkhyangi"; 6806 6854 }; 6807 6855 meta.homepage = "https://github.com/jonsmithers/vim-html-template-literals/"; 6808 6856 }; ··· 6857 6905 6858 6906 vim-illuminate = buildVimPluginFrom2Nix { 6859 6907 pname = "vim-illuminate"; 6860 - version = "2021-05-18"; 6908 + version = "2021-06-03"; 6861 6909 src = fetchFromGitHub { 6862 6910 owner = "RRethy"; 6863 6911 repo = "vim-illuminate"; 6864 - rev = "20707bb5ac23536041d34f327649844e631d52bd"; 6865 - sha256 = "1gm0rfhhzmb1hv4dzys4w0si9ppaanxn0v68rpjc9yn8ahws426b"; 6912 + rev = "daa49da1e7a6d8c8dcbd3a40f91046d1505fd645"; 6913 + sha256 = "1qvnij7z48g1m6n2qz5lbgbiwwaqnb626sz6qvhkd5jh556pmfah"; 6866 6914 }; 6867 6915 meta.homepage = "https://github.com/RRethy/vim-illuminate/"; 6868 6916 }; ··· 7254 7302 7255 7303 vim-lsp = buildVimPluginFrom2Nix { 7256 7304 pname = "vim-lsp"; 7257 - version = "2021-05-03"; 7305 + version = "2021-06-02"; 7258 7306 src = fetchFromGitHub { 7259 7307 owner = "prabirshrestha"; 7260 7308 repo = "vim-lsp"; 7261 - rev = "1f98a0656620bfc03dcb8bad87aa76a6304b3b73"; 7262 - sha256 = "177l1xbd1039mmxwk2ggbjawvnpqp362w0mnqvqs2655ib4zdbq3"; 7309 + rev = "ddd5abb5b6491117c4b7ef4149e47945926eecd8"; 7310 + sha256 = "0xv687xzwqhwpmxr65sm3ln74y8mxww1q3fqj57va06ilxzac56c"; 7263 7311 }; 7264 7312 meta.homepage = "https://github.com/prabirshrestha/vim-lsp/"; 7265 7313 }; ··· 7290 7338 7291 7339 vim-maktaba = buildVimPluginFrom2Nix { 7292 7340 pname = "vim-maktaba"; 7293 - version = "2021-05-20"; 7341 + version = "2021-05-29"; 7294 7342 src = fetchFromGitHub { 7295 7343 owner = "google"; 7296 7344 repo = "vim-maktaba"; 7297 - rev = "b7106d83d38116984859eaecabeb8e1d5e21ae55"; 7298 - sha256 = "14xds4wfrm2ir7ljv195lxm9zkkxnwbmflzihpj6vai788za5ikc"; 7345 + rev = "2b5565881b31ed4e7ac32b4903827ec9c164216d"; 7346 + sha256 = "13nzkqhyz8jydrwprw06jqcx3w37xv0qdq0809gx748kfvh1dznw"; 7299 7347 }; 7300 7348 meta.homepage = "https://github.com/google/vim-maktaba/"; 7301 7349 }; ··· 7363 7411 7364 7412 vim-matchup = buildVimPluginFrom2Nix { 7365 7413 pname = "vim-matchup"; 7366 - version = "2021-05-20"; 7414 + version = "2021-06-02"; 7367 7415 src = fetchFromGitHub { 7368 7416 owner = "andymass"; 7369 7417 repo = "vim-matchup"; 7370 - rev = "42e8ef032ae44c6336a7194408de5e9492aa2a07"; 7371 - sha256 = "1h1bpylrriq35m4bn4w9ikxq413ack27h35jcmhp1mb1lg5b32y9"; 7418 + rev = "fd9f3c09b04725c8042149bfe3fd080b6f6962cb"; 7419 + sha256 = "08cqh4b01jl0iqd1nj2sw2jcwxp48m9rdh50sdnfjgdvynnpagik"; 7372 7420 }; 7373 7421 meta.homepage = "https://github.com/andymass/vim-matchup/"; 7374 7422 }; ··· 7555 7603 7556 7604 vim-nix = buildVimPluginFrom2Nix { 7557 7605 pname = "vim-nix"; 7558 - version = "2020-11-16"; 7606 + version = "2021-05-28"; 7559 7607 src = fetchFromGitHub { 7560 7608 owner = "LnL7"; 7561 7609 repo = "vim-nix"; 7562 - rev = "7542a2bf66d72cb86fc80529867accbc787f744b"; 7563 - sha256 = "1kgziwckdjg3sb1z4anwsn1c72hny60vhimxpb6424bylk1qy22j"; 7610 + rev = "63b47b39c8d481ebca3092822ca8972e08df769b"; 7611 + sha256 = "08n9cgphv2m96kk5w996lwlqak011x5xm410hajmc91vy5fws361"; 7564 7612 }; 7565 7613 meta.homepage = "https://github.com/LnL7/vim-nix/"; 7566 7614 }; ··· 7891 7939 7892 7940 vim-polyglot = buildVimPluginFrom2Nix { 7893 7941 pname = "vim-polyglot"; 7894 - version = "2021-04-14"; 7942 + version = "2021-06-04"; 7895 7943 src = fetchFromGitHub { 7896 7944 owner = "sheerun"; 7897 7945 repo = "vim-polyglot"; 7898 - rev = "730dcb02caab60a6ae5d8b4bdc16d290041061ec"; 7899 - sha256 = "1pgqw008xy3fn821zxfiwc9xpd0v33wxmk4yf9avm5jgqbkwn1ld"; 7946 + rev = "c312d30231f136d2fbb32a2cfea554af5066e6b0"; 7947 + sha256 = "1apd860v2xfi3fjgl15j7mgn6nczx10vj324w1vf1ic5nyy4b594"; 7900 7948 }; 7901 7949 meta.homepage = "https://github.com/sheerun/vim-polyglot/"; 7902 7950 }; ··· 8095 8143 8096 8144 vim-rails = buildVimPluginFrom2Nix { 8097 8145 pname = "vim-rails"; 8098 - version = "2021-05-25"; 8146 + version = "2021-06-01"; 8099 8147 src = fetchFromGitHub { 8100 8148 owner = "tpope"; 8101 8149 repo = "vim-rails"; 8102 - rev = "d556429fad4bf24d431be9f75322fd0d1a82bae2"; 8103 - sha256 = "0k1ffyy145nhmr9ad56vc10yy3jliyj8aahs0pm30fgi9q7qz7iy"; 8150 + rev = "3b3796352a6f1a68e54e5f7ae5e0c1b9103fab0e"; 8151 + sha256 = "1f0xns0h55szamms17wi06k1ninvygsc4yw82hr29kfq94hvn57l"; 8104 8152 }; 8105 8153 meta.homepage = "https://github.com/tpope/vim-rails/"; 8106 8154 }; ··· 8407 8455 8408 8456 vim-snipmate = buildVimPluginFrom2Nix { 8409 8457 pname = "vim-snipmate"; 8410 - version = "2021-01-22"; 8458 + version = "2021-06-04"; 8411 8459 src = fetchFromGitHub { 8412 8460 owner = "garbas"; 8413 8461 repo = "vim-snipmate"; 8414 - rev = "cbec960ab558b20281c0634b9b1a45fb16aaf638"; 8415 - sha256 = "1k35rh5gq8lv67qx3l31xvl4iz7rlpybls7pwhsbmz4m598w03bm"; 8462 + rev = "ed3c5426a20bf1c06d7980946ada34fd9f93320e"; 8463 + sha256 = "0bxaalza02sgm045cj4vciy3qhmj7pj1rp9bdwm5837ldq8paj1h"; 8416 8464 }; 8417 8465 meta.homepage = "https://github.com/garbas/vim-snipmate/"; 8418 8466 }; ··· 8503 8551 8504 8552 vim-startuptime = buildVimPluginFrom2Nix { 8505 8553 pname = "vim-startuptime"; 8506 - version = "2021-05-04"; 8554 + version = "2021-05-29"; 8507 8555 src = fetchFromGitHub { 8508 8556 owner = "dstein64"; 8509 8557 repo = "vim-startuptime"; 8510 - rev = "c622725676c179950ea4a789915efc6d53f142c3"; 8511 - sha256 = "168bdcbb13mdd40b0xq9i9chgsg6jr8h4f1jpzf05br5fxp09snk"; 8558 + rev = "7a97baae32bedbf6f62d5a573777e4d1652787d1"; 8559 + sha256 = "1sphykwbjd35kwsibm9wcxbs2iwjkzkg7madqvlxzi7sqh4vkc7y"; 8512 8560 }; 8513 8561 meta.homepage = "https://github.com/dstein64/vim-startuptime/"; 8514 8562 }; ··· 8599 8647 8600 8648 vim-table-mode = buildVimPluginFrom2Nix { 8601 8649 pname = "vim-table-mode"; 8602 - version = "2021-05-05"; 8650 + version = "2021-05-29"; 8603 8651 src = fetchFromGitHub { 8604 8652 owner = "dhruvasagar"; 8605 8653 repo = "vim-table-mode"; 8606 - rev = "5150f1ec06f51b087a11c71b498a4c4497e71e2c"; 8607 - sha256 = "1nwcc7didjyd2iw23qhxrg0rr66z93midabkwjdnlw8mzgha7lb7"; 8654 + rev = "35e9fbf64c06fddc41651e65b92200f902d8ae0b"; 8655 + sha256 = "16p68x4669y4qpg91hmi4gc3f8qc8bzbr8v6w3nc75vm48s64z6k"; 8608 8656 }; 8609 8657 meta.homepage = "https://github.com/dhruvasagar/vim-table-mode/"; 8610 8658 }; ··· 8792 8840 8793 8841 vim-tmux-navigator = buildVimPluginFrom2Nix { 8794 8842 pname = "vim-tmux-navigator"; 8795 - version = "2020-11-12"; 8843 + version = "2021-05-29"; 8796 8844 src = fetchFromGitHub { 8797 8845 owner = "christoomey"; 8798 8846 repo = "vim-tmux-navigator"; 8799 - rev = "6a1e58c3ca3bc7acca36c90521b3dfae83b2a602"; 8800 - sha256 = "17219h69vd6b994qrywg1rpx80y1rmycbfsmf9wb6c693sx721sn"; 8847 + rev = "0cabb1ef01af0986b7bf6fb7acf631debdbbb470"; 8848 + sha256 = "0xxc5wpyfqv7f7sfy6xncy7ipj0cvshw28s12ld3jfgyimjllr62"; 8801 8849 }; 8802 8850 meta.homepage = "https://github.com/christoomey/vim-tmux-navigator/"; 8803 8851 }; ··· 8828 8876 8829 8877 vim-tpipeline = buildVimPluginFrom2Nix { 8830 8878 pname = "vim-tpipeline"; 8831 - version = "2021-04-28"; 8879 + version = "2021-06-03"; 8832 8880 src = fetchFromGitHub { 8833 8881 owner = "vimpostor"; 8834 8882 repo = "vim-tpipeline"; 8835 - rev = "01d4073e7f1319f223c0d5bfd1abe1e292238252"; 8836 - sha256 = "1nfwiizd8nk4pqz1jsw9nq5ngmavjdb3jra2xb5kzgjl2fbzvjda"; 8883 + rev = "683cf4f2e16149c477a8f5c96b7429932a68d801"; 8884 + sha256 = "0gr5k4bzzzvn00plimpkjiavya04jvcgg322k8yblzmm01r6vcr2"; 8837 8885 }; 8838 8886 meta.homepage = "https://github.com/vimpostor/vim-tpipeline/"; 8839 8887 }; ··· 8888 8936 8889 8937 vim-ultest = buildVimPluginFrom2Nix { 8890 8938 pname = "vim-ultest"; 8891 - version = "2021-05-27"; 8939 + version = "2021-06-04"; 8892 8940 src = fetchFromGitHub { 8893 8941 owner = "rcarriga"; 8894 8942 repo = "vim-ultest"; 8895 - rev = "2de66cbec0694da8f29a99e5c3167c7b9c4a7aff"; 8896 - sha256 = "0zxici08m9mk8ia1vr4pm0lgw2fg7p1v1dny89nd0x1r1xfwy4w2"; 8943 + rev = "17e372f83238d5d85f6574c59d5d210a898e8623"; 8944 + sha256 = "084mn6zxc2x8gp938fpi5ylwqy2pgvn046xbsmyq8md36vqb6m7g"; 8897 8945 }; 8898 8946 meta.homepage = "https://github.com/rcarriga/vim-ultest/"; 8899 8947 }; ··· 8948 8996 8949 8997 vim-visual-multi = buildVimPluginFrom2Nix { 8950 8998 pname = "vim-visual-multi"; 8951 - version = "2021-05-27"; 8999 + version = "2021-06-01"; 8952 9000 src = fetchFromGitHub { 8953 9001 owner = "mg979"; 8954 9002 repo = "vim-visual-multi"; 8955 - rev = "8041a909fc3f740e9d110dd2e95980ff4645785b"; 8956 - sha256 = "17zf839g8sr3i9amwvxx008m89m9hz3f34pbc90mpl5ksy4isdqv"; 9003 + rev = "2b9d104c57aeb612d7f00e1d071d712ed8671949"; 9004 + sha256 = "17f92pka2flwnhx8yg7skbp8kyhbb6gmvm0mni2jm7w3iq68nbmw"; 8957 9005 }; 8958 9006 meta.homepage = "https://github.com/mg979/vim-visual-multi/"; 8959 9007 }; ··· 8972 9020 8973 9021 vim-vsnip = buildVimPluginFrom2Nix { 8974 9022 pname = "vim-vsnip"; 8975 - version = "2021-04-21"; 9023 + version = "2021-06-01"; 8976 9024 src = fetchFromGitHub { 8977 9025 owner = "hrsh7th"; 8978 9026 repo = "vim-vsnip"; 8979 - rev = "395d200728b467e141615f53afe564adc26985b9"; 8980 - sha256 = "1g0fhdqr6qmqmhvm3amv22fqb1aacmvd0swmk38w25zzcbl4b4gy"; 9027 + rev = "552403842b992efde3816a89b20055f7d66d9a0d"; 9028 + sha256 = "1pkkysv2mnbzm2bi33l1xccdb6sh06dgyg83dg0dgd0gmp94l7ya"; 8981 9029 }; 8982 9030 meta.homepage = "https://github.com/hrsh7th/vim-vsnip/"; 8983 9031 }; ··· 9056 9104 9057 9105 vim-wordmotion = buildVimPluginFrom2Nix { 9058 9106 pname = "vim-wordmotion"; 9059 - version = "2021-04-25"; 9107 + version = "2021-06-04"; 9060 9108 src = fetchFromGitHub { 9061 9109 owner = "chaoren"; 9062 9110 repo = "vim-wordmotion"; 9063 - rev = "f6a2064444f39ba52161b16ac1429ee87c1af76d"; 9064 - sha256 = "0y69jkgh9pf4b0c4pxgqvf43gq8amz9qwhq1cg38zriy2m4kxi7h"; 9111 + rev = "dca1a1827513497def6362411d093ae6b3cff7f8"; 9112 + sha256 = "1ij2j35bskk20wyiwjg1krqr9fi5fk043gfpxihhlbxd7yxlbpq1"; 9065 9113 }; 9066 9114 meta.homepage = "https://github.com/chaoren/vim-wordmotion/"; 9067 9115 }; ··· 9104 9152 9105 9153 vim-xtabline = buildVimPluginFrom2Nix { 9106 9154 pname = "vim-xtabline"; 9107 - version = "2021-01-31"; 9155 + version = "2021-05-29"; 9108 9156 src = fetchFromGitHub { 9109 9157 owner = "mg979"; 9110 9158 repo = "vim-xtabline"; 9111 - rev = "654675222adde47c9d72caa400e35c7e680fe5a1"; 9112 - sha256 = "1f7d4vmr7n5v7h5a1bjcvxaqygrdi33y0vdx4yjfdswi835yd45h"; 9159 + rev = "ad80aa67958a31a254d8994c7a517c1123256721"; 9160 + sha256 = "07pd7wzyvch400i6kv0ld3bx2x90ycdjaapwc7aaqkwikk2slq3h"; 9113 9161 }; 9114 9162 meta.homepage = "https://github.com/mg979/vim-xtabline/"; 9115 9163 }; ··· 9309 9357 9310 9358 vimtex = buildVimPluginFrom2Nix { 9311 9359 pname = "vimtex"; 9312 - version = "2021-05-25"; 9360 + version = "2021-06-01"; 9313 9361 src = fetchFromGitHub { 9314 9362 owner = "lervag"; 9315 9363 repo = "vimtex"; 9316 - rev = "8d3cbfff3d44e8af93948d3c7785130f54bc2386"; 9317 - sha256 = "0gwj70fxbpmwnrd78ralqq2nzk8gwqv6bd267kf64z9rxkwdhrs0"; 9364 + rev = "b0d430b80504e847584664d83e879399647cd38f"; 9365 + sha256 = "0k44iv5fig0601bc1vglgbphiw0h6gq8379zsk1ca3fgzyi2ic0p"; 9318 9366 }; 9319 9367 meta.homepage = "https://github.com/lervag/vimtex/"; 9320 9368 }; ··· 9357 9405 9358 9406 vista-vim = buildVimPluginFrom2Nix { 9359 9407 pname = "vista-vim"; 9360 - version = "2021-04-27"; 9408 + version = "2021-05-28"; 9361 9409 src = fetchFromGitHub { 9362 9410 owner = "liuchengxu"; 9363 9411 repo = "vista.vim"; 9364 - rev = "3d4e2a80658467af02a6347e3dae8810e6a5f02f"; 9365 - sha256 = "05hh9hk5qcn8gd4k3zm8qz077wxamp4rja486nwm9y5p6723vqn9"; 9412 + rev = "19cad968d2cd759e7f9de1d662ec680bd93ebebc"; 9413 + sha256 = "0r01b6mml6qgyybi6i59bflgqi03w0fnl0wfgwac96ixs2wdvl1l"; 9366 9414 }; 9367 9415 meta.homepage = "https://github.com/liuchengxu/vista.vim/"; 9368 9416 }; ··· 9393 9441 9394 9442 webapi-vim = buildVimPluginFrom2Nix { 9395 9443 pname = "webapi-vim"; 9396 - version = "2020-12-02"; 9444 + version = "2021-06-04"; 9397 9445 src = fetchFromGitHub { 9398 9446 owner = "mattn"; 9399 9447 repo = "webapi-vim"; 9400 - rev = "6f5ffb6f547cda1b6cbc26a06f12d81e6283bd82"; 9401 - sha256 = "1144jk4dfqb8pzblqksc1wjgbraxy6pdgr4q567wzcf93bviv81l"; 9448 + rev = "b09cbd3a27157a5baf0468403b392f577adefe45"; 9449 + sha256 = "17vlzg5dm5phirwyk8xkqnrkplybd8d5rj9kdx7rgla3h7rqn4wg"; 9402 9450 }; 9403 9451 meta.homepage = "https://github.com/mattn/webapi-vim/"; 9404 9452 }; 9405 9453 9406 9454 which-key-nvim = buildVimPluginFrom2Nix { 9407 9455 pname = "which-key-nvim"; 9408 - version = "2021-05-26"; 9456 + version = "2021-06-04"; 9409 9457 src = fetchFromGitHub { 9410 9458 owner = "folke"; 9411 9459 repo = "which-key.nvim"; 9412 - rev = "db851981595fc360e9b6196a7c3995611aceac3b"; 9413 - sha256 = "0y3mq6vrpmpxa8f42cxxf1209ardb3qraf44vgxwdaqqgphm7zk9"; 9460 + rev = "9ea98e59ddeeafc9181815dd714bea513b298e33"; 9461 + sha256 = "0zhlbbd969p4bg5vrifsi5sgqi2wbp8zxlak3l7zk67akpbb395n"; 9414 9462 }; 9415 9463 meta.homepage = "https://github.com/folke/which-key.nvim/"; 9416 9464 }; ··· 9513 9561 9514 9562 yats-vim = buildVimPluginFrom2Nix { 9515 9563 pname = "yats-vim"; 9516 - version = "2021-02-15"; 9564 + version = "2021-05-29"; 9517 9565 src = fetchFromGitHub { 9518 9566 owner = "HerringtonDarkholme"; 9519 9567 repo = "yats.vim"; 9520 - rev = "11112853180a933574f431cf78cd5a462ee3f473"; 9521 - sha256 = "0bnq02dbsqwsizhlldb2pj92gjybr5aaa7a5m786xvb7ljvd82vi"; 9568 + rev = "7c5e526f1aac81e4913be72a5a891e8de38925bd"; 9569 + sha256 = "1p3rgw1fx6ficzyk7ba9s22aj9xjsf50ipkx4bdmp4a2zskacqcp"; 9522 9570 fetchSubmodules = true; 9523 9571 }; 9524 9572 meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";
+4
pkgs/misc/vim-plugins/vim-plugin-names
··· 13 13 alx741/vim-hindent 14 14 alx741/vim-stylishask 15 15 amiorin/ctrlp-z 16 + andersevenrud/compe-tmux@main 16 17 andrep/vimacs 17 18 andreshazard/vim-logreview 18 19 AndrewRadev/sideways.vim@main ··· 164 165 glts/vim-textobj-comment 165 166 godlygeek/csapprox 166 167 godlygeek/tabular 168 + GoldsteinE/compe-latex-symbols 167 169 google/vim-codefmt 168 170 google/vim-jsonnet 169 171 google/vim-maktaba ··· 298 300 kristijanhusak/defx-icons 299 301 kristijanhusak/deoplete-phpactor 300 302 kristijanhusak/vim-carbon-now-sh 303 + kristijanhusak/vim-dadbod-completion 301 304 kristijanhusak/vim-dirvish-git 302 305 kristijanhusak/vim-hybrid-material 303 306 kshenoy/vim-signature ··· 619 622 t9md/vim-smalls 620 623 TaDaa/vimade 621 624 takac/vim-hardtime 625 + tamago324/compe-zsh 622 626 tami5/compe-conjure 623 627 tami5/lispdocs.nvim 624 628 tami5/sql.nvim
+6 -8
pkgs/os-specific/linux/mwprocapture/default.nix
··· 2 2 3 3 with lib; 4 4 5 - # The Magewell Pro Capture drivers are not supported for kernels older than 3.2 6 - assert versionAtLeast kernel.version "3.2.0"; 7 - 8 5 let 9 6 bits = 10 7 if stdenv.is64bit then "64" ··· 14 11 15 12 in 16 13 stdenv.mkDerivation rec { 17 - name = "mwprocapture-1.2.${version}-${kernel.version}"; 18 - version = "4177"; 14 + name = "mwprocapture-1.3.0.${version}-${kernel.version}"; 15 + version = "4236"; 19 16 20 17 src = fetchurl { 21 - url = "http://www.magewell.com/files/drivers/ProCaptureForLinux_${version}.tar.gz"; 22 - sha256 = "1nf51w9yixpvr767k49sfdb9n9rv5qc72f5yki1mkghbmabw7vys"; 18 + url = "https://www.magewell.com/files/drivers/ProCaptureForLinux_${version}.tar.gz"; 19 + sha256 = "1mfgj84km276sq5i8dny1vqp2ycqpvgplrmpbqwnk230d0w3qs74"; 23 20 }; 24 21 25 - nativeBuildInputs = [ kernel.moduleBuildDependencies ]; 22 + nativeBuildInputs = kernel.moduleBuildDependencies; 26 23 27 24 preConfigure = 28 25 '' ··· 63 60 license = licenses.unfreeRedistributable; 64 61 maintainers = with maintainers; [ MP2E ]; 65 62 platforms = platforms.linux; 63 + broken = kernel.kernelOlder "3.2.0"; 66 64 }; 67 65 }
+3 -3
pkgs/servers/consul/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "consul"; 5 - version = "1.9.5"; 5 + version = "1.9.6"; 6 6 rev = "v${version}"; 7 7 8 8 # Note: Currently only release tags are supported, because they have the Consul UI ··· 17 17 owner = "hashicorp"; 18 18 repo = pname; 19 19 inherit rev; 20 - sha256 = "sha256-CKezHuCbL1I79gDz7ZQiSgPbSXo0NtssQro2MqqmeXw="; 20 + sha256 = "sha256-SuG/Q5Tjet4etd4Qy5NBQLYEe2QO0K8QHKmgxYMl09U="; 21 21 }; 22 22 23 23 passthru.tests.consul = nixosTests.consul; ··· 26 26 # has a split module structure in one repo 27 27 subPackages = ["." "connect/certgen"]; 28 28 29 - vendorSha256 = "sha256-YqrW3PeFv1Y6lmjVmMMP0SZao57iPqfut3a1afIWkI0="; 29 + vendorSha256 = "sha256-jVhj7pzJ8kxZk3ViA9zhVqD314biih/sP0Ql1GXcoRY="; 30 30 31 31 doCheck = false; 32 32
+3 -1
pkgs/servers/monitoring/prometheus/process-exporter.nix
··· 1 - { lib, buildGoModule, fetchFromGitHub }: 1 + { lib, buildGoModule, fetchFromGitHub, nixosTests }: 2 2 3 3 buildGoModule rec { 4 4 pname = "process-exporter"; ··· 18 18 ''; 19 19 20 20 doCheck = true; 21 + 22 + passthru.tests = { inherit (nixosTests.prometheus-exporters) process; }; 21 23 22 24 meta = with lib; { 23 25 description = "Prometheus exporter that mines /proc to report on selected processes";
+10
pkgs/servers/openafs/1.8/module.nix
··· 49 49 url = "https://github.com/openafs/openafs/commit/ee53dd3bc087a05e22fc4111297a51ddb30013f0.patch"; 50 50 sha256 = "0dfab3zk0dmf6iksna5n09lf5dn4f8w43q4irl2yf5dgqm35shkr"; 51 51 }) 52 + # Linux: Create wrapper for setattr_prepare 53 + (fetchpatch { 54 + url = "https://github.com/openafs/openafs/commit/5a5d358b02b88d6d2c7a27a75149e35b1de7db38.patch"; 55 + sha256 = "07gywsg41cz5h6iafr4pb0gb9jnsb58xkwn479lw46b3y5jgz7ki"; 56 + }) 57 + # Linux 5.12: Add user_namespace param to inode ops 58 + (fetchpatch { 59 + url = "https://github.com/openafs/openafs/commit/c747b15dd2877e6d17e3e6b940ae78c1e1ccd3ea.patch"; 60 + sha256 = "0bbqmx4nkmfkapk25zrv9ivhhs91rn9dizb1lkfs7a6937q1kaqh"; 61 + }) 52 62 ]; 53 63 54 64 hardeningDisable = [ "pic" ];
+1 -1
pkgs/tools/admin/gixy/default.nix
··· 38 38 homepage = "https://github.com/yandex/gixy"; 39 39 license = licenses.mpl20; 40 40 maintainers = [ maintainers.willibutz ]; 41 - platforms = platforms.linux; 41 + platforms = platforms.unix; 42 42 }; 43 43 }
+104
pkgs/tools/games/gamemode/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchFromGitHub 4 + , fetchpatch 5 + , libgamemode32 6 + , meson 7 + , ninja 8 + , pkg-config 9 + , dbus 10 + , inih 11 + , systemd 12 + , appstream 13 + }: 14 + 15 + stdenv.mkDerivation rec { 16 + pname = "gamemode"; 17 + version = "1.6.1"; 18 + 19 + src = fetchFromGitHub { 20 + owner = "FeralInteractive"; 21 + repo = pname; 22 + rev = version; 23 + sha256 = "sha256-P00OnZiPZyxBu9zuG+3JNorXHBhJZy+cKPjX+duZrJ0="; 24 + }; 25 + 26 + outputs = [ "out" "dev" "lib" "man" "static" ]; 27 + 28 + patches = [ 29 + # Run executables from PATH instead of /usr/bin 30 + # See https://github.com/FeralInteractive/gamemode/pull/323 31 + (fetchpatch { 32 + url = "https://github.com/FeralInteractive/gamemode/commit/be44b7091baa33be6dda60392e4c06c2f398ee72.patch"; 33 + sha256 = "TlDUETs4+N3pvrVd0FQGlGmC+6ByhJ2E7gKXa7suBtE="; 34 + }) 35 + 36 + # Fix loading shipped config when using a prefix other than /usr 37 + # See https://github.com/FeralInteractive/gamemode/pull/324 38 + (fetchpatch { 39 + url = "https://github.com/FeralInteractive/gamemode/commit/b29aa903ce5acc9141cfd3960c98ccb047eca872.patch"; 40 + sha256 = "LwBzBJQ7dfm2mFVSOSPjJP+skgV5N6h77i66L1Sq+ZM="; 41 + }) 42 + 43 + # Add @libraryPath@ template variable to fix loading the PRELOAD library 44 + ./preload-nix-workaround.patch 45 + ]; 46 + 47 + postPatch = '' 48 + substituteInPlace data/gamemoderun \ 49 + --subst-var-by libraryPath ${lib.makeLibraryPath ([ 50 + (placeholder "lib") 51 + ] ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") [ 52 + # Support wrapping 32bit applications on a 64bit linux system 53 + libgamemode32 54 + ])} 55 + ''; 56 + 57 + nativeBuildInputs = [ 58 + meson 59 + ninja 60 + pkg-config 61 + ]; 62 + 63 + buildInputs = [ 64 + dbus 65 + inih 66 + systemd 67 + ]; 68 + 69 + mesonFlags = [ 70 + # libexec is just a way to package binaries without including them 71 + # in PATH. It doesn't make sense to install them to $lib 72 + # (the default behaviour in the meson hook). 73 + "--libexecdir=${placeholder "out"}/libexec" 74 + 75 + "-Dwith-systemd-user-unit-dir=lib/systemd/user" 76 + ]; 77 + 78 + doCheck = true; 79 + checkInputs = [ 80 + appstream 81 + ]; 82 + 83 + # Move static libraries to $static so $lib only contains dynamic libraries. 84 + postInstall = '' 85 + moveToOutput lib/*.a "$static" 86 + ''; 87 + 88 + # Add $lib/lib to gamemoded & gamemode-simulate-game's rpath since 89 + # they use dlopen to load libgamemode. Can't use makeWrapper since 90 + # it would break the security wrapper in the NixOS module. 91 + postFixup = '' 92 + for bin in "$out/bin/gamemoded" "$out/bin/gamemode-simulate-game"; do 93 + patchelf --set-rpath "$lib/lib:$(patchelf --print-rpath "$bin")" "$bin" 94 + done 95 + ''; 96 + 97 + meta = with lib; { 98 + description = "Optimise Linux system performance on demand"; 99 + homepage = "https://github.com/FeralInteractive/GameMode"; 100 + license = licenses.bsd3; 101 + maintainers = with maintainers; [ kira-bruneau ]; 102 + platforms = platforms.linux; 103 + }; 104 + }
+12
pkgs/tools/games/gamemode/preload-nix-workaround.patch
··· 1 + diff --git a/data/gamemoderun b/data/gamemoderun 2 + index 573b3e4..6f2799e 100755 3 + --- a/data/gamemoderun 4 + +++ b/data/gamemoderun 5 + @@ -5,5 +5,6 @@ GAMEMODEAUTO_NAME="libgamemodeauto.so.0" 6 + 7 + # ld will find the right path to load the library, including for 32-bit apps. 8 + LD_PRELOAD="${GAMEMODEAUTO_NAME}${LD_PRELOAD:+:$LD_PRELOAD}" 9 + +LD_LIBRARY_PATH="@libraryPath@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" 10 + 11 + -exec env LD_PRELOAD="${LD_PRELOAD}" $GAMEMODERUNEXEC "$@" 12 + +exec env LD_PRELOAD="${LD_PRELOAD}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" $GAMEMODERUNEXEC "$@"
+8 -2
pkgs/tools/misc/handlr/default.nix
··· 1 - { lib, stdenv, rustPlatform, fetchFromGitHub, shared-mime-info, libiconv }: 1 + { lib, stdenv, rustPlatform, fetchFromGitHub, shared-mime-info, libiconv, installShellFiles }: 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "handlr"; ··· 13 13 14 14 cargoSha256 = "sha256-xDQV8wVlzItz0lzR1nVRPVsg7nSf/khUhevDlGgSO3g="; 15 15 16 - nativeBuildInputs = [ shared-mime-info ]; 16 + nativeBuildInputs = [ installShellFiles shared-mime-info ]; 17 17 buildInputs = lib.optional stdenv.isDarwin libiconv; 18 18 19 19 preCheck = '' 20 20 export HOME=$TEMPDIR 21 + ''; 22 + 23 + postInstall = '' 24 + installShellCompletion \ 25 + --zsh completions/_handlr \ 26 + --fish completions/handlr.fish 21 27 ''; 22 28 23 29 meta = with lib; {
+2 -2
pkgs/tools/misc/youtube-dl/default.nix
··· 18 18 # The websites youtube-dl deals with are a very moving target. That means that 19 19 # downloads break constantly. Because of that, updates should always be backported 20 20 # to the latest stable release. 21 - version = "2021.05.16"; 21 + version = "2021.06.06"; 22 22 23 23 src = fetchurl { 24 24 url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz"; 25 - sha256 = "1z8sdzvkxhscnzy7cnjag308glif0k8jylr11biqwzypm1f2l0fl"; 25 + sha256 = "1hqan9h55x9gfdakw554vic68w9gpvhblchwxlw265zxp56hxjrw"; 26 26 }; 27 27 28 28 nativeBuildInputs = [ installShellFiles makeWrapper ];
+3 -3
pkgs/tools/security/gpg-tui/default.nix
··· 9 9 10 10 rustPlatform.buildRustPackage rec { 11 11 pname = "gpg-tui"; 12 - version = "0.2.0"; 12 + version = "0.3.0"; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "orhun"; 16 16 repo = "gpg-tui"; 17 17 rev = "v${version}"; 18 - sha256 = "sha256-PwKfsIwGw4aUu8DF9VeuFzafp116E3jetsN4bS5YtRY="; 18 + sha256 = "sha256-5vhFgJZY1yaYFPS2qvrYGX3xyT0PbRKW2jmR4gz12Co="; 19 19 }; 20 20 21 - cargoSha256 = "sha256-6IRjfYntKQXrrl7ix+e6PEQX1bmiAW8Kd79mczCpaUY="; 21 + cargoSha256 = "sha256-g38L/FgqAsFh/ECZnNkJVCC/44z5VW3WK8mgIEEy7BQ="; 22 22 23 23 nativeBuildInputs = [ 24 24 gpgme # for gpgme-config
+5 -4
pkgs/tools/text/replace/default.nix
··· 1 1 { lib, stdenv, fetchurl }: 2 2 3 - stdenv.mkDerivation { 4 - name = "replace-2.24"; 3 + stdenv.mkDerivation rec { 4 + pname = "replace"; 5 + version = "2.24"; 5 6 6 7 src = fetchurl { 7 - url = "ftp://hpux.connect.org.uk/hpux/Users/replace-2.24/replace-2.24-src-11.11.tar.gz"; 8 - sha256 = "1c2nkxx83vmlh1v3ib6r2xqh121gdb1rharwsimcb2h0xwc558dm"; 8 + url = "http://hpux.connect.org.uk/ftp/hpux/Users/replace-${version}/replace-${version}-src-11.31.tar.gz"; 9 + sha256 = "18hkwhaz25s6209n5mpx9hmkyznlzygqj488p2l7nvp9zrlxb9sf"; 9 10 }; 10 11 11 12 outputs = [ "out" "man" ];
+26
pkgs/tools/wayland/wlrctl/default.nix
··· 1 + { lib, stdenv, fetchFromSourcehut, meson, pkg-config, scdoc, ninja, libxkbcommon, wayland }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "wlrctl"; 5 + version = "0.2.1"; 6 + 7 + src = fetchFromSourcehut { 8 + owner = "~brocellous"; 9 + repo = "wlrctl"; 10 + rev = "v${version}"; 11 + sha256 = "039cxc82k7x473n6d65jray90rj35qmfdmr390zy0c7ic7vn4b78"; 12 + }; 13 + 14 + nativeBuildInputs = [ meson pkg-config scdoc ninja ]; 15 + buildInputs = [ libxkbcommon wayland ]; 16 + 17 + NIX_CFLAGS_COMPILE = "-Wno-error=type-limits"; 18 + 19 + meta = with lib; { 20 + description = "Command line utility for miscellaneous wlroots Wayland extensions"; 21 + homepage = "https://git.sr.ht/~brocellous/wlrctl"; 22 + license = licenses.mit; 23 + maintainers = with maintainers; [ puffnfresh artturin ]; 24 + platforms = platforms.unix; 25 + }; 26 + }
-1
pkgs/top-level/aliases.nix
··· 654 654 rdiff_backup = rdiff-backup; # added 2014-11-23 655 655 rdmd = dtools; # added 2017-08-19 656 656 readline80 = throw "readline-8.0 is no longer supported in nixpkgs, please use 'readline' for main supported version or 'readline81' for most recent version"; # added 2021-04-22 657 - retroshare = throw "retroshare was removed because it was broken"; # added 2021-05-17 658 657 rhc = throw "rhc was deprecated on 2019-04-09: abandoned by upstream."; 659 658 rng_tools = rng-tools; # added 2018-10-24 660 659 robomongo = robo3t; #added 2017-09-28
+28 -2
pkgs/top-level/all-packages.nix
··· 411 411 412 412 ebook2cw = callPackage ../applications/radio/ebook2cw { }; 413 413 414 + edwin = callPackage ../data/fonts/edwin { }; 415 + 414 416 etBook = callPackage ../data/fonts/et-book { }; 415 417 416 418 fetchutils = callPackage ../tools/misc/fetchutils { }; ··· 856 858 857 859 amidst = callPackage ../tools/games/amidst { }; 858 860 861 + gamemode = callPackage ../tools/games/gamemode { 862 + libgamemode32 = pkgsi686Linux.gamemode.lib; 863 + }; 864 + 859 865 gfshare = callPackage ../tools/security/gfshare { }; 860 866 861 867 gobgp = callPackage ../tools/networking/gobgp { }; ··· 935 941 }; 936 942 937 943 logseq = callPackage ../applications/misc/logseq { 938 - electron = electron_11; 944 + electron = electron_12; 939 945 }; 940 946 941 947 lxterminal = callPackage ../applications/terminal-emulators/lxterminal { }; ··· 2273 2279 wlogout = callPackage ../tools/wayland/wlogout { }; 2274 2280 2275 2281 wlr-randr = callPackage ../tools/wayland/wlr-randr { }; 2282 + 2283 + wlrctl = callPackage ../tools/wayland/wlrctl { }; 2276 2284 2277 2285 wlsunset = callPackage ../tools/wayland/wlsunset { }; 2278 2286 ··· 11663 11671 11664 11672 ponyc = callPackage ../development/compilers/ponyc { 11665 11673 # Upstream pony has dropped support for versions compiled with gcc. 11666 - stdenv = clangStdenv; 11674 + stdenv = llvmPackages_9.stdenv; 11667 11675 }; 11668 11676 11669 11677 pony-corral = callPackage ../development/compilers/ponyc/pony-corral.nix { }; ··· 14872 14880 inherit fontconfig fontDirectories; 14873 14881 }; 14874 14882 14883 + f2c = callPackage ../development/tools/f2c { }; 14884 + 14875 14885 freealut = callPackage ../development/libraries/freealut { }; 14876 14886 14877 14887 freeglut = callPackage ../development/libraries/freeglut { }; ··· 17178 17188 17179 17189 mutest = callPackage ../development/libraries/mutest { }; 17180 17190 17191 + mvapich = callPackage ../development/libraries/mvapich { }; 17192 + 17181 17193 mygpoclient = pythonPackages.mygpoclient; 17182 17194 17183 17195 mygui = callPackage ../development/libraries/mygui { ··· 18609 18621 xlslib = callPackage ../development/libraries/xlslib { }; 18610 18622 18611 18623 xsimd = callPackage ../development/libraries/xsimd { }; 18624 + 18625 + xtensor = callPackage ../development/libraries/xtensor { }; 18612 18626 18613 18627 xtl = callPackage ../development/libraries/xtl { }; 18614 18628 ··· 26315 26329 26316 26330 remotebox = callPackage ../applications/virtualization/remotebox { }; 26317 26331 26332 + retroshare = libsForQt5.callPackage ../applications/networking/p2p/retroshare { }; 26333 + 26318 26334 rgp = libsForQt5.callPackage ../development/tools/rgp { }; 26319 26335 26320 26336 ricochet = libsForQt5.callPackage ../applications/networking/instant-messengers/ricochet { }; ··· 28343 28359 28344 28360 fava = callPackage ../applications/office/fava {}; 28345 28361 28362 + fheroes2 = callPackage ../games/fheroes2 {}; 28363 + 28346 28364 fish-fillets-ng = callPackage ../games/fish-fillets-ng {}; 28347 28365 28348 28366 flightgear = libsForQt5.callPackage ../games/flightgear { }; ··· 28931 28949 tome4 = callPackage ../games/tome4 { }; 28932 28950 28933 28951 toppler = callPackage ../games/toppler { }; 28952 + 28953 + torus-trooper = callPackage ../games/torus-trooper { }; 28934 28954 28935 28955 trackballs = callPackage ../games/trackballs { }; 28936 28956 ··· 28938 28958 28939 28959 tts = callPackage ../tools/audio/tts { }; 28940 28960 28961 + tumiki-fighters = callPackage ../games/tumiki-fighters { }; 28962 + 28941 28963 tuxpaint = callPackage ../games/tuxpaint { }; 28942 28964 28943 28965 tuxtype = callPackage ../games/tuxtype { }; ··· 30391 30413 faust2lv2 = callPackage ../applications/audio/faust/faust2lv2.nix { }; 30392 30414 30393 30415 faustlive = callPackage ../applications/audio/faust/faustlive.nix { }; 30416 + 30417 + faustPhysicalModeling = callPackage ../applications/audio/faustPhysicalModeling { }; 30418 + 30419 + faustStk = callPackage ../applications/audio/faustStk { }; 30394 30420 30395 30421 fceux = callPackage ../misc/emulators/fceux { }; 30396 30422
+28 -44
pkgs/top-level/dotnet-packages.nix
··· 81 81 outputFiles = [ "*" ]; 82 82 }; 83 83 84 + FSharpData = fetchNuGet { 85 + baseName = "FSharp.Data"; 86 + version = "4.1.1"; 87 + sha256 = "0ytjiQi8vQQU51JYexnC13Bi7NqVmLRzM75SOZ+hhQU="; 88 + outputFiles = [ "lib/*" ]; 89 + 90 + meta = with lib; { 91 + description = "F# Data: Library for Data Access"; 92 + homepage = "https://fsprojects.github.io/FSharp.Data/"; 93 + license = licenses.asl20; 94 + maintainers = [ maintainers.ratsclub ]; 95 + }; 96 + }; 97 + 84 98 FSharpData225 = fetchNuGet { 85 99 baseName = "FSharp.Data"; 86 100 version = "2.2.5"; ··· 616 630 }; 617 631 }; 618 632 619 - FSharpData = buildDotnetPackage rec { 620 - baseName = "FSharp.Data"; 621 - version = "2.2.3"; 622 - 623 - src = fetchFromGitHub { 624 - owner = "fsharp"; 625 - repo = baseName; 626 - rev = version; 627 - sha256 = "1h3v9rc8k0khp61cv5n01larqbxd3xcx3q52sw5zf9l0661vw7qr"; 628 - }; 629 - 630 - buildInputs = [ fsharp ]; 631 - 632 - fileProvidedTypes = fetchurl { 633 - name = "ProvidedTypes.fs"; 634 - url = "https://raw.githubusercontent.com/fsprojects/FSharp.TypeProviders.StarterPack/877014bfa6244ac382642e113d7cd6c9bc27bc6d/src/ProvidedTypes.fs"; 635 - sha256 = "1lb056v1xld1rfx6a8p8i2jz8i6qa2r2823n5izsf1qg1qgf2980"; 636 - }; 637 - 638 - fileDebugProvidedTypes = fetchurl { 639 - name = "DebugProvidedTypes.fs"; 640 - url = "https://raw.githubusercontent.com/fsprojects/FSharp.TypeProviders.StarterPack/877014bfa6244ac382642e113d7cd6c9bc27bc6d/src/DebugProvidedTypes.fs"; 641 - sha256 = "1whyrf2jv6fs7kgysn2086v15ggjsd54g1xfs398mp46m0nxp91f"; 642 - }; 643 - 644 - preConfigure = '' 645 - # Copy single-files-in-git-repos 646 - mkdir -p "paket-files/fsprojects/FSharp.TypeProviders.StarterPack/src" 647 - cp -v "${fileProvidedTypes}" "paket-files/fsprojects/FSharp.TypeProviders.StarterPack/src/ProvidedTypes.fs" 648 - cp -v "${fileDebugProvidedTypes}" "paket-files/fsprojects/FSharp.TypeProviders.StarterPack/src/DebugProvidedTypes.fs" 649 - ''; 650 - 651 - xBuildFiles = [ "src/FSharp.Data.fsproj" "src/FSharp.Data.DesignTime.fsproj" ]; 652 - outputFiles = [ "bin/*.dll" "bin/*.xml" ]; 653 - 654 - meta = { 655 - description = "F# Data: Library for Data Access"; 656 - homepage = "https://fsharp.github.io/FSharp.Data/"; 657 - license = lib.licenses.asl20; 658 - maintainers = with lib.maintainers; [ obadz ]; 659 - platforms = with lib.platforms; linux; 660 - }; 661 - }; 662 - 663 633 # FSharpxExtras = buildDotnetPackage rec { 664 634 # baseName = "FSharpx.Extras"; 665 635 # version = "1.8.41"; ··· 974 944 license = lib.licenses.mit; 975 945 maintainers = with lib.maintainers; [ obadz ]; 976 946 platforms = with lib.platforms; linux; 947 + }; 948 + }; 949 + 950 + YamlDotNet = fetchNuGet { 951 + baseName = "YamlDotNet"; 952 + version = "11.1.1"; 953 + sha256 = "rwZ/QyDVrN3wGrEYKY3QY5Xqo2Tp3FkR6dh4QrC+QS0="; 954 + outputFiles = [ "lib/*" ]; 955 + 956 + meta = with lib; { 957 + description = "YamlDotNet is a .NET library for YAML"; 958 + homepage = "https://github.com/aaubry/YamlDotNet"; 959 + license = licenses.mit; 960 + maintainers = [ maintainers.ratsclub ]; 977 961 }; 978 962 }; 979 963
+24
pkgs/top-level/python-packages.nix
··· 223 223 224 224 agent-py = callPackage ../development/python-modules/agent-py { }; 225 225 226 + aio-georss-client = callPackage ../development/python-modules/aio-georss-client { }; 227 + 228 + aio-georss-gdacs = callPackage ../development/python-modules/aio-georss-gdacs { }; 229 + 226 230 aioambient = callPackage ../development/python-modules/aioambient { }; 227 231 228 232 ailment = callPackage ../development/python-modules/ailment { }; ··· 2741 2745 geopandas = callPackage ../development/python-modules/geopandas { }; 2742 2746 2743 2747 geopy = callPackage ../development/python-modules/geopy { }; 2748 + 2749 + georss-client = callPackage ../development/python-modules/georss-client { }; 2750 + 2751 + georss-generic-client = callPackage ../development/python-modules/georss-generic-client { }; 2752 + 2753 + georss-ign-sismologia-client = callPackage ../development/python-modules/georss-ign-sismologia-client { }; 2754 + 2755 + georss-ingv-centro-nazionale-terremoti-client = callPackage ../development/python-modules/georss-ingv-centro-nazionale-terremoti-client { }; 2756 + 2757 + georss-nrcan-earthquakes-client = callPackage ../development/python-modules/georss-nrcan-earthquakes-client { }; 2758 + 2759 + georss-qld-bushfire-alert-client = callPackage ../development/python-modules/georss-qld-bushfire-alert-client { }; 2760 + 2761 + georss-tfs-incidents-client = callPackage ../development/python-modules/georss-tfs-incidents-client { }; 2762 + 2763 + georss-wa-dfes-client = callPackage ../development/python-modules/georss-wa-dfes-client { }; 2744 2764 2745 2765 getmac = callPackage ../development/python-modules/getmac { }; 2746 2766 ··· 7894 7914 7895 7915 sphinxcontrib-devhelp = callPackage ../development/python-modules/sphinxcontrib-devhelp { }; 7896 7916 7917 + sphinxcontrib-excel-table = callPackage ../development/python-modules/sphinxcontrib-excel-table { }; 7918 + 7897 7919 sphinxcontrib-fulltoc = callPackage ../development/python-modules/sphinxcontrib-fulltoc { }; 7898 7920 7899 7921 sphinxcontrib-htmlhelp = callPackage ../development/python-modules/sphinxcontrib-htmlhelp { }; ··· 8075 8097 subarulink = callPackage ../development/python-modules/subarulink { }; 8076 8098 8077 8099 subdownloader = callPackage ../development/python-modules/subdownloader { }; 8100 + 8101 + subliminal = callPackage ../development/python-modules/subliminal { }; 8078 8102 8079 8103 subunit = callPackage ../development/python-modules/subunit { 8080 8104 inherit (pkgs) subunit cppunit check;