diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 64719a7bc3a8..eba0bf651335 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -46,7 +46,6 @@ /nixos/default.nix @nbp @infinisil /nixos/lib/from-env.nix @nbp @infinisil /nixos/lib/eval-config.nix @nbp @infinisil -/nixos/doc @ryantm /nixos/doc/manual/configuration/abstractions.xml @nbp /nixos/doc/manual/configuration/config-file.xml @nbp /nixos/doc/manual/configuration/config-syntax.xml @nbp diff --git a/.github/workflows/backport.yml b/.github/workflows/backport.yml index bea970f02d40..0e3f315bb0de 100644 --- a/.github/workflows/backport.yml +++ b/.github/workflows/backport.yml @@ -15,13 +15,13 @@ jobs: ref: ${{ github.event.pull_request.head.sha }} - name: Create backport PRs # should be kept in sync with `version` - uses: zeebe-io/backport-action@2b994724142df0774855690db56bc6308fb99ffa + uses: zeebe-io/backport-action@v0.0.5 with: # Config README: https://github.com/zeebe-io/backport-action#backport-action github_token: ${{ secrets.GITHUB_TOKEN }} github_workspace: ${{ github.workspace }} # should be kept in sync with `uses` - version: 2b994724142df0774855690db56bc6308fb99ffa + version: v0.0.5 pull_description: |- Bot-based backport to `${target_branch}`, triggered by a label in #${pull_number}. diff --git a/.github/workflows/manual-nixos.yml b/.github/workflows/manual-nixos.yml index 032a456569d3..edd2755302a1 100644 --- a/.github/workflows/manual-nixos.yml +++ b/.github/workflows/manual-nixos.yml @@ -22,7 +22,7 @@ jobs: with: # explicitly enable sandbox extra_nix_config: sandbox = true - - uses: cachix/cachix-action@v9 + - uses: cachix/cachix-action@v10 with: # This cache is for the nixos/nixpkgs manual builds and should not be trusted or used elsewhere. name: nixpkgs-ci diff --git a/.github/workflows/manual-nixpkgs.yml b/.github/workflows/manual-nixpkgs.yml index 77655c494e06..e27a281a9332 100644 --- a/.github/workflows/manual-nixpkgs.yml +++ b/.github/workflows/manual-nixpkgs.yml @@ -22,7 +22,7 @@ jobs: with: # explicitly enable sandbox extra_nix_config: sandbox = true - - uses: cachix/cachix-action@v9 + - uses: cachix/cachix-action@v10 with: # This cache is for the nixos/nixpkgs manual builds and should not be trusted or used elsewhere. name: nixpkgs-ci diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 94007a0274c4..fd607cfdbe0e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1530,6 +1530,12 @@ githubId = 1111035; name = "Break Yang"; }; + brecht = { + email = "brecht.savelkoul@alumni.lse.ac.uk"; + github = "brechtcs"; + githubId = 6107054; + name = "Brecht Savelkoul"; + }; brettlyons = { email = "blyons@fastmail.com"; github = "brettlyons"; @@ -4249,6 +4255,12 @@ githubId = 131599; name = "Martin Weinelt"; }; + hexagonal-sun = { + email = "dev@mattleach.net"; + github = "hexagonal-sun"; + githubId = 222664; + name = "Matthew Leach"; + }; hh = { email = "hh@m-labs.hk"; github = "HarryMakes"; diff --git a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml index f573f7313652..9dd98a5262f8 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml @@ -702,6 +702,19 @@ option. + + + The + services.syncoid.enable + module now properly drops ZFS permissions after usage. Before + it delegated permissions to whole pools instead of datasets + and didn’t clean up after execution. You can manually look + this up for your pools by running + zfs allow your-pool-name and use + zfs unallow syncoid your-pool-name to clean + this up. + + diff --git a/nixos/doc/manual/release-notes/rl-2111.section.md b/nixos/doc/manual/release-notes/rl-2111.section.md index 5e379ad6fd1f..12e1a9384331 100644 --- a/nixos/doc/manual/release-notes/rl-2111.section.md +++ b/nixos/doc/manual/release-notes/rl-2111.section.md @@ -183,3 +183,5 @@ pt-services.clipcat.enable). - NSS modules which should come after `dns` should use mkAfter. - The [networking.wireless.iwd](options.html#opt-networking.wireless.iwd.enable) module has a new [networking.wireless.iwd.settings](options.html#opt-networking.wireless.iwd.settings) option. + +- The [services.syncoid.enable](options.html#opt-services.syncoid.enable) module now properly drops ZFS permissions after usage. Before it delegated permissions to whole pools instead of datasets and didn't clean up after execution. You can manually look this up for your pools by running `zfs allow your-pool-name` and use `zfs unallow syncoid your-pool-name` to clean this up. diff --git a/nixos/modules/services/backup/sanoid.nix b/nixos/modules/services/backup/sanoid.nix index abc4def1c61f..41d0e2e1df68 100644 --- a/nixos/modules/services/backup/sanoid.nix +++ b/nixos/modules/services/backup/sanoid.nix @@ -52,7 +52,7 @@ let use_template = mkOption { description = "Names of the templates to use for this dataset."; type = types.listOf (types.enum (attrNames cfg.templates)); - default = []; + default = [ ]; }; useTemplate = use_template; @@ -70,116 +70,127 @@ let processChildrenOnly = process_children_only; }; - # Extract pool names from configured datasets - pools = unique (map (d: head (builtins.match "([^/]+).*" d)) (attrNames cfg.datasets)); + # Extract unique dataset names + datasets = unique (attrNames cfg.datasets); - configFile = let - mkValueString = v: - if builtins.isList v then concatStringsSep "," v - else generators.mkValueStringDefault {} v; + # Function to build "zfs allow" and "zfs unallow" commands for the + # filesystems we've delegated permissions to. + buildAllowCommand = zfsAction: permissions: dataset: lib.escapeShellArgs [ + # Here we explicitly use the booted system to guarantee the stable API needed by ZFS + "-+/run/booted-system/sw/bin/zfs" + zfsAction + "sanoid" + (concatStringsSep "," permissions) + dataset + ]; - mkKeyValue = k: v: if v == null then "" - else if k == "processChildrenOnly" then "" - else if k == "useTemplate" then "" - else generators.mkKeyValueDefault { inherit mkValueString; } "=" k v; - in generators.toINI { inherit mkKeyValue; } cfg.settings; + configFile = + let + mkValueString = v: + if builtins.isList v then concatStringsSep "," v + else generators.mkValueStringDefault { } v; -in { + mkKeyValue = k: v: + if v == null then "" + else if k == "processChildrenOnly" then "" + else if k == "useTemplate" then "" + else generators.mkKeyValueDefault { inherit mkValueString; } "=" k v; + in + generators.toINI { inherit mkKeyValue; } cfg.settings; - # Interface +in +{ - options.services.sanoid = { - enable = mkEnableOption "Sanoid ZFS snapshotting service"; + # Interface - interval = mkOption { - type = types.str; - default = "hourly"; - example = "daily"; - description = '' - Run sanoid at this interval. The default is to run hourly. + options.services.sanoid = { + enable = mkEnableOption "Sanoid ZFS snapshotting service"; - The format is described in - systemd.time - 7. - ''; - }; + interval = mkOption { + type = types.str; + default = "hourly"; + example = "daily"; + description = '' + Run sanoid at this interval. The default is to run hourly. - datasets = mkOption { - type = types.attrsOf (types.submodule ({config, options, ...}: { - freeformType = datasetSettingsType; - options = commonOptions // datasetOptions; - config.use_template = mkAliasDefinitions (mkDefault options.useTemplate or {}); - config.process_children_only = mkAliasDefinitions (mkDefault options.processChildrenOnly or {}); - })); - default = {}; - description = "Datasets to snapshot."; - }; - - templates = mkOption { - type = types.attrsOf (types.submodule { - freeformType = datasetSettingsType; - options = commonOptions; - }); - default = {}; - description = "Templates for datasets."; - }; - - settings = mkOption { - type = types.attrsOf datasetSettingsType; - description = '' - Free-form settings written directly to the config file. See - - for allowed values. - ''; - }; - - extraArgs = mkOption { - type = types.listOf types.str; - default = []; - example = [ "--verbose" "--readonly" "--debug" ]; - description = '' - Extra arguments to pass to sanoid. See - - for allowed options. - ''; - }; + The format is described in + systemd.time + 7. + ''; }; - # Implementation - - config = mkIf cfg.enable { - services.sanoid.settings = mkMerge [ - (mapAttrs' (d: v: nameValuePair ("template_" + d) v) cfg.templates) - (mapAttrs (d: v: v) cfg.datasets) - ]; - - systemd.services.sanoid = { - description = "Sanoid snapshot service"; - serviceConfig = { - ExecStartPre = map (pool: lib.escapeShellArgs [ - "+/run/booted-system/sw/bin/zfs" "allow" - "sanoid" "snapshot,mount,destroy" pool - ]) pools; - ExecStart = lib.escapeShellArgs ([ - "${pkgs.sanoid}/bin/sanoid" - "--cron" - "--configdir" (pkgs.writeTextDir "sanoid.conf" configFile) - ] ++ cfg.extraArgs); - ExecStopPost = map (pool: lib.escapeShellArgs [ - "+/run/booted-system/sw/bin/zfs" "unallow" "sanoid" pool - ]) pools; - User = "sanoid"; - Group = "sanoid"; - DynamicUser = true; - RuntimeDirectory = "sanoid"; - CacheDirectory = "sanoid"; - }; - # Prevents missing snapshots during DST changes - environment.TZ = "UTC"; - after = [ "zfs.target" ]; - startAt = cfg.interval; - }; + datasets = mkOption { + type = types.attrsOf (types.submodule ({ config, options, ... }: { + freeformType = datasetSettingsType; + options = commonOptions // datasetOptions; + config.use_template = mkAliasDefinitions (mkDefault options.useTemplate or { }); + config.process_children_only = mkAliasDefinitions (mkDefault options.processChildrenOnly or { }); + })); + default = { }; + description = "Datasets to snapshot."; }; - meta.maintainers = with maintainers; [ lopsided98 ]; - } + templates = mkOption { + type = types.attrsOf (types.submodule { + freeformType = datasetSettingsType; + options = commonOptions; + }); + default = { }; + description = "Templates for datasets."; + }; + + settings = mkOption { + type = types.attrsOf datasetSettingsType; + description = '' + Free-form settings written directly to the config file. See + + for allowed values. + ''; + }; + + extraArgs = mkOption { + type = types.listOf types.str; + default = [ ]; + example = [ "--verbose" "--readonly" "--debug" ]; + description = '' + Extra arguments to pass to sanoid. See + + for allowed options. + ''; + }; + }; + + # Implementation + + config = mkIf cfg.enable { + services.sanoid.settings = mkMerge [ + (mapAttrs' (d: v: nameValuePair ("template_" + d) v) cfg.templates) + (mapAttrs (d: v: v) cfg.datasets) + ]; + + systemd.services.sanoid = { + description = "Sanoid snapshot service"; + serviceConfig = { + ExecStartPre = (map (buildAllowCommand "allow" [ "snapshot" "mount" "destroy" ]) datasets); + ExecStopPost = (map (buildAllowCommand "unallow" [ "snapshot" "mount" "destroy" ]) datasets); + ExecStart = lib.escapeShellArgs ([ + "${pkgs.sanoid}/bin/sanoid" + "--cron" + "--configdir" + (pkgs.writeTextDir "sanoid.conf" configFile) + ] ++ cfg.extraArgs); + User = "sanoid"; + Group = "sanoid"; + DynamicUser = true; + RuntimeDirectory = "sanoid"; + CacheDirectory = "sanoid"; + }; + # Prevents missing snapshots during DST changes + environment.TZ = "UTC"; + after = [ "zfs.target" ]; + startAt = cfg.interval; + }; + }; + + meta.maintainers = with maintainers; [ lopsided98 ]; +} diff --git a/nixos/modules/services/backup/syncoid.nix b/nixos/modules/services/backup/syncoid.nix index 888ef20f642e..73b01d4b53fa 100644 --- a/nixos/modules/services/backup/syncoid.nix +++ b/nixos/modules/services/backup/syncoid.nix @@ -5,226 +5,243 @@ with lib; let cfg = config.services.syncoid; - # Extract the pool name of a local dataset (any dataset not containing "@") - localPoolName = d: optionals (d != null) ( - let m = builtins.match "([^/@]+)[^@]*" d; in - optionals (m != null) m); + # Extract local dasaset names (so no datasets containing "@") + localDatasetName = d: optionals (d != null) ( + let m = builtins.match "([^/@]+[^@]*)" d; in + optionals (m != null) m + ); # Escape as required by: https://www.freedesktop.org/software/systemd/man/systemd.unit.html escapeUnitName = name: lib.concatMapStrings (s: if lib.isList s then "-" else s) - (builtins.split "[^a-zA-Z0-9_.\\-]+" name); -in { + (builtins.split "[^a-zA-Z0-9_.\\-]+" name); - # Interface + # Function to build "zfs allow" and "zfs unallow" commands for the + # filesystems we've delegated permissions to. + buildAllowCommand = zfsAction: permissions: dataset: lib.escapeShellArgs [ + # Here we explicitly use the booted system to guarantee the stable API needed by ZFS + "-+/run/booted-system/sw/bin/zfs" + zfsAction + cfg.user + (concatStringsSep "," permissions) + dataset + ]; +in +{ - options.services.syncoid = { - enable = mkEnableOption "Syncoid ZFS synchronization service"; + # Interface - interval = mkOption { - type = types.str; - default = "hourly"; - example = "*-*-* *:15:00"; - description = '' - Run syncoid at this interval. The default is to run hourly. + options.services.syncoid = { + enable = mkEnableOption "Syncoid ZFS synchronization service"; - The format is described in - systemd.time - 7. - ''; - }; + interval = mkOption { + type = types.str; + default = "hourly"; + example = "*-*-* *:15:00"; + description = '' + Run syncoid at this interval. The default is to run hourly. - user = mkOption { - type = types.str; - default = "syncoid"; - example = "backup"; - description = '' - The user for the service. ZFS privilege delegation will be - automatically configured for any local pools used by syncoid if this - option is set to a user other than root. The user will be given the - "hold" and "send" privileges on any pool that has datasets being sent - and the "create", "mount", "receive", and "rollback" privileges on - any pool that has datasets being received. - ''; - }; + The format is described in + systemd.time + 7. + ''; + }; - group = mkOption { - type = types.str; - default = "syncoid"; - example = "backup"; - description = "The group for the service."; - }; + user = mkOption { + type = types.str; + default = "syncoid"; + example = "backup"; + description = '' + The user for the service. ZFS privilege delegation will be + automatically configured for any local pools used by syncoid if this + option is set to a user other than root. The user will be given the + "hold" and "send" privileges on any pool that has datasets being sent + and the "create", "mount", "receive", and "rollback" privileges on + any pool that has datasets being received. + ''; + }; - sshKey = mkOption { - type = types.nullOr types.path; - # Prevent key from being copied to store - apply = mapNullable toString; - default = null; - description = '' - SSH private key file to use to login to the remote system. Can be - overridden in individual commands. - ''; - }; + group = mkOption { + type = types.str; + default = "syncoid"; + example = "backup"; + description = "The group for the service."; + }; - commonArgs = mkOption { - type = types.listOf types.str; - default = []; - example = [ "--no-sync-snap" ]; - description = '' - Arguments to add to every syncoid command, unless disabled for that - command. See - - for available options. - ''; - }; + sshKey = mkOption { + type = types.nullOr types.path; + # Prevent key from being copied to store + apply = mapNullable toString; + default = null; + description = '' + SSH private key file to use to login to the remote system. Can be + overridden in individual commands. + ''; + }; - service = mkOption { - type = types.attrs; - default = {}; - description = '' - Systemd configuration common to all syncoid services. - ''; - }; + commonArgs = mkOption { + type = types.listOf types.str; + default = [ ]; + example = [ "--no-sync-snap" ]; + description = '' + Arguments to add to every syncoid command, unless disabled for that + command. See + + for available options. + ''; + }; - commands = mkOption { - type = types.attrsOf (types.submodule ({ name, ... }: { - options = { - source = mkOption { - type = types.str; - example = "pool/dataset"; - description = '' - Source ZFS dataset. Can be either local or remote. Defaults to - the attribute name. - ''; - }; + service = mkOption { + type = types.attrs; + default = { }; + description = '' + Systemd configuration common to all syncoid services. + ''; + }; - target = mkOption { - type = types.str; - example = "user@server:pool/dataset"; - description = '' - Target ZFS dataset. Can be either local - (pool/dataset) or remote - (user@server:pool/dataset). - ''; - }; - - recursive = mkEnableOption ''the transfer of child datasets''; - - sshKey = mkOption { - type = types.nullOr types.path; - # Prevent key from being copied to store - apply = mapNullable toString; - description = '' - SSH private key file to use to login to the remote system. - Defaults to option. - ''; - }; - - sendOptions = mkOption { - type = types.separatedString " "; - default = ""; - example = "Lc e"; - description = '' - Advanced options to pass to zfs send. Options are specified - without their leading dashes and separated by spaces. - ''; - }; - - recvOptions = mkOption { - type = types.separatedString " "; - default = ""; - example = "ux recordsize o compression=lz4"; - description = '' - Advanced options to pass to zfs recv. Options are specified - without their leading dashes and separated by spaces. - ''; - }; - - useCommonArgs = mkOption { - type = types.bool; - default = true; - description = '' - Whether to add the configured common arguments to this command. - ''; - }; - - service = mkOption { - type = types.attrs; - default = {}; - description = '' - Systemd configuration specific to this syncoid service. - ''; - }; - - extraArgs = mkOption { - type = types.listOf types.str; - default = []; - example = [ "--sshport 2222" ]; - description = "Extra syncoid arguments for this command."; - }; + commands = mkOption { + type = types.attrsOf (types.submodule ({ name, ... }: { + options = { + source = mkOption { + type = types.str; + example = "pool/dataset"; + description = '' + Source ZFS dataset. Can be either local or remote. Defaults to + the attribute name. + ''; }; - config = { - source = mkDefault name; - sshKey = mkDefault cfg.sshKey; + + target = mkOption { + type = types.str; + example = "user@server:pool/dataset"; + description = '' + Target ZFS dataset. Can be either local + (pool/dataset) or remote + (user@server:pool/dataset). + ''; }; - })); - default = {}; - example = literalExample '' - { - "pool/test".target = "root@target:pool/test"; - } - ''; - description = "Syncoid commands to run."; + + recursive = mkEnableOption ''the transfer of child datasets''; + + sshKey = mkOption { + type = types.nullOr types.path; + # Prevent key from being copied to store + apply = mapNullable toString; + description = '' + SSH private key file to use to login to the remote system. + Defaults to option. + ''; + }; + + sendOptions = mkOption { + type = types.separatedString " "; + default = ""; + example = "Lc e"; + description = '' + Advanced options to pass to zfs send. Options are specified + without their leading dashes and separated by spaces. + ''; + }; + + recvOptions = mkOption { + type = types.separatedString " "; + default = ""; + example = "ux recordsize o compression=lz4"; + description = '' + Advanced options to pass to zfs recv. Options are specified + without their leading dashes and separated by spaces. + ''; + }; + + useCommonArgs = mkOption { + type = types.bool; + default = true; + description = '' + Whether to add the configured common arguments to this command. + ''; + }; + + service = mkOption { + type = types.attrs; + default = { }; + description = '' + Systemd configuration specific to this syncoid service. + ''; + }; + + extraArgs = mkOption { + type = types.listOf types.str; + default = [ ]; + example = [ "--sshport 2222" ]; + description = "Extra syncoid arguments for this command."; + }; + }; + config = { + source = mkDefault name; + sshKey = mkDefault cfg.sshKey; + }; + })); + default = { }; + example = literalExample '' + { + "pool/test".target = "root@target:pool/test"; + } + ''; + description = "Syncoid commands to run."; + }; + }; + + # Implementation + + config = mkIf cfg.enable { + users = { + users = mkIf (cfg.user == "syncoid") { + syncoid = { + group = cfg.group; + isSystemUser = true; + # For syncoid to be able to create /var/lib/syncoid/.ssh/ + # and to use custom ssh_config or known_hosts. + home = "/var/lib/syncoid"; + createHome = false; + }; + }; + groups = mkIf (cfg.group == "syncoid") { + syncoid = { }; }; }; - # Implementation - - config = mkIf cfg.enable { - users = { - users = mkIf (cfg.user == "syncoid") { - syncoid = { - group = cfg.group; - isSystemUser = true; - # For syncoid to be able to create /var/lib/syncoid/.ssh/ - # and to use custom ssh_config or known_hosts. - home = "/var/lib/syncoid"; - createHome = false; - }; - }; - groups = mkIf (cfg.group == "syncoid") { - syncoid = {}; - }; - }; - - systemd.services = mapAttrs' (name: c: + systemd.services = mapAttrs' + (name: c: nameValuePair "syncoid-${escapeUnitName name}" (mkMerge [ - { description = "Syncoid ZFS synchronization from ${c.source} to ${c.target}"; + { + description = "Syncoid ZFS synchronization from ${c.source} to ${c.target}"; after = [ "zfs.target" ]; startAt = cfg.interval; # syncoid may need zpool to get feature@extensible_dataset path = [ "/run/booted-system/sw/bin/" ]; serviceConfig = { ExecStartPre = - map (pool: lib.escapeShellArgs [ - "+/run/booted-system/sw/bin/zfs" "allow" - cfg.user "bookmark,hold,send,snapshot,destroy" pool - # Permissions snapshot and destroy are in case --no-sync-snap is not used - ]) (localPoolName c.source) ++ - map (pool: lib.escapeShellArgs [ - "+/run/booted-system/sw/bin/zfs" "allow" - cfg.user "create,mount,receive,rollback" pool - ]) (localPoolName c.target); + # Permissions snapshot and destroy are in case --no-sync-snap is not used + (map (buildAllowCommand "allow" [ "bookmark" "hold" "send" "snapshot" "destroy" ]) (localDatasetName c.source)) ++ + (map (buildAllowCommand "allow" [ "create" "mount" "receive" "rollback" ]) (localDatasetName c.target)); + ExecStopPost = + # Permissions snapshot and destroy are in case --no-sync-snap is not used + (map (buildAllowCommand "unallow" [ "bookmark" "hold" "send" "snapshot" "destroy" ]) (localDatasetName c.source)) ++ + (map (buildAllowCommand "unallow" [ "create" "mount" "receive" "rollback" ]) (localDatasetName c.target)); ExecStart = lib.escapeShellArgs ([ "${pkgs.sanoid}/bin/syncoid" ] ++ optionals c.useCommonArgs cfg.commonArgs ++ optional c.recursive "-r" ++ optionals (c.sshKey != null) [ "--sshkey" c.sshKey ] ++ c.extraArgs - ++ [ "--sendoptions" c.sendOptions - "--recvoptions" c.recvOptions - "--no-privilege-elevation" - c.source c.target - ]); + ++ [ + "--sendoptions" + c.sendOptions + "--recvoptions" + c.recvOptions + "--no-privilege-elevation" + c.source + c.target + ]); User = cfg.user; Group = cfg.group; StateDirectory = [ "syncoid" ]; @@ -240,7 +257,7 @@ in { # systemd-analyze security | grep syncoid-'*' AmbientCapabilities = ""; CapabilityBoundingSet = ""; - DeviceAllow = ["/dev/zfs"]; + DeviceAllow = [ "/dev/zfs" ]; LockPersonality = true; MemoryDenyWriteExecute = true; NoNewPrivileges = true; @@ -266,7 +283,7 @@ in { BindPaths = [ "/dev/zfs" ]; BindReadOnlyPaths = [ builtins.storeDir "/etc" "/run" "/bin/sh" ]; # Avoid useless mounting of RootDirectory= in the own RootDirectory= of ExecStart='s mount namespace. - InaccessiblePaths = ["-+/run/syncoid/${escapeUnitName name}"]; + InaccessiblePaths = [ "-+/run/syncoid/${escapeUnitName name}" ]; MountAPIVFS = true; # Create RootDirectory= in the host's mount namespace. RuntimeDirectory = [ "syncoid/${escapeUnitName name}" ]; @@ -277,8 +294,14 @@ in { # perf stat -x, 2>perf.log -e 'syscalls:sys_enter_*' syncoid … # awk >perf.syscalls -F "," '$1 > 0 {sub("syscalls:sys_enter_","",$3); print $3}' perf.log # systemd-analyze syscall-filter | grep -v -e '#' | sed -e ':loop; /^[^ ]/N; s/\n //; t loop' | grep $(printf ' -e \\<%s\\>' $(cat perf.syscalls)) | cut -f 1 -d ' ' - "~@aio" "~@chown" "~@keyring" "~@memlock" "~@privileged" - "~@resources" "~@setuid" "~@sync" "~@timer" + "~@aio" + "~@chown" + "~@keyring" + "~@memlock" + "~@privileged" + "~@resources" + "~@setuid" + "~@timer" ]; SystemCallArchitectures = "native"; # This is for BindPaths= and BindReadOnlyPaths= @@ -288,8 +311,9 @@ in { } cfg.service c.service - ])) cfg.commands; - }; + ])) + cfg.commands; + }; - meta.maintainers = with maintainers; [ julm lopsided98 ]; - } + meta.maintainers = with maintainers; [ julm lopsided98 ]; +} diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix index 2f17608560f7..d9f7ce5d2c32 100644 --- a/nixos/modules/tasks/filesystems.nix +++ b/nixos/modules/tasks/filesystems.nix @@ -324,28 +324,33 @@ in in listToAttrs (map formatDevice (filter (fs: fs.autoFormat) fileSystems)) // { # Mount /sys/fs/pstore for evacuating panic logs and crashdumps from persistent storage onto the disk using systemd-pstore. # This cannot be done with the other special filesystems because the pstore module (which creates the mount point) is not loaded then. - # Since the pstore filesystem is usually empty right after mounting because the backend isn't registered yet, and a path unit cannot detect files inside of it, the same service waits for that to happen. systemd's restart mechanism can't be used here because the first failure also fails all dependent units. "mount-pstore" = { serviceConfig = { Type = "oneshot"; - ExecStart = "${pkgs.util-linux}/bin/mount -t pstore -o nosuid,noexec,nodev pstore /sys/fs/pstore"; - ExecStartPost = pkgs.writeShellScript "wait-for-pstore.sh" '' + # skip on kernels without the pstore module + ExecCondition = "${pkgs.kmod}/bin/modprobe -b pstore"; + ExecStart = pkgs.writeShellScript "mount-pstore.sh" '' set -eu - TRIES=0 - while [ $TRIES -lt 20 ] && [ "$(cat /sys/module/pstore/parameters/backend)" = "(null)" ]; do - sleep 0.1 - TRIES=$((TRIES+1)) + # if the pstore module is builtin it will have mounted the persistent store automatically. it may also be already mounted for other reasons. + ${pkgs.util-linux}/bin/mountpoint -q /sys/fs/pstore || ${pkgs.util-linux}/bin/mount -t pstore -o nosuid,noexec,nodev pstore /sys/fs/pstore + # wait up to five seconds (arbitrary, happened within one in testing) for the backend to be registered and the files to appear. a systemd path unit cannot detect this happening; and succeeding after a restart would not start dependent units. + TRIES=50 + while [ "$(cat /sys/module/pstore/parameters/backend)" = "(null)" ]; do + if (( $TRIES )); then + sleep 0.1 + TRIES=$((TRIES-1)) + else + echo "Persistent Storage backend was not registered in time." >&2 + exit 1 + fi done ''; RemainAfterExit = true; }; unitConfig = { - ConditionPathIsMountPoint = "!/sys/fs/pstore"; ConditionVirtualization = "!container"; DefaultDependencies = false; # needed to prevent a cycle }; - after = [ "modprobe@pstore.service" ]; - requires = [ "modprobe@pstore.service" ]; before = [ "systemd-pstore.service" ]; wantedBy = [ "systemd-pstore.service" ]; }; diff --git a/nixos/tests/chromium.nix b/nixos/tests/chromium.nix index 0c85b2d21998..ea9e19cefbc9 100644 --- a/nixos/tests/chromium.nix +++ b/nixos/tests/chromium.nix @@ -80,12 +80,8 @@ mapAttrs (channel: chromiumPkg: makeTest rec { binary = pname # Add optional CLI options: options = [] - major_version = "${versions.major (getVersion chromiumPkg.name)}" - if major_version > "91" and pname.startswith("google-chrome"): - # To avoid a GPU crash: - options += ["--use-gl=angle", "--use-angle=swiftshader"] - options.append("file://${startupHTML}") # Launch the process: + options.append("file://${startupHTML}") machine.succeed(ru(f'ulimit -c unlimited; {binary} {shlex.join(options)} & disown')) if binary.startswith("google-chrome"): # Need to click away the first window: @@ -243,6 +239,16 @@ mapAttrs (channel: chromiumPkg: makeTest rec { machine.wait_for_text("Graphics Feature Status") + with test_new_win("version_info", "chrome://version", "About Version") as clipboard: + filters = [ + r"${chromiumPkg.version} \(Official Build", + ] + if not all( + re.search(filter, clipboard) for filter in filters + ): + assert False, "Version info not correct." + + machine.shutdown() ''; }) channelMap diff --git a/nixos/tests/sanoid.nix b/nixos/tests/sanoid.nix index 7cef51e42010..3bdbe0a8d8db 100644 --- a/nixos/tests/sanoid.nix +++ b/nixos/tests/sanoid.nix @@ -85,10 +85,18 @@ in { "chown -R syncoid:syncoid /var/lib/syncoid/", ) + assert len(source.succeed("zfs allow pool")) == 0, "Pool shouldn't have delegated permissions set before snapshotting" + assert len(source.succeed("zfs allow pool/sanoid")) == 0, "Sanoid dataset shouldn't have delegated permissions set before snapshotting" + assert len(source.succeed("zfs allow pool/syncoid")) == 0, "Syncoid dataset shouldn't have delegated permissions set before snapshotting" + # Take snapshot with sanoid source.succeed("touch /mnt/pool/sanoid/test.txt") source.systemctl("start --wait sanoid.service") + assert len(source.succeed("zfs allow pool")) == 0, "Pool shouldn't have delegated permissions set after snapshotting" + assert len(source.succeed("zfs allow pool/sanoid")) == 0, "Sanoid dataset shouldn't have delegated permissions set after snapshotting" + assert len(source.succeed("zfs allow pool/syncoid")) == 0, "Syncoid dataset shouldn't have delegated permissions set after snapshotting" + # Sync snapshots target.wait_for_open_port(22) source.succeed("touch /mnt/pool/syncoid/test.txt") @@ -96,5 +104,9 @@ in { target.succeed("cat /mnt/pool/sanoid/test.txt") source.systemctl("start --wait syncoid-pool-syncoid.service") target.succeed("cat /mnt/pool/syncoid/test.txt") + + assert len(source.succeed("zfs allow pool")) == 0, "Pool shouldn't have delegated permissions set after syncing snapshots" + assert len(source.succeed("zfs allow pool/sanoid")) == 0, "Sanoid dataset shouldn't have delegated permissions set after syncing snapshots" + assert len(source.succeed("zfs allow pool/syncoid")) == 0, "Syncoid dataset shouldn't have delegated permissions set after syncing snapshots" ''; }) diff --git a/pkgs/applications/audio/carla/default.nix b/pkgs/applications/audio/carla/default.nix index 38514e40d000..bdafb93955c6 100644 --- a/pkgs/applications/audio/carla/default.nix +++ b/pkgs/applications/audio/carla/default.nix @@ -15,13 +15,13 @@ assert withGtk3 -> gtk3 != null; stdenv.mkDerivation rec { pname = "carla"; - version = "2.3.0"; + version = "2.3.1"; src = fetchFromGitHub { owner = "falkTX"; repo = pname; rev = "v${version}"; - sha256 = "sha256-724EFBpbmPMuU1m3T0XMaeohURJA5JcxHfUPYbZ/2LE="; + sha256 = "sha256-LM7wRvUg2Q3f4qBZN1MPvsLkdl1ziArCfhdalyD1G3w="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/audio/soundtracker/default.nix b/pkgs/applications/audio/soundtracker/default.nix index 3dc9089b241f..251725ea6b29 100644 --- a/pkgs/applications/audio/soundtracker/default.nix +++ b/pkgs/applications/audio/soundtracker/default.nix @@ -1,7 +1,7 @@ { lib, stdenv , fetchurl , pkg-config -, autoconf +, autoreconfHook , gtk2 , alsa-lib , SDL @@ -12,21 +12,43 @@ stdenv.mkDerivation rec { pname = "soundtracker"; - version = "1.0.1"; + version = "1.0.2.1"; src = fetchurl { # Past releases get moved to the "old releases" directory. # Only the latest release is at the top level. # Nonetheless, only the name of the file seems to affect which file is # downloaded, so this path should be fine both for old and current releases. - url = "mirror://sourceforge/soundtracker/soundtracker-${version}.tar.bz2"; - sha256 = "0m5iiqccch6w53khpvdldz59zymw13vmwqc5ggx3sn41riwbd6ks"; + url = "mirror://sourceforge/soundtracker/soundtracker-${version}.tar.xz"; + sha256 = "0nh0dwz8nldc040q6n06vlazhss8ms42r2dffhjcrqj3hbrvfx82"; }; + postPatch = lib.optionalString stdenv.hostPlatform.isDarwin '' + # Darwin binutils don't support D option for ar + # ALSA macros are missing on Darwin, causing error + substituteInPlace configure.ac \ + --replace ARFLAGS=crD ARFLAGS=cru \ + --replace AM_PATH_ALSA '#AM_PATH_ALSA' + # Avoid X11-specific workaround code on more than just Windows + substituteInPlace app/keys.c \ + --replace '!defined(_WIN32)' '!defined(_WIN32) && !defined(__APPLE__)' + # "The application with bundle ID (null) is running setugid(), which is not allowed." + sed -i -e '/seteuid/d' -e '/setegid/d' app/main.c + ''; + + configureFlags = [ + "--with-graphics-backend=gdk" + ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ + "--disable-alsa" + ]; + + enableParallelBuilding = true; + nativeBuildInputs = [ pkg-config - autoconf + autoreconfHook ]; + buildInputs = [ gtk2 SDL @@ -35,8 +57,6 @@ stdenv.mkDerivation rec { goocanvas ] ++ lib.optional stdenv.isLinux alsa-lib; - hardeningDisable = [ "format" ]; - meta = with lib; { description = "A music tracking tool similar in design to the DOS program FastTracker and the Amiga legend ProTracker"; longDescription = '' @@ -51,7 +71,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2Plus; maintainers = with maintainers; [ fgaz ]; platforms = platforms.all; - # gdk/gdkx.h not found - broken = stdenv.isDarwin; }; } diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index 0ead5ff670c2..356eb4923b77 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -14,12 +14,12 @@ let sha256Hash = "18zc9xr2xmphj6m6a1ilwripmvqzplp2583afq1pzzz3cv5h8fvk"; }; betaVersion = { - version = "2020.3.1.20"; # "Android Studio Arctic Fox (2020.3.1) Beta 5" - sha256Hash = "0swcsjx29ar4b0c8yhbynshqdn2sv94ga58h2nrc99927vp17g85"; + version = "2020.3.1.21"; # "Android Studio Arctic Fox (2020.3.1) RC 1" + sha256Hash = "04k7c328bl8ixi8bvp2mm33q2hmv40yc9p5dff5cghyycarwpd3f"; }; latestVersion = { # canary & dev - version = "2021.1.1.3"; # "Android Studio Bumblebee (2021.1.1) Canary 3" - sha256Hash = "1n8iahaqhmzvpps9vhv93n3yabb26vl78yndd6gid028r8r90y4x"; + version = "2021.1.1.4"; # "Android Studio Bumblebee (2021.1.1) Canary 4" + sha256Hash = "0s2py7xikzryqrfd9v3in9ia9qv71dd9aad1nzbda6ff61inzizb"; }; in { # Attributes are named by their corresponding release channels diff --git a/pkgs/applications/graphics/ImageMagick/6.x.nix b/pkgs/applications/graphics/ImageMagick/6.x.nix index 4ac4af48aab8..7cb4018f38f4 100644 --- a/pkgs/applications/graphics/ImageMagick/6.x.nix +++ b/pkgs/applications/graphics/ImageMagick/6.x.nix @@ -16,13 +16,13 @@ in stdenv.mkDerivation rec { pname = "imagemagick"; - version = "6.9.12-17"; + version = "6.9.12-19"; src = fetchFromGitHub { owner = "ImageMagick"; repo = "ImageMagick6"; rev = version; - sha256 = "sha256-yZXvxl9Tbl3JRBmRcfsjbkaxywtD08SuUnJayKfwk9M="; + sha256 = "sha256-8KofT9aNd8SXL0YBQ0RUOTccVxQNacvJL1uYPZiSPkY="; }; outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix index 139f29c31506..cd7b6e95d03d 100644 --- a/pkgs/applications/graphics/feh/default.nix +++ b/pkgs/applications/graphics/feh/default.nix @@ -7,11 +7,11 @@ with lib; stdenv.mkDerivation rec { pname = "feh"; - version = "3.7"; + version = "3.7.1"; src = fetchurl { url = "https://feh.finalrewind.org/${pname}-${version}.tar.bz2"; - sha256 = "0hdvlrlpjxvmhnjvr32nxgpsw0366higg0gh9h37fxrvdh3v3k87"; + sha256 = "sha256-V6scph9XyWWVh4Bp9VDTb1GFMPiPoxt0zDnNc5+SWLY="; }; outputs = [ "out" "man" "doc" ]; diff --git a/pkgs/applications/misc/clight/default.nix b/pkgs/applications/misc/clight/default.nix index 10ddb2902043..0bed99ab725f 100644 --- a/pkgs/applications/misc/clight/default.nix +++ b/pkgs/applications/misc/clight/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "clight"; - version = "4.5"; + version = "4.6"; src = fetchFromGitHub { owner = "FedeDP"; repo = "Clight"; rev = version; - sha256 = "sha256-fvi0JGNNDoxE0iH//HneYwQBBP4mY75AeViLHKQUI30="; + sha256 = "sha256-5kFzVHxoiZi8tz42eUprm49JHCeuA4GPwtHvdiS2RJY="; }; # dbus-1.pc has datadir=/etc diff --git a/pkgs/applications/misc/corehunt/default.nix b/pkgs/applications/misc/corehunt/default.nix new file mode 100644 index 000000000000..ad1fabb25043 --- /dev/null +++ b/pkgs/applications/misc/corehunt/default.nix @@ -0,0 +1,31 @@ +{ mkDerivation, lib, fetchFromGitLab, qtbase, libcprime, cmake, ninja }: + +mkDerivation rec { + pname = "corehunt"; + version = "4.2.0"; + + src = fetchFromGitLab { + owner = "cubocore/coreapps"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-KnIqLI8MtLirFycW2YNHAjS7EDfU3dpqb6vVq9Tl6Ow="; + }; + + nativeBuildInputs = [ + cmake + ninja + ]; + + buildInputs = [ + qtbase + libcprime + ]; + + meta = with lib; { + description = "A file finder utility from the C Suite"; + homepage = "https://gitlab.com/cubocore/coreapps/corehunt"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ dan4ik605743 ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/misc/fuzzel/default.nix b/pkgs/applications/misc/fuzzel/default.nix index 1e51f69f1c1f..daf5beb2fa7e 100644 --- a/pkgs/applications/misc/fuzzel/default.nix +++ b/pkgs/applications/misc/fuzzel/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "fuzzel"; - version = "1.6.0"; + version = "1.6.1"; src = fetchzip { url = "https://codeberg.org/dnkl/fuzzel/archive/${version}.tar.gz"; - sha256 = "sha256-iTpUWvQszDtNc1gDqkPbhvgUVNWydpivhnOCHMJVtSw="; + sha256 = "sha256-JW5sAlTprSRIdFbmSaUreGtNccERgQMGEW+WCSscYQk="; }; nativeBuildInputs = [ pkg-config meson ninja scdoc git ]; diff --git a/pkgs/applications/misc/hubstaff/default.nix b/pkgs/applications/misc/hubstaff/default.nix index 1bc22b6613d4..b49993ddb9c3 100644 --- a/pkgs/applications/misc/hubstaff/default.nix +++ b/pkgs/applications/misc/hubstaff/default.nix @@ -4,9 +4,9 @@ , curl, writeShellScript, common-updater-scripts }: let - url = "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.5.19-9e79d1da/Hubstaff-1.5.19-9e79d1da.sh"; - version = "1.5.19-9e79d1da"; - sha256 = "1l4sq8cblpl1kclkx5pgy0ldfmqa3n8bvdl5qml0n78r0lpk382j"; + url = "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.6.0-02e625d8/Hubstaff-1.6.0-02e625d8.sh"; + version = "1.6.0-02e625d8"; + sha256 = "1rd4icgy25j9l1xs6djmpv2nc2ilvjpblddv95xvvz39z82sfr29"; rpath = lib.makeLibraryPath [ libX11 zlib libSM libICE libXext freetype libXrender fontconfig libXft diff --git a/pkgs/applications/misc/markets/default.nix b/pkgs/applications/misc/markets/default.nix new file mode 100644 index 000000000000..bd9dd7ac9509 --- /dev/null +++ b/pkgs/applications/misc/markets/default.nix @@ -0,0 +1,42 @@ +{ lib, stdenv, fetchFromGitHub +, desktop-file-utils, glib, gtk3, meson, ninja, pkg-config, python3, vala +, wrapGAppsHook +, glib-networking, gobject-introspection, json-glib, libgee, libhandy, libsoup +}: + +stdenv.mkDerivation rec { + pname = "markets"; + version = "0.5.2"; + + src = fetchFromGitHub { + owner = "bitstower"; + repo = "markets"; + rev = version; + sha256 = "0nk1bs7i6b7r90g5qwd3s2m462vk3kvza0drq7rzb5sdaiz9ccnz"; + }; + + nativeBuildInputs = [ + desktop-file-utils glib gtk3 meson ninja pkg-config python3 vala + wrapGAppsHook + ]; + buildInputs = [ + glib glib-networking gobject-introspection gtk3 json-glib libgee libhandy + libsoup + ]; + + postPatch = '' + patchShebangs build-aux/meson/postinstall.py + ''; + + postInstall = '' + ln -s bitstower-markets $out/bin/markets + ''; + + meta = with lib; { + homepage = "https://github.com/bitstower/markets"; + description = "Stock, currency and cryptocurrency tracker"; + maintainers = with maintainers; [ qyliss ]; + license = licenses.gpl3Plus; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix index a6e81375de55..88086ef13631 100644 --- a/pkgs/applications/misc/prusa-slicer/default.nix +++ b/pkgs/applications/misc/prusa-slicer/default.nix @@ -4,7 +4,7 @@ }: stdenv.mkDerivation rec { pname = "prusa-slicer"; - version = "2.3.1"; + version = "2.3.3"; nativeBuildInputs = [ cmake @@ -69,7 +69,7 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "prusa3d"; repo = "PrusaSlicer"; - sha256 = "1lyaxc9nha1cd8p35iam1k1pikp9kfx0fj1l6vb1xb8pgqp02jnn"; + sha256 = "0w0synqi3iz9aigsgv6x1c6sg123fasbx19h4w3ic1l48r8qmpwm"; rev = "version_${version}"; }; diff --git a/pkgs/applications/networking/apache-directory-studio/default.nix b/pkgs/applications/networking/apache-directory-studio/default.nix index 970949d691ea..d9fe26fdbdc4 100644 --- a/pkgs/applications/networking/apache-directory-studio/default.nix +++ b/pkgs/applications/networking/apache-directory-studio/default.nix @@ -2,14 +2,14 @@ stdenv.mkDerivation rec { pname = "apache-directory-studio"; - version = "2.0.0-M15"; - versionWithDate = "2.0.0.v20200411-M15"; + version = "2.0.0-M17"; + versionWithDate = "2.0.0.v20210717-M17"; src = if stdenv.hostPlatform.system == "x86_64-linux" then fetchurl { url = "mirror://apache/directory/studio/${versionWithDate}/ApacheDirectoryStudio-${versionWithDate}-linux.gtk.x86_64.tar.gz"; - sha256 = "1rkyb0qcsl9hk2qcwp5mwaab69q3sn77v5xyn9mbvi5wg9icbc37"; + sha256 = "19zdspzv4n3mfgb1g45s3wh0vbvn6a9zjd4xi5x2afmdjkzlwxi4"; } else throw "Unsupported system: ${stdenv.hostPlatform.system}"; diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix index 705255942c4f..a86a82fcb5f9 100644 --- a/pkgs/applications/networking/browsers/chromium/browser.nix +++ b/pkgs/applications/networking/browsers/chromium/browser.nix @@ -16,6 +16,7 @@ mkChromiumDerivation (base: rec { cp -v "$buildPath/"*.so "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/" cp -v "$buildPath/icudtl.dat" "$libExecPath/" cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/" + cp -v "$buildPath/crashpad_handler" "$libExecPath/" cp -v "$buildPath/chrome" "$libExecPath/$packageName" # Swiftshader @@ -62,9 +63,7 @@ mkChromiumDerivation (base: rec { -e '/\[Desktop Entry\]/a\' \ -e 'StartupWMClass=chromium-browser' \ $out/share/applications/chromium-browser.desktop - '' + '' - cp -v "$buildPath/crashpad_handler" "$libExecPath/" - ''; # TODO: Merge + ''; passthru = { inherit sandboxExecutableName; }; @@ -88,7 +87,7 @@ mkChromiumDerivation (base: rec { license = if enableWideVine then licenses.unfree else licenses.bsd3; platforms = platforms.linux; mainProgram = "chromium"; - hydraPlatforms = if (channel == "stable" || channel == "ungoogled-chromium" || channel == "beta") + hydraPlatforms = if (channel == "stable" || channel == "ungoogled-chromium") then ["aarch64-linux" "x86_64-linux"] else []; timeout = 172800; # 48 hours (increased from the Hydra default of 10h) diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix index ec03a77d2680..61d304becfd8 100644 --- a/pkgs/applications/networking/browsers/google-chrome/default.nix +++ b/pkgs/applications/networking/browsers/google-chrome/default.nix @@ -18,7 +18,7 @@ , systemd # Loaded at runtime. -, libexif +, libexif, pciutils # Additional dependencies according to other distros. ## Ubuntu @@ -62,7 +62,7 @@ let alsa-lib libXdamage libXtst libXrandr libxshmfence expat cups dbus gdk-pixbuf gcc-unwrapped.lib systemd - libexif + libexif pciutils liberation_ttf curl util-linux xdg-utils wget flac harfbuzz icu libpng opusWithCustomModes snappy speechd bzip2 libcap at-spi2-atk at-spi2-core diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix index b898ce337421..3d726eba9808 100644 --- a/pkgs/applications/networking/flexget/default.nix +++ b/pkgs/applications/networking/flexget/default.nix @@ -2,12 +2,12 @@ python3Packages.buildPythonApplication rec { pname = "flexget"; - version = "3.1.131"; + version = "3.1.133"; src = python3Packages.fetchPypi { pname = "FlexGet"; inherit version; - sha256 = "sha256-wjMtCrffRhk7NL+Z0PeljuDc3WjVWSMsjWLbqo8qUjU="; + sha256 = "1mfmy2nbxx9k6hnhwxpf2062rwspigfhbvkpr161grd5amcs2cr6"; }; postPatch = '' diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json index 063c64fa377e..e9f1c0d4eb5c 100644 --- a/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json +++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json @@ -1,8 +1,8 @@ { "name": "element-desktop", "productName": "Element", - "main": "src/electron-main.js", - "version": "1.7.31", + "main": "lib/electron-main.js", + "version": "1.7.33", "description": "A feature-rich client for Matrix.org", "author": "Element", "repository": { @@ -18,18 +18,24 @@ "mkdirs": "mkdirp packages deploys", "fetch": "yarn run mkdirs && node scripts/fetch-package.js", "asar-webapp": "asar p webapp webapp.asar", - "start": "electron .", - "lint": "eslint src/ scripts/ hak/", + "start": "yarn run build:ts && yarn run build:res && electron .", + "lint": "yarn lint:types && yarn lint:js", + "lint:js": "eslint src/ scripts/ hak/", + "lint:types": "tsc --noEmit", "build:native": "yarn run hak", - "build32": "electron-builder --ia32", - "build64": "electron-builder --x64", - "build": "electron-builder", + "build:native:universal": "yarn run hak --target x86_64-apple-darwin fetchandbuild && yarn run hak --target aarch64-apple-darwin fetchandbuild && yarn run hak --target x86_64-apple-darwin --target aarch64-apple-darwin copyandlink", + "build:32": "yarn run build:ts && yarn run build:res && electron-builder --ia32", + "build:64": "yarn run build:ts && yarn run build:res && electron-builder --x64", + "build:universal": "yarn run build:ts && yarn run build:res && electron-builder --universal", + "build": "yarn run build:ts && yarn run build:res && electron-builder", + "build:ts": "tsc", + "build:res": "node scripts/copy-res.js", "docker:setup": "docker build -t element-desktop-dockerbuild dockerbuild", "docker:build:native": "scripts/in-docker.sh yarn run hak", "docker:build": "scripts/in-docker.sh yarn run build", "docker:install": "scripts/in-docker.sh yarn install", "debrepo": "scripts/mkrepo.sh", - "clean": "rimraf webapp.asar dist packages deploys", + "clean": "rimraf webapp.asar dist packages deploys lib", "hak": "node scripts/hak/index.js" }, "dependencies": { @@ -42,7 +48,14 @@ "request": "^2.88.2" }, "devDependencies": { + "@types/auto-launch": "^5.0.1", + "@types/counterpart": "^0.18.1", + "@types/minimist": "^1.2.1", + "@typescript-eslint/eslint-plugin": "^4.17.0", + "@typescript-eslint/parser": "^4.17.0", "asar": "^2.0.1", + "chokidar": "^3.5.2", + "electron": "12.0.11", "electron-builder": "22.11.4", "electron-builder-squirrel-windows": "22.11.4", "electron-devtools-installer": "^3.1.1", @@ -60,7 +73,8 @@ "npm": "^6.14.11", "rimraf": "^3.0.2", "semver": "^7.3.4", - "tar": "^6.1.0" + "tar": "^6.1.0", + "typescript": "^4.1.3" }, "hakDependencies": { "matrix-seshat": "^2.2.3", @@ -68,14 +82,14 @@ }, "build": { "appId": "im.riot.app", - "electronVersion": "12.0.11", + "electronVersion": "12.0.14", "files": [ "package.json", { "from": ".hak/hakModules", "to": "node_modules" }, - "src/**" + "lib/**" ], "extraResources": [ { diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix index 733cfa3a11a4..59669ebc48bd 100644 --- a/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix +++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix @@ -129,6 +129,14 @@ sha1 = "3ece22c5838402419a6e0425f85742b961d9b6c6"; }; } + { + name = "_electron_get___get_1.12.4.tgz"; + path = fetchurl { + name = "_electron_get___get_1.12.4.tgz"; + url = "https://registry.yarnpkg.com/@electron/get/-/get-1.12.4.tgz"; + sha1 = "a5971113fc1bf8fa12a8789dc20152a7359f06ab"; + }; + } { name = "_electron_universal___universal_1.0.5.tgz"; path = fetchurl { @@ -417,6 +425,30 @@ sha1 = "e8a32c30a95d20c2b1bb635cc580981a06389858"; }; } + { + name = "_nodelib_fs.scandir___fs.scandir_2.1.5.tgz"; + path = fetchurl { + name = "_nodelib_fs.scandir___fs.scandir_2.1.5.tgz"; + url = "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"; + sha1 = "7619c2eb21b25483f6d167548b4cfd5a7488c3d5"; + }; + } + { + name = "_nodelib_fs.stat___fs.stat_2.0.5.tgz"; + path = fetchurl { + name = "_nodelib_fs.stat___fs.stat_2.0.5.tgz"; + url = "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"; + sha1 = "5bd262af94e9d25bd1e71b05deed44876a222e8b"; + }; + } + { + name = "_nodelib_fs.walk___fs.walk_1.2.7.tgz"; + path = fetchurl { + name = "_nodelib_fs.walk___fs.walk_1.2.7.tgz"; + url = "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz"; + sha1 = "94c23db18ee4653e129abd26fb06f870ac9e1ee2"; + }; + } { name = "_sindresorhus_is___is_0.14.0.tgz"; path = fetchurl { @@ -433,6 +465,14 @@ sha1 = "b1665e2c461a2cd92f4c1bbf50d5454de0d4b421"; }; } + { + name = "_types_auto_launch___auto_launch_5.0.1.tgz"; + path = fetchurl { + name = "_types_auto_launch___auto_launch_5.0.1.tgz"; + url = "https://registry.yarnpkg.com/@types/auto-launch/-/auto-launch-5.0.1.tgz"; + sha1 = "388a047edc0e754d8e8978cbd9ed4672b36be2c4"; + }; + } { name = "_types_color_name___color_name_1.1.1.tgz"; path = fetchurl { @@ -441,6 +481,14 @@ sha1 = "1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"; }; } + { + name = "_types_counterpart___counterpart_0.18.1.tgz"; + path = fetchurl { + name = "_types_counterpart___counterpart_0.18.1.tgz"; + url = "https://registry.yarnpkg.com/@types/counterpart/-/counterpart-0.18.1.tgz"; + sha1 = "b1b784d9e54d9879f0a8cb12f2caedab65430fe8"; + }; + } { name = "_types_debug___debug_4.1.5.tgz"; path = fetchurl { @@ -465,6 +513,14 @@ sha1 = "e6ba80f36b7daad2c685acd9266382e68985c183"; }; } + { + name = "_types_json_schema___json_schema_7.0.7.tgz"; + path = fetchurl { + name = "_types_json_schema___json_schema_7.0.7.tgz"; + url = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz"; + sha1 = "98a993516c859eb0d5c4c8f098317a9ea68db9ad"; + }; + } { name = "_types_minimatch___minimatch_3.0.4.tgz"; path = fetchurl { @@ -473,6 +529,14 @@ sha1 = "f0ec25dbf2f0e4b18647313ac031134ca5b24b21"; }; } + { + name = "_types_minimist___minimist_1.2.1.tgz"; + path = fetchurl { + name = "_types_minimist___minimist_1.2.1.tgz"; + url = "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.1.tgz"; + sha1 = "283f669ff76d7b8260df8ab7a4262cc83d988256"; + }; + } { name = "_types_node___node_13.7.1.tgz"; path = fetchurl { @@ -489,6 +553,14 @@ sha1 = "d934aacc22424fe9622ebf6857370c052eae464e"; }; } + { + name = "_types_node___node_14.17.4.tgz"; + path = fetchurl { + name = "_types_node___node_14.17.4.tgz"; + url = "https://registry.yarnpkg.com/@types/node/-/node-14.17.4.tgz"; + sha1 = "218712242446fc868d0e007af29a4408c7765bc0"; + }; + } { name = "_types_plist___plist_3.0.2.tgz"; path = fetchurl { @@ -521,6 +593,62 @@ sha1 = "4b6d35bb8e680510a7dc2308518a80ee1ef27e01"; }; } + { + name = "_typescript_eslint_eslint_plugin___eslint_plugin_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_eslint_plugin___eslint_plugin_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.1.tgz"; + sha1 = "c045e440196ae45464e08e20c38aff5c3a825947"; + }; + } + { + name = "_typescript_eslint_experimental_utils___experimental_utils_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_experimental_utils___experimental_utils_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.1.tgz"; + sha1 = "3869489dcca3c18523c46018b8996e15948dbadc"; + }; + } + { + name = "_typescript_eslint_parser___parser_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_parser___parser_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.28.1.tgz"; + sha1 = "5181b81658414f47291452c15bf6cd44a32f85bd"; + }; + } + { + name = "_typescript_eslint_scope_manager___scope_manager_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_scope_manager___scope_manager_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.28.1.tgz"; + sha1 = "fd3c20627cdc12933f6d98b386940d8d0ce8a991"; + }; + } + { + name = "_typescript_eslint_types___types_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_types___types_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.28.1.tgz"; + sha1 = "d0f2ecbef3684634db357b9bbfc97b94b828f83f"; + }; + } + { + name = "_typescript_eslint_typescript_estree___typescript_estree_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_typescript_estree___typescript_estree_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.1.tgz"; + sha1 = "af882ae41740d1f268e38b4d0fad21e7e8d86a81"; + }; + } + { + name = "_typescript_eslint_visitor_keys___visitor_keys_4.28.1.tgz"; + path = fetchurl { + name = "_typescript_eslint_visitor_keys___visitor_keys_4.28.1.tgz"; + url = "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.1.tgz"; + sha1 = "162a515ee255f18a6068edc26df793cdc1ec9157"; + }; + } { name = "JSONStream___JSONStream_1.3.5.tgz"; path = fetchurl { @@ -729,6 +857,14 @@ sha1 = "ae101a62bc08a597b4c9ab5b7089d456630549fe"; }; } + { + name = "anymatch___anymatch_3.1.2.tgz"; + path = fetchurl { + name = "anymatch___anymatch_3.1.2.tgz"; + url = "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz"; + sha1 = "c0557c096af32f106198f4f4e2a383537e378716"; + }; + } { name = "app_builder_bin___app_builder_bin_3.5.13.tgz"; path = fetchurl { @@ -817,6 +953,14 @@ sha1 = "246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"; }; } + { + name = "array_union___array_union_2.1.0.tgz"; + path = fetchurl { + name = "array_union___array_union_2.1.0.tgz"; + url = "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz"; + sha1 = "b798420adbeb1de828d84acd8a2e23d3efe85e8d"; + }; + } { name = "asap___asap_2.0.6.tgz"; path = fetchurl { @@ -985,6 +1129,14 @@ sha1 = "bd39aadab5dc4bdac222a07df5baf1af745b2228"; }; } + { + name = "binary_extensions___binary_extensions_2.2.0.tgz"; + path = fetchurl { + name = "binary_extensions___binary_extensions_2.2.0.tgz"; + url = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz"; + sha1 = "75f502eeaf9ffde42fc98829645be4ea76bd9e2d"; + }; + } { name = "bl___bl_4.0.3.tgz"; path = fetchurl { @@ -1017,6 +1169,14 @@ sha1 = "e05a63f796a6c1ff25f4771ec7adadc148c07233"; }; } + { + name = "boolean___boolean_3.1.2.tgz"; + path = fetchurl { + name = "boolean___boolean_3.1.2.tgz"; + url = "https://registry.yarnpkg.com/boolean/-/boolean-3.1.2.tgz"; + sha1 = "e30f210a26b02458482a8cc353ab06f262a780c2"; + }; + } { name = "boxen___boxen_1.3.0.tgz"; path = fetchurl { @@ -1041,6 +1201,14 @@ sha1 = "3c7fcbf529d87226f3d2f52b966ff5271eb441dd"; }; } + { + name = "braces___braces_3.0.2.tgz"; + path = fetchurl { + name = "braces___braces_3.0.2.tgz"; + url = "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz"; + sha1 = "3454e1a462ee8d599e236df336cd9ea4f8afe107"; + }; + } { name = "buffer_crc32___buffer_crc32_0.2.13.tgz"; path = fetchurl { @@ -1233,6 +1401,14 @@ sha1 = "c80b3fab28bf6371e6863325eee67e618b77e6ad"; }; } + { + name = "chokidar___chokidar_3.5.2.tgz"; + path = fetchurl { + name = "chokidar___chokidar_3.5.2.tgz"; + url = "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.2.tgz"; + sha1 = "dba3976fcadb016f66fd365021d91600d01c1e75"; + }; + } { name = "chownr___chownr_1.1.4.tgz"; path = fetchurl { @@ -1505,6 +1681,14 @@ sha1 = "d9678a9d8f04de8bf5cd475105da8fdae49c2ec4"; }; } + { + name = "config_chain___config_chain_1.1.13.tgz"; + path = fetchurl { + name = "config_chain___config_chain_1.1.13.tgz"; + url = "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz"; + sha1 = "fad0795aa6a6cdaff9ed1b68e9dff94372c232f4"; + }; + } { name = "config_chain___config_chain_1.1.12.tgz"; path = fetchurl { @@ -1545,6 +1729,14 @@ sha1 = "92297398cae34937fcafd6ec8139c18051f0b5e0"; }; } + { + name = "core_js___core_js_3.15.1.tgz"; + path = fetchurl { + name = "core_js___core_js_3.15.1.tgz"; + url = "https://registry.yarnpkg.com/core-js/-/core-js-3.15.1.tgz"; + sha1 = "6c08ab88abdf56545045ccf5fd81f47f407e7f1a"; + }; + } { name = "core_util_is___core_util_is_1.0.2.tgz"; path = fetchurl { @@ -1673,6 +1865,14 @@ sha1 = "5bb5a0672628b64149566ba16819e61518c67261"; }; } + { + name = "debug___debug_2.6.9.tgz"; + path = fetchurl { + name = "debug___debug_2.6.9.tgz"; + url = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz"; + sha1 = "5d128515df134ff327e90a4c93f4e077a536341f"; + }; + } { name = "debug___debug_3.2.7.tgz"; path = fetchurl { @@ -1825,6 +2025,14 @@ sha1 = "f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"; }; } + { + name = "detect_node___detect_node_2.1.0.tgz"; + path = fetchurl { + name = "detect_node___detect_node_2.1.0.tgz"; + url = "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz"; + sha1 = "c9c70775a49c3d03bc2c06d9a73be550f978f8b1"; + }; + } { name = "dezalgo___dezalgo_1.0.3.tgz"; path = fetchurl { @@ -1841,6 +2049,14 @@ sha1 = "785c41dc5f645b34343a4eafc50b79bac7f11631"; }; } + { + name = "dir_glob___dir_glob_3.0.1.tgz"; + path = fetchurl { + name = "dir_glob___dir_glob_3.0.1.tgz"; + url = "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz"; + sha1 = "56dbf73d992a4a93ba1584f4534063fd2e41717f"; + }; + } { name = "dmg_builder___dmg_builder_22.11.4.tgz"; path = fetchurl { @@ -2009,6 +2225,14 @@ sha1 = "4f36d09e3f953d87aff103bf010f460056050aa8"; }; } + { + name = "electron___electron_12.0.11.tgz"; + path = fetchurl { + name = "electron___electron_12.0.11.tgz"; + url = "https://registry.yarnpkg.com/electron/-/electron-12.0.11.tgz"; + sha1 = "555dc1cf663e320f2f2cbdf89319352b08fc59f2"; + }; + } { name = "emoji_regex___emoji_regex_7.0.3.tgz"; path = fetchurl { @@ -2025,6 +2249,14 @@ sha1 = "e818fd69ce5ccfcb404594f842963bf53164cc37"; }; } + { + name = "encodeurl___encodeurl_1.0.2.tgz"; + path = fetchurl { + name = "encodeurl___encodeurl_1.0.2.tgz"; + url = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz"; + sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"; + }; + } { name = "encoding___encoding_0.1.13.tgz"; path = fetchurl { @@ -2097,6 +2329,14 @@ sha1 = "e55cd4c9cdc188bcefb03b366c736323fc5c898a"; }; } + { + name = "es6_error___es6_error_4.1.1.tgz"; + path = fetchurl { + name = "es6_error___es6_error_4.1.1.tgz"; + url = "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz"; + sha1 = "9e3af407459deed47e9a91f9b885a84eb05c561d"; + }; + } { name = "es6_promise___es6_promise_4.2.8.tgz"; path = fetchurl { @@ -2137,6 +2377,14 @@ sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"; }; } + { + name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz"; + path = fetchurl { + name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz"; + url = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz"; + sha1 = "14ba83a5d373e3d311e5afca29cf5bfad965bf34"; + }; + } { name = "eslint_config_google___eslint_config_google_0.14.0.tgz"; path = fetchurl { @@ -2169,6 +2417,14 @@ sha1 = "d2de5e03424e707dc10c74068ddedae708741b27"; }; } + { + name = "eslint_utils___eslint_utils_3.0.0.tgz"; + path = fetchurl { + name = "eslint_utils___eslint_utils_3.0.0.tgz"; + url = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz"; + sha1 = "8aebaface7345bb33559db0a1f13a1d2d48c3672"; + }; + } { name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz"; path = fetchurl { @@ -2305,6 +2561,14 @@ sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa"; }; } + { + name = "extract_zip___extract_zip_1.7.0.tgz"; + path = fetchurl { + name = "extract_zip___extract_zip_1.7.0.tgz"; + url = "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz"; + sha1 = "556cc3ae9df7f452c493a0cfb51cc30277940927"; + }; + } { name = "extsprintf___extsprintf_1.3.0.tgz"; path = fetchurl { @@ -2337,6 +2601,14 @@ sha1 = "3a7d56b559d6cbc3eb512325244e619a65c6c525"; }; } + { + name = "fast_glob___fast_glob_3.2.6.tgz"; + path = fetchurl { + name = "fast_glob___fast_glob_3.2.6.tgz"; + url = "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.6.tgz"; + sha1 = "434dd9529845176ea049acc9343e8282765c6e1a"; + }; + } { name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz"; path = fetchurl { @@ -2353,6 +2625,22 @@ sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917"; }; } + { + name = "fastq___fastq_1.11.0.tgz"; + path = fetchurl { + name = "fastq___fastq_1.11.0.tgz"; + url = "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz"; + sha1 = "bb9fb955a07130a918eb63c1f5161cc32a5d0858"; + }; + } + { + name = "fd_slicer___fd_slicer_1.1.0.tgz"; + path = fetchurl { + name = "fd_slicer___fd_slicer_1.1.0.tgz"; + url = "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz"; + sha1 = "25c7c89cb1f9077f8891bbe61d8f390eae256f1e"; + }; + } { name = "figgy_pudding___figgy_pudding_3.5.2.tgz"; path = fetchurl { @@ -2385,6 +2673,14 @@ sha1 = "f10d1a3ae86c1694808e8f20906f43d4c9132dbb"; }; } + { + name = "fill_range___fill_range_7.0.1.tgz"; + path = fetchurl { + name = "fill_range___fill_range_7.0.1.tgz"; + url = "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz"; + sha1 = "1919a6a7c75fe38b2c7c77e5198535da9acdda40"; + }; + } { name = "find_npm_prefix___find_npm_prefix_1.0.2.tgz"; path = fetchurl { @@ -2553,6 +2849,14 @@ sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f"; }; } + { + name = "fsevents___fsevents_2.3.2.tgz"; + path = fetchurl { + name = "fsevents___fsevents_2.3.2.tgz"; + url = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz"; + sha1 = "8a526f78b8fdf4623b709e0b975c52c24c02fd1a"; + }; + } { name = "function_bind___function_bind_1.1.1.tgz"; path = fetchurl { @@ -2681,6 +2985,14 @@ sha1 = "3b193e9233f01d42d0b3f78294bbeeb418f94a90"; }; } + { + name = "global_agent___global_agent_2.2.0.tgz"; + path = fetchurl { + name = "global_agent___global_agent_2.2.0.tgz"; + url = "https://registry.yarnpkg.com/global-agent/-/global-agent-2.2.0.tgz"; + sha1 = "566331b0646e6bf79429a16877685c4a1fbf76dc"; + }; + } { name = "global_dirs___global_dirs_0.1.1.tgz"; path = fetchurl { @@ -2697,6 +3009,14 @@ sha1 = "70a76fe84ea315ab37b1f5576cbde7d48ef72686"; }; } + { + name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz"; + path = fetchurl { + name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz"; + url = "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz"; + sha1 = "d03b5102dfde3a69914f5ee7d86761ca35d57d8f"; + }; + } { name = "global___global_4.3.2.tgz"; path = fetchurl { @@ -2721,6 +3041,22 @@ sha1 = "a18813576a41b00a24a97e7f815918c2e19925f8"; }; } + { + name = "globalthis___globalthis_1.0.2.tgz"; + path = fetchurl { + name = "globalthis___globalthis_1.0.2.tgz"; + url = "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.2.tgz"; + sha1 = "2a235d34f4d8036219f7e34929b5de9e18166b8b"; + }; + } + { + name = "globby___globby_11.0.4.tgz"; + path = fetchurl { + name = "globby___globby_11.0.4.tgz"; + url = "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz"; + sha1 = "2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5"; + }; + } { name = "got___got_6.7.1.tgz"; path = fetchurl { @@ -2977,6 +3313,14 @@ sha1 = "750e3db5862087b4737ebac8207ffd1ef27b25fc"; }; } + { + name = "ignore___ignore_5.1.8.tgz"; + path = fetchurl { + name = "ignore___ignore_5.1.8.tgz"; + url = "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz"; + sha1 = "f150a8b50a34289b33e22f5889abd4d8016f0e57"; + }; + } { name = "image_q___image_q_1.1.1.tgz"; path = fetchurl { @@ -3113,6 +3457,14 @@ sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d"; }; } + { + name = "is_binary_path___is_binary_path_2.1.0.tgz"; + path = fetchurl { + name = "is_binary_path___is_binary_path_2.1.0.tgz"; + url = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz"; + sha1 = "ea1f7f3b80f064236e83470f86c09c254fb45b09"; + }; + } { name = "is_callable___is_callable_1.1.4.tgz"; path = fetchurl { @@ -3241,6 +3593,14 @@ sha1 = "43e8d65cc56e1b67f8d47262cf667099193f45a8"; }; } + { + name = "is_number___is_number_7.0.0.tgz"; + path = fetchurl { + name = "is_number___is_number_7.0.0.tgz"; + url = "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz"; + sha1 = "7535345b896734d5f80c4d06c50955527a14f12b"; + }; + } { name = "is_obj___is_obj_1.0.1.tgz"; path = fetchurl { @@ -3929,6 +4289,14 @@ sha1 = "aa8387104f2687edca01c8687ee45013d02d19bd"; }; } + { + name = "matcher___matcher_3.0.0.tgz"; + path = fetchurl { + name = "matcher___matcher_3.0.0.tgz"; + url = "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz"; + sha1 = "bd9060f4c5b70aa8041ccc6f80368760994f30ca"; + }; + } { name = "63f9119bc0bc304e83d4e8e22364caa7850e7671"; path = fetchurl { @@ -3953,6 +4321,22 @@ sha1 = "5edd52b485ca1d900fe64895505399a0dfa45f76"; }; } + { + name = "merge2___merge2_1.4.1.tgz"; + path = fetchurl { + name = "merge2___merge2_1.4.1.tgz"; + url = "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz"; + sha1 = "4368892f885e907455a6fd7dc55c0c9d404990ae"; + }; + } + { + name = "micromatch___micromatch_4.0.4.tgz"; + path = fetchurl { + name = "micromatch___micromatch_4.0.4.tgz"; + url = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz"; + sha1 = "896d519dfe9db25fce94ceb7a500919bf881ebf9"; + }; + } { name = "mime_db___mime_db_1.42.0.tgz"; path = fetchurl { @@ -4281,6 +4665,14 @@ sha1 = "ded306c5b0bfc870a9e9faf823bc5f283e05ae11"; }; } + { + name = "npm_conf___npm_conf_1.1.3.tgz"; + path = fetchurl { + name = "npm_conf___npm_conf_1.1.3.tgz"; + url = "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz"; + sha1 = "256cc47bd0e218c259c4e9550bf413bc2192aff9"; + }; + } { name = "npm_install_checks___npm_install_checks_3.0.2.tgz"; path = fetchurl { @@ -4729,6 +5121,22 @@ sha1 = "f012ccb8415b7096fc2daa1054c3d72389594c73"; }; } + { + name = "path_type___path_type_4.0.0.tgz"; + path = fetchurl { + name = "path_type___path_type_4.0.0.tgz"; + url = "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz"; + sha1 = "84ed01c0a7ba380afe09d90a8c180dcd9d03043b"; + }; + } + { + name = "pend___pend_1.2.0.tgz"; + path = fetchurl { + name = "pend___pend_1.2.0.tgz"; + url = "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz"; + sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50"; + }; + } { name = "performance_now___performance_now_2.1.0.tgz"; path = fetchurl { @@ -4745,6 +5153,14 @@ sha1 = "f9b6ac10a035636fb65dfc576aaaa17b8743125c"; }; } + { + name = "picomatch___picomatch_2.3.0.tgz"; + path = fetchurl { + name = "picomatch___picomatch_2.3.0.tgz"; + url = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz"; + sha1 = "f1f061de8f6a4bf022892e2d128234fb98302972"; + }; + } { name = "pify___pify_2.3.0.tgz"; path = fetchurl { @@ -5009,6 +5425,14 @@ sha1 = "30b3505f6fca741d5ae541964d1b3ae9dc2a0de8"; }; } + { + name = "queue_microtask___queue_microtask_1.2.3.tgz"; + path = fetchurl { + name = "queue_microtask___queue_microtask_1.2.3.tgz"; + url = "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz"; + sha1 = "4929228bbc724dfac43e0efb058caf7b6cfb6243"; + }; + } { name = "qw___qw_1.0.1.tgz"; path = fetchurl { @@ -5129,6 +5553,14 @@ sha1 = "8d45407b4f870a0dcaebc0e28670d18e74514309"; }; } + { + name = "readdirp___readdirp_3.6.0.tgz"; + path = fetchurl { + name = "readdirp___readdirp_3.6.0.tgz"; + url = "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz"; + sha1 = "74a370bd857116e245b29cc97340cd431a02a6c7"; + }; + } { name = "regenerator_runtime___regenerator_runtime_0.13.7.tgz"; path = fetchurl { @@ -5265,6 +5697,14 @@ sha1 = "1b42a6266a21f07421d1b0b54b7dc167b01c013b"; }; } + { + name = "reusify___reusify_1.0.4.tgz"; + path = fetchurl { + name = "reusify___reusify_1.0.4.tgz"; + url = "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz"; + sha1 = "90da382b1e126efc02146e90845a88db12925d76"; + }; + } { name = "rimraf___rimraf_2.7.1.tgz"; path = fetchurl { @@ -5281,6 +5721,22 @@ sha1 = "f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"; }; } + { + name = "roarr___roarr_2.15.4.tgz"; + path = fetchurl { + name = "roarr___roarr_2.15.4.tgz"; + url = "https://registry.yarnpkg.com/roarr/-/roarr-2.15.4.tgz"; + sha1 = "f5fe795b7b838ccfe35dc608e0282b9eba2e7afd"; + }; + } + { + name = "run_parallel___run_parallel_1.2.0.tgz"; + path = fetchurl { + name = "run_parallel___run_parallel_1.2.0.tgz"; + url = "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz"; + sha1 = "66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"; + }; + } { name = "run_queue___run_queue_1.0.3.tgz"; path = fetchurl { @@ -5329,6 +5785,14 @@ sha1 = "2816234e2378bddc4e5354fab5caa895df7100d9"; }; } + { + name = "semver_compare___semver_compare_1.0.0.tgz"; + path = fetchurl { + name = "semver_compare___semver_compare_1.0.0.tgz"; + url = "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz"; + sha1 = "0dee216a1c941ab37e9efb1788f6afc5ff5537fc"; + }; + } { name = "semver_diff___semver_diff_2.1.0.tgz"; path = fetchurl { @@ -5385,6 +5849,14 @@ sha1 = "0b621c879348d8998e4b0e4be94b3f12e6018ef7"; }; } + { + name = "serialize_error___serialize_error_7.0.1.tgz"; + path = fetchurl { + name = "serialize_error___serialize_error_7.0.1.tgz"; + url = "https://registry.yarnpkg.com/serialize-error/-/serialize-error-7.0.1.tgz"; + sha1 = "f1360b0447f61ffb483ec4157c737fab7d778e18"; + }; + } { name = "set_blocking___set_blocking_2.0.0.tgz"; path = fetchurl { @@ -5449,6 +5921,14 @@ sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d"; }; } + { + name = "slash___slash_3.0.0.tgz"; + path = fetchurl { + name = "slash___slash_3.0.0.tgz"; + url = "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz"; + sha1 = "6539be870c165adbd5240220dbe361f1bc4d4634"; + }; + } { name = "slice_ansi___slice_ansi_1.0.0.tgz"; path = fetchurl { @@ -5793,6 +6273,14 @@ sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a"; }; } + { + name = "sumchecker___sumchecker_3.0.1.tgz"; + path = fetchurl { + name = "sumchecker___sumchecker_3.0.1.tgz"; + url = "https://registry.yarnpkg.com/sumchecker/-/sumchecker-3.0.1.tgz"; + sha1 = "6377e996795abb0b6d348e9b3e1dfb24345a8e42"; + }; + } { name = "supports_color___supports_color_5.5.0.tgz"; path = fetchurl { @@ -5961,6 +6449,14 @@ sha1 = "ce0aa0c2f3df6adf852efb404a783e77c0475771"; }; } + { + name = "to_regex_range___to_regex_range_5.0.1.tgz"; + path = fetchurl { + name = "to_regex_range___to_regex_range_5.0.1.tgz"; + url = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz"; + sha1 = "1648c44aae7c8d988a326018ed72f5b4dd0392e4"; + }; + } { name = "tough_cookie___tough_cookie_2.4.3.tgz"; path = fetchurl { @@ -5985,6 +6481,22 @@ sha1 = "405923909592d56f78a5818434b0b78489ca5f2b"; }; } + { + name = "tslib___tslib_1.14.1.tgz"; + path = fetchurl { + name = "tslib___tslib_1.14.1.tgz"; + url = "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz"; + sha1 = "cf2d38bdc34a134bcaf1091c41f6619e2f672d00"; + }; + } + { + name = "tsutils___tsutils_3.21.0.tgz"; + path = fetchurl { + name = "tsutils___tsutils_3.21.0.tgz"; + url = "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz"; + sha1 = "b48717d394cea6c1e096983eed58e9d61715b623"; + }; + } { name = "tunnel_agent___tunnel_agent_0.6.0.tgz"; path = fetchurl { @@ -5993,6 +6505,14 @@ sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd"; }; } + { + name = "tunnel___tunnel_0.0.6.tgz"; + path = fetchurl { + name = "tunnel___tunnel_0.0.6.tgz"; + url = "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz"; + sha1 = "72f1314b34a5b192db012324df2cc587ca47f92c"; + }; + } { name = "tweetnacl___tweetnacl_0.14.5.tgz"; path = fetchurl { @@ -6009,6 +6529,14 @@ sha1 = "07b8203bfa7056c0657050e3ccd2c37730bab8f1"; }; } + { + name = "type_fest___type_fest_0.13.1.tgz"; + path = fetchurl { + name = "type_fest___type_fest_0.13.1.tgz"; + url = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz"; + sha1 = "0172cb5bce80b0bd542ea348db50c7e21834d934"; + }; + } { name = "type_fest___type_fest_0.16.0.tgz"; path = fetchurl { @@ -6049,6 +6577,14 @@ sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777"; }; } + { + name = "typescript___typescript_4.3.4.tgz"; + path = fetchurl { + name = "typescript___typescript_4.3.4.tgz"; + url = "https://registry.yarnpkg.com/typescript/-/typescript-4.3.4.tgz"; + sha1 = "3f85b986945bcf31071decdd96cf8bfa65f9dcbc"; + }; + } { name = "uid_number___uid_number_0.0.6.tgz"; path = fetchurl { @@ -6609,6 +7145,14 @@ sha1 = "6299a9055b1cefc969ff7e79c1d918dceb22c360"; }; } + { + name = "yauzl___yauzl_2.10.0.tgz"; + path = fetchurl { + name = "yauzl___yauzl_2.10.0.tgz"; + url = "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz"; + sha1 = "c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9"; + }; + } { name = "zip_stream___zip_stream_4.1.0.tgz"; path = fetchurl { diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix index f8f4d31d6ec1..a45ead37efb2 100644 --- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix +++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix @@ -8,12 +8,12 @@ let executableName = "element-desktop"; - version = "1.7.31"; + version = "1.7.33"; src = fetchFromGitHub { owner = "vector-im"; repo = "element-desktop"; rev = "v${version}"; - sha256 = "14vyqzf69g4n3i7qjm1pgq2kwym6cira0jwvirzdrwxkfsl0dsq6"; + sha256 = "sha256-1JmuKyJt6Q80lLXXrFw+h6/0JzWcr0qMIU9mTO+K56I="; }; in mkYarnPackage rec { name = "element-desktop-${version}"; @@ -24,6 +24,17 @@ in mkYarnPackage rec { nativeBuildInputs = [ makeWrapper ]; + buildPhase = '' + runHook preBuild + export HOME=$(mktemp -d) + pushd deps/element-desktop/ + npx tsc + yarn run i18n + node ./scripts/copy-res.js + popd + runHook postBuild + ''; + installPhase = '' # resources mkdir -p "$out/share/element" @@ -32,6 +43,7 @@ in mkYarnPackage rec { cp -r './deps/element-desktop/res/img' "$out/share/element" rm "$out/share/element/electron/node_modules" cp -r './node_modules' "$out/share/element/electron" + cp $out/share/element/electron/lib/i18n/strings/en_EN.json $out/share/element/electron/lib/i18n/strings/en-us.json # icons for icon in $out/share/element/electron/build/icons/*.png; do diff --git a/pkgs/applications/networking/instant-messengers/element/element-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix index d9aec35b04b1..0a0363860d17 100644 --- a/pkgs/applications/networking/instant-messengers/element/element-web.nix +++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix @@ -12,11 +12,11 @@ let in stdenv.mkDerivation rec { pname = "element-web"; - version = "1.7.31"; + version = "1.7.33"; src = fetchurl { url = "https://github.com/vector-im/element-web/releases/download/v${version}/element-v${version}.tar.gz"; - sha256 = "1p0vg5bkri7qiqv5yic56hjjbb5zvhvyzsm5zi7fx3yb7zdxmr3f"; + sha256 = "sha256-MhbXvl+FUCL6D6y2Oa5Kf5ie9fU85wEO/tQe881CD8I="; }; installPhase = '' diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix index 31aec0a46786..1eb4b222f206 100644 --- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix @@ -1,11 +1,13 @@ { mkDerivation, lib, fetchFromGitHub, callPackage, fetchpatch , pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook +, extra-cmake-modules , qtbase, qtimageformats, gtk3, libsForQt5, lz4, xxHash , ffmpeg, openalSoft, minizip, libopus, alsa-lib, libpulseaudio, range-v3 , tl-expected, hunspell, glibmm, webkitgtk, jemalloc -, rnnoise, extra-cmake-modules +, rnnoise # Transitive dependencies: -, pcre, xorg, util-linuxMinimal, libselinux, libsepol, epoxy +, util-linuxMinimal +, pcre, libpthreadstubs, libXdmcp, libselinux, libsepol, epoxy , at-spi2-core, libXtst, libthai, libdatrie , xdg-utils, libsysprof-capture, libpsl, brotli }: @@ -72,7 +74,7 @@ in mkDerivation rec { tg_owt # Transitive dependencies: util-linuxMinimal # Required for libmount thus not nativeBuildInputs. - pcre xorg.libpthreadstubs xorg.libXdmcp libselinux libsepol epoxy + pcre libpthreadstubs libXdmcp libselinux libsepol epoxy at-spi2-core libXtst libthai libdatrie libsysprof-capture libpsl brotli ]; @@ -85,20 +87,6 @@ in mkDerivation rec { "-DDESKTOP_APP_USE_PACKAGED_FONTS=OFF" ]; - # Note: The following packages could be packaged system-wide, but it's - # probably best to use the bundled ones from tdesktop (Arch does this too): - # rlottie: - # - Sources (problem: there are no stable releases!): - # - desktop-app (tdesktop): https://github.com/desktop-app/rlottie - # - upstream: https://github.com/Samsung/rlottie - # libtgvoip: - # - Sources (problem: the stable releases might be too old!): - # - tdesktop: https://github.com/telegramdesktop/libtgvoip - # - upstream: https://github.com/grishka/libtgvoip - # Both of these packages are included in this PR (kotatogram-desktop): - # https://github.com/NixOS/nixpkgs/pull/75210 - # TODO: Package mapbox-variant - postFixup = '' # This is necessary to run Telegram in a pure environment. # We also use gappsWrapperArgs from wrapGAppsHook. diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix index 363650dae5a7..e553c95990e5 100644 --- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix +++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix @@ -1,9 +1,9 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch +{ lib, stdenv, fetchFromGitHub , pkg-config, cmake, ninja, yasm , libjpeg, openssl, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf , openh264, usrsctp, libevent, libvpx +, libX11, libXtst, libXcomposite, libXdamage, libXext, libXrender, libXrandr, libXi , glib, abseil-cpp, pcre, util-linuxMinimal, libselinux, libsepol, pipewire -, xorg, libX11, libXtst, libXcomposite, libXdamage, libXext, libXrender, libXrandr, libXi }: stdenv.mkDerivation { diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix index 78cfa89e6d45..087754775bd4 100644 --- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix +++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix @@ -29,11 +29,11 @@ assert pulseaudioSupport -> libpulseaudio != null; let - version = "5.7.26030.0627"; + version = "5.7.28852.0718"; srcs = { x86_64-linux = fetchurl { url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz"; - sha256 = "1nooaafH+ajRtdrknXmFPclC4fJMpRTo+gBsaPHYfT0="; + sha256 = "NoB9qxsuGsiwsZ3Y+F3WZpszujPBX/nehtFFI+KPV5E="; }; }; diff --git a/pkgs/applications/networking/juju/default.nix b/pkgs/applications/networking/juju/default.nix index a91255f54e34..ced8b2fd415b 100644 --- a/pkgs/applications/networking/juju/default.nix +++ b/pkgs/applications/networking/juju/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "juju"; - version = "2.9.5"; + version = "2.9.7"; src = fetchFromGitHub { owner = "juju"; repo = "juju"; rev = "juju-${version}"; - sha256 = "sha256-oBwusx63a8AWNHqlNtG0S/SiIRM55fbc/CGN2MFJDYA="; + sha256 = "sha256-jGrN0tsLO8gmkyZ1zNYzZd29mCQgLP7lSF0LkOygbyc="; }; - vendorSha256 = "sha256-VHUDqDsfY0c6r5sJbMX7JcXTIBXze9cd5qHqZWZAC2g="; + vendorSha256 = "sha256-0JNoOSNxJrJkph8OGzgQ7sdslnGC36e3Ap0uMpqriX0="; # Disable tests because it attempts to use a mongodb instance doCheck = false; diff --git a/pkgs/applications/radio/fldigi/default.nix b/pkgs/applications/radio/fldigi/default.nix index 36f020ed2726..a71e4f4bbd41 100644 --- a/pkgs/applications/radio/fldigi/default.nix +++ b/pkgs/applications/radio/fldigi/default.nix @@ -1,23 +1,49 @@ -{ lib, stdenv, fetchurl, hamlib, fltk14, libjpeg, libpng, portaudio, libsndfile, - libsamplerate, libpulseaudio, libXinerama, gettext, pkg-config, alsa-lib }: +{ lib +, stdenv +, fetchurl +, hamlib +, fltk14 +, libjpeg +, libpng +, portaudio +, libsndfile +, libsamplerate +, libpulseaudio +, libXinerama +, gettext +, pkg-config +, alsa-lib +}: stdenv.mkDerivation rec { - version = "4.1.18"; pname = "fldigi"; + version = "4.1.18"; src = fetchurl { url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz"; sha256 = "sha256-PH/YSrOoS6RSWyUenVYSDa7mJqODFoSpdP2tR2+QJw0="; }; - buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio - libsndfile libsamplerate libpulseaudio pkg-config alsa-lib ]; + buildInputs = [ + libXinerama + gettext + hamlib + fltk14 + libjpeg + libpng + portaudio + libsndfile + libsamplerate + libpulseaudio + pkg-config + alsa-lib + ]; - meta = { + meta = with lib; { description = "Digital modem program"; homepage = "https://sourceforge.net/projects/fldigi/"; - license = lib.licenses.gpl3Plus; - maintainers = with lib.maintainers; [ relrod ftrvxmtrx ]; - platforms = lib.platforms.linux; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ relrod ftrvxmtrx ]; + platforms = platforms.linux; }; } diff --git a/pkgs/applications/radio/multimon-ng/default.nix b/pkgs/applications/radio/multimon-ng/default.nix index 67d7dbea1740..1bfbf00e46fe 100644 --- a/pkgs/applications/radio/multimon-ng/default.nix +++ b/pkgs/applications/radio/multimon-ng/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { sha256 = "01716cfhxfzsab9zjply9giaa4nn4b7rm3p3vizrwi7n253yiwm2"; }; - buildInputs = [ libpulseaudio libX11 ]; + buildInputs = lib.optionals stdenv.isLinux [ libpulseaudio libX11 ]; nativeBuildInputs = [ cmake ]; @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { ''; homepage = "https://github.com/EliasOenal/multimon-ng"; license = licenses.gpl2Only; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = with maintainers; [ markuskowa ]; }; } diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix index 5d2158843ede..efea16692545 100644 --- a/pkgs/applications/science/chemistry/jmol/default.nix +++ b/pkgs/applications/science/chemistry/jmol/default.nix @@ -17,14 +17,14 @@ let }; in stdenv.mkDerivation rec { - version = "14.31.44"; + version = "14.31.46"; pname = "jmol"; src = let baseVersion = "${lib.versions.major version}.${lib.versions.minor version}"; in fetchurl { url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz"; - sha256 = "sha256-MHfqoQzUEL7nje7Y/hbaA8iktxfN7464TJXum5B6OCc="; + sha256 = "sha256-U8k8xQws0vIJ3ZICzZXxSbtl7boCzRqG9mFSTXvmCvg="; }; patchPhase = '' diff --git a/pkgs/applications/science/logic/logisim/default.nix b/pkgs/applications/science/logic/logisim/default.nix index 9b3f42dd4ba8..f94f08e43ab2 100644 --- a/pkgs/applications/science/logic/logisim/default.nix +++ b/pkgs/applications/science/logic/logisim/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, jre, makeWrapper }: +{ lib, stdenv, fetchurl, jre, makeWrapper, copyDesktopItems, makeDesktopItem, unzip }: stdenv.mkDerivation rec { pname = "logisim"; @@ -11,17 +11,39 @@ stdenv.mkDerivation rec { dontUnpack = true; - nativeBuildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper copyDesktopItems unzip ]; + + desktopItems = [ + (makeDesktopItem { + name = pname; + desktopName = "Logisim"; + exec = "logisim"; + icon = "logisim"; + comment = meta.description; + categories = "Education;"; + }) + ]; installPhase = '' + runHook preInstall + mkdir -p $out/bin makeWrapper ${jre}/bin/java $out/bin/logisim --add-flags "-jar $src" + + # Create icons + unzip $src "resources/logisim/img/*" + for size in 16 20 24 48 64 128 + do + install -D "./resources/logisim/img/logisim-icon-$size.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/logisim.png" + done + + runHook postInstall ''; meta = with lib; { - homepage = "http://ozark.hendrix.edu/~burch/logisim"; + homepage = "http://www.cburch.com/logisim/"; description = "Educational tool for designing and simulating digital logic circuits"; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ angustrau ]; license = licenses.gpl2Plus; platforms = platforms.unix; }; diff --git a/pkgs/applications/system/glances/default.nix b/pkgs/applications/system/glances/default.nix index e950fcfb1cda..1d1182ba0d57 100644 --- a/pkgs/applications/system/glances/default.nix +++ b/pkgs/applications/system/glances/default.nix @@ -9,14 +9,14 @@ buildPythonApplication rec { pname = "glances"; - version = "3.2.1"; + version = "3.2.2"; disabled = isPyPy; src = fetchFromGitHub { owner = "nicolargo"; repo = "glances"; rev = "v${version}"; - sha256 = "0m2cxmlyay2rr9hnc08s5q9xwdqy0nhzsl10by4f9ji0kiahnpl6"; + sha256 = "13w7bxfizsfi3xyhharnindyn3dv3p9p54a4xwyhnnhczs8kqa8s"; }; # Some tests fail in the sandbox (they e.g. require access to /sys/class/power_supply): diff --git a/pkgs/applications/virtualization/firecracker/default.nix b/pkgs/applications/virtualization/firecracker/default.nix index 1d049621aa5f..3d2f4606e492 100644 --- a/pkgs/applications/virtualization/firecracker/default.nix +++ b/pkgs/applications/virtualization/firecracker/default.nix @@ -1,17 +1,17 @@ { fetchurl, lib, stdenv }: let - version = "0.24.3"; + version = "0.24.4"; suffix = { - x86_64-linux = "x86_64"; + x86_64-linux = "x86_64"; aarch64-linux = "aarch64"; }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download"; dlbin = sha256: fetchurl { - url = "${baseurl}/v${version}/firecracker-v${version}-${suffix}.tgz"; + url = "${baseurl}/v${version}/firecracker-v${version}-${suffix}.tgz"; sha256 = sha256."${stdenv.hostPlatform.system}"; }; @@ -22,15 +22,15 @@ stdenv.mkDerivation { sourceRoot = "."; src = dlbin { - x86_64-linux = "sha256-i6NMVFoLm4hQJH7RnhfC0t+0DJCINoP5b/iCv9JyRdk="; - aarch64-linux = "0m7xs12g97z1ipzaf7dgknf3azlah0p6bdr9i454azvzg955238b"; + x86_64-linux = "sha256-EKndfLdkxn+S+2ElAyQ+mKEo5XN6kqZLuLCsQf+fKuk="; + aarch64-linux = "0zzr8x776aya6f6pw0dc0a6jxgbqv3f37p1vd8mmlsdv66c4kmfb"; }; dontConfigure = true; - buildPhase = '' - mv firecracker-* firecracker - mv jailer-* jailer + buildPhase = '' + mv release-v${version}/firecracker-v${version}-${suffix} firecracker + mv release-v${version}/jailer-v${version}-${suffix} jailer chmod +x firecracker jailer ''; @@ -48,9 +48,9 @@ stdenv.mkDerivation { meta = with lib; { description = "Secure, fast, minimal micro-container virtualization"; - homepage = "http://firecracker-microvm.io"; - license = licenses.asl20; - platforms = [ "x86_64-linux" "aarch64-linux" ]; - maintainers = with maintainers; [ thoughtpolice ]; + homepage = "http://firecracker-microvm.io"; + license = licenses.asl20; + platforms = [ "x86_64-linux" "aarch64-linux" ]; + maintainers = with maintainers; [ thoughtpolice endocrimes ]; }; } diff --git a/pkgs/data/themes/mojave/default.nix b/pkgs/data/themes/mojave/default.nix index 7959753f05e0..bf2014344a6e 100644 --- a/pkgs/data/themes/mojave/default.nix +++ b/pkgs/data/themes/mojave/default.nix @@ -1,15 +1,27 @@ -{ lib, stdenv, fetchFromGitHub, fetchurl, glib, gtk-engine-murrine, gtk_engines, inkscape, optipng, sassc, which }: +{ lib +, stdenv +, fetchFromGitHub +, fetchurl +, glib +, gtk-engine-murrine +, gtk_engines +, inkscape +, jdupes +, optipng +, sassc +, which +}: stdenv.mkDerivation rec { pname = "mojave-gtk-theme"; - version = "2020-11-29"; + version = "2021-07-20"; srcs = [ (fetchFromGitHub { owner = "vinceliuice"; repo = pname; rev = version; - sha256 = "07lcg28y0scpii29j85343kmcga4wyaayjpx9a118z838mnvb757"; + sha256 = "08j70kmjhvh06c3ahcracarrfq4vpy0zsp6zkcivbw4nf3bzp2zc"; }) (fetchurl { url = "https://github.com/vinceliuice/Mojave-gtk-theme/raw/11741a99d96953daf9c27e44c94ae50a7247c0ed/macOS_Mojave_Wallpapers.tar.xz"; @@ -19,40 +31,61 @@ stdenv.mkDerivation rec { sourceRoot = "source"; - nativeBuildInputs = [ glib inkscape optipng sassc which ]; + nativeBuildInputs = [ + glib + inkscape + jdupes + optipng + sassc + which + ]; - buildInputs = [ gtk_engines ]; + buildInputs = [ + gtk_engines + ]; - propagatedUserEnvPkgs = [ gtk-engine-murrine ]; + propagatedUserEnvPkgs = [ + gtk-engine-murrine + ]; + + # These fixup steps are slow and unnecessary. + dontPatchELF = true; + dontRewriteSymlinks = true; postPatch = '' patchShebangs . - for f in render-assets.sh \ - src/assets/gtk-2.0/render-assets.sh \ - src/assets/gtk-3.0/common-assets/render-assets.sh \ - src/assets/gtk-3.0/windows-assets/render-assets.sh \ - src/assets/metacity-1/render-assets.sh \ - src/assets/xfwm4/render-assets.sh + for f in \ + render-assets.sh \ + src/assets/cinnamon/thumbnails/render-thumbnails.sh \ + src/assets/gtk-2.0/render-assets.sh \ + src/assets/gtk/common-assets/render-assets.sh \ + src/assets/gtk/thumbnails/render-thumbnails.sh \ + src/assets/gtk/windows-assets/render-alt-assets.sh \ + src/assets/gtk/windows-assets/render-alt-small-assets.sh \ + src/assets/gtk/windows-assets/render-assets.sh \ + src/assets/gtk/windows-assets/render-small-assets.sh \ + src/assets/metacity-1/render-assets.sh \ + src/assets/xfwm4/render-assets.sh do substituteInPlace $f \ --replace /usr/bin/inkscape ${inkscape}/bin/inkscape \ --replace /usr/bin/optipng ${optipng}/bin/optipng done - - # Shut up inkscape's warnings - export HOME="$NIX_BUILD_ROOT" ''; installPhase = '' - name= ./install.sh -d $out/share/themes + runHook preInstall + name= ./install.sh --theme all --dest $out/share/themes install -D -t $out/share/wallpapers ../"macOS Mojave Wallpapers"/* + jdupes -l -r $out/share + runHook postInstall ''; meta = with lib; { description = "Mac OSX Mojave like theme for GTK based desktop environments"; homepage = "https://github.com/vinceliuice/Mojave-gtk-theme"; - license = licenses.gpl3; + license = licenses.gpl3Only; platforms = platforms.unix; maintainers = [ maintainers.romildo ]; }; diff --git a/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/pkgs/desktops/gnome/core/evolution-data-server/default.nix index 8781a2aa7fde..480f95b970ba 100644 --- a/pkgs/desktops/gnome/core/evolution-data-server/default.nix +++ b/pkgs/desktops/gnome/core/evolution-data-server/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "evolution-data-server"; - version = "3.40.2"; + version = "3.40.3"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "7IKVFjnzKlzs6AqLC5qj9mt9MY4+4sHDUjTy4r3opBg="; + sha256 = "Trs5F9a+tUrVlt5dilxG8PtXJJ7Z24HwXHqUpzDB2SE="; }; patches = [ diff --git a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix index 3bd0ec3b3cdf..1431a6179493 100644 --- a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix +++ b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "gnome-sudoku"; - version = "40.1"; + version = "40.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1nr1g4q1gxqbzmaz15y3zgssnj7w01cq9l422ja4rglyg0fwjhbm"; + sha256 = "NhIFMePHE5WB6jgA+/48KzFpTEQBRezIl6w05WLXVKM="; }; nativeBuildInputs = [ meson ninja vala pkg-config gobject-introspection gettext itstool libxml2 python3 desktop-file-utils wrapGAppsHook ]; diff --git a/pkgs/development/interpreters/bic/default.nix b/pkgs/development/interpreters/bic/default.nix new file mode 100644 index 000000000000..c27270f7a95e --- /dev/null +++ b/pkgs/development/interpreters/bic/default.nix @@ -0,0 +1,42 @@ +{ lib +, stdenv +, fetchFromGitHub +, readline +, autoreconfHook +, autoconf-archive +, gmp +, flex +, bison +}: + +stdenv.mkDerivation rec { + pname = "bic"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "hexagonal-sun"; + repo = pname; + rev = "v${version}"; + sha256 = "1ws46h1ngzk14dspmsggj9535yl04v9wh8v4gb234n34rdkdsyyw"; + }; + + buildInputs = [ readline gmp ]; + nativeBuildInputs = [ + autoreconfHook + autoconf-archive + bison + flex + ]; + + meta = with lib; { + description = "A C interpreter and API explorer"; + longDescription = '' + bic This a project that allows developers to explore and test C-APIs using a + read eval print loop, also known as a REPL. + ''; + license = with licenses; [ gpl2Plus ]; + homepage = "https://github.com/hexagonal-sun/bic"; + platforms = platforms.unix; + maintainers = with maintainers; [ hexagonal-sun ]; + }; +} diff --git a/pkgs/development/interpreters/erlang/R23.nix b/pkgs/development/interpreters/erlang/R23.nix index 9e344adc15a3..3d0a2b160065 100644 --- a/pkgs/development/interpreters/erlang/R23.nix +++ b/pkgs/development/interpreters/erlang/R23.nix @@ -3,6 +3,6 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "23.3.4.4"; - sha256 = "dnoSGfBUZrgcnNQNAoqmVOxK/NQlt1DC187sxg7mPq8="; + version = "23.3.4.5"; + sha256 = "2u/w8IPKHEZ+rZ3T7Wn9+Ggxe6JY8cHz8q/N0RjbrNU="; } diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index 0a87c1ddcf07..e8228d23b0c9 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -184,6 +184,14 @@ let enableParallelBuilding = true; + # Fix linker error on Darwin (see https://trac.macports.org/ticket/61865) + NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-lobjc"; + + # Avoid Qt 5.12 problem on Big Sur: https://bugreports.qt.io/browse/QTBUG-87014 + qtWrapperArgs = lib.optionals stdenv.isDarwin [ + "--set QT_MAC_WANTS_LAYER 1" + ]; + # See https://savannah.gnu.org/bugs/?50339 F77_INTEGER_8_FLAG = if use64BitIdx then "-fdefault-integer-8" else ""; diff --git a/pkgs/development/interpreters/rakudo/default.nix b/pkgs/development/interpreters/rakudo/default.nix index fdb3a78a1b7e..eabbdf0b757f 100644 --- a/pkgs/development/interpreters/rakudo/default.nix +++ b/pkgs/development/interpreters/rakudo/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "rakudo"; - version = "2021.06"; + version = "2021.07"; src = fetchurl { url = "https://rakudo.org/dl/rakudo/rakudo-${version}.tar.gz"; - sha256 = "11ixlqmvbb37abksdysg5r4lkbwzr486lkc0ssl3wca4iiy3mhgf"; + sha256 = "0lmbgw24f8277b9kj725v3grwh1524p4iy5jbqajxwxjr16zx2hp"; }; nativeBuildInputs = [ removeReferencesTo ]; diff --git a/pkgs/development/interpreters/rakudo/moarvm.nix b/pkgs/development/interpreters/rakudo/moarvm.nix index 60a5e071545e..73dac18a5974 100644 --- a/pkgs/development/interpreters/rakudo/moarvm.nix +++ b/pkgs/development/interpreters/rakudo/moarvm.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "moarvm"; - version = "2021.06"; + version = "2021.07"; src = fetchurl { url = "https://moarvm.org/releases/MoarVM-${version}.tar.gz"; - sha256 = "19vjcyb9fg9msjw1ih00c2qby480gl4highw24zx7j84slhsj013"; + sha256 = "1zk3dpvgrgg4kam3hx9pq1a2l2kgw822dci8hg7x0cn1lppwwdw4"; }; buildInputs = [ perl ] ++ lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ]; diff --git a/pkgs/development/interpreters/rakudo/nqp.nix b/pkgs/development/interpreters/rakudo/nqp.nix index 4b456d819f6d..d34f5ac71a09 100644 --- a/pkgs/development/interpreters/rakudo/nqp.nix +++ b/pkgs/development/interpreters/rakudo/nqp.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "nqp"; - version = "2021.06"; + version = "2021.07"; src = fetchurl { url = "https://github.com/raku/nqp/releases/download/${version}/nqp-${version}.tar.gz"; - sha256 = "1d00lajjdd2k510fb0cb6c8bpklvlnncykf6jz8j8djfp0b2i696"; + sha256 = "191y6r6qxpib52h3drc5pbjrgf65pn5ahis1dyz55dxk7ajg5anw"; }; buildInputs = [ perl ]; diff --git a/pkgs/development/interpreters/rakudo/zef.nix b/pkgs/development/interpreters/rakudo/zef.nix index 61008f242b91..350eea43160e 100644 --- a/pkgs/development/interpreters/rakudo/zef.nix +++ b/pkgs/development/interpreters/rakudo/zef.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "zef"; - version = "0.11.5"; + version = "0.11.9"; src = fetchFromGitHub { owner = "ugexe"; repo = "zef"; rev = "v${version}"; - sha256 = "sha256-LLUAwqky/q9KvFltrcff5U2BSLvOk/BbDSj07QlePSg="; + sha256 = "1x1jj9k80lza1b3aidw9ybi26kjf30mvqkmnnmxf27302ipq69jy"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/libraries/arb/default.nix b/pkgs/development/libraries/arb/default.nix index 97af236af046..393639ea558b 100644 --- a/pkgs/development/libraries/arb/default.nix +++ b/pkgs/development/libraries/arb/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "arb"; - version = "2.19.0"; + version = "2.20.0"; src = fetchFromGitHub { owner = "fredrik-johansson"; repo = pname; rev = version; - sha256 = "sha256-J/LQVZ8gmssazE7ru89EtvW6cVjaLEHgUHuwjW1nuOE="; + sha256 = "sha256-HOIbdkVV7NKowIGhDdn/S8unIRV469OnRHiuiCGaWgk="; }; buildInputs = [ mpir gmp mpfr flint ]; diff --git a/pkgs/development/libraries/bzrtp/default.nix b/pkgs/development/libraries/bzrtp/default.nix index 5236c92527e2..6ee48a0a042a 100644 --- a/pkgs/development/libraries/bzrtp/default.nix +++ b/pkgs/development/libraries/bzrtp/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { pname = "bzrtp"; - version = "4.5.10"; + version = "5.0.0"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { group = "BC"; repo = pname; rev = version; - sha256 = "sha256-8qlCTkiRKMDODKMsa52pskBJ7pjqCDYkUJDb/5gFoKg="; + sha256 = "sha256-cagRN0DQw1/efCuMWngcF04SE9bViHANaNsQNKB5txA="; }; buildInputs = [ bctoolbox sqlite ]; diff --git a/pkgs/development/libraries/cimg/default.nix b/pkgs/development/libraries/cimg/default.nix index f70513e0cd00..69e16a8922a5 100644 --- a/pkgs/development/libraries/cimg/default.nix +++ b/pkgs/development/libraries/cimg/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "cimg"; - version = "2.9.7"; + version = "2.9.8"; src = fetchFromGitHub { owner = "dtschump"; repo = "CImg"; rev = "v.${version}"; - sha256 = "sha256-cR2wvGtomT1cZh8wKMCfYDNuP3d1gKhHJavVnvuQ8Mc="; + sha256 = "sha256-nEICs1oAIXu6/5O4R3mbwig1OY+HDIWWeQjrcYnCwT0="; }; installPhase = '' diff --git a/pkgs/development/libraries/flint/default.nix b/pkgs/development/libraries/flint/default.nix index 7f814461f282..548f561f25a0 100644 --- a/pkgs/development/libraries/flint/default.nix +++ b/pkgs/development/libraries/flint/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl , gmp , mpir @@ -12,11 +13,11 @@ assert withBlas -> openblas != null && blas.implementation == "openblas" && lapa stdenv.mkDerivation rec { pname = "flint"; - version = "2.7.1"; + version = "2.8.0"; src = fetchurl { - url = "http://www.flintlib.org/flint-${version}.tar.gz"; - sha256 = "07j8r96kdzp19cy3a5yvpjxf90mkd6103yr2n42qmpv7mgcjyvhq"; + url = "https://www.flintlib.org/flint-${version}.tar.gz"; + sha256 = "sha256-WEI1zcOdd52ZIOrvFv4ITzwm/+7qADo//2SiCg8zRJ4="; }; buildInputs = [ @@ -27,9 +28,11 @@ stdenv.mkDerivation rec { ] ++ lib.optionals withBlas [ openblas ]; + propagatedBuildInputs = [ mpfr # flint.h includes mpfr.h ]; + configureFlags = [ "--with-gmp=${gmp}" "--with-mpir=${mpir}" @@ -40,13 +43,14 @@ stdenv.mkDerivation rec { ]; doCheck = true; - meta = { + + meta = with lib; { description = "Fast Library for Number Theory"; - license = lib.licenses.gpl2Plus; - maintainers = lib.teams.sage.members; - platforms = lib.platforms.unix; - homepage = "http://www.flintlib.org/"; - downloadPage = "http://www.flintlib.org/downloads.html"; + license = licenses.gpl2Plus; + maintainers = teams.sage.members; + platforms = platforms.unix; + homepage = "https://www.flintlib.org/"; + downloadPage = "https://www.flintlib.org/downloads.html"; updateWalker = true; }; } diff --git a/pkgs/development/libraries/portaudio/default.nix b/pkgs/development/libraries/portaudio/default.nix index 840c9e773f49..4666850c5849 100644 --- a/pkgs/development/libraries/portaudio/default.nix +++ b/pkgs/development/libraries/portaudio/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-mac-universal" "--enable-cxx" ]; - NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=deprecated-declarations -Wno-error=implicit-const-int-float-conversion -Wno-error=nullability-completeness-on-arrays"; + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=deprecated-declarations -Wno-error=nullability-completeness-on-arrays"; propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AudioUnit AudioToolbox CoreAudio CoreServices Carbon ]; diff --git a/pkgs/development/ocaml-modules/ca-certs-nss/default.nix b/pkgs/development/ocaml-modules/ca-certs-nss/default.nix index 5e6691a9feba..31dea9201bbb 100644 --- a/pkgs/development/ocaml-modules/ca-certs-nss/default.nix +++ b/pkgs/development/ocaml-modules/ca-certs-nss/default.nix @@ -16,13 +16,13 @@ buildDunePackage rec { pname = "ca-certs-nss"; - version = "3.64.0.1"; + version = "3.66"; - minimumOCamlVersion = "4.07"; + minimumOCamlVersion = "4.08"; src = fetchurl { url = "https://github.com/mirage/ca-certs-nss/releases/download/v${version}/ca-certs-nss-v${version}.tbz"; - sha256 = "909c64076491647471f785527bfdd9a886a34504edabf88542b43f27b86067f9"; + sha256 = "f0f8035b470f2a48360b92d0e6287f41f98e4ba71576a1cd4c9246c468932f09"; }; useDune2 = true; diff --git a/pkgs/development/ocaml-modules/carton/default.nix b/pkgs/development/ocaml-modules/carton/default.nix index c10537d5d506..81893ae9ac36 100644 --- a/pkgs/development/ocaml-modules/carton/default.nix +++ b/pkgs/development/ocaml-modules/carton/default.nix @@ -7,14 +7,14 @@ buildDunePackage rec { pname = "carton"; - version = "0.4.1"; + version = "0.4.2"; useDune2 = true; minimumOCamlVersion = "4.08"; src = fetchurl { url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/${pname}-${pname}-v${version}.tbz"; - sha256 = "d16aad5560d9ab1e3b4d93d2e8fdea638c216ff47338fb630a8aefd22b452665"; + sha256 = "a0a03b2f7bb7dafe070bc6a74583b6d6da714d2c636dd4d5a6443c9f299ceacc"; }; # remove changelogs for mimic and the git* packages diff --git a/pkgs/development/ocaml-modules/decompress/default.nix b/pkgs/development/ocaml-modules/decompress/default.nix index 505ffe3c4257..4681e5a1879b 100644 --- a/pkgs/development/ocaml-modules/decompress/default.nix +++ b/pkgs/development/ocaml-modules/decompress/default.nix @@ -4,7 +4,7 @@ }: buildDunePackage rec { - version = "1.4.0"; + version = "1.4.1"; pname = "decompress"; minimumOCamlVersion = "4.07"; @@ -13,7 +13,7 @@ buildDunePackage rec { src = fetchurl { url = "https://github.com/mirage/decompress/releases/download/v${version}/decompress-v${version}.tbz"; - sha256 = "d1669e07446d73dd5e16f020d4a1682abcbb1b7a1e3bf19b805429636c26a19b"; + sha256 = "0130ea6acb61b0a25393fa23148e116d7a17c77558196f7abddaee9e05a1d7a8"; }; buildInputs = [ cmdliner ]; diff --git a/pkgs/development/ocaml-modules/imagelib/default.nix b/pkgs/development/ocaml-modules/imagelib/default.nix index 0a846214dc05..580db48769ef 100644 --- a/pkgs/development/ocaml-modules/imagelib/default.nix +++ b/pkgs/development/ocaml-modules/imagelib/default.nix @@ -4,14 +4,14 @@ buildDunePackage rec { minimumOCamlVersion = "4.07"; - version = "20210402"; + version = "20210511"; pname = "imagelib"; useDune2 = true; src = fetchurl { url = "https://github.com/rlepigre/ocaml-imagelib/releases/download/${version}/imagelib-${version}.tbz"; - sha256 = "b3c8ace02b10b36b6c60b3ce3ae0b9109d4a861916ec320c59cc1194f4cc86e3"; + sha256 = "1cb94ea3731dc994c205940c9434543ce3f2470cdcb2e93a3e02ed793e80d480"; }; propagatedBuildInputs = [ decompress stdlib-shims ]; diff --git a/pkgs/development/ocaml-modules/lwt-dllist/default.nix b/pkgs/development/ocaml-modules/lwt-dllist/default.nix index 28a6f5f43d7f..b28981b1b779 100644 --- a/pkgs/development/ocaml-modules/lwt-dllist/default.nix +++ b/pkgs/development/ocaml-modules/lwt-dllist/default.nix @@ -1,23 +1,22 @@ -{ lib, buildDunePackage, fetchurl, lwt }: +{ lib, buildDunePackage, fetchurl, lwt, ocaml }: buildDunePackage rec { pname = "lwt-dllist"; - version = "1.0.0"; + version = "1.0.1"; useDune2 = true; - minimumOCamlVersion = "4.03"; + minimumOCamlVersion = "4.02"; src = fetchurl { url = "https://github.com/mirage/${pname}/releases/download/v${version}/${pname}-v${version}.tbz"; - sha256 = "0g111f8fq9k1hwccpkhylkp83f73mlz4xnxxr3rf9xpi2f8fh7j9"; + sha256 = "e86ce75e40f00d51514cf8b2e71e5184c4cb5dae96136be24613406cfc0dba6e"; }; - propagatedBuildInputs = [ + checkInputs = [ lwt ]; - - doCheck = true; + doCheck = lib.versionAtLeast ocaml.version "4.03"; meta = with lib; { description = "Mutable doubly-linked list with Lwt iterators"; diff --git a/pkgs/development/ocaml-modules/macaddr/default.nix b/pkgs/development/ocaml-modules/macaddr/default.nix index 5552393b4086..4f6f2e4287f5 100644 --- a/pkgs/development/ocaml-modules/macaddr/default.nix +++ b/pkgs/development/ocaml-modules/macaddr/default.nix @@ -4,15 +4,15 @@ buildDunePackage rec { pname = "macaddr"; - version = "5.0.1"; + version = "5.1.0"; useDune2 = true; minimumOCamlVersion = "4.04"; src = fetchurl { - url = "https://github.com/mirage/ocaml-ipaddr/archive/v${version}.tar.gz"; - sha256 = "0ffqkhmnj8l085xgl7jxhs3ld9zsd9iavdg06nnhr1i9g1aayk1b"; + url = "https://github.com/mirage/ocaml-ipaddr/releases/download/v${version}/ipaddr-v${version}.tbz"; + sha256 = "7e9328222c1a5f39b0751baecd7e27a842bdb0082fd48126eacbbad8816fbf5a"; }; checkInputs = [ ppx_sexp_conv ounit ]; diff --git a/pkgs/development/ocaml-modules/mirage-crypto/default.nix b/pkgs/development/ocaml-modules/mirage-crypto/default.nix index 549838db396c..b35d7cc910cb 100644 --- a/pkgs/development/ocaml-modules/mirage-crypto/default.nix +++ b/pkgs/development/ocaml-modules/mirage-crypto/default.nix @@ -7,11 +7,11 @@ buildDunePackage rec { minimumOCamlVersion = "4.08"; pname = "mirage-crypto"; - version = "0.10.1"; + version = "0.10.2"; src = fetchurl { url = "https://github.com/mirage/mirage-crypto/releases/download/v${version}/mirage-crypto-v${version}.tbz"; - sha256 = "028e2fc1f0a3e9b06603c6a253ecd043100099bc1c12c0567d8bc46d3781499c"; + sha256 = "96c4826fa3532c9d2ba21cd5fa25df003be3df20b2cc01068b60d59e0222d906"; }; useDune2 = true; diff --git a/pkgs/development/ocaml-modules/mirage/runtime.nix b/pkgs/development/ocaml-modules/mirage/runtime.nix index aaa51aa276c4..4a876658d181 100644 --- a/pkgs/development/ocaml-modules/mirage/runtime.nix +++ b/pkgs/development/ocaml-modules/mirage/runtime.nix @@ -3,7 +3,7 @@ buildDunePackage rec { pname = "mirage-runtime"; - version = "3.10.3"; + version = "3.10.4"; useDune2 = true; @@ -11,7 +11,7 @@ buildDunePackage rec { src = fetchurl { url = "https://github.com/mirage/mirage/releases/download/v${version}/mirage-v${version}.tbz"; - sha256 = "7c8059ef9e330eaef1ed51c0d89afe17900310f8083a426cd8099602222c2281"; + sha256 = "c2ea22b6faf16bed783cac0e0bafd87f321756a91798f56c9a930f0edb5d9116"; }; propagatedBuildInputs = [ ipaddr functoria-runtime fmt logs ocaml_lwt ]; diff --git a/pkgs/development/ocaml-modules/otoml/default.nix b/pkgs/development/ocaml-modules/otoml/default.nix new file mode 100644 index 000000000000..17e8fc855ea0 --- /dev/null +++ b/pkgs/development/ocaml-modules/otoml/default.nix @@ -0,0 +1,32 @@ +{ lib, fetchFromGitHub, buildDunePackage +, menhir +, menhirLib +, uutf +}: + +buildDunePackage rec { + pname = "otoml"; + version = "0.9.0"; + + useDune2 = true; + + minimalOCamlVersion = "4.08"; + + src = fetchFromGitHub { + owner = "dmbaturin"; + repo = pname; + rev = version; + sha256 = "0l0c60rzgk11y8xq05kr8q9hkzb3c8vi995mq84x98ys73wb42j3"; + }; + + buildInputs = [ menhir ]; + + propagatedBuildInputs = [ menhirLib uutf ]; + + meta = { + description = "A TOML parsing and manipulation library for OCaml"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.vbgl ]; + inherit (src.meta) homepage; + }; +} diff --git a/pkgs/development/ocaml-modules/tcpip/default.nix b/pkgs/development/ocaml-modules/tcpip/default.nix index 53656f00572a..635e9aea1171 100644 --- a/pkgs/development/ocaml-modules/tcpip/default.nix +++ b/pkgs/development/ocaml-modules/tcpip/default.nix @@ -13,27 +13,15 @@ buildDunePackage rec { pname = "tcpip"; - version = "6.1.0"; + version = "6.2.0"; useDune2 = true; src = fetchurl { url = "https://github.com/mirage/mirage-${pname}/releases/download/v${version}/${pname}-v${version}.tbz"; - sha256 = "7b3ed2e1ca835c1cc65ac911bcb0de12ebc2b580dd195006bdea2cb387510474"; + sha256 = "d0f6e643ce04da808d5f977c5ab2422cdb4f67e7abdc46dd6776ceada7151e1b"; }; - patches = [ - ./makefile-no-opam.patch - ]; - - # Make tests compatible with alcotest 1.4.0 - postPatch = '' - for p in common.ml test_tcp_options.ml - do - substituteInPlace test/$p --replace 'Fmt.kstrf Alcotest.fail' 'Fmt.kstrf (fun s -> Alcotest.fail s)' - done - ''; - nativeBuildInputs = [ bisect_ppx ppx_cstruct diff --git a/pkgs/development/ocaml-modules/tcpip/makefile-no-opam.patch b/pkgs/development/ocaml-modules/tcpip/makefile-no-opam.patch deleted file mode 100644 index 1603a1278b0e..000000000000 --- a/pkgs/development/ocaml-modules/tcpip/makefile-no-opam.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/freestanding/Makefile b/freestanding/Makefile -index f22d220d..3e97b4c5 100644 ---- a/freestanding/Makefile -+++ b/freestanding/Makefile -@@ -1,4 +1,6 @@ --PKG_CONFIG_PATH := $(shell opam config var prefix)/lib/pkgconfig -+ifneq (, $(shell command -v opam)) -+ PKG_CONFIG_PATH ?= $(shell opam config var prefix)/lib/pkgconfig -+endif - - EXISTS := $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --exists ocaml-freestanding; echo $$?) - diff --git a/pkgs/development/ocaml-modules/x509/default.nix b/pkgs/development/ocaml-modules/x509/default.nix index 0ce57b071689..85209098559a 100644 --- a/pkgs/development/ocaml-modules/x509/default.nix +++ b/pkgs/development/ocaml-modules/x509/default.nix @@ -8,11 +8,11 @@ buildDunePackage rec { minimumOCamlVersion = "4.07"; pname = "x509"; - version = "0.13.0"; + version = "0.14.0"; src = fetchurl { url = "https://github.com/mirleft/ocaml-x509/releases/download/v${version}/x509-v${version}.tbz"; - sha256 = "4577c2a616bda45cc777869fc44e272397d63a029135a993df8937bcfd6f6c49"; + sha256 = "9b42f34171261b2193ee662f096566c48c48e087949c186c288f90c9b3b9f498"; }; useDune2 = true; diff --git a/pkgs/development/php-packages/composer/default.nix b/pkgs/development/php-packages/composer/default.nix index aaa698e6d0c6..15dd3f5bc597 100644 --- a/pkgs/development/php-packages/composer/default.nix +++ b/pkgs/development/php-packages/composer/default.nix @@ -1,14 +1,14 @@ { mkDerivation, fetchurl, makeWrapper, unzip, lib, php }: let pname = "composer"; - version = "2.1.3"; + version = "2.1.5"; in mkDerivation { inherit pname version; src = fetchurl { url = "https://getcomposer.org/download/${version}/composer.phar"; - sha256 = "04ad2zsnf8qi6hzs9sak6y8xxyx8l0f7crmcimnp7nn8vsc2x9zq"; + sha256 = "1v4hjwbv1y5jvj91i2fj8bvmfsymp9ls8h231zd85svfqdy5b5dy"; }; dontUnpack = true; diff --git a/pkgs/development/python-modules/asysocks/default.nix b/pkgs/development/python-modules/asysocks/default.nix index 21a3ed2a8fe3..16e71a62ff4b 100644 --- a/pkgs/development/python-modules/asysocks/default.nix +++ b/pkgs/development/python-modules/asysocks/default.nix @@ -5,11 +5,11 @@ buildPythonPackage rec { pname = "asysocks"; - version = "0.1.1"; + version = "0.1.2"; src = fetchPypi { inherit pname version; - sha256 = "sha256-7EzSALAJcx8BNHX44FeeiSPRcTe9UFHXQ4IoSKxMU8w="; + sha256 = "1hi9hzih265qlh7x32r5pbaqm9wkhm52yrdiksnd4gl5nrdgwcwv"; }; # Upstream hasn't release the tests yet diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix index 6f4e05767bb7..2b968fb991a7 100644 --- a/pkgs/development/python-modules/black/default.nix +++ b/pkgs/development/python-modules/black/default.nix @@ -11,7 +11,7 @@ , pathspec , parameterized , regex -, toml +, tomli , typed-ast , typing-extensions , uvloop @@ -20,13 +20,13 @@ buildPythonPackage rec { pname = "black"; - version = "21.6b0"; + version = "21.7b0"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "016f6bhnnnbcrrh3cvmpk77ww0nykv5n1qvgf8b3044dm14264yw"; + sha256 = "06d27adq6v6p8wspi0wwqz2pnq34p5jhnqvijbin54yyj5j3qdy8"; }; nativeBuildInputs = [ setuptools-scm ]; @@ -66,7 +66,7 @@ buildPythonPackage rec { mypy-extensions pathspec regex - toml + tomli typed-ast # required for tests and python2 extra uvloop ] ++ lib.optional (pythonOlder "3.7") dataclasses diff --git a/pkgs/development/python-modules/graphviz/default.nix b/pkgs/development/python-modules/graphviz/default.nix index 0a2413e9d761..d0483864ff85 100644 --- a/pkgs/development/python-modules/graphviz/default.nix +++ b/pkgs/development/python-modules/graphviz/default.nix @@ -1,5 +1,6 @@ { lib , buildPythonPackage +, pythonOlder , fetchFromGitHub , substituteAll , graphviz @@ -12,14 +13,16 @@ buildPythonPackage rec { pname = "graphviz"; - version = "0.16"; + version = "0.17"; + + disabled = pythonOlder "3.6"; # patch does not apply to PyPI tarball due to different line endings src = fetchFromGitHub { owner = "xflr6"; repo = "graphviz"; rev = version; - sha256 = "147vi60mi57z623lhllwwzczzicv2iwj1yrmllj5xx5788i73j6g"; + sha256 = "sha256-K6z2C7hQH2A9bqgRR4MRqxVAH/k2NQBEelb2/6KDUr0="; }; patches = [ diff --git a/pkgs/development/python-modules/graphviz/hardcode-graphviz-path.patch b/pkgs/development/python-modules/graphviz/hardcode-graphviz-path.patch index fa2f634bbc29..ba25d54e3703 100644 --- a/pkgs/development/python-modules/graphviz/hardcode-graphviz-path.patch +++ b/pkgs/development/python-modules/graphviz/hardcode-graphviz-path.patch @@ -1,9 +1,9 @@ diff --git a/graphviz/backend.py b/graphviz/backend.py -index d2c4b97..f7175cd 100644 +index b66e616..3da4ef0 100644 --- a/graphviz/backend.py +++ b/graphviz/backend.py -@@ -122,7 +122,7 @@ def command(engine, format_, filepath=None, renderer=None, formatter=None): - raise ValueError('unknown formatter: %r' % formatter) +@@ -124,7 +124,7 @@ def command(engine: str, format_: str, filepath=None, + raise ValueError(f'unknown formatter: {formatter!r}') output_format = [f for f in (format_, renderer, formatter) if f is not None] - cmd = ['dot', '-K%s' % engine, '-T%s' % ':'.join(output_format)] @@ -11,7 +11,7 @@ index d2c4b97..f7175cd 100644 if filepath is None: rendered = None -@@ -275,7 +275,7 @@ def unflatten(source, +@@ -297,7 +297,7 @@ def unflatten(source: str, if fanout and stagger is None: raise RequiredArgumentError('fanout given without stagger') @@ -20,8 +20,8 @@ index d2c4b97..f7175cd 100644 if stagger is not None: cmd += ['-l', str(stagger)] if fanout: -@@ -304,7 +304,7 @@ def version(): - Graphviz Release version entry format +@@ -332,7 +332,7 @@ def version() -> typing.Tuple[int, ...]: + Graphviz Release version entry format: https://gitlab.com/graphviz/graphviz/-/blob/f94e91ba819cef51a4b9dcb2d76153684d06a913/gen_version.py#L17-20 """ - cmd = ['dot', '-V'] @@ -30,19 +30,19 @@ index d2c4b97..f7175cd 100644 stdout=subprocess.PIPE, stderr=subprocess.STDOUT) diff --git a/tests/test_backend.py b/tests/test_backend.py -index d10ef1a..e4aba58 100644 +index e0a0e1c..681f178 100644 --- a/tests/test_backend.py +++ b/tests/test_backend.py -@@ -52,7 +52,7 @@ def test_run_encoding_mocked(mocker, Popen, input=u'sp\xe4m', encoding='utf-8'): +@@ -54,7 +54,7 @@ def test_run_encoding_mocked(mocker, Popen, input='sp\xe4m', encoding='utf-8'): m.decode.assert_called_once_with(encoding) --@pytest.exe +-@pytest.mark.exe +@pytest.mark.skip(reason='empty $PATH has no effect') @pytest.mark.usefixtures('empty_path') @pytest.mark.parametrize('func, args', [ (render, ['dot', 'pdf', 'nonfilepath']), -@@ -146,7 +146,7 @@ def test_render_mocked(capsys, mocker, Popen, quiet): # noqa: N803 +@@ -148,7 +148,7 @@ def test_render_mocked(capsys, mocker, Popen, quiet): # noqa: N803 assert render('dot', 'pdf', 'nonfilepath', quiet=quiet) == 'nonfilepath.pdf' @@ -51,8 +51,8 @@ index d10ef1a..e4aba58 100644 stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=None, startupinfo=mocker.ANY) -@@ -208,7 +208,7 @@ def test_pipe_pipe_invalid_data_mocked(mocker, py2, Popen, quiet): # noqa: N803 - assert e.value.stdout is mocker.sentinel.out +@@ -211,7 +211,7 @@ def test_pipe_pipe_invalid_data_mocked(mocker, Popen, quiet): # noqa: N803 + assert e.value.stdout is out e.value.stdout = mocker.sentinel.new_stdout assert e.value.stdout is mocker.sentinel.new_stdout - Popen.assert_called_once_with(['dot', '-Kdot', '-Tpng'], @@ -62,7 +62,7 @@ index d10ef1a..e4aba58 100644 stderr=subprocess.PIPE, @@ -231,7 +231,7 @@ def test_pipe_mocked(capsys, mocker, Popen, quiet): # noqa: N803 - assert pipe('dot', 'png', b'nongraph', quiet=quiet) is mocker.sentinel.out + assert pipe('dot', 'png', b'nongraph', quiet=quiet) == b'stdout' - Popen.assert_called_once_with(['dot', '-Kdot', '-Tpng'], + Popen.assert_called_once_with(['@graphviz@/bin/dot', '-Kdot', '-Tpng'], diff --git a/pkgs/development/python-modules/ignite/default.nix b/pkgs/development/python-modules/ignite/default.nix index 432767b9f984..72a607505cdc 100644 --- a/pkgs/development/python-modules/ignite/default.nix +++ b/pkgs/development/python-modules/ignite/default.nix @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "pytorch"; repo = pname; rev = "v${version}"; - sha256 = "057v8v5p2picmgiidr9lzjbh7nj54pv95m6lyya3y7dw4vzaamij"; + sha256 = "sha256-FGFpaqq7InwRqFmQTmXGpJEjRUB69ZN/l20l42L2BAA="; }; checkInputs = [ pytestCheckHook matplotlib mock pytest-xdist ]; @@ -33,8 +33,13 @@ buildPythonPackage rec { # models, which doesn't work in the sandbox. # avoid tests which need special packages pytestFlagsArray = [ + "--ignore=tests/ignite/contrib/handlers/test_clearml_logger.py" + "--ignore=tests/ignite/contrib/handlers/test_lr_finder.py" "--ignore=tests/ignite/contrib/handlers/test_trains_logger.py" + "--ignore=tests/ignite/metrics/nlp/test_bleu.py" + "--ignore=tests/ignite/metrics/nlp/test_rouge.py" "--ignore=tests/ignite/metrics/test_dill.py" + "--ignore=tests/ignite/metrics/test_psnr.py" "--ignore=tests/ignite/metrics/test_ssim.py" "tests/" ]; @@ -42,16 +47,17 @@ buildPythonPackage rec { # disable tests which need specific packages disabledTests = [ "idist" - "tensorboard" "mlflow" + "tensorboard" + "test_integration" + "test_output_handler" # needs mlflow + "test_pbar" # slight output differences + "test_setup_clearml_logging" + "test_setup_neptune" + "test_setup_plx" + "test_write_results" "trains" "visdom" - "test_setup_neptune" - "test_output_handler" # needs mlflow - "test_integration" - "test_pbar" # slight output differences - "test_write_results" - "test_setup_plx" ]; meta = with lib; { diff --git a/pkgs/development/python-modules/imap-tools/default.nix b/pkgs/development/python-modules/imap-tools/default.nix index 5d4e41c5e5f0..d1cecdda42d9 100644 --- a/pkgs/development/python-modules/imap-tools/default.nix +++ b/pkgs/development/python-modules/imap-tools/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "imap-tools"; - version = "0.42.0"; + version = "0.44.0"; disabled = isPy27; @@ -15,7 +15,7 @@ buildPythonPackage rec { owner = "ikvk"; repo = "imap_tools"; rev = "v${version}"; - sha256 = "sha256-WNhhQ3iqqwyYyd+iOQVpsKAAfgJwJBaUR7rmYAEYUxw="; + sha256 = "sha256-C9396yRSowaLe3E1s+rw8bah77znjfoIhLwJpcqhN6Y="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/pyvicare/default.nix b/pkgs/development/python-modules/pyvicare/default.nix index 274cb0379c29..4c06728a4198 100644 --- a/pkgs/development/python-modules/pyvicare/default.nix +++ b/pkgs/development/python-modules/pyvicare/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pyvicare"; - version = "1.0.0"; + version = "1.1"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "somm15"; repo = "PyViCare"; rev = version; - sha256 = "05dlasx18fkmh4z1w8550yrb26fmsb5bc73wr9whmkasm32gpfl1"; + sha256 = "1mkbz1gl8bv4j7q82cbc9d3dzx80brzdwrcp8z3kma1b91ig99bk"; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/pkgs/development/python-modules/tomli/default.nix b/pkgs/development/python-modules/tomli/default.nix index 4204be03b94e..c658339dcd9c 100644 --- a/pkgs/development/python-modules/tomli/default.nix +++ b/pkgs/development/python-modules/tomli/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "tomli"; - version = "1.0.4"; + version = "1.1.0"; format = "pyproject"; src = fetchFromGitHub { owner = "hukkin"; repo = pname; rev = version; - sha256 = "sha256-ld0PsYnxVH3RbLG/NpvLDj9UhAe+QgwCQVXgGgqh8kE="; + sha256 = "1cj6iil9sii1zl0l4pw7h4alcnhwdbxinpph2f0rm5rghrp6prjm"; }; nativeBuildInputs = [ flit-core ]; diff --git a/pkgs/development/tools/analysis/tfsec/default.nix b/pkgs/development/tools/analysis/tfsec/default.nix index 62c054396444..176dea9a7bd1 100644 --- a/pkgs/development/tools/analysis/tfsec/default.nix +++ b/pkgs/development/tools/analysis/tfsec/default.nix @@ -5,13 +5,13 @@ buildGoPackage rec { pname = "tfsec"; - version = "0.51.2"; + version = "0.51.4"; src = fetchFromGitHub { owner = "aquasecurity"; repo = pname; rev = "v${version}"; - sha256 = "18qblimn78w17gydy7h9sjl9ri1wkvzi5phsqz1dkk43i3ryjg3s"; + sha256 = "0l9b6hdcfcyn03y5wsfganb3h2vsnlrs9y3vahnnlx4rvv51ldwf"; }; goPackagePath = "github.com/aquasecurity/tfsec"; diff --git a/pkgs/development/tools/earthly/default.nix b/pkgs/development/tools/earthly/default.nix index e806b502de86..ea8296b49f21 100644 --- a/pkgs/development/tools/earthly/default.nix +++ b/pkgs/development/tools/earthly/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "earthly"; - version = "0.5.18"; + version = "0.5.20"; src = fetchFromGitHub { owner = "earthly"; repo = "earthly"; rev = "v${version}"; - sha256 = "sha256-YY4scGRMuvyEpeEgvoJJsTtROl11hMyGr7vYBYvJY/w="; + sha256 = "sha256-wPtL5fH6s4qlG82udeg9Gv4iNBjDEeKNTDFHPsW4V/A="; }; - vendorSha256 = "sha256-aDkaOycQ/wPybSH5fnJIGtCOh+KV0wEF+qinRQQIdm4="; + vendorSha256 = "sha256-gydhh/EMSuE/beo+A2CRDdDnQGT6DMjMwthylT339I4="; buildFlagsArray = '' -ldflags= @@ -35,7 +35,7 @@ buildGoModule rec { description = "Build automation for the container era"; homepage = "https://earthly.dev/"; changelog = "https://github.com/earthly/earthly/releases/tag/v${version}"; - license = licenses.mpl20; + license = licenses.bsl11; maintainers = with maintainers; [ mdsp ]; }; } diff --git a/pkgs/development/tools/evans/default.nix b/pkgs/development/tools/evans/default.nix index dfc9d34b5ac5..bfe58a8dd041 100644 --- a/pkgs/development/tools/evans/default.nix +++ b/pkgs/development/tools/evans/default.nix @@ -2,18 +2,18 @@ buildGoModule rec { pname = "evans"; - version = "0.9.3"; + version = "0.10.0"; src = fetchFromGitHub { owner = "ktr0731"; repo = pname; rev = "v${version}"; - sha256 = "sha256-q8HWDZpUWaitdZcWkvKEWWbIWCj9VmWCxxhAdcYZx8s="; + sha256 = "sha256-Ftt3lnwLk2Zx1DxDmZx2hBqXcxzqUb6I/gEdQJuFsCc="; }; subPackages = [ "." ]; - vendorSha256 = "sha256-ntRlrbsQjZmVxEg9361Q+f6Wb/R393+sbOKOEh5VKPk="; + vendorSha256 = "sha256-WclmINHcgRtbRSZGv+lOgwuImHKVC9cfK8C+f9JBcts="; meta = with lib; { description = "More expressive universal gRPC client"; diff --git a/pkgs/development/tools/misc/apio/default.nix b/pkgs/development/tools/misc/apio/default.nix new file mode 100644 index 000000000000..b810910f7fec --- /dev/null +++ b/pkgs/development/tools/misc/apio/default.nix @@ -0,0 +1,69 @@ +{ lib +, buildPythonApplication +, fetchFromGitHub +, click +, semantic-version +, requests +, colorama +, pyserial +, wheel +, setuptools +, tinyprog +, pytestCheckHook +}: + +buildPythonApplication rec { + pname = "apio"; + version = "0.7.5"; + format = "flit"; + + src = fetchFromGitHub { + owner = "FPGAwars"; + repo = "apio"; + rev = "v${version}"; + sha256 = "sha256-9f0q6tELUDo6FdjPG708d7BY3O5ZiZ0FwNFzBBiLQp4="; + }; + + postPatch = '' + substituteInPlace apio/managers/scons.py --replace \ + 'return "tinyprog --libusb --program"' \ + 'return "${tinyprog}/bin/tinyprog --libusb --program"' + substituteInPlace apio/util.py --replace \ + '_command = join(get_bin_dir(), "tinyprog")' \ + '_command = "${tinyprog}/bin/tinyprog"' + + # semantic-version seems to not support version numbers like the one of tinyprog in Nixpkgs (1.0.24.dev114+gxxxxxxx). + # See https://github.com/rbarrois/python-semanticversion/issues/47. + # This leads to an error like "Error: Invalid version string: '1.0.24.dev114+g97f6353'" + # when executing "apio upload" for a TinyFPGA. + # Replace the dot with a dash to work around this problem. + substituteInPlace apio/managers/scons.py --replace \ + 'version = semantic_version.Version(pkg_version)' \ + 'version = semantic_version.Version(pkg_version.replace(".dev", "-dev"))' + ''; + + propagatedBuildInputs = [ + click + semantic-version + requests + colorama + pyserial + wheel + setuptools # needs pkg_resources at runtime (technically not needed when tinyprog is also in this list because of the propagatedBuildInputs of tinyprog) + + tinyprog # needed for upload to TinyFPGA + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pytestFlagsArray = [ "--offline" ]; + + meta = with lib; { + description = "Open source ecosystem for open FPGA boards"; + homepage = "https://github.com/FPGAwars/apio"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ Luflosi ]; + }; +} diff --git a/pkgs/development/tools/parsing/lemon/default.nix b/pkgs/development/tools/parsing/lemon/default.nix index 3db9e0f6d9ed..9c8786950d22 100644 --- a/pkgs/development/tools/parsing/lemon/default.nix +++ b/pkgs/development/tools/parsing/lemon/default.nix @@ -19,7 +19,7 @@ in stdenv.mkDerivation { pname = "lemon"; version = "1.69"; - phases = [ "buildPhase" "installPhase" ]; + dontUnpack = true; buildPhase = '' sh -xc "$CC ${srcs.lemon} -o lemon" diff --git a/pkgs/development/tools/postiats-utilities/default.nix b/pkgs/development/tools/postiats-utilities/default.nix index 6d4db28f37e0..f65d96382ac0 100644 --- a/pkgs/development/tools/postiats-utilities/default.nix +++ b/pkgs/development/tools/postiats-utilities/default.nix @@ -19,8 +19,6 @@ stdenv.mkDerivation rec { buildInputs = [ python3 python3Packages.wrapPython ]; - phases = "unpackPhase patchPhase installPhase"; - postPatch = '' for f in pats-* postiats/*.py; do sed -i "$f" -e "1 s,python3,python," diff --git a/pkgs/development/tools/ronn/default.nix b/pkgs/development/tools/ronn/default.nix index 8b5166272202..3569638b2183 100644 --- a/pkgs/development/tools/ronn/default.nix +++ b/pkgs/development/tools/ronn/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { gemdir = ./.; }; - phases = ["installPhase"]; + dontUnpack = true; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/thrust/default.nix b/pkgs/development/tools/thrust/default.nix index cc46f3f5d340..9770a384e183 100644 --- a/pkgs/development/tools/thrust/default.nix +++ b/pkgs/development/tools/thrust/default.nix @@ -25,8 +25,6 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper unzip ]; buildInputs = [ thrustEnv ]; - phases = [ "installPhase" "fixupPhase" ]; - installPhase = '' mkdir -p $out/bin mkdir -p $out/libexec/thrust diff --git a/pkgs/development/tools/wrangler/default.nix b/pkgs/development/tools/wrangler/default.nix index bb1f23164858..b26d5a8a9dba 100644 --- a/pkgs/development/tools/wrangler/default.nix +++ b/pkgs/development/tools/wrangler/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "wrangler"; - version = "1.16.1"; + version = "1.18.0"; src = fetchFromGitHub { owner = "cloudflare"; repo = pname; rev = "v${version}"; - sha256 = "sha256-chKmn38yB05NqDvtYWo4EwEIiD6kjy/1OMaMFM4qAA8="; + sha256 = "sha256-Ue9HCAYqv8DXiEZEuGRFPywNegakxBpb66RELP1Y+cg="; }; - cargoSha256 = "sha256-pG3ZsRPa/7QRkUik6a987SlGrl3B0thnN3h62JyzdJo="; + cargoSha256 = "sha256-HCsJG//RnlcmRSrBdf7iZTUOiQabMV2rICPLKvuE4AI="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/games/blackshades/default.nix b/pkgs/games/blackshades/default.nix index 263d92dcea63..bd29c7b616c4 100644 --- a/pkgs/games/blackshades/default.nix +++ b/pkgs/games/blackshades/default.nix @@ -1,30 +1,29 @@ { lib, stdenv, fetchFromSourcehut -, SDL, SDL_image, libGLU, libGL, openal, libvorbis, freealut }: +, SDL, stb, libGLU, libGL, openal, libvorbis, freealut }: stdenv.mkDerivation rec { pname = "blackshades"; - version = "1.1.1"; + version = "1.3.1"; src = fetchFromSourcehut { owner = "~cnx"; repo = pname; rev = version; - sha256 = "1gx43hcqahbd21ib8blhzmsrwqfzx4qy7f10ck0mh2zc4bfihz64"; + sha256 = "0yzp74ynkcp6hh5m4zmvrgx5gwm186hq7p3m7qkww54qdyijb3rv"; }; - buildInputs = [ SDL SDL_image libGLU libGL openal libvorbis freealut ]; + buildInputs = [ SDL stb libGLU libGL openal libvorbis freealut ]; - patchPhase = '' + postPatch = '' sed -i -e s,Data/,$out/share/$pname/,g \ -e s,Data:,$out/share/$pname/,g \ src/*.cpp ''; installPhase = '' - mkdir -p $out/bin $out/share/doc/$pname + mkdir -p $out/bin $out/share cp build/blackshades $out/bin cp -R Data $out/share/$pname - cp README.md $out/share/doc/$pname ''; meta = { diff --git a/pkgs/games/eduke32/default.nix b/pkgs/games/eduke32/default.nix index e15cf241f759..8c7a79ff9822 100644 --- a/pkgs/games/eduke32/default.nix +++ b/pkgs/games/eduke32/default.nix @@ -16,13 +16,13 @@ let in stdenv.mkDerivation rec { pname = "eduke32"; - version = "20200907"; - rev = "9257"; - revExtra = "93f62bbad"; + version = "20210722"; + rev = "9484"; + revExtra = "f3fea8c15"; src = fetchurl { - url = "http://dukeworld.duke4.net/eduke32/synthesis/latest/eduke32_src_${version}-${rev}-${revExtra}.tar.xz"; - sha256 = "972630059be61ef9564a241b84ef2ee4f69fc85c19ee36ce46052ff2f1ce3bf9"; + url = "http://dukeworld.duke4.net/eduke32/synthesis/${version}-${rev}-${revExtra}/eduke32_src_${version}-${rev}-${revExtra}.tar.xz"; + sha256 = "0fdl2i465cl5x7129772ksx97lvim98m9009q5cfmf6scagj9pvz"; }; buildInputs = [ alsa-lib flac gtk2 libvorbis libvpx libGL libGLU SDL2 SDL2_mixer ]; diff --git a/pkgs/games/warzone2100/default.nix b/pkgs/games/warzone2100/default.nix index feadcc7f8b21..6f31dcf9be9d 100644 --- a/pkgs/games/warzone2100/default.nix +++ b/pkgs/games/warzone2100/default.nix @@ -39,11 +39,11 @@ in stdenv.mkDerivation rec { inherit pname; - version = "4.1.0"; + version = "4.1.1"; src = fetchurl { url = "mirror://sourceforge/${pname}/releases/${version}/${pname}_src.tar.xz"; - sha256 = "sha256-HQlphogK2jjTXV7cQ8lFNWjHMBnpStyvT3wKYjlDQW0="; + sha256 = "sha256-CnMt3FytpTDAtibU3V24i6EvWRc9UkAuvC9ingphCM8="; }; buildInputs = [ diff --git a/pkgs/servers/dendrite/default.nix b/pkgs/servers/dendrite/default.nix index 5f070aa398c1..5e6556029c02 100644 --- a/pkgs/servers/dendrite/default.nix +++ b/pkgs/servers/dendrite/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "matrix-dendrite"; - version = "0.3.11"; + version = "0.4.0"; src = fetchFromGitHub { owner = "matrix-org"; repo = "dendrite"; rev = "v${version}"; - sha256 = "15xqd4yhsnnpz5n90fbny9i8lp7ki2z3fbpbd8cvsp49347rm483"; + sha256 = "sha256-BzQp466Zlp7n56n4SUH4cDRTt8EUWGw3q1dxIBB3TBM="; }; - vendorSha256 = "1l1wydvi0yalas79cvhrqg563cvs57hg9rv6qnkw879r6smb2x1n"; + vendorSha256 = "sha256-ak7fWcAXbyVAiyaJZBGMoe2i2nDh4vc/gCC9nbjadJ0="; passthru.tests = { inherit (nixosTests) dendrite; diff --git a/pkgs/servers/ldap/389/default.nix b/pkgs/servers/ldap/389/default.nix index 34bb901f6713..aa46426142bd 100644 --- a/pkgs/servers/ldap/389/default.nix +++ b/pkgs/servers/ldap/389/default.nix @@ -43,13 +43,13 @@ stdenv.mkDerivation rec { pname = "389-ds-base"; - version = "2.0.6"; + version = "2.0.7"; src = fetchFromGitHub { owner = "389ds"; repo = pname; rev = "${pname}-${version}"; - sha256 = "sha256-MYLRrH3PrNdPVuRffiG39zzJK6eHJcvIDWn1q0IHrZ8="; + sha256 = "sha256-aM1qo+yHrCFespPWHv2f25ooqQVCIZGaZS43dY6kiC4="; }; nativeBuildInputs = [ autoreconfHook pkg-config doxygen ]; diff --git a/pkgs/servers/monitoring/mackerel-agent/default.nix b/pkgs/servers/monitoring/mackerel-agent/default.nix index 988d502e1432..d8987f9e5adc 100644 --- a/pkgs/servers/monitoring/mackerel-agent/default.nix +++ b/pkgs/servers/monitoring/mackerel-agent/default.nix @@ -2,20 +2,20 @@ buildGoModule rec { pname = "mackerel-agent"; - version = "0.71.2"; + version = "0.72.1"; src = fetchFromGitHub { owner = "mackerelio"; repo = pname; rev = "v${version}"; - sha256 = "sha256-O67xzL4avCOh2x6qJCScOWR2TS1hfP5S6jHHELNbZWQ="; + sha256 = "sha256-pUbZY+TjSZNOrmRarYVUDI0HoIUMY0LacdFSdqQ/7D4="; }; nativeBuildInputs = [ makeWrapper ]; checkInputs = lib.optionals (!stdenv.isDarwin) [ nettools ]; buildInputs = lib.optionals (!stdenv.isDarwin) [ iproute2 ]; - vendorSha256 = "sha256-iFWQoAnB0R6XwjdPvOWJdNTmEZ961zE51vDrmZ7r4Jk="; + vendorSha256 = "sha256-trVfF4voye6CQ5WK78yBT86fgSUFyxaCtsZx6kXgYGE="; subPackages = [ "." ]; diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix index 5d0a9cfa8574..1f9a1ffc018b 100644 --- a/pkgs/servers/sql/postgresql/default.nix +++ b/pkgs/servers/sql/postgresql/default.nix @@ -33,7 +33,7 @@ let inherit sha256; }; - hardeningEnable = lib.optionals (!stdenv.isDarwin) [ "pie" ]; + hardeningEnable = lib.optionals (!stdenv.cc.isClang) [ "pie" ]; outputs = [ "out" "lib" "doc" "man" ]; setOutputFlags = false; # $out retains configureFlags :-/ diff --git a/pkgs/servers/web-apps/discourse/default.nix b/pkgs/servers/web-apps/discourse/default.nix index 72ea8a943dc2..74bd9a722349 100644 --- a/pkgs/servers/web-apps/discourse/default.nix +++ b/pkgs/servers/web-apps/discourse/default.nix @@ -65,7 +65,8 @@ let in stdenv.mkDerivation (builtins.removeAttrs args [ "bundlerEnvArgs" ] // { pluginName = if name != null then name else "${pname}-${version}"; - phases = [ "unpackPhase" "installPhase" ]; + dontConfigure = true; + dontBuild = true; installPhase = '' runHook preInstall mkdir -p $out diff --git a/pkgs/shells/zsh/spaceship-prompt/default.nix b/pkgs/shells/zsh/spaceship-prompt/default.nix index e5725a78fc54..1e699997fd8e 100644 --- a/pkgs/shells/zsh/spaceship-prompt/default.nix +++ b/pkgs/shells/zsh/spaceship-prompt/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation rec { pname = "spaceship-prompt"; - version = "3.12.6"; + version = "3.12.25"; src = fetchFromGitHub { owner = "denysdovhan"; repo = pname; rev = "v${version}"; - sha256 = "sha256-tKFah8b62wuw5vaNHddmj31UNd9kKCcQ99p8GlTnR6s="; + sha256 = "sha256-qDy0HkaX3N7VGptv88gB3284yDTbp2EpiZ1kvaLX8dc="; }; dontBuild = true; diff --git a/pkgs/tools/backup/sanoid/default.nix b/pkgs/tools/backup/sanoid/default.nix index 3a59dcc06408..5c61763f258d 100644 --- a/pkgs/tools/backup/sanoid/default.nix +++ b/pkgs/tools/backup/sanoid/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, makeWrapper, zfs +{ lib, stdenv, fetchFromGitHub, nixosTests, makeWrapper, zfs , perlPackages, procps, which, openssh, mbuffer, pv, lzop, gzip, pigz }: with lib; @@ -17,6 +17,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper ]; buildInputs = with perlPackages; [ perl ConfigIniFiles CaptureTiny ]; + passthru.tests = nixosTests.sanoid; + installPhase = '' runHook preInstall diff --git a/pkgs/tools/filesystems/squashfs/0001-Mksquashfs-add-no-hardlinks-option.patch b/pkgs/tools/filesystems/squashfs/0001-Mksquashfs-add-no-hardlinks-option.patch deleted file mode 100644 index 0d6804a647b2..000000000000 --- a/pkgs/tools/filesystems/squashfs/0001-Mksquashfs-add-no-hardlinks-option.patch +++ /dev/null @@ -1,76 +0,0 @@ -From d925c9a11ee2e88ac8aac03f51892746f2bcf8cd Mon Sep 17 00:00:00 2001 -From: Phillip Lougher -Date: Thu, 25 Feb 2021 23:12:10 +0000 -Subject: [PATCH] Mksquashfs: add -no-hardlinks option - -Normally Mksquashfs will detect hardlinks (multiple files with the -same inode) and hardlink them in the Squashfs image. - -But often hardlinks are used in the original filesystem -to save space, when files are discovered to be duplicate. -In this special case the only reason the files are -hardlinked is to save space, and where the filesystem -doesn't handle duplicate files (different inode, same -data). - -Squashfs does handle duplicate files, and so add -an option to ignore hardlinks and instead -store them as duplicates. - -Signed-off-by: Phillip Lougher ---- - squashfs-tools/mksquashfs.c | 16 +++++++++++----- - 1 file changed, 11 insertions(+), 5 deletions(-) - -diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c -index a45b77f..d4dc359 100644 ---- a/squashfs-tools/mksquashfs.c -+++ b/squashfs-tools/mksquashfs.c -@@ -312,6 +312,9 @@ struct dir_info *root_dir; - FILE *log_fd; - int logging=FALSE; - -+/* Should Mksquashfs detect hardlinked files? */ -+int no_hardlinks = FALSE; -+ - static char *read_from_disk(long long start, unsigned int avail_bytes); - void add_old_root_entry(char *name, squashfs_inode inode, int inode_number, - int type); -@@ -3093,11 +3096,11 @@ struct inode_info *lookup_inode3(struct stat *buf, int pseudo, int id, - - /* - * Look-up inode in hash table, if it already exists we have a -- * hard-link, so increment the nlink count and return it. -- * Don't do the look-up for directories because we don't hard-link -- * directories. -+ * hardlink, so increment the nlink count and return it. -+ * Don't do the look-up for directories because Unix/Linux doesn't -+ * allow hard-links to directories. - */ -- if ((buf->st_mode & S_IFMT) != S_IFDIR) { -+ if ((buf->st_mode & S_IFMT) != S_IFDIR && !no_hardlinks) { - for(inode = inode_info[ino_hash]; inode; inode = inode->next) { - if(memcmp(buf, &inode->buf, sizeof(struct stat)) == 0) { - inode->nlink ++; -@@ -5447,7 +5450,9 @@ int main(int argc, char *argv[]) - comp = lookup_compressor(COMP_DEFAULT); - - for(i = source + 2; i < argc; i++) { -- if(strcmp(argv[i], "-mkfs-time") == 0 || -+ if(strcmp(argv[i], "-no-hardlinks") == 0) -+ no_hardlinks = TRUE; -+ else if(strcmp(argv[i], "-mkfs-time") == 0 || - strcmp(argv[i], "-fstime") == 0) { - if((++i == argc) || !parse_num_unsigned(argv[i], &mkfs_time)) { - ERROR("%s: %s missing or invalid time value\n", argv[0], argv[i - 1]); -@@ -5893,6 +5898,7 @@ printOptions: - "files larger than block size\n"); - ERROR("-no-duplicates\t\tdo not perform duplicate " - "checking\n"); -+ ERROR("-no-hardlinks\t\tdo not hardlink files, instead store duplicates\n"); - ERROR("-all-root\t\tmake all files owned by root\n"); - ERROR("-root-mode \tset root directory permissions to octal \n"); - ERROR("-force-uid \tset all file uids to \n"); --- -2.30.0 - diff --git a/pkgs/tools/filesystems/squashfs/4k-align.patch b/pkgs/tools/filesystems/squashfs/4k-align.patch index e73c06788756..db0af95601c5 100644 --- a/pkgs/tools/filesystems/squashfs/4k-align.patch +++ b/pkgs/tools/filesystems/squashfs/4k-align.patch @@ -1,6 +1,7 @@ -This patch has been edited to apply to squashfs 4.4, commit -52eb4c279cd283ed9802dd1ceb686560b22ffb67. Below is the original -message body of the patch. +This patch is an old patch; see below for the original message body. The patch +has been updated twice: Once to apply to squashfs 4.4, commit +52eb4c279cd283ed9802dd1ceb686560b22ffb67, and later to apply to squashfs 4.5, +commit 0496d7c3de3e09da37ba492081c86159806ebb07. From 7bda7c75748f36b0a50f93e46144d5a4de4974ad Mon Sep 17 00:00:00 2001 From: Amin Hassani @@ -20,24 +21,23 @@ increased_size = (number_of_unfragmented_files_in_image + number of fragments) * The 4k alignment can be enabled by flag '-4k-align' --- - squashfs-tools/mksquashfs.c | 16 ++++++++++++++++ - 1 file changed, 16 insertions(+) + squashfs-tools/mksquashfs.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c -index a45b77f..07b1c06 100644 +index aaa4b00..eb2fb23 100644 --- a/squashfs-tools/mksquashfs.c +++ b/squashfs-tools/mksquashfs.c -@@ -102,7 +102,9 @@ int old_exclude = TRUE; - int use_regex = FALSE; - int nopad = FALSE; +@@ -99,6 +99,8 @@ int nopad = FALSE; int exit_on_error = FALSE; -+int do_4k_align = FALSE; long long start_offset = 0; + int sleep_time = 0; ++int do_4k_align = FALSE; +#define ALIGN_UP(bytes, size) (bytes = (bytes + size - 1) & ~(size - 1)) long long global_uid = -1, global_gid = -1; -@@ -1546,6 +1548,9 @@ void unlock_fragments() +@@ -1553,6 +1555,9 @@ static void unlock_fragments() * queue at this time. */ while(!queue_empty(locked_fragment)) { @@ -47,7 +47,7 @@ index a45b77f..07b1c06 100644 write_buffer = queue_get(locked_fragment); frg = write_buffer->block; size = SQUASHFS_COMPRESSED_SIZE_BLOCK(fragment_table[frg].size); -@@ -2478,6 +2483,9 @@ void *frag_deflator(void *arg) +@@ -2460,6 +2465,9 @@ static void *frag_deflator(void *arg) write_buffer->size = compressed_size; pthread_mutex_lock(&fragment_mutex); if(fragments_locked == FALSE) { @@ -57,18 +57,26 @@ index a45b77f..07b1c06 100644 fragment_table[file_buffer->block].size = c_byte; fragment_table[file_buffer->block].start_block = bytes; write_buffer->block = bytes; -@@ -2877,6 +2885,10 @@ int write_file_blocks(squashfs_inode *inode, struct dir_ent *dir_ent, - long long sparse = 0; - struct file_buffer *fragment_buffer = NULL; +@@ -2850,6 +2858,10 @@ static struct file_info *write_file_blocks(int *status, struct dir_ent *dir_ent, + struct file_info *file; + int bl_hash = 0; + // 4k align the start of each file. + if(do_4k_align) + ALIGN_UP(bytes, 4096); + - if(pre_duplicate(read_size)) - return write_file_blocks_dup(inode, dir_ent, read_buffer, dup); + if(pre_duplicate(read_size, dir_ent->inode, read_buffer, &bl_hash)) + return write_file_blocks_dup(status, dir_ent, read_buffer, dup, bl_hash); -@@ -4972,6 +4984,7 @@ void write_filesystem_tables(struct squashfs_super_block *sBlk, int nopad) +@@ -5975,6 +5987,7 @@ static void print_options(FILE *stream, char *name, int total_mem) + fprintf(stream, "actions from \n"); + fprintf(stream, "-false-action-file \tas -false-action, but read "); + fprintf(stream, "actions from \n"); ++ fprintf(stream, "-4k-align\t\tenables 4k alignment of all files\n"); + fprintf(stream, "\nFilesystem filter options:\n"); + fprintf(stream, "-p \tAdd pseudo file definition\n"); + fprintf(stream, "-pf \tAdd list of pseudo file definitions\n"); +@@ -6198,6 +6211,7 @@ static void print_summary() "compressed", no_fragments ? "no" : noF ? "uncompressed" : "compressed", no_xattrs ? "no" : noX ? "uncompressed" : "compressed", noI || noId ? "uncompressed" : "compressed"); @@ -76,23 +84,15 @@ index a45b77f..07b1c06 100644 printf("\tduplicates are %sremoved\n", duplicate_checking ? "" : "not "); printf("Filesystem size %.2f Kbytes (%.2f Mbytes)\n", bytes / 1024.0, -@@ -5853,6 +5866,8 @@ print_compressor_options: +@@ -7499,6 +7513,9 @@ print_compressor_options: root_name = argv[i]; } else if(strcmp(argv[i], "-version") == 0) { - VERSION(); + print_version("mksquashfs"); ++ + } else if(strcmp(argv[i], "-4k-align") == 0) { + do_4k_align = TRUE; } else { ERROR("%s: invalid option\n\n", argv[0]); - printOptions: -@@ -5904,6 +5919,7 @@ printOptions: - ERROR("\t\t\tdirectory containing that directory, " - "rather than the\n"); - ERROR("\t\t\tcontents of the directory\n"); -+ ERROR("-4k-align\t\tenables 4k alignment of all files\n"); - ERROR("\nFilesystem filter options:\n"); - ERROR("-p \tAdd pseudo file " - "definition\n"); + print_options(stderr, argv[0], total_mem); -- -2.23.0 - +2.32.0 diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix index cddb1722584b..2c8cd317f661 100644 --- a/pkgs/tools/filesystems/squashfs/default.nix +++ b/pkgs/tools/filesystems/squashfs/default.nix @@ -10,23 +10,19 @@ stdenv.mkDerivation rec { pname = "squashfs"; - version = "4.4"; + version = "4.5"; src = fetchFromGitHub { owner = "plougher"; repo = "squashfs-tools"; rev = version; - sha256 = "0697fv8n6739mcyn57jclzwwbbqwpvjdfkv1qh9s56lvyqnplwaw"; + sha256 = "1nanwz5qvsakxfm37md5i7xqagv69nfik9hpj8qlp6ymw266vgxr"; }; patches = [ # This patch adds an option to pad filesystems (increasing size) in # exchange for better chunking / binary diff calculation. ./4k-align.patch - # Add -no-hardlinks option. This is a rebased version of - # c37bb4da4a5fa8c1cf114237ba364692dd522262, can be removed - # when upgrading to the next version after 4.4 - ./0001-Mksquashfs-add-no-hardlinks-option.patch ] ++ lib.optional stdenv.isDarwin ./darwin.patch; buildInputs = [ zlib xz zstd lz4 lzo ]; diff --git a/pkgs/tools/misc/dua/default.nix b/pkgs/tools/misc/dua/default.nix index 0c3d319f2a70..1d11f3c8deb1 100644 --- a/pkgs/tools/misc/dua/default.nix +++ b/pkgs/tools/misc/dua/default.nix @@ -2,7 +2,7 @@ rustPlatform.buildRustPackage rec { pname = "dua"; - version = "2.14.2"; + version = "2.14.3"; buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ]; @@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec { owner = "Byron"; repo = "dua-cli"; rev = "v${version}"; - sha256 = "sha256-gUTDiUH/jlGAGbhOOCa63wfNy5Y8W6VWlSb9E+hQjHY="; + sha256 = "sha256-Tste5DdUwCu1CNRzIcBEvyckrvhEg9C8M3y89luIMbE="; # Remove unicode file names which leads to different checksums on HFS+ # vs. other filesystems because of unicode normalisation. extraPostFetch = '' @@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec { ''; }; - cargoSha256 = "sha256-P8QFeP5KD5YeD4Px7OQNwCrvErgT9ytr4OlFkXuPgGU="; + cargoSha256 = "sha256-iHRPgQtanW2LcFLPPHmr2n1NeAPi0mDmHNeIv524lrM="; doCheck = false; diff --git a/pkgs/tools/misc/lrzsz/default.nix b/pkgs/tools/misc/lrzsz/default.nix index 55c11b00c93c..09e90ca07940 100644 --- a/pkgs/tools/misc/lrzsz/default.nix +++ b/pkgs/tools/misc/lrzsz/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl }: +{ lib, stdenv, gettext, fetchurl, fetchpatch }: stdenv.mkDerivation rec { name = "lrzsz-0.12.20"; @@ -8,6 +8,16 @@ stdenv.mkDerivation rec { sha256 = "1wcgfa9fsigf1gri74gq0pa7pyajk12m4z69x7ci9c6x9fqkd2y2"; }; + patches = [ + (fetchpatch { + name = "CVE-2018-10195.patch"; + url = "https://bugzilla.redhat.com/attachment.cgi?id=79507"; + sha256 = "0jlh8w0cjaz6k56f0h3a0h4wgc51axmrdn3mdspk7apjfzqcvx3c"; + }) + ]; + + nativeBuildInputs = [ gettext ]; + hardeningDisable = [ "format" ]; configureFlags = [ "--program-transform-name=s/^l//" ]; diff --git a/pkgs/tools/misc/twurl/Gemfile b/pkgs/tools/misc/twurl/Gemfile new file mode 100644 index 000000000000..55b6e9f5650b --- /dev/null +++ b/pkgs/tools/misc/twurl/Gemfile @@ -0,0 +1,3 @@ +source "https://rubygems.org" + +gem 'twurl' diff --git a/pkgs/tools/misc/twurl/Gemfile.lock b/pkgs/tools/misc/twurl/Gemfile.lock new file mode 100644 index 000000000000..d29268e656dd --- /dev/null +++ b/pkgs/tools/misc/twurl/Gemfile.lock @@ -0,0 +1,15 @@ +GEM + remote: https://rubygems.org/ + specs: + oauth (0.5.6) + twurl (0.9.6) + oauth (~> 0.4) + +PLATFORMS + ruby + +DEPENDENCIES + twurl + +BUNDLED WITH + 2.1.4 diff --git a/pkgs/tools/misc/twurl/default.nix b/pkgs/tools/misc/twurl/default.nix new file mode 100644 index 000000000000..dccb67fbaf6c --- /dev/null +++ b/pkgs/tools/misc/twurl/default.nix @@ -0,0 +1,17 @@ +{ lib, bundlerApp, bundlerUpdateScript }: + +bundlerApp { + pname = "twurl"; + gemdir = ./.; + exes = [ "twurl" ]; + + passthru.updateScript = bundlerUpdateScript "twurl"; + + meta = with lib; { + description = "OAuth-enabled curl for the Twitter API"; + homepage = "https://github.com/twitter/twurl"; + license = "MIT"; + maintainers = with maintainers; [ brecht ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/tools/misc/twurl/gemset.nix b/pkgs/tools/misc/twurl/gemset.nix new file mode 100644 index 000000000000..a1a2ed835d3e --- /dev/null +++ b/pkgs/tools/misc/twurl/gemset.nix @@ -0,0 +1,23 @@ +{ + oauth = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zwd6v39yqfdrpg1p3d9jvzs9ljg55ana2p06m0l7qn5w0lgx1a0"; + type = "gem"; + }; + version = "0.5.6"; + }; + twurl = { + dependencies = ["oauth"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jgsxa0cnkajnsxxlsrgl2wq3m7khaxvr0rcir4vwbc1hx210700"; + type = "gem"; + }; + version = "0.9.6"; + }; +} diff --git a/pkgs/tools/package-management/nixpkgs-review/default.nix b/pkgs/tools/package-management/nixpkgs-review/default.nix index 35606a713476..20b1fe720d34 100644 --- a/pkgs/tools/package-management/nixpkgs-review/default.nix +++ b/pkgs/tools/package-management/nixpkgs-review/default.nix @@ -7,13 +7,13 @@ python3.pkgs.buildPythonApplication rec { pname = "nixpkgs-review"; - version = "2.6.1"; + version = "2.6.2"; src = fetchFromGitHub { owner = "Mic92"; repo = "nixpkgs-review"; rev = version; - sha256 = "sha256-wDGmkydBLb3Wij1hjWExgHxva/03vJFqAK5zGH9yUn4="; + sha256 = "0991jz2l834pyzwcrkvjf3wlp122fkkz6avs4j5n9idv549c5xc0"; }; makeWrapperArgs = [ diff --git a/pkgs/tools/security/cosign/default.nix b/pkgs/tools/security/cosign/default.nix index bdc32570dfa7..36781679c20f 100644 --- a/pkgs/tools/security/cosign/default.nix +++ b/pkgs/tools/security/cosign/default.nix @@ -19,7 +19,7 @@ buildGoModule rec { vendorSha256 = "0f3al6ds0kqyv2fapgdg9i38rfx6h169pmj6az0sfnkh2psq73ia"; - subPackages = [ "cmd/cosign" ]; + excludedPackages = "\\(copasetic\\)"; preBuild = '' buildFlagsArray+=(${lib.optionalString pivKeySupport "-tags=pivkey"}) diff --git a/pkgs/tools/security/doppler/default.nix b/pkgs/tools/security/doppler/default.nix index d71350e3d741..df466b0012d9 100644 --- a/pkgs/tools/security/doppler/default.nix +++ b/pkgs/tools/security/doppler/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "doppler"; - version = "3.25.0"; + version = "3.26.0"; src = fetchFromGitHub { owner = "dopplerhq"; repo = "cli"; rev = version; - sha256 = "sha256-9knCRS5pUFSmevpQbM0DQimGpAt2Fn1XpREg0ZWRIUQ="; + sha256 = "sha256-x6LQDQ+DRfP4d87OWEppqk4FV7SHuRMog4m0DOWkvF4="; }; vendorSha256 = "sha256-UaR/xYGMI+C9aID85aPSfVzmTWXj4KcjfOJ6TTJ8KoY="; diff --git a/pkgs/tools/security/fail2ban/default.nix b/pkgs/tools/security/fail2ban/default.nix index 30e86f66a582..18128639ff4a 100644 --- a/pkgs/tools/security/fail2ban/default.nix +++ b/pkgs/tools/security/fail2ban/default.nix @@ -1,15 +1,14 @@ { lib, stdenv, fetchFromGitHub, python3 }: -let version = "0.11.2"; in -python3.pkgs.buildPythonApplication { +python3.pkgs.buildPythonApplication rec { pname = "fail2ban"; - inherit version; + version = "0.11.2"; src = fetchFromGitHub { - owner = "fail2ban"; - repo = "fail2ban"; - rev = version; + owner = "fail2ban"; + repo = "fail2ban"; + rev = version; sha256 = "q4U9iWCa1zg8sA+6pPNejt6v/41WGIKN5wITJCrCqQE="; }; @@ -42,18 +41,20 @@ python3.pkgs.buildPythonApplication { ${stdenv.shell} ./fail2ban-2to3 ''; - postInstall = let - sitePackages = "$out/${python3.sitePackages}"; - in '' - # see https://github.com/NixOS/nixpkgs/issues/4968 - rm -rf ${sitePackages}/etc ${sitePackages}/usr ${sitePackages}/var; - ''; + postInstall = + let + sitePackages = "$out/${python3.sitePackages}"; + in + '' + # see https://github.com/NixOS/nixpkgs/issues/4968 + rm -r ${sitePackages}/etc ${sitePackages}/usr + ''; meta = with lib; { - homepage = "https://www.fail2ban.org/"; + homepage = "https://www.fail2ban.org/"; description = "A program that scans log files for repeated failing login attempts and bans IP addresses"; - license = licenses.gpl2Plus; + license = licenses.gpl2Plus; maintainers = with maintainers; [ eelco lovek323 fpletz ]; - platforms = platforms.linux ++ platforms.darwin; + platforms = platforms.unix; }; } diff --git a/pkgs/tools/security/gpg-tui/default.nix b/pkgs/tools/security/gpg-tui/default.nix index 6c4f79195e1b..b63b12aca08e 100644 --- a/pkgs/tools/security/gpg-tui/default.nix +++ b/pkgs/tools/security/gpg-tui/default.nix @@ -15,16 +15,16 @@ rustPlatform.buildRustPackage rec { pname = "gpg-tui"; - version = "0.7.2"; + version = "0.7.3"; src = fetchFromGitHub { owner = "orhun"; repo = "gpg-tui"; rev = "v${version}"; - sha256 = "sha256-2FnSCTq+Im7sbiEkbKZ9f09i/lWme/aCrcCOgcIlXp4="; + sha256 = "sha256-ti49b03Ta/MVDNIzW1WhWxJqHNVW9EALUcbElcZvurQ="; }; - cargoSha256 = "sha256-v2aZPVBT5XEaffTZHnAgRWGs6HDvL9b8ihR50I4VnJ4="; + cargoSha256 = "sha256-jF1Ozo5q5cKG9KjR1scbCCofG3FT3Fv98Cj0iOl18+c="; nativeBuildInputs = [ gpgme # for gpgme-config diff --git a/pkgs/tools/security/ic-keysmith/default.nix b/pkgs/tools/security/ic-keysmith/default.nix new file mode 100644 index 000000000000..9e480d64d18e --- /dev/null +++ b/pkgs/tools/security/ic-keysmith/default.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "keysmith"; + version = "1.6.0"; + + src = fetchFromGitHub { + owner = "dfinity"; + repo = "keysmith"; + rev = "v${version}"; + sha256 = "1z0sxirk71yabgilq8v5lz4nd2bbm1xyrd5zppif8k9jqhr6v3v3"; + }; + + vendorSha256 = "1p0r15ihmnmrybf12cycbav80sdj2dv2kry66f4hjfjn6k8zb0dc"; + + meta = with lib; { + description = "Hierarchical Deterministic Key Derivation for the Internet Computer"; + homepage = "https://github.com/dfinity/keysmith"; + license = licenses.mit; + maintainers = with maintainers; [ imalison ]; + }; +} diff --git a/pkgs/tools/security/quill-qr/default.nix b/pkgs/tools/security/quill-qr/default.nix new file mode 100644 index 000000000000..55c2f45cc683 --- /dev/null +++ b/pkgs/tools/security/quill-qr/default.nix @@ -0,0 +1,45 @@ +{ coreutils +, fetchFromGitHub +, gzip +, jq +, lib +, makeWrapper +, qrencode +, stdenvNoCC +}: + +stdenvNoCC.mkDerivation rec { + pname = "quill-qr"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "IvanMalison"; + repo = "quill-qr"; + rev = "v${version}"; + sha256 = "1kdsq6csmxfvs2wy31bc9r92l5pkmzlzkyqrangvrf4pbk3sk0r6"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/bin + cp -a quill-qr.sh $out/bin/quill-qr.sh + patchShebangs $out/bin + + wrapProgram $out/bin/quill-qr.sh --prefix PATH : "${lib.makeBinPath [ + qrencode + coreutils + jq + gzip + ]}" + ''; + + meta = with lib; { + description = "Print QR codes for use with https://p5deo-6aaaa-aaaab-aaaxq-cai.raw.ic0.app/"; + homepage = "https://github.com/IvanMalison/quill-qr"; + maintainers = with maintainers; [ imalison ]; + platforms = with platforms; linux; + }; +} diff --git a/pkgs/tools/virtualization/cloud-init/default.nix b/pkgs/tools/virtualization/cloud-init/default.nix index 1a0188127aa9..439cf47e55c1 100644 --- a/pkgs/tools/virtualization/cloud-init/default.nix +++ b/pkgs/tools/virtualization/cloud-init/default.nix @@ -76,6 +76,8 @@ buildPythonApplication rec { "TestConsumeUserDataHttp" # Chef Omnibus "TestInstallChefOmnibus" + # https://github.com/canonical/cloud-init/pull/893 + "TestGetPackageMirrorInfo" ]; disabledTestPaths = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f5dcf82861d6..94095dfa7137 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1153,6 +1153,8 @@ in arduino-mk = callPackage ../development/arduino/arduino-mk {}; + apio = python3Packages.callPackage ../development/tools/misc/apio { }; + apitrace = libsForQt514.callPackage ../applications/graphics/apitrace {}; argtable = callPackage ../development/libraries/argtable { }; @@ -1335,6 +1337,8 @@ in bisq-desktop = callPackage ../applications/blockchains/bisq-desktop { }; + bic = callPackage ../development/interpreters/bic { }; + bit = callPackage ../applications/version-management/git-and-tools/bit { }; bitwarden = callPackage ../tools/security/bitwarden { }; @@ -3902,6 +3906,8 @@ in c14 = callPackage ../applications/networking/c14 { }; + corehunt = libsForQt5.callPackage ../applications/misc/corehunt { }; + certstrap = callPackage ../tools/security/certstrap { }; cfssl = callPackage ../tools/security/cfssl { }; @@ -9549,6 +9555,8 @@ in twtxt = python3Packages.callPackage ../applications/networking/twtxt { }; + twurl = callPackage ../tools/misc/twurl { }; + txr = callPackage ../tools/misc/txr { stdenv = clangStdenv; }; txt2man = callPackage ../tools/misc/txt2man { }; @@ -19593,6 +19601,8 @@ in hyprspace = callPackage ../applications/networking/hyprspace { inherit (darwin) iproute2mac; }; + ic-keysmith = callPackage ../tools/security/ic-keysmith { }; + icecream = callPackage ../servers/icecream { }; icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { }; @@ -25556,6 +25566,8 @@ in mark = callPackage ../tools/text/mark { }; + markets = callPackage ../applications/misc/markets { }; + marp = callPackage ../applications/office/marp { }; magnetico = callPackage ../applications/networking/p2p/magnetico { }; @@ -26726,6 +26738,8 @@ in tag = "-daemon-qt5"; }; + quill-qr = callPackage ../tools/security/quill-qr { }; + quirc = callPackage ../tools/graphics/quirc {}; quilter = callPackage ../applications/editors/quilter { }; @@ -27334,7 +27348,9 @@ in taskopen = callPackage ../applications/misc/taskopen { }; - tdesktop = qt5.callPackage ../applications/networking/instant-messengers/telegram/tdesktop { }; + tdesktop = qt5.callPackage ../applications/networking/instant-messengers/telegram/tdesktop { + inherit (xorg) libpthreadstubs libXdmcp; + }; tektoncd-cli = callPackage ../applications/networking/cluster/tektoncd-cli { }; diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 200743944eeb..8eb8a3944f9c 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -964,6 +964,8 @@ let otfm = callPackage ../development/ocaml-modules/otfm { }; + otoml = callPackage ../development/ocaml-modules/otoml { }; + otr = callPackage ../development/ocaml-modules/otr { }; owee = callPackage ../development/ocaml-modules/owee { }; diff --git a/pkgs/top-level/ruby-packages.nix b/pkgs/top-level/ruby-packages.nix index a32cfbe0df60..957fe10d48f4 100644 --- a/pkgs/top-level/ruby-packages.nix +++ b/pkgs/top-level/ruby-packages.nix @@ -147,10 +147,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0hb4br24c7awarvcdmairg9g9xs37nlc98fp5abhq3b426zlzskg"; + sha256 = "08c0mgsmw7xf3hwbnlsdmn3z5z84ldhw7w98n0lkvfizvvjn0mx2"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; atomos = { groups = ["default"]; @@ -239,10 +239,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "161azhqndf9gvnsvsx0k2x2kpalsgmlz233hvwc7ckbiral7q86s"; + sha256 = "1s7dr3jf5a2jg2dd23f97hsd29qj2cfah5rkjvhgb40z3k75vgy3"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; camping = { dependencies = ["mab" "rack"]; @@ -858,10 +858,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "186sra2bww83wa245mhmm57ngdn4w2k2x39iqkmxasjhibg5jsbl"; + sha256 = "1iykfw2j6dd26rhgid3a17zghrmbmi68ppf3a7cdkvii68p4f37a"; type = "gem"; }; - version = "0.84.0"; + version = "0.85.0"; }; faraday = { dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "multipart-post" "ruby2_keywords"]; @@ -869,10 +869,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0gwbii45plm9bljk22bwzhzxrc5xid8qx24f54vrm74q3zaz00ah"; + sha256 = "1xpq9w46alagszx2mx82mqxxmsmyni2bpxd08gygzpl03zwbpr63"; type = "gem"; }; - version = "1.5.0"; + version = "1.5.1"; }; faraday-em_http = { groups = ["default"]; @@ -929,10 +929,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0l2c835wl7gv34xp49fhd1bl4czkpw2g3ahqsak2251iqv5589ka"; + sha256 = "0dc36ih95qw3rlccffcb0vgxjhmipsvxhn6cw71l7ffs0f7vq30b"; type = "gem"; }; - version = "1.1.0"; + version = "1.2.0"; }; faraday-patron = { groups = ["default"]; @@ -1055,10 +1055,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "02618y5gw8sbn258w298894if1xkn5gg7q6wj1sw0bx469xgj256"; + sha256 = "1mp4dgd7i26xp1n3ggagdc5xh52wm7gsmmq7mykfjm6bqvh0v302"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; gio2 = { dependencies = ["gobject-introspection"]; @@ -1066,10 +1066,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0wflbi8yhrxv84q6lzrrqvdhpwrcklspkyzwyi47690wlbjff6cl"; + sha256 = "0gkik2d0c9xfljip17pafkln52wykrjvz9cf25da6hnxp73fvzwb"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; gitlab-markup = { groups = ["default"]; @@ -1087,10 +1087,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0aba6j1ixlb5bg2542dhm16c880vdk9cqn70247vhixzc3by0463"; + sha256 = "0daspjbnw3banifms1xshxzh4v4784zm3fqda1civqczyj62dw1n"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; globalid = { dependencies = ["activesupport"]; @@ -1109,10 +1109,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0rfjkgk5wxs19qah531k6ki6384iqf7b8cbdqc9l6ff9gvkf8cmw"; + sha256 = "1p2qn9cbdh3fav7x3ygp8jh7cr2yz4pqs6m979k43dj1vk49vb12"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; gpgme = { dependencies = ["mini_portile2"]; @@ -1379,10 +1379,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1wqpp3m4zwy7l8n8z8d4krvf38q1gfx9lnsyipnfsapspsmsgdb6"; + sha256 = "0yky836g80jfvyhxn052q9fqrnhn72dsc2j10nirq7qylbq1jl7g"; type = "gem"; }; - version = "1.4.19"; + version = "1.5.5"; }; libv8 = { groups = ["default"]; @@ -1420,10 +1420,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0h2v34xhi30w0d9gfzds2w6v89grq2gkpgvmdj9m8x1ld1845xnj"; + sha256 = "1dq7yd4s9accpjiq0f92sgikw3whc5wnjn065laggkpqcqgx75gh"; type = "gem"; }; - version = "3.5.1"; + version = "3.6.0"; }; loofah = { dependencies = ["crass" "nokogiri"]; @@ -1772,10 +1772,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1xaqx3i4cx7xb5m5qfm7jclq3yyrj8abaqif0q1i72259g5klb8c"; + sha256 = "09rkarch6kd20cc9xj9v3yfvs7v2k8bxfzwi8vp56h4rcwmsy7m1"; type = "gem"; }; - version = "3.4.5"; + version = "3.4.6"; }; parallel = { groups = ["default"]; @@ -1793,10 +1793,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pxsi1i5z506xfzhiyavlasf8777h55ab40phvp7pfv9npmd5pnj"; + sha256 = "06ma6w87ph8lnc9z4hi40ynmcdnjv0p8x53x0s3fjkz4q2p6sxh5"; type = "gem"; }; - version = "3.0.1.1"; + version = "3.0.2.0"; }; pathutil = { dependencies = ["forwardable-extended"]; @@ -2256,10 +2256,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "045iralskypd95f42jdgbzp0alv2q0qlvya4qm6bkahg2rfb8s1x"; + sha256 = "1lk8ppn0a2b94fymlra80sygwn63pxyqy4cj4c3ic2697ll3mihj"; type = "gem"; }; - version = "1.18.3"; + version = "1.18.4"; }; rubocop-ast = { dependencies = ["parser"]; @@ -2267,10 +2267,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1hnrfy928mwpa0ippqs4s8xwghwwp5h853naphgqxcd53l33chlv"; + sha256 = "0dbbll8k2xqdfpirzpfl3gi4asplay25mg91510i7qb601xbjpcy"; type = "gem"; }; - version = "1.7.0"; + version = "1.8.0"; }; rubocop-performance = { dependencies = ["rubocop" "rubocop-ast"]; @@ -2350,10 +2350,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "15wfcqxyfgka05v2a7kpg64x57gl1y4xzvnc9lh60bqx5sf1iqrs"; + sha256 = "1vz322p8n39hz3b4a9gkmz9y7a5jaz41zrm2ywf31dvkqm03glgz"; type = "gem"; }; - version = "0.0.4"; + version = "0.0.5"; }; RubyInline = { dependencies = ["ZenTest"]; @@ -2528,10 +2528,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1xqmvwh6k638h6r13wsx1l0n0jvz07qys1lr7z8aaynscs0k6hyi"; + sha256 = "1i2prnczlg871l3kyqy08z8axsilgv3wm4zw061wjyzqglx7xghg"; type = "gem"; }; - version = "0.42.3"; + version = "0.43.0"; }; sprockets = { dependencies = ["concurrent-ruby" "rack"];