diff options
author | sternenseemann <sternenseemann@systemli.org> | 2022-03-26 09:59:28 +0100 |
---|---|---|
committer | sternenseemann <sternenseemann@systemli.org> | 2022-03-26 09:59:28 +0100 |
commit | 372d0a707e13e20443543461ff4f7c00454dea8c (patch) | |
tree | ca619a9578bd21b04841c5aade7e9e5f38b19145 | |
parent | 66996acc2a9afd1b0c34beffc2bab3e8daecbcad (diff) | |
parent | b9eab51eed6fb41c85bcda2d6241f151735c853a (diff) | |
download | nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.tar nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.tar.gz nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.tar.bz2 nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.tar.lz nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.tar.xz nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.tar.zst nixpkgs-372d0a707e13e20443543461ff4f7c00454dea8c.zip |
Merge remote-tracking branch 'origin/master' into haskell-updates
396 files changed, 3337 insertions, 1911 deletions
diff --git a/.github/workflows/direct-push.yml b/.github/workflows/direct-push.yml index 459475c3c6b..082a4806e61 100644 --- a/.github/workflows/direct-push.yml +++ b/.github/workflows/direct-push.yml @@ -22,7 +22,7 @@ jobs: if: steps.ismerge.outputs.ismerge != 'true' - name: Warn if the commit was a direct push if: steps.ismerge.outputs.ismerge != 'true' - uses: peter-evans/commit-comment@v1 + uses: peter-evans/commit-comment@v2 with: body: | @${{ github.actor }}, you pushed a commit directly to master/release branch diff --git a/doc/contributing/coding-conventions.chapter.md b/doc/contributing/coding-conventions.chapter.md index cfe8582e514..dac6d828ac0 100644 --- a/doc/contributing/coding-conventions.chapter.md +++ b/doc/contributing/coding-conventions.chapter.md @@ -540,10 +540,11 @@ If you do need to do create this sort of patch file, one way to do so is with gi If a patch is available online but does not cleanly apply, it can be modified in some fixed ways by using additional optional arguments for `fetchpatch`: +- `relative`: Similar to using `git-diff`'s `--relative` flag, only keep changes inside the specified directory, making paths relative to it. - `stripLen`: Remove the first `stripLen` components of pathnames in the patch. - `extraPrefix`: Prefix pathnames by this string. -- `excludes`: Exclude files matching this pattern. -- `includes`: Include only files matching this pattern. +- `excludes`: Exclude files matching these patterns (applies after the above arguments). +- `includes`: Include only files matching these patterns (applies after the above arguments). - `revert`: Revert the patch. Note that because the checksum is computed after applying these effects, using or modifying these arguments will have no effect unless the `sha256` argument is changed as well. diff --git a/doc/contributing/reviewing-contributions.chapter.md b/doc/contributing/reviewing-contributions.chapter.md index 7a13a3f3b40..3417854730e 100644 --- a/doc/contributing/reviewing-contributions.chapter.md +++ b/doc/contributing/reviewing-contributions.chapter.md @@ -122,7 +122,7 @@ Reviewing process: - [CODEOWNERS](https://help.github.com/articles/about-codeowners/) will make GitHub notify users based on the submitted changes, but it can happen that it misses some of the package maintainers. - Ensure that the module tests, if any, are succeeding. - Ensure that the introduced options are correct. - - Type should be appropriate (string related types differs in their merging capabilities, `optionSet` and `string` types are deprecated). + - Type should be appropriate (string related types differs in their merging capabilities, `loaOf` and `string` types are deprecated). - Description, default and example should be provided. - Ensure that option changes are backward compatible. - `mkRenamedOptionModuleWith` provides a way to make option changes backward compatible. @@ -157,7 +157,7 @@ Reviewing process: - Ensure that the module tests, if any, are succeeding. - Ensure that the introduced options are correct. - - Type should be appropriate (string related types differs in their merging capabilities, `optionSet` and `string` types are deprecated). + - Type should be appropriate (string related types differs in their merging capabilities, `loaOf` and `string` types are deprecated). - Description, default and example should be provided. - Ensure that module `meta` field is present - Maintainers should be declared in `meta.maintainers`. diff --git a/lib/modules.nix b/lib/modules.nix index 35c93d22baf..894104cc579 100644 --- a/lib/modules.nix +++ b/lib/modules.nix @@ -609,17 +609,9 @@ rec { throw "The option `${showOption loc}' in `${opt._file}' is already declared in ${showFiles res.declarations}." else let - /* Add the modules of the current option to the list of modules - already collected. The options attribute except either a list of - submodules or a submodule. For each submodule, we add the file of the - current option declaration as the file use for the submodule. If the - submodule defines any filename, then we ignore the enclosing option file. */ - options' = toList opt.options.options; - getSubModules = opt.options.type.getSubModules or null; submodules = if getSubModules != null then map (setDefaultModuleLocation opt._file) getSubModules ++ res.options - else if opt.options ? options then map (coerceOption opt._file) options' ++ res.options else res.options; in opt.options // res // { declarations = res.declarations ++ [opt._file]; @@ -802,27 +794,13 @@ rec { compare = a: b: (a.priority or 1000) < (b.priority or 1000); in sort compare defs'; + # This calls substSubModules, whose entire purpose is only to ensure that + # option declarations in submodules have accurate position information. + # TODO: Merge this into mergeOptionDecls fixupOptionType = loc: opt: - let - options = opt.options or - (throw "Option `${showOption loc}' has type optionSet but has no option attribute, in ${showFiles opt.declarations}."); - - # Hack for backward compatibility: convert options of type - # optionSet to options of type submodule. FIXME: remove - # eventually. - f = tp: - if tp.name == "option set" || tp.name == "submodule" then - throw "The option ${showOption loc} uses submodules without a wrapping type, in ${showFiles opt.declarations}." - else if (tp.functor.wrapped.name or null) == "optionSet" then - if tp.name == "attrsOf" then types.attrsOf (types.submodule options) - else if tp.name == "listOf" then types.listOf (types.submodule options) - else if tp.name == "nullOr" then types.nullOr (types.submodule options) - else tp - else tp; - in - if opt.type.getSubModules or null == null - then opt // { type = f (opt.type or types.unspecified); } - else opt // { type = opt.type.substSubModules opt.options; options = []; }; + if opt.type.getSubModules or null == null + then opt // { type = opt.type or types.unspecified; } + else opt // { type = opt.type.substSubModules opt.options; options = []; }; /* Properties. */ diff --git a/lib/options.nix b/lib/options.nix index 7b3c8b27d5c..4aa9fe6e78c 100644 --- a/lib/options.nix +++ b/lib/options.nix @@ -79,8 +79,6 @@ rec { visible ? null, # Whether the option can be set only once readOnly ? null, - # Deprecated, used by types.optionSet. - options ? null } @ attrs: attrs // { _type = "option"; }; diff --git a/lib/types.nix b/lib/types.nix index 00d97bf5723..5c4b9631061 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -749,14 +749,6 @@ rec { nestedTypes.finalType = finalType; }; - # Obsolete alternative to configOf. It takes its option - # declarations from the ‘options’ attribute of containing option - # declaration. - optionSet = mkOptionType { - name = "optionSet"; - description = "option set"; - deprecationMessage = "Use `types.submodule' instead"; - }; # Augment the given type with an additional type check function. addCheck = elemType: check: elemType // { check = x: elemType.check x && check x; }; diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4a66ffa1eaf..f46ff4e080d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2824,6 +2824,12 @@ githubId = 49904992; name = "Dawid Sowa"; }; + dbeckwith = { + email = "djbsnx@gmail.com"; + github = "dbeckwith"; + githubId = 1279939; + name = "Daniel Beckwith"; + }; dbirks = { email = "david@birks.dev"; github = "dbirks"; diff --git a/maintainers/scripts/remove-old-aliases.py b/maintainers/scripts/remove-old-aliases.py index 5d9398feaa2..8ed326cbc20 100755 --- a/maintainers/scripts/remove-old-aliases.py +++ b/maintainers/scripts/remove-old-aliases.py @@ -57,7 +57,7 @@ def get_date_lists( except ValueError: continue - if my_date is None or my_date > cutoffdate: + if my_date is None or my_date > cutoffdate or "preserve, reason:" in line.lower(): continue if "=" not in line: diff --git a/nixos/doc/manual/development/writing-nixos-tests.section.md b/nixos/doc/manual/development/writing-nixos-tests.section.md index 7de57d0d2a3..433e1906f77 100644 --- a/nixos/doc/manual/development/writing-nixos-tests.section.md +++ b/nixos/doc/manual/development/writing-nixos-tests.section.md @@ -158,6 +158,12 @@ The following methods are available on machine objects: e.g., `send_chars("foobar\n")` will type the string `foobar` followed by the Enter key. +`send_console` + +: Send keys to the kernel console. This allows interaction with the systemd + emergency mode, for example. Takes a string that is sent, e.g., + `send_console("\n\nsystemctl default\n")`. + `execute` : Execute a shell command, returning a list `(status, stdout)`. @@ -272,6 +278,13 @@ The following methods are available on machine objects: Killing the interactive session with `Ctrl-d` or `Ctrl-c` also ends the guest session. +`console_interact` + +: Allows you to directly interact with QEMU's stdin. This should + only be used during test development, not in production tests. + Output from QEMU is only read line-wise. `Ctrl-c` kills QEMU and + `Ctrl-d` closes console and returns to the test runner. + To test user units declared by `systemd.user.services` the optional `user` argument can be used: diff --git a/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml b/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml index 45c9c40c609..4f856f98f2a 100644 --- a/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml +++ b/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml @@ -263,6 +263,19 @@ start_all() </varlistentry> <varlistentry> <term> + <literal>send_console</literal> + </term> + <listitem> + <para> + Send keys to the kernel console. This allows interaction + with the systemd emergency mode, for example. Takes a string + that is sent, e.g., + <literal>send_console("\n\nsystemctl default\n")</literal>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term> <literal>execute</literal> </term> <listitem> @@ -502,6 +515,21 @@ machine.systemctl("list-jobs --no-pager", "any-user") # spaw </para> </listitem> </varlistentry> + <varlistentry> + <term> + <literal>console_interact</literal> + </term> + <listitem> + <para> + Allows you to directly interact with QEMU’s stdin. This + should only be used during test development, not in + production tests. Output from QEMU is only read line-wise. + <literal>Ctrl-c</literal> kills QEMU and + <literal>Ctrl-d</literal> closes console and returns to the + test runner. + </para> + </listitem> + </varlistentry> </variablelist> <para> To test user units declared by diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index 8b25a19d5ed..c2748cfd49c 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -27,6 +27,16 @@ </listitem> <listitem> <para> + GNOME has been upgraded to 42. Please take a look at their + <link xlink:href="https://release.gnome.org/42/">Release + Notes</link> for details. Notably, it replaces gedit with + GNOME Text Editor, GNOME Terminal with GNOME Console (formerly + King’s Cross), and GNOME Screenshot with a tool built into the + Shell. + </para> + </listitem> + <listitem> + <para> PHP 8.1 is now available </para> </listitem> @@ -680,6 +690,16 @@ </listitem> <listitem> <para> + <literal>services.gnome.experimental-features.realtime-scheduling</literal> + option has been removed, as GNOME Shell now + <link xlink:href="https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2060">uses + rtkit</link>. Use + <literal>security.rtkit.enable = true;</literal> instead. As + before, you will need to have it enabled using GSettings. + </para> + </listitem> + <listitem> + <para> If you previously used <literal>/etc/docker/daemon.json</literal>, you need to incorporate the changes into the new option @@ -1668,6 +1688,12 @@ </listitem> </itemizedlist> </listitem> + <listitem> + <para> + The <literal>programs.nncp</literal> options were added for + generating host-global NNCP configuration. + </para> + </listitem> </itemizedlist> </section> </section> diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index 08644654f66..46ea2e22b7b 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -11,6 +11,8 @@ In addition to numerous new and upgraded packages, this release has the followin the option to use DNS-01 validation when using `enableACME` on web server virtual hosts (e.g. `services.nginx.virtualHosts.*.enableACME`). +- GNOME has been upgraded to 42. Please take a look at their [Release Notes](https://release.gnome.org/42/) for details. Notably, it replaces gedit with GNOME Text Editor, GNOME Terminal with GNOME Console (formerly King’s Cross), and GNOME Screenshot with a tool built into the Shell. + - PHP 8.1 is now available - Mattermost has been updated to extended support release 6.3, as the previously packaged extended support release 5.37 is [reaching its end of life](https://docs.mattermost.com/upgrade/extended-support-release.html). @@ -277,6 +279,8 @@ In addition to numerous new and upgraded packages, this release has the followin - The `gnome-passwordsafe` package updated to [version 6.x](https://gitlab.gnome.org/World/secrets/-/tags/6.0) and renamed to `gnome-secrets`. +- `services.gnome.experimental-features.realtime-scheduling` option has been removed, as GNOME Shell now [uses rtkit](https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2060). Use `security.rtkit.enable = true;` instead. As before, you will need to have it enabled using GSettings. + - If you previously used `/etc/docker/daemon.json`, you need to incorporate the changes into the new option `virtualisation.docker.daemon.settings`. - Ntopng (`services.ntopng`) is updated to 5.2.1 and uses a separate Redis instance if `system.stateVersion` is at least `22.05`. Existing setups shouldn't be affected. @@ -589,4 +593,6 @@ In addition to numerous new and upgraded packages, this release has the followin - Testing has been enabled for `aarch64-linux` in addition to `x86_64-linux`. - The `spark3` package is now usable on `aarch64-darwin` as a result of [#158613](https://github.com/NixOS/nixpkgs/pull/158613) and [#158992](https://github.com/NixOS/nixpkgs/pull/158992). +- The `programs.nncp` options were added for generating host-global NNCP configuration. + <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> diff --git a/nixos/lib/systemd-lib.nix b/nixos/lib/systemd-lib.nix index a472d97f5cc..37900b0b16f 100644 --- a/nixos/lib/systemd-lib.nix +++ b/nixos/lib/systemd-lib.nix @@ -23,8 +23,9 @@ in rec { inherit (unit) text; } '' - mkdir -p $out - echo -n "$text" > $out/${shellEscape name} + name=${shellEscape name} + mkdir -p "$out/$(dirname "$name")" + echo -n "$text" > "$out/$name" '' else pkgs.runCommand "unit-${mkPathSafeName name}-disabled" @@ -32,8 +33,9 @@ in rec { allowSubstitutes = false; } '' - mkdir -p $out - ln -s /dev/null $out/${shellEscape name} + name=${shellEscape name} + mkdir -p "$out/$(dirname "$name")" + ln -s /dev/null "$out/$name" ''; boolValues = [true false "yes" "no"]; diff --git a/nixos/lib/test-driver/test_driver/machine.py b/nixos/lib/test-driver/test_driver/machine.py index 569a0f3c61e..f3e615fe5bf 100644 --- a/nixos/lib/test-driver/test_driver/machine.py +++ b/nixos/lib/test-driver/test_driver/machine.py @@ -198,7 +198,7 @@ class StartCommand: ) -> subprocess.Popen: return subprocess.Popen( self.cmd(monitor_socket_path, shell_socket_path), - stdin=subprocess.DEVNULL, + stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True, @@ -558,6 +558,28 @@ class Machine: pass_fds=[self.shell.fileno()], ) + def console_interact(self) -> None: + """Allows you to interact with QEMU's stdin + + The shell can be exited with Ctrl+D. Note that Ctrl+C is not allowed to be used. + QEMU's stdout is read line-wise. + + Should only be used during test development, not in the production test.""" + self.log("Terminal is ready (there is no prompt):") + + assert self.process + assert self.process.stdin + + while True: + try: + char = sys.stdin.buffer.read(1) + except KeyboardInterrupt: + break + if char == b"": # ctrl+d + self.log("Closing connection to the console") + break + self.send_console(char.decode()) + def succeed(self, *commands: str, timeout: Optional[int] = None) -> str: """Execute each command and check that it succeeds.""" output = "" @@ -834,6 +856,12 @@ class Machine: self.send_monitor_command("sendkey {}".format(key)) time.sleep(0.01) + def send_console(self, chars: str) -> None: + assert self.process + assert self.process.stdin + self.process.stdin.write(chars.encode()) + self.process.stdin.flush() + def start(self) -> None: if self.booted: return diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix index 3ff1b3d670e..860e240b43d 100644 --- a/nixos/modules/installer/cd-dvd/iso-image.nix +++ b/nixos/modules/installer/cd-dvd/iso-image.nix @@ -91,29 +91,9 @@ let SERIAL 0 115200 TIMEOUT ${builtins.toString syslinuxTimeout} UI vesamenu.c32 - MENU TITLE NixOS MENU BACKGROUND /isolinux/background.png - MENU RESOLUTION 800 600 - MENU CLEAR - MENU ROWS 6 - MENU CMDLINEROW -4 - MENU TIMEOUTROW -3 - MENU TABMSGROW -2 - MENU HELPMSGROW -1 - MENU HELPMSGENDROW -1 - MENU MARGIN 0 - - # FG:AARRGGBB BG:AARRGGBB shadow - MENU COLOR BORDER 30;44 #00000000 #00000000 none - MENU COLOR SCREEN 37;40 #FF000000 #00E2E8FF none - MENU COLOR TABMSG 31;40 #80000000 #00000000 none - MENU COLOR TIMEOUT 1;37;40 #FF000000 #00000000 none - MENU COLOR TIMEOUT_MSG 37;40 #FF000000 #00000000 none - MENU COLOR CMDMARK 1;36;40 #FF000000 #00000000 none - MENU COLOR CMDLINE 37;40 #FF000000 #00000000 none - MENU COLOR TITLE 1;36;44 #00000000 #00000000 none - MENU COLOR UNSEL 37;44 #FF000000 #00000000 none - MENU COLOR SEL 7;37;40 #FFFFFFFF #FF5277C3 std + + ${config.isoImage.syslinuxTheme} DEFAULT boot @@ -601,6 +581,37 @@ in ''; }; + isoImage.syslinuxTheme = mkOption { + default = '' + MENU TITLE NixOS + MENU RESOLUTION 800 600 + MENU CLEAR + MENU ROWS 6 + MENU CMDLINEROW -4 + MENU TIMEOUTROW -3 + MENU TABMSGROW -2 + MENU HELPMSGROW -1 + MENU HELPMSGENDROW -1 + MENU MARGIN 0 + + # FG:AARRGGBB BG:AARRGGBB shadow + MENU COLOR BORDER 30;44 #00000000 #00000000 none + MENU COLOR SCREEN 37;40 #FF000000 #00E2E8FF none + MENU COLOR TABMSG 31;40 #80000000 #00000000 none + MENU COLOR TIMEOUT 1;37;40 #FF000000 #00000000 none + MENU COLOR TIMEOUT_MSG 37;40 #FF000000 #00000000 none + MENU COLOR CMDMARK 1;36;40 #FF000000 #00000000 none + MENU COLOR CMDLINE 37;40 #FF000000 #00000000 none + MENU COLOR TITLE 1;36;44 #00000000 #00000000 none + MENU COLOR UNSEL 37;44 #FF000000 #00000000 none + MENU COLOR SEL 7;37;40 #FFFFFFFF #FF5277C3 std + ''; + type = types.str; + description = '' + The syslinux theme used for BIOS boot. + ''; + }; + isoImage.appendToMenuLabel = mkOption { default = " Installer"; example = " Live System"; diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 93172aa0824..71c84fbe6b4 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -118,6 +118,7 @@ ./misc/version.nix ./misc/wordlist.nix ./misc/nixops-autoluks.nix + ./programs/_1password-gui.nix ./programs/adb.nix ./programs/appgate-sdp.nix ./programs/atop.nix @@ -184,6 +185,7 @@ ./programs/nix-ld.nix ./programs/neovim.nix ./programs/nm-applet.nix + ./programs/nncp.nix ./programs/npm.nix ./programs/noisetorch.nix ./programs/oblogout.nix diff --git a/nixos/modules/programs/_1password-gui.nix b/nixos/modules/programs/_1password-gui.nix new file mode 100644 index 00000000000..f57de44bb9e --- /dev/null +++ b/nixos/modules/programs/_1password-gui.nix @@ -0,0 +1,69 @@ +{ config, pkgs, lib, ... }: + +with lib; + +let + cfg = config.programs._1password-gui; + +in { + options = { + programs._1password-gui = { + enable = mkEnableOption "The 1Password Desktop application with browser integration"; + + groupId = mkOption { + type = types.int; + example = literalExpression "5000"; + description = '' + The GroupID to assign to the onepassword group, which is needed for browser integration. The group ID must be 1000 or greater. + ''; + }; + + polkitPolicyOwners = mkOption { + type = types.listOf types.str; + default = []; + example = literalExpression "[\"user1\" \"user2\" \"user3\"]"; + description = '' + A list of users who should be able to integrate 1Password with polkit-based authentication mechanisms. By default, no users will have such access. + ''; + }; + + package = mkOption { + type = types.package; + default = pkgs._1password-gui; + defaultText = literalExpression "pkgs._1password-gui"; + example = literalExpression "pkgs._1password-gui"; + description = '' + The 1Password derivation to use. This can be used to upgrade from the stable release that we keep in nixpkgs to the betas. + ''; + }; + }; + }; + + config = let + package = cfg.package.override { + polkitPolicyOwners = cfg.polkitPolicyOwners; + }; + in mkIf cfg.enable { + environment.systemPackages = [ package ]; + users.groups.onepassword.gid = cfg.groupId; + + security.wrappers = { + "1Password-BrowserSupport" = + { source = "${cfg.package}/share/1password/1Password-BrowserSupport"; + owner = "root"; + group = "onepassword"; + setuid = false; + setgid = true; + }; + + "1Password-KeyringHelper" = + { source = "${cfg.package}/share/1password/1Password-KeyringHelper"; + owner = "root"; + group = "onepassword"; + setuid = true; + setgid = true; + }; + }; + + }; +} diff --git a/nixos/modules/programs/nncp.nix b/nixos/modules/programs/nncp.nix new file mode 100644 index 00000000000..29a703eadf1 --- /dev/null +++ b/nixos/modules/programs/nncp.nix @@ -0,0 +1,101 @@ +{ config, lib, pkgs, ... }: + +with lib; +let + nncpCfgFile = "/run/nncp.hjson"; + programCfg = config.programs.nncp; + settingsFormat = pkgs.formats.json { }; + jsonCfgFile = settingsFormat.generate "nncp.json" programCfg.settings; + pkg = programCfg.package; +in { + options.programs.nncp = { + + enable = + mkEnableOption "NNCP (Node to Node copy) utilities and configuration"; + + group = mkOption { + type = types.str; + default = "uucp"; + description = '' + The group under which NNCP files shall be owned. + Any member of this group may access the secret keys + of this NNCP node. + ''; + }; + + package = mkOption { + type = types.package; + default = pkgs.nncp; + defaultText = literalExpression "pkgs.nncp"; + description = "The NNCP package to use system-wide."; + }; + + secrets = mkOption { + type = with types; listOf str; + example = [ "/run/keys/nncp.hjson" ]; + description = '' + A list of paths to NNCP configuration files that should not be + in the Nix store. These files are layered on top of the values at + <xref linkend="opt-programs.nncp.settings"/>. + ''; + }; + + settings = mkOption { + type = settingsFormat.type; + description = '' + NNCP configuration, see + <link xlink:href="http://www.nncpgo.org/Configuration.html"/>. + At runtime these settings will be overlayed by the contents of + <xref linkend="opt-programs.nncp.secrets"/> into the file + <literal>${nncpCfgFile}</literal>. Node keypairs go in + <literal>secrets</literal>, do not specify them in + <literal>settings</literal> as they will be leaked into + <literal>/nix/store</literal>! + ''; + default = { }; + }; + + }; + + config = mkIf programCfg.enable { + + environment = { + systemPackages = [ pkg ]; + etc."nncp.hjson".source = nncpCfgFile; + }; + + programs.nncp.settings = { + spool = mkDefault "/var/spool/nncp"; + log = mkDefault "/var/spool/nncp/log"; + }; + + systemd.tmpfiles.rules = [ + "d ${programCfg.settings.spool} 0770 root ${programCfg.group}" + "f ${programCfg.settings.log} 0770 root ${programCfg.group}" + ]; + + systemd.services.nncp-config = { + path = [ pkg ]; + description = "Generate NNCP configuration"; + wantedBy = [ "basic.target" ]; + serviceConfig.Type = "oneshot"; + script = '' + umask u=rw + nncpCfgDir=$(mktemp --directory nncp.XXX) + for f in ${jsonCfgFile} ${toString config.programs.nncp.secrets}; do + tmpdir=$(mktemp --directory nncp.XXX) + nncp-cfgdir -cfg $f -dump $tmpdir + find $tmpdir -size 1c -delete + cp -a $tmpdir/* $nncpCfgDir/ + rm -rf $tmpdir + done + nncp-cfgdir -load $nncpCfgDir > ${nncpCfgFile} + rm -rf $nncpCfgDir + chgrp ${programCfg.group} ${nncpCfgFile} + chmod g+r ${nncpCfgFile} + ''; + }; + }; + + meta.maintainers = with lib.maintainers; [ ehmry ]; +} diff --git a/nixos/modules/services/networking/squid.nix b/nixos/modules/services/networking/squid.nix index 4f3881af8bb..db4f0d26b6f 100644 --- a/nixos/modules/services/networking/squid.nix +++ b/nixos/modules/services/networking/squid.nix @@ -111,6 +111,13 @@ in description = "Whether to run squid web proxy."; }; + package = mkOption { + default = pkgs.squid; + defaultText = literalExpression "pkgs.squid"; + type = types.package; + description = "Squid package to use."; + }; + proxyAddress = mkOption { type = types.nullOr types.str; default = null; @@ -157,17 +164,21 @@ in users.groups.squid = {}; systemd.services.squid = { - description = "Squid caching web proxy"; + description = "Squid caching proxy"; + documentation = [ "man:squid(8)" ]; after = [ "network.target" "nss-lookup.target" ]; wantedBy = [ "multi-user.target"]; preStart = '' mkdir -p "/var/log/squid" chown squid:squid "/var/log/squid" + ${cfg.package}/bin/squid --foreground -z -f ${squidConfig} ''; serviceConfig = { - Type="forking"; PIDFile="/run/squid.pid"; - ExecStart = "${pkgs.squid}/bin/squid -YCs -f ${squidConfig}"; + ExecStart = "${cfg.package}/bin/squid --foreground -YCs -f ${squidConfig}"; + ExecReload="kill -HUP $MAINPID"; + KillMode="mixed"; + NotifyAccess="all"; }; }; diff --git a/nixos/modules/services/web-apps/keycloak.nix b/nixos/modules/services/web-apps/keycloak.nix index 22c16be7613..c4a2127663a 100644 --- a/nixos/modules/services/web-apps/keycloak.nix +++ b/nixos/modules/services/web-apps/keycloak.nix @@ -129,6 +129,14 @@ in ''; }; + plugins = lib.mkOption { + type = lib.types.listOf lib.types.path; + default = []; + description = '' + Keycloak plugin jar, ear files or derivations with them + ''; + }; + database = { type = mkOption { type = enum [ "mysql" "postgresql" ]; @@ -787,6 +795,14 @@ in umask u=rwx,g=,o= + install_plugin() { + if [ -d "$1" ]; then + find "$1" -type f \( -iname \*.ear -o -iname \*.jar \) -exec install -m 0500 -o keycloak -g keycloak "{}" "/run/keycloak/deployments/" \; + else + install -m 0500 -o keycloak -g keycloak "$1" "/run/keycloak/deployments/" + fi + } + install -m 0600 ${cfg.package}/standalone/configuration/*.properties /run/keycloak/configuration install -T -m 0600 ${keycloakConfig} /run/keycloak/configuration/standalone.xml @@ -794,7 +810,9 @@ in export JAVA_OPTS=-Djboss.server.config.user.dir=/run/keycloak/configuration add-user-keycloak.sh -u admin -p '${cfg.initialAdminPassword}' - '' + optionalString (cfg.sslCertificate != null && cfg.sslCertificateKey != null) '' + '' + + lib.optionalString (cfg.plugins != []) (lib.concatStringsSep "\n" (map (pl: "install_plugin ${lib.escapeShellArg pl}") cfg.plugins)) + "\n" + + optionalString (cfg.sslCertificate != null && cfg.sslCertificateKey != null) '' pushd /run/keycloak/ssl/ cat "$CREDENTIALS_DIRECTORY/ssl_cert" <(echo) \ "$CREDENTIALS_DIRECTORY/ssl_key" <(echo) \ diff --git a/nixos/modules/services/x11/desktop-managers/gnome.nix b/nixos/modules/services/x11/desktop-managers/gnome.nix index e2323785149..4a54de5e766 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome.nix @@ -132,6 +132,10 @@ in [ "environment" "gnome3" "excludePackages" ] [ "environment" "gnome" "excludePackages" ] ) + (mkRemovedOptionModule + [ "services" "gnome" "experimental-features" "realtime-scheduling" ] + "Set `security.rtkit.enable = true;` to make realtime scheduling possible. (Still needs to be enabled using GSettings.)" + ) ]; options = { @@ -142,38 +146,6 @@ in core-utilities.enable = mkEnableOption "GNOME core utilities"; core-developer-tools.enable = mkEnableOption "GNOME core developer tools"; games.enable = mkEnableOption "GNOME games"; - - experimental-features = { - realtime-scheduling = mkOption { - type = types.bool; - default = false; - description = '' - Makes mutter (which propagates to gnome-shell) request a low priority real-time - scheduling which is only available on the wayland session. - To enable this experimental feature it requires a restart of the compositor. - Note that enabling this option only enables the <emphasis>capability</emphasis> - for realtime-scheduling to be used. It doesn't automatically set the gsetting - so that mutter actually uses realtime-scheduling. This would require adding <literal> - rt-scheduler</literal> to <literal>/org/gnome/mutter/experimental-features</literal> - with dconf-editor. You cannot use extraGSettingsOverrides because that will only - change the default value of the setting. - - Please be aware of these known issues with the feature in nixos: - <itemizedlist> - <listitem> - <para> - <link xlink:href="https://github.com/NixOS/nixpkgs/issues/90201">NixOS/nixpkgs#90201</link> - </para> - </listitem> - <listitem> - <para> - <link xlink:href="https://github.com/NixOS/nixpkgs/issues/86730">NixOS/nixpkgs#86730</link> - </para> - </listitem> - </itemizedlist> - ''; - }; - }; }; services.xserver.desktopManager.gnome = { @@ -480,29 +452,6 @@ in ]; }) - # Enable soft realtime scheduling, only supported on wayland - (mkIf serviceCfg.experimental-features.realtime-scheduling { - security.wrappers.".gnome-shell-wrapped" = { - source = "${pkgs.gnome.gnome-shell}/bin/.gnome-shell-wrapped"; - owner = "root"; - group = "root"; - capabilities = "cap_sys_nice=ep"; - }; - - systemd.user.services.gnome-shell-wayland = let - gnomeShellRT = with pkgs.gnome; pkgs.runCommand "gnome-shell-rt" {} '' - mkdir -p $out/bin/ - cp ${gnome-shell}/bin/gnome-shell $out/bin - sed -i "s@${gnome-shell}/bin/@${config.security.wrapperDir}/@" $out/bin/gnome-shell - ''; - in { - # Note we need to clear ExecStart before overriding it - serviceConfig.ExecStart = ["" "${gnomeShellRT}/bin/gnome-shell"]; - # Do not use the default environment, it provides a broken PATH - environment = mkForce {}; - }; - }) - # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-utilities.bst (mkIf serviceCfg.core-utilities.enable { environment.systemPackages = @@ -513,18 +462,18 @@ in cheese eog epiphany - gedit + pkgs.gnome-text-editor gnome-calculator gnome-calendar gnome-characters gnome-clocks + pkgs.gnome-console gnome-contacts gnome-font-viewer gnome-logs gnome-maps gnome-music pkgs.gnome-photos - gnome-screenshot gnome-system-monitor gnome-weather nautilus @@ -547,7 +496,6 @@ in programs.file-roller.enable = notExcluded pkgs.gnome.file-roller; programs.geary.enable = notExcluded pkgs.gnome.geary; programs.gnome-disks.enable = notExcluded pkgs.gnome.gnome-disk-utility; - programs.gnome-terminal.enable = notExcluded pkgs.gnome.gnome-terminal; programs.seahorse.enable = notExcluded pkgs.gnome.seahorse; services.gnome.sushi.enable = notExcluded pkgs.gnome.sushi; diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix index 8ff9b0b756d..48e119a8618 100644 --- a/nixos/modules/services/x11/desktop-managers/pantheon.nix +++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix @@ -220,9 +220,7 @@ in ] config.environment.pantheon.excludePackages); programs.evince.enable = mkDefault true; - programs.evince.package = pkgs.pantheon.evince; programs.file-roller.enable = mkDefault true; - programs.file-roller.package = pkgs.pantheon.file-roller; # Settings from elementary-default-settings environment.etc."gtk-3.0/settings.ini".source = "${pkgs.pantheon.elementary-default-settings}/etc/gtk-3.0/settings.ini"; @@ -304,7 +302,6 @@ in environment.systemPackages = with pkgs.pantheon; [ contractor file-roller-contract - gnome-bluetooth-contract ]; environment.pathsToLink = [ diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix index b1dc6643be8..70ae6b8978d 100644 --- a/nixos/modules/services/x11/display-managers/gdm.nix +++ b/nixos/modules/services/x11/display-managers/gdm.nix @@ -141,7 +141,7 @@ in GDM_X_SERVER_EXTRA_ARGS = toString (filter (arg: arg != "-terminate") cfg.xserverArgs); # GDM is needed for gnome-login.session - XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share"; + XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share:${pkgs.gnome.gnome-control-center}/share"; } // optionalAttrs (xSessionWrapper != null) { # Make GDM use this wrapper before running the session, which runs the # configured setupCommands. This relies on a patched GDM which supports diff --git a/nixos/modules/virtualisation/waydroid.nix b/nixos/modules/virtualisation/waydroid.nix index 4fc798ff39f..2c0b658948d 100644 --- a/nixos/modules/virtualisation/waydroid.nix +++ b/nixos/modules/virtualisation/waydroid.nix @@ -56,8 +56,6 @@ in wantedBy = [ "multi-user.target" ]; - path = with pkgs; [ getent iptables iproute kmod nftables util-linux which ]; - unitConfig = { ConditionPathExists = "/var/lib/waydroid/lxc/waydroid"; }; @@ -68,6 +66,10 @@ in ExecStopPost = "${pkgs.waydroid}/bin/waydroid session stop"; }; }; + + systemd.tmpfiles.rules = [ + "d /var/lib/misc 0755 root root -" # for dnsmasq.leases + ]; }; } diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 47587b1b30c..413fc5637b6 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -519,7 +519,7 @@ in systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {}; systemd-nspawn = handleTest ./systemd-nspawn.nix {}; systemd-timesyncd = handleTest ./systemd-timesyncd.nix {}; - systemd-unit-path = handleTest ./systemd-unit-path.nix {}; + systemd-misc = handleTest ./systemd-misc.nix {}; taskserver = handleTest ./taskserver.nix {}; teeworlds = handleTest ./teeworlds.nix {}; telegraf = handleTest ./telegraf.nix {}; diff --git a/nixos/tests/installed-tests/gjs.nix b/nixos/tests/installed-tests/gjs.nix index 1656e9de171..d12487cba24 100644 --- a/nixos/tests/installed-tests/gjs.nix +++ b/nixos/tests/installed-tests/gjs.nix @@ -3,4 +3,10 @@ makeInstalledTest { tested = pkgs.gjs; withX11 = true; + + testConfig = { + environment.systemPackages = [ + pkgs.gjs + ]; + }; } diff --git a/nixos/tests/keycloak.nix b/nixos/tests/keycloak.nix index 6367ed808e0..fce8df2b7e3 100644 --- a/nixos/tests/keycloak.nix +++ b/nixos/tests/keycloak.nix @@ -16,8 +16,7 @@ let }; nodes = { - keycloak = { ... }: { - + keycloak = { config, ... }: { security.pki.certificateFiles = [ certs.ca.cert ]; @@ -36,6 +35,10 @@ let username = "bogus"; passwordFile = pkgs.writeText "dbPassword" "wzf6vOCbPp6cqTH"; }; + plugins = with config.services.keycloak.package.plugins; [ + keycloak-discord + keycloak-metrics-spi + ]; }; environment.systemPackages = with pkgs; [ @@ -102,8 +105,21 @@ let ### Realm Setup ### # Get an admin interface access token + keycloak.succeed(""" + curl -sSf -d 'client_id=admin-cli' \ + -d 'username=admin' \ + -d 'password=${initialAdminPassword}' \ + -d 'grant_type=password' \ + '${frontendUrl}/realms/master/protocol/openid-connect/token' \ + | jq -r '"Authorization: bearer " + .access_token' >admin_auth_header + """) + + # Register the metrics SPI keycloak.succeed( - "curl -sSf -d 'client_id=admin-cli' -d 'username=admin' -d 'password=${initialAdminPassword}' -d 'grant_type=password' '${frontendUrl}/realms/master/protocol/openid-connect/token' | jq -r '\"Authorization: bearer \" + .access_token' >admin_auth_header" + "${pkgs.jre}/bin/keytool -import -alias snakeoil -file ${certs.ca.cert} -storepass aaaaaa -keystore cacert.jks -noprompt", + "KC_OPTS='-Djavax.net.ssl.trustStore=cacert.jks -Djavax.net.ssl.trustStorePassword=aaaaaa' ${pkgs.keycloak}/bin/kcadm.sh config credentials --server '${frontendUrl}' --realm master --user admin --password '${initialAdminPassword}'", + "KC_OPTS='-Djavax.net.ssl.trustStore=cacert.jks -Djavax.net.ssl.trustStorePassword=aaaaaa' ${pkgs.keycloak}/bin/kcadm.sh update events/config -s 'eventsEnabled=true' -s 'adminEventsEnabled=true' -s 'eventsListeners+=metrics-listener'", + "curl -sSf '${frontendUrl}/realms/master/metrics' | grep '^keycloak_admin_event_UPDATE'" ) # Publish the realm, including a test OIDC client and user diff --git a/nixos/tests/systemd-unit-path.nix b/nixos/tests/systemd-misc.nix index 5998a187188..e416baa8b5f 100644 --- a/nixos/tests/systemd-unit-path.nix +++ b/nixos/tests/systemd-misc.nix @@ -29,10 +29,23 @@ let }; in { - name = "systemd-unit-path"; + name = "systemd-misc"; machine = { pkgs, lib, ... }: { boot.extraSystemdUnitPaths = [ "/etc/systemd-rw/system" ]; + + users.users.limited = { + isNormalUser = true; + uid = 1000; + }; + + systemd.units."user-1000.slice.d/limits.conf" = { + text = '' + [Slice] + TasksAccounting=yes + TasksMax=100 + ''; + }; }; testScript = '' @@ -43,5 +56,7 @@ in ) machine.succeed("systemctl start example.service") machine.succeed("systemctl status example.service | grep 'Active: active'") + + machine.succeed("systemctl show --property TasksMax --value user-1000.slice | grep 100") ''; }) diff --git a/pkgs/applications/accessibility/squeekboard/default.nix b/pkgs/applications/accessibility/squeekboard/default.nix index db139ab39d0..94129d05288 100644 --- a/pkgs/applications/accessibility/squeekboard/default.nix +++ b/pkgs/applications/accessibility/squeekboard/default.nix @@ -5,6 +5,7 @@ , ninja , pkg-config , gnome +, gnome-desktop , glib , gtk3 , wayland @@ -54,7 +55,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 - gnome.gnome-desktop + gnome-desktop wayland wayland-protocols libxml2 diff --git a/pkgs/applications/audio/airwave/default.nix b/pkgs/applications/audio/airwave/default.nix index 438159201de..6ed488d7d64 100644 --- a/pkgs/applications/audio/airwave/default.nix +++ b/pkgs/applications/audio/airwave/default.nix @@ -3,7 +3,6 @@ }: let - version = "1.3.3"; airwave-src = fetchFromGitHub { @@ -38,7 +37,8 @@ let in multiStdenv.mkDerivation { - name = "airwave-${version}"; + pname = "airwave"; + inherit version; src = airwave-src; diff --git a/pkgs/applications/audio/aj-snapshot/default.nix b/pkgs/applications/audio/aj-snapshot/default.nix index 00fde01859c..9143b5f5b08 100644 --- a/pkgs/applications/audio/aj-snapshot/default.nix +++ b/pkgs/applications/audio/aj-snapshot/default.nix @@ -1,12 +1,11 @@ { lib, stdenv, fetchurl, alsa-lib, jack2, minixml, pkg-config }: stdenv.mkDerivation rec { - name = packageName + "-" + version ; - packageName = "aj-snapshot" ; + pname = "aj-snapshot" ; version = "0.9.9"; src = fetchurl { - url = "mirror://sourceforge/${packageName}/${name}.tar.bz2"; + url = "mirror://sourceforge/aj-snapshot/aj-snapshot-${version}.tar.bz2"; sha256 = "0z8wd5yvxdmw1h1rj6km9h01xd4xmp4d86gczlix7hsc7zrf0wil"; }; diff --git a/pkgs/applications/audio/ams/default.nix b/pkgs/applications/audio/ams/default.nix index 388d8b44dcf..7b209994103 100644 --- a/pkgs/applications/audio/ams/default.nix +++ b/pkgs/applications/audio/ams/default.nix @@ -12,7 +12,7 @@ }: stdenv.mkDerivation rec { - name = "ams"; + pname = "ams"; version = "unstable-2019-04-27"; src = fetchgit { diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix index 345750e9e2a..0d93284e294 100644 --- a/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix +++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix @@ -2,7 +2,7 @@ pulseaudio }: bitwig-studio1.overrideAttrs (oldAttrs: rec { - name = "bitwig-studio-${version}"; + pname = "bitwig-studio"; version = "2.5"; src = fetchurl { diff --git a/pkgs/applications/audio/cardinal/default.nix b/pkgs/applications/audio/cardinal/default.nix index 9200a36f9f3..1e77ade6cdb 100644 --- a/pkgs/applications/audio/cardinal/default.nix +++ b/pkgs/applications/audio/cardinal/default.nix @@ -22,7 +22,7 @@ }: stdenv.mkDerivation rec { - name = "cardinal-${version}"; + pname = "cardinal"; version = "22.02"; src = fetchurl { diff --git a/pkgs/applications/audio/cmt/default.nix b/pkgs/applications/audio/cmt/default.nix index bb23f9b62bb..1062d897c6b 100644 --- a/pkgs/applications/audio/cmt/default.nix +++ b/pkgs/applications/audio/cmt/default.nix @@ -4,11 +4,11 @@ }: stdenv.mkDerivation rec { - name = "cmt"; + pname = "cmt"; version = "1.17"; src = fetchurl { - url = "http://www.ladspa.org/download/${name}_${version}.tgz"; + url = "http://www.ladspa.org/download/cmt_${version}.tgz"; sha256 = "07xd0xmwpa0j12813jpf87fr9hwzihii5l35mp8ady7xxfmxfmpb"; }; diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix index c1cecc13ec5..e8b0ded4c00 100644 --- a/pkgs/applications/audio/deadbeef/default.nix +++ b/pkgs/applications/audio/deadbeef/default.nix @@ -112,6 +112,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2; platforms = [ "x86_64-linux" "i686-linux" ]; maintainers = [ maintainers.abbradar ]; - repositories.git = "https://github.com/Alexey-Yakovenko/deadbeef"; }; } diff --git a/pkgs/applications/audio/jamin/default.nix b/pkgs/applications/audio/jamin/default.nix index 325d115b581..2bd23b821f1 100644 --- a/pkgs/applications/audio/jamin/default.nix +++ b/pkgs/applications/audio/jamin/default.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation rec { version = "0.95.0"; - name = "jamin-${version}"; + pname = "jamin"; src = fetchurl { url = "mirror://sourceforge/jamin/jamin-${version}.tar.gz"; diff --git a/pkgs/applications/audio/mid2key/default.nix b/pkgs/applications/audio/mid2key/default.nix index 5db17b99d1c..0a5aecfecb0 100644 --- a/pkgs/applications/audio/mid2key/default.nix +++ b/pkgs/applications/audio/mid2key/default.nix @@ -1,10 +1,13 @@ -{ lib, stdenv, fetchurl, alsa-lib, libX11, libXi, libXtst, xorgproto }: +{ lib, stdenv, fetchFromGitHub, alsa-lib, libX11, libXi, libXtst, xorgproto }: stdenv.mkDerivation rec { - name = "mid2key-r1"; + pname = "mid2key"; + version = "1"; - src = fetchurl { - url = "http://mid2key.googlecode.com/files/${name}.tar.gz"; + src = fetchFromGitHub { + owner = "dnschneid"; + repo = "mid2key"; + rev = "v${version}"; sha256 = "0j2vsjvdgx51nd1qmaa18mcy0yw9pwrhbv2mdwnf913bwsk4y904"; }; diff --git a/pkgs/applications/audio/midas/generic.nix b/pkgs/applications/audio/midas/generic.nix index 93a215e46b1..b58bd0b2757 100644 --- a/pkgs/applications/audio/midas/generic.nix +++ b/pkgs/applications/audio/midas/generic.nix @@ -1,8 +1,7 @@ { stdenv, fetchurl, lib, libX11, libXext, alsa-lib, freetype, brand, type, version, homepage, url, sha256, ... }: stdenv.mkDerivation rec { - inherit type; - baseName = "${type}-Edit"; - name = "${lib.toLower baseName}-${version}"; + pname = "${lib.toLower type}-edit"; + inherit version; src = fetchurl { inherit url; @@ -15,7 +14,7 @@ stdenv.mkDerivation rec { installPhase = '' mkdir -p $out/bin - cp ${baseName} $out/bin + cp ${pname} $out/bin ''; preFixup = let # we prepare our library path in the let clause to avoid it become part of the input of mkDerivation @@ -30,7 +29,7 @@ stdenv.mkDerivation rec { patchelf \ --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ --set-rpath "${libPath}" \ - $out/bin/${baseName} + $out/bin/${pname} ''; meta = with lib; { diff --git a/pkgs/applications/audio/musescore/darwin.nix b/pkgs/applications/audio/musescore/darwin.nix index 13141729320..2cf1b9ff68d 100644 --- a/pkgs/applications/audio/musescore/darwin.nix +++ b/pkgs/applications/audio/musescore/darwin.nix @@ -32,6 +32,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2; platforms = platforms.darwin; maintainers = []; - repositories.git = "https://github.com/musescore/MuseScore"; }; } diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix index 7662eadc498..caa799c88f6 100644 --- a/pkgs/applications/audio/musescore/default.nix +++ b/pkgs/applications/audio/musescore/default.nix @@ -51,6 +51,5 @@ mkDerivation rec { license = licenses.gpl2; maintainers = with maintainers; [ vandenoever turion doronbehar ]; platforms = platforms.linux; - repositories.git = "https://github.com/musescore/MuseScore"; }; } diff --git a/pkgs/applications/audio/qmidiarp/default.nix b/pkgs/applications/audio/qmidiarp/default.nix index 618062dc2f3..487f86cf660 100644 --- a/pkgs/applications/audio/qmidiarp/default.nix +++ b/pkgs/applications/audio/qmidiarp/default.nix @@ -10,13 +10,13 @@ }: stdenv.mkDerivation rec { - name = "qmidiarp"; + pname = "qmidiarp"; version = "0.6.5"; src = fetchgit { url = "https://git.code.sf.net/p/qmidiarp/code"; sha256 = "1g2143gzfbihqr2zi3k2v1yn1x3mwfbb2khmcd4m4cq3hcwhhlx9"; - rev = "qmidiarp-0.6.5"; + rev = "qmidiarp-${version}"; }; nativeBuildInputs = [ diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix index 460b97479c6..bed02f77e7b 100644 --- a/pkgs/applications/audio/qmmp/default.nix +++ b/pkgs/applications/audio/qmmp/default.nix @@ -58,6 +58,5 @@ mkDerivation rec { license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.bjornfor ]; - repositories.svn = "https://svn.code.sf.net/p/qmmp-dev/code"; }; } diff --git a/pkgs/applications/audio/sisco.lv2/default.nix b/pkgs/applications/audio/sisco.lv2/default.nix index 3ecd4665f26..5aa407a1502 100644 --- a/pkgs/applications/audio/sisco.lv2/default.nix +++ b/pkgs/applications/audio/sisco.lv2/default.nix @@ -1,7 +1,6 @@ { lib, stdenv, fetchFromGitHub, lv2, pkg-config, libGLU, libGL, cairo, pango, libjack2 }: let - name = "sisco.lv2-${version}"; version = "0.7.0"; robtkVersion = "80a2585253a861c81f0bfb7e4579c75f5c73af89"; @@ -22,7 +21,8 @@ let }; in stdenv.mkDerivation rec { - inherit name; + pname = "sisco.lv2"; + inherit version; srcs = [ src robtkSrc ]; sourceRoot = src.name; diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix index 52789d64d10..01e8f5d2361 100644 --- a/pkgs/applications/audio/snd/default.nix +++ b/pkgs/applications/audio/snd/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "snd"; - version = "22.1"; + version = "22.2"; src = fetchurl { url = "mirror://sourceforge/snd/snd-${version}.tar.gz"; - sha256 = "sha256-jrH0XRvPj9ySd8FSrOKf6qP5T1YSKrYBNHl6fz5dhkI="; + sha256 = "sha256-MZ8Vm/d+0r7YsXdySKcH5rqXBh4iFLyUe44LBOD58E0="; }; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/applications/audio/soundkonverter/default.nix b/pkgs/applications/audio/soundkonverter/default.nix index 1c1724fbce8..d8536762641 100644 --- a/pkgs/applications/audio/soundkonverter/default.nix +++ b/pkgs/applications/audio/soundkonverter/default.nix @@ -45,7 +45,7 @@ let runtimeDeps = [] in mkDerivation rec { - name = "soundkonverter"; + pname = "soundkonverter"; version = "3.0.1"; src = fetchFromGitHub { owner = "dfaust"; diff --git a/pkgs/applications/audio/synaesthesia/default.nix b/pkgs/applications/audio/synaesthesia/default.nix new file mode 100644 index 00000000000..efdd6f7e73a --- /dev/null +++ b/pkgs/applications/audio/synaesthesia/default.nix @@ -0,0 +1,33 @@ +{ stdenv +, lib +, fetchzip +, SDL +, pkg-config +, libSM +}: +stdenv.mkDerivation rec { + pname = "synaesthesia"; + version = "2.4"; + + src = fetchzip { + url = "https://logarithmic.net/pfh-files/synaesthesia/synaesthesia-${version}.tar.gz"; + sha256 = "0nzsdxbah0shm2vlziaaw3ilzlizd3d35rridkpg40nfxmq84qnx"; + }; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + SDL + libSM + ]; + + meta = { + homepage = "https://logarithmic.net/pfh/synaesthesia"; + description = "Program for representing sounds visually"; + license = lib.licenses.gpl2Only; + platforms = lib.platforms.linux; + maintainers = [ lib.maintainers.infinisil ]; + }; +} diff --git a/pkgs/applications/blockchains/bitcoin-unlimited/default.nix b/pkgs/applications/blockchains/bitcoin-unlimited/default.nix index 802a19167a9..fe7acb0bbe1 100644 --- a/pkgs/applications/blockchains/bitcoin-unlimited/default.nix +++ b/pkgs/applications/blockchains/bitcoin-unlimited/default.nix @@ -6,7 +6,7 @@ with lib; stdenv.mkDerivation rec { - name = "bitcoin" + (toString (optional (!withGui) "d")) + "-unlimited-" + version; + pname = "bitcoin" + optionalString (!withGui) "d" + "-unlimited"; version = "1.9.2.0"; src = fetchFromGitHub { diff --git a/pkgs/applications/blockchains/dogecoin/default.nix b/pkgs/applications/blockchains/dogecoin/default.nix index 35b9fb026e3..8094959a248 100644 --- a/pkgs/applications/blockchains/dogecoin/default.nix +++ b/pkgs/applications/blockchains/dogecoin/default.nix @@ -6,7 +6,7 @@ with lib; stdenv.mkDerivation rec { - name = "dogecoin" + (toString (optional (!withGui) "d")) + "-" + version; + pname = "dogecoin" + optionalString (!withGui) "d"; version = "1.14.5"; src = fetchFromGitHub { diff --git a/pkgs/applications/blockchains/litecoin/default.nix b/pkgs/applications/blockchains/litecoin/default.nix index c80ef342c75..0a82ca0ce2c 100644 --- a/pkgs/applications/blockchains/litecoin/default.nix +++ b/pkgs/applications/blockchains/litecoin/default.nix @@ -11,8 +11,7 @@ with lib; mkDerivation rec { - - name = "litecoin" + (toString (optional (!withGui) "d")) + "-" + version; + pname = "litecoin" + optionalString (!withGui) "d"; version = "0.18.1"; src = fetchFromGitHub { diff --git a/pkgs/applications/blockchains/namecoin/default.nix b/pkgs/applications/blockchains/namecoin/default.nix index 1851c581c9a..d5c739e00f4 100644 --- a/pkgs/applications/blockchains/namecoin/default.nix +++ b/pkgs/applications/blockchains/namecoin/default.nix @@ -3,8 +3,8 @@ with lib; stdenv.mkDerivation rec { + pname = "namecoin" + optionalString (!withGui) "d"; version = "nc22.0"; - name = "namecoin" + toString (optional (!withGui) "d") + "-" + version; src = fetchFromGitHub { owner = "namecoin"; diff --git a/pkgs/applications/editors/cudatext/default.nix b/pkgs/applications/editors/cudatext/default.nix index 510873f200e..f22e2407cf2 100644 --- a/pkgs/applications/editors/cudatext/default.nix +++ b/pkgs/applications/editors/cudatext/default.nix @@ -38,13 +38,13 @@ let in stdenv.mkDerivation rec { pname = "cudatext"; - version = "1.158.2"; + version = "1.159.0"; src = fetchFromGitHub { owner = "Alexey-T"; repo = "CudaText"; rev = version; - sha256 = "sha256-YrRG+LaG39q/6Ry3cXo9XUwtvokkBl96XuQfE22QxZI="; + sha256 = "sha256-DRVJLzAdhw+ke+B2KFlkgLXgU4+Mq3LQ0PRYg52Aq/o="; }; postPatch = '' diff --git a/pkgs/applications/editors/cudatext/deps.json b/pkgs/applications/editors/cudatext/deps.json index 5e0f37c78b6..732870b8997 100644 --- a/pkgs/applications/editors/cudatext/deps.json +++ b/pkgs/applications/editors/cudatext/deps.json @@ -16,8 +16,8 @@ }, "ATSynEdit": { "owner": "Alexey-T", - "rev": "2022.03.17", - "sha256": "sha256-aJZGHodydkqfe2BJLKWUzIX6vbdiGKs4z5ZqtteM6NU=" + "rev": "2022.03.23", + "sha256": "sha256-D/pQ4TSWUaL97Nau3bGi7rc8MxnvuoDcD7HDNEDwmsk=" }, "ATSynEdit_Cmp": { "owner": "Alexey-T", @@ -26,13 +26,13 @@ }, "EControl": { "owner": "Alexey-T", - "rev": "2022.03.17", - "sha256": "sha256-sWRKRhUYf07TIrVWRqtpsYPZu0dPm0EhSIqoDLmkG0Y=" + "rev": "2022.03.23", + "sha256": "sha256-QXq75VoAnYqAhe3Fvsz1szZyBz4dHEpYJZqTSCR80v8=" }, "ATSynEdit_Ex": { "owner": "Alexey-T", - "rev": "2022.03.17", - "sha256": "sha256-FndLHJuCOyFr0IGUL4zFRjkEvTyNF3tHUO/Wx5IaV2Y=" + "rev": "2022.03.23", + "sha256": "sha256-m1rkWvRC1i1nLPIhiG6g8LGU96vTuGGqLFrSzw9A9x0=" }, "Python-for-Lazarus": { "owner": "Alexey-T", diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix index 0e2ffe46d20..8fd9f56a9d2 100644 --- a/pkgs/applications/editors/gnome-builder/default.nix +++ b/pkgs/applications/editors/gnome-builder/default.nix @@ -18,6 +18,7 @@ , json-glib , jsonrpc-glib , libdazzle +, libhandy , libpeas , libportal-gtk3 , libxml2 @@ -40,21 +41,20 @@ stdenv.mkDerivation rec { pname = "gnome-builder"; - version = "41.3"; + version = "42.0"; outputs = [ "out" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "4iUPyOnp8gAsRS5ZUNgmhXNNPESAs1Fnq1CKyHAlCeE="; + sha256 = "Uu/SltaLL/GCNBwEgdz9cGVMQIvbZ5/Ot225cDwiQo8="; }; patches = [ - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/gnome-builder/-/merge_requests/486 + # Fix appstream validation (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/b3bfa0df53a3749c3b73cb6c4bad5cab3fa549a1.patch"; - sha256 = "B/uCcYavFvOAPhLHZ4MRNENDd6VytILiGYwDZRUSxTE="; + url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/d7151679e0c925d27216256dc32fe67fb298d059.patch"; + sha256 = "vdNJawkqSBaFGRZvxzvjOryQpBL4jcN7tr1t3ihD7LA="; }) ]; @@ -87,6 +87,7 @@ stdenv.mkDerivation rec { json-glib jsonrpc-glib libdazzle + libhandy libxml2 ostree pcre @@ -103,10 +104,6 @@ stdenv.mkDerivation rec { xvfb-run ]; - prePatch = '' - patchShebangs build-aux/meson/post_install.py - ''; - mesonFlags = [ "-Ddocs=true" @@ -122,6 +119,10 @@ stdenv.mkDerivation rec { # understand why. Somebody should look into fixing this. doCheck = true; + postPatch = '' + patchShebangs build-aux/meson/post_install.py + ''; + checkPhase = '' export NO_AT_BRIDGE=1 xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ diff --git a/pkgs/applications/editors/jetbrains/darwin.nix b/pkgs/applications/editors/jetbrains/darwin.nix index b1002e23582..f771894f533 100644 --- a/pkgs/applications/editors/jetbrains/darwin.nix +++ b/pkgs/applications/editors/jetbrains/darwin.nix @@ -5,7 +5,7 @@ }: { meta -, name +, pname , product , productShort ? product , src @@ -17,7 +17,7 @@ let loname = lib.toLower productShort; in stdenvNoCC.mkDerivation { - inherit meta src version; + inherit pname meta src version; desktopName = product; installPhase = '' runHook preInstall @@ -32,6 +32,5 @@ in runHook postInstall ''; nativeBuildInputs = [ undmg ]; - pname = lib.concatStringsSep "-" (lib.init (lib.splitString "-" name)); sourceRoot = "."; } diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index b47c1270790..f0ee51dde3c 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -24,9 +24,9 @@ let # Sorted alphabetically - buildClion = { name, version, src, license, description, wmClass, ... }: + buildClion = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "CLion"; meta = with lib; { homepage = "https://www.jetbrains.com/clion/"; @@ -62,9 +62,9 @@ let ''; }); - buildDataGrip = { name, version, src, license, description, wmClass, ... }: + buildDataGrip = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "DataGrip"; meta = with lib; { homepage = "https://www.jetbrains.com/datagrip/"; @@ -78,9 +78,9 @@ let }; }); - buildGoland = { name, version, src, license, description, wmClass, ... }: + buildGoland = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "Goland"; meta = with lib; { homepage = "https://www.jetbrains.com/go/"; @@ -106,9 +106,9 @@ let ''; }); - buildIdea = { name, version, src, license, description, wmClass, product, ... }: + buildIdea = { pname, version, src, license, description, wmClass, product, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk product; + inherit pname version src wmClass jdk product; productShort = "IDEA"; extraLdPath = [ zlib ]; extraWrapperArgs = [ @@ -129,9 +129,9 @@ let }; }); - buildMps = { name, version, src, license, description, wmClass, product, ... }: + buildMps = { pname, version, src, license, description, wmClass, product, ... }: (mkJetBrainsProduct rec { - inherit name version src wmClass jdk product; + inherit pname version src wmClass jdk product; productShort = "MPS"; meta = with lib; { homepage = "https://www.jetbrains.com/mps/"; @@ -146,9 +146,9 @@ let }; }); - buildPhpStorm = { name, version, src, license, description, wmClass, ... }: + buildPhpStorm = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "PhpStorm"; meta = with lib; { homepage = "https://www.jetbrains.com/phpstorm/"; @@ -162,9 +162,9 @@ let }; }); - buildPycharm = { name, version, src, license, description, wmClass, product, ... }: + buildPycharm = { pname, version, src, license, description, wmClass, product, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk product; + inherit pname version src wmClass jdk product; productShort = "PyCharm"; meta = with lib; { homepage = "https://www.jetbrains.com/pycharm/"; @@ -186,9 +186,9 @@ let }; }); - buildRider = { name, version, src, license, description, wmClass, ... }: + buildRider = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "Rider"; meta = with lib; { homepage = "https://www.jetbrains.com/rider/"; @@ -211,9 +211,9 @@ let ''); }); - buildRubyMine = { name, version, src, license, description, wmClass, ... }: + buildRubyMine = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "RubyMine"; meta = with lib; { homepage = "https://www.jetbrains.com/ruby/"; @@ -223,9 +223,9 @@ let }; }); - buildWebStorm = { name, version, src, license, description, wmClass, ... }: + buildWebStorm = { pname, version, src, license, description, wmClass, ... }: (mkJetBrainsProduct { - inherit name version src wmClass jdk; + inherit pname version src wmClass jdk; product = "WebStorm"; meta = with lib; { homepage = "https://www.jetbrains.com/webstorm/"; @@ -251,7 +251,7 @@ in # Sorted alphabetically clion = buildClion rec { - name = "clion-${version}"; + pname = "clion"; version = products.clion.version; description = "C/C++ IDE. New. Intelligent. Cross-platform"; license = lib.licenses.unfree; @@ -264,7 +264,7 @@ in }; datagrip = buildDataGrip rec { - name = "datagrip-${version}"; + pname = "datagrip"; version = products.datagrip.version; description = "Your Swiss Army Knife for Databases and SQL"; license = lib.licenses.unfree; @@ -277,7 +277,7 @@ in }; goland = buildGoland rec { - name = "goland-${version}"; + pname = "goland"; version = products.goland.version; description = "Up and Coming Go IDE"; license = lib.licenses.unfree; @@ -290,7 +290,7 @@ in }; idea-community = buildIdea rec { - name = "idea-community-${version}"; + pname = "idea-community"; product = "IntelliJ IDEA CE"; version = products.idea-community.version; description = "Integrated Development Environment (IDE) by Jetbrains, community edition"; @@ -304,7 +304,7 @@ in }; idea-ultimate = buildIdea rec { - name = "idea-ultimate-${version}"; + pname = "idea-ultimate"; product = "IntelliJ IDEA"; version = products.idea-ultimate.version; description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license"; @@ -318,7 +318,7 @@ in }; mps = buildMps rec { - name = "mps-${version}"; + pname = "mps"; product = "MPS ${products.mps.version-major-minor}"; version = products.mps.version; description = "Create your own domain-specific language"; @@ -332,7 +332,7 @@ in }; phpstorm = buildPhpStorm rec { - name = "phpstorm-${version}"; + pname = "phpstorm"; version = products.phpstorm.version; description = "Professional IDE for Web and PHP developers"; license = lib.licenses.unfree; @@ -345,7 +345,7 @@ in }; pycharm-community = buildPycharm rec { - name = "pycharm-community-${version}"; + pname = "pycharm-community"; product = "PyCharm CE"; version = products.pycharm-community.version; description = "PyCharm Community Edition"; @@ -359,7 +359,7 @@ in }; pycharm-professional = buildPycharm rec { - name = "pycharm-professional-${version}"; + pname = "pycharm-professional"; product = "PyCharm"; version = products.pycharm-professional.version; description = "PyCharm Professional Edition"; @@ -373,7 +373,7 @@ in }; rider = buildRider rec { - name = "rider-${version}"; + pname = "rider"; version = products.rider.version; description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper"; license = lib.licenses.unfree; @@ -386,7 +386,7 @@ in }; ruby-mine = buildRubyMine rec { - name = "ruby-mine-${version}"; + pname = "ruby-mine"; version = products.ruby-mine.version; description = "The Most Intelligent Ruby and Rails IDE"; license = lib.licenses.unfree; @@ -399,7 +399,7 @@ in }; webstorm = buildWebStorm rec { - name = "webstorm-${version}"; + pname = "webstorm"; version = products.webstorm.version; description = "Professional IDE for Web and JavaScript development"; license = lib.licenses.unfree; diff --git a/pkgs/applications/editors/jetbrains/linux.nix b/pkgs/applications/editors/jetbrains/linux.nix index d150368ca82..55ed0e6829e 100644 --- a/pkgs/applications/editors/jetbrains/linux.nix +++ b/pkgs/applications/editors/jetbrains/linux.nix @@ -3,30 +3,29 @@ , vmopts ? null }: -{ name, product, productShort ? product, version, src, wmClass, jdk, meta, extraLdPath ? [], extraWrapperArgs ? [] }@args: +{ pname, product, productShort ? product, version, src, wmClass, jdk, meta, extraLdPath ? [], extraWrapperArgs ? [] }@args: with lib; let loName = toLower productShort; hiName = toUpper productShort; - mainProgram = concatStringsSep "-" (init (splitString "-" name)); vmoptsName = loName + lib.optionalString stdenv.hostPlatform.is64bit "64" + ".vmoptions"; in with stdenv; lib.makeOverridable mkDerivation (rec { - inherit name src; - meta = args.meta // { inherit mainProgram; }; + inherit pname version src; + meta = args.meta // { mainProgram = pname; }; desktopItem = makeDesktopItem { - name = mainProgram; - exec = mainProgram; + name = pname; + exec = pname; comment = lib.replaceChars ["\n"] [" "] meta.longDescription; desktopName = product; genericName = meta.description; categories = [ "Development" ]; - icon = mainProgram; + icon = pname; startupWMClass = wmClass; }; @@ -62,16 +61,16 @@ with stdenv; lib.makeOverridable mkDerivation (rec { installPhase = '' runHook preInstall - mkdir -p $out/{bin,$name,share/pixmaps,libexec/${name}} - cp -a . $out/$name - ln -s $out/$name/bin/${loName}.png $out/share/pixmaps/${mainProgram}.png - mv bin/fsnotifier* $out/libexec/${name}/. + mkdir -p $out/{bin,$pname,share/pixmaps,libexec/${pname}} + cp -a . $out/$pname + ln -s $out/$pname/bin/${loName}.png $out/share/pixmaps/${pname}.png + mv bin/fsnotifier* $out/libexec/${pname}/. jdk=${jdk.home} item=${desktopItem} - makeWrapper "$out/$name/bin/${loName}.sh" "$out/bin/${mainProgram}" \ - --prefix PATH : "$out/libexec/${name}:${lib.makeBinPath [ jdk coreutils gnugrep which git ]}" \ + makeWrapper "$out/$pname/bin/${loName}.sh" "$out/bin/${pname}" \ + --prefix PATH : "$out/libexec/${pname}:${lib.makeBinPath [ jdk coreutils gnugrep which git ]}" \ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath ([ # Some internals want libstdc++.so.6 stdenv.cc.cc.lib libsecret e2fsprogs diff --git a/pkgs/applications/editors/jupyter-kernels/octave/default.nix b/pkgs/applications/editors/jupyter-kernels/octave/default.nix index 9db38d14448..7a1c997a7c5 100644 --- a/pkgs/applications/editors/jupyter-kernels/octave/default.nix +++ b/pkgs/applications/editors/jupyter-kernels/octave/default.nix @@ -32,7 +32,8 @@ rec { ''; sizedLogo = size: stdenv.mkDerivation { - name = ''octave-logo-${octave.version}-${size}x${size}.png''; + pname = "octave-logo-${size}x${size}.png"; + inherit (octave) version; src = octave.src; diff --git a/pkgs/applications/editors/micro/default.nix b/pkgs/applications/editors/micro/default.nix index c3c42ac24cb..d9805cbb36a 100644 --- a/pkgs/applications/editors/micro/default.nix +++ b/pkgs/applications/editors/micro/default.nix @@ -1,4 +1,4 @@ -{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: +{ lib, buildGoModule, fetchFromGitHub, installShellFiles, callPackage }: buildGoModule rec { pname = "micro"; @@ -24,6 +24,8 @@ buildGoModule rec { install -Dt $out/share/applications assets/packaging/micro.desktop ''; + passthru.tests.expect = callPackage ./test-with-expect.nix {}; + meta = with lib; { homepage = "https://micro-editor.github.io"; description = "Modern and intuitive terminal-based text editor"; diff --git a/pkgs/applications/editors/micro/test-with-expect.nix b/pkgs/applications/editors/micro/test-with-expect.nix new file mode 100644 index 00000000000..d3e1d60e087 --- /dev/null +++ b/pkgs/applications/editors/micro/test-with-expect.nix @@ -0,0 +1,30 @@ +{ micro, expect, runCommand, writeScript, runtimeShell }: + +let expect-script = writeScript "expect-script" '' + #!${expect}/bin/expect -f + + spawn micro file.txt + expect "file.txt" + + send "Hello world!" + expect "Hello world!" + + # Send ctrl-q (exit) + send "\021" + + expect "Save changes to file.txt before closing?" + send "y" + + expect eof +''; in +runCommand "micro-test-expect" +{ + nativeBuildInputs = [ micro expect ]; + passthru = { inherit expect-script; }; +} '' + # Micro really wants a writable $HOME for its config directory. + export HOME=$(pwd) + expect -f ${expect-script} + grep "Hello world!" file.txt + touch $out +'' diff --git a/pkgs/applications/editors/qxmledit/default.nix b/pkgs/applications/editors/qxmledit/default.nix index d2aea1344da..35c5f644ffa 100644 --- a/pkgs/applications/editors/qxmledit/default.nix +++ b/pkgs/applications/editors/qxmledit/default.nix @@ -2,7 +2,7 @@ qmake, qtbase, qtxmlpatterns, qtsvg, qtscxml, qtquick1, libGLU }: stdenv.mkDerivation rec { - name = "qxmledit-${version}" ; + pname = "qxmledit" ; version = "0.9.15" ; src = fetchFromGitHub ( lib.importJSON ./qxmledit.json ) ; nativeBuildInputs = [ qmake ] ; diff --git a/pkgs/applications/emulators/wine/base.nix b/pkgs/applications/emulators/wine/base.nix index f13e224627a..7788b13b4ec 100644 --- a/pkgs/applications/emulators/wine/base.nix +++ b/pkgs/applications/emulators/wine/base.nix @@ -1,5 +1,5 @@ { stdenv, lib, pkgArches, callPackage, makeSetupHook, - name, version, src, mingwGccs, monos, geckos, platforms, + pname, version, src, mingwGccs, monos, geckos, platforms, bison, flex, fontforge, makeWrapper, pkg-config, autoconf, hexdump, perl, nixosTests, supportFlags, @@ -13,7 +13,7 @@ with import ./util.nix { inherit lib; }; let patches' = patches; - prevName = name; + prevName = pname; prevPlatforms = platforms; prevConfigFlags = configureFlags; setupHookDarwin = makeSetupHook { @@ -42,9 +42,9 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) { make loader/wine64-preloader NIX_LDFLAGS="" NIX_LDFLAGS_${stdenv.cc.suffixSalt}="" ''; }) // rec { - inherit src; + inherit version src; - name = if supportFlags.waylandSupport then "${prevName}-wayland" else prevName; + pname = prevName + lib.optionalString supportFlags.waylandSupport "wayland"; # Fixes "Compiler cannot create executables" building wineWow with mingwSupport strictDeps = true; diff --git a/pkgs/applications/emulators/wine/packages.nix b/pkgs/applications/emulators/wine/packages.nix index bf3f57aff0f..c119feb783d 100644 --- a/pkgs/applications/emulators/wine/packages.nix +++ b/pkgs/applications/emulators/wine/packages.nix @@ -9,7 +9,7 @@ let vkd3d_i686 = pkgsi686Linux.callPackage ./vkd3d.nix { inherit moltenvk; }; in with src; { wine32 = pkgsi686Linux.callPackage ./base.nix { - name = "wine-${version}"; + pname = "wine"; inherit src version supportFlags patches moltenvk; pkgArches = [ pkgsi686Linux ]; vkd3dArches = lib.optionals supportFlags.vkd3dSupport [ vkd3d_i686 ]; @@ -19,7 +19,7 @@ in with src; { platforms = [ "i686-linux" "x86_64-linux" ]; }; wine64 = callPackage ./base.nix { - name = "wine64-${version}"; + pname = "wine64"; inherit src version supportFlags patches moltenvk; pkgArches = [ pkgs ]; vkd3dArches = lib.optionals supportFlags.vkd3dSupport [ vkd3d ]; @@ -30,7 +30,7 @@ in with src; { platforms = [ "x86_64-linux" "x86_64-darwin" ]; }; wineWow = callPackage ./base.nix { - name = "wine-wow-${version}"; + pname = "wine-wow"; inherit src version supportFlags patches moltenvk; stdenv = stdenv_32bit; pkgArches = [ pkgs pkgsi686Linux ]; diff --git a/pkgs/applications/gis/grass/default.nix b/pkgs/applications/gis/grass/default.nix index 5ca31cc0405..36664a2d49c 100644 --- a/pkgs/applications/gis/grass/default.nix +++ b/pkgs/applications/gis/grass/default.nix @@ -5,7 +5,7 @@ }: stdenv.mkDerivation rec { - name = "grass"; + pname = "grass"; version = "7.8.6"; src = with lib; fetchFromGitHub { diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix index 57439313bf2..d77d4ffda2a 100644 --- a/pkgs/applications/graphics/drawio/default.nix +++ b/pkgs/applications/graphics/drawio/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "drawio"; - version = "16.5.1"; + version = "17.2.1"; src = fetchurl { url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm"; - sha256 = "a8ebf2560820d2d05677b9b16fc863f555dde8235b3e34acd7916eee3544eaa9"; + sha256 = "28019774a18f6e74c0d126346ae3551b5eb9c73aae13fe87f6d49120c183697a"; }; nativeBuildInputs = [ diff --git a/pkgs/applications/graphics/gnome-photos/default.nix b/pkgs/applications/graphics/gnome-photos/default.nix index 9dc318a0674..774e377ca03 100644 --- a/pkgs/applications/graphics/gnome-photos/default.nix +++ b/pkgs/applications/graphics/gnome-photos/default.nix @@ -36,13 +36,13 @@ stdenv.mkDerivation rec { pname = "gnome-photos"; - version = "40.0"; + version = "42.0"; outputs = [ "out" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1bzi79plw6ji6qlckhxnwfnswy6jpnhzmmyanml2i2xg73hp6bg0"; + sha256 = "JcsoFCUZnex7BF8T8y+PlgNMsMuLlNlvnf+vT1vmhVE="; }; patches = [ diff --git a/pkgs/applications/graphics/gpicview/default.nix b/pkgs/applications/graphics/gpicview/default.nix index edafa5612a2..ae1e64297bd 100644 --- a/pkgs/applications/graphics/gpicview/default.nix +++ b/pkgs/applications/graphics/gpicview/default.nix @@ -23,7 +23,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A simple and fast image viewer for X"; homepage = "http://lxde.sourceforge.net/gpicview/"; - repositories.git = "git://lxde.git.sourceforge.net/gitroot/lxde/gpicview"; license = licenses.gpl2; maintainers = with maintainers; [ lovek323 ]; platforms = platforms.unix; diff --git a/pkgs/applications/graphics/gthumb/default.nix b/pkgs/applications/graphics/gthumb/default.nix index d412c6fded8..e680554a711 100644 --- a/pkgs/applications/graphics/gthumb/default.nix +++ b/pkgs/applications/graphics/gthumb/default.nix @@ -33,11 +33,11 @@ stdenv.mkDerivation rec { pname = "gthumb"; - version = "3.12.0"; + version = "3.12.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-Pe/8AwOE5ktXNhxDfHm0ga4Uie9EyHroVugbsQ2OOD8="; + sha256 = "sha256-ZDBmOgAHBpbGgeXru4AQc/1GpG1oEsKeL5pPgRr6Gfw="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix index 12d6332af5d..0958676cc99 100644 --- a/pkgs/applications/graphics/inkscape/default.nix +++ b/pkgs/applications/graphics/inkscape/default.nix @@ -5,6 +5,7 @@ , cairo , cmake , fetchurl +, fetchpatch , gettext , ghostscript , glib @@ -71,6 +72,13 @@ stdenv.mkDerivation rec { # e.g., those from the "Effects" menu. python3 = "${python3Env}/bin/python"; }) + + # Fix build with poppler 22.03 + # https://gitlab.com/inkscape/inkscape/-/merge_requests/4187 + (fetchpatch { + url = "https://gitlab.com/inkscape/inkscape/-/commit/a18c57ffff313fd08bc8a44f6b6bf0b01d7e9b75.patch"; + sha256 = "UZb8ZTtfA5667uo5ZlVQ5vPowiSgd4ItAJ9U1BOsRQg="; + }) ]; postPatch = '' diff --git a/pkgs/applications/graphics/inkscape/extensions.nix b/pkgs/applications/graphics/inkscape/extensions.nix index 63010a19f14..08260c968cf 100644 --- a/pkgs/applications/graphics/inkscape/extensions.nix +++ b/pkgs/applications/graphics/inkscape/extensions.nix @@ -9,8 +9,8 @@ applytransforms = callPackage ./extensions/applytransforms { }; hexmap = stdenv.mkDerivation { - name = "hexmap"; - version = "2020-06-06"; + pname = "hexmap"; + version = "unstable-2020-06-06"; src = fetchFromGitHub { owner = "lifelike"; diff --git a/pkgs/applications/graphics/mtpaint/default.nix b/pkgs/applications/graphics/mtpaint/default.nix index 3565173285b..0acc873b396 100644 --- a/pkgs/applications/graphics/mtpaint/default.nix +++ b/pkgs/applications/graphics/mtpaint/default.nix @@ -4,14 +4,12 @@ }: stdenv.mkDerivation rec { - p_name = "mtPaint"; - ver_maj = "3.50"; - ver_min = "01"; - name = "${p_name}-${ver_maj}.${ver_min}"; + pname = "mtPaint"; + version = "3.50.01"; src = fetchFromGitHub { owner = "wjaguar"; - repo = p_name; + repo = "mtPaint"; rev = "a4675ff5cd9fcd57d291444cb9f332b48f11243f"; sha256 = "04wqxz8i655gz5rnz90cksy8v6m2jhcn1j8rzhqpp5xhawlmq24y"; }; diff --git a/pkgs/applications/graphics/nomacs/default.nix b/pkgs/applications/graphics/nomacs/default.nix index 9f3c1e453f8..29b049ac55b 100644 --- a/pkgs/applications/graphics/nomacs/default.nix +++ b/pkgs/applications/graphics/nomacs/default.nix @@ -66,7 +66,6 @@ mkDerivation rec { description = "Qt-based image viewer"; maintainers = with lib.maintainers; [ mindavi ]; license = licenses.gpl3Plus; - repositories.git = "https://github.com/nomacs/nomacs.git"; inherit (qtbase.meta) platforms; }; } diff --git a/pkgs/applications/kde/kitinerary.nix b/pkgs/applications/kde/kitinerary.nix index f69e705bb2f..83763ba965a 100644 --- a/pkgs/applications/kde/kitinerary.nix +++ b/pkgs/applications/kde/kitinerary.nix @@ -1,4 +1,4 @@ -{ mkDerivation, lib, extra-cmake-modules +{ mkDerivation, fetchpatch, lib, extra-cmake-modules , qtdeclarative, ki18n, kmime, kpkpass , poppler, kcontacts, kcalendarcore , shared-mime-info @@ -10,6 +10,15 @@ mkDerivation { license = with lib.licenses; [ lgpl21 ]; maintainers = [ lib.maintainers.bkchr ]; }; + + patches = [ + # Fix build with poppler 22.03 + (fetchpatch { + url = "https://github.com/KDE/kitinerary/commit/e21d1ffc5fa81a636245f49c97fe7cda63abbb1d.patch"; + sha256 = "1/zgq9QIOCPplqplDqgpoqzuYFf/m1Ixxawe50t2F04="; + }) + ]; + nativeBuildInputs = [ extra-cmake-modules shared-mime-info # for update-mime-database diff --git a/pkgs/applications/misc/1password-gui/default.nix b/pkgs/applications/misc/1password-gui/default.nix index 15622d799a4..311ef3037bb 100644 --- a/pkgs/applications/misc/1password-gui/default.nix +++ b/pkgs/applications/misc/1password-gui/default.nix @@ -101,6 +101,7 @@ in stdenv.mkDerivation rec { mkdir -p $out/share/polkit-1/actions substitute com.1password.1Password.policy.tpl $out/share/polkit-1/actions/com.1password.1Password.policy --replace "\''${POLICY_OWNERS}" "${policyOwners}" '') + '' + # Icons cp -a resources/icons $out/share diff --git a/pkgs/applications/misc/almanah/default.nix b/pkgs/applications/misc/almanah/default.nix index a4ef9b34318..5e4f4482354 100644 --- a/pkgs/applications/misc/almanah/default.nix +++ b/pkgs/applications/misc/almanah/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl +, fetchpatch , atk , cairo , desktop-file-utils @@ -32,6 +34,16 @@ stdenv.mkDerivation rec { sha256 = "lMpDQOxlGljP66APR49aPbTZnfrGakbQ2ZcFvmiPMFo="; }; + patches = [ + # Fix build with meson 0.61 + # data/meson.build:2:5: ERROR: Function does not take positional arguments. + # Patch taken from https://gitlab.gnome.org/GNOME/almanah/-/merge_requests/13 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/almanah/-/commit/8c42a67695621d1e30cec933a04e633e6030bbaf.patch"; + sha256 = "qyqFgYSu4emFDG/Mjwz1bZb3v3/4gwQSKmGCoPPNYCQ="; + }) + ]; + nativeBuildInputs = [ desktop-file-utils gettext diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix index 56485e69d42..d713afc96a3 100644 --- a/pkgs/applications/misc/dbeaver/default.nix +++ b/pkgs/applications/misc/dbeaver/default.nix @@ -16,9 +16,10 @@ , maven , webkitgtk , glib-networking +, javaPackages }: -stdenv.mkDerivation rec { +javaPackages.mavenfod rec { pname = "dbeaver"; version = "22.0.1"; # When updating also update fetchedMavenDeps.sha256 @@ -29,6 +30,10 @@ stdenv.mkDerivation rec { sha256 = "sha256-IG5YWwq3WVzQBvAslQ9Z2Ou6ADzf4n9NkQCtH4Jgkac="; }; + + mvnSha256 = "7Sm1hAoi5xc4MLONOD8ySLLkpao0qmlMRRva/8zR210="; + mvnParameters = "-P desktop,all-platforms"; + fetchedMavenDeps = stdenv.mkDerivation { name = "dbeaver-${version}-maven-deps"; inherit src; @@ -37,7 +42,7 @@ stdenv.mkDerivation rec { maven ]; - buildPhase = "mvn package -Dmaven.repo.local=$out/.m2 -P desktop,all-platforms"; + buildPhase = "mvn package -Dmaven.repo.local=$out/.m2 ${mvnParameters}"; # keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside installPhase = '' @@ -88,14 +93,6 @@ stdenv.mkDerivation rec { }) ]; - buildPhase = '' - runHook preBuild - - mvn package --offline -Dmaven.repo.local=$(cp -dpR ${fetchedMavenDeps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2 -P desktop,all-platforms - - runHook postBuild - ''; - installPhase = let productTargetPath = "product/community/target/products/org.jkiss.dbeaver.core.product"; diff --git a/pkgs/applications/misc/eos-installer/default.nix b/pkgs/applications/misc/eos-installer/default.nix index 02d629412a3..8234a77ba14 100644 --- a/pkgs/applications/misc/eos-installer/default.nix +++ b/pkgs/applications/misc/eos-installer/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitHub , autoconf, autoconf-archive, automake, glib, intltool, libtool, pkg-config -, gnome, gnupg, gtk3, udisks +, gnome-desktop, gnupg, gtk3, udisks }: stdenv.mkDerivation rec { @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoconf autoconf-archive automake glib intltool libtool pkg-config ]; - buildInputs = [ gnome.gnome-desktop gtk3 udisks ]; + buildInputs = [ gnome-desktop gtk3 udisks ]; preConfigure = '' ./autogen.sh diff --git a/pkgs/applications/misc/lutris/fhsenv.nix b/pkgs/applications/misc/lutris/fhsenv.nix index 88b3d253114..0ff5b4a6a62 100644 --- a/pkgs/applications/misc/lutris/fhsenv.nix +++ b/pkgs/applications/misc/lutris/fhsenv.nix @@ -7,7 +7,7 @@ let qt5Deps = pkgs: with pkgs.qt5; [ qtbase qtmultimedia ]; - gnomeDeps = pkgs: with pkgs; [ gnome.zenity gtksourceview gnome.gnome-desktop gnome.libgnome-keyring webkitgtk ]; + gnomeDeps = pkgs: with pkgs; [ gnome.zenity gtksourceview gnome-desktop gnome.libgnome-keyring webkitgtk ]; xorgDeps = pkgs: with pkgs.xorg; [ libX11 libXrender libXrandr libxcb libXmu libpthreadstubs libXext libXdmcp libXxf86vm libXinerama libSM libXv libXaw libXi libXcursor libXcomposite diff --git a/pkgs/applications/misc/mupdf/1.17.nix b/pkgs/applications/misc/mupdf/1.17.nix index 95e9c7c3307..ec978b9fc3a 100644 --- a/pkgs/applications/misc/mupdf/1.17.nix +++ b/pkgs/applications/misc/mupdf/1.17.nix @@ -82,7 +82,6 @@ in stdenv.mkDerivation rec { meta = with lib; { homepage = "https://mupdf.com"; - repositories.git = "git://git.ghostscript.com/mupdf.git"; description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C"; license = licenses.agpl3Plus; maintainers = with maintainers; [ vrthra fpletz ]; diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix index 4877051fd98..102c80f6d12 100644 --- a/pkgs/applications/misc/mupdf/default.nix +++ b/pkgs/applications/misc/mupdf/default.nix @@ -111,7 +111,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://mupdf.com"; - repositories.git = "git://git.ghostscript.com/mupdf.git"; description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C"; license = licenses.agpl3Plus; maintainers = with maintainers; [ vrthra fpletz ]; diff --git a/pkgs/applications/misc/nut/default.nix b/pkgs/applications/misc/nut/default.nix index 4694c243b39..41f46ff1c00 100644 --- a/pkgs/applications/misc/nut/default.nix +++ b/pkgs/applications/misc/nut/default.nix @@ -49,7 +49,6 @@ stdenv.mkDerivation rec { It uses a layered approach to connect all of the parts. ''; homepage = "https://networkupstools.org/"; - repositories.git = "https://github.com/networkupstools/nut.git"; platforms = platforms.linux; maintainers = [ maintainers.pierron ]; license = with licenses; [ gpl1Plus gpl2Plus gpl3Plus ]; diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix index eda78c54a10..4dc6f876318 100644 --- a/pkgs/applications/misc/octoprint/default.nix +++ b/pkgs/applications/misc/octoprint/default.nix @@ -34,6 +34,47 @@ let (mkOverride "markdown" "3.1.1" "2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a") (mkOverride "markupsafe" "1.1.1" "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b") + # black uses hash, not sha256 identifier. Newer black version requires newer click version + ( + self: super: { + black = super.black.overridePythonAttrs (oldAttrs: rec { + version = "21.12b0"; + src = oldAttrs.src.override { + inherit version; + hash = "sha256-d7gPaTpWni5SeVhFljTxjfmwuiYluk4MLV2lvkLm8rM="; + }; + doCheck = false; + }); + } + ) + + # tests need network + ( + self: super: { + curio = super.curio.overridePythonAttrs (oldAttrs: rec { + disabledTests = [ + "test_timeout" + "test_ssl_outgoing" + ]; + }); + } + ) + + # tests need network + ( + self: super: { + trio = super.trio.overridePythonAttrs (oldAttrs: rec { + disabledTests = [ + "test_local_address_real" + ]; + disabledTestPaths = [ + "trio/tests/test_exports.py" + "trio/tests/test_socket.py" + ]; + }); + } + ) + # Requires flask<2, cannot mkOverride because tests need to be disabled ( self: super: { @@ -400,7 +441,7 @@ let homepage = "https://octoprint.org/"; description = "The snappy web interface for your 3D printer"; license = licenses.agpl3Only; - maintainers = with maintainers; [ abbradar gebner WhittlesJr ]; + maintainers = with maintainers; [ abbradar gebner WhittlesJr gador ]; }; }; } diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix index d0b2c85f107..63923188db7 100644 --- a/pkgs/applications/misc/orca/default.nix +++ b/pkgs/applications/misc/orca/default.nix @@ -34,13 +34,13 @@ buildPythonApplication rec { pname = "orca"; - version = "41.2"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1/Jy6ps3+9ZFTkAh5GU4okcibhwKxXDW4rhOlxmqKv4="; + sha256 = "LCUXmrQbJgsY8f+Jm+uv5olDi0nf/SEd78l2olCT9zo="; }; patches = [ diff --git a/pkgs/applications/misc/phoc/default.nix b/pkgs/applications/misc/phoc/default.nix index 7acdcdf02c4..e1dd464edbc 100644 --- a/pkgs/applications/misc/phoc/default.nix +++ b/pkgs/applications/misc/phoc/default.nix @@ -9,6 +9,7 @@ , wrapGAppsHook , libinput , gnome +, gnome-desktop , glib , gtk3 , wayland @@ -68,7 +69,7 @@ in stdenv.mkDerivation rec { libinput glib gtk3 - gnome.gnome-desktop + gnome-desktop # For keybindings settings schemas gnome.mutter wayland diff --git a/pkgs/applications/misc/taskwarrior-tui/default.nix b/pkgs/applications/misc/taskwarrior-tui/default.nix index 036421bbaca..7d730421398 100644 --- a/pkgs/applications/misc/taskwarrior-tui/default.nix +++ b/pkgs/applications/misc/taskwarrior-tui/default.nix @@ -5,19 +5,19 @@ rustPlatform.buildRustPackage rec { pname = "taskwarrior-tui"; - version = "0.21.0"; + version = "0.21.1"; src = fetchFromGitHub { owner = "kdheepak"; repo = "taskwarrior-tui"; rev = "v${version}"; - sha256 = "sha256-HHYObAeJtryZWRV3T+FXRz0TgBIfw/kVL9jwaQmZcEA="; + sha256 = "sha256-fgoK7Y+3h2VFfP8yiR8JM8Xf7UJbkX9PO1RoJRoYLW4="; }; # Because there's a test that requires terminal access doCheck = false; - cargoSha256 = "sha256-oRREvqQLigpfpnTJgVZjAwAvmUs9YSZm+D5xyFYvdb4="; + cargoSha256 = "sha256-3rDvla1mCcQclALbomUTvE3aLzsMeIjcIbEv4KfCKZE="; meta = with lib; { description = "A terminal user interface for taskwarrior "; diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index 9b18590817f..96a4dac173f 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -114,7 +114,7 @@ let }; base = rec { - name = "${packageName}-unwrapped-${version}"; + pname = "${packageName}-unwrapped"; inherit (upstream-info) version; inherit packageName buildType buildPath; diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix index 0202ead4605..e8d9a13f9ac 100644 --- a/pkgs/applications/networking/browsers/chromium/default.nix +++ b/pkgs/applications/networking/browsers/chromium/default.nix @@ -157,8 +157,8 @@ let else browser; in stdenv.mkDerivation { - name = lib.optionalString ungoogled "ungoogled-" - + "chromium${suffix}-${version}"; + pname = lib.optionalString ungoogled "ungoogled-" + + "chromium${suffix}"; inherit version; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/browsers/firefox/librewolf/src.json b/pkgs/applications/networking/browsers/firefox/librewolf/src.json index 9e40e459d32..f2435308948 100644 --- a/pkgs/applications/networking/browsers/firefox/librewolf/src.json +++ b/pkgs/applications/networking/browsers/firefox/librewolf/src.json @@ -1,11 +1,11 @@ { - "packageVersion": "98.0-1", + "packageVersion": "98.0.2-1", "source": { - "rev": "98.0-1", - "sha256": "1z42a42d6z0gyc5i0pamcqq5bak6pgg1ldvlrjdyjnpvda74s0fn" + "rev": "98.0.2-1", + "sha256": "033l6mjmhfhf7b8p652s7ziw8zz725082hhzzvr3ahi498wshkx6" }, "firefox": { - "version": "98.0", - "sha512": "5b9186dd2a5dee5f2d2a2ce156fc06e2073cf71a70891a294cf3358218592f19ec3413d33b68d6f38e3cc5f940213e590a188e2b6efc39f416e90a55f89bfd9b" + "version": "98.0.2", + "sha512": "b567b53fcdc08491063d535545f558ea56ec5be02ca540661de116986245b79f509e0103cea5661faf9f4b3d30b67758ebdb4b30401e260ee27cbb300203f36e" } } diff --git a/pkgs/applications/networking/cisco-packet-tracer/8.nix b/pkgs/applications/networking/cisco-packet-tracer/8.nix index 1267a061429..9bc89001745 100644 --- a/pkgs/applications/networking/cisco-packet-tracer/8.nix +++ b/pkgs/applications/networking/cisco-packet-tracer/8.nix @@ -27,7 +27,7 @@ }: let - version = "8.0.1"; + version = "8.1.1"; ptFiles = stdenv.mkDerivation { name = "PacketTracer8Drv"; @@ -36,7 +36,7 @@ let dontUnpack = true; src = requireFile { name = "CiscoPacketTracer_${builtins.replaceStrings ["."] [""] version}_Ubuntu_64bit.deb"; - sha256 = "77a25351b016faed7c78959819c16c7013caa89c6b1872cb888cd96edd259140"; + sha256 = "08c53171aa0257a64ae7de1540f242214033cfa4f879fbc9fed5cc0d32232abf"; url = "https://www.netacad.com"; }; @@ -72,6 +72,7 @@ let libXrandr libXrender libXScrnSaver + libXtst xcbutilimage xcbutilkeysyms xcbutilrenderutil diff --git a/pkgs/applications/networking/cluster/argocd/default.nix b/pkgs/applications/networking/cluster/argocd/default.nix index 042249d547f..211c2ce211e 100644 --- a/pkgs/applications/networking/cluster/argocd/default.nix +++ b/pkgs/applications/networking/cluster/argocd/default.nix @@ -2,20 +2,20 @@ buildGoModule rec { pname = "argocd"; - version = "2.3.1"; + version = "2.3.2"; tag = "v${version}"; # Update commit to match the tag above # TODO make updadeScript - commit = "b65c1699fa2a2daa031483a3890e6911eac69068"; + commit = "ecc2af9dcaa12975e654cde8cbbeaffbb315f75c"; src = fetchFromGitHub { owner = "argoproj"; repo = "argo-cd"; rev = tag; - sha256 = "sha256-YijhJz7m5wy8kR9V6IHSNYjiWh7H2ph6il9nMsrePOE="; + sha256 = "sha256-n+C4l4U3cDU+fgCnGWOYLdyjknw7n/xPEtC1i8AaU4o="; }; - vendorSha256 = "sha256-uA9sOMuVHKRRhSGoLyoKcUYU6NxtprVUITvVC+tot1g="; + vendorSha256 = "sha256-Km+1o6yuuxJs+DNTQ/XVTUFurD5gM5ohwDc7MwJuu5s="; # Set target as ./cmd per release-cli # https://github.com/argoproj/argo-cd/blob/master/Makefile#L222 diff --git a/pkgs/applications/networking/cluster/flink/default.nix b/pkgs/applications/networking/cluster/flink/default.nix index 36940d7441d..b5250a3bd7f 100644 --- a/pkgs/applications/networking/cluster/flink/default.nix +++ b/pkgs/applications/networking/cluster/flink/default.nix @@ -34,6 +34,5 @@ stdenv.mkDerivation rec { license = licenses.asl20; platforms = platforms.all; maintainers = with maintainers; [ mbode ]; - repositories.git = "git://git.apache.org/flink.git"; }; } diff --git a/pkgs/applications/networking/cluster/kontemplate/default.nix b/pkgs/applications/networking/cluster/kontemplate/default.nix index 87ae71f6a48..10c161f45d0 100644 --- a/pkgs/applications/networking/cluster/kontemplate/default.nix +++ b/pkgs/applications/networking/cluster/kontemplate/default.nix @@ -20,7 +20,6 @@ buildGoPackage rec { license = licenses.gpl3; maintainers = with maintainers; [ mbode tazjin ]; platforms = platforms.unix; - repositories.git = "git://github.com/tazjin/kontemplate.git"; longDescription = '' Kontemplate is a simple CLI tool that can take sets of diff --git a/pkgs/applications/networking/cluster/nerdctl/default.nix b/pkgs/applications/networking/cluster/nerdctl/default.nix index 48ac2dc983e..936e7682348 100644 --- a/pkgs/applications/networking/cluster/nerdctl/default.nix +++ b/pkgs/applications/networking/cluster/nerdctl/default.nix @@ -10,16 +10,16 @@ buildGoModule rec { pname = "nerdctl"; - version = "0.17.1"; + version = "0.18.0"; src = fetchFromGitHub { owner = "containerd"; repo = pname; rev = "v${version}"; - sha256 = "sha256-fWev5KgJEuL2pDm17kxdqRKo7t3+dDt5UD5iTHneJSY="; + sha256 = "sha256-gkfy/tKzh6EO+nyjuiU3InSErKvGcJp/X7oqYk0Msr0="; }; - vendorSha256 = "sha256-7L5xA/2uQnu10QGZn49K3oJf4HBEvt8q/sOR6BRXlo0="; + vendorSha256 = "sha256-hjhZYNpqt9yFNrDVpFlguESUAAqU+AhpUQTCvyMadPk="; nativeBuildInputs = [ makeWrapper installShellFiles ]; diff --git a/pkgs/applications/networking/cluster/popeye/default.nix b/pkgs/applications/networking/cluster/popeye/default.nix index e70856ef9d9..25fa2c4adc5 100644 --- a/pkgs/applications/networking/cluster/popeye/default.nix +++ b/pkgs/applications/networking/cluster/popeye/default.nix @@ -32,6 +32,5 @@ buildGoModule rec { changelog = "https://github.com/derailed/popeye/releases/tag/v${version}"; license = licenses.asl20; maintainers = [ maintainers.bryanasdev000 ]; - platforms = platforms.linux; }; } diff --git a/pkgs/applications/networking/cluster/spark/default.nix b/pkgs/applications/networking/cluster/spark/default.nix index 7770f98afe5..69cdcc8d131 100644 --- a/pkgs/applications/networking/cluster/spark/default.nix +++ b/pkgs/applications/networking/cluster/spark/default.nix @@ -63,7 +63,6 @@ let license = lib.licenses.asl20; platforms = lib.platforms.all; maintainers = with maintainers; [ thoughtpolice offline kamilchm illustris ]; - repositories.git = "git://git.apache.org/spark.git"; }; }; in diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix index f4a2306017a..96d3e773c88 100644 --- a/pkgs/applications/networking/flexget/default.nix +++ b/pkgs/applications/networking/flexget/default.nix @@ -5,14 +5,14 @@ python3Packages.buildPythonApplication rec { pname = "flexget"; - version = "3.3.3"; + version = "3.3.4"; # Fetch from GitHub in order to use `requirements.in` src = fetchFromGitHub { owner = "flexget"; repo = "flexget"; rev = "v${version}"; - hash = "sha256-a76x4Klad3lct2M9RxSroUYKmEX7lPqDN+dFvfjavo8="; + hash = "sha256-/nuY8+/RMM7ASke+NXb95yu+FeQHawCdgqVsBrk/KZ8="; }; postPatch = '' diff --git a/pkgs/applications/networking/instant-messengers/chatty/default.nix b/pkgs/applications/networking/instant-messengers/chatty/default.nix index f9cec37a506..97282c76d04 100644 --- a/pkgs/applications/networking/instant-messengers/chatty/default.nix +++ b/pkgs/applications/networking/instant-messengers/chatty/default.nix @@ -11,7 +11,7 @@ , evolution-data-server , feedbackd , glibmm -, gnome +, gnome-desktop , gspell , gtk3 , json-glib @@ -57,7 +57,7 @@ stdenv.mkDerivation rec { evolution-data-server feedbackd glibmm - gnome.gnome-desktop + gnome-desktop gspell gtk3 json-glib diff --git a/pkgs/applications/networking/irc/quassel/default.nix b/pkgs/applications/networking/irc/quassel/default.nix index d218f114143..4bc930b12d0 100644 --- a/pkgs/applications/networking/irc/quassel/default.nix +++ b/pkgs/applications/networking/irc/quassel/default.nix @@ -88,7 +88,6 @@ in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec { ''; license = licenses.gpl3; maintainers = with maintainers; [ ttuegel ]; - repositories.git = "https://github.com/quassel/quassel.git"; inherit (qtbase.meta) platforms; }; } diff --git a/pkgs/applications/networking/lieer/default.nix b/pkgs/applications/networking/lieer/default.nix index 420b9b28ccf..a9bf177128d 100644 --- a/pkgs/applications/networking/lieer/default.nix +++ b/pkgs/applications/networking/lieer/default.nix @@ -33,7 +33,6 @@ python3Packages.buildPythonApplication rec { GMail account. ''; homepage = "https://lieer.gaute.vetsj.com/"; - repositories.git = "https://github.com/gauteh/lieer.git"; license = licenses.gpl3Plus; maintainers = with maintainers; [ flokli kaiha ]; }; diff --git a/pkgs/applications/networking/mailreaders/alot/default.nix b/pkgs/applications/networking/mailreaders/alot/default.nix index 3d09711fb3c..cb49829dce0 100644 --- a/pkgs/applications/networking/mailreaders/alot/default.nix +++ b/pkgs/applications/networking/mailreaders/alot/default.nix @@ -9,13 +9,7 @@ , withManpage ? false }: -with python3.pkgs; -let - notmuch2 = callPackage ./notmuch.nix { - inherit notmuch; - }; -in -buildPythonApplication rec { +with python3.pkgs; buildPythonApplication rec { pname = "alot"; version = "0.10"; diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix index 4d4e33c6373..db7771bc3c9 100644 --- a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix +++ b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "evolution-ews"; - version = "3.42.4"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "gpIW4GBXT0GCtV7Q8EfdEeK56gCACi+PJ/jbwQkVQbk="; + sha256 = "q4Cg6eLOdn+56EruBl0Ote9QLNebLiykUeyoQpIpeoA="; }; nativeBuildInputs = [ cmake gettext intltool pkg-config ]; diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix index 9aac3db3594..2fae122fc1b 100644 --- a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix +++ b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ lib +, stdenv , cmake , ninja , intltool @@ -25,6 +26,7 @@ , gcr , sqlite , gnome +, gnome-desktop , librsvg , gdk-pixbuf , libsecret @@ -32,6 +34,8 @@ , nspr , icu , libcanberra-gtk3 +, geocode-glib +, cmark , bogofilter , gst_all_1 , procps @@ -42,11 +46,11 @@ stdenv.mkDerivation rec { pname = "evolution"; - version = "3.42.4"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "+oprem1GsinbXfIv3nZCVFIjV/4b7NexjlNt/piJCmU="; + sha256 = "3yHT31Ik36hC6ikO/82QKv1LFBhgik37aQejt9TZlPk="; }; nativeBuildInputs = [ @@ -68,7 +72,7 @@ stdenv.mkDerivation rec { gdk-pixbuf glib glib-networking - gnome.gnome-desktop + gnome-desktop gsettings-desktop-schemas gst_all_1.gst-plugins-base gst_all_1.gstreamer @@ -77,6 +81,8 @@ stdenv.mkDerivation rec { highlight icu libcanberra-gtk3 + geocode-glib + cmark libgdata libgweather libical @@ -106,6 +112,7 @@ stdenv.mkDerivation rec { "-DWITH_SA_LEARN=${spamassassin}/bin/sa-learn" "-DWITH_BOGOFILTER=${bogofilter}/bin/bogofilter" "-DWITH_OPENLDAP=${openldap}" + "-DWITH_GWEATHER4=ON" ]; requiredSystemFeatures = [ diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix index 184804a8788..e89216802e5 100644 --- a/pkgs/applications/networking/mailreaders/notmuch/default.nix +++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix @@ -62,7 +62,12 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; makeFlags = [ "V=1" ]; - outputs = [ "out" "man" "info" ] + postConfigure = '' + mkdir ${placeholder "bindingconfig"} + cp bindings/python-cffi/_notmuch_config.py ${placeholder "bindingconfig"}/ + ''; + + outputs = [ "out" "man" "info" "bindingconfig" ] ++ lib.optional withEmacs "emacs" ++ lib.optional withRuby "ruby"; diff --git a/pkgs/applications/office/autokey/remove-requires-dbus-python.patch b/pkgs/applications/office/autokey/remove-requires-dbus-python.patch deleted file mode 100644 index 73372e43529..00000000000 --- a/pkgs/applications/office/autokey/remove-requires-dbus-python.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/setup.py -+++ b/setup.py -@@ -71,7 +71,7 @@ - 'console_scripts': ['autokey-gtk=autokey.gtkui.__main__:main'] - }, - scripts=['autokey-qt', 'autokey-run', 'autokey-shell'], -- install_requires=['dbus-python', 'pyinotify', 'python3-xlib'], -+ install_requires=['pyinotify', 'python-xlib'], - classifiers=[ - 'Development Status :: 4 - Beta', - 'Intended Audience :: Developers', diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix index 1fe7598d0e1..5ebde5e10de 100644 --- a/pkgs/applications/office/libreoffice/default.nix +++ b/pkgs/applications/office/libreoffice/default.nix @@ -82,7 +82,15 @@ in (mkDrv rec { tar -xf ${srcs.translations} ''; - patches = [ ./skip-failed-test-with-icu70.patch ]; + patches = [ + ./skip-failed-test-with-icu70.patch + + # Fix build with poppler 22.03 + (fetchurl { + url = "https://github.com/archlinux/svntogit-packages/raw/f82958b9538f86e41b51f1ba7134968d2f3788d1/trunk/poppler-22.03.0.patch"; + sha256 = "5h4qJmx6Q3Q3dHUlSi8JXBziN2mAswGVWk5aDTLTwls="; + }) + ]; ### QT/KDE # diff --git a/pkgs/applications/office/scribus/unstable.nix b/pkgs/applications/office/scribus/unstable.nix index 21adb90cab9..754c9ba03d4 100644 --- a/pkgs/applications/office/scribus/unstable.nix +++ b/pkgs/applications/office/scribus/unstable.nix @@ -54,6 +54,36 @@ mkDerivation rec { url = "https://github.com/scribusproject/scribus/commit/68ec41169eaceea4a6e1d6f359762a191c7e61d5.patch"; sha256 = "sha256-xhp65qVvaof0md1jb3XHZw7uFX1RtNxPfUOaVnvZV1Y="; }) + # For Poppler 22.02 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/85c0dff3422fa3c26fbc2e8d8561f597ec24bd92.patch"; + sha256 = "YR0ii09EVU8Qazz6b8KAIWsUMTwPIwO8JuQPymAWKdw="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f75c1613db67f4067643d0218a2db3235e42ec9f.patch"; + sha256 = "vJU8HsKHE3oXlhcXQk9uCYINPYVPF5IGmrWYFQ6Py5c="; + }) + # For Poppler 22.03 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/553d1fd5f76ffb3743583b88c78a7232b076a965.patch"; + sha256 = "56JrEG3eCzyALTH04yjzurKRj2PocpjO6b4PusMRxjY="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/1f82e38be0782b065910f5fb4cece23f690349ae.patch"; + sha256 = "qektUfel5KeA327D3THyqi8dznP1SQQFToUC5Kd0+W4="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f19410ac3b27e33dd62105746784e61e85b90a1d.patch"; + sha256 = "JHdgntYcioYatPeqpmym3c9dORahj0CinGOzbGtA4ds="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/e013e8126d2100e8e56dea5b836ad43275429389.patch"; + sha256 = "+siPNtJq9Is9V2PgADeQJB+b4lkl5g8uk6zKBu10Jqw="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/48263954a7dee0be815b00f417ae365ab26cdd85.patch"; + sha256 = "1WE9kALFw79bQH88NUafXaZ1Y/vJEKTIWxlk5c+opsQ="; + }) ]; nativeBuildInputs = [ diff --git a/pkgs/applications/radio/gnuradio/wrapper.nix b/pkgs/applications/radio/gnuradio/wrapper.nix index 4cbccbd5181..6765c877437 100644 --- a/pkgs/applications/radio/gnuradio/wrapper.nix +++ b/pkgs/applications/radio/gnuradio/wrapper.nix @@ -50,7 +50,8 @@ let ; pythonEnv = unwrapped.python.withPackages(ps: pythonPkgs); - name = (lib.appendToName "wrapped" unwrapped).name; + pname = unwrapped.pname + "-wrapped"; + inherit (unwrapped) version; makeWrapperArgs = builtins.concatStringsSep " " ([ ] # Emulating wrapGAppsHook & wrapQtAppsHook working together @@ -59,7 +60,7 @@ let || (unwrapped.hasFeature "gr-qtgui") ) [ "--prefix" "XDG_DATA_DIRS" ":" "$out/share" - "--prefix" "XDG_DATA_DIRS" ":" "$out/share/gsettings-schemas/${name}" + "--prefix" "XDG_DATA_DIRS" ":" "$out/share/gsettings-schemas/${pname}" "--prefix" "XDG_DATA_DIRS" ":" "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" "--prefix" "XDG_DATA_DIRS" ":" "${hicolor-icon-theme}/share" # Needs to run `gsettings` on startup, see: @@ -135,7 +136,7 @@ let }; self = if doWrap then stdenv.mkDerivation { - inherit name passthru; + inherit pname version passthru; buildInputs = [ makeWrapper xorg.lndir diff --git a/pkgs/applications/science/logic/why3/with-provers.nix b/pkgs/applications/science/logic/why3/with-provers.nix index 826473b38e9..ae0acb1e525 100644 --- a/pkgs/applications/science/logic/why3/with-provers.nix +++ b/pkgs/applications/science/logic/why3/with-provers.nix @@ -12,7 +12,7 @@ let configAwkScript = runCommand "why3-conf.awk" { inherit provers; } ''; in stdenv.mkDerivation { - name = "${why3.name}-with-provers"; + pname = "${why3.pname}-with-provers"; nativeBuildInputs = [ makeWrapper ]; buildInputs = [ why3 ] ++ provers; diff --git a/pkgs/applications/science/robotics/inav-configurator/default.nix b/pkgs/applications/science/robotics/inav-configurator/default.nix index 40914a8ac1a..ec605a3a97e 100644 --- a/pkgs/applications/science/robotics/inav-configurator/default.nix +++ b/pkgs/applications/science/robotics/inav-configurator/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "inav-configurator"; - version = "3.0.2"; + version = "4.1.0"; src = fetchurl { url = "https://github.com/iNavFlight/inav-configurator/releases/download/${version}/INAV-Configurator_linux64_${version}.tar.gz"; - sha256 = "0v6dcg634wpp9q4ya3mj00j3pg25g62aq209iq2dsvj0a03afbp2"; + sha256 = "sha256-+rPzytnAQcNGbISFBHb4JS9Nqy0C2i36k+EPBvq/mso="; }; icon = fetchurl { diff --git a/pkgs/applications/terminal-emulators/gnome-console/default.nix b/pkgs/applications/terminal-emulators/gnome-console/default.nix new file mode 100644 index 00000000000..9b4b460550f --- /dev/null +++ b/pkgs/applications/terminal-emulators/gnome-console/default.nix @@ -0,0 +1,69 @@ +{ lib +, stdenv +, fetchurl +, gettext +, gnome +, libgtop +, gtk3 +, libhandy +, pcre2 +, vte +, appstream-glib +, desktop-file-utils +, git +, meson +, ninja +, pkg-config +, python3 +, sassc +, wrapGAppsHook +, nixosTests +}: + +stdenv.mkDerivation rec { + pname = "gnome-console"; + version = "42.beta"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-console/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "Lq/shyAhDcwB5HqpihvGx2+xwVU2Xax7/NerFwR36DQ="; + }; + + buildInputs = [ + gettext + libgtop + gnome.nautilus + gtk3 + libhandy + pcre2 + vte + ]; + + nativeBuildInputs = [ + appstream-glib + desktop-file-utils + git + meson + ninja + pkg-config + python3 + sassc + wrapGAppsHook + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + }; + }; + + passthru.tests.test = nixosTests.terminal-emulators.kgx; + + meta = with lib; { + description = "Simple user-friendly terminal emulator for the GNOME desktop"; + homepage = "https://gitlab.gnome.org/GNOME/console"; + license = licenses.gpl3Plus; + maintainers = teams.gnome.members ++ (with maintainers; [ zhaofengli ]); + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/terminal-emulators/kgx/default.nix b/pkgs/applications/terminal-emulators/kgx/default.nix deleted file mode 100644 index 1be9412e8da..00000000000 --- a/pkgs/applications/terminal-emulators/kgx/default.nix +++ /dev/null @@ -1,79 +0,0 @@ -{ lib -, stdenv -, genericBranding ? false -, fetchFromGitLab -, gettext -, gnome -, libgtop -, gtk3 -, libhandy -, pcre2 -, vte -, appstream-glib -, desktop-file-utils -, git -, meson -, ninja -, pkg-config -, python3 -, sassc -, wrapGAppsHook -, nixosTests -}: - -stdenv.mkDerivation { - pname = "kgx"; - version = "unstable-2021-03-13"; - - src = fetchFromGitLab { - domain = "gitlab.gnome.org"; - owner = "ZanderBrown"; - repo = "kgx"; - rev = "105adb6a8d09418a3ce622442aef6ae623dee787"; - sha256 = "0m34y0nbcfkyicb40iv0iqaq6f9r3f66w43lr803j3351nxqvcz2"; - }; - - buildInputs = [ - gettext - libgtop - gnome.nautilus - gtk3 - libhandy - pcre2 - vte - ]; - - nativeBuildInputs = [ - appstream-glib - desktop-file-utils - git - meson - ninja - pkg-config - python3 - sassc - wrapGAppsHook - ]; - - mesonFlags = lib.optional genericBranding "-Dgeneric=true"; - - postPatch = '' - chmod +x build-aux/meson/postinstall.py - patchShebangs build-aux/meson/postinstall.py - ''; - - preFixup = '' - substituteInPlace $out/share/applications/org.gnome.zbrown.KingsCross.desktop \ - --replace "Exec=kgx" "Exec=$out/bin/kgx" - ''; - - passthru.tests.test = nixosTests.terminal-emulators.kgx; - - meta = with lib; { - description = "Simple user-friendly terminal emulator for the GNOME desktop"; - homepage = "https://gitlab.gnome.org/ZanderBrown/kgx"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ zhaofengli ]; - platforms = platforms.linux; - }; -} diff --git a/pkgs/applications/version-management/git-and-tools/cgit/common.nix b/pkgs/applications/version-management/git-and-tools/cgit/common.nix index f0e3e4a29d8..d6b787315b8 100644 --- a/pkgs/applications/version-management/git-and-tools/cgit/common.nix +++ b/pkgs/applications/version-management/git-and-tools/cgit/common.nix @@ -1,5 +1,5 @@ { pname, version, src, gitSrc, buildInputs ? [] -, homepage, repo, description, maintainers +, homepage, description, maintainers }: { lib, stdenv, openssl, zlib, asciidoc, libxml2, libxslt @@ -70,7 +70,6 @@ stdenv.mkDerivation { meta = { inherit homepage description; - repositories.git = repo; license = lib.licenses.gpl2; platforms = lib.platforms.linux; maintainers = maintainers ++ (with lib.maintainers; [ qyliss ]); diff --git a/pkgs/applications/version-management/git-and-tools/cgit/default.nix b/pkgs/applications/version-management/git-and-tools/cgit/default.nix index 7d84b286d5f..f6a0af10230 100644 --- a/pkgs/applications/version-management/git-and-tools/cgit/default.nix +++ b/pkgs/applications/version-management/git-and-tools/cgit/default.nix @@ -20,7 +20,6 @@ callPackage (import ./common.nix rec { buildInputs = [ luajit ]; homepage = "https://git.zx2c4.com/cgit/about/"; - repo = "git://git.zx2c4.com/cgit"; description = "Web frontend for git repositories"; maintainers = with lib.maintainers; [ bjornfor ]; }) {} diff --git a/pkgs/applications/version-management/git-and-tools/cgit/pink.nix b/pkgs/applications/version-management/git-and-tools/cgit/pink.nix index 2719bc12253..75e99a06b1d 100644 --- a/pkgs/applications/version-management/git-and-tools/cgit/pink.nix +++ b/pkgs/applications/version-management/git-and-tools/cgit/pink.nix @@ -18,7 +18,6 @@ callPackage (import ./common.nix rec { }; homepage = "https://git.causal.agency/cgit-pink/about/"; - repo = "https://git.causal.agency/cgit-pink"; description = "cgit fork aiming for better maintenance"; maintainers = with lib.maintainers; [ qyliss sternenseemann ]; }) {} diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix index f22dd77b332..7ae463b9873 100644 --- a/pkgs/applications/video/pitivi/default.nix +++ b/pkgs/applications/video/pitivi/default.nix @@ -12,6 +12,7 @@ , libpeas , librsvg , gnome +, gnome-desktop , libnotify , gsound , meson @@ -52,7 +53,7 @@ python3Packages.buildPythonApplication rec { gtk3 libpeas librsvg - gnome.gnome-desktop + gnome-desktop gsound gnome.adwaita-icon-theme gsettings-desktop-schemas diff --git a/pkgs/applications/video/qmplay2/default.nix b/pkgs/applications/video/qmplay2/default.nix index 9621b8864c9..12864d3b40a 100644 --- a/pkgs/applications/video/qmplay2/default.nix +++ b/pkgs/applications/video/qmplay2/default.nix @@ -22,13 +22,13 @@ }: stdenv.mkDerivation rec { pname = "qmplay2"; - version = "21.12.24"; + version = "22.03.19"; src = fetchFromGitHub { owner = "zaps166"; repo = "QMPlay2"; rev = version; - sha256 = "sha256-SHReKh+M1rgSIiweYFgVvwMeKWeQD52S4KxEiTsyHrI="; + sha256 = "sha256-+EIv74dMm0zxZcCfa5wR6FJNJl5Xaes+/dCRQEBqFeo="; fetchSubmodules = true; }; diff --git a/pkgs/applications/virtualization/podman-tui/default.nix b/pkgs/applications/virtualization/podman-tui/default.nix index cfeee8a8718..7a8ed6fed28 100644 --- a/pkgs/applications/virtualization/podman-tui/default.nix +++ b/pkgs/applications/virtualization/podman-tui/default.nix @@ -4,17 +4,20 @@ , buildGoModule , btrfs-progs , gpgme +, libassuan , lvm2 +, testVersion +, podman-tui }: buildGoModule rec { pname = "podman-tui"; - version = "0.1.0"; + version = "0.2.0"; src = fetchFromGitHub { owner = "containers"; repo = "podman-tui"; rev = "v${version}"; - sha256 = "sha256-qPQSu6l1WkX6sddVr5h1DqKQCyw6vy8S6lXC/ZO4DL8="; + sha256 = "sha256-y5bFr31CQ4JES6tjvThyy7qmoKFC59uwtDMG5r+r8K4="; }; vendorSha256 = null; @@ -24,12 +27,17 @@ buildGoModule rec { buildInputs = [ btrfs-progs gpgme + libassuan lvm2 ]; ldflags = [ "-s" "-w" ]; - subPackages = [ "." ]; + passthru.tests.version = testVersion { + package = podman-tui; + command = "podman-tui version"; + version = "v${version}"; + }; meta = with lib; { homepage = "https://github.com/containers/podman-tui"; diff --git a/pkgs/applications/window-managers/phosh/default.nix b/pkgs/applications/window-managers/phosh/default.nix index 2c01a37aa43..90155fbca1f 100644 --- a/pkgs/applications/window-managers/phosh/default.nix +++ b/pkgs/applications/window-managers/phosh/default.nix @@ -14,6 +14,7 @@ , glib , gtk3 , gnome +, gnome-desktop , gcr , pam , systemd @@ -63,7 +64,7 @@ stdenv.mkDerivation rec { networkmanager polkit gnome.gnome-control-center - gnome.gnome-desktop + gnome-desktop gnome.gnome-session gtk3 pam diff --git a/pkgs/build-support/fetchpatch/default.nix b/pkgs/build-support/fetchpatch/default.nix index 6e25b2d6ecc..d46162c97ff 100644 --- a/pkgs/build-support/fetchpatch/default.nix +++ b/pkgs/build-support/fetchpatch/default.nix @@ -9,7 +9,8 @@ let # 0.3.4 would change hashes: https://github.com/NixOS/nixpkgs/issues/25154 patchutils = buildPackages.patchutils_0_3_3; in -{ stripLen ? 0 +{ relative ? null +, stripLen ? 0 , extraPrefix ? null , excludes ? [] , includes ? [] @@ -17,7 +18,18 @@ in , postFetch ? "" , ... }@args: - +let + args' = if relative != null then { + stripLen = 1 + lib.length (lib.splitString "/" relative) + stripLen; + extraPrefix = if extraPrefix != null then extraPrefix else ""; + } else { + inherit stripLen extraPrefix; + }; +in let + inherit (args') stripLen extraPrefix; +in +lib.throwIfNot (excludes == [] || includes == []) + "fetchpatch: cannot use excludes and includes simultaneously" fetchurl ({ postFetch = '' tmpfile="$TMPDIR/patch" @@ -27,17 +39,19 @@ fetchurl ({ exit 1 fi - "${patchutils}/bin/lsdiff" "$out" \ - | sort -u | sed -e 's/[*?]/\\&/g' \ - | xargs -I{} \ - "${patchutils}/bin/filterdiff" \ - --include={} \ - --strip=${toString stripLen} \ - ${lib.optionalString (extraPrefix != null) '' - --addoldprefix=a/${extraPrefix} \ - --addnewprefix=b/${extraPrefix} \ - ''} \ - --clean "$out" > "$tmpfile" + "${patchutils}/bin/lsdiff" \ + ${lib.optionalString (relative != null) "-p1 -i ${lib.escapeShellArg relative}/'*'"} \ + "$out" \ + | sort -u | sed -e 's/[*?]/\\&/g' \ + | xargs -I{} \ + "${patchutils}/bin/filterdiff" \ + --include={} \ + --strip=${toString stripLen} \ + ${lib.optionalString (extraPrefix != null) '' + --addoldprefix=a/${lib.escapeShellArg extraPrefix} \ + --addnewprefix=b/${lib.escapeShellArg extraPrefix} \ + ''} \ + --clean "$out" > "$tmpfile" if [ ! -s "$tmpfile" ]; then echo "error: Normalized patch '$tmpfile' is empty (while the fetched file was not)!" 1>&2 @@ -64,5 +78,6 @@ fetchurl ({ ${patchutils}/bin/interdiff "$out" /dev/null > "$tmpfile" mv "$tmpfile" "$out" '' + postFetch; - meta.broken = excludes != [] && includes != []; -} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "includes" "revert" "postFetch"]) +} // builtins.removeAttrs args [ + "relative" "stripLen" "extraPrefix" "excludes" "includes" "revert" "postFetch" +]) diff --git a/pkgs/build-support/fetchpatch/tests.nix b/pkgs/build-support/fetchpatch/tests.nix index 4240b325d65..ff2b81bf3a1 100644 --- a/pkgs/build-support/fetchpatch/tests.nix +++ b/pkgs/build-support/fetchpatch/tests.nix @@ -5,4 +5,20 @@ url = "https://github.com/facebook/zstd/pull/2724/commits/e1f85dbca3a0ed5ef06c8396912a0914db8dea6a.patch"; sha256 = "sha256-PuYAqnJWAE+L9bsroOnnBGJhERW8LHrGSLtIEkKU9vg="; }; + + relative = invalidateFetcherByDrvHash fetchpatch { + url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch"; + relative = "include"; + sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4="; + }; + + full = invalidateFetcherByDrvHash fetchpatch { + url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch"; + relative = "test"; + stripLen = 1; + extraPrefix = "foo/bar/"; + excludes = [ "foo/bar/bernoulli_no_atomic_mp.cpp" ]; + revert = true; + sha256 = "sha256-+UKmEbr2rIAweCav/hR/7d4ZrYV84ht/domTrHtm8sM="; + }; } diff --git a/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix b/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix index d21e0475e2d..fde977c3636 100644 --- a/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix +++ b/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix @@ -5,6 +5,7 @@ let CFBundleDevelopmentRegion = "English"; CFBundleExecutable = "$name"; CFBundleIconFile = "$icon"; + CFBundleIconFiles = [ "$icon" ]; CFBundleIdentifier = "org.nixos.$name"; CFBundleInfoDictionaryVersion = "6.0"; CFBundleName = "$name"; @@ -25,11 +26,8 @@ in writeScriptBin "write-darwin-bundle" '' ${pListText} EOF - if [[ $squircle != 0 && $squircle != "false" ]]; then - sed " - s|CFBundleIconFile|CFBundleIconFiles|; - s|<string>$icon</string>|<array><string>$icon</string></array>| - " -i "$plist" + if [[ $squircle == 0 || $squircle == "false" ]]; then + sed '/CFBundleIconFiles/,\|</array>|d' -i "$plist" fi cat > "$prefix/Applications/$name.app/Contents/MacOS/$name" <<EOF diff --git a/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh b/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh index b2e2738cb6e..d54af90b688 100644 --- a/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh +++ b/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh @@ -18,7 +18,9 @@ convertIconTheme() { local -r iconName=$3 local -r theme=${4:-hicolor} - local -ra iconSizes=(16 32 48 128 256 512) + # Sizes based on archived Apple documentation: + # https://developer.apple.com/design/human-interface-guidelines/macos/icons-and-images/app-icon#app-icon-sizes + local -ra iconSizes=(16 32 128 256 512) local -ra scales=([1]="" [2]="@2") # Based loosely on the algorithm at: @@ -31,13 +33,6 @@ convertIconTheme() { local scaleSuffix=${scales[$scale]} local exactSize=${iconSize}x${iconSize}${scaleSuffix} - if [[ $exactSize = '48x48@2' ]]; then - # macOS does not support a 2x scale variant of 48x48 icons - # See: https://en.wikipedia.org/wiki/Apple_Icon_Image_format#Icon_types - echo "unsupported" - return 0 - fi - local -a validSizes=( ${exactSize} $((iconSize + 1))x$((iconSize + 1))${scaleSuffix} @@ -55,8 +50,10 @@ convertIconTheme() { else echo "threshold $icon" fi - return 0 + elif [[ -a $icon ]]; then + echo "fallback $icon" fi + return 0 done done echo "scalable" @@ -106,6 +103,17 @@ convertIconTheme() { scalableIcon=('-') fi + # Tri-state variable, NONE means no icons have been found, an empty + # icns file will be generated, not sure that's necessary because macOS + # will default to a generic icon if no icon can be found. + # + # OTHER means an appropriate icon was found. + # + # Any other value is a path to an icon file that isn't scalable or + # within the threshold. This is used as a fallback in case no better + # icon can be found and will be scaled as much as + # necessary to result in appropriate icon sizes. + local foundIcon=NONE for iconSize in "${iconSizes[@]}"; do for scale in "${!scales[@]}"; do local iconResult=$(findIcon $iconSize $scale) @@ -117,6 +125,7 @@ convertIconTheme() { fixed) local density=$((72 * scale))x$((72 * scale)) magick convert -density "$density" -units PixelsPerInch "$icon" "$result" + foundIcon=OTHER ;; threshold) # Synthesize an icon of the exact size if a scalable icon is available @@ -124,21 +133,38 @@ convertIconTheme() { if ! synthesizeIcon "${scalableIcon[0]}" "$result" "$iconSize" "$scale"; then resizeIcon "$icon" "$result" "$iconSize" "$scale" fi + foundIcon=OTHER ;; scalable) synthesizeIcon "${scalableIcon[0]}" "$result" "$iconSize" "$scale" || true + foundIcon=OTHER + ;; + fallback) + # Use the largest size available to scale to + # appropriate sizes. + if [[ $foundIcon != OTHER ]]; then + foundIcon=$icon + fi ;; *) ;; esac done done + if [[ $foundIcon != NONE && $foundIcon != OTHER ]]; then + # Ideally we'd only resize to whatever the closest sizes are, + # starting from whatever icon sizes are available. + for iconSize in 16 32 128 256 512; do + local result=${resultdir}/${iconSize}x${iconSize}.png + resizeIcon "$foundIcon" "$result" "$iconSize" 1 + done + fi echo "$resultdir" } iconsdir=$(getIcons "$sharePath" "apps/${iconName}" "$theme") - if [[ ! -z "$(ls -1 "$iconsdir/"*)" ]]; then - icnsutil compose "$out/${iconName}.icns" "$iconsdir/"* + if [[ -n "$(ls -1 "$iconsdir/"*)" ]]; then + icnsutil compose --toc "$out/${iconName}.icns" "$iconsdir/"* else echo "Warning: no icons were found. Creating an empty icon for ${iconName}.icns." touch "$out/${iconName}.icns" diff --git a/pkgs/data/documentation/gnome-user-docs/default.nix b/pkgs/data/documentation/gnome-user-docs/default.nix index 23dfd975bf7..db177006a3d 100644 --- a/pkgs/data/documentation/gnome-user-docs/default.nix +++ b/pkgs/data/documentation/gnome-user-docs/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "gnome-user-docs"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "0xcIld06i7EXyfFIoLs/tJDRr3ExxEFod7G7/sWROVo="; + sha256 = "srJ9oEEAu90vTw5bw48tBW2V+jZWcgFj9kNqMWfV6QU="; }; nativeBuildInputs = [ diff --git a/pkgs/data/documentation/man-pages/default.nix b/pkgs/data/documentation/man-pages/default.nix index 60a7e3f229f..5b33714fc25 100644 --- a/pkgs/data/documentation/man-pages/default.nix +++ b/pkgs/data/documentation/man-pages/default.nix @@ -24,7 +24,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Linux development manual pages"; homepage = "https://www.kernel.org/doc/man-pages/"; - repositories.git = "https://git.kernel.org/pub/scm/docs/man-pages/man-pages"; license = licenses.gpl2Plus; platforms = with platforms; unix; priority = 30; # if a package comes with its own man page, prefer it diff --git a/pkgs/data/misc/mobile-broadband-provider-info/default.nix b/pkgs/data/misc/mobile-broadband-provider-info/default.nix index 51598a53d50..234016175d2 100644 --- a/pkgs/data/misc/mobile-broadband-provider-info/default.nix +++ b/pkgs/data/misc/mobile-broadband-provider-info/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "mobile-broadband-provider-info"; - version = "20210805"; + version = "20220315"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-a/ihVY6lVBr7xve0QV50zJ9aqYKbE07Ks+8ch0ElaLw="; + sha256 = "sha256-H82sctF52xQnl4Nm9wG+HDx1Nf1aZYvFzIKCR8b2RcY="; }; nativeBuildInputs = [ diff --git a/pkgs/data/misc/v2ray-domain-list-community/default.nix b/pkgs/data/misc/v2ray-domain-list-community/default.nix index 1115edabcec..d6fe1a100e7 100644 --- a/pkgs/data/misc/v2ray-domain-list-community/default.nix +++ b/pkgs/data/misc/v2ray-domain-list-community/default.nix @@ -3,12 +3,12 @@ let generator = pkgsBuildBuild.buildGoModule rec { pname = "v2ray-domain-list-community"; - version = "20220201175515"; + version = "20220324104603"; src = fetchFromGitHub { owner = "v2fly"; repo = "domain-list-community"; rev = version; - sha256 = "sha256-vgw6i8djBQDV+fmkVe5CuKMwES/PXGoVe8cTgB5tflo="; + sha256 = "sha256-Bd/jwHZ+6cg/cgVggyFI+Nc0FZ9qxI5Rk+y7SmGB08M="; }; vendorSha256 = "sha256-QUbnUnxG1tsNbR49HTl55aiLkBM/ae9mCtzWeN4Ju78="; meta = with lib; { diff --git a/pkgs/data/misc/v2ray-geoip/default.nix b/pkgs/data/misc/v2ray-geoip/default.nix index 7e2b12e863f..1e0d35d5200 100644 --- a/pkgs/data/misc/v2ray-geoip/default.nix +++ b/pkgs/data/misc/v2ray-geoip/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "v2ray-geoip"; - version = "202203170039"; + version = "202203240042"; src = fetchFromGitHub { owner = "v2fly"; repo = "geoip"; - rev = "0b5c94c368dc5f70ebf995e87188aa8f40d45489"; - sha256 = "sha256-iaqU6CkrewICONps43nbZaUiM2aahSwfSD5bZz1P4Zc="; + rev = "d7ff77f883216595a4b6674e9507f305195dcda3"; + sha256 = "sha256-wSm24nXz4QIM8e7Z8d08NjluLaBWEdl09FNAL3GR9so="; }; installPhase = '' diff --git a/pkgs/data/themes/flat-remix-gtk/default.nix b/pkgs/data/themes/flat-remix-gtk/default.nix index fec900a2d7e..ec76d48457c 100644 --- a/pkgs/data/themes/flat-remix-gtk/default.nix +++ b/pkgs/data/themes/flat-remix-gtk/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "flat-remix-gtk"; - version = "20220310"; + version = "20220321"; src = fetchFromGitHub { owner = "daniruiz"; repo = pname; rev = version; - sha256 = "sha256-fKkqMGb1UopjM7hTTury1I3oD5AlHqKP+WLmgAZIQxo="; + sha256 = "sha256-QFG/jh3tPO0eflyDQaC1PJL/SavYD/W6rYp26Rxe/2E="; }; dontBuild = true; diff --git a/pkgs/desktops/gnome/apps/file-roller/default.nix b/pkgs/desktops/gnome/apps/file-roller/default.nix index c4c489dae08..df8e9548c35 100644 --- a/pkgs/desktops/gnome/apps/file-roller/default.nix +++ b/pkgs/desktops/gnome/apps/file-roller/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchurl -, fetchpatch , desktop-file-utils , gettext , glibcLocales @@ -17,33 +16,23 @@ , glib , gnome , gtk3 +, libhandy , json-glib , libarchive , libnotify , nautilus -, pantheon , unzip -, withPantheon ? false }: stdenv.mkDerivation rec { pname = "file-roller"; - version = "3.40.0"; + version = "3.42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "039w1dcpa5ypmv6sm634alk9vbcdkyvy595vkh5gn032jsiqca2a"; + sha256 = "HEOObVPsEP9PLrWyLXu/KKfCqElXq2SnUcHN88UjAsc="; }; - patches = lib.optionals withPantheon [ - # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/fileroller/ - (fetchpatch { - url = "https://raw.githubusercontent.com/elementary/fileroller/f183eac36c68c9c9441e72294d4e305cf5fe36ed/fr-application-prefers-color-scheme.patch"; - sha256 = "sha256-d/sqf4Oen9UrzYqru7Ck15o/6g6WfxRDH/iAGFXgYAA="; - }) - ]; - LANG = "en_US.UTF-8"; # postinstall.py nativeBuildInputs = [ @@ -65,12 +54,11 @@ stdenv.mkDerivation rec { glib gnome.adwaita-icon-theme gtk3 + libhandy json-glib libarchive libnotify nautilus - ] ++ lib.optionals withPantheon [ - pantheon.granite ]; PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0"; diff --git a/pkgs/desktops/gnome/apps/ghex/default.nix b/pkgs/desktops/gnome/apps/ghex/default.nix index d12c8f61017..1ec3c9dfdf2 100644 --- a/pkgs/desktops/gnome/apps/ghex/default.nix +++ b/pkgs/desktops/gnome/apps/ghex/default.nix @@ -1,7 +1,9 @@ { stdenv , lib , fetchurl +, fetchpatch , pkg-config +, gi-docgen , meson , ninja , python3 @@ -11,23 +13,38 @@ , gettext , itstool , libxml2 -, gtk3 +, gtk4 , glib , atk +, gobject-introspection , wrapGAppsHook }: stdenv.mkDerivation rec { pname = "ghex"; - version = "3.41.1"; + version = "4.beta.1"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { - url = "mirror://gnome/sources/ghex/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "i3nPAJ6uXEfK0KtT4hmcOm+y86thh381m+1SR3DuYfc="; + url = "mirror://gnome/sources/ghex/${version}/${pname}-${version}.tar.xz"; + sha256 = "sBS/9cY++uHLGCbLeex8ZW697JJn3dK+HaM6tHBdwJ4="; }; + patches = [ + # Fix build with -Werror=format-security + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/ghex/-/commit/3d35359f3a12b6abb4a3d8a12a0f39b7221be408.patch"; + sha256 = "4z9nUd+/eBOUGwl3MErse+FKLzGqtWKwkIzej57CnYk="; + }) + # Build devhelp index. + # https://gitlab.gnome.org/GNOME/ghex/-/merge_requests/25 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/ghex/-/commit/b26a7b1135ea2fe956a9bc0669b3b6ed818716c3.patch"; + sha256 = "nYjjxds9GNWkW/RhXEe5zJzPF4TnLMsCELEqYR4dXTk="; + }) + ]; + nativeBuildInputs = [ desktop-file-utils gettext @@ -35,12 +52,14 @@ stdenv.mkDerivation rec { meson ninja pkg-config + gi-docgen python3 + gobject-introspection wrapGAppsHook ]; buildInputs = [ - gtk3 + gtk4 atk glib ]; @@ -50,9 +69,18 @@ stdenv.mkDerivation rec { desktop-file-utils ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + postPatch = '' - chmod +x meson_post_install.py - patchShebangs meson_post_install.py + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/desktops/gnome/apps/gnome-boxes/default.nix b/pkgs/desktops/gnome/apps/gnome-boxes/default.nix index 29b08aa3c1e..7853a80f073 100644 --- a/pkgs/desktops/gnome/apps/gnome-boxes/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-boxes/default.nix @@ -55,11 +55,11 @@ stdenv.mkDerivation rec { pname = "gnome-boxes"; - version = "41.3"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "m4QGgNHnOG/d/WoVrU3Q8s2ljv6BjPVHg3tGrovw4Yk="; + sha256 = "GuIS/4mZFVQuxTtU2VtozfJx2VjPUSzcP+3Hgixu4SM="; }; doCheck = true; diff --git a/pkgs/desktops/gnome/apps/gnome-calendar/default.nix b/pkgs/desktops/gnome/apps/gnome-calendar/default.nix index db353165c28..10267a6c870 100644 --- a/pkgs/desktops/gnome/apps/gnome-calendar/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-calendar/default.nix @@ -1,47 +1,32 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja , pkg-config -, wrapGAppsHook -, libdazzle +, wrapGAppsHook4 , libgweather , geoclue2 , geocode-glib -, python3 , gettext , libxml2 , gnome -, gtk3 +, gtk4 , evolution-data-server +, libical , libsoup , glib -, gnome-online-accounts , gsettings-desktop-schemas -, libhandy -, adwaita-icon-theme +, libadwaita }: stdenv.mkDerivation rec { pname = "gnome-calendar"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "lWsvGQMiZRxn/mZyI4lviqWs8ztwraWjsFpTYb2mYRo="; - }; - - patches = [ - # https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/84 - # A refactor has caused the PR patch to drift enough to need rebasing - ./gtk_image_reset_crash.patch - ]; - - passthru = { - updateScript = gnome.updateScript { - packageName = pname; - attrPath = "gnome.${pname}"; - }; + sha256 = "tj9z9VAy/BOQRC+UzfazyrnJHHdN3S5cYez+ydLF6ao="; }; nativeBuildInputs = [ @@ -50,35 +35,34 @@ stdenv.mkDerivation rec { pkg-config gettext libxml2 - wrapGAppsHook - python3 + wrapGAppsHook4 ]; buildInputs = [ - gtk3 - evolution-data-server + gtk4 + evolution-data-server # waiting for GTK4 port + libical libsoup glib - gnome-online-accounts - libdazzle libgweather geoclue2 geocode-glib gsettings-desktop-schemas - adwaita-icon-theme - libhandy + libadwaita ]; - postPatch = '' - chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file - patchShebangs build-aux/meson/meson_post_install.py - ''; + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "gnome.${pname}"; + }; + }; meta = with lib; { homepage = "https://wiki.gnome.org/Apps/Calendar"; description = "Simple and beautiful calendar application for GNOME"; maintainers = teams.gnome.members; - license = licenses.gpl3; + license = licenses.gpl3Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch b/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch deleted file mode 100644 index 5065295b57b..00000000000 --- a/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/src/gui/views/gcal-year-view.c b/src/gui/views/gcal-year-view.c -index ac32a8f9..532425c1 100644 ---- a/src/gui/views/gcal-year-view.c -+++ b/src/gui/views/gcal-year-view.c -@@ -2158,7 +2158,11 @@ update_weather (GcalYearView *self) - if (!updated) - { - gtk_label_set_text (self->temp_label, ""); -- gtk_image_clear (self->weather_icon); -+ /* FIXME: This should never be NULL, but it somehow is. -+ * https://gitlab.gnome.org/GNOME/gnome-calendar/issues/299 -+ */ -+ if (self->weather_icon != NULL) -+ gtk_image_clear (self->weather_icon); - } - } - diff --git a/pkgs/desktops/gnome/apps/gnome-characters/default.nix b/pkgs/desktops/gnome/apps/gnome-characters/default.nix index 960a3320472..b43e0cdecad 100644 --- a/pkgs/desktops/gnome/apps/gnome-characters/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-characters/default.nix @@ -7,26 +7,26 @@ , gettext , gnome , glib -, gtk3 +, gtk4 , pango -, wrapGAppsHook +, wrapGAppsHook4 , python3 +, desktop-file-utils , gobject-introspection , gjs , libunistring -, libhandy +, libadwaita , gsettings-desktop-schemas -, adwaita-icon-theme , gnome-desktop }: stdenv.mkDerivation rec { pname = "gnome-characters"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-characters/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "0yw6mimfwn0fij8zncjb4rg8bnazd1z47rmzq85lk6807nlyqag1"; + sha256 = "XaD/uBb4prRPMDdEyoJ6NAgBGMHJONjXmvF7f+Z5gPg="; }; nativeBuildInputs = [ @@ -36,39 +36,39 @@ stdenv.mkDerivation rec { ninja pkg-config python3 - wrapGAppsHook + desktop-file-utils + wrapGAppsHook4 ]; buildInputs = [ - adwaita-icon-theme gjs glib gnome-desktop # for typelib gsettings-desktop-schemas - gtk3 + gtk4 libunistring - libhandy + libadwaita pango ]; postPatch = '' chmod +x meson_post_install.py # patchShebangs requires executable file patchShebangs meson_post_install.py + + # https://gitlab.gnome.org/GNOME/gnome-characters/-/merge_requests/70 + substituteInPlace meson_post_install.py \ + --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" ''; dontWrapGApps = true; - # Fixes https://github.com/NixOS/nixpkgs/issues/31168 postFixup = '' - for file in $out/share/org.gnome.Characters/org.gnome.Characters \ - $out/share/org.gnome.Characters/org.gnome.Characters.BackgroundService - do - sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \ - -i $file - - wrapGApp "$file" - done + # Fixes https://github.com/NixOS/nixpkgs/issues/31168 + file="$out/share/org.gnome.Characters/org.gnome.Characters" + sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \ + -i $file + wrapGApp "$file" ''; passthru = { diff --git a/pkgs/desktops/gnome/apps/gnome-clocks/default.nix b/pkgs/desktops/gnome/apps/gnome-clocks/default.nix index 2e8ec02bd84..3c57c6272e8 100644 --- a/pkgs/desktops/gnome/apps/gnome-clocks/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-clocks/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja @@ -7,35 +8,34 @@ , wrapGAppsHook , itstool , desktop-file-utils -, vala +, vala_0_56 , gobject-introspection , libxml2 -, gtk3 +, gtk4 , glib , gsound , sound-theme-freedesktop , gsettings-desktop-schemas -, adwaita-icon-theme , gnome-desktop , geocode-glib , gnome , gdk-pixbuf , geoclue2 , libgweather -, libhandy +, libadwaita }: stdenv.mkDerivation rec { pname = "gnome-clocks"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-clocks/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "34yLBKuS+mGPXe5RGFce+fyeilt5XqAKNcbcZ3ywLaw="; + sha256 = "DnEY20oDLjzqMhLZjLuCjWt88i/gXgxfyLORxqPdb+A="; }; nativeBuildInputs = [ - vala + vala_0_56 meson ninja pkg-config @@ -48,17 +48,16 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk3 + gtk4 glib gsettings-desktop-schemas gdk-pixbuf - adwaita-icon-theme gnome-desktop geocode-glib geoclue2 libgweather gsound - libhandy + libadwaita ]; preFixup = '' @@ -81,7 +80,7 @@ stdenv.mkDerivation rec { homepage = "https://wiki.gnome.org/Apps/Clocks"; description = "Clock application designed for GNOME 3"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/apps/gnome-connections/default.nix b/pkgs/desktops/gnome/apps/gnome-connections/default.nix index 83e88059f80..b8517a833b0 100644 --- a/pkgs/desktops/gnome/apps/gnome-connections/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-connections/default.nix @@ -4,7 +4,7 @@ , meson , ninja , pkg-config -, vala +, vala_0_56 , gettext , itstool , python3 @@ -14,6 +14,7 @@ , glib , gtk3 , libhandy +, libsecret , libxml2 , gtk-vnc , gtk-frdp @@ -22,18 +23,18 @@ stdenv.mkDerivation rec { pname = "gnome-connections"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-WrmUKPPOn4qDdDK2e3XbxSi5U6QpOotWVE34g0b+VxM="; + hash = "sha256-L3s5u0OPS2oM3Jn2JjGpXbI+W7JC7Gg5pMlQKchwJO0="; }; nativeBuildInputs = [ meson ninja pkg-config - vala + vala_0_56 gettext itstool python3 @@ -48,6 +49,7 @@ stdenv.mkDerivation rec { gtk-vnc gtk3 libhandy + libsecret libxml2 gtk-frdp ]; diff --git a/pkgs/desktops/gnome/apps/gnome-maps/default.nix b/pkgs/desktops/gnome/apps/gnome-maps/default.nix index 5d90cefdff3..0efb5faa3c7 100644 --- a/pkgs/desktops/gnome/apps/gnome-maps/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-maps/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl +, fetchpatch , meson , ninja , gettext @@ -29,13 +31,22 @@ stdenv.mkDerivation rec { pname = "gnome-maps"; - version = "41.4"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-40CxP0b+C31bD48BQTKR3c2HDHSlw4+iTKwfWF5wOT4="; + sha256 = "sha256-BUSG03dAc3BqdqmBQXl40VG+O3Ik1yN3W74xbvoked8="; }; + patches = [ + # Do not pin to GWeather 3.0, the used API did not change in 4.0. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-maps/-/commit/759d3087b70341b2c5f1af575ce44338d926690e.patch"; + sha256 = "Qp9Hta00TLf2lOb9+g9vnPoK17mP3eHpCG2i1ewaw+w="; + revert = true; + }) + ]; + doCheck = true; nativeBuildInputs = [ @@ -78,7 +89,7 @@ stdenv.mkDerivation rec { # entry point to the wrapped binary we get back to a wrapped # binary. substituteInPlace "data/org.gnome.Maps.service.in" \ - --replace "Exec=@pkgdatadir@/org.gnome.Maps" \ + --replace "Exec=@pkgdatadir@/@app-id@" \ "Exec=$out/bin/gnome-maps" ''; diff --git a/pkgs/desktops/gnome/apps/gnome-music/default.nix b/pkgs/desktops/gnome/apps/gnome-music/default.nix index 96ec321fa4a..4676710bfc6 100644 --- a/pkgs/desktops/gnome/apps/gnome-music/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-music/default.nix @@ -15,7 +15,7 @@ , grilo , grilo-plugins , pkg-config -, gtk3 +, gtk4 , pango , glib , desktop-file-utils @@ -23,21 +23,20 @@ , itstool , gnome , gst_all_1 -, libdazzle , libsoup -, libhandy +, libadwaita , gsettings-desktop-schemas }: python3.pkgs.buildPythonApplication rec { pname = "gnome-music"; - version = "41.0"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1llz2aqa3n3ivwl7i09pgylsbgrfzb872vcj1k7pvivxm1kkbcb9"; + sha256 = "nWgZj5hSveD4NFhLlqgSiX0xDLcXKLak8Ji8spsZxdA="; }; nativeBuildInputs = [ @@ -54,7 +53,7 @@ python3.pkgs.buildPythonApplication rec { ]; buildInputs = [ - gtk3 + gtk4 pango glib libmediaart @@ -66,9 +65,8 @@ python3.pkgs.buildPythonApplication rec { grilo grilo-plugins libnotify - libdazzle libsoup - libhandy + libadwaita gsettings-desktop-schemas tracker ] ++ (with gst_all_1; [ @@ -85,13 +83,6 @@ python3.pkgs.buildPythonApplication rec { pygobject3 ]; - postPatch = '' - for f in meson_post_conf.py meson_post_install.py; do - chmod +x $f - patchShebangs $f - done - ''; - # Prevent double wrapping, let the Python wrapper use the args in preFixup. dontWrapGApps = true; diff --git a/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix b/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix index 29f7aa6e9ee..cd7259c3ae9 100644 --- a/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , pkg-config , gettext @@ -6,7 +7,7 @@ , wrapGAppsHook , gjs , glib -, gtk3 +, gtk4 , gdk-pixbuf , gst_all_1 , gnome @@ -14,16 +15,16 @@ , ninja , python3 , desktop-file-utils -, libhandy +, libadwaita }: stdenv.mkDerivation rec { pname = "gnome-sound-recorder"; - version = "40.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "00b55vsfzx877b7mj744abzjws7zclz71wbvh0axsrbl9l84ranl"; + sha256 = "TAjDFSgvPr96LabyDg/58McdqlIp/NL+C1wKqqoG8K0="; }; nativeBuildInputs = [ @@ -40,9 +41,9 @@ stdenv.mkDerivation rec { buildInputs = [ gjs glib - gtk3 + gtk4 gdk-pixbuf - libhandy + libadwaita ] ++ (with gst_all_1; [ gstreamer gst-plugins-base diff --git a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix index 22f9ac176aa..ac065aaaec7 100644 --- a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-text-editor"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-YZ7FINbgkF1DEWcCTkPc4Nv2o0Xy1IaTUB1w3HYm+GE="; + sha256 = "sha256-DjIUDuHBNChWO81feE5h7iL/0a0n2MAig7Q1ioHfq1A="; }; nativeBuildInputs = [ @@ -53,14 +53,6 @@ stdenv.mkDerivation rec { pcre ]; - postPatch = '' - chmod +x build-aux/meson/postinstall.py - patchShebangs build-aux/meson/postinstall.py - substituteInPlace build-aux/meson/postinstall.py \ - --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" - ''; - - passthru = { updateScript = gnome.updateScript { packageName = "gnome-text-editor"; diff --git a/pkgs/desktops/gnome/apps/gnome-weather/default.nix b/pkgs/desktops/gnome/apps/gnome-weather/default.nix index aa192a6a3b6..b7921322d99 100644 --- a/pkgs/desktops/gnome/apps/gnome-weather/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-weather/default.nix @@ -3,8 +3,8 @@ , fetchurl , pkg-config , gnome -, gtk3 -, libhandy +, gtk4 +, libadwaita , wrapGAppsHook , gjs , gobject-introspection @@ -12,18 +12,17 @@ , meson , ninja , geoclue2 -, gnome-desktop , python3 , gsettings-desktop-schemas }: stdenv.mkDerivation rec { pname = "gnome-weather"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-weather/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1vidwq768xnrnr24jcfbpwjczz7vm5zmaiv41nb75q4p8avlwqg5"; + sha256 = "V57mkdhT5bs/9Q6Me0P4Wundfls6ZJ4CwlSi2bgHtGU="; }; nativeBuildInputs = [ @@ -35,11 +34,10 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk3 - libhandy + gtk4 + libadwaita gjs gobject-introspection - gnome-desktop libgweather gnome.adwaita-icon-theme geoclue2 @@ -70,7 +68,7 @@ stdenv.mkDerivation rec { homepage = "https://wiki.gnome.org/Apps/Weather"; description = "Access current weather conditions and forecasts"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/apps/polari/default.nix b/pkgs/desktops/gnome/apps/polari/default.nix index f207307588a..c734a5c5c82 100644 --- a/pkgs/desktops/gnome/apps/polari/default.nix +++ b/pkgs/desktops/gnome/apps/polari/default.nix @@ -1,15 +1,40 @@ -{ lib, stdenv, itstool, fetchurl, gdk-pixbuf, adwaita-icon-theme -, telepathy-glib, gjs, meson, ninja, gettext, telepathy-idle, libxml2, desktop-file-utils -, pkg-config, gtk4, gtk3, glib, libsecret, libsoup, webkitgtk, gobject-introspection, appstream-glib -, gnome, wrapGAppsHook4, telepathy-logger, gspell, gsettings-desktop-schemas }: +{ stdenv +, lib +, itstool +, fetchurl +, gdk-pixbuf +, telepathy-glib +, gjs +, meson +, ninja +, gettext +, telepathy-idle +, libxml2 +, desktop-file-utils +, pkg-config +, gtk4 +, libadwaita +, gtk3 +, glib +, libsecret +, libsoup +, webkitgtk +, gobject-introspection +, appstream-glib +, gnome +, wrapGAppsHook4 +, telepathy-logger +, gspell +, gsettings-desktop-schemas +}: stdenv.mkDerivation rec { pname = "polari"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "o7BfgWYDcMZ8lCtvRLKYx7eIFv6zjJJuwiEr3iLqQOs="; + sha256 = "WPFbv1tCwLASPv3td1cR07DyRJl1cwlAOMpVZGHgSTw="; }; patches = [ @@ -19,16 +44,38 @@ stdenv.mkDerivation rec { ./make-thumbnailer-wrappable.patch ]; - propagatedUserEnvPkgs = [ telepathy-idle telepathy-logger ]; + propagatedUserEnvPkgs = [ + telepathy-idle + telepathy-logger + ]; nativeBuildInputs = [ - meson ninja pkg-config itstool gettext wrapGAppsHook4 libxml2 - desktop-file-utils gobject-introspection appstream-glib + meson + ninja + pkg-config + itstool + gettext + wrapGAppsHook4 + libxml2 + desktop-file-utils + gobject-introspection + appstream-glib ]; buildInputs = [ - gtk4 gtk3 glib adwaita-icon-theme gsettings-desktop-schemas - telepathy-glib telepathy-logger gjs gspell gdk-pixbuf libsecret libsoup webkitgtk + gtk4 + libadwaita + gtk3 # for thumbnailer + glib + gsettings-desktop-schemas + telepathy-glib + telepathy-logger + gjs + gspell + gdk-pixbuf + libsecret + libsoup + webkitgtk # for thumbnailer ]; postFixup = '' @@ -46,7 +93,7 @@ stdenv.mkDerivation rec { homepage = "https://wiki.gnome.org/Apps/Polari"; description = "IRC chat client designed to integrate with the GNOME desktop"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix b/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix index c7c85779d3f..b3c9e1ea62a 100644 --- a/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix +++ b/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "adwaita-icon-theme"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/adwaita-icon-theme/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "71M52MNfytXRBIG3BICAPw+iCz08vDOSOPys7q7gHro="; + sha256 = "XoW1rcje5maQD8rycbpxf33LnQoD2W2uCPnL0n4YseA="; }; # For convenience, we can specify adwaita-icon-theme only in packages diff --git a/pkgs/desktops/gnome/core/baobab/default.nix b/pkgs/desktops/gnome/core/baobab/default.nix index 40ea18b1af1..7c463e8ed28 100644 --- a/pkgs/desktops/gnome/core/baobab/default.nix +++ b/pkgs/desktops/gnome/core/baobab/default.nix @@ -8,22 +8,22 @@ , ninja , pkg-config , python3 -, gtk3 -, libhandy +, gtk4 +, libadwaita , glib , libxml2 -, wrapGAppsHook +, wrapGAppsHook4 , itstool , gnome }: stdenv.mkDerivation rec { pname = "baobab"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "ytYnjS3MgMhLVxBapbtY2KMM6Y1vq9dnUZ3bhshX6FU="; + sha256 = "Sxqr5rqxWCs/6nmigpvOfyQVu25QYvJTV67t1TF6UNw="; }; nativeBuildInputs = [ @@ -37,21 +37,27 @@ stdenv.mkDerivation rec { pkg-config python3 vala - wrapGAppsHook - # Prevents “error: Package `libhandy-1' not found in specified Vala API + wrapGAppsHook4 + # Prevents “error: Package `libadwaita-1' not found in specified Vala API # directories or GObject-Introspection GIR directories” with strictDeps, # even though it should only be a runtime dependency. - libhandy + libadwaita ]; buildInputs = [ - gtk3 - libhandy + gtk4 + libadwaita glib ]; doCheck = true; + postPatch = '' + # https://gitlab.gnome.org/GNOME/baobab/-/merge_requests/40 + substituteInPlace build-aux/post-install.py \ + --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/eog/default.nix b/pkgs/desktops/gnome/core/eog/default.nix index cdde96ae43b..08baf9022f7 100644 --- a/pkgs/desktops/gnome/core/eog/default.nix +++ b/pkgs/desktops/gnome/core/eog/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl -, fetchpatch , meson , ninja , gettext @@ -12,9 +12,9 @@ , libportal-gtk3 , gnome , gtk3 +, libhandy , glib , gsettings-desktop-schemas -, adwaita-icon-theme , gnome-desktop , lcms2 , gdk-pixbuf @@ -24,27 +24,20 @@ , librsvg , libexif , gobject-introspection -, python3 +, gi-docgen }: stdenv.mkDerivation rec { pname = "eog"; - version = "41.1"; + version = "42.0"; + + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-huG5ujnaz3QiavpFermDtBJTuJ9he/VBOcrQiS0C2Kk="; + sha256 = "sha256-+zW/tRZ6QhIfWae5t6wNdbvQUXua/W2Rgx6E01c13fg="; }; - patches = [ - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/eog/-/merge_requests/115 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/eog/-/commit/a06e6325907e136678b0bbe7058c25d688034afd.patch"; - sha256 = "ttcsfHubfmIbxA51YLnxXDagLLNutXYmoQyMQ4sHRak="; - }) - ]; - nativeBuildInputs = [ meson ninja @@ -52,15 +45,16 @@ stdenv.mkDerivation rec { gettext itstool wrapGAppsHook - libxml2 + libxml2 # for xmllint for xml-stripblanks gobject-introspection - python3 + gi-docgen ]; buildInputs = [ libjpeg libportal-gtk3 gtk3 + libhandy gdk-pixbuf glib libpeas @@ -71,13 +65,11 @@ stdenv.mkDerivation rec { exempi gsettings-desktop-schemas shared-mime-info - adwaita-icon-theme ]; - postPatch = '' - chmod +x meson_post_install.py - patchShebangs meson_post_install.py - ''; + mesonFlags = [ + "-Dgtk_doc=true" + ]; preFixup = '' gappsWrapperArgs+=( @@ -88,6 +80,11 @@ stdenv.mkDerivation rec { ) ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/epiphany/default.nix b/pkgs/desktops/gnome/core/epiphany/default.nix index eb8caa4f1ef..43b3eb2ee2f 100644 --- a/pkgs/desktops/gnome/core/epiphany/default.nix +++ b/pkgs/desktops/gnome/core/epiphany/default.nix @@ -11,7 +11,6 @@ , icu , wrapGAppsHook , gnome -, pantheon , libportal-gtk3 , libxml2 , libxslt @@ -41,37 +40,23 @@ stdenv.mkDerivation rec { pname = "epiphany"; - version = "41.3"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "ugEmjuVPMY39rC4B66OKP8lpQMHL9kDtJhOuKfi8ua0="; + sha256 = "Pb+owA5Ft/ROGCTQHw/r6DcHtfuTMMJhFz9ot/A81eM="; }; patches = lib.optionals withPantheon [ # Pantheon specific patches for epiphany # https://github.com/elementary/browser # - # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/browser/pull/21 - # https://github.com/elementary/browser/pull/41 - (fetchpatch { - url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/dark-style.patch"; - sha256 = "sha256-RzMUc9P51UN3tRFefzRtMniXR9duOOmLj5eu5gL2TEQ="; - }) # Patch to unlink nav buttons # https://github.com/elementary/browser/pull/18 (fetchpatch { url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/navigation-buttons.patch"; sha256 = "sha256-G1/JUjn/8DyO9sgL/5Kq205KbTOs4EMi4Vf3cJ8FHXU="; }) - ] ++ [ - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1051 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/84474398f6e59266b73170838219aa896729ce93.patch"; - sha256 = "SeiLTo3FcOxuml5sJX9GqyGdyGf1jm1A76SOI0JJvoo="; - }) ]; nativeBuildInputs = [ @@ -94,7 +79,6 @@ stdenv.mkDerivation rec { glib glib-networking gnome-desktop - gnome.adwaita-icon-theme gst_all_1.gst-libav gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-base @@ -117,8 +101,6 @@ stdenv.mkDerivation rec { p11-kit sqlite webkitgtk - ] ++ lib.optionals withPantheon [ - pantheon.granite ]; # Tests need an X display diff --git a/pkgs/desktops/gnome/core/evince/default.nix b/pkgs/desktops/gnome/core/evince/default.nix index d7001853fa6..18451ce239f 100644 --- a/pkgs/desktops/gnome/core/evince/default.nix +++ b/pkgs/desktops/gnome/core/evince/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchurl -, fetchpatch , meson , ninja , pkg-config @@ -32,42 +31,27 @@ , gsettings-desktop-schemas , gnome-desktop , dbus -, pantheon , python3 , texlive -, t1lib , gst_all_1 -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , supportMultimedia ? true # PDF multimedia , libgxps , supportXPS ? true # Open XML Paper Specification via libgxps -, withPantheon ? false , withLibsecret ? true }: stdenv.mkDerivation rec { pname = "evince"; - version = "41.4"; + version = "42.1"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/evince/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "/yRSQPIwkivsMqTXsKHZGyR6g9E0hPmbdANdUesjITA="; + sha256 = "skdnuz1RA7TjWw4VzwM9viSI+IcAzdiC0ipDre7C6Ao="; }; - patches = lib.optionals withPantheon [ - # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/evince/pull/21 - # https://github.com/elementary/evince/pull/31 - (fetchpatch { - url = "https://raw.githubusercontent.com/elementary/evince/c8364019ee2c2dffd2a1bccf79b8f4e526aa22af/dark-style.patch"; - sha256 = "sha256-nKELRXnM6gMRTGmWdO1Qqlo9ciy+4HOK5z2CYOoi2Lo="; - }) - ]; - postPatch = '' chmod +x meson_post_install.py patchShebangs meson_post_install.py @@ -75,11 +59,9 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ appstream - docbook-xsl-nons - docbook_xml_dtd_43 gettext gobject-introspection - gtk-doc + gi-docgen itstool meson ninja @@ -108,7 +90,6 @@ stdenv.mkDerivation rec { libxml2 pango poppler - t1lib texlive.bin.core # kpathsea for DVI support ] ++ lib.optionals withLibsecret [ libsecret @@ -121,9 +102,7 @@ stdenv.mkDerivation rec { gst-plugins-bad gst-plugins-ugly gst-libav - ]) ++ lib.optionals withPantheon [ - pantheon.granite - ]; + ]); mesonFlags = [ "-Dnautilus=false" @@ -140,6 +119,11 @@ stdenv.mkDerivation rec { gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share") ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/pkgs/desktops/gnome/core/evolution-data-server/default.nix index b7ba12be135..e43fe60eb7e 100644 --- a/pkgs/desktops/gnome/core/evolution-data-server/default.nix +++ b/pkgs/desktops/gnome/core/evolution-data-server/default.nix @@ -1,18 +1,57 @@ -{ fetchurl, lib, stdenv, substituteAll, pkg-config, gnome, python3, gobject-introspection -, intltool, libsoup, libxml2, libsecret, icu, sqlite, tzdata, libcanberra-gtk3, gcr, p11-kit -, db, nspr, nss, libical, gperf, wrapGAppsHook, glib-networking, pcre, vala, cmake, ninja -, libkrb5, openldap, webkitgtk, libaccounts-glib, json-glib, glib, gtk3, libphonenumber -, gnome-online-accounts, libgweather, libgdata, gsettings-desktop-schemas, boost, protobuf }: +{ stdenv +, lib +, fetchurl +, substituteAll +, pkg-config +, gnome +, python3 +, gobject-introspection +, gettext +, libsoup +, libxml2 +, libsecret +, icu +, sqlite +, tzdata +, libcanberra-gtk3 +, gcr +, p11-kit +, db +, nspr +, nss +, libical +, gperf +, wrapGAppsHook +, glib-networking +, pcre +, vala +, cmake +, ninja +, libkrb5 +, openldap +, webkitgtk +, libaccounts-glib +, json-glib +, glib +, gtk3 +, libphonenumber +, gnome-online-accounts +, libgweather +, libgdata +, gsettings-desktop-schemas +, boost +, protobuf +}: stdenv.mkDerivation rec { pname = "evolution-data-server"; - version = "3.42.4"; + version = "3.44.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "fftBs+bAWBHUSajeTfx3q5sZ+O3yCzL92FeRhmIm0lI="; + sha256 = "DYiBtcUeG5F2GxlF2yZKRqq/VKc+6hyo9EiyB4FdWC4="; }; patches = [ @@ -23,19 +62,47 @@ stdenv.mkDerivation rec { ]; prePatch = '' - substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch --subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \ + substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch \ + --subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \ --subst-var-by GDS_GSETTINGS_PATH ${glib.getSchemaPath gsettings-desktop-schemas} patches="$patches $PWD/hardcode-gsettings.patch" ''; nativeBuildInputs = [ - cmake ninja pkg-config intltool python3 gperf wrapGAppsHook gobject-introspection vala + cmake + ninja + pkg-config + gettext + python3 + gperf + wrapGAppsHook + gobject-introspection + vala ]; + buildInputs = [ - glib libsoup libxml2 gtk3 gnome-online-accounts - gcr p11-kit libgweather libgdata libaccounts-glib json-glib - icu sqlite libkrb5 openldap webkitgtk glib-networking - libcanberra-gtk3 pcre libphonenumber boost protobuf + glib + libsoup + libxml2 + gtk3 + gnome-online-accounts + gcr + p11-kit + libgweather + libgdata + libaccounts-glib + json-glib + icu + sqlite + libkrb5 + openldap + webkitgtk + glib-networking + libcanberra-gtk3 + pcre + libphonenumber + boost + protobuf ]; propagatedBuildInputs = [ @@ -55,6 +122,7 @@ stdenv.mkDerivation rec { "-DCMAKE_SKIP_BUILD_RPATH=OFF" "-DINCLUDE_INSTALL_DIR=${placeholder "dev"}/include" "-DWITH_PHONENUMBER=ON" + "-DWITH_GWEATHER4=ON" ]; passthru = { @@ -67,7 +135,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Unified backend for programs that work with contacts, tasks, and calendar information"; homepage = "https://wiki.gnome.org/Apps/Evolution"; - license = licenses.lgpl2; + license = licenses.lgpl2Plus; maintainers = teams.gnome.members; platforms = platforms.linux; }; diff --git a/pkgs/desktops/gnome/core/gdm/default.nix b/pkgs/desktops/gnome/core/gdm/default.nix index 6b51d11adfe..990f1bef211 100644 --- a/pkgs/desktops/gnome/core/gdm/default.nix +++ b/pkgs/desktops/gnome/core/gdm/default.nix @@ -19,6 +19,7 @@ , gtk3 , libcanberra-gtk3 , pam +, libgudev , libselinux , keyutils , audit @@ -43,13 +44,13 @@ in stdenv.mkDerivation rec { pname = "gdm"; - version = "41.3"; + version = "42.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/gdm/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "uwtlCnzqkPCaMyhPvQKXUxVAfvwY6BQAmFLRvK00N9Q="; + sha256 = "oyisl2k3vsF5lx/weCmhJGuYznJBgcEorjKguketOFU="; }; mesonFlags = [ @@ -83,6 +84,7 @@ stdenv.mkDerivation rec { keyutils libX11 libcanberra-gtk3 + libgudev libselinux pam plymouth diff --git a/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix b/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix index 89a49e4cecb..ba70570b1f8 100644 --- a/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix +++ b/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix @@ -1,16 +1,18 @@ -{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gnome, gettext }: +{ stdenv +, lib +, fetchurl +, meson +, ninja +, gnome +}: stdenv.mkDerivation rec { pname = "gnome-backgrounds"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-backgrounds/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "HaGsDSYb7fD80shbSAvGVQXiPPUfEUMSbA03cX5pMUU="; - }; - - passthru = { - updateScript = gnome.updateScript { packageName = "gnome-backgrounds"; attrPath = "gnome.gnome-backgrounds"; }; + sha256 = "TH/hoJ9FnF93GJpZglJPzgXYiJRJVdZ5kQ8jRgbBKV0="; }; patches = [ @@ -20,9 +22,22 @@ stdenv.mkDerivation rec { ./stable-dir.patch ]; - nativeBuildInputs = [ meson ninja pkg-config gettext ]; + nativeBuildInputs = [ + meson + ninja + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = "gnome-backgrounds"; + attrPath = "gnome.gnome-backgrounds"; + }; + }; meta = with lib; { + description = "Default wallpaper set for GNOME"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-backgrounds"; + license = licenses.cc-by-sa-30; platforms = platforms.unix; maintainers = teams.gnome.members; }; diff --git a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix index 901dbc21e9e..7d8fc2bc867 100644 --- a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix +++ b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix @@ -5,15 +5,17 @@ , meson , ninja , pkg-config -, gtk3 +, gtk4 +, libadwaita , gettext , glib , udev +, upower , itstool , libxml2 , wrapGAppsHook , libnotify -, libcanberra-gtk3 +, gsound , gobject-introspection , gtk-doc , docbook-xsl-nons @@ -24,14 +26,14 @@ stdenv.mkDerivation rec { pname = "gnome-bluetooth"; - version = "3.34.5"; + version = "42.0"; # TODO: split out "lib" outputs = [ "out" "dev" "devdoc" "man" ]; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1a9ynlwwkb3wpg293ym517vmrkk63y809mmcv9a21k5yr199x53c"; + url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "PR4nIGc7yaJCYZ3F0jH9bndsGKSdop9DzcQzBVrbAXA="; }; nativeBuildInputs = [ @@ -51,24 +53,19 @@ stdenv.mkDerivation rec { buildInputs = [ glib - gtk3 + gtk4 + libadwaita udev + upower libnotify - libcanberra-gtk3 - gnome.adwaita-icon-theme + gsound gsettings-desktop-schemas ]; mesonFlags = [ - "-Dicon_update=false" "-Dgtk_doc=true" ]; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = pname; @@ -77,7 +74,7 @@ stdenv.mkDerivation rec { }; meta = with lib; { - homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-bluetooth"; description = "Application that lets you manage Bluetooth in the GNOME desktop"; maintainers = teams.gnome.members; license = licenses.gpl2Plus; diff --git a/pkgs/desktops/gnome/core/gnome-calculator/default.nix b/pkgs/desktops/gnome/core/gnome-calculator/default.nix index 6a7a8ccec06..889155f19a6 100644 --- a/pkgs/desktops/gnome/core/gnome-calculator/default.nix +++ b/pkgs/desktops/gnome/core/gnome-calculator/default.nix @@ -8,29 +8,28 @@ , fetchurl , pkg-config , libxml2 -, gtk3 +, gtk4 , glib -, gtksourceview4 +, gtksourceview5 , wrapGAppsHook , gobject-introspection -, python3 , gnome , mpfr , gmp , libsoup , libmpc -, libhandy +, libadwaita , gsettings-desktop-schemas , libgee }: stdenv.mkDerivation rec { pname = "gnome-calculator"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-calculator/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "AmdhSv2yXTi3hBG0Lrq3vFDBtjQMxJu2jA5DLX3fijQ="; + sha256 = "pTWhTr6ljmkaS1oIUlau0GCiw/BzhKw6PQGDIzKifko="; }; nativeBuildInputs = [ @@ -41,32 +40,25 @@ stdenv.mkDerivation rec { gettext itstool wrapGAppsHook - python3 gobject-introspection # for finding vapi files ]; buildInputs = [ - gtk3 + gtk4 glib libxml2 - gtksourceview4 + gtksourceview5 mpfr gmp - gnome.adwaita-icon-theme libgee gsettings-desktop-schemas libsoup libmpc - libhandy + libadwaita ]; doCheck = true; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; - preCheck = '' # Currency conversion test tries to store currency data in $HOME/.cache. export HOME=$TMPDIR diff --git a/pkgs/desktops/gnome/core/gnome-color-manager/default.nix b/pkgs/desktops/gnome/core/gnome-color-manager/default.nix index dae367f1d5b..65a9daa5745 100644 --- a/pkgs/desktops/gnome/core/gnome-color-manager/default.nix +++ b/pkgs/desktops/gnome/core/gnome-color-manager/default.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation rec { pname = "gnome-color-manager"; - version = "3.32.0"; + version = "3.36.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1vpxa2zjz3lkq9ldjg0fl65db9s6b4kcs8nyaqfz3jygma7ifg3w"; + sha256 = "nduea2Ry4RmAE4H5CQUzLsHUJYmBchu6gxyiRs6zrTs="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-contacts/default.nix b/pkgs/desktops/gnome/core/gnome-contacts/default.nix index 1c16c3dd35e..fac22f0b578 100644 --- a/pkgs/desktops/gnome/core/gnome-contacts/default.nix +++ b/pkgs/desktops/gnome/core/gnome-contacts/default.nix @@ -1,18 +1,16 @@ -{ lib, stdenv +{ lib +, stdenv , gettext , fetchurl , evolution-data-server , pkg-config , libxslt -, docbook_xsl +, docbook-xsl-nons , docbook_xml_dtd_42 -, python3 -, gtk3 +, desktop-file-utils +, gtk4 , glib -, cheese -, libchamplain -, clutter-gtk -, geocode-glib +, libportal , gnome-desktop , gnome-online-accounts , wrapGAppsHook @@ -23,17 +21,17 @@ , vala , meson , ninja -, libhandy +, libadwaita , gsettings-desktop-schemas }: stdenv.mkDerivation rec { pname = "gnome-contacts"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-contacts/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "Y+MUm10UdbeiaYAFu191DzyApzVxcWDjnfjP3+v8zfA="; + sha256 = "iALDj9wj9SjawSj1O9zx9sow4OHGhIxCzWyEpeIsUhY="; }; propagatedUserEnvPkgs = [ @@ -47,34 +45,25 @@ stdenv.mkDerivation rec { vala gettext libxslt - docbook_xsl + docbook-xsl-nons docbook_xml_dtd_42 - python3 + desktop-file-utils wrapGAppsHook ]; buildInputs = [ - gtk3 + gtk4 glib + libportal evolution-data-server gsettings-desktop-schemas folks gnome-desktop - libhandy + libadwaita libxml2 gnome-online-accounts - cheese - gnome.adwaita-icon-theme - libchamplain - clutter-gtk - geocode-glib ]; - postPatch = '' - chmod +x build-aux/meson_post_install.py - patchShebangs build-aux/meson_post_install.py - ''; - doCheck = true; passthru = { diff --git a/pkgs/desktops/gnome/core/gnome-control-center/default.nix b/pkgs/desktops/gnome/core/gnome-control-center/default.nix index f68977e52dd..9dc09cfe81a 100644 --- a/pkgs/desktops/gnome/core/gnome-control-center/default.nix +++ b/pkgs/desktops/gnome/core/gnome-control-center/default.nix @@ -4,11 +4,8 @@ , substituteAll , accountsservice , adwaita-icon-theme -, cheese -, clutter -, clutter-gtk , colord -, colord-gtk +, colord-gtk4 , cups , docbook-xsl-nons , fontconfig @@ -26,19 +23,17 @@ , gnome , gsettings-desktop-schemas , gsound -, gtk3 +, gtk4 , ibus -, libcanberra-gtk3 , libgnomekbd , libgtop , libgudev -, libhandy +, libadwaita , libkrb5 , libpulseaudio , libpwquality , librsvg , libsecret -, libsoup , libwacom , libxml2 , libxslt @@ -47,7 +42,7 @@ , mutter , networkmanager , networkmanagerapplet -, libnma +, libnma-gtk4 , ninja , pkg-config , polkit @@ -68,11 +63,11 @@ stdenv.mkDerivation rec { pname = "gnome-control-center"; - version = "41.4"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-1tsMTLcIV77PSKxQB/ErX2O51dfoDqfuV9O+USZp98k="; + sha256 = "sha256-BzLvp8QXHOCg7UEGWAtM41pXsQFSwOo20jkTSRN3fto="; }; patches = [ @@ -100,11 +95,8 @@ stdenv.mkDerivation rec { buildInputs = [ accountsservice adwaita-icon-theme - cheese - clutter - clutter-gtk colord - colord-gtk + colord-gtk4 libepoxy fontconfig gdk-pixbuf @@ -119,19 +111,17 @@ stdenv.mkDerivation rec { gnome-user-share # optional, sharing panel gsettings-desktop-schemas gsound - gtk3 + gtk4 ibus - libcanberra-gtk3 libgtop libgudev - libhandy + libadwaita libkrb5 - libnma + libnma-gtk4 libpulseaudio libpwquality librsvg libsecret - libsoup libwacom libxml2 modemmanager @@ -145,9 +135,19 @@ stdenv.mkDerivation rec { upower ]; - postPatch = '' - chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file - patchShebangs build-aux/meson/meson_post_install.py + # postPatch = '' + # scriptsToPatch=( + # build-aux/meson/meson_post_install.py + # build-aux/meson/find_xdg_file.py + # ) + # # # patchShebangs requires executable file + # # chmod +x "''${scriptsToPatch[@]}" + # # patchShebangs "''${scriptsToPatch[@]}" + # ''; + + preConfigure = '' + # For ITS rules + addToSearchPath "XDG_DATA_DIRS" "${polkit.out}/share" ''; preFixup = '' diff --git a/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix index 5f3ef81d905..89502c8d883 100644 --- a/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix +++ b/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix @@ -27,11 +27,11 @@ stdenv.mkDerivation rec { pname = "gnome-disk-utility"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-h0PJj9ZWBi74YpM+/jDFvkxrMi7ALu4VTscNCO0Ild8="; + sha256 = "sha256-G2VkRU1nQmMiyzv8WlVYZTv8ff7qKuCCWx0IYp8BCQs="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix b/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix index 4ba915df2db..397f0b9838f 100644 --- a/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix +++ b/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix @@ -1,20 +1,47 @@ -{ lib, stdenv, meson, ninja, gettext, fetchurl -, pkg-config, gtk3, glib, libxml2, gnome-desktop, adwaita-icon-theme, libhandy -, wrapGAppsHook, gnome, harfbuzz }: +{ lib +, stdenv +, meson +, ninja +, gettext +, fetchurl +, pkg-config +, gtk4 +, glib +, libxml2 +, gnome-desktop +, libadwaita +, wrapGAppsHook4 +, gnome +, harfbuzz +}: stdenv.mkDerivation rec { pname = "gnome-font-viewer"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-font-viewer/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "XdQQMxvgcOTgNDl/J1SYDgc4UdUKIRny+/lq3G/i6HY="; + sha256 = "z6K43/8hoQWhoCHa36IT8TYn5qF5p3x7Wf3O2sqEjcw="; }; doCheck = true; - nativeBuildInputs = [ meson ninja pkg-config gettext wrapGAppsHook libxml2 ]; - buildInputs = [ gtk3 glib gnome-desktop adwaita-icon-theme harfbuzz libhandy ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + gettext + wrapGAppsHook4 + libxml2 + ]; + + buildInputs = [ + gtk4 + glib + gnome-desktop + harfbuzz + libadwaita + ]; # Do not run meson-postinstall.sh preConfigure = "sed -i '2,$ d' meson-postinstall.sh"; @@ -28,8 +55,9 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Program that can preview fonts and create thumbnails for fonts"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-font-viewer"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix b/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix index 2d5be438c3e..7f6724ce63a 100644 --- a/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix +++ b/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix @@ -27,6 +27,7 @@ , polkit , webkitgtk , systemd +, libhandy , libnma , tzdata , libgnomekbd @@ -35,11 +36,11 @@ stdenv.mkDerivation rec { pname = "gnome-initial-setup"; - version = "41.4"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "luzS2252xROxjGBtwmK7UjIoxKrtvtageBHlaP1dtkI="; + sha256 = "/PQ/L75NwEw6wq5QVjP+se8w2nDKleq8YeIAaxkuXlU="; }; patches = [ @@ -72,6 +73,7 @@ stdenv.mkDerivation rec { json-glib krb5 libgweather + libhandy libnma libpwquality librest diff --git a/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix b/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix index 0f35b15bee9..61252d60814 100644 --- a/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix +++ b/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix @@ -7,6 +7,8 @@ , python3 , wrapGAppsHook , glib +, libepoxy +, libdrm , nv-codec-headers-11 , pipewire , systemd @@ -17,16 +19,20 @@ , gdk-pixbuf , freerdp , fuse3 +, mesa +, libgudev +, xvfb-run +, dbus , gnome }: stdenv.mkDerivation rec { pname = "gnome-remote-desktop"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-EBUeabZIwiR8XjPZou9Bn04DfuWyuuSebtasp36xulg="; + hash = "sha256-s9wrt1x4Pe2quWqNu6wW3ZqhOebTooo9s+pAxgRluY8="; }; nativeBuildInputs = [ @@ -43,6 +49,8 @@ stdenv.mkDerivation rec { fuse3 gdk-pixbuf # For libnotify glib + libepoxy + libdrm nv-codec-headers-11 libnotify libsecret @@ -50,17 +58,35 @@ stdenv.mkDerivation rec { libxkbcommon pipewire systemd - ]; + ] ++ checkInputs; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; + checkInputs = [ + mesa # for gbm + libgudev + xvfb-run + python3.pkgs.dbus-python + python3.pkgs.pygobject3 + dbus # for dbus-run-session + ]; mesonFlags = [ "-Dsystemd_user_unit_dir=${placeholder "out"}/lib/systemd/user" ]; + # Too deep of a rabbit hole. + doCheck = false; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs \ + tests/vnc-test-runner.sh \ + tests/run-vnc-tests.py \ + meson_post_install.py + + substituteInPlace tests/vnc-test-runner.sh \ + --replace "dbus-run-session" "dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/gnome-session/ctl.nix b/pkgs/desktops/gnome/core/gnome-session/ctl.nix index 7ee9e156e5b..09fc80bf9ef 100644 --- a/pkgs/desktops/gnome/core/gnome-session/ctl.nix +++ b/pkgs/desktops/gnome/core/gnome-session/ctl.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "gnome-session-ctl"; - version = "41.3"; + version = "42.0"; src = fetchFromGitHub { owner = "nix-community"; repo = pname; rev = version; - hash = "sha256-aC0tkTf2lgCRlcbFj1FEOVBm3YUuP+8Yz98W3ZjUydg="; + hash = "sha256-XGJVmlxqbJ/1frbzn2TI7BJm449xeLk43xMMqFsLYko="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix index 3c6903b2b01..43bf56eb1fc 100644 --- a/pkgs/desktops/gnome/core/gnome-session/default.nix +++ b/pkgs/desktops/gnome/core/gnome-session/default.nix @@ -30,13 +30,13 @@ stdenv.mkDerivation rec { pname = "gnome-session"; # Also bump ./ctl.nix when bumping major version. - version = "41.3"; + version = "42.0"; outputs = [ "out" "sessions" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "7koikFP1ImJAVIiWCTNbiFKHz2e73g3J/YgrAeybWzk="; + sha256 = "PMoGBTq2gpJpIJUafalfjMbXLadMaCxG0KBlMzKWnKo="; }; patches = [ diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix index b043883a492..8ab848a7dfa 100644 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix +++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix @@ -83,6 +83,16 @@ stdenv.mkDerivation rec { url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/28e28e9e598342c897ae5ca350d0da6f4aea057b.diff"; sha256 = "U+suR7wYjLWPqmkJpHm6pPOWL7sjL6GhIFX8MHrBRAY="; }) + + # Port to gweather4 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/66cae69ad82cfc59435016fba737ce046ffb7e66.patch"; + sha256 = "zf8/rkKdQQFNV/qx/jo4kx1KoLl7SUSu4/T1OBGrZ4c="; + }) + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/f390e6e9d56ce7d3e3a725b8204d81c0b6240515.patch"; + sha256 = "8mfnlhkSF9ogjVWE+IESzRQzrxHQSwUWsq5OLBM08iM="; + }) ]; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix index 307de72cc4f..03698f865d6 100644 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix +++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix @@ -42,11 +42,11 @@ stdenv.mkDerivation rec { pname = "gnome-settings-daemon"; - version = "41.0"; + version = "42.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "5spjYfvR3qst4aHjkNTxQWfPR7HFR9u4tlpdielmOIQ="; + sha256 = "7WWFGuVK3NWKJMhoN9Yk/GoUvYSrIulN9Ao6TP0Z/9s="; }; patches = [ diff --git a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix index aa61bd91c29..1083fe11106 100644 --- a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix +++ b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { pname = "gnome-shell-extensions"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "rZuoL0y9BHJpc7XoevrRiv2qMjhgoK8+ckDzp00iLxk="; + sha256 = "PuZbdbGv2LzKCioD2psohHh+1A4leogdmqbvfIcnYC8="; }; patches = [ diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix index 3b89ceb7817..1ad36f7e96b 100644 --- a/pkgs/desktops/gnome/core/gnome-shell/default.nix +++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix @@ -46,6 +46,7 @@ , evolution-data-server , gtk3 , gtk4 +, libadwaita , sassc , systemd , pipewire @@ -66,13 +67,13 @@ let in stdenv.mkDerivation rec { pname = "gnome-shell"; - version = "41.4"; + version = "42.0"; outputs = [ "out" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "x+73SvMEZJwDuG25m9C6x1oBH7/2d0yO41WD282tivQ="; + sha256 = "M9QE+zyTud5CmE8BEKKWnWpKckfCf+f14kxn7P7HUJQ="; }; patches = [ @@ -118,7 +119,6 @@ stdenv.mkDerivation rec { sassc desktop-file-utils libxslt.bin - python3 asciidoc ]; @@ -142,6 +142,7 @@ stdenv.mkDerivation rec { libical gtk3 gtk4 + libadwaita gdm geoclue2 adwaita-icon-theme @@ -169,6 +170,9 @@ stdenv.mkDerivation rec { bash-completion gnome-autoar json-glib + + # for tools + pythonEnv ]; mesonFlags = [ @@ -177,14 +181,9 @@ stdenv.mkDerivation rec { postPatch = '' patchShebangs src/data-to-c.pl - chmod +x meson/postinstall.py - patchShebangs meson/postinstall.py # We can generate it ourselves. rm -f man/gnome-shell.1 - - substituteInPlace src/gnome-shell-extension-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python" - substituteInPlace src/gnome-shell-perf-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python" ''; preFixup = '' diff --git a/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch b/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch index bc494caea9d..5ce4a2fd46d 100644 --- a/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch +++ b/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch @@ -1,7 +1,7 @@ diff --git a/js/dbusServices/dbus-service.in b/js/dbusServices/dbus-service.in old mode 100644 new mode 100755 -index 524166102..100b81a63 +index 524166102..6d0722a1c --- a/js/dbusServices/dbus-service.in +++ b/js/dbusServices/dbus-service.in @@ -1,3 +1,9 @@ @@ -24,18 +24,18 @@ index 3b0d09abe..4fd4bb66d 100644 -Exec=@gjs@ @pkgdatadir@/@service@ +Exec=@pkgdatadir@/@service@ diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build -index c749f45dc..11bcb0c9e 100644 +index eb941ed90..552051e5a 100644 --- a/js/dbusServices/meson.build +++ b/js/dbusServices/meson.build @@ -2,6 +2,7 @@ launcherconf = configuration_data() launcherconf.set('PACKAGE_NAME', meson.project_name()) launcherconf.set('prefix', prefix) launcherconf.set('libdir', libdir) -+launcherconf.set('gjs', gjs.path()) ++launcherconf.set('gjs', gjs.full_path()) dbus_services = { 'org.gnome.Shell.Extensions': 'extensions', -@@ -11,16 +12,17 @@ dbus_services = { +@@ -18,16 +19,17 @@ endif config_dir = '@0@/..'.format(meson.current_build_dir()) foreach service, dir : dbus_services @@ -51,7 +51,7 @@ index c749f45dc..11bcb0c9e 100644 serviceconf = configuration_data() serviceconf.set('service', service) -- serviceconf.set('gjs', gjs.path()) +- serviceconf.set('gjs', gjs.full_path()) serviceconf.set('pkgdatadir', pkgdatadir) configure_file( diff --git a/pkgs/desktops/gnome/core/gnome-software/default.nix b/pkgs/desktops/gnome/core/gnome-software/default.nix index aa9058ad410..e89f616680c 100644 --- a/pkgs/desktops/gnome/core/gnome-software/default.nix +++ b/pkgs/desktops/gnome/core/gnome-software/default.nix @@ -13,7 +13,7 @@ , glib , appstream , libsoup -, libhandy +, libadwaita , polkit , isocodes , gspell @@ -21,7 +21,7 @@ , gobject-introspection , flatpak , fwupd -, gtk3 +, gtk4 , gsettings-desktop-schemas , gnome-desktop , libxmlb @@ -42,11 +42,11 @@ in stdenv.mkDerivation rec { pname = "gnome-software"; - version = "41.4"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "evhzzkcs8racUbyevGG4Nt+8z9b0Jwbj7TqpCaruxGU="; + sha256 = "QsaF4u95li6zCo6VjHA8mh899zFQQiOgYos7Yk733B4="; }; patches = [ @@ -73,12 +73,12 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk3 + gtk4 glib packagekit appstream libsoup - libhandy + libadwaita gsettings-desktop-schemas gnome-desktop gspell @@ -97,6 +97,8 @@ stdenv.mkDerivation rec { "-Dgudev=false" # FIXME: package malcontent parental controls "-Dmalcontent=false" + # Needs flatpak to upgrade + "-Dsoup2=true" ] ++ lib.optionals (!withFwupd) [ "-Dfwupd=false" ]; diff --git a/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix b/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix index d373d6f358c..5d24a23e411 100644 --- a/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix +++ b/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix @@ -12,7 +12,6 @@ , wrapGAppsHook , meson , ninja -, python3 , gsettings-desktop-schemas , itstool , gnome @@ -24,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-system-monitor"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "x/xExhlJt5SwKJlo67vMDBX4z8PZ5Fv6qB7UXBITnl8="; + sha256 = "EyOdIgMiAaIr0pgzxXW2hIFnANLeFooVMCI1d8XAddw="; }; nativeBuildInputs = [ @@ -38,7 +37,6 @@ stdenv.mkDerivation rec { wrapGAppsHook meson ninja - python3 ]; buildInputs = [ @@ -58,12 +56,6 @@ stdenv.mkDerivation rec { doCheck = true; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - sed -i '/gtk-update-icon-cache/s/^/#/' meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = "gnome-system-monitor"; diff --git a/pkgs/desktops/gnome/core/gnome-terminal/default.nix b/pkgs/desktops/gnome/core/gnome-terminal/default.nix index 588d6e3ced3..719c0eabce1 100644 --- a/pkgs/desktops/gnome/core/gnome-terminal/default.nix +++ b/pkgs/desktops/gnome/core/gnome-terminal/default.nix @@ -28,11 +28,11 @@ stdenv.mkDerivation rec { pname = "gnome-terminal"; - version = "3.42.2"; + version = "3.43.90"; src = fetchurl { url = "mirror://gnome/sources/gnome-terminal/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "ipyOXvejpzskapR+EZC7COyYk1r4YM8LOqL79GBoF6A="; + sha256 = "pQpyOodNNkoP78GfmU2IVUWqYKUdaBimL/kPgv9TydY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-tour/default.nix b/pkgs/desktops/gnome/core/gnome-tour/default.nix index c496ceee6ed..cbb33c2b230 100644 --- a/pkgs/desktops/gnome/core/gnome-tour/default.nix +++ b/pkgs/desktops/gnome/core/gnome-tour/default.nix @@ -6,7 +6,7 @@ , ninja , fetchurl , pkg-config -, gtk3 +, gtk4 , glib , gdk-pixbuf , desktop-file-utils @@ -14,7 +14,7 @@ , wrapGAppsHook , python3 , gnome -, libhandy +, libadwaita , librsvg , rustc , cargo @@ -22,11 +22,11 @@ stdenv.mkDerivation rec { pname = "gnome-tour"; - version = "40.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-rYYS110B7qY8WcmY65KOvm75mEZgYbn8H97IKF02M5g="; + hash = "sha256-/PGsaJBX2oZZaXDsPag1VSHApy6VBj6wWdX+5N6oL08="; }; cargoVendorDir = "vendor"; @@ -49,16 +49,11 @@ stdenv.mkDerivation rec { buildInputs = [ gdk-pixbuf glib - gtk3 - libhandy + gtk4 + libadwaita librsvg ]; - postPatch = '' - chmod +x build-aux/meson_post_install.py - patchShebangs build-aux/meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/mutter/default.nix b/pkgs/desktops/gnome/core/mutter/default.nix index d0b8a7537e2..9f3925d0ce5 100644 --- a/pkgs/desktops/gnome/core/mutter/default.nix +++ b/pkgs/desktops/gnome/core/mutter/default.nix @@ -46,13 +46,13 @@ let self = stdenv.mkDerivation rec { pname = "mutter"; - version = "41.4"; + version = "42.0"; outputs = [ "out" "dev" "man" ]; src = fetchurl { url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "VYgmlQZKpvA4XNH39/qywqLtLJrsePV4+qB/UgnKUpw="; + sha256 = "0eJARGt/jNij/52q4zbByQFhk7p+B2nHml5sA4SQIuU="; }; patches = [ @@ -136,7 +136,7 @@ let self = stdenv.mkDerivation rec { PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev"; passthru = { - libdir = "${self}/lib/mutter-9"; + libdir = "${self}/lib/mutter-10"; tests = { libdirExists = runCommand "mutter-libdir-exists" {} '' diff --git a/pkgs/desktops/gnome/core/nautilus/default.nix b/pkgs/desktops/gnome/core/nautilus/default.nix index 3f61f55db1d..1814dc732ea 100644 --- a/pkgs/desktops/gnome/core/nautilus/default.nix +++ b/pkgs/desktops/gnome/core/nautilus/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl -, fetchpatch , meson , ninja , pkg-config @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "nautilus"; - version = "41.2"; + version = "42.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "hyKFscQKbuQYzile0RX1Qn2nCQfYItlbz1FnXVSYgis="; + sha256 = "PJBPM7otKgeIkr7ir3FITNYIkjzXjsfooVF7whVRE9U="; }; patches = [ @@ -53,17 +53,6 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; inherit tracker; }) - - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/749 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/nautilus/-/commit/55cfd66ccca391fc144f5863ff6bfc1f3b137e2d.patch"; - sha256 = "xSb9l7xxEYpAwmdmeWT/t7Z9Ck3DPtsODzbReQW/Q70="; - excludes = [ - "build-aux/flatpak/org.gnome.Nautilus.json" - "build-aux/flatpak/org.gnome.Nautilus.yml" - ]; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/simple-scan/default.nix b/pkgs/desktops/gnome/core/simple-scan/default.nix index 0865fbb5aca..dd96e254109 100644 --- a/pkgs/desktops/gnome/core/simple-scan/default.nix +++ b/pkgs/desktops/gnome/core/simple-scan/default.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation rec { pname = "simple-scan"; - version = "40.7"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-fFUYUsta99NKqYn4rV7ePL4xgoz43VrsKytv3NGsPVM="; + sha256 = "sha256-rB+Fev0LyIl90gRQI618VxPlzu/KVrCzzF6aR5UylYY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/totem/default.nix b/pkgs/desktops/gnome/core/totem/default.nix index 0178c04b53c..44e1319f8d4 100644 --- a/pkgs/desktops/gnome/core/totem/default.nix +++ b/pkgs/desktops/gnome/core/totem/default.nix @@ -4,8 +4,6 @@ , ninja , gettext , gst_all_1 -, clutter-gtk -, clutter-gst , python3Packages , shared-mime-info , pkg-config @@ -21,6 +19,7 @@ , grilo , grilo-plugins , libpeas +, libhandy , adwaita-icon-theme , gnome-desktop , gsettings-desktop-schemas @@ -30,11 +29,11 @@ stdenv.mkDerivation rec { pname = "totem"; - version = "3.38.2"; + version = "42.0"; src = fetchurl { - url = "mirror://gnome/sources/totem/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/OVi4rJsvPwMZ4U43MgfncFc5g1aie5DWJB79jQwTEA="; + url = "mirror://gnome/sources/totem/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "SvBJHduV34szruOZ06UPnHqxfeiNOvYzVlZ8+I9X5qs="; }; nativeBuildInputs = [ @@ -53,17 +52,16 @@ stdenv.mkDerivation rec { gtk3 glib grilo - clutter-gtk - clutter-gst totem-pl-parser grilo-plugins gst_all_1.gstreamer gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good + (gst_all_1.gst-plugins-good.override { gtkSupport = true; }) gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly gst_all_1.gst-libav libpeas + libhandy shared-mime-info gdk-pixbuf libxml2 diff --git a/pkgs/desktops/gnome/core/yelp-xsl/default.nix b/pkgs/desktops/gnome/core/yelp-xsl/default.nix index 6fac906e4ba..3398e8ddd57 100644 --- a/pkgs/desktops/gnome/core/yelp-xsl/default.nix +++ b/pkgs/desktops/gnome/core/yelp-xsl/default.nix @@ -10,11 +10,11 @@ stdenv.mkDerivation rec { pname = "yelp-xsl"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/yelp-xsl/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-DW2zesLvgSSD4BBHA/H6nPAy6eCVal8cOvvMI3kfilQ="; + sha256 = "sha256-KbJzzAvRbvtumDRDgD8en9wDUR5cT/Y0j9MKYE1NyEY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/yelp/default.nix b/pkgs/desktops/gnome/core/yelp/default.nix index be858a19487..3fdf7f3e546 100644 --- a/pkgs/desktops/gnome/core/yelp/default.nix +++ b/pkgs/desktops/gnome/core/yelp/default.nix @@ -5,6 +5,7 @@ , webkitgtk , pkg-config , gtk3 +, libhandy , glib , gnome , sqlite @@ -17,11 +18,11 @@ stdenv.mkDerivation rec { pname = "yelp"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/yelp/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-sAvwM/At15ttPyVQMccd+NbtOOVSyHC485GjdHJMQ8U="; + sha256 = "sha256-IIglVqnF29MHWTAkXnA3HGusMOqnpe0Jx9sSfNogE/c="; }; nativeBuildInputs = [ @@ -33,6 +34,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 + libhandy glib webkitgtk sqlite diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix index 9e02b80d9f7..729a6bd16ca 100644 --- a/pkgs/desktops/gnome/default.nix +++ b/pkgs/desktops/gnome/default.nix @@ -58,8 +58,6 @@ lib.makeScope pkgs.newScope (self: with self; { gnome-common = callPackage ./core/gnome-common { }; - gnome-desktop = callPackage ./core/gnome-desktop { }; - gnome-dictionary = callPackage ./core/gnome-dictionary { }; gnome-disk-utility = callPackage ./core/gnome-disk-utility { }; @@ -281,6 +279,7 @@ lib.makeScope pkgs.newScope (self: with self; { }) // lib.optionalAttrs (config.allowAliases or true) { #### Legacy aliases. They need to be outside the scope or they will shadow the attributes from parent scope. + gnome-desktop = pkgs.gnome-desktop; # added 2022-03-16 libgnome-games-support = pkgs.libgnome-games-support; # added 2022-02-19 bijiben = throw "The ‘gnome.bijiben’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-notes’ directly."; # added 2018-09-26 @@ -289,7 +288,7 @@ lib.makeScope pkgs.newScope (self: with self; { glib_networking = throw "The ‘gnome.glib_networking’ alias was removed on 2022-01-13. Please use ‘pkgs.glib-networking’ directly."; # added 2018-02-25 gnome_common = throw "The ‘gnome.gnome_common’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-common’ directly."; # added 2018-02-25 gnome_control_center = throw "The ‘gnome.gnome_control_center’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-control-center’ directly."; # added 2018-02-25 - gnome_desktop = throw "The ‘gnome.gnome_desktop’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-desktop’ directly."; # added 2018-02-25 + gnome_desktop = throw "The ‘gnome.gnome_desktop’ alias was removed on 2022-01-13. Please use pkgs.gnome-desktop’ directly."; # added 2018-02-25 gnome_keyring = throw "The ‘gnome.gnome_keyring’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-keyring’ directly."; # added 2018-02-25 gnome_online_accounts = throw "The ‘gnome.gnome_online_accounts’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-online-accounts’ directly."; # added 2018-02-25 gnome_session = throw "The ‘gnome.gnome_session’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-session’ directly."; # added 2018-02-25 diff --git a/pkgs/desktops/gnome/extensions/default.nix b/pkgs/desktops/gnome/extensions/default.nix index 39a1e00be14..f4077cac5b2 100644 --- a/pkgs/desktops/gnome/extensions/default.nix +++ b/pkgs/desktops/gnome/extensions/default.nix @@ -60,7 +60,7 @@ in rec { gnome41Extensions = mapUuidNames (produceExtensionsList "41"); gnome42Extensions = mapUuidNames (produceExtensionsList "42"); - gnomeExtensions = lib.trivial.pipe (gnome40Extensions // gnome41Extensions) [ + gnomeExtensions = lib.trivial.pipe (gnome41Extensions // gnome42Extensions) [ # Apply some custom patches for automatically packaged extensions (callPackage ./extensionOverrides.nix {}) # Add all manually packaged extensions diff --git a/pkgs/desktops/gnome/extensions/gsconnect/default.nix b/pkgs/desktops/gnome/extensions/gsconnect/default.nix index 2d3d2415db2..0b72d35bda7 100644 --- a/pkgs/desktops/gnome/extensions/gsconnect/default.nix +++ b/pkgs/desktops/gnome/extensions/gsconnect/default.nix @@ -19,15 +19,15 @@ stdenv.mkDerivation rec { pname = "gnome-shell-extension-gsconnect"; - version = "48"; + version = "53"; outputs = [ "out" "installedTests" ]; src = fetchFromGitHub { - owner = "andyholmes"; + owner = "GSConnect"; repo = "gnome-shell-extension-gsconnect"; rev = "v${version}"; - sha256 = "sha256-cKEFTF8DnQIQAXVW9NvE34mUqueQP/OtxTzMUy1dT5U="; + sha256 = "sha256-u14OVv3iyQbLEmqLgMdEUD2iC4nsYVCOr4ua66T3TBk="; }; patches = [ @@ -111,7 +111,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "KDE Connect implementation for Gnome Shell"; - homepage = "https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki"; + homepage = "https://github.com/GSConnect/gnome-shell-extension-gsconnect/wiki"; license = licenses.gpl2Plus; maintainers = teams.gnome.members; platforms = platforms.linux; diff --git a/pkgs/desktops/gnome/games/aisleriot/default.nix b/pkgs/desktops/gnome/games/aisleriot/default.nix index 21e38c548e9..5a7446862bd 100644 --- a/pkgs/desktops/gnome/games/aisleriot/default.nix +++ b/pkgs/desktops/gnome/games/aisleriot/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchFromGitLab , nix-update-script , pkg-config @@ -9,8 +10,7 @@ , librsvg , libxml2 , desktop-file-utils -, pysolfc -, guile +, guile_3_0 , libcanberra-gtk3 , ninja , appstream-glib @@ -19,14 +19,14 @@ stdenv.mkDerivation rec { pname = "aisleriot"; - version = "3.22.20"; + version = "3.22.21"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = pname; rev = version; - sha256 = "sha256-5xFwlhT9qjtvNDQ8kfGd2BeK2KcJDzpfsEC8z4Ei3ns="; + sha256 = "sha256-dpzuePxSoJcwUlj314r5G9A8aF1Yz49r+DxNTfA8/Ks="; }; nativeBuildInputs = [ @@ -44,9 +44,8 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 librsvg - guile + guile_3_0 libcanberra-gtk3 - pysolfc ]; prePatch = '' diff --git a/pkgs/desktops/gnome/games/gnome-chess/default.nix b/pkgs/desktops/gnome/games/gnome-chess/default.nix index e47e77d9c0a..5690355a0ce 100644 --- a/pkgs/desktops/gnome/games/gnome-chess/default.nix +++ b/pkgs/desktops/gnome/games/gnome-chess/default.nix @@ -14,16 +14,17 @@ , gnome , glib , gtk4 +, libadwaita , librsvg }: stdenv.mkDerivation rec { pname = "gnome-chess"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-chess/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "62GYhlljlrQDOj8oo8LjAEtU6+Gzi0DWQiwXufLMF9A="; + sha256 = "Eq9Uk6YiBaxrt0VA8KhYQT2okolmo0boVDMLQdc7w5M="; }; nativeBuildInputs = [ @@ -42,8 +43,8 @@ stdenv.mkDerivation rec { buildInputs = [ glib gtk4 + libadwaita librsvg - gnome.adwaita-icon-theme ]; postPatch = '' diff --git a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix index 1431a617949..87e7c467d04 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.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "NhIFMePHE5WB6jgA+/48KzFpTEQBRezIl6w05WLXVKM="; + sha256 = "HS603bgCa0Q2Rc81hbjfEkTjgo7hwHUYBSslmeHFwo8="; }; nativeBuildInputs = [ meson ninja vala pkg-config gobject-introspection gettext itstool libxml2 python3 desktop-file-utils wrapGAppsHook ]; diff --git a/pkgs/desktops/gnome/games/tali/default.nix b/pkgs/desktops/gnome/games/tali/default.nix index 936fe62c259..c12853e5dae 100644 --- a/pkgs/desktops/gnome/games/tali/default.nix +++ b/pkgs/desktops/gnome/games/tali/default.nix @@ -20,11 +20,11 @@ stdenv.mkDerivation rec { pname = "tali"; - version = "40.5"; + version = "40.6"; src = fetchurl { url = "mirror://gnome/sources/tali/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "Y6CcVeRqGhl1a/XglXyvmUMA+tq9umvaYC5mjfzfcSI="; + sha256 = "g/ugR+3s0ZbTBxmnDi9NCYa7Jswr1flVoKkgDqY/BhI="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/misc/gnome-applets/default.nix b/pkgs/desktops/gnome/misc/gnome-applets/default.nix index 2cdafcc23b3..a03b356c21f 100644 --- a/pkgs/desktops/gnome/misc/gnome-applets/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-applets/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-applets"; - version = "3.42.0"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/RaXR7kv7/Rs05/mLyPd+WZ8EAaPRigDOF0TjvxIedQ="; + sha256 = "MDlifKknGeSAWH1yT0aXEJw9Em7BUPFPOy4Gkk2576c="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix index 9e796670aa0..34d2b6eea3c 100644 --- a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix @@ -30,7 +30,7 @@ }: let pname = "gnome-flashback"; - version = "3.42.1"; + version = "3.44.0"; # From data/sessions/Makefile.am requiredComponentsCommon = enableGnomePanel: @@ -61,7 +61,7 @@ let src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "sha256:0kl4m05whm03m2v0y3jd69lghkggn8s0hxdhvchcas7jmhh940n8"; + sha256 = "sha256-HfCDgSfGJG7s2J0cUP+I/IKr9t47MGjlLd5JWkK9VQo="; }; # make .desktop Execs absolute diff --git a/pkgs/desktops/gnome/misc/gnome-panel/default.nix b/pkgs/desktops/gnome/misc/gnome-panel/default.nix index aa472230e9c..139e161352a 100644 --- a/pkgs/desktops/gnome/misc/gnome-panel/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-panel/default.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gnome-panel"; - version = "3.42.0"; + version = "3.44.0"; outputs = [ "out" "dev" "man" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - hash = "sha256-rqjA78LtuiDpetRpUXnNCiU45kwpBHAsyMWU6OCJhwM="; + hash = "sha256-mWVfddAxh2wTDtI8TaIsCZ57zEBIsCVaPDo7vHh7Mao="; }; patches = [ diff --git a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix index 0725af81c0a..5643741aceb 100644 --- a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix @@ -6,6 +6,7 @@ , gettext , glib , gnome +, gnome-desktop , gobject-introspection , gsettings-desktop-schemas , gtk3 @@ -20,13 +21,13 @@ python3Packages.buildPythonApplication rec { pname = "gnome-tweaks"; - version = "40.10"; + version = "42.beta"; format = "other"; strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "z/07M6OZV3+7RJHOj70C9UxZJPEFbzARTo1CApDvI/w="; + sha256 = "g/RMwdyK3HcM2tcXtAPLmmzDwN5Q445vHmeLQ0Aa2Gg="; }; nativeBuildInputs = [ @@ -43,7 +44,7 @@ python3Packages.buildPythonApplication rec { buildInputs = [ gdk-pixbuf glib - gnome.gnome-desktop + gnome-desktop gnome.gnome-settings-daemon gnome.gnome-shell # Makes it possible to select user themes through the `user-theme` extension diff --git a/pkgs/desktops/gnome/misc/gpaste/default.nix b/pkgs/desktops/gnome/misc/gpaste/default.nix index f593fbbd653..1a6abacad7d 100644 --- a/pkgs/desktops/gnome/misc/gpaste/default.nix +++ b/pkgs/desktops/gnome/misc/gpaste/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchFromGitHub , fetchpatch , appstream-glib @@ -7,6 +8,8 @@ , glib , gobject-introspection , gtk3 +, gtk4 +, libadwaita , meson , mutter , ninja @@ -17,14 +20,14 @@ }: stdenv.mkDerivation rec { - version = "3.42.6"; + version = "42.0"; pname = "gpaste"; src = fetchFromGitHub { owner = "Keruspe"; repo = "GPaste"; rev = "v${version}"; - sha256 = "sha256-dCeNWdHj3bBGJR1VpJtQjSn601Vdl3f9FjHAPB2wuhE="; + sha256 = "sha256-dwL06BL6P8fqvAfrYpifqMAh6d+3Er6RhUeP6nfCr1M="; }; patches = [ @@ -38,7 +41,7 @@ stdenv.mkDerivation rec { --subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0" substituteInPlace src/gnome-shell/prefs.js \ --subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0" - substituteInPlace src/libgpaste/settings/gpaste-settings.c \ + substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \ --subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"} ''; @@ -57,6 +60,8 @@ stdenv.mkDerivation rec { gjs glib gtk3 + gtk4 + libadwaita mutter pango ]; diff --git a/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch b/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch index 46e30ce2e2c..2ec807b61c0 100644 --- a/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch +++ b/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch @@ -1,3 +1,5 @@ +diff --git a/src/gnome-shell/extension.js b/src/gnome-shell/extension.js +index c8773fd6..9efbed67 100644 --- a/src/gnome-shell/extension.js +++ b/src/gnome-shell/extension.js @@ -6,6 +6,8 @@ @@ -8,21 +10,25 @@ + imports.gi.versions.Clutter = Config.LIBMUTTER_API_VERSION; imports.gi.versions.GLib = '2.0'; - imports.gi.versions.GPaste = '1.0'; + imports.gi.versions.GPaste = '2'; +diff --git a/src/gnome-shell/prefs.js b/src/gnome-shell/prefs.js +index 32244ab2..74b85572 100644 --- a/src/gnome-shell/prefs.js +++ b/src/gnome-shell/prefs.js @@ -6,6 +6,8 @@ - const Gettext = imports.gettext; + imports.gi.versions.GPasteGtk = '4'; +imports.gi.GIRepository.Repository.prepend_search_path('@typelibPath@'); + - //const { GPaste } = imports.gi; - const ExtensionUtils = imports.misc.extensionUtils; ---- a/src/libgpaste/settings/gpaste-settings.c -+++ b/src/libgpaste/settings/gpaste-settings.c -@@ -1013,7 +1013,11 @@ + + const { GPasteGtk } = imports.gi; +diff --git a/src/libgpaste/gpaste/gpaste-settings.c b/src/libgpaste/gpaste/gpaste-settings.c +index 7e53eb64..57c399fc 100644 +--- a/src/libgpaste/gpaste/gpaste-settings.c ++++ b/src/libgpaste/gpaste/gpaste-settings.c +@@ -1013,7 +1013,11 @@ create_g_settings (void) } else { diff --git a/pkgs/desktops/gnome/misc/metacity/default.nix b/pkgs/desktops/gnome/misc/metacity/default.nix index 8dcef792265..ef3e31f1032 100644 --- a/pkgs/desktops/gnome/misc/metacity/default.nix +++ b/pkgs/desktops/gnome/misc/metacity/default.nix @@ -18,11 +18,11 @@ stdenv.mkDerivation rec { pname = "metacity"; - version = "3.42.0"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "2J1nnc/tm17vGPBuLcszp6tUPVOzWPqJzmVZPCMe7rw="; + sha256 = "GcPF150hcfRbqg9jLMiZX4YHvxIxoWAUQ5usm6Flp8A="; }; patches = [ diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix index 15bc1941af3..5d5134d38d2 100644 --- a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix +++ b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix @@ -22,11 +22,16 @@ mkDerivation rec { sha256 = "1hb04zgpalxv6da3myf1dxsbjix15dczzfq8a24g5dg2zfhwpx21"; }; - # Nix clang on darwin identifies as 'Clang', not 'AppleClang' - # Without this, dependants fail to link. postPatch = '' + # Nix clang on darwin identifies as 'Clang', not 'AppleClang' + # Without this, dependants fail to link. substituteInPlace cmake/modules/LXQtCompilerSettings.cmake \ --replace AppleClang Clang + + # GLib 2.72 moved the file from gio-unix-2.0 to gio-2.0. + # https://github.com/lxqt/lxqt-build-tools/pull/74 + substituteInPlace cmake/find-modules/FindGLIB.cmake \ + --replace gio/gunixconnection.h gio/gunixfdlist.h ''; nativeBuildInputs = [ diff --git a/pkgs/desktops/pantheon/default.nix b/pkgs/desktops/pantheon/default.nix index 29192a4dd80..a3d5f873cbc 100644 --- a/pkgs/desktops/pantheon/default.nix +++ b/pkgs/desktops/pantheon/default.nix @@ -83,10 +83,6 @@ lib.makeScope pkgs.newScope (self: with self; { epiphany = pkgs.epiphany.override { withPantheon = true; }; - evince = pkgs.evince.override { withPantheon = true; }; - - file-roller = pkgs.gnome.file-roller.override { withPantheon = true; }; - sideload = callPackage ./apps/sideload { }; #### DESKTOP @@ -109,9 +105,7 @@ lib.makeScope pkgs.newScope (self: with self; { inherit (gnome) file-roller; }; - gala = callPackage ./desktop/gala { - inherit (gnome) gnome-desktop; - }; + gala = callPackage ./desktop/gala { }; gnome-bluetooth-contract = callPackage ./desktop/gnome-bluetooth-contract { inherit (gnome) gnome-bluetooth; @@ -199,9 +193,7 @@ lib.makeScope pkgs.newScope (self: with self; { switchboard-plug-onlineaccounts = callPackage ./apps/switchboard-plugs/onlineaccounts { }; - switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell { - inherit (gnome) gnome-desktop; - }; + switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell { }; switchboard-plug-power = callPackage ./apps/switchboard-plugs/power { }; @@ -246,8 +238,12 @@ lib.makeScope pkgs.newScope (self: with self; { elementary-screenshot-tool = throw "The ‘pantheon.elementary-screenshot-tool’ alias was removed on 2022-02-02, please use ‘pantheon.elementary-screenshot’ directly."; # added 2021-07-21 + evince = pkgs.gnome.evince; # added 2022-03-18 + extra-elementary-contracts = throw "extra-elementary-contracts has been removed as all contracts have been upstreamed."; # added 2021-12-01 + file-roller = pkgs.gnome.file-roller; # added 2022-03-12 + notes-up = throw "The ‘pantheon.notes-up’ alias was removed on 2022-02-02, please use ‘pkgs.notes-up’ directly."; # added 2021-12-18 } diff --git a/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix b/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix index e1a25eea4a6..19051439209 100644 --- a/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix +++ b/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix @@ -49,5 +49,8 @@ stdenv.mkDerivation rec { license = licenses.gpl3Plus; maintainers = teams.pantheon.members; platforms = platforms.linux; + # sendto device selection is removed in gnome-bluetooth 42 + # https://github.com/elementary/gnome-bluetooth-contract/issues/1 + broken = true; }; } diff --git a/pkgs/development/compilers/llvm/14/openmp/default.nix b/pkgs/development/compilers/llvm/14/openmp/default.nix index 2b580a9c169..622072b53e1 100644 --- a/pkgs/development/compilers/llvm/14/openmp/default.nix +++ b/pkgs/development/compilers/llvm/14/openmp/default.nix @@ -5,6 +5,7 @@ , runCommand , cmake , llvm +, lit , clang-unwrapped , perl , pkg-config @@ -25,16 +26,27 @@ stdenv.mkDerivation rec { patches = [ ./gnu-install-dirs.patch - ./fix-find-tool.patch + ./run-lit-directly.patch ]; outputs = [ "out" "dev" ]; - nativeBuildInputs = [ cmake perl pkg-config clang-unwrapped ]; + nativeBuildInputs = [ cmake perl pkg-config lit ]; buildInputs = [ llvm ]; + # Unsup:Pass:XFail:Fail + # 26:267:16:8 + doCheck = false; + checkTarget = "check-openmp"; + + preCheck = '' + patchShebangs ../tools/archer/tests/deflake.bash + ''; + cmakeFlags = [ - "-DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF" # Building the AMDGCN device RTL currently fails + "-DCLANG_TOOL=${clang-unwrapped}/bin/clang" + "-DOPT_TOOL=${llvm}/bin/opt" + "-DLINK_TOOL=${llvm}/bin/llvm-link" ]; meta = llvm_meta // { @@ -50,6 +62,5 @@ stdenv.mkDerivation rec { # "All of the code is dual licensed under the MIT license and the UIUC # License (a BSD-like license)": license = with lib.licenses; [ mit ncsa ]; - broken = true; # TODO: gnu-install-dirs.patch fails to apply }; } diff --git a/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch b/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch deleted file mode 100644 index b5d0e7b4177..00000000000 --- a/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff --git a/libomptarget/DeviceRTL/CMakeLists.txt b/libomptarget/DeviceRTL/CMakeLists.txt -index 242df638f80d..a4654e96371f 100644 ---- a/libomptarget/DeviceRTL/CMakeLists.txt -+++ b/libomptarget/DeviceRTL/CMakeLists.txt -@@ -25,16 +25,16 @@ endif() - - if (LLVM_DIR) - # Builds that use pre-installed LLVM have LLVM_DIR set. -- find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) -+ find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED) - find_program(LINK_TOOL llvm-link PATHS ${LLVM_TOOLS_BINARY_DIR} -- NO_DEFAULT_PATH) -- find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) -+ REQUIRED) -+ find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED) - libomptarget_say("Building DeviceRTL. Using clang: ${CLANG_TOOL}") - elseif (LLVM_TOOL_CLANG_BUILD AND NOT CMAKE_CROSSCOMPILING AND NOT OPENMP_STANDALONE_BUILD) - # LLVM in-tree builds may use CMake target names to discover the tools. -- set(CLANG_TOOL $<TARGET_FILE:clang>) -- set(LINK_TOOL $<TARGET_FILE:llvm-link>) -- set(OPT_TOOL $<TARGET_FILE:opt>) -+ set(CLANG_TOOL $<TARGET_FILE:clang> REQUIRED) -+ set(LINK_TOOL $<TARGET_FILE:llvm-link> REQUIRED) -+ set(OPT_TOOL $<TARGET_FILE:opt> REQUIRED) - libomptarget_say("Building DeviceRTL. Using clang from in-tree build") - else() - libomptarget_say("Not building DeviceRTL. No appropriate clang found") -diff --git a/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt b/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt -index 3f4c02671aeb..be9f4677d7b5 100644 ---- a/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt -+++ b/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt -@@ -38,16 +38,16 @@ endif() - - if (LLVM_DIR) - # Builds that use pre-installed LLVM have LLVM_DIR set. -- find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) -+ find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED) - find_program(LINK_TOOL llvm-link PATHS ${LLVM_TOOLS_BINARY_DIR} -- NO_DEFAULT_PATH) -- find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) -+ REQUIRED) -+ find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED) - libomptarget_say("Building AMDGCN device RTL. Using clang: ${CLANG_TOOL}") - elseif (LLVM_TOOL_CLANG_BUILD AND NOT CMAKE_CROSSCOMPILING AND NOT OPENMP_STANDALONE_BUILD) - # LLVM in-tree builds may use CMake target names to discover the tools. -- set(CLANG_TOOL $<TARGET_FILE:clang>) -- set(LINK_TOOL $<TARGET_FILE:llvm-link>) -- set(OPT_TOOL $<TARGET_FILE:opt>) -+ set(CLANG_TOOL $<TARGET_FILE:clang> REQUIRED) -+ set(LINK_TOOL $<TARGET_FILE:llvm-link> REQUIRED) -+ set(OPT_TOOL $<TARGET_FILE:opt> REQUIRED) - libomptarget_say("Building AMDGCN device RTL. Using clang from in-tree build") - else() - libomptarget_say("Not building AMDGCN device RTL. No appropriate clang found") diff --git a/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch index 352a4692311..e85fde46ca3 100644 --- a/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch +++ b/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch @@ -1,17 +1,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7f11a05f5622..fb90f8f6a49b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -8,6 +8,8 @@ if (OPENMP_STANDALONE_BUILD OR "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_S - set(OPENMP_STANDALONE_BUILD TRUE) - project(openmp C CXX) - -+ include(GNUInstallDirs) -+ - # CMAKE_BUILD_TYPE was not set, default to Release. - if (NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE Release) -@@ -19,7 +21,7 @@ if (OPENMP_STANDALONE_BUILD OR "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_S +@@ -24,7 +24,7 @@ if (OPENMP_STANDALONE_BUILD) set(OPENMP_LIBDIR_SUFFIX "" CACHE STRING "Suffix of lib installation directory, e.g. 64 => lib64") # Do not use OPENMP_LIBDIR_SUFFIX directly, use OPENMP_INSTALL_LIBDIR. @@ -20,7 +10,7 @@ index 7f11a05f5622..fb90f8f6a49b 100644 # Group test settings. set(OPENMP_TEST_C_COMPILER ${CMAKE_C_COMPILER} CACHE STRING -@@ -30,7 +32,7 @@ if (OPENMP_STANDALONE_BUILD OR "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_S +@@ -35,7 +35,7 @@ if (OPENMP_STANDALONE_BUILD) else() set(OPENMP_ENABLE_WERROR ${LLVM_ENABLE_WERROR}) # If building in tree, we honor the same install suffix LLVM uses. @@ -29,10 +19,10 @@ index 7f11a05f5622..fb90f8f6a49b 100644 if (NOT MSVC) set(OPENMP_TEST_C_COMPILER ${LLVM_RUNTIME_OUTPUT_INTDIR}/clang) -index 0e1ce2afd154..8b3810f83713 100644 +diff --git a/libomptarget/plugins/amdgpu/CMakeLists.txt b/libomptarget/plugins/amdgpu/CMakeLists.txt --- a/libomptarget/plugins/amdgpu/CMakeLists.txt +++ b/libomptarget/plugins/amdgpu/CMakeLists.txt -@@ -80,7 +80,7 @@ add_library(omptarget.rtl.amdgpu SHARED +@@ -74,7 +74,7 @@ add_library(omptarget.rtl.amdgpu SHARED # Install plugin under the lib destination folder. # When we build for debug, OPENMP_LIBDIR_SUFFIX get set to -debug @@ -42,7 +32,6 @@ index 0e1ce2afd154..8b3810f83713 100644 if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") diff --git a/libomptarget/plugins/ve/CMakeLists.txt b/libomptarget/plugins/ve/CMakeLists.txt -index 16ce0891ca23..db30ee9c769f 100644 --- a/libomptarget/plugins/ve/CMakeLists.txt +++ b/libomptarget/plugins/ve/CMakeLists.txt @@ -32,7 +32,7 @@ if(${LIBOMPTARGET_DEP_VEO_FOUND}) @@ -54,36 +43,3 @@ index 16ce0891ca23..db30ee9c769f 100644 target_link_libraries( "omptarget.rtl.${tmachine_libname}" -diff --git a/runtime/src/CMakeLists.txt b/runtime/src/CMakeLists.txt -index e4f4e6e1e73f..1164b3b22b0e 100644 ---- a/runtime/src/CMakeLists.txt -+++ b/runtime/src/CMakeLists.txt -@@ -346,13 +346,13 @@ add_dependencies(libomp-micro-tests libomp-test-deps) - # We want to install libomp in DESTDIR/CMAKE_INSTALL_PREFIX/lib - # We want to install headers in DESTDIR/CMAKE_INSTALL_PREFIX/include - if(${OPENMP_STANDALONE_BUILD}) -- set(LIBOMP_HEADERS_INSTALL_PATH include) -+ set(LIBOMP_HEADERS_INSTALL_PATH "${CMAKE_INSTALL_INCLUDEDIR}") - else() - string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION ${PACKAGE_VERSION}) - set(LIBOMP_HEADERS_INSTALL_PATH "${OPENMP_INSTALL_LIBDIR}/clang/${CLANG_VERSION}/include") - endif() - if(WIN32) -- install(TARGETS omp RUNTIME DESTINATION bin) -+ install(TARGETS omp RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) - install(TARGETS ${LIBOMP_IMP_LIB_TARGET} ARCHIVE DESTINATION "${OPENMP_INSTALL_LIBDIR}") - # Create aliases (regular copies) of the library for backwards compatibility - set(LIBOMP_ALIASES "libiomp5md") -diff --git a/tools/multiplex/CMakeLists.txt b/tools/multiplex/CMakeLists.txt -index 64317c112176..4002784da736 100644 ---- a/tools/multiplex/CMakeLists.txt -+++ b/tools/multiplex/CMakeLists.txt -@@ -4,7 +4,7 @@ if(LIBOMP_OMPT_SUPPORT) - add_library(ompt-multiplex INTERFACE) - target_include_directories(ompt-multiplex INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}) - -- install(FILES ompt-multiplex.h DESTINATION include) -+ install(FILES ompt-multiplex.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) - - add_subdirectory(tests) - endif() diff --git a/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch b/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch new file mode 100644 index 00000000000..1e952fdc36a --- /dev/null +++ b/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch @@ -0,0 +1,12 @@ +diff --git a/cmake/OpenMPTesting.cmake b/cmake/OpenMPTesting.cmake +--- a/cmake/OpenMPTesting.cmake ++++ b/cmake/OpenMPTesting.cmake +@@ -185,7 +185,7 @@ function(add_openmp_testsuite target comment) + if (${OPENMP_STANDALONE_BUILD}) + set(LIT_ARGS ${OPENMP_LIT_ARGS} ${ARG_ARGS}) + add_custom_target(${target} +- COMMAND ${PYTHON_EXECUTABLE} ${OPENMP_LLVM_LIT_EXECUTABLE} ${LIT_ARGS} ${ARG_UNPARSED_ARGUMENTS} ++ COMMAND ${OPENMP_LLVM_LIT_EXECUTABLE} ${LIT_ARGS} ${ARG_UNPARSED_ARGUMENTS} + COMMENT ${comment} + DEPENDS ${ARG_DEPENDS} + USES_TERMINAL diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix index 72512a1202f..230f6ee19a2 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -20,6 +20,8 @@ let "0.54" = ./disable-graphviz-0.46.1.patch; + "0.56" = ./disable-graphviz-0.46.1.patch; + }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala"); disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz; @@ -68,7 +70,10 @@ let passthru = { updateScript = gnome.updateScript { - attrPath = "${pname}_${lib.versions.major version}_${lib.versions.minor version}"; + attrPath = + let + roundUpToEven = num: num + lib.mod num 2; + in "${pname}_${lib.versions.major version}_${builtins.toString (roundUpToEven (lib.toInt (lib.versions.minor version)))}"; packageName = pname; freeze = true; }; @@ -90,8 +95,13 @@ in rec { }; vala_0_54 = generic { - version = "0.54.7"; - sha256 = "Ygecof8C5dF65yqppa3GGuav3P67DZ8GBjo2776soMc="; + version = "0.54.8"; + sha256 = "7fs+eUhqS/SM666pKR5X/HfakyK2lh6VSd9tlz0EvIA="; + }; + + vala_0_56 = generic { + version = "0.56.0"; + sha256 = "2SvRPFYwkF7rapg9y3AiBNqXMUYMKm5OOfhnmW83EEA="; }; vala = vala_0_54; diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 5f72731de94..6ce380272a3 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -2059,10 +2059,8 @@ self: super: { # https://github.com/yi-editor/yi/issues/1124 yi-language = appendPatch (fetchpatch { url = "https://github.com/yi-editor/yi/commit/0d3bcb5ba4c237d57ce33a3dc39b63c56d890765.patch"; - sha256 = "0r4mzngs0x1akqpajzx7ssa9rax977fvj5ra8d3grfbpx6z0nm01"; - includes = [ "yi-language.cabal" ]; - stripLen = 2; - extraPrefix = ""; + relative = "yi-language"; + sha256 = "sha256-AVQLvul3ufxGQyoXud05qauclNanf6kunip0oJ/9lWQ="; }) (dontCheck super.yi-language); # 2022-03-16: Upstream is not bumping bounds https://github.com/ghcjs/jsaddle/issues/123 diff --git a/pkgs/development/java-modules/maven-fod.nix b/pkgs/development/java-modules/maven-fod.nix new file mode 100644 index 00000000000..24ce572af57 --- /dev/null +++ b/pkgs/development/java-modules/maven-fod.nix @@ -0,0 +1,56 @@ +{ lib +, stdenv +, maven +}: + +{ src +, patches ? [] +, pname +, version +, mvnSha256 ? "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" +, mvnHash ? "sha256-${mvnSha256}" +, mvnFetchExtraArgs ? {} +, mvnParameters ? "" +, ... +} @args: + +# originally extracted from dbeaver +# created to allow using maven packages in the same style as rust + +stdenv.mkDerivation (rec { + fetchedMavenDeps = stdenv.mkDerivation ({ + name = "${pname}-${version}-maven-deps"; + inherit src; + + buildInputs = [ + maven + ]; + + buildPhase = '' + mvn package -Dmaven.repo.local=$out/.m2 ${mvnParameters} + ''; + + # keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside + installPhase = '' + find $out -type f \ + -name \*.lastUpdated -or \ + -name resolver-status.properties -or \ + -name _remote.repositories \ + -delete + ''; + + # don't do any fixup + dontFixup = true; + outputHashMode = "recursive"; + outputHash = mvnHash; + } // mvnFetchExtraArgs); + + buildPhase = '' + runHook preBuild + + mvnDeps=$(cp -dpR ${fetchedMavenDeps}/.m2 ./ && chmod +w -R .m2 && pwd) + mvn package --offline "-Dmaven.repo.local=$mvnDeps/.m2" -P desktop,all-platforms + + runHook postBuild + ''; +} // args) diff --git a/pkgs/development/libraries/CGAL/4.nix b/pkgs/development/libraries/CGAL/4.nix index 7380a85248f..9c0305ec077 100644 --- a/pkgs/development/libraries/CGAL/4.nix +++ b/pkgs/development/libraries/CGAL/4.nix @@ -18,18 +18,14 @@ stdenv.mkDerivation rec { (fetchpatch { name = "gcc-12-prereq.patch"; url = "https://github.com/CGAL/cgal/commit/4581f1b7a8e97d1a136830e64b77cdae3546c4bf.patch"; - sha256 = "1gzrvbrwxylv80v0m3j2s1znlysmr69lp3ggagnh38lp6423i6pq"; - # Upstream slightly reordered directory structure since. - stripLen = 1; - # Fill patch does not apply: touches too many parts of the source. - includes = [ "include/CGAL/CORE/BigFloatRep.h" ]; + relative = "CGAL_Core"; # Upstream slightly reordered directory structure since. + sha256 = "sha256-4+7mzGSBwAv5RHBQPAecPPKNN/LQBgvYq5mq+fHAteo="; }) (fetchpatch { name = "gcc-12.patch"; url = "https://github.com/CGAL/cgal/commit/6680a6e6f994b2c5b9f068eb3014d12ee1134d53.patch"; - sha256 = "1c0h1lh8zng60yx78qc8wx714b517mil8mac87v6xr21q0b11wk7"; - # Upstream slightly reordered directory structure since. - stripLen = 1; + relative = "CGAL_Core"; # Upstream slightly reordered directory structure since. + sha256 = "sha256-8kxJDT47jXI9kQNFI/ARWl9JBNS4AfU57/D0tYlgW0M="; }) ]; diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix index 66b0c13646b..675c930d9ed 100644 --- a/pkgs/development/libraries/at-spi2-core/default.nix +++ b/pkgs/development/libraries/at-spi2-core/default.nix @@ -1,48 +1,66 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl - , meson , ninja , pkg-config , gobject-introspection , gsettings-desktop-schemas , makeWrapper - , dbus , glib , dconf , libX11 -, libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case +, libXtst , libXi , libXext - -, gnome # To pass updateScript +, gnome }: stdenv.mkDerivation rec { pname = "at-spi2-core"; - version = "2.42.0"; + version = "2.44.0"; + + outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "11p3lvmbm0hfck3p5xwxxycln8x0cf7l68jjz6an2g7sjh7a2pab"; + sha256 = "fu488oWwiQYP1rblGz6yys91LMo6CCx/TCxauEHlE1M="; }; - outputs = [ "out" "dev" ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + makeWrapper + ]; + + buildInputs = [ + libX11 + # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case + libXtst + libXi + # libXext is a transitive dependency of libXi + libXext + ]; - nativeBuildInputs = [ meson ninja pkg-config gobject-introspection makeWrapper ]; - # libXext is a transitive dependency of libXi - buildInputs = [ libX11 libXtst libXi libXext ]; # In atspi-2.pc dbus-1 glib-2.0 - propagatedBuildInputs = [ dbus glib ]; + propagatedBuildInputs = [ + dbus + glib + ]; - doCheck = false; # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?" + # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?" + doCheck = false; - # Provide dbus-daemon fallback when it is not already running when - # at-spi2-bus-launcher is executed. This allows us to avoid - # including the entire dbus closure in libraries linked with - # the at-spi2-core libraries. - mesonFlags = [ "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" ]; + mesonFlags = [ + # Provide dbus-daemon fallback when it is not already running when + # at-spi2-bus-launcher is executed. This allows us to avoid + # including the entire dbus closure in libraries linked with + # the at-spi2-core libraries. + "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" + ]; passthru = { updateScript = gnome.updateScript { diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix index 8084065ce06..c0fce3ae576 100644 --- a/pkgs/development/libraries/boost/generic.nix +++ b/pkgs/development/libraries/boost/generic.nix @@ -137,10 +137,8 @@ stdenv.mkDerivation { ++ optional (versionAtLeast version "1.73") ./cmake-paths-173.patch ++ optional (version == "1.77.0") (fetchpatch { url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch"; + relative = "include"; sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4="; - stripLen = 2; - extraPrefix = ""; - includes = [ "boost/math/special_functions/detail/bernoulli_details.hpp" ]; }); meta = { diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix index 965016e1c74..f6161535df5 100644 --- a/pkgs/development/libraries/folks/default.nix +++ b/pkgs/development/libraries/folks/default.nix @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "folks"; - version = "0.15.4"; + version = "0.15.5"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "5xCZr8noj61OdXrhNLw/1j4SuQGtYrDtVTavt5Ekr18="; + sha256 = "D/+KiWMwzYKu5FmDJPflQciE0DN1NiEnI7S+s4x1kIY="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index 3182a4b3998..1e9c881ae8c 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -28,7 +28,7 @@ let in stdenv.mkDerivation rec { pname = "gdk-pixbuf"; - version = "2.42.6"; + version = "2.42.8"; outputs = [ "out" "dev" "man" ] ++ lib.optional withGtkDoc "devdoc" @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0zz7pmw2z46g7mr1yjxbsdldd5pd03xbjc58inj8rxfqgrdvg9n4"; + sha256 = "hKzqOsskEbKRNLMgFaWxqqYoRLGcSx74uJccawdZ9MY="; }; patches = [ @@ -111,10 +111,6 @@ stdenv.mkDerivation rec { '' + lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' # We need to install 'loaders.cache' in lib/gdk-pixbuf-2.0/2.10.0/ $dev/bin/gdk-pixbuf-query-loaders --update-cache - '' + lib.optionalString withGtkDoc '' - # So that devhelp can find this. - mkdir -p "$devdoc/share/devhelp" - mv "$out/share/doc" "$devdoc/share/devhelp/books" ''; # The fixDarwinDylibNames hook doesn't patch binaries. @@ -124,6 +120,11 @@ stdenv.mkDerivation rec { done ''; + postFixup = lib.optionalString withGtkDoc '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + # The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB). inherit doCheck; diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix index 07c97ea6e0d..42ba3bd46df 100644 --- a/pkgs/development/libraries/gjs/default.nix +++ b/pkgs/development/libraries/gjs/default.nix @@ -8,7 +8,7 @@ , gtk3 , atk , gobject-introspection -, spidermonkey_78 +, spidermonkey_91 , pango , cairo , readline @@ -30,13 +30,13 @@ let ]; in stdenv.mkDerivation rec { pname = "gjs"; - version = "1.70.1"; + version = "1.72.0"; outputs = [ "out" "dev" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-u9wO7HzyX7xTR2n2ofssehjhe4ce/bDKWOmr8IsoAD8="; + sha256 = "sha256-PvDK9xbjkg3WH3dI9tVuR2zA/Bg1GtBUjn3xoKub3K0="; }; patches = [ @@ -60,7 +60,7 @@ in stdenv.mkDerivation rec { gobject-introspection cairo readline - spidermonkey_78 + spidermonkey_91 dbus # for dbus-run-session ]; diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix index 1a693e0e045..fce73f74660 100644 --- a/pkgs/development/libraries/glib-networking/default.nix +++ b/pkgs/development/libraries/glib-networking/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "glib-networking"; - version = "2.70.1"; + version = "2.72.0"; outputs = [ "out" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Kha/wtJxzNMmbj+0YryKQQPALoG7szmqktb7BgWS17w="; + sha256 = "EAquuzaShQQd5S2kIra3FnidXk11SaOnG6WHuTLggjs="; }; patches = [ diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index c98058768b2..ecae47b3d2d 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -45,16 +45,15 @@ in stdenv.mkDerivation rec { pname = "glib"; - version = "2.70.3"; + version = "2.72.0"; src = fetchurl { url = "mirror://gnome/sources/glib/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Iz+khBweGeOW23YH1Y9rdbozE8UL8Pzgey41MtXrfUY="; + sha256 = "177w1MTnpi4I77jl8lKgE1cAe5WIqH/ytGOjhXAR950="; }; patches = optionals stdenv.isDarwin [ ./darwin-compilation.patch - ./link-with-coreservices.patch ] ++ optionals stdenv.hostPlatform.isMusl [ ./quark_init_on_demand.patch ./gobject_init_on_demand.patch @@ -116,7 +115,10 @@ stdenv.mkDerivation rec { strictDeps = true; nativeBuildInputs = [ - meson ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 + (meson.override { + withDarwinFrameworksGtkDocPatch = stdenv.isDarwin; + }) + ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 ]; propagatedBuildInputs = [ zlib libffi gettext libiconv ]; @@ -142,8 +144,8 @@ stdenv.mkDerivation rec { chmod +x docs/reference/gio/concat-files-helper.py patchShebangs docs/reference/gio/concat-files-helper.py patchShebangs glib/gen-unicode-tables.pl - patchShebangs tests/gen-casefold-txt.py - patchShebangs tests/gen-casemap-txt.py + patchShebangs glib/tests/gen-casefold-txt.py + patchShebangs glib/tests/gen-casemap-txt.py '' + lib.optionalString stdenv.hostPlatform.isWindows '' substituteInPlace gio/win32/meson.build \ --replace "libintl, " "" diff --git a/pkgs/development/libraries/glib/link-with-coreservices.patch b/pkgs/development/libraries/glib/link-with-coreservices.patch deleted file mode 100644 index dcc0a8998cc..00000000000 --- a/pkgs/development/libraries/glib/link-with-coreservices.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/meson.build.orig 2020-11-25 13:47:38.499149252 +0900 -+++ b/meson.build 2020-11-25 13:48:47.098444800 +0900 -@@ -742,7 +742,7 @@ - - if glib_have_carbon - glib_conf.set('HAVE_CARBON', true) -- osx_ldflags += '-Wl,-framework,Carbon' -+ osx_ldflags += ['-Wl,-framework,Carbon', '-Wl,-framework,CoreServices'] - glib_have_os_x_9_or_later = objcc.compiles('''#include <AvailabilityMacros.h> - #if MAC_OS_X_VERSION_MIN_REQUIRED < 1090 - #error Compiling for minimum OS X version before 10.9 diff --git a/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch b/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch index c31e093f4b7..c31e093f4b7 100644 --- a/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch +++ b/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch diff --git a/pkgs/desktops/gnome/core/gnome-desktop/default.nix b/pkgs/development/libraries/gnome-desktop/default.nix index 302d201f234..5d682e23b27 100644 --- a/pkgs/desktops/gnome/core/gnome-desktop/default.nix +++ b/pkgs/development/libraries/gnome-desktop/default.nix @@ -7,6 +7,7 @@ , ninja , gnome , gtk3 +, gtk4 , glib , gettext , libxml2 @@ -26,13 +27,13 @@ stdenv.mkDerivation rec { pname = "gnome-desktop"; - version = "41.3"; + version = "42.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-jNHKq5MRgowEUkaMalBnqbxEY4NbI6FL5E6P2bAwAcY="; + sha256 = "sha256-88qik6Xob2zK0Y+BcnPbHGcGHmgNedg5qop1KOW7JtY="; }; patches = [ @@ -63,6 +64,7 @@ stdenv.mkDerivation rec { isocodes wayland gtk3 + gtk4 glib libseccomp systemd @@ -84,7 +86,6 @@ stdenv.mkDerivation rec { passthru = { updateScript = gnome.updateScript { packageName = "gnome-desktop"; - attrPath = "gnome.gnome-desktop"; }; }; diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix index 9337a8e93d6..f58e87b2f7e 100644 --- a/pkgs/development/libraries/gnome-online-accounts/default.nix +++ b/pkgs/development/libraries/gnome-online-accounts/default.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { pname = "gnome-online-accounts"; - version = "3.40.1"; + version = "3.43.1"; # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87 src = fetchFromGitLab { @@ -38,7 +38,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "gnome-online-accounts"; rev = version; - sha256 = "sha256-q4bLGOOGoGH/Et3hu7/372tjNMouX9ePTanIo0c4Jbw="; + sha256 = "sha256-Dpq5bQwU0ZAxmEllpbLnS1Jz3F0rxtFMKZcIvAteObU="; }; outputs = [ "out" "man" "dev" "devdoc" ]; diff --git a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch index c02330adf6d..b6dc66fc66b 100644 --- a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch +++ b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch @@ -1,3 +1,5 @@ +diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py +index 64575557..1eb0a2b4 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py @@ -95,6 +95,39 @@ def get_windows_option_group(parser): @@ -41,16 +43,18 @@ parser = optparse.OptionParser('%prog [options] sources', version='%prog ' + giscanner.__version__) @@ -214,6 +247,10 @@ match the namespace prefix.""") - parser.add_option("", "--filelist", - action="store", dest="filelist", default=[], - help="file containing headers and sources to be scanned") + parser.add_option("", "--c-include", + action="append", dest="c_includes", default=[], + help="headers which should be included in C programs") + parser.add_option("", "--fallback-library-path", + action="store", dest="fallback_libpath", + default=_get_default_fallback_libpath(), + help="Path to prepend to unknown shared libraries") - - group = get_preprocessor_option_group(parser) - parser.add_option_group(group) + parser.add_option("", "--filelist", + action="store", dest="filelist", default=[], + help="file containing headers and sources to be scanned") +diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py +index 9f8ab5df..af325022 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py @@ -57,6 +57,12 @@ def _ldd_library_pattern(library_name): @@ -115,9 +119,11 @@ if m: del patterns[library] shlibs.append(m.group()) +diff --git a/giscanner/utils.py b/giscanner/utils.py +index 31c7ea48..630002a8 100644 --- a/giscanner/utils.py +++ b/giscanner/utils.py -@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file): +@@ -114,16 +114,11 @@ def extract_libtool_shlib(la_file): if dlname is None: return None @@ -139,6 +145,8 @@ # Returns arguments for invoking libtool, if applicable, otherwise None +diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py +index a8337c60..72789d76 100644 --- a/tests/scanner/test_shlibs.py +++ b/tests/scanner/test_shlibs.py @@ -7,6 +7,30 @@ from giscanner.shlibs import resolve_from_ldd_output, sanitize_shlib_path diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix index 667d50ca4d8..b457331983a 100644 --- a/pkgs/development/libraries/gobject-introspection/default.nix +++ b/pkgs/development/libraries/gobject-introspection/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , glib , flex @@ -26,7 +27,7 @@ stdenv.mkDerivation rec { pname = "gobject-introspection"; - version = "1.70.0"; + version = "1.72.0"; # outputs TODO: share/gobject-introspection-1.0/tests is needed during build # by pygobject3 (and maybe others), but it's only searched in $out @@ -35,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0jpwraip7pwl9bf9s59am3r7074p34fasvfb5ym1fb8hwc34jawh"; + sha256 = "Av6OWQhh2I+DBg3TnNpcyqYLLaHSHQ+VSZMBsYa+qrw="; }; patches = [ @@ -46,15 +47,6 @@ stdenv.mkDerivation rec { src = ./absolute_shlib_path.patch; inherit nixStoreDir; }) - # Fix build with meson 0.61.0 - (fetchurl { - url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/827494d6415b696a98fa195cbd883b50cc893bfc.patch"; - sha256 = "sha256-imVWzU760FRsX+eXREQDQ6mDcmzZ5ASLT9rBf4oyBGQ="; - }) - (fetchurl { - url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch"; - sha256 = "sha256-o7a0qDT5IYcYcz8toeZu+nPj3SwS52sNgmxgzsmlp4Q="; - }) ] ++ lib.optionals x11Support [ # Hardcode the cairo shared library path in the Cairo gir shipped with this package. # https://github.com/NixOS/nixpkgs/issues/34080 diff --git a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix index 483ee0b0849..085544a3612 100644 --- a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix +++ b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "gsettings-desktop-schemas"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "dyiZcuWW0ERYPwwFYwbY8dvYrc+RKRClDaCmY+ZTMu0="; + sha256 = "ZoYzWp7WI/euInb++lCkENTnHUIxiAgkcUBwyzFzI9I="; }; strictDeps = true; diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index bb145159447..c736c5cc761 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -2,7 +2,6 @@ , stdenv , substituteAll , fetchurl -, fetchpatch , pkg-config , gettext , docbook-xsl-nons @@ -60,7 +59,7 @@ in stdenv.mkDerivation rec { pname = "gtk+3"; - version = "3.24.31"; + version = "3.24.33"; outputs = [ "out" "dev" ] ++ lib.optional withGtkDoc "devdoc"; outputBin = "dev"; @@ -72,7 +71,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz"; - sha256 = "sha256-Qjw+f9tMRZ7oieNf1Ncf0mI1YlQcEEGxHAflrR/xC/k="; + sha256 = "sha256-WIsGUi4l0VeemJtvnYob2/L+E83gGgTpBP80aiJeeAE="; }; patches = [ @@ -84,12 +83,6 @@ stdenv.mkDerivation rec { # e.g. https://gitlab.gnome.org/GNOME/gtk/blob/3.24.4/gtk/gtk-launch.c#L31-33 # https://gitlab.gnome.org/GNOME/gtk/merge_requests/536 ./patches/3.0-darwin-x11.patch - - # 3.24.31 does not declare QuartzCore dependency properly and fails to link - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/0ac61443694b477c41fc246cb387ef86aba441de.patch"; - sha256 = "sha256-KaMeIdV/gfM4xzN9lIkY99E7bzAfTM6VETk5DEunB2w="; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix index 6da3fc769ea..db682d99dca 100644 --- a/pkgs/development/libraries/gtk/4.x.nix +++ b/pkgs/development/libraries/gtk/4.x.nix @@ -62,7 +62,7 @@ in stdenv.mkDerivation rec { pname = "gtk4"; - version = "4.6.1"; + version = "4.6.2"; outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ]; outputBin = "dev"; @@ -74,7 +74,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz"; - sha256 = "2FUI0hy7zWPVaKeGKvXs1juXjX1XmcvkBMkdI4nQ7F8="; + sha256 = "/yY69gmlDrdgVmU1ktkpRZrvSBmkRMQ29tUsb2PB+uw="; }; nativeBuildInputs = [ @@ -202,13 +202,6 @@ stdenv.mkDerivation rec { for f in $dev/bin/gtk4-encode-symbolic-svg; do wrapProgram $f --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" done - - '' + lib.optionalString x11Support '' - # So that DevHelp can find this. - # TODO: Remove this with DevHelp 41. - mkdir -p "$devdoc/share/devhelp/books" - mv "$out/share/doc/"* "$devdoc/share/devhelp/books" - rmdir -p --ignore-fail-on-non-empty "$out/share/doc" ''; # Wrap demos @@ -219,6 +212,9 @@ stdenv.mkDerivation rec { wrapProgram $dev/bin/$program \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share/gsettings-schemas/${pname}-${version}" done + '' + lib.optionalString x11Support '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/gtkmm/4.x.nix b/pkgs/development/libraries/gtkmm/4.x.nix index 1960a04e95f..c91e7b54ff2 100644 --- a/pkgs/development/libraries/gtkmm/4.x.nix +++ b/pkgs/development/libraries/gtkmm/4.x.nix @@ -17,13 +17,13 @@ stdenv.mkDerivation rec { pname = "gtkmm"; - version = "4.6.0"; + version = "4.6.1"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "E1OgkJPLVx71rAXZPSALrxMq1gS19JQHd2VuFQWBTB8="; + sha256 = "DV7+yp7GT91TC7gibGMQrJlUmz3ZYE1uNnY5eRrz0eA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gtksourceview/4.x.nix b/pkgs/development/libraries/gtksourceview/4.x.nix index 0095b6ca9e0..74acd6f743d 100644 --- a/pkgs/development/libraries/gtksourceview/4.x.nix +++ b/pkgs/development/libraries/gtksourceview/4.x.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gtksourceview"; - version = "4.8.2"; + version = "4.8.3"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1k1pava84ywgq62xl5bz8y3zm7z2kz6kkgp423c0y02jrgjyfbc4"; + sha256 = "wwAZUGMgyiR02DTM7R4iF+pTPgDrKj9Ot4eQB5QOxoI="; }; patches = [ diff --git a/pkgs/development/libraries/gtksourceview/5.x.nix b/pkgs/development/libraries/gtksourceview/5.x.nix index e6ad0f1ae36..81c0abd61b6 100644 --- a/pkgs/development/libraries/gtksourceview/5.x.nix +++ b/pkgs/development/libraries/gtksourceview/5.x.nix @@ -10,6 +10,7 @@ , pango , fribidi , vala +, gi-docgen , libxml2 , perl , gettext @@ -22,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gtksourceview"; - version = "5.2.0"; + version = "5.4.0"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "ybNPoCZU9WziL6CIJ9idtLqBYxsubX0x6mXRPHKUMOk="; + sha256 = "ADvCF+ZwqOyKo67OmUtw5wt9a4B0k4rdohcYVV2E5jc="; }; patches = [ @@ -46,6 +47,7 @@ stdenv.mkDerivation rec { perl gobject-introspection vala + gi-docgen ]; buildInputs = [ @@ -68,6 +70,10 @@ stdenv.mkDerivation rec { dbus ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + doCheck = stdenv.isLinux; checkPhase = '' @@ -81,6 +87,11 @@ stdenv.mkDerivation rec { runHook postCheck ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = "gtksourceview"; diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix index c79f849d22f..e02a0be4d28 100644 --- a/pkgs/development/libraries/gvfs/default.nix +++ b/pkgs/development/libraries/gvfs/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja @@ -17,6 +18,7 @@ , fuse3 , libcdio , libxml2 +, libsoup_3 , libxslt , docbook_xsl , docbook_xml_dtd_42 @@ -41,11 +43,11 @@ stdenv.mkDerivation rec { pname = "gvfs"; - version = "1.48.1"; + version = "1.50.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj"; + sha256 = "y8L1ZNLp8Ax2BnP0LWgDvOPggat/+0RW3v//upM5tN0="; }; postPatch = '' @@ -89,9 +91,8 @@ stdenv.mkDerivation rec { libnfs openssh gsettings-desktop-schemas - # TODO: a ligther version of libsoup to have FTP/HTTP support? + libsoup_3 ] ++ lib.optionals gnomeSupport [ - gnome.libsoup gcr glib-networking # TLS support gnome-online-accounts @@ -106,7 +107,6 @@ stdenv.mkDerivation rec { "-Dgcr=false" "-Dgoa=false" "-Dkeyring=false" - "-Dhttp=false" "-Dgoogle=false" ] ++ lib.optionals (avahi == null) [ "-Ddnssd=false" diff --git a/pkgs/development/libraries/jsonrpc-glib/default.nix b/pkgs/development/libraries/jsonrpc-glib/default.nix index 7618110e86c..fb828e5b571 100644 --- a/pkgs/development/libraries/jsonrpc-glib/default.nix +++ b/pkgs/development/libraries/jsonrpc-glib/default.nix @@ -1,18 +1,42 @@ -{ lib, stdenv, fetchurl, meson, ninja, glib, json-glib, pkg-config, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gnome }: +{ stdenv +, lib +, fetchurl +, meson +, ninja +, glib +, json-glib +, pkg-config +, gobject-introspection +, vala +, gi-docgen +, gnome +}: + stdenv.mkDerivation rec { pname = "jsonrpc-glib"; - version = "3.40.0"; + version = "3.42.0"; outputs = [ "out" "dev" "devdoc" ]; - nativeBuildInputs = [ meson ninja pkg-config gobject-introspection vala gtk-doc docbook_xsl docbook_xml_dtd_43 ]; - buildInputs = [ glib json-glib ]; - src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "wuPRYlfHJmzTkBiE4iN1V1v2Go4fZ1lsiODYeucNDvQ="; + sha256 = "IhmJpXyoKhJGfcQngizXZRsMrQOBQMkxAnvxB0IIJ2s="; }; + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + vala + gi-docgen + ]; + + buildInputs = [ + glib + json-glib + ]; + mesonFlags = [ "-Denable_gtk_doc=true" ]; @@ -21,6 +45,11 @@ stdenv.mkDerivation rec { # https://gitlab.gnome.org/GNOME/jsonrpc-glib/issues/2 doCheck = false; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 856ec30bccb..447ad06e9b8 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "libadwaita"; - version = "1.0.2"; + version = "1.1.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "devdoc"; # demo app @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "libadwaita"; rev = version; - hash = "sha256-D7Qq8yAWkr/G5I4k8G1+viJkEJSrCBAg31Q+g3U9FcQ="; + hash = "sha256-+bgCD2jy3M0gEAtbB+nOptQGEXXkvk1idoggJz4UMy0="; }; nativeBuildInputs = [ @@ -91,6 +91,12 @@ stdenv.mkDerivation rec { mv $out/share/{doc,gtk-doc} ''; + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + }; + }; + meta = with lib; { description = "Library to help with developing UI for mobile devices using GTK/GNOME"; homepage = "https://gitlab.gnome.org/GNOME/libadwaita"; diff --git a/pkgs/development/libraries/libass/default.nix b/pkgs/development/libraries/libass/default.nix index 19f6589ec95..704dcd2c73d 100644 --- a/pkgs/development/libraries/libass/default.nix +++ b/pkgs/development/libraries/libass/default.nix @@ -40,6 +40,5 @@ stdenv.mkDerivation rec { license = licenses.isc; platforms = platforms.unix; maintainers = with maintainers; [ codyopel ]; - repositories.git = "git://github.com/libass/libass.git"; }; } diff --git a/pkgs/development/libraries/libcec/default.nix b/pkgs/development/libraries/libcec/default.nix index e03416a221c..039d3af3760 100644 --- a/pkgs/development/libraries/libcec/default.nix +++ b/pkgs/development/libraries/libcec/default.nix @@ -25,7 +25,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Allows you (with the right hardware) to control your device with your TV remote control using existing HDMI cabling"; homepage = "http://libcec.pulse-eight.com"; - repositories.git = "https://github.com/Pulse-Eight/libcec.git"; license = lib.licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.titanous ]; diff --git a/pkgs/development/libraries/libcec/platform.nix b/pkgs/development/libraries/libcec/platform.nix index cba1d0ba4c5..d9594c90b62 100644 --- a/pkgs/development/libraries/libcec/platform.nix +++ b/pkgs/development/libraries/libcec/platform.nix @@ -16,7 +16,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Platform library for libcec and Kodi addons"; homepage = "https://github.com/Pulse-Eight/platform"; - repositories.git = "https://github.com/Pulse-Eight/platform.git"; license = lib.licenses.gpl2Plus; platforms = platforms.all; maintainers = [ maintainers.titanous ]; diff --git a/pkgs/development/libraries/libdazzle/default.nix b/pkgs/development/libraries/libdazzle/default.nix index 426ffadf4c6..7f4c53071d0 100644 --- a/pkgs/development/libraries/libdazzle/default.nix +++ b/pkgs/development/libraries/libdazzle/default.nix @@ -1,20 +1,53 @@ -{ lib, stdenv, fetchurl, ninja, meson, pkg-config, vala, gobject-introspection, libxml2 -, gtk-doc, docbook_xsl, docbook_xml_dtd_43, dbus, xvfb-run, glib, gtk3, gnome }: +{ lib +, stdenv +, fetchurl +, ninja +, meson +, pkg-config +, vala +, gobject-introspection +, libxml2 +, gtk-doc +, docbook_xsl +, docbook_xml_dtd_43 +, dbus +, xvfb-run +, glib +, gtk3 +, gnome +}: stdenv.mkDerivation rec { pname = "libdazzle"; - version = "3.42.0"; + version = "3.44.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "dev"; src = fetchurl { url = "mirror://gnome/sources/libdazzle/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "09b9l56yiwad7xqr7g7ragmm4gmqxjnvc2pcx6741klw7lxpmrpa"; + sha256 = "PNPkXrbiaAywXVLh6A3Y+dWdR2UhLw4o945sF4PRjq4="; }; - nativeBuildInputs = [ ninja meson pkg-config vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb-run glib ]; - buildInputs = [ glib gtk3 ]; + nativeBuildInputs = [ + ninja + meson + pkg-config + vala + gobject-introspection + libxml2 + gtk-doc + docbook_xsl + docbook_xml_dtd_43 + dbus + xvfb-run + glib + ]; + + buildInputs = [ + glib + gtk3 + ]; mesonFlags = [ "-Denable_gtk_doc=true" diff --git a/pkgs/development/libraries/libgcrypt/1.5.nix b/pkgs/development/libraries/libgcrypt/1.5.nix index b30aa89b148..918ed20efaa 100644 --- a/pkgs/development/libraries/libgcrypt/1.5.nix +++ b/pkgs/development/libraries/libgcrypt/1.5.nix @@ -38,7 +38,6 @@ stdenv.mkDerivation rec { description = "General-pupose cryptographic library"; license = licenses.lgpl2Plus; platforms = platforms.all; - repositories.git = "git://git.gnupg.org/libgcrypt.git"; knownVulnerabilities = [ "CVE-2014-3591" "CVE-2015-0837" diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix index 9195019b055..eb4e8e94862 100644 --- a/pkgs/development/libraries/libgcrypt/default.nix +++ b/pkgs/development/libraries/libgcrypt/default.nix @@ -78,6 +78,5 @@ stdenv.mkDerivation rec { license = licenses.lgpl2Plus; platforms = platforms.all; maintainers = with maintainers; [ vrthra ]; - repositories.git = "git://git.gnupg.org/libgcrypt.git"; }; } diff --git a/pkgs/development/libraries/libgnome-games-support/2.0.nix b/pkgs/development/libraries/libgnome-games-support/2.0.nix new file mode 100644 index 00000000000..a5f1c2576b9 --- /dev/null +++ b/pkgs/development/libraries/libgnome-games-support/2.0.nix @@ -0,0 +1,59 @@ +{ stdenv +, lib +, fetchurl +, pkg-config +, glib +, gtk4 +, libgee +, gettext +, vala +, gnome +, libintl +, meson +, ninja +}: + +stdenv.mkDerivation rec { + pname = "libgnome-games-support"; + version = "2.0.0"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "U4Ifb+Mu3cue7zMk9kaqrIPMbT3gk339XyZkcNRT0qQ="; + }; + + nativeBuildInputs = [ + gettext + meson + ninja + pkg-config + vala + ]; + + buildInputs = [ + libintl + ]; + + propagatedBuildInputs = [ + # Required by libgnome-games-support-2.pc + glib + gtk4 + libgee + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "${pname}_2_0"; + versionPolicy = "odd-unstable"; + }; + }; + + meta = with lib; { + description = "Small library intended for internal use by GNOME Games, but it may be used by others"; + homepage = "https://wiki.gnome.org/Apps/Games"; + license = licenses.lgpl3Plus; + maintainers = teams.gnome.members; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/libgnome-games-support/default.nix b/pkgs/development/libraries/libgnome-games-support/default.nix index 80c76ea980f..e63d7f8fe65 100644 --- a/pkgs/development/libraries/libgnome-games-support/default.nix +++ b/pkgs/development/libraries/libgnome-games-support/default.nix @@ -44,6 +44,7 @@ stdenv.mkDerivation rec { updateScript = gnome.updateScript { packageName = pname; versionPolicy = "odd-unstable"; + freeze = true; }; }; diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix index 1850da7e646..8bc2dc76160 100644 --- a/pkgs/development/libraries/libgsf/default.nix +++ b/pkgs/development/libraries/libgsf/default.nix @@ -1,26 +1,59 @@ -{ fetchurl, lib, stdenv, pkg-config, intltool, gettext, glib, libxml2, zlib, bzip2 -, perl, gdk-pixbuf, libiconv, libintl, gnome }: +{ fetchurl +, lib +, stdenv +, pkg-config +, intltool +, gettext +, glib +, libxml2 +, zlib +, bzip2 +, perl +, gdk-pixbuf +, libiconv +, libintl +, gnome +}: stdenv.mkDerivation rec { pname = "libgsf"; - version = "1.14.48"; + version = "1.14.49"; + + outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/4bX8dRt0Ovvt72DCnSkHbZDYrmHv4hT//arTBEyuDc="; + sha256 = "6evjZojwEMnm5AyJA/NzKUjeuKygMleNB9B1G9gs+Fc="; }; - nativeBuildInputs = [ pkg-config intltool libintl ]; + nativeBuildInputs = [ + pkg-config + intltool + libintl + ]; - buildInputs = [ gettext bzip2 zlib ]; - checkInputs = [ perl ]; + buildInputs = [ + gettext + bzip2 + zlib + ]; - propagatedBuildInputs = [ libxml2 glib gdk-pixbuf libiconv ]; + checkInputs = [ + perl + ]; - outputs = [ "out" "dev" ]; + propagatedBuildInputs = [ + libxml2 + glib + gdk-pixbuf + libiconv + ]; doCheck = true; - preCheck = "patchShebangs ./tests/"; + + preCheck = '' + patchShebangs ./tests/ + ''; passthru = { updateScript = gnome.updateScript { @@ -31,10 +64,10 @@ stdenv.mkDerivation rec { meta = with lib; { description = "GNOME's Structured File Library"; - homepage = "https://www.gnome.org/projects/libgsf"; - license = licenses.lgpl2Plus; + homepage = "https://www.gnome.org/projects/libgsf"; + license = licenses.lgpl2Plus; maintainers = with maintainers; [ lovek323 ]; - platforms = lib.platforms.unix; + platforms = lib.platforms.unix; longDescription = '' Libgsf aims to provide an efficient extensible I/O abstraction for diff --git a/pkgs/development/libraries/libgweather/default.nix b/pkgs/development/libraries/libgweather/default.nix index fbab67e0865..e4a527ba485 100644 --- a/pkgs/development/libraries/libgweather/default.nix +++ b/pkgs/development/libraries/libgweather/default.nix @@ -6,12 +6,9 @@ , pkg-config , libxml2 , glib -, gtk3 , gettext , libsoup -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , gobject-introspection , python3 , tzdata @@ -22,24 +19,29 @@ stdenv.mkDerivation rec { pname = "libgweather"; - version = "40.0"; + version = "4.0.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1rkf4yv43qcahyx7bismdv6z2vh5azdnm1fqfmnzrada9cm8ykna"; + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "RA1EgBtvcrSMZ25eN/kQnP7hOU/XTMknJeGxuk+ug0w="; }; + patches = [ + # Headers depend on glib but it is only listed in Requires.private, + # which does not influence Cflags on non-static builds in nixpkgs’s + # pkg-config. Let’s add it to Requires to ensure Cflags are set correctly. + ./fix-pkgconfig.patch + ]; + nativeBuildInputs = [ meson ninja pkg-config gettext vala - gtk-doc - docbook-xsl-nons - docbook_xml_dtd_43 + gi-docgen gobject-introspection python3 python3.pkgs.pygobject3 @@ -47,7 +49,6 @@ stdenv.mkDerivation rec { buildInputs = [ glib - gtk3 libsoup libxml2 geocode-glib @@ -60,9 +61,13 @@ stdenv.mkDerivation rec { ]; postPatch = '' - chmod +x meson/meson_post_install.py - patchShebangs meson/meson_post_install.py - patchShebangs data/gen_locations_variant.py + patchShebangs build-aux/meson/meson_post_install.py + patchShebangs build-aux/meson/gen_locations_variant.py + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/libgweather/fix-pkgconfig.patch b/pkgs/development/libraries/libgweather/fix-pkgconfig.patch new file mode 100644 index 00000000000..b118a3bc9dd --- /dev/null +++ b/pkgs/development/libraries/libgweather/fix-pkgconfig.patch @@ -0,0 +1,14 @@ +diff --git a/libgweather/meson.build b/libgweather/meson.build +index b5d0b4d4..10010d70 100644 +--- a/libgweather/meson.build ++++ b/libgweather/meson.build +@@ -269,6 +269,9 @@ pkgconfig.generate( + description: 'Gather weather information from online services', + version: meson.project_version(), + subdirs: libgweather_full_version, ++ requires: [ ++ 'glib-2.0', ++ ], + variables: [ + 'soupapiversion=' + libsoup_api_version, + ] diff --git a/pkgs/development/libraries/libhandy/0.x.nix b/pkgs/development/libraries/libhandy/0.x.nix index 7597aee697a..2c2b09b4492 100644 --- a/pkgs/development/libraries/libhandy/0.x.nix +++ b/pkgs/development/libraries/libhandy/0.x.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitLab, meson, ninja, pkg-config, gobject-introspection, vala , gtk-doc, docbook_xsl, docbook_xml_dtd_43 -, gtk3, gnome +, gtk3, gnome-desktop , dbus, xvfb-run, libxml2 , hicolor-icon-theme }: @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { meson ninja pkg-config gobject-introspection vala libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 ]; - buildInputs = [ gnome.gnome-desktop gtk3 libxml2 ]; + buildInputs = [ gnome-desktop gtk3 libxml2 ]; checkInputs = [ dbus xvfb-run hicolor-icon-theme ]; mesonFlags = [ diff --git a/pkgs/development/libraries/libhandy/default.nix b/pkgs/development/libraries/libhandy/default.nix index 63c494999a9..c1d81f8043c 100644 --- a/pkgs/development/libraries/libhandy/default.nix +++ b/pkgs/development/libraries/libhandy/default.nix @@ -6,16 +6,13 @@ , pkg-config , gobject-introspection , vala -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , glib , gsettings-desktop-schemas , gtk3 , enableGlade ? false , glade , xvfb-run -, libxml2 , gdk-pixbuf , librsvg , hicolor-icon-theme @@ -28,7 +25,7 @@ stdenv.mkDerivation rec { pname = "libhandy"; - version = "1.5.0"; + version = "1.6.1"; outputs = [ "out" @@ -41,15 +38,12 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-RmueAmwfnrO2WWb1MNl3A6ghLar5EXSMFF6cuEPb1v4="; + sha256 = "sha256-bqsDhEBNVr0bH6BZ2aCBF3d49q4ID/whIPKGVsp0YqQ="; }; nativeBuildInputs = [ - docbook_xml_dtd_43 - docbook-xsl-nons gobject-introspection - gtk-doc - libxml2 + gi-docgen meson ninja pkg-config @@ -59,7 +53,6 @@ stdenv.mkDerivation rec { buildInputs = [ gdk-pixbuf gtk3 - libxml2 ] ++ lib.optionals enableGlade [ glade ]; @@ -106,6 +99,11 @@ stdenv.mkDerivation rec { runHook postCheck ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix index f4a1959a512..77c595c9184 100644 --- a/pkgs/development/libraries/libical/default.nix +++ b/pkgs/development/libraries/libical/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { pname = "libical"; - version = "3.0.11"; + version = "3.0.14"; outputs = [ "out" "dev" ]; # "devdoc" ]; @@ -28,7 +28,7 @@ stdenv.mkDerivation rec { owner = "libical"; repo = "libical"; rev = "v${version}"; - sha256 = "sha256-9kMYqWITZ2LlBDebJUZFWyVclAjfIZtc3Dm7lii9ZMc="; + sha256 = "sha256-gZ6IBjG5pNKJ+hWcTzXMP7yxL4he4LTklZGoC9vXra8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/libidn/default.nix b/pkgs/development/libraries/libidn/default.nix index e47bb070a36..a84b617e4c0 100644 --- a/pkgs/development/libraries/libidn/default.nix +++ b/pkgs/development/libraries/libidn/default.nix @@ -35,7 +35,6 @@ stdenv.mkDerivation rec { included. ''; - repositories.git = "git://git.savannah.gnu.org/libidn.git"; license = lib.licenses.lgpl2Plus; platforms = lib.platforms.all; maintainers = with lib.maintainers; [ lsix ]; diff --git a/pkgs/development/libraries/libidn2/default.nix b/pkgs/development/libraries/libidn2/default.nix index 2b5434e723a..d8294f56adc 100644 --- a/pkgs/development/libraries/libidn2/default.nix +++ b/pkgs/development/libraries/libidn2/default.nix @@ -39,7 +39,6 @@ stdenv.mkDerivation rec { detailed information. ''; - repositories.git = "https://gitlab.com/jas/libidn2"; license = with lib.licenses; [ lgpl3Plus gpl2Plus gpl3Plus ]; platforms = lib.platforms.all; maintainers = with lib.maintainers; [ fpletz ]; diff --git a/pkgs/development/libraries/liblastfm/default.nix b/pkgs/development/libraries/liblastfm/default.nix index 6b28175a9b6..0f0fec46a27 100644 --- a/pkgs/development/libraries/liblastfm/default.nix +++ b/pkgs/development/libraries/liblastfm/default.nix @@ -27,7 +27,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://github.com/lastfm/liblastfm"; - repositories.git = "git://github.com/lastfm/liblastfm.git"; description = "Official LastFM library"; platforms = platforms.unix; maintainers = [ ]; diff --git a/pkgs/development/libraries/liboauth/default.nix b/pkgs/development/libraries/liboauth/default.nix index 7ca9ec5acb6..3f2f02987fb 100644 --- a/pkgs/development/libraries/liboauth/default.nix +++ b/pkgs/development/libraries/liboauth/default.nix @@ -27,7 +27,6 @@ stdenv.mkDerivation rec { platforms = platforms.all; description = "C library implementing the OAuth secure authentication protocol"; homepage = "http://liboauth.sourceforge.net/"; - repositories.git = "https://github.com/x42/liboauth.git"; license = licenses.mit; }; diff --git a/pkgs/development/libraries/libotr/default.nix b/pkgs/development/libraries/libotr/default.nix index 53699ab7eac..bd8a521544c 100644 --- a/pkgs/development/libraries/libotr/default.nix +++ b/pkgs/development/libraries/libotr/default.nix @@ -16,7 +16,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "http://www.cypherpunks.ca/otr/"; - repositories.git = "git://git.code.sf.net/p/otr/libotr"; license = licenses.lgpl21; description = "Library for Off-The-Record Messaging"; platforms = platforms.unix; diff --git a/pkgs/development/libraries/libpeas/default.nix b/pkgs/development/libraries/libpeas/default.nix index 55c884d215f..712592431ab 100644 --- a/pkgs/development/libraries/libpeas/default.nix +++ b/pkgs/development/libraries/libpeas/default.nix @@ -1,25 +1,61 @@ -{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, gnome -, glib, gtk3, gobject-introspection, python3, ncurses +{ stdenv +, lib +, fetchurl +, meson +, ninja +, pkg-config +, gettext +, gi-docgen +, gnome +, glib +, gtk3 +, gobject-introspection +, python3 +, ncurses }: stdenv.mkDerivation rec { pname = "libpeas"; - version = "1.30.0"; + version = "1.32.0"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "18xrk1c1ixlhkmykcfiafrl2am470ws687xqvjlq40zwkcp5dx8b"; + sha256 = "1iVSD6AuiXcCmyRq5Dm8IYloll8egtYSIItxPx3MPQ4="; }; - nativeBuildInputs = [ pkg-config meson ninja gettext gobject-introspection ]; - buildInputs = [ glib gtk3 ncurses python3 python3.pkgs.pygobject3 ]; + nativeBuildInputs = [ + pkg-config + meson + ninja + gettext + gi-docgen + gobject-introspection + ]; + + buildInputs = [ + glib + gtk3 + ncurses + python3 + python3.pkgs.pygobject3 + ]; + propagatedBuildInputs = [ # Required by libpeas-1.0.pc gobject-introspection ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libpwquality/default.nix b/pkgs/development/libraries/libpwquality/default.nix index 5d83b137b8e..abc65130fc3 100644 --- a/pkgs/development/libraries/libpwquality/default.nix +++ b/pkgs/development/libraries/libpwquality/default.nix @@ -1,36 +1,57 @@ -{ stdenv, lib, fetchFromGitHub, autoreconfHook, perl, cracklib, python3, fetchpatch }: +{ stdenv +, lib +, fetchFromGitHub +, autoreconfHook +, perl +, cracklib +, enablePAM ? stdenv.hostPlatform.isLinux +, pam +, enablePython ? false +, python +}: + +# python binding generates a shared library which are unavailable with musl build +assert enablePython -> !stdenv.hostPlatform.isStatic; stdenv.mkDerivation rec { pname = "libpwquality"; - version = "1.4.2"; + version = "1.4.4"; + + outputs = [ "out" "dev" "lib" "man" ] ++ lib.optionals enablePython [ "py" ]; src = fetchFromGitHub { owner = "libpwquality"; repo = "libpwquality"; rev = "${pname}-${version}"; - sha256 = "0n4pjhm7wfivk0wizggaxq4y4mcxic876wcarjabkp5z9k14y36h"; + sha256 = "sha256-7gAzrx5VP1fEBwAt6E5zGM8GyuPRR+JxYifYfirY+U8="; }; - nativeBuildInputs = [ autoreconfHook perl python3 ]; - buildInputs = [ cracklib ]; - - patches = lib.optional stdenv.hostPlatform.isStatic [ - (fetchpatch { - name = "static-build.patch"; - url = "https://github.com/libpwquality/libpwquality/pull/40.patch"; - sha256 = "1ypccq437wxwgddd98cvd330jfm7jscdlzlyxgy05g6yzrr68xyk"; - }) + patches = [ + # ensure python site-packages goes in $py output + ./python-binding-prefix.patch ]; - configureFlags = lib.optional stdenv.hostPlatform.isStatic [ - # Python binding generates a shared library which are unavailable with musl build - "--disable-python-bindings" - ]; + nativeBuildInputs = [ autoreconfHook perl ] ++ lib.optionals enablePython [ python ]; + buildInputs = [ cracklib ] ++ lib.optionals enablePAM [ pam ]; + + configureFlags = lib.optionals (!enablePython) [ "--disable-python-bindings" ]; meta = with lib; { - description = "Password quality checking and random password generation library"; homepage = "https://github.com/libpwquality/libpwquality"; - license = licenses.bsd3; + description = "Password quality checking and random password generation library"; + longDescription = '' + The libpwquality library purpose is to provide common functions for + password quality checking and also scoring them based on their apparent + randomness. The library also provides a function for generating random + passwords with good pronounceability. The library supports reading and + parsing of a configuration file. + + In the package there are also very simple utilities that use the library + function and PAM module that can be used instead of pam_cracklib. The + module supports all the options of pam_cracklib. + ''; + license = with licenses; [ bsd3 /* or */ gpl2Plus ]; + maintainers = with maintainers; [ jk ]; platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/libpwquality/python-binding-prefix.patch b/pkgs/development/libraries/libpwquality/python-binding-prefix.patch new file mode 100644 index 00000000000..a8f77142e1d --- /dev/null +++ b/pkgs/development/libraries/libpwquality/python-binding-prefix.patch @@ -0,0 +1,13 @@ +diff --git a/python/Makefile.am b/python/Makefile.am +index 1d00c0c..0987690 100644 +--- a/python/Makefile.am ++++ b/python/Makefile.am +@@ -14,7 +14,7 @@ all-local: + CFLAGS="${CFLAGS} -fno-strict-aliasing" @PYTHONBINARY@ setup.py build --build-base py$(PYTHONREV) + + install-exec-local: +- CFLAGS="${CFLAGS} -fno-strict-aliasing" @PYTHONBINARY@ setup.py build --build-base py$(PYTHONREV) install --prefix=${DESTDIR}${prefix} ++ CFLAGS="${CFLAGS} -fno-strict-aliasing" @PYTHONBINARY@ setup.py build --build-base py$(PYTHONREV) install --prefix=${DESTDIR}${py} + + clean-local: + rm -rf py$(PYTHONREV) diff --git a/pkgs/development/libraries/librest/1.0.nix b/pkgs/development/libraries/librest/1.0.nix new file mode 100644 index 00000000000..d51f9e31b17 --- /dev/null +++ b/pkgs/development/libraries/librest/1.0.nix @@ -0,0 +1,74 @@ +{ lib +, stdenv +, fetchurl +, meson +, ninja +, pkg-config +, gi-docgen +, glib +, json-glib +, libsoup +, gobject-introspection +, gnome +}: + +stdenv.mkDerivation rec { + pname = "rest"; + version = "0.9.0"; + + outputs = [ "out" "dev" "devdoc" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "hbK8k0ESgTlTm1PuU/BTMxC8ljkv1kWGOgQEELgevmY="; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + gi-docgen + gobject-introspection + ]; + + buildInputs = [ + glib + json-glib + libsoup + ]; + + mesonFlags = [ + "-Dexamples=false" + + # Remove when https://gitlab.gnome.org/GNOME/librest/merge_requests/2 is merged. + "-Dca_certificates=true" + "-Dca_certificates_path=/etc/ssl/certs/ca-certificates.crt" + ]; + + postPatch = '' + # https://gitlab.gnome.org/GNOME/librest/-/merge_requests/19 + substituteInPlace meson.build \ + --replace "con." "conf." + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "librest_1_0"; + versionPolicy = "odd-unstable"; + }; + }; + + meta = with lib; { + description = "Helper library for RESTful services"; + homepage = "https://wiki.gnome.org/Projects/Librest"; + license = licenses.lgpl21Only; + platforms = platforms.unix; + maintainers = teams.gnome.members; + }; +} diff --git a/pkgs/development/libraries/librest/default.nix b/pkgs/development/libraries/librest/default.nix index ce2df9cc9a8..abe53ff3692 100644 --- a/pkgs/development/libraries/librest/default.nix +++ b/pkgs/development/libraries/librest/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation rec { packageName = pname; attrPath = "librest"; versionPolicy = "odd-unstable"; + freeze = true; }; }; diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix index 81cad37351a..b0935441384 100644 --- a/pkgs/development/libraries/librsvg/default.nix +++ b/pkgs/development/libraries/librsvg/default.nix @@ -16,6 +16,8 @@ , rustc , rust , cargo +, gi-docgen +, python3 , gnome , vala , withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform @@ -25,13 +27,15 @@ stdenv.mkDerivation rec { pname = "librsvg"; - version = "2.52.6"; + version = "2.54.0"; - outputs = [ "out" "dev" "installedTests" ]; + outputs = [ "out" "dev" "installedTests" ] ++ lib.optionals withIntrospection [ + "devdoc" + ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "o/k5oeajpgQIJEYy0DI/jDsg60t7AAU24uW9k7jv+q0="; + sha256 = "uvjrwUfxRrQmG7PQzQ+slEv427Sx8jR9IzQfl03MMIU="; }; cargoVendorDir = "vendor"; @@ -45,10 +49,12 @@ stdenv.mkDerivation rec { pkg-config rustc cargo + python3.pkgs.docutils vala rustPlatform.cargoSetupHook ] ++ lib.optionals withIntrospection [ gobject-introspection + gi-docgen ]; buildInputs = [ @@ -119,6 +125,11 @@ stdenv.mkDerivation rec { mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix index 18f00a0933c..9e8be02aa63 100644 --- a/pkgs/development/libraries/libsecret/default.nix +++ b/pkgs/development/libraries/libsecret/default.nix @@ -1,42 +1,76 @@ -{ lib, stdenv, fetchurl, fetchpatch, glib, pkg-config, gettext, libxslt, python3 -, docbook_xsl, docbook_xml_dtd_42 , libgcrypt, gobject-introspection, vala -, gtk-doc, gnome, gjs, libintl, dbus, xvfb-run }: +{ stdenv +, lib +, fetchurl +, glib +, meson +, ninja +, pkg-config +, gettext +, libxslt +, python3 +, docbook-xsl-nons +, docbook_xml_dtd_42 +, libgcrypt +, gobject-introspection +, vala +, gi-docgen +, gnome +, gjs +, libintl +, dbus +, xvfb-run +}: stdenv.mkDerivation rec { pname = "libsecret"; - version = "0.20.4"; + version = "0.20.5"; + + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0a4xnfmraxchd9cq5ai66j12jv2vrgjmaaxz25kl031jvda4qnij"; + sha256 = "P7PONA/NfbVNh8iT5pv8Kx9uTUsnkGX/5m2snw/RK00="; }; - postPatch = '' - patchShebangs . - ''; - - outputs = [ "out" "dev" "devdoc" ]; - - propagatedBuildInputs = [ glib ]; nativeBuildInputs = [ - pkg-config gettext libxslt docbook_xsl docbook_xml_dtd_42 libintl - gobject-introspection vala gtk-doc glib + meson + ninja + pkg-config + gettext + libxslt # for xsltproc for building man pages + docbook-xsl-nons + docbook_xml_dtd_42 + libintl + gobject-introspection + vala + gi-docgen + glib ]; - buildInputs = [ libgcrypt ]; - # optional: build docs with gtk-doc? (probably needs a flag as well) - configureFlags = [ - "--with-libgcrypt-prefix=${libgcrypt.dev}" + buildInputs = [ + libgcrypt ]; - enableParallelBuilding = true; + propagatedBuildInputs = [ + glib + ]; installCheckInputs = [ - python3 python3.pkgs.dbus-python python3.pkgs.pygobject3 xvfb-run dbus gjs + python3 + python3.pkgs.dbus-python + python3.pkgs.pygobject3 + xvfb-run + dbus + gjs ]; # needs to run after install because typelibs point to absolute paths doInstallCheck = false; # Failed to load shared library '/force/shared/libmock_service.so.0' referenced by the typelib + + postPatch = '' + patchShebangs . + ''; + installCheckPhase = '' export NO_AT_BRIDGE=1 xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ @@ -44,6 +78,11 @@ stdenv.mkDerivation rec { make check ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libsoup/3.x.nix b/pkgs/development/libraries/libsoup/3.x.nix index 454a1cdf40a..4791e49ae3f 100644 --- a/pkgs/development/libraries/libsoup/3.x.nix +++ b/pkgs/development/libraries/libsoup/3.x.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "libsoup"; - version = "3.0.4"; + version = "3.0.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-W9OLXgkfcH/X+j7Xw3qsyj+OFsZXh/HMF9w40dzeVns="; + sha256 = "sha256-9dFD22gws4Je3CocREnWOSc7C/oBeklwhxli2byiIUU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/libusb-compat/0.1.nix b/pkgs/development/libraries/libusb-compat/0.1.nix index b23123f56ea..f977d72e724 100644 --- a/pkgs/development/libraries/libusb-compat/0.1.nix +++ b/pkgs/development/libraries/libusb-compat/0.1.nix @@ -35,7 +35,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://libusb.info/"; - repositories.git = "https://github.com/libusb/libusb-compat-0.1"; description = "cross-platform user-mode USB device library"; longDescription = '' libusb is a cross-platform user-mode library that provides access to USB devices. diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix index 69410cf2b98..1514d270210 100644 --- a/pkgs/development/libraries/libusb1/default.nix +++ b/pkgs/development/libraries/libusb1/default.nix @@ -45,7 +45,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://libusb.info/"; - repositories.git = "https://github.com/libusb/libusb"; description = "cross-platform user-mode USB device library"; longDescription = '' libusb is a cross-platform user-mode library that provides access to USB devices. diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix index 9e39c2fd2a6..cda7c091908 100644 --- a/pkgs/development/libraries/libvirt/default.nix +++ b/pkgs/development/libraries/libvirt/default.nix @@ -331,7 +331,6 @@ stdenv.mkDerivation rec { meta = { homepage = "https://libvirt.org/"; - repositories.git = "git://libvirt.org/libvirt.git"; description = '' A toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes) diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix index 3033b7df4e3..ee79d537059 100644 --- a/pkgs/development/libraries/pango/default.nix +++ b/pkgs/development/libraries/pango/default.nix @@ -24,14 +24,14 @@ stdenv.mkDerivation rec { pname = "pango"; - version = "1.50.4"; + version = "1.50.6"; outputs = [ "bin" "out" "dev" ] ++ lib.optionals withDocs [ "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "9K1j6H3CsUUwBUKk+wBNB6n5GzQVL64N2+UOzdhRwWI="; + sha256 = "qZi882iBw6wgSV1AvOswT06qkXW9KWfIVlZDTL2v6Go="; }; strictDeps = !withIntrospection; @@ -84,12 +84,9 @@ stdenv.mkDerivation rec { doCheck = false; # test-font: FAIL - postInstall = lib.optionalString withDocs '' - # So that devhelp can find this. - # https://gitlab.gnome.org/GNOME/pango/merge_requests/293/diffs#note_1058448 - mkdir -p "$devdoc/share/devhelp" - mv "$out/share/doc/pango/reference" "$devdoc/share/devhelp/books" - rmdir -p --ignore-fail-on-non-empty "$out/share/doc/pango" + postFixup = lib.optionalString withDocs '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/pcg-c/default.nix b/pkgs/development/libraries/pcg-c/default.nix index 9722210b9d1..95acc77922e 100644 --- a/pkgs/development/libraries/pcg-c/default.nix +++ b/pkgs/development/libraries/pcg-c/default.nix @@ -33,7 +33,6 @@ stdenv.mkDerivation rec { ''; platforms = platforms.unix; maintainers = [ maintainers.linus ]; - repositories.git = "git://github.com/imneme/pcg-c.git"; broken = stdenv.isi686; # https://github.com/imneme/pcg-c/issues/11 }; } diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 6fa07bcaf80..5547e492a65 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -18,6 +18,7 @@ , ninja , openjpeg , pkg-config +, python3 , scribusUnstable , texlive , zlib @@ -34,19 +35,20 @@ let in stdenv.mkDerivation rec { pname = "poppler-${suffix}"; - version = "22.01.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + version = "22.03.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! outputs = [ "out" "dev" ]; src = fetchurl { url = "https://poppler.freedesktop.org/poppler-${version}.tar.xz"; - sha256 = "sha256-fTSTBWtbhkE+XGk8LK4CxcBs2OYY0UwsMeLIS2eyMT4="; + sha256 = "sha256-cox4upTXWlX2tjVdT72qb0mTTZYWvljl5nmpz9CYDh4="; }; nativeBuildInputs = [ cmake ninja pkg-config + python3 ]; buildInputs = [ diff --git a/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix b/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix index 933b972a4e7..754f408ca26 100644 --- a/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix +++ b/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix @@ -3,13 +3,13 @@ mkDerivation rec { pname = "stellarsolver"; - version = "2.0"; + version = "2.2"; src = fetchFromGitHub { owner = "rlancaste"; repo = pname; rev = version; - sha256 = "sha256-pqTSsey1CgOHiEm/C+7sTl9uGe3RVpL7Rdm04KgY+Z8="; + sha256 = "sha256-Ay7bszR4D5KKFiVLXfweJcc8jgUSZljnZVblEx7xh8o="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/libraries/taglib/default.nix b/pkgs/development/libraries/taglib/default.nix index 5f136a5e6b6..666d013adeb 100644 --- a/pkgs/development/libraries/taglib/default.nix +++ b/pkgs/development/libraries/taglib/default.nix @@ -24,7 +24,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://taglib.org/"; - repositories.git = "git://github.com/taglib/taglib.git"; description = "A library for reading and editing audio file metadata"; longDescription = '' TagLib is a library for reading and editing the meta-data of several diff --git a/pkgs/development/libraries/template-glib/default.nix b/pkgs/development/libraries/template-glib/default.nix index c0ee2c1d350..375a7c3237a 100644 --- a/pkgs/development/libraries/template-glib/default.nix +++ b/pkgs/development/libraries/template-glib/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, flex, bison, vala, gettext, gnome, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }: let - version = "3.34.0"; + version = "3.34.1"; pname = "template-glib"; in stdenv.mkDerivation { @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1z9xkin5fyfh071ma9y045jcw83hgx33dfbjraw6cxk0qdmfysr1"; + sha256 = "nsm3HgTU9csU91XveQYxzQtFwGA+Ecg2/Hz9niaM0Ho="; }; buildInputs = [ meson ninja pkg-config gettext flex bison vala glib gtk-doc docbook_xsl docbook_xml_dtd_43 ]; diff --git a/pkgs/development/libraries/tracker-miners/default.nix b/pkgs/development/libraries/tracker-miners/default.nix index 4df448d08f4..7c3e495d54a 100644 --- a/pkgs/development/libraries/tracker-miners/default.nix +++ b/pkgs/development/libraries/tracker-miners/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl -, substituteAll , asciidoc , docbook-xsl-nons , docbook_xml_dtd_45 @@ -47,11 +47,11 @@ stdenv.mkDerivation rec { pname = "tracker-miners"; - version = "3.2.2"; + version = "3.3.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/YTHHmIbwrgcrLX5CJMkNiRtG4pPw6Y1PiuNuuvAI2w="; + sha256 = "izh967d0BhwGrfsmeg4ODz0heZNxvwHQVklaubjdlBc="; }; nativeBuildInputs = [ @@ -113,13 +113,6 @@ stdenv.mkDerivation rec { "-Dminer_rss=false" ]; - patches = [ - (substituteAll { - src = ./fix-paths.patch; - inherit asciidoc; - }) - ]; - postInstall = '' glib-compile-schemas "$out/share/glib-2.0/schemas" ''; diff --git a/pkgs/development/libraries/tracker-miners/fix-paths.patch b/pkgs/development/libraries/tracker-miners/fix-paths.patch deleted file mode 100644 index 8661648eacd..00000000000 --- a/pkgs/development/libraries/tracker-miners/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build -index 0b8a64863..a09db59f0 100644 ---- a/docs/manpages/meson.build -+++ b/docs/manpages/meson.build -@@ -43,7 +43,7 @@ foreach m : daemon_manpages + cli_manpages - command: [xsltproc, - '--output', '@OUTPUT@', - '--stringparam', 'man.authors.section.enabled', '0', -- '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], -+ '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], - input: xml, - output: manpage, - install: true, diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index 68a29919f0a..5cb3dc73daa 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -1,7 +1,6 @@ { stdenv , lib , fetchurl -, fetchpatch , gettext , meson , ninja @@ -26,34 +25,19 @@ , json-glib , systemd , dbus -, substituteAll }: stdenv.mkDerivation rec { pname = "tracker"; - version = "3.2.1"; + version = "3.3.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "GEfgiznm5h2EhzWqH5f32WwDggFlP6DXy56Bs365wDo="; + sha256 = "Bwb5b+f5XfQqzsgSwd57RZOg1kgyHKg1BqnXHiJBe9o="; }; - patches = [ - (substituteAll { - src = ./fix-paths.patch; - inherit asciidoc; - }) - - # Filter out hidden (wrapped) subcommands - # https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/481 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/tracker/-/commit/8c28c24e447f13da8cf804cd7a00f9b909c5d3f9.patch"; - sha256 = "EYo1nOtEr4semaPC5wk6A7bliRXu8qsBHaltd0DEI6Y="; - }) - ]; - nativeBuildInputs = [ meson ninja @@ -119,7 +103,9 @@ stdenv.mkDerivation rec { dbus-run-session \ --config-file=${dbus.daemon}/share/dbus-1/session.conf \ - meson test --print-errorlogs + meson test \ + --timeout-multiplier 2 \ + --print-errorlogs runHook postCheck ''; diff --git a/pkgs/development/libraries/tracker/fix-paths.patch b/pkgs/development/libraries/tracker/fix-paths.patch deleted file mode 100644 index 5e4d8657f7b..00000000000 --- a/pkgs/development/libraries/tracker/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build -index f90c757cf..40d9c939d 100644 ---- a/docs/manpages/meson.build -+++ b/docs/manpages/meson.build -@@ -32,7 +32,7 @@ foreach m : manpages - command: [xsltproc, - '--output', '@OUTPUT@', - '--stringparam', 'man.authors.section.enabled', '0', -- '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], -+ '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], - input: xml, - output: manpage, - install: true, diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix index aae30390ee4..9e944208290 100644 --- a/pkgs/development/libraries/vte/default.nix +++ b/pkgs/development/libraries/vte/default.nix @@ -27,13 +27,13 @@ stdenv.mkDerivation rec { pname = "vte"; - version = "0.64.2"; + version = "0.67.90"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-KzyCC2WmZ8HYhZuiBHi+Ym0VGcwxWdrCX3AzMMbQfhg="; + sha256 = "sha256-RkCe1x/DqkfX3DkCSaU+i4E6xsCYvawVFuEL23wg2zg="; }; patches = [ diff --git a/pkgs/development/libraries/wxwidgets/wxGTK31.nix b/pkgs/development/libraries/wxwidgets/wxGTK31.nix index 9deb23ffcf0..1d94ce7b7ba 100644 --- a/pkgs/development/libraries/wxwidgets/wxGTK31.nix +++ b/pkgs/development/libraries/wxwidgets/wxGTK31.nix @@ -32,8 +32,6 @@ , WebKit }: -assert withWebKit -> stdenv.isDarwin; - assert withGtk2 -> (!withWebKit); let diff --git a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix index ad68f13fe0f..6764df634bb 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix @@ -10,6 +10,7 @@ , gsettings-desktop-schemas , gtk4 , libadwaita +, gnome-desktop , xdg-desktop-portal , wayland , gnome @@ -17,11 +18,11 @@ stdenv.mkDerivation rec { pname = "xdg-desktop-portal-gnome"; - version = "41.1"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "u6FEGZ5+1LlJCyScGvZFqGnWKZMmXerDjyGb8EL//fI="; + sha256 = "3+i1JFDzKDj5+eiY6Vqo36JwXOEtQ4MFVXwSi5zg4uY="; }; nativeBuildInputs = [ @@ -37,6 +38,7 @@ stdenv.mkDerivation rec { gsettings-desktop-schemas # settings exposed by settings portal gtk4 libadwaita + gnome-desktop xdg-desktop-portal wayland # required by GTK 4 ]; diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix index c54cdeca6c3..13a16f111ea 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix @@ -7,6 +7,7 @@ , xdg-desktop-portal , gtk3 , gnome +, gnome-desktop , glib , wrapGAppsHook , gsettings-desktop-schemas @@ -36,7 +37,7 @@ stdenv.mkDerivation rec { glib gsettings-desktop-schemas # settings exposed by settings portal gtk3 - gnome.gnome-desktop + gnome-desktop gnome.gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s) ]; diff --git a/pkgs/development/misc/yelp-tools/default.nix b/pkgs/development/misc/yelp-tools/default.nix index d6864b80f9e..a58891bc333 100644 --- a/pkgs/development/misc/yelp-tools/default.nix +++ b/pkgs/development/misc/yelp-tools/default.nix @@ -13,13 +13,13 @@ python3.pkgs.buildPythonApplication rec { pname = "yelp-tools"; - version = "41.0"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/yelp-tools/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "N/GswCvL5ooxuG4HwSmoOb0yduZW3Inrf8CpJ0bv8nI="; + sha256 = "LNQwY/+nJi3xXdjTeao+o5mdQmYfB1Y/SALaoRSfffQ="; }; nativeBuildInputs = [ diff --git a/pkgs/development/ocaml-modules/batteries/default.nix b/pkgs/development/ocaml-modules/batteries/default.nix index 184f10a52be..865518ec29c 100644 --- a/pkgs/development/ocaml-modules/batteries/default.nix +++ b/pkgs/development/ocaml-modules/batteries/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, qtest, num, ounit +{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, qtest, qcheck, num, ounit , doCheck ? lib.versionAtLeast ocaml.version "4.08" && !stdenv.isAarch64 }: @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ ocaml findlib ocamlbuild ]; - checkInputs = [ qtest ounit ]; + checkInputs = [ qtest ounit qcheck ]; propagatedBuildInputs = [ num ]; strictDeps = !doCheck; diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix index 1dc28b2b5f7..6261ba2801b 100644 --- a/pkgs/development/ocaml-modules/conduit/default.nix +++ b/pkgs/development/ocaml-modules/conduit/default.nix @@ -15,8 +15,7 @@ buildDunePackage rec { sha256 = "2a37ffaa352a1e145ef3d80ac28661213c69a741b238623e59f29e3d5a12c537"; }; - buildInputs = [ ppx_sexp_conv ]; - propagatedBuildInputs = [ astring ipaddr ipaddr-sexp sexplib uri logs ]; + propagatedBuildInputs = [ astring ipaddr ipaddr-sexp sexplib uri logs ppx_sexp_conv ]; meta = { description = "A network connection establishment library"; diff --git a/pkgs/development/ocaml-modules/elina/default.nix b/pkgs/development/ocaml-modules/elina/default.nix index df7f140e545..ec4199cc06e 100644 --- a/pkgs/development/ocaml-modules/elina/default.nix +++ b/pkgs/development/ocaml-modules/elina/default.nix @@ -8,9 +8,9 @@ stdenv.mkDerivation rec { sha256 = "1nymykskq1yx87y4xl6hl9i4q6kv0qaq25rniqgl1bfn883p1ysc"; }; - nativeBuildInputs = [ perl ocaml findlib ]; + nativeBuildInputs = [ perl ocaml findlib camlidl ]; - propagatedBuildInputs = [ apron camlidl gmp mpfr ]; + propagatedBuildInputs = [ apron gmp mpfr ]; strictDeps = true; diff --git a/pkgs/development/ocaml-modules/facile/default.nix b/pkgs/development/ocaml-modules/facile/default.nix index df228603e9f..3eab7d3417f 100644 --- a/pkgs/development/ocaml-modules/facile/default.nix +++ b/pkgs/development/ocaml-modules/facile/default.nix @@ -1,11 +1,9 @@ -{ lib, fetchurl, buildDunePackage }: +{ lib, fetchurl, buildDunePackage, ocaml }: buildDunePackage rec { pname = "facile"; version = "1.1.4"; - useDune2 = false; - src = fetchurl { url = "https://github.com/Emmanuel-PLF/facile/releases/download/${version}/facile-${version}.tbz"; sha256 = "0jqrwmn6fr2vj2rrbllwxq4cmxykv7zh0y4vnngx29f5084a04jp"; @@ -13,6 +11,9 @@ buildDunePackage rec { doCheck = true; + useDune2 = lib.versionAtLeast ocaml.version "4.12"; + postPatch = lib.optionalString useDune2 "dune upgrade"; + meta = { homepage = "http://opti.recherche.enac.fr/facile/"; license = lib.licenses.lgpl21Plus; diff --git a/pkgs/development/ocaml-modules/gmetadom/default.nix b/pkgs/development/ocaml-modules/gmetadom/default.nix index 50be2adcb38..fe4f85a0024 100644 --- a/pkgs/development/ocaml-modules/gmetadom/default.nix +++ b/pkgs/development/ocaml-modules/gmetadom/default.nix @@ -22,8 +22,8 @@ stdenv.mkDerivation rec { ''; nativeBuildInputs = [ pkg-config ocaml findlib ]; - buildInputs = [ gdome2 libxslt]; - propagatedBuildInputs = [gdome2]; + buildInputs = [ libxslt ]; + propagatedBuildInputs = [ gdome2 ]; strictDeps = true; diff --git a/pkgs/development/ocaml-modules/hack_parallel/default.nix b/pkgs/development/ocaml-modules/hack_parallel/default.nix index f9bc6777212..122ee2149f3 100644 --- a/pkgs/development/ocaml-modules/hack_parallel/default.nix +++ b/pkgs/development/ocaml-modules/hack_parallel/default.nix @@ -15,7 +15,7 @@ buildDunePackage rec { nativeBuildInputs = [ pkg-config ]; - buildInputs = [ core core_kernel sqlite ]; + propagatedBuildInputs = [ core core_kernel sqlite ]; meta = { description = diff --git a/pkgs/development/ocaml-modules/mccs/default.nix b/pkgs/development/ocaml-modules/mccs/default.nix index beadceff02b..50abdf631db 100644 --- a/pkgs/development/ocaml-modules/mccs/default.nix +++ b/pkgs/development/ocaml-modules/mccs/default.nix @@ -13,7 +13,7 @@ buildDunePackage rec { useDune2 = true; - buildInputs = [ + propagatedBuildInputs = [ cudf ]; diff --git a/pkgs/development/ocaml-modules/mirage-logs/default.nix b/pkgs/development/ocaml-modules/mirage-logs/default.nix index 2a7670ce372..7aabd51b819 100644 --- a/pkgs/development/ocaml-modules/mirage-logs/default.nix +++ b/pkgs/development/ocaml-modules/mirage-logs/default.nix @@ -1,6 +1,6 @@ { lib, fetchurl, buildDunePackage , logs, lwt, mirage-clock, mirage-profile, ptime -, alcotest +, alcotest, stdlib-shims }: buildDunePackage rec { @@ -14,7 +14,7 @@ buildDunePackage rec { sha256 = "0h0amzjxy067jljscib7fvw5q8k0adqa8m86affha9hq5jsh07a1"; }; - propagatedBuildInputs = [ logs lwt mirage-clock mirage-profile ptime ]; + propagatedBuildInputs = [ logs lwt mirage-clock mirage-profile ptime stdlib-shims ]; doCheck = true; checkInputs = [ alcotest ]; diff --git a/pkgs/development/ocaml-modules/mirage-profile/default.nix b/pkgs/development/ocaml-modules/mirage-profile/default.nix index c6ca730bf3c..ef856e02127 100644 --- a/pkgs/development/ocaml-modules/mirage-profile/default.nix +++ b/pkgs/development/ocaml-modules/mirage-profile/default.nix @@ -1,5 +1,5 @@ { lib, fetchurl, buildDunePackage -, ppx_cstruct +, ppx_cstruct, stdlib-shims , cstruct, lwt }: @@ -15,7 +15,7 @@ buildDunePackage rec { }; buildInputs = [ ppx_cstruct ]; - propagatedBuildInputs = [ cstruct lwt ]; + propagatedBuildInputs = [ cstruct lwt stdlib-shims ]; meta = with lib; { description = "Collect runtime profiling information in CTF format"; diff --git a/pkgs/development/ocaml-modules/mlgmpidl/default.nix b/pkgs/development/ocaml-modules/mlgmpidl/default.nix index d12329b811e..33f9f2d8e6b 100644 --- a/pkgs/development/ocaml-modules/mlgmpidl/default.nix +++ b/pkgs/development/ocaml-modules/mlgmpidl/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { sha256 = "17xqiclaqs4hmnb92p9z6z9a1xfr31vcn8nlnj8ykk57by31vfza"; }; - nativeBuildInputs = [ perl ocaml findlib mpfr camlidl ]; + nativeBuildInputs = [ perl ocaml findlib camlidl ]; buildInputs = [ gmp mpfr ]; strictDeps = true; @@ -22,8 +22,7 @@ stdenv.mkDerivation rec { ]; postConfigure = '' - sed -i Makefile \ - -e 's|/bin/rm|rm|' + substituteInPlace Makefile --replace "/bin/rm" "rm" mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs ''; diff --git a/pkgs/development/ocaml-modules/nonstd/default.nix b/pkgs/development/ocaml-modules/nonstd/default.nix index 82b1feed540..696cdff5219 100644 --- a/pkgs/development/ocaml-modules/nonstd/default.nix +++ b/pkgs/development/ocaml-modules/nonstd/default.nix @@ -1,11 +1,9 @@ -{ lib, fetchzip, buildDunePackage }: +{ lib, fetchzip, buildDunePackage, ocaml }: buildDunePackage rec { pname = "nonstd"; version = "0.0.3"; - useDune2 = false; - minimalOCamlVersion = "4.02"; src = fetchzip { @@ -13,6 +11,8 @@ buildDunePackage rec { sha256 = "0ccjwcriwm8fv29ij1cnbc9win054kb6pfga3ygzdbjpjb778j46"; }; + useDune2 = lib.versionAtLeast ocaml.version "4.12"; + postPatch = lib.optionalString useDune2 "dune upgrade"; doCheck = true; meta = with lib; { diff --git a/pkgs/development/ocaml-modules/odoc-parser/default.nix b/pkgs/development/ocaml-modules/odoc-parser/default.nix index 7a2b5abd974..9e4e4bc8d1d 100644 --- a/pkgs/development/ocaml-modules/odoc-parser/default.nix +++ b/pkgs/development/ocaml-modules/odoc-parser/default.nix @@ -23,7 +23,7 @@ buildDunePackage rec { useDune2 = true; - buildInputs = [ astring result ]; + propagatedBuildInputs = [ astring result ]; meta = { description = "Parser for Ocaml documentation comments"; diff --git a/pkgs/development/ocaml-modules/opium_kernel/default.nix b/pkgs/development/ocaml-modules/opium_kernel/default.nix index c7bfe1e7306..6b51443df23 100644 --- a/pkgs/development/ocaml-modules/opium_kernel/default.nix +++ b/pkgs/development/ocaml-modules/opium_kernel/default.nix @@ -9,6 +9,7 @@ , ezjsonm , hmap , sexplib +, fieldslib }: buildDunePackage rec { @@ -31,7 +32,7 @@ buildDunePackage rec { ]; propagatedBuildInputs = [ - hmap cohttp-lwt ezjsonm sexplib + hmap cohttp-lwt ezjsonm sexplib fieldslib ]; meta = { diff --git a/pkgs/development/ocaml-modules/pcap-format/default.nix b/pkgs/development/ocaml-modules/pcap-format/default.nix index f8bb6f4f6b2..ae093cc7817 100644 --- a/pkgs/development/ocaml-modules/pcap-format/default.nix +++ b/pkgs/development/ocaml-modules/pcap-format/default.nix @@ -1,6 +1,6 @@ { lib, buildDunePackage, fetchurl , ppx_cstruct, ppx_tools -, cstruct, ounit, mmap +, cstruct, ounit, mmap, stdlib-shims }: buildDunePackage rec { @@ -24,6 +24,7 @@ buildDunePackage rec { propagatedBuildInputs = [ cstruct + stdlib-shims ]; doCheck = true; diff --git a/pkgs/development/ocaml-modules/pipebang/default.nix b/pkgs/development/ocaml-modules/pipebang/default.nix index 251aeb8de8e..e2bd4d3ec5c 100644 --- a/pkgs/development/ocaml-modules/pipebang/default.nix +++ b/pkgs/development/ocaml-modules/pipebang/default.nix @@ -15,7 +15,7 @@ buildOcaml rec { strictDeps = true; - buildInputs = [ camlp4 ]; + propagatedBuildInputs = [ camlp4 ]; meta = with lib; { homepage = "https://github.com/janestreet/pipebang"; diff --git a/pkgs/development/ocaml-modules/piqi-ocaml/default.nix b/pkgs/development/ocaml-modules/piqi-ocaml/default.nix index 4f2e4693357..8c0276bc9a7 100644 --- a/pkgs/development/ocaml-modules/piqi-ocaml/default.nix +++ b/pkgs/development/ocaml-modules/piqi-ocaml/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib, piqi, stdlib-shims }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib, piqi, stdlib-shims, num }: stdenv.mkDerivation rec { version = "0.7.7"; @@ -15,6 +15,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ ocaml findlib ]; buildInputs = [ piqi stdlib-shims ]; + checkInputs = [ num ]; + strictDeps = true; createFindlibDestdir = true; diff --git a/pkgs/development/ocaml-modules/ppx_cstubs/default.nix b/pkgs/development/ocaml-modules/ppx_cstubs/default.nix index f4794eea76e..f2c844ea048 100644 --- a/pkgs/development/ocaml-modules/ppx_cstubs/default.nix +++ b/pkgs/development/ocaml-modules/ppx_cstubs/default.nix @@ -27,17 +27,19 @@ buildDunePackage rec { sha256 = "15cjb9ygnvp2kv85rrb7ncz7yalifyl7wd2hp2cl8r1qrpgi1d0w"; }; - nativeBuildInputs = [ cppo ]; + nativeBuildInputs = [ cppo findlib ]; buildInputs = [ bigarray-compat containers - ctypes integers num ppxlib re - findlib + ]; + + propagatedBuildInputs = [ + ctypes ]; strictDeps = true; diff --git a/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix b/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix index 6f23af44b94..43cc2992c2a 100644 --- a/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix +++ b/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix @@ -1,5 +1,5 @@ { lib, fetchurl, buildDunePackage, cppo, ppx_deriving -, ppxlib +, ppxlib, dune-configurator }: buildDunePackage rec { @@ -13,7 +13,9 @@ buildDunePackage rec { sha256 = "1dc1vxnkd0cnrgac5v3zbaj2lq1d2w8118mp1cmsdxylp06yz1sj"; }; - buildInputs = [ cppo ppxlib ppx_deriving ]; + nativeBuildInputs = [ cppo ]; + buildInputs = [ ppxlib dune-configurator ]; + propagatedBuildInputs = [ ppx_deriving ]; meta = with lib; { homepage = "https://github.com/ocaml-ppx/ppx_deriving_protobuf"; diff --git a/pkgs/development/ocaml-modules/shared-memory-ring/default.nix b/pkgs/development/ocaml-modules/shared-memory-ring/default.nix index 3a96d4adee4..17dd6183c0d 100644 --- a/pkgs/development/ocaml-modules/shared-memory-ring/default.nix +++ b/pkgs/development/ocaml-modules/shared-memory-ring/default.nix @@ -5,6 +5,7 @@ , mirage-profile , cstruct , ounit +, stdlib-shims }: buildDunePackage rec { @@ -25,6 +26,7 @@ buildDunePackage rec { propagatedBuildInputs = [ mirage-profile cstruct + stdlib-shims ]; doCheck = true; diff --git a/pkgs/development/ocaml-modules/ulex/default.nix b/pkgs/development/ocaml-modules/ulex/default.nix index 9a5848db3f7..d08f2c4c0ae 100644 --- a/pkgs/development/ocaml-modules/ulex/default.nix +++ b/pkgs/development/ocaml-modules/ulex/default.nix @@ -26,6 +26,7 @@ stdenv.mkDerivation rec { createFindlibDestdir = true; nativeBuildInputs = [ ocaml findlib ocamlbuild camlp4 ]; + propagatedBuildInputs = [ camlp4 ]; strictDeps = true; diff --git a/pkgs/development/python-modules/affine/default.nix b/pkgs/development/python-modules/affine/default.nix index 89062cde4d9..4b7696223a7 100644 --- a/pkgs/development/python-modules/affine/default.nix +++ b/pkgs/development/python-modules/affine/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "affine"; - version = "2.3.0"; + version = "2.3.1"; src = fetchPypi { inherit pname version; - sha256 = "00jil4q3b17qml6azim7s7zar6qb1vhsf0g888y637m23bpms11f"; + sha256 = "sha256-1nbeZhV61q+Z/9lOD1Tonfw1sPtyUurS7QrS3KQxvdA="; }; checkInputs = [ pytest ]; diff --git a/pkgs/development/python-modules/asyncsleepiq/default.nix b/pkgs/development/python-modules/asyncsleepiq/default.nix index 93b4aca2aa7..7eaac649064 100644 --- a/pkgs/development/python-modules/asyncsleepiq/default.nix +++ b/pkgs/development/python-modules/asyncsleepiq/default.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "asyncsleepiq"; - version = "1.2.0"; + version = "1.2.1"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-bE9eOjOLERnioOunIBN7Hc/Nvs1zDXMSMzqZsVRg6Jo="; + sha256 = "sha256-pIfEdNmtnwA+PE3lXVd7Qd8Igj+/aqZmuDqFs60PxgY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix index 57fe4655aee..00e24a2d9f1 100644 --- a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix @@ -6,17 +6,20 @@ , azure-common , azure-mgmt-core , azure-mgmt-nspkg -, isPy3k +, pythonOlder }: buildPythonPackage rec { pname = "azure-mgmt-containerservice"; - version = "17.0.0"; + version = "18.0.0"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "sha256-oUbWdZryabCCg/gTujchT7p1nS7IDoU5W9MQ4ekJYH8="; + sha256 = "sha256-b4AwcnSp6JOtG8VaBbUN7d/NIhHN2TPnyjzCUVhMOzg="; }; propagatedBuildInputs = [ @@ -24,14 +27,14 @@ buildPythonPackage rec { msrestazure azure-common azure-mgmt-core - ] ++ lib.optionals (!isPy3k) [ - azure-mgmt-nspkg ]; # has no tests doCheck = false; - pythonImportsCheck = [ "azure.mgmt.containerservice" ]; + pythonImportsCheck = [ + "azure.mgmt.containerservice" + ]; meta = with lib; { description = "This is the Microsoft Azure Container Service Management Client Library"; diff --git a/pkgs/development/python-modules/capstone/default.nix b/pkgs/development/python-modules/capstone/default.nix index c99c392841e..f1a37fb70a0 100644 --- a/pkgs/development/python-modules/capstone/default.nix +++ b/pkgs/development/python-modules/capstone/default.nix @@ -18,6 +18,10 @@ buildPythonPackage rec { substituteInPlace setup.py --replace manylinux1 manylinux2014 ''; + # aarch64 only available from MacOS SDK 11 onwards, so fix the version tag. + # otherwise, bdist_wheel may detect "macosx_10_6_arm64" which doesn't make sense. + setupPyBuildFlags = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--plat-name" "macosx_11_0" ]; + propagatedBuildInputs = [ setuptools ]; checkPhase = '' diff --git a/pkgs/development/python-modules/diff-cover/default.nix b/pkgs/development/python-modules/diff-cover/default.nix index 5414f7522db..cbb44fb7ca4 100644 --- a/pkgs/development/python-modules/diff-cover/default.nix +++ b/pkgs/development/python-modules/diff-cover/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "diff-cover"; - version = "6.4.4"; + version = "6.4.5"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -26,7 +26,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "diff_cover"; inherit version; - sha256 = "b1d782c1ce53ad4b2c5545f8b7aa799eb61a0b12a62b376a18e2313c6f2d77f1"; + sha256 = "sha256-qUuMHBfcJEmJF/con+ODtFfYrU7yo//KgKiSpByLWKY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/metar/default.nix b/pkgs/development/python-modules/metar/default.nix index 4a7bf9edc5a..2c518561b99 100644 --- a/pkgs/development/python-modules/metar/default.nix +++ b/pkgs/development/python-modules/metar/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchFromGitHub +, fetchpatch , pytestCheckHook }: @@ -15,6 +16,14 @@ buildPythonPackage rec { sha256 = "sha256-pl2NWRfFCYyM2qvBt4Ic3wgbGkYZvAO6pX2Set8zYW8="; }; + patches = [ + (fetchpatch { + # Fix flapping test; https://github.com/python-metar/python-metar/issues/161 + url = "https://github.com/python-metar/python-metar/commit/716fa76682e6c2936643d1cf62e3d302ef29aedd.patch"; + hash = "sha256-y82NN+KDryOiH+eG+2ycXCO9lqQLsah4+YpGn6lM2As="; + }) + ]; + checkInputs = [ pytestCheckHook ]; pythonImportsCheck = [ "metar" ]; diff --git a/pkgs/development/python-modules/mkdocs-material/default.nix b/pkgs/development/python-modules/mkdocs-material/default.nix index 228aa1913c5..dc67a515824 100644 --- a/pkgs/development/python-modules/mkdocs-material/default.nix +++ b/pkgs/development/python-modules/mkdocs-material/default.nix @@ -9,13 +9,13 @@ buildPythonApplication rec { pname = "mkdocs-material"; - version = "8.2.6"; + version = "8.2.7"; src = fetchFromGitHub { owner = "squidfunk"; repo = pname; rev = version; - sha256 = "sha256-4t9LBZc73V8eAIUO+BAZPgak+AX3o2YKZJWug+b6TBY="; + sha256 = "sha256-Jh0FmtBCYCEk6mYFLOKb1HQXQ4Wc9Z6JCHFVu420IBk="; }; propagatedBuildInputs = [ diff --git a/pkgs/applications/networking/mailreaders/alot/notmuch.nix b/pkgs/development/python-modules/notmuch2/default.nix index bd195b52d44..5d74270a58c 100644 --- a/pkgs/applications/networking/mailreaders/alot/notmuch.nix +++ b/pkgs/development/python-modules/notmuch2/default.nix @@ -14,6 +14,12 @@ buildPythonPackage { buildInputs = [ python notmuch cffi ]; + # since notmuch 0.35, this package expects _notmuch_config.py that is + # generated by notmuch's configure script + postPatch = '' + cp ${notmuch.bindingconfig}/_notmuch_config.py . + ''; + # no tests doCheck = false; pythonImportsCheck = [ "notmuch2" ]; diff --git a/pkgs/development/python-modules/obfsproxy/default.nix b/pkgs/development/python-modules/obfsproxy/default.nix index 0c0781bc577..5f652cb97f3 100644 --- a/pkgs/development/python-modules/obfsproxy/default.nix +++ b/pkgs/development/python-modules/obfsproxy/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { version = "0.2.13"; src = fetchgit { - url = meta.repositories.git; + url = "https://git.torproject.org/pluggable-transports/obfsproxy.git"; rev = "refs/tags/${pname}-${version}"; sha256 = "04ja1cl8xzqnwrd2gi6nlnxbmjri141bzwa5gybvr44d8h3k2nfa"; }; @@ -30,7 +30,6 @@ buildPythonPackage rec { meta = with lib; { description = "A pluggable transport proxy"; homepage = "https://www.torproject.org/projects/obfsproxy"; - repositories.git = "https://git.torproject.org/pluggable-transports/obfsproxy.git"; maintainers = with maintainers; [ thoughtpolice ]; }; diff --git a/pkgs/development/python-modules/py-synologydsm-api/default.nix b/pkgs/development/python-modules/py-synologydsm-api/default.nix index 24c4b3c9f59..0ebd218aa9c 100644 --- a/pkgs/development/python-modules/py-synologydsm-api/default.nix +++ b/pkgs/development/python-modules/py-synologydsm-api/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "py-synologydsm-api"; - version = "1.0.7"; + version = "1.0.8"; format = "pyproject"; src = fetchFromGitHub { owner = "mib1185"; repo = "synologydsm-api"; rev = "v${version}"; - sha256 = "sha256-VhAzR/knvun6hJj8/YREqMfNvOKpTyYNI9fk9hsbHDQ="; + sha256 = "sha256-9bh7uLt9+uda6yFCWV6xUh//jFC4DgiS+KtRXQrU3A8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/unicorn/default.nix b/pkgs/development/python-modules/unicorn/default.nix index 1f2876bdc69..8a568a47c0e 100644 --- a/pkgs/development/python-modules/unicorn/default.nix +++ b/pkgs/development/python-modules/unicorn/default.nix @@ -20,7 +20,10 @@ buildPythonPackage rec { ''; # needed on non-x86 linux - setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ]; + setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ] + # aarch64 only available from MacOS SDK 11 onwards, so fix the version tag. + # otherwise, bdist_wheel may detect "macosx_10_6_arm64" which doesn't make sense. + ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--plat-name" "macosx_11_0" ]; propagatedBuildInputs = [ setuptools diff --git a/pkgs/development/python-modules/vertica-python/default.nix b/pkgs/development/python-modules/vertica-python/default.nix index a456c5232d8..cd6186e574f 100644 --- a/pkgs/development/python-modules/vertica-python/default.nix +++ b/pkgs/development/python-modules/vertica-python/default.nix @@ -1,27 +1,52 @@ -{ lib, buildPythonPackage, fetchPypi, future, python-dateutil, six, pytest, mock, parameterized }: +{ lib +, buildPythonPackage +, fetchPypi +, future +, mock +, parameterized +, pytestCheckHook +, python-dateutil +, pythonOlder +, six +}: buildPythonPackage rec { pname = "vertica-python"; - version = "1.0.3"; + version = "1.0.4"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "cfe1794c5ba9fdfbd470a55d82f60c2e08e129828367753bf64199a58a539bc2"; + hash = "sha256-IpdrR9mDG+8cNnXgSXkmXahSEP4EGnEBJqZk5SNu9pA="; }; - propagatedBuildInputs = [ future python-dateutil six ]; + propagatedBuildInputs = [ + future + python-dateutil + six + ]; + + checkInputs = [ + mock + parameterized + pytestCheckHook + ]; - checkInputs = [ pytest mock parameterized ]; + disabledTestPaths = [ + # Integration tests require an accessible Vertica db + "vertica_python/tests/integration_tests" + ]; - # Integration tests require an accessible Vertica db - checkPhase = '' - pytest --ignore vertica_python/tests/integration_tests - ''; + pythonImportsCheck = [ + "vertica_python" + ]; meta = with lib; { description = "Native Python client for Vertica database"; homepage = "https://github.com/vertica/vertica-python"; license = licenses.asl20; - maintainers = [ maintainers.arnoldfarkas ]; + maintainers = with maintainers; [ arnoldfarkas ]; }; } diff --git a/pkgs/development/tools/buf/default.nix b/pkgs/development/tools/buf/default.nix index c46cd0d0a41..0f7904fe9bb 100644 --- a/pkgs/development/tools/buf/default.nix +++ b/pkgs/development/tools/buf/default.nix @@ -10,16 +10,16 @@ buildGoModule rec { pname = "buf"; - version = "1.1.1"; + version = "1.3.0"; src = fetchFromGitHub { owner = "bufbuild"; repo = pname; rev = "v${version}"; - sha256 = "sha256-w/P9pNHxaBRlAly5jE7I0JsjjFeDctFaXOTbzDESaCo="; + sha256 = "sha256-rOT7HuvbJFRyBOmCNmx5Vic4zckYgS+1BB0PcpwD9OQ="; }; - vendorSha256 = "sha256-AM/MN4vdcsHEbYdOEuVOvkMCdMDnk2UiW5vUnXcj+wY="; + vendorSha256 = "sha256-qIWZYsl1hFV4Ts27WSyjQAQ+jWjtLLG+A+yS0Ms7hfI="; patches = [ # Skip a test that requires networking to be available to work. diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix index aeddf457f48..8744407fb96 100644 --- a/pkgs/development/tools/build-managers/meson/default.nix +++ b/pkgs/development/tools/build-managers/meson/default.nix @@ -5,6 +5,7 @@ , pkg-config , python3 , substituteAll +, withDarwinFrameworksGtkDocPatch ? false }: python3.pkgs.buildPythonApplication rec { @@ -61,6 +62,10 @@ python3.pkgs.buildPythonApplication rec { # Meson tries to update ld.so.cache which breaks when the target architecture # differs from the build host's. ./do-not-update-ldconfig-cache.patch + ] ++ lib.optionals withDarwinFrameworksGtkDocPatch [ + # Fix building gtkdoc for GLib + # https://github.com/mesonbuild/meson/pull/10186 + ./fix-gtkdoc-when-using-multiple-apple-frameworks.patch ]; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch b/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch new file mode 100644 index 00000000000..eb6d9718bcb --- /dev/null +++ b/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch @@ -0,0 +1,176 @@ +From 0a008a6c7ecee19f35c8b7ab17b1470d0d1a8a15 Mon Sep 17 00:00:00 2001 +From: Jan Tojnar <jtojnar@gmail.com> +Date: Sat, 26 Mar 2022 02:26:27 +0100 +Subject: [PATCH] gnome: Fix gtkdoc when using multiple Apple frameworks + +The `-framework Foundation -framework CoreFoundation` ended up +de-duplicated by OrderedSet into `-framework Foundation CoreFoundation`. + +Picked from https://github.com/mesonbuild/meson/pull/10186 + +Also pick https://github.com/mesonbuild/meson/commit/68e684d51f1e469e0d9f4b499ffda15146cad98a when resolving conflict. + +diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py +index 7113f28d2..d3269b53f 100644 +--- a/mesonbuild/modules/gnome.py ++++ b/mesonbuild/modules/gnome.py +@@ -384,13 +384,14 @@ class GnomeModule(ExtensionModule): + def _get_link_args(self, state, lib, depends, include_rpath=False, + use_gir_args=False): + link_command = [] ++ new_depends = list(depends) + # Construct link args + if isinstance(lib, build.SharedLibrary): + libdir = os.path.join(state.environment.get_build_dir(), state.backend.get_target_dir(lib)) + link_command.append('-L' + libdir) + if include_rpath: + link_command.append('-Wl,-rpath,' + libdir) +- depends.append(lib) ++ new_depends.append(lib) + # Needed for the following binutils bug: + # https://github.com/mesonbuild/meson/issues/1911 + # However, g-ir-scanner does not understand -Wl,-rpath +@@ -404,18 +405,24 @@ class GnomeModule(ExtensionModule): + link_command.append('--extra-library=' + lib.name) + else: + link_command.append('-l' + lib.name) +- return link_command +- +- def _get_dependencies_flags(self, deps, state, depends, include_rpath=False, +- use_gir_args=False, separate_nodedup=False): +- cflags = OrderedSet() +- internal_ldflags = OrderedSet() +- external_ldflags = OrderedSet() ++ return link_command, new_depends ++ ++ def _get_dependencies_flags_raw( ++ self, deps, ++ state, ++ depends, ++ include_rpath: bool = False, ++ use_gir_args: bool = False, ++ ) -> T.Tuple[OrderedSet[str], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[str], ++ T.List]: ++ cflags: OrderedSet[str] = OrderedSet() + # External linker flags that can't be de-duped reliably because they +- # require two args in order, such as -framework AVFoundation +- external_ldflags_nodedup = [] +- gi_includes = OrderedSet() ++ # require two args in order, such as -framework AVFoundation will be stored as a tuple. ++ internal_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() ++ external_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() ++ gi_includes: OrderedSet[str] = OrderedSet() + deps = mesonlib.listify(deps) ++ depends = list(depends) + + for dep in deps: + if isinstance(dep, Dependency): +@@ -427,21 +434,20 @@ class GnomeModule(ExtensionModule): + cflags.update(state.get_include_args(dep.include_directories)) + for lib in dep.libraries: + if isinstance(lib, build.SharedLibrary): +- internal_ldflags.update(self._get_link_args(state, lib, depends, include_rpath)) +- libdepflags = self._get_dependencies_flags(lib.get_external_deps(), state, depends, include_rpath, +- use_gir_args, True) ++ _ld, depends = self._get_link_args(state, lib, depends, include_rpath) ++ internal_ldflags.update(_ld) ++ libdepflags = self._get_dependencies_flags_raw(lib.get_external_deps(), state, depends, include_rpath, ++ use_gir_args) + cflags.update(libdepflags[0]) + internal_ldflags.update(libdepflags[1]) + external_ldflags.update(libdepflags[2]) +- external_ldflags_nodedup += libdepflags[3] +- gi_includes.update(libdepflags[4]) +- extdepflags = self._get_dependencies_flags(dep.ext_deps, state, depends, include_rpath, +- use_gir_args, True) ++ gi_includes.update(libdepflags[3]) ++ extdepflags = self._get_dependencies_flags_raw(dep.ext_deps, state, depends, include_rpath, ++ use_gir_args) + cflags.update(extdepflags[0]) + internal_ldflags.update(extdepflags[1]) + external_ldflags.update(extdepflags[2]) +- external_ldflags_nodedup += extdepflags[3] +- gi_includes.update(extdepflags[4]) ++ gi_includes.update(extdepflags[3]) + for source in dep.sources: + if isinstance(source, GirTarget): + gi_includes.update([os.path.join(state.environment.get_build_dir(), +@@ -469,7 +475,7 @@ class GnomeModule(ExtensionModule): + # If it's a framework arg, slurp the framework name too + # to preserve the order of arguments + if lib == '-framework': +- external_ldflags_nodedup += [lib, next(ldflags)] ++ external_ldflags.update([(lib, next(ldflags))]) + else: + external_ldflags.update([lib]) + elif isinstance(dep, (build.StaticLibrary, build.SharedLibrary)): +@@ -480,21 +486,43 @@ class GnomeModule(ExtensionModule): + continue + + if use_gir_args and self._gir_has_option('--extra-library'): +- def fix_ldflags(ldflags): +- fixed_ldflags = OrderedSet() ++ def fix_ldflags(ldflags: T.Iterable[T.Union[str, T.Tuple[str, str]]]) -> OrderedSet[T.Union[str, T.Tuple[str, str]]]: ++ fixed_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() + for ldflag in ldflags: +- if ldflag.startswith("-l"): ++ if isinstance(ldflag, str) and ldflag.startswith("-l"): + ldflag = ldflag.replace('-l', '--extra-library=', 1) + fixed_ldflags.add(ldflag) + return fixed_ldflags + internal_ldflags = fix_ldflags(internal_ldflags) + external_ldflags = fix_ldflags(external_ldflags) +- if not separate_nodedup: +- external_ldflags.update(external_ldflags_nodedup) +- return cflags, internal_ldflags, external_ldflags, gi_includes +- else: +- return cflags, internal_ldflags, external_ldflags, external_ldflags_nodedup, gi_includes ++ return cflags, internal_ldflags, external_ldflags, gi_includes, depends ++ ++ def _get_dependencies_flags( ++ self, deps, ++ state, ++ depends, ++ include_rpath: bool = False, ++ use_gir_args: bool = False, ++ ) -> T.Tuple[OrderedSet[str], T.List[str], T.List[str], OrderedSet[str], ++ T.List]: ++ ++ cflags, internal_ldflags_raw, external_ldflags_raw, gi_includes, depends = self._get_dependencies_flags_raw(deps, state, depends, include_rpath, use_gir_args) ++ internal_ldflags: T.List[str] = [] ++ external_ldflags: T.List[str] = [] ++ ++ # Extract non-deduplicable argument groups out of the tuples. ++ for ldflag in internal_ldflags_raw: ++ if isinstance(ldflag, str): ++ internal_ldflags.append(ldflag) ++ else: ++ internal_ldflags.extend(ldflag) ++ for ldflag in external_ldflags_raw: ++ if isinstance(ldflag, str): ++ external_ldflags.append(ldflag) ++ else: ++ external_ldflags.extend(ldflag) + ++ return cflags, internal_ldflags, external_ldflags, gi_includes, depends + def _unwrap_gir_target(self, girtarget, state): + if not isinstance(girtarget, (build.Executable, build.SharedLibrary, + build.StaticLibrary)): +@@ -875,7 +903,7 @@ class GnomeModule(ExtensionModule): + # ldflags will be misinterpreted by gir scanner (showing + # spurious dependencies) but building GStreamer fails if they + # are not used here. +- dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes = \ ++ dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes, depends = \ + self._get_dependencies_flags(deps, state, depends, use_gir_args=True) + scan_cflags = [] + scan_cflags += list(self._get_scanner_cflags(cflags)) +@@ -1170,7 +1198,7 @@ class GnomeModule(ExtensionModule): + deps = extract_as_list(kwargs, 'dependencies') + cflags = [] + cflags.extend(mesonlib.stringlistify(kwargs.pop('c_args', []))) +- deps_cflags, internal_ldflags, external_ldflags, gi_includes = \ ++ deps_cflags, internal_ldflags, external_ldflags, gi_includes, depends = \ + self._get_dependencies_flags(deps, state, depends, include_rpath=True) + inc_dirs = mesonlib.extract_as_list(kwargs, 'include_directories') + for incd in inc_dirs: diff --git a/pkgs/development/tools/documentation/gi-docgen/default.nix b/pkgs/development/tools/documentation/gi-docgen/default.nix index 05b7aac82c1..85836f435cb 100644 --- a/pkgs/development/tools/documentation/gi-docgen/default.nix +++ b/pkgs/development/tools/documentation/gi-docgen/default.nix @@ -1,6 +1,5 @@ { lib , fetchFromGitLab -, fetchpatch , meson , ninja , python3 @@ -8,7 +7,7 @@ python3.pkgs.buildPythonApplication rec { pname = "gi-docgen"; - version = "2021.8"; + version = "2022.1"; format = "other"; @@ -17,18 +16,9 @@ python3.pkgs.buildPythonApplication rec { owner = "GNOME"; repo = pname; rev = version; - sha256 = "Y1IdCH6bytxbKIj48IAw/3XUQhoqwPshvdj/d1hRS3o="; + sha256 = "35pL/2TQRVgPfAcfOGCLlSP1LIh4r95mFC+UoXQEEHo="; }; - patches = [ - # Fix building docs of some packages (e.g. gnome-builder) - # https://gitlab.gnome.org/GNOME/gi-docgen/-/issues/111 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gi-docgen/-/commit/72f3c5dbe27aabb5f7a376afda23f3dfc3c2e212.patch"; - sha256 = "iVXc3idmcjmFVZQdE2QX2V53YZ79lqxZid9nWdxAZ/Q="; - }) - ]; - depsBuildBuild = [ python3 ]; diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix index 29694c08ed8..c11d386d746 100644 --- a/pkgs/development/tools/just/default.nix +++ b/pkgs/development/tools/just/default.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "just"; - version = "1.1.0"; + version = "1.1.1"; src = fetchFromGitHub { owner = "casey"; repo = pname; rev = version; - sha256 = "sha256-hbBAbk0n80BbbIx81427bRz4x6enBsxJ0bHJKww44oc="; + sha256 = "sha256-hgXMWQ7UlGyeb/j7V/Uw4gZjk/r1hA7lMjVL8i8st7o="; }; - cargoSha256 = "sha256-lZyFoOCWUE2ahU/lS+bIdrZXNm/sFEfLsQm1BxREg5w="; + cargoSha256 = "sha256-QJruh4voCB/q7xh5I6XnVtKA4Jbn9U84Mt2pHte7Kog="; nativeBuildInputs = [ installShellFiles ]; buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; diff --git a/pkgs/development/tools/misc/cgdb/default.nix b/pkgs/development/tools/misc/cgdb/default.nix index e8136be0eb4..62d26c09e51 100644 --- a/pkgs/development/tools/misc/cgdb/default.nix +++ b/pkgs/development/tools/misc/cgdb/default.nix @@ -16,8 +16,6 @@ stdenv.mkDerivation rec { homepage = "https://cgdb.github.io/"; - repositories.git = "git://github.com/cgdb/cgdb.git"; - license = licenses.gpl2Plus; platforms = with platforms; linux ++ cygwin; diff --git a/pkgs/development/tools/misc/unused/default.nix b/pkgs/development/tools/misc/unused/default.nix index 4c387237714..de12e527a29 100644 --- a/pkgs/development/tools/misc/unused/default.nix +++ b/pkgs/development/tools/misc/unused/default.nix @@ -1,18 +1,18 @@ { lib, fetchFromGitHub, rustPlatform, cmake }: rustPlatform.buildRustPackage rec { pname = "unused"; - version = "0.2.3"; + version = "0.4.0"; src = fetchFromGitHub { owner = "unused-code"; repo = pname; rev = version; - sha256 = "sha256-1R50oCVvk+XJG4EhLusY1aY6RjWNeZvlIDS8PJXIA7o="; + sha256 = "sha256-+1M8dUfjjrT4llS0C6WYDyNxJ9QZ5s9v+W185TbgwMw="; }; nativeBuildInputs = [ cmake ]; - cargoSha256 = "sha256-PjCR+kHlgPWkTkhN0idotGmLSe/FaKkgI9AMEJtoRz8="; + cargoSha256 = "sha256-hCtkR20+xs1UHZP7oJVpJACVGcMQLQmSS1QE2tmIVhs="; meta = with lib; { description = "A tool to identify potentially unused code"; diff --git a/pkgs/development/tools/pipenv/default.nix b/pkgs/development/tools/pipenv/default.nix index bd676389cd4..50b47b3351b 100644 --- a/pkgs/development/tools/pipenv/default.nix +++ b/pkgs/development/tools/pipenv/default.nix @@ -19,11 +19,11 @@ let in buildPythonApplication rec { pname = "pipenv"; - version = "2022.3.23"; + version = "2022.3.24"; src = fetchPypi { inherit pname version; - sha256 = "sha256-pt9BdR31VTfe5UNJ4dy3eB586zS7mFsITphafg3EP8U="; + sha256 = "sha256-gAGY1DDnJPiZ5tsxnMZA1f1toqzbwwHOsaH5Z+mQQos="; }; LC_ALL = "en_US.UTF-8"; diff --git a/pkgs/development/tools/profiling/sysprof/capture.nix b/pkgs/development/tools/profiling/sysprof/capture.nix index 2d33dedbdd2..e6690fc0c68 100644 --- a/pkgs/development/tools/profiling/sysprof/capture.nix +++ b/pkgs/development/tools/profiling/sysprof/capture.nix @@ -17,6 +17,7 @@ stdenv.mkDerivation rec { mesonFlags = [ "-Dwith_sysprofd=none" "-Dlibsysprof=false" + "-Dlibunwind=false" "-Dhelp=false" "-Denable_tools=false" "-Denable_tests=false" diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix index 319212da770..e21e7190786 100644 --- a/pkgs/development/tools/profiling/sysprof/default.nix +++ b/pkgs/development/tools/profiling/sysprof/default.nix @@ -8,8 +8,10 @@ , json-glib , itstool , libdazzle +, libunwind , libxml2 -, meson, ninja +, meson +, ninja , pango , pkg-config , polkit @@ -21,13 +23,13 @@ stdenv.mkDerivation rec { pname = "sysprof"; - version = "3.42.1"; + version = "3.44.0"; outputs = [ "out" "lib" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "F5a4FATudf0eus9URkrXr/6/YvKFHu9STZ+OrAxKIAE="; + sha256 = "q12fW3GXOzCI1Yob/fHcI8OaAvX85OXpxz4DSxeLAFs="; }; nativeBuildInputs = [ @@ -51,6 +53,7 @@ stdenv.mkDerivation rec { polkit systemd libdazzle + libunwind ]; mesonFlags = [ diff --git a/pkgs/development/tools/profiling/systemtap/default.nix b/pkgs/development/tools/profiling/systemtap/default.nix index ac00e341878..cadf9b9eeb1 100644 --- a/pkgs/development/tools/profiling/systemtap/default.nix +++ b/pkgs/development/tools/profiling/systemtap/default.nix @@ -40,7 +40,6 @@ in runCommand "systemtap-${kernel.version}-${version}" { nativeBuildInputs = [ makeWrapper ]; meta = { homepage = "https://sourceware.org/systemtap/"; - repositories.git = url; description = "Provides a scripting language for instrumentation on a live kernel plus user-space"; license = lib.licenses.gpl2; platforms = lib.platforms.linux; diff --git a/pkgs/development/tools/rust/bootimage/default.nix b/pkgs/development/tools/rust/bootimage/default.nix new file mode 100644 index 00000000000..9da7aeaa8cc --- /dev/null +++ b/pkgs/development/tools/rust/bootimage/default.nix @@ -0,0 +1,26 @@ +{ lib +, stdenv +, rustPlatform +, fetchFromGitHub +}: + +rustPlatform.buildRustPackage rec { + pname = "bootimage"; + version = "0.10.3"; + + src = fetchFromGitHub { + owner = "rust-osdev"; + repo = pname; + rev = "v${version}"; + sha256 = "12p18mk3l473is3ydv3zmn6s7ck8wgjwavllimcpja3yjilxm3zg"; + }; + + cargoSha256 = "03jximwqgjq7359c5mxbyfja2d04y57h34f87aby8jy0lz99jy2x"; + + meta = with lib; { + description = "Creates a bootable disk image from a Rust OS kernel."; + homepage = "https://github.com/rust-osdev/bootimage"; + license = with licenses; [ asl20 mit ]; + maintainers = with maintainers; [ dbeckwith ]; + }; +} diff --git a/pkgs/development/tools/rust/cargo-spellcheck/default.nix b/pkgs/development/tools/rust/cargo-spellcheck/default.nix index 3b579d3ef9f..39d01fd1d31 100644 --- a/pkgs/development/tools/rust/cargo-spellcheck/default.nix +++ b/pkgs/development/tools/rust/cargo-spellcheck/default.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage rec { pname = "cargo-spellcheck"; - version = "0.10.1"; + version = "0.11.0"; src = fetchFromGitHub { owner = "drahnr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-AKk25/j9Ao7ss8+2x+A5ohZ4P1wQ8uW5DVIBCHqFSPU="; + sha256 = "sha256-g8HsxY6moTLGdD1yBpzNNV+9uNdgbc0KG46ZxqwKH9A="; }; - cargoSha256 = "sha256-6zTZXSW8poePNZy48F6u5tF1LEDQt4f9qv7W/pdIBbI="; + cargoSha256 = "sha256-ehOeussyO/0lhIN8xfbEDMvgfooC0SzJ9id/skw1sdA="; buildInputs = lib.optional stdenv.isDarwin Security; diff --git a/pkgs/development/web/insomnia/default.nix b/pkgs/development/web/insomnia/default.nix index 2abdabc2331..ae6200df5ef 100644 --- a/pkgs/development/web/insomnia/default.nix +++ b/pkgs/development/web/insomnia/default.nix @@ -2,7 +2,7 @@ , fontconfig, freetype, gdk-pixbuf, glib, pango, mesa, nspr, nss, gtk3 , at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext -, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, nghttp2 +, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, nghttp2 , libudev0-shim, glibc, curl, openssl, autoPatchelfHook }: let @@ -15,12 +15,12 @@ let ]; in stdenv.mkDerivation rec { pname = "insomnia"; - version = "2021.7.2"; + version = "2022.1.1"; src = fetchurl { url = "https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb"; - sha256 = "sha256-HkQWW4h2+XT5Xi4oiIiMPnrRKw+GIyjGMQ5B1NrBARU="; + sha256 = "sha256-AaRiXGdKCzcsY4GEgLr5PO+f7STsR+p7ybGISdJlCVk="; }; nativeBuildInputs = @@ -53,6 +53,7 @@ in stdenv.mkDerivation rec { libXrender libXtst libxcb + libxshmfence mesa # for libgbm nspr nss diff --git a/pkgs/development/web/nodejs/v17.nix b/pkgs/development/web/nodejs/v17.nix index 20d76246020..1c4dcc02a97 100644 --- a/pkgs/development/web/nodejs/v17.nix +++ b/pkgs/development/web/nodejs/v17.nix @@ -7,8 +7,8 @@ let in buildNodejs { inherit enableNpm; - version = "17.7.2"; - sha256 = "sha256-OuXnTgsWIoz37faIU1mp0uAZrIQ5BsXgGUjXRvq6Sq8="; + version = "17.8.0"; + sha256 = "0jsf6sv42rzpizvil7g1gf9bskh8lx0gcxg0yzpr4hk7mx7i90br"; patches = [ ./disable-darwin-v8-system-instrumentation.patch ]; diff --git a/pkgs/games/airshipper/default.nix b/pkgs/games/airshipper/default.nix index 4474d09659e..4fc37b0ca25 100644 --- a/pkgs/games/airshipper/default.nix +++ b/pkgs/games/airshipper/default.nix @@ -3,6 +3,7 @@ , fetchFromGitLab , fetchpatch , openssl +, libGL , vulkan-loader , wayland , wayland-protocols @@ -49,14 +50,14 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = [ pkg-config makeWrapper ]; postInstall = '' - mkdir -p "$out/share/applications" && mkdir -p "$out/share/icons" - cp "client/assets/net.veloren.airshipper.desktop" "$out/share/applications" - cp "client/assets/logo.ico" "$out/share/icons/net.veloren.airshipper.ico" + install -Dm444 -t "$out/share/applications" "client/assets/net.veloren.airshipper.desktop" + install -Dm444 "client/assets/logo.ico" "$out/share/icons/net.veloren.airshipper.ico" ''; postFixup = let libPath = lib.makeLibraryPath [ + libGL vulkan-loader wayland wayland-protocols diff --git a/pkgs/games/dwarf-fortress/themes/default.nix b/pkgs/games/dwarf-fortress/themes/default.nix index c6987a1d16b..d2e2ec5fd19 100644 --- a/pkgs/games/dwarf-fortress/themes/default.nix +++ b/pkgs/games/dwarf-fortress/themes/default.nix @@ -6,7 +6,7 @@ listToAttrs (map (v: { inherit (v) name; value = fetchFromGitHub { - name = "${v.name}-${v.version}"; + name = "${v.name}-theme-${v.version}"; owner = "DFgraphics"; repo = v.name; rev = v.version; diff --git a/pkgs/games/gnonograms/default.nix b/pkgs/games/gnonograms/default.nix index cfe1085ca27..21f522d3418 100644 --- a/pkgs/games/gnonograms/default.nix +++ b/pkgs/games/gnonograms/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , vala , meson , ninja @@ -27,6 +28,15 @@ stdenv.mkDerivation rec { sha256 = "sha256-2uXaybpCAm9cr0o7bqfhgD7mMNPwtv1X/PgnFnSDOl0="; }; + patches = [ + # Fix build with meson 0.61, can be removed on next release + # https://github.com/jeremypw/gnonograms/pull/45 + (fetchpatch { + url = "https://github.com/jeremypw/gnonograms/commit/0e90d8ff42d64a94002ec8500889bc4d7e06c1b6.patch"; + sha256 = "sha256-G/yqsZFmOA69A3E2CROMYAS5vmok/K5l1S/M2m8DMh4="; + }) + ]; + postPatch = '' patchShebangs meson/post_install.py ''; diff --git a/pkgs/games/openxcom/default.nix b/pkgs/games/openxcom/default.nix index 8c115e9b312..b877c3aac2f 100644 --- a/pkgs/games/openxcom/default.nix +++ b/pkgs/games/openxcom/default.nix @@ -18,7 +18,6 @@ stdenv.mkDerivation { meta = { description = "Open source clone of UFO: Enemy Unknown"; homepage = "https://openxcom.org"; - repositories.git = "https://github.com/SupSuper/OpenXcom.git"; maintainers = [ lib.maintainers.cpages ]; platforms = lib.platforms.linux; license = lib.licenses.gpl3; diff --git a/pkgs/games/spring/springlobby.nix b/pkgs/games/spring/springlobby.nix index bf603e2f530..55c61c4cbd8 100644 --- a/pkgs/games/spring/springlobby.nix +++ b/pkgs/games/spring/springlobby.nix @@ -34,7 +34,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://springlobby.info/"; - repositories.git = "git://github.com/springlobby/springlobby.git"; description = "Cross-platform lobby client for the Spring RTS project"; license = licenses.gpl2; maintainers = with maintainers; [ qknight domenkozar ]; diff --git a/pkgs/os-specific/darwin/m-cli/default.nix b/pkgs/os-specific/darwin/m-cli/default.nix index f19f5a0275b..939ff36ef0c 100644 --- a/pkgs/os-specific/darwin/m-cli/default.nix +++ b/pkgs/os-specific/darwin/m-cli/default.nix @@ -35,7 +35,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Swiss Army Knife for macOS"; inherit (src.meta) homepage; - repositories.git = "git://github.com/rgcr/m-cli.git"; license = licenses.mit; diff --git a/pkgs/os-specific/linux/bluez/default.nix b/pkgs/os-specific/linux/bluez/default.nix index fb75b99f03d..ab9b7055fdd 100644 --- a/pkgs/os-specific/linux/bluez/default.nix +++ b/pkgs/os-specific/linux/bluez/default.nix @@ -135,6 +135,5 @@ in stdenv.mkDerivation rec { homepage = "http://www.bluez.org/"; license = with licenses; [ gpl2 lgpl21 ]; platforms = platforms.linux; - repositories.git = "https://git.kernel.org/pub/scm/bluetooth/bluez.git"; }; } diff --git a/pkgs/os-specific/linux/hostapd/default.nix b/pkgs/os-specific/linux/hostapd/default.nix index 8124da489ae..3fdbaa9149a 100644 --- a/pkgs/os-specific/linux/hostapd/default.nix +++ b/pkgs/os-specific/linux/hostapd/default.nix @@ -73,7 +73,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://hostap.epitest.fi"; - repositories.git = "git://w1.fi/hostap.git"; description = "A user space daemon for access point and authentication servers"; license = licenses.gpl2; maintainers = with maintainers; [ ninjatrappeur hexa ]; diff --git a/pkgs/os-specific/linux/i7z/default.nix b/pkgs/os-specific/linux/i7z/default.nix index 7de8046483d..9af2aba3d80 100644 --- a/pkgs/os-specific/linux/i7z/default.nix +++ b/pkgs/os-specific/linux/i7z/default.nix @@ -49,7 +49,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A better i7 (and now i3, i5) reporting tool for Linux"; homepage = "https://github.com/DimitryAndric/i7z"; - repositories.git = "https://github.com/DimitryAndric/i7z.git"; license = licenses.gpl2; maintainers = with maintainers; [ bluescreen303 ]; # broken on ARM diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index d3aeea3ec62..153b41194b8 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -60,16 +60,16 @@ let }; power-management = { - PM_ADVANCED_DEBUG = yes; - X86_INTEL_LPSS = yes; - X86_INTEL_PSTATE = yes; - INTEL_IDLE = yes; CPU_FREQ_DEFAULT_GOV_PERFORMANCE = yes; CPU_FREQ_GOV_SCHEDUTIL = yes; + PM_ADVANCED_DEBUG = yes; PM_WAKELOCKS = yes; - # Power-capping framework and support for INTEL RAPL POWERCAP = yes; + } // optionalAttrs (stdenv.hostPlatform.isx86) { + INTEL_IDLE = yes; INTEL_RAPL = whenAtLeast "5.3" module; + X86_INTEL_LPSS = yes; + X86_INTEL_PSTATE = yes; }; external-firmware = { @@ -269,8 +269,6 @@ let DRM_GMA600 = whenOlder "5.13" yes; DRM_GMA3600 = whenOlder "5.12" yes; DRM_VMWGFX_FBCON = yes; - # necessary for amdgpu polaris support - DRM_AMD_POWERPLAY = whenBetween "4.5" "4.9" yes; # (experimental) amdgpu support for verde and newer chipsets DRM_AMDGPU_SI = yes; # (stable) amdgpu support for bonaire and newer chipsets @@ -383,7 +381,7 @@ let EXT4_FS_POSIX_ACL = yes; EXT4_FS_SECURITY = yes; - EXT4_ENCRYPTION = { optional = true; tristate = if (versionOlder version "4.8") then "m" else "y"; }; + EXT4_ENCRYPTION = option yes; REISERFS_FS_XATTR = option yes; REISERFS_FS_POSIX_ACL = option yes; @@ -461,7 +459,7 @@ let # https://googleprojectzero.blogspot.com/2019/11/bad-binder-android-in-wild-exploit.html DEBUG_LIST = yes; # Detect writes to read-only module pages - DEBUG_SET_MODULE_RONX = { optional = true; tristate = whenOlder "4.11" "y"; }; + DEBUG_SET_MODULE_RONX = whenOlder "4.11" (option yes); RANDOMIZE_BASE = option yes; STRICT_DEVMEM = mkDefault yes; # Filter access to /dev/mem IO_STRICT_DEVMEM = mkDefault yes; @@ -561,8 +559,8 @@ let PARAVIRT_SPINLOCKS = option yes; KVM_ASYNC_PF = yes; - KVM_COMPAT = { optional = true; tristate = whenBetween "4.0" "4.12" "y"; }; - KVM_DEVICE_ASSIGNMENT = { optional = true; tristate = whenBetween "3.10" "4.12" "y"; }; + KVM_COMPAT = whenOlder "4.12" (option yes); + KVM_DEVICE_ASSIGNMENT = whenOlder "4.12" (option yes); KVM_GENERIC_DIRTYLOG_READ_PROTECT = yes; KVM_GUEST = yes; KVM_MMIO = yes; @@ -770,7 +768,6 @@ let AIC79XX_DEBUG_ENABLE = no; AIC7XXX_DEBUG_ENABLE = no; AIC94XX_DEBUG = no; - B43_PCMCIA = { optional=true; tristate = whenOlder "4.4" "y";}; BLK_DEV_INTEGRITY = yes; @@ -791,7 +788,9 @@ let BT_RFCOMM_TTY = option yes; # RFCOMM TTY support BT_QCA = module; # enables QCA6390 bluetooth - CLEANCACHE = option yes; + # Removed on 5.17 as it was unused + # upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0a4ee518185e902758191d968600399f3bc2be31 + CLEANCACHE = whenOlder "5.17" (option yes); CRASH_DUMP = option no; DVB_DYNAMIC_MINORS = option yes; # we use udev diff --git a/pkgs/os-specific/linux/kernel/linux-5.10.nix b/pkgs/os-specific/linux/kernel/linux-5.10.nix index dec0ebb154a..00613f51606 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.10.106"; + version = "5.10.107"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "0yjrlghcxw3lhd6nc2m4zy4gk536w3a3w6mxdsml690fqz4531n6"; + sha256 = "1snzzhkzdjlj92gqig3sanxlhv0xc0xk2xwjdjr0yds6g43w6ry4"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.15.nix b/pkgs/os-specific/linux/kernel/linux-5.15.nix index 7b76ab0c8a5..0cfb2c91df0 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.15.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.15.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.15.29"; + version = "5.15.30"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -15,6 +15,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "0vl7xm4xs59z071wfjna392yada3hg5h6h3dfjaswircc22fc1ar"; + sha256 = "0ckiz985x88x68psg6wazyk7zpv34k8rbzpzyzj0gaph13za4ki5"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-5.16.nix b/pkgs/os-specific/linux/kernel/linux-5.16.nix index 1fadc0d420e..63dc8d0463a 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.16.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.16.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.16.15"; + version = "5.16.16"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1mi41npkk1inqchm3yp14xmzc5lrp50d7vbpazwxwq5kw04c8c4g"; + sha256 = "13qk6cjnjwgnxj25mphyv08pjf1sqz7bxxrr3fpl8gz3aghdd9yc"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix index c234b4f898c..b8958558588 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.4.185"; + version = "5.4.186"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "11rp3x05bq9cs9gwy4x36ynkgl7nb5ss29zi6m7n5ywvczdfjpyi"; + sha256 = "1f9rigm58miq5s98bx7pvylqi9hlzlfnq1nrj4cd8f4arcjcvxv1"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix index 50b3f18e9e2..cf0744bce68 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix @@ -6,7 +6,7 @@ , ... } @ args: let - version = "5.10.104-rt63"; # updated by ./update-rt.sh + version = "5.10.106-rt64"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in buildLinux (args // { @@ -18,14 +18,14 @@ in buildLinux (args // { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; - sha256 = "1wb2ql58md45wi49bp3rck7ppgisyjdl7lxarzqd094fx9kr4jir"; + sha256 = "0yjrlghcxw3lhd6nc2m4zy4gk536w3a3w6mxdsml690fqz4531n6"; }; kernelPatches = let rt-patch = { name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "17ivd6dm49axc9k6cqf39wjjqrjqbj5xd3n7lqk7vv95rg9fg0g7"; + sha256 = "0z5gyi1vyjyd05vyccmk9yfgvm5v1lc8vbfywahx495xzpp9i8xb"; }; }; in [ rt-patch ] ++ kernelPatches; diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix index 63d47dd8a38..e86f6fced56 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix @@ -1,9 +1,9 @@ { lib , fetchpatch , kernel -, date ? "2022-03-09" -, commit ? "2280551cebc1735f74eef75d650dd5e175461657" -, diffHash ? "1mrrydidbapdq0fs0vpqhs88k6ghdrvmjpk2zi7xlwj7j32h0nwp" +, date ? "2022-03-21" +, commit ? "c38b7167aa5f3b1b91dcc93ade57f30e95064590" +, diffHash ? "04lgwnng7p2rlz9sxn74n22750kh524xwfws3agqs12pcrvfsm0j" , kernelPatches # must always be defined in bcachefs' all-packages.nix entry because it's also a top-level attribute supplied by callPackage , argsOverride ? {} , ... diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index 1ac9cbe00ea..220f09ed8b5 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -301,7 +301,6 @@ let + ")"); license = lib.licenses.gpl2Only; homepage = "https://www.kernel.org/"; - repositories.git = "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"; maintainers = lib.teams.linux-kernel.members ++ [ maintainers.thoughtpolice ]; diff --git a/pkgs/os-specific/linux/ldm/default.nix b/pkgs/os-specific/linux/ldm/default.nix index 072b53b02ec..f8a519de847 100644 --- a/pkgs/os-specific/linux/ldm/default.nix +++ b/pkgs/os-specific/linux/ldm/default.nix @@ -4,7 +4,6 @@ assert mountPath != ""; let version = "0.5"; - git = "https://github.com/LemonBoy/ldm.git"; in stdenv.mkDerivation rec { pname = "ldm"; @@ -13,7 +12,7 @@ stdenv.mkDerivation rec { # There is a stable release, but we'll use the lvm branch, which # contains important fixes for LVM setups. src = fetchgit { - url = meta.repositories.git; + url = "https://github.com/LemonBoy/ldm"; rev = "refs/tags/v${version}"; sha256 = "0lxfypnbamfx6p9ar5k9wra20gvwn665l4pp2j4vsx4yi5q7rw2n"; }; @@ -36,8 +35,6 @@ stdenv.mkDerivation rec { meta = { description = "A lightweight device mounter, with libudev as only dependency"; license = lib.licenses.mit; - platforms = lib.platforms.linux; - repositories.git = git; }; } diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh index 695f173da8f..795bedb99d4 100755 --- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh +++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh @@ -352,16 +352,6 @@ if [[ -z $flake && -e /etc/nixos/flake.nix && -z $noFlake ]]; then flake="$(dirname "$(readlink -f /etc/nixos/flake.nix)")" fi -# Re-execute nixos-rebuild from the Nixpkgs tree. -# FIXME: get nixos-rebuild from $flake. -if [[ -z $_NIXOS_REBUILD_REEXEC && -n $canRun && -z $fast && -z $flake ]]; then - if p=$(runCmd nix-build --no-out-link --expr 'with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild' "${extraBuildFlags[@]}"); then - export _NIXOS_REBUILD_REEXEC=1 - runCmd exec "$p/bin/nixos-rebuild" "${origArgs[@]}" - exit 1 - fi -fi - # For convenience, use the hostname as the default configuration to # build from the flake. if [[ -n $flake ]]; then @@ -380,6 +370,40 @@ if [[ -n $flake ]]; then fi fi + +tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX) + +cleanup() { + for ctrl in "$tmpDir"/ssh-*; do + ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true + done + rm -rf "$tmpDir" +} +trap cleanup EXIT + + +# Re-execute nixos-rebuild from the Nixpkgs tree. +if [[ -z $_NIXOS_REBUILD_REEXEC && -n $canRun && -z $fast ]]; then + if [[ -z $flake ]]; then + if p=$(runCmd nix-build --no-out-link --expr 'with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild' "${extraBuildFlags[@]}"); then + SHOULD_REEXEC=1 + fi + else + runCmd nix "${flakeFlags[@]}" build --out-link "${tmpDir}/nixos-rebuild" "$flake#$flakeAttr.config.system.build.nixos-rebuild" "${extraBuildFlags[@]}" "${lockFlags[@]}" + if p=$(readlink -e "${tmpDir}/nixos-rebuild"); then + SHOULD_REEXEC=1 + fi + fi + + if [[ -n $SHOULD_REEXEC ]]; then + export _NIXOS_REBUILD_REEXEC=1 + # Manually call cleanup as the EXIT trap is not triggered when using exec + cleanup + runCmd exec "$p/bin/nixos-rebuild" "${origArgs[@]}" + exit 1 + fi +fi + # Find configuration.nix and open editor instead of building. if [ "$action" = edit ]; then if [[ -z $flake ]]; then @@ -394,19 +418,8 @@ if [ "$action" = edit ]; then exit 1 fi - -tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX) SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60" -cleanup() { - for ctrl in "$tmpDir"/ssh-*; do - ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true - done - rm -rf "$tmpDir" -} -trap cleanup EXIT - - # First build Nix, since NixOS may require a newer version than the # current one. if [[ -n "$rollback" || "$action" = dry-build ]]; then diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 14526501785..246295eb734 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -19,10 +19,10 @@ rec { # Policy: use the highest stable version as the default (on our master). stable = if stdenv.hostPlatform.system == "x86_64-linux" then generic { - version = "510.54"; - sha256_64bit = "TCDezK4/40et/Q5piaMG+QJP2t+DGtwejmCFVnUzUWE="; - settingsSha256 = "ZWz5UN6Pa69NlmerKu30G+X8WfGlAwnVerDrO7TRO6w="; - persistencedSha256 = "MgWrBjKXJeRqF+ouT72tTiLPtn+lsS/Cp3oS61AWV8Q="; + version = "510.60.02"; + sha256_64bit = "sha256-qADfwFSQeP2Mbo5ngO+47uh4cuYFXH9fOGpHaM4H4AM="; + settingsSha256 = "sha256-Voa1JZ2qqJ1t+bfwKh/mssEi/hjzLTPwef2XG/gAC+0="; + persistencedSha256 = "sha256-THgK2GpRcttqSN2WxcuJu5My++Q+Y34jG8hm7daxhAQ="; } else legacy_390; diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index b5260d47caa..6747d511694 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -16,7 +16,7 @@ , enablePython ? true # for determining the latest compatible linuxPackages -, linuxPackages_5_16 ? pkgs.linuxKernel.packages.linux_5_16 +, linuxPackages_5_17 ? pkgs.linuxKernel.packages.linux_5_17 }: let @@ -216,28 +216,28 @@ in { # to be adapted zfsStable = common { # check the release notes for compatible kernels - kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.17"; - latestCompatibleLinuxPackages = linuxPackages_5_16; + kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.18"; + latestCompatibleLinuxPackages = linuxPackages_5_17; # this package should point to the latest release. - version = "2.1.3"; + version = "2.1.4"; - sha256 = "10p9s835wj5msspqwnqbfbnh8jmcazzd2v0gj4hn7vvni4p48gfl"; + sha256 = "sha256-pHz1N2j+d9p1xleEBwwrmK9mN5gEyM69Suy0dsrkZT4="; }; zfsUnstable = common { # check the release notes for compatible kernels - kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.17"; - latestCompatibleLinuxPackages = linuxPackages_5_16; + kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.18"; + latestCompatibleLinuxPackages = linuxPackages_5_17; # this package should point to a version / git revision compatible with the latest kernel release # IMPORTANT: Always use a tagged release candidate or commits from the # zfs-<version>-staging branch, because this is tested by the OpenZFS # maintainers. - version = "2.1.3"; + version = "2.1.4"; # rev = "0000000000000000000000000000000000000000"; - sha256 = "10p9s835wj5msspqwnqbfbnh8jmcazzd2v0gj4hn7vvni4p48gfl"; + sha256 = "sha256-pHz1N2j+d9p1xleEBwwrmK9mN5gEyM69Suy0dsrkZT4="; isUnstable = true; }; diff --git a/pkgs/servers/amqp/qpid-cpp/default.nix b/pkgs/servers/amqp/qpid-cpp/default.nix index 434aeeb3a19..c6d66427ab2 100644 --- a/pkgs/servers/amqp/qpid-cpp/default.nix +++ b/pkgs/servers/amqp/qpid-cpp/default.nix @@ -12,8 +12,6 @@ let meta = with lib; { homepage = "https://qpid.apache.org"; - repositories.git = "git://git.apache.org/qpid.git"; - repositories.svn = "http://svn.apache.org/repos/asf/qpid"; description = "An AMQP message broker and a C++ messaging API"; license = licenses.asl20; platforms = platforms.linux; diff --git a/pkgs/servers/dict/wiktionary/default.nix b/pkgs/servers/dict/wiktionary/default.nix index 98e22301048..9ebbfb76739 100644 --- a/pkgs/servers/dict/wiktionary/default.nix +++ b/pkgs/servers/dict/wiktionary/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "dict-db-wiktionary"; - version = "20210920"; + version = "20220301"; src = fetchurl { url = "https://dumps.wikimedia.org/enwiktionary/${version}/enwiktionary-${version}-pages-articles.xml.bz2"; - sha256 = "UeufbpSpRL+JrU3SkhxzWJncEsrM1es88grRmFwGABk="; + sha256 = "Gobilm9Rlb7qtZU+hlsYOl1/BAjj/MtNp5z2GQx8NN8="; }; # script in nixpkgs does not support python2 diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 7f765eb9fd8..53d1cb6b836 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2022.3.5"; + version = "2022.3.6"; components = { "abode" = ps: with ps; [ abodepy ]; "accuweather" = ps: with ps; [ accuweather ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 9e7fc76e4e3..94899c7a81f 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -164,7 +164,7 @@ let extraPackagesFile = writeText "home-assistant-packages" (lib.concatMapStringsSep "\n" (pkg: pkg.pname) extraBuildInputs); # Don't forget to run parse-requirements.py after updating - hassVersion = "2022.3.5"; + hassVersion = "2022.3.6"; in python.pkgs.buildPythonApplication rec { pname = "homeassistant"; @@ -182,7 +182,7 @@ in python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = version; - hash = "sha256-VXE2zQH/HHhogo5qjneC0zlo9892wgGN1qd3ZFKfyqw="; + hash = "sha256-Cw3OLUDHkbGsxY3gQaAXcfoKeh5udODS8vVlT0Qta9Y="; }; # leave this in, so users don't have to constantly update their downstream patch handling diff --git a/pkgs/servers/keycloak/all-plugins.nix b/pkgs/servers/keycloak/all-plugins.nix new file mode 100644 index 00000000000..4dbd2487263 --- /dev/null +++ b/pkgs/servers/keycloak/all-plugins.nix @@ -0,0 +1,7 @@ +{ callPackage }: + +{ + scim-for-keycloak = callPackage ./scim-for-keycloak {}; + keycloak-discord = callPackage ./keycloak-discord {}; + keycloak-metrics-spi = callPackage ./keycloak-metrics-spi {}; +} diff --git a/pkgs/servers/keycloak/default.nix b/pkgs/servers/keycloak/default.nix index 19268de42ff..d9797de6d17 100644 --- a/pkgs/servers/keycloak/default.nix +++ b/pkgs/servers/keycloak/default.nix @@ -1,5 +1,6 @@ { stdenv, lib, fetchzip, makeWrapper, jre, writeText, nixosTests , postgresql_jdbc ? null, mysql_jdbc ? null +, callPackage }: let @@ -57,7 +58,10 @@ stdenv.mkDerivation rec { wrapProgram $out/bin/kcreg.sh --prefix PATH : ${jre}/bin ''; - passthru.tests = nixosTests.keycloak; + passthru = { + tests = nixosTests.keycloak; + plugins = callPackage ./all-plugins.nix {}; + }; meta = with lib; { homepage = "https://www.keycloak.org/"; diff --git a/pkgs/servers/keycloak/keycloak-discord/default.nix b/pkgs/servers/keycloak/keycloak-discord/default.nix new file mode 100644 index 00000000000..047bc67fbc5 --- /dev/null +++ b/pkgs/servers/keycloak/keycloak-discord/default.nix @@ -0,0 +1,29 @@ +{ stdenv +, lib +, fetchurl +}: + +stdenv.mkDerivation rec { + pname = "keycloak-discord"; + version = "0.3.1"; + + src = fetchurl { + url = "https://github.com/wadahiro/keycloak-discord/releases/download/v${version}/keycloak-discord-ear-${version}.ear"; + sha256 = "0fswhbnxc80dpfqf5y6j29dxk3vcnm4kki6qdk22qliasvpw5n9c"; + }; + + dontUnpack = true; + dontBuild = true; + + installPhase = '' + mkdir -p "$out" + install "$src" "$out/${pname}-ear-${version}.ear" + ''; + + meta = with lib; { + homepage = "https://github.com/wadahiro/keycloak-discord"; + description = "Keycloak Social Login extension for Discord"; + license = licenses.apsl20; + maintainers = with maintainers; [ mkg20001 ]; + }; +} diff --git a/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix b/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix new file mode 100644 index 00000000000..b5e23d0fe22 --- /dev/null +++ b/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix @@ -0,0 +1,26 @@ +{ stdenv, lib, fetchurl }: + +stdenv.mkDerivation rec { + pname = "keycloak-metrics-spi"; + version = "2.5.3"; + + src = fetchurl { + url = "https://github.com/aerogear/keycloak-metrics-spi/releases/download/${version}/keycloak-metrics-spi-${version}.jar"; + sha256 = "15lsy8wjw6nlfdfhllc45z9l5474p0lsghrwzzsssvd68bw54gwv"; + }; + + dontUnpack = true; + dontBuild = true; + + installPhase = '' + mkdir -p $out + install "$src" "$out" + ''; + + meta = with lib; { + homepage = "https://github.com/aerogear/keycloak-metrics-spi"; + description = "Keycloak Service Provider that adds a metrics endpoint"; + license = licenses.apsl20; + maintainers = with maintainers; [ benley ]; + }; +} diff --git a/pkgs/servers/keycloak/scim-for-keycloak/default.nix b/pkgs/servers/keycloak/scim-for-keycloak/default.nix new file mode 100644 index 00000000000..1ef06061326 --- /dev/null +++ b/pkgs/servers/keycloak/scim-for-keycloak/default.nix @@ -0,0 +1,36 @@ +{ lib +, stdenv +, fetchFromGitHub +, maven +, javaPackages +}: + +javaPackages.mavenfod rec { + pname = "scim-for-keycloak"; + version = "kc-15-b2"; # When updating also update mvnHash + + src = fetchFromGitHub { + owner = "Captain-P-Goldfish"; + repo = "scim-for-keycloak"; + rev = version; + sha256 = "K34c7xISjEETI3jFkRLdZ0C8pZHTWtPtrrIzwC76Tv0="; + }; + + mvnHash = "sha256-kDYhXTEOAWH/dcRJalKtbwBpoxcD1aX9eqcRKs6ewbE="; + + nativeBuildInputs = [ + maven + ]; + + installPhase = '' + EAR=$(find -iname "*.ear") + install -D "$EAR" "$out/$(basename $EAR)" + ''; + + meta = with lib; { + homepage = "https://github.com/Captain-P-Goldfish/scim-for-keycloak"; + description = "A third party module that extends Keycloak with SCIM functionality"; + license = licenses.bsd3; + maintainers = with maintainers; [ mkg20001 ]; + }; +} diff --git a/pkgs/servers/memcached/default.nix b/pkgs/servers/memcached/default.nix index 824e90b4869..4461930b13c 100644 --- a/pkgs/servers/memcached/default.nix +++ b/pkgs/servers/memcached/default.nix @@ -22,7 +22,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A distributed memory object caching system"; - repositories.git = "https://github.com/memcached/memcached.git"; homepage = "http://memcached.org/"; license = licenses.bsd3; maintainers = [ maintainers.coconnor ]; diff --git a/pkgs/servers/squid/default.nix b/pkgs/servers/squid/default.nix index dae9d21c7f5..70b9c869f11 100644 --- a/pkgs/servers/squid/default.nix +++ b/pkgs/servers/squid/default.nix @@ -1,20 +1,20 @@ { lib, stdenv, fetchurl, perl, openldap, pam, db, cyrus_sasl, libcap -, expat, libxml2, openssl, pkg-config +, expat, libxml2, openssl, pkg-config, systemd }: stdenv.mkDerivation rec { pname = "squid"; - version = "4.17"; + version = "5.4.1"; src = fetchurl { - url = "http://www.squid-cache.org/Versions/v4/${pname}-${version}.tar.xz"; - sha256 = "sha256-y5KKwIx8hrFRscj4J6vhqE2DGBoqhuDVEihhY+HjFBg="; + url = "http://www.squid-cache.org/Versions/v5/${pname}-${version}.tar.xz"; + sha256 = "sha256-300xCpFmOuWcKbD4GD8iYjxeb3MYaa95OAWYerlMpBw="; }; nativeBuildInputs = [ pkg-config ]; buildInputs = [ perl openldap db cyrus_sasl expat libxml2 openssl - ] ++ lib.optionals stdenv.isLinux [ libcap pam ]; + ] ++ lib.optionals stdenv.isLinux [ libcap pam systemd ]; configureFlags = [ "--enable-ipv6" @@ -26,7 +26,9 @@ stdenv.mkDerivation rec { "--enable-removal-policies=lru,heap" "--enable-delay-pools" "--enable-x-accelerator-vary" - ] ++ lib.optional (stdenv.isLinux && !stdenv.hostPlatform.isMusl) "--enable-linux-netfilter"; + "--enable-htcp" + ] ++ lib.optional (stdenv.isLinux && !stdenv.hostPlatform.isMusl) + "--enable-linux-netfilter"; meta = with lib; { description = "A caching proxy for the Web supporting HTTP, HTTPS, FTP, and more"; diff --git a/pkgs/shells/elvish/default.nix b/pkgs/shells/elvish/default.nix index ba03ffb4f45..fc61efc3006 100644 --- a/pkgs/shells/elvish/default.nix +++ b/pkgs/shells/elvish/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "elvish"; - version = "0.17.0"; + version = "0.18.0"; subPackages = [ "cmd/elvish" ]; @@ -12,10 +12,10 @@ buildGoModule rec { owner = "elves"; repo = pname; rev = "v${version}"; - sha256 = "sha256-F6yjfsEEBrD6kXUgbMrz+1mxrz0z+sdfeoyztpy7rEk="; + sha256 = "sha256-AyTkJiNebpq17vdPluwJBztivezd+c1KAdWFTYYDIFE="; }; - vendorSha256 = "sha256-810YVxO1rjeDV1XWvE4RmJjGOMdTlicnv7YbvKtoDbM="; + vendorSha256 = "sha256-iuklI7XEQUgZ2ObYRROxyiccZ1JkajK5OJA7hIcpRZQ="; doCheck = false; diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix index e320b920cfa..4c45fd3a75f 100644 --- a/pkgs/shells/fish/default.nix +++ b/pkgs/shells/fish/default.nix @@ -134,7 +134,7 @@ let fish = stdenv.mkDerivation rec { pname = "fish"; - version = "3.4.0"; + version = "3.4.1"; src = fetchurl { # There are differences between the release tarball and the tarball GitHub @@ -144,7 +144,7 @@ let # --version`), as well as the local documentation for all builtins (and # maybe other things). url = "https://github.com/fish-shell/fish-shell/releases/download/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-tbSKuEhrGe9xajL39GuIuepTVhVfDpZ+6Z9Ak2RUE8U="; + sha256 = "sha256-tvI7OEOwTbawqQ/qH28NDkDMAntKcyCYIAhj8oZKlOo="; }; # Fix FHS paths in tests diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix index 40cedd713ab..8ad5fa6b89b 100644 --- a/pkgs/stdenv/generic/check-meta.nix +++ b/pkgs/stdenv/generic/check-meta.nix @@ -240,7 +240,6 @@ let outputsToInstall = listOf str; position = str; available = bool; - repositories = attrsOf str; isBuildPythonPackage = platforms; schedulingPriority = int; isFcitxEngine = bool; diff --git a/pkgs/test/mkOption/declare.nix b/pkgs/test/mkOption/declare.nix deleted file mode 100644 index 9e89a1c096d..00000000000 --- a/pkgs/test/mkOption/declare.nix +++ /dev/null @@ -1,53 +0,0 @@ -# sets of small configurations: -# Each configuration -rec { - # has 2 arguments pkgs and this. - configA = pkgs: this: { - # Can depends on other configuration - require = configB; - - # Defines new options - optionA = pkgs.lib.mkOption { - # With default values - default = false; - # And merging functions. - merge = pkgs.lib.mergeEnableOption; - }; - - # Add a new definition to other options. - optionB = this.optionA; - }; - - # Can be used for option header. - configB = pkgs: this: { - # Can depends on more than one configuration. - require = [ configC configD ]; - - optionB = pkgs.lib.mkOption { - default = false; - }; - - # Is not obliged to define other options. - }; - - configC = pkgs: this: { - require = [ configA ]; - - optionC = pkgs.lib.mkOption { - default = false; - }; - - # Use the default value if it is not overwritten. - optionA = this.optionC; - }; - - # Can also be used as option configuration only. - # without any arguments (backward compatibility) - configD = { - # Is not forced to specify the require attribute. - - # Is not force to make new options. - optionA = true; - optionD = false; - }; -} diff --git a/pkgs/test/mkOption/keep.nix b/pkgs/test/mkOption/keep.nix deleted file mode 100644 index 26fb8c28dd5..00000000000 --- a/pkgs/test/mkOption/keep.nix +++ /dev/null @@ -1,11 +0,0 @@ -let - pkgs = import ../../.. {}; - config = import ./declare.nix; -in - with (pkgs.lib); - - finalReferenceOptionSets - filterOptionSets - pkgs - # List of main configurations. - [ config.configB config.configC ] diff --git a/pkgs/test/mkOption/keep.ref b/pkgs/test/mkOption/keep.ref deleted file mode 100644 index a3a051eb48c..00000000000 --- a/pkgs/test/mkOption/keep.ref +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version='1.0' encoding='utf-8'?> -<expr> - <attrs> - <attr name="optionA"> - <list> - <attrs> - <attr name="_type"> - <string value="option" /> - </attr> - <attr name="default"> - <bool value="false" /> - </attr> - <attr name="merge"> - <unevaluated /> - </attr> - <attr name="name"> - <string value="optionA" /> - </attr> - </attrs> - </list> - </attr> - <attr name="optionB"> - <list> - <attrs> - <attr name="_type"> - <string value="option" /> - </attr> - <attr name="default"> - <bool value="false" /> - </attr> - <attr name="name"> - <string value="optionB" /> - </attr> - </attrs> - </list> - </attr> - <attr name="optionC"> - <list> - <attrs> - <attr name="_type"> - <string value="option" /> - </attr> - <attr name="default"> - <bool value="false" /> - </attr> - <attr name="name"> - <string value="optionC" /> - </attr> - </attrs> - </list> - </attr> - <attr name="optionD"> - <attrs> - </attrs> - </attr> - </attrs> -</expr> diff --git a/pkgs/test/mkOption/merge.nix b/pkgs/test/mkOption/merge.nix deleted file mode 100644 index bbf68218aa0..00000000000 --- a/pkgs/test/mkOption/merge.nix +++ /dev/null @@ -1,15 +0,0 @@ -let - pkgs = import ../../.. {}; - config = import ./declare.nix; - - # Define the handler of unbound options. - noOption = name: values: - builtins.trace "Attribute named '${name}' does not match any option declaration." values; -in - with (pkgs.lib); - - finalReferenceOptionSets - (mergeOptionSets noOption) - pkgs - # List of main configurations. - [ config.configB config.configC ] diff --git a/pkgs/test/mkOption/merge.ref b/pkgs/test/mkOption/merge.ref deleted file mode 100644 index 6956f65dbbc..00000000000 --- a/pkgs/test/mkOption/merge.ref +++ /dev/null @@ -1,20 +0,0 @@ -trace: Str("Attribute named 'optionD' does not match any option declaration.",[]) -<?xml version='1.0' encoding='utf-8'?> -<expr> - <attrs> - <attr name="optionA"> - <bool value="true" /> - </attr> - <attr name="optionB"> - <bool value="true" /> - </attr> - <attr name="optionC"> - <bool value="false" /> - </attr> - <attr name="optionD"> - <list> - <bool value="false" /> - </list> - </attr> - </attrs> -</expr> diff --git a/pkgs/test/mkOption/test.sh b/pkgs/test/mkOption/test.sh deleted file mode 100755 index 5478846d563..00000000000 --- a/pkgs/test/mkOption/test.sh +++ /dev/null @@ -1,9 +0,0 @@ -#! /bin/sh -e - -echo 1>&2 "Test: Merge of option bindings." -nix-instantiate merge.nix --eval-only --strict --xml >& merge.out -diff merge.ref merge.out - -echo 1>&2 "Test: Filter of option declarations." -nix-instantiate keep.nix --eval-only --strict --xml >& keep.out -diff keep.ref keep.out diff --git a/pkgs/tools/admin/aliyun-cli/default.nix b/pkgs/tools/admin/aliyun-cli/default.nix index 94f793f47fd..58fb1bd27cd 100644 --- a/pkgs/tools/admin/aliyun-cli/default.nix +++ b/pkgs/tools/admin/aliyun-cli/default.nix @@ -2,14 +2,14 @@ buildGoModule rec { pname = "aliyun-cli"; - version = "3.0.112"; + version = "3.0.113"; src = fetchFromGitHub { rev = "v${version}"; owner = "aliyun"; repo = pname; fetchSubmodules = true; - sha256 = "sha256-gzZFxZMLq0TS8bxnQTTEno6OdAu/5tqr0Tl1cF8Rm3c="; + sha256 = "sha256-+ZbfWFAf7G5mwtSgfGe/oslqIbOqqiwdtP9mWx/3u4w="; }; vendorSha256 = "sha256-FQvBq8+80h7m271gjraV445ayWcpkemOtVswfmHzUM0="; diff --git a/pkgs/tools/backup/autorestic/default.nix b/pkgs/tools/backup/autorestic/default.nix index b1d863c1cf1..d7b6af03164 100644 --- a/pkgs/tools/backup/autorestic/default.nix +++ b/pkgs/tools/backup/autorestic/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "autorestic"; - version = "1.5.7"; + version = "1.5.8"; src = fetchFromGitHub { owner = "cupcakearmy"; repo = pname; rev = "v${version}"; - sha256 = "sha256-o3SO3y26ur16D20rTYtzfyZWNDbeOzvj/BpMykvG698="; + sha256 = "sha256-0eq2u3DCNgfxsiE4lycf+xGIoEC3sZgEMha9+40j+9s="; }; vendorSha256 = "sha256-qYXdRpQT7x+Y5h8PuKGjsANXLqjNlsPKO76GQhnufTU="; diff --git a/pkgs/tools/bluetooth/blueberry/default.nix b/pkgs/tools/bluetooth/blueberry/default.nix index 5616560108c..bbc3babbd13 100644 --- a/pkgs/tools/bluetooth/blueberry/default.nix +++ b/pkgs/tools/bluetooth/blueberry/default.nix @@ -3,15 +3,18 @@ , fetchFromGitHub , bluez-tools , cinnamon -, gnome , gobject-introspection , intltool , pavucontrol , python3Packages , util-linux , wrapGAppsHook +, callPackage }: +let + gnome-bluetooth = callPackage ./gnome-bluetooth.nix {}; +in stdenv.mkDerivation rec { pname = "blueberry"; version = "1.4.7"; @@ -32,7 +35,7 @@ stdenv.mkDerivation rec { buildInputs = [ bluez-tools cinnamon.xapps - gnome.gnome-bluetooth + gnome-bluetooth python3Packages.python util-linux ]; diff --git a/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix b/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix new file mode 100644 index 00000000000..cf0028cf833 --- /dev/null +++ b/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix @@ -0,0 +1,96 @@ +{ lib +, stdenv +, fetchurl +, fetchpatch +, gnome +, meson +, ninja +, pkg-config +, gtk3 +, gettext +, glib +, udev +, itstool +, libxml2 +, wrapGAppsHook +, libnotify +, libcanberra-gtk3 +, gobject-introspection +, gtk-doc +, docbook-xsl-nons +, docbook_xml_dtd_43 +, python3 +, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "gnome-bluetooth"; + version = "3.34.5"; + + # TODO: split out "lib" + outputs = [ "out" "dev" "devdoc" "man" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1a9ynlwwkb3wpg293ym517vmrkk63y809mmcv9a21k5yr199x53c"; + }; + + patches = [ + # Fix build with meson 0.61. + # sendto/meson.build:24:5: ERROR: Function does not take positional arguments. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/commit/755fd758f866d3a3f7ca482942beee749f13a91e.patch"; + sha256 = "sha256-N0MJ0pYO411o2CTNZHWmEoG2m5TGUjR6YW6HSXHTR/A="; + }) + ]; + + nativeBuildInputs = [ + meson + ninja + gettext + itstool + pkg-config + libxml2 + wrapGAppsHook + gobject-introspection + gtk-doc + docbook-xsl-nons + docbook_xml_dtd_43 + python3 + ]; + + buildInputs = [ + glib + gtk3 + udev + libnotify + libcanberra-gtk3 + gnome.adwaita-icon-theme + gsettings-desktop-schemas + ]; + + mesonFlags = [ + "-Dicon_update=false" + "-Dgtk_doc=true" + ]; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs meson_post_install.py + ''; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "gnome.${pname}"; + }; + }; + + meta = with lib; { + homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en"; + description = "Application that let you manage Bluetooth in the GNOME destkop"; + maintainers = teams.gnome.members; + license = licenses.gpl2Plus; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix index aa049682b83..e5325b1f988 100644 --- a/pkgs/tools/filesystems/bcachefs-tools/default.nix +++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation { pname = "bcachefs-tools"; - version = "unstable-2022-03-09"; + version = "unstable-2022-03-22"; src = fetchFromGitHub { owner = "koverstreet"; repo = "bcachefs-tools"; - rev = "3e2e3d468eed1d5ebbb4c6309d2eaebd081912c5"; - sha256 = "1sb0dj2whlp3dxgf642z7yx7s8va5ah82zi6r4qni7l64qy1n554"; + rev = "f3cdace86c8b60a4efaced23b2d31c16dc610da9"; + sha256 = "1hg4cjrs4yr0mx3mmm1jls93w1skpq5wzp2dzx9rq4w5il2xmx19"; }; postPatch = '' diff --git a/pkgs/tools/filesystems/littlefs-fuse/default.nix b/pkgs/tools/filesystems/littlefs-fuse/default.nix new file mode 100644 index 00000000000..daec12b5041 --- /dev/null +++ b/pkgs/tools/filesystems/littlefs-fuse/default.nix @@ -0,0 +1,26 @@ +{ lib, stdenv, fetchFromGitHub, fuse }: + +stdenv.mkDerivation rec { + pname = "littlefs-fuse"; + version = "2.4.1"; + src = fetchFromGitHub { + owner = "littlefs-project"; + repo = pname; + rev = "v${version}"; + hash = "sha256-+EUZluBtgZiziTEIfXIhkRIBu/Pe78qmL18TQHkfHO4="; + }; + buildInputs = [ fuse ]; + installPhase = '' + runHook preInstall + install -D lfs $out/bin/${pname} + ln -s $out/bin/${pname} $out/bin/mount.littlefs + ln -s $out/bin $out/sbin + runHook postInstall + ''; + meta = src.meta // { + description = "A FUSE wrapper that puts the littlefs in user-space"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ ehmry ]; + inherit (fuse.meta) platforms; + }; +} diff --git a/pkgs/tools/misc/mc/default.nix b/pkgs/tools/misc/mc/default.nix index c2425cf94ca..a3e6ff2fd94 100644 --- a/pkgs/tools/misc/mc/default.nix +++ b/pkgs/tools/misc/mc/default.nix @@ -92,6 +92,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2Plus; maintainers = with maintainers; [ sander ]; platforms = with platforms; linux ++ darwin; - repositories.git = "https://github.com/MidnightCommander/mc.git"; }; } diff --git a/pkgs/tools/misc/mcfly/default.nix b/pkgs/tools/misc/mcfly/default.nix index 583e415f093..bb7ccb375ba 100644 --- a/pkgs/tools/misc/mcfly/default.nix +++ b/pkgs/tools/misc/mcfly/default.nix @@ -2,13 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "mcfly"; - version = "0.5.13"; + version = "0.6.0"; src = fetchFromGitHub { owner = "cantino"; repo = "mcfly"; rev = "v${version}"; - sha256 = "sha256-6PGh+CUQH5LEV7/qctn+ihdZgqjt888wknXTfGPS3SI="; + sha256 = "sha256-k8Z/CS1vbnQvoddos7Y0KcM1zB8QDAbXaROjNCyPEN0="; }; postPatch = '' @@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec { substituteInPlace mcfly.fish --replace '(command which mcfly)' '${placeholder "out"}/bin/mcfly' ''; - cargoSha256 = "sha256-dpDuM+kGuCC2xm5EdV2OoxLNbKgi8wmTGrr8K16AnpM="; + cargoSha256 = "sha256-2SKgzVJdtzH9poHx/NJba6+lj/C0PBcEgI/2ITO18Bk="; meta = with lib; { homepage = "https://github.com/cantino/mcfly"; diff --git a/pkgs/tools/networking/chrony/default.nix b/pkgs/tools/networking/chrony/default.nix index cff2d4df8e8..8c8972d0cb5 100644 --- a/pkgs/tools/networking/chrony/default.nix +++ b/pkgs/tools/networking/chrony/default.nix @@ -28,7 +28,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Sets your computer's clock from time servers on the Net"; homepage = "https://chrony.tuxfamily.org/"; - repositories.git = "git://git.tuxfamily.org/gitroot/chrony/chrony.git"; license = licenses.gpl2; platforms = with platforms; linux ++ freebsd ++ openbsd; maintainers = with maintainers; [ fpletz thoughtpolice ]; diff --git a/pkgs/tools/networking/godns/default.nix b/pkgs/tools/networking/godns/default.nix index b2744b8ed97..0e026e5d571 100644 --- a/pkgs/tools/networking/godns/default.nix +++ b/pkgs/tools/networking/godns/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "godns"; - version = "2.7"; + version = "2.7.1"; src = fetchFromGitHub { owner = "TimothyYe"; repo = "godns"; rev = "v${version}"; - sha256 = "sha256-PD/3WIxNPtC7s4+2ogWG5DEm717rYQLMx9XA06Q6ebo="; + sha256 = "sha256-4PkG8u0wYHHFWR9s4s08tkeBbXdxTUv48HRZsSraNak="; }; vendorSha256 = "sha256-vhByl9oJjFIvOskAgLubZ5RCcitKd2jjxi8D9nU6850="; diff --git a/pkgs/tools/networking/networkmanager/applet/default.nix b/pkgs/tools/networking/networkmanager/applet/default.nix index fbb56f4c5c9..cca96577ad4 100644 --- a/pkgs/tools/networking/networkmanager/applet/default.nix +++ b/pkgs/tools/networking/networkmanager/applet/default.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation rec { pname = "network-manager-applet"; - version = "1.24.0"; + version = "1.26.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-ufS8pdA1Jxjge3OF+xlam7yP1oa3lZt0E3hU1SqrnFg="; + sha256 = "sha256-aWEbKQZK29Vzlf4+Uanr3h6nlGFfd2kARTorvj2M3f0="; }; mesonFlags = [ diff --git a/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix b/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix index f97bac13cf7..e9608741816 100644 --- a/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix +++ b/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , substituteAll , openfortivpn @@ -7,23 +8,24 @@ , file , glib , gtk3 +, gtk4 , networkmanager , ppp , libsecret , withGnome ? true , gnome -, fetchpatch , libnma +, libnma-gtk4 }: stdenv.mkDerivation rec { pname = "NetworkManager-fortisslvpn"; - version = "1.2.10"; + version = "1.4.0"; name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1sw66cxgs4in4cjp1cm95c5ijsk8xbbmq4ykg2jwqwgz6cf2lr3s"; + sha256 = "sFXiY0m1FrI1hXmKs+9XtDawFIAOkqiscyz8jnbF2vo="; }; patches = [ @@ -31,12 +33,6 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; inherit openfortivpn; }) - - # Don't use etc/dbus-1/system.d - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/NetworkManager-fortisslvpn/merge_requests/11.patch"; - sha256 = "0l7l2r1njh62lh2pf497ibf99sgkvjsj58xr76qx3jxgq9zfw6n9"; - }) ]; nativeBuildInputs = [ @@ -52,12 +48,15 @@ stdenv.mkDerivation rec { glib ] ++ lib.optionals withGnome [ gtk3 + gtk4 libsecret libnma + libnma-gtk4 ]; configureFlags = [ "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--localstatedir=/var" "--enable-absolute-paths" ]; diff --git a/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch b/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch index a1241b6738c..9176a3bf042 100644 --- a/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch +++ b/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch @@ -1,11 +1,12 @@ +diff --git a/src/nm-fortisslvpn-service.c b/src/nm-fortisslvpn-service.c +index 6c340d0..995c981 100644 --- a/src/nm-fortisslvpn-service.c +++ b/src/nm-fortisslvpn-service.c -@@ -387,7 +387,7 @@ +@@ -182,6 +182,7 @@ nm_find_openfortivpn (void) { static const char *openfortivpn_binary_paths[] = { -- "/bin/openfortivpn", + "@openfortivpn@/bin/openfortivpn", - "/usr/bin/openfortivpn", "/usr/local/bin/openfortivpn", + "/usr/bin/openfortivpn", NULL diff --git a/pkgs/tools/networking/networkmanager/libnma/default.nix b/pkgs/tools/networking/networkmanager/libnma/default.nix index c039b47d169..63642cf60e7 100644 --- a/pkgs/tools/networking/networkmanager/libnma/default.nix +++ b/pkgs/tools/networking/networkmanager/libnma/default.nix @@ -26,13 +26,13 @@ stdenv.mkDerivation rec { pname = "libnma"; - version = "1.8.34"; + version = "1.8.36"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "9eLnOOD8p/KlSQeSkLLYAXUR1IWoMiDDbfOAo7R1MwQ="; + sha256 = "2ZQV9M3/ZCIwAZ7FzdKx+/HsVQqK6GUhn3VIKmQre3o="; }; patches = [ diff --git a/pkgs/tools/networking/networkmanager/openconnect/default.nix b/pkgs/tools/networking/networkmanager/openconnect/default.nix index c03a698514a..e0199784b2b 100644 --- a/pkgs/tools/networking/networkmanager/openconnect/default.nix +++ b/pkgs/tools/networking/networkmanager/openconnect/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , substituteAll , glib @@ -12,21 +13,21 @@ , libsecret , file , gtk3 +, libnma +, libnma-gtk4 +, gtk4 , withGnome ? true , gnome , kmod -, fetchpatch }: -let +stdenv.mkDerivation rec { pname = "NetworkManager-openconnect"; - version = "1.2.6"; -in stdenv.mkDerivation { - name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; + version = "1.2.8"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0nlp290nkawc4wqm978n4vhzg3xdqi8kpjjx19l855vab41rh44m"; + url = "mirror://gnome/sources/NetworkManager-openconnect/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "Xe2qeF2C2OI53dCCv6xSUMaR6WRGS+GAe2gnJjYzzcw="; }; patches = [ @@ -34,12 +35,6 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit kmod openconnect; }) - - # Don't use etc/dbus-1/system.d - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/NetworkManager-openconnect/merge_requests/9.patch"; - sha256 = "0yd2dmq6gq6y4czr7dqdgaiqvw2vyv2gikznpfdxyfn2v1pcrk9m"; - }) ]; buildInputs = [ @@ -49,6 +44,9 @@ in stdenv.mkDerivation { networkmanager ] ++ lib.optionals withGnome [ gtk3 + libnma + libnma-gtk4 + gtk4 gcr libsecret ]; @@ -61,8 +59,8 @@ in stdenv.mkDerivation { configureFlags = [ "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--enable-absolute-paths" - "--without-libnm-glib" ]; passthru = { diff --git a/pkgs/tools/networking/networkmanager/openvpn/default.nix b/pkgs/tools/networking/networkmanager/openvpn/default.nix index 20a90fffed2..92391e0374b 100644 --- a/pkgs/tools/networking/networkmanager/openvpn/default.nix +++ b/pkgs/tools/networking/networkmanager/openvpn/default.nix @@ -1,15 +1,31 @@ -{ lib, stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkg-config, file, networkmanager, libsecret -, glib, gtk3, withGnome ? true, gnome, kmod, libnma }: +{ stdenv +, lib +, fetchurl +, substituteAll +, openvpn +, intltool +, libxml2 +, pkg-config +, file +, networkmanager +, libsecret +, glib +, gtk3 +, gtk4 +, withGnome ? true +, gnome +, kmod +, libnma +, libnma-gtk4 +}: -let +stdenv.mkDerivation rec { pname = "NetworkManager-openvpn"; - version = "1.8.16"; -in stdenv.mkDerivation { - name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; + version = "1.8.18"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "iSDeCceuXx9SDIP4REVduPrsMUJzUCaP4t2VuGD5H7U="; + url = "mirror://gnome/sources/NetworkManager-openvpn/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "U9+wrPZEeK3HKAdPFi9i5gv/YqYFvYl+uIsmfnBXkno="; }; patches = [ @@ -19,13 +35,28 @@ in stdenv.mkDerivation { }) ]; - buildInputs = [ openvpn networkmanager glib ] - ++ lib.optionals withGnome [ gtk3 libsecret libnma ]; + nativeBuildInputs = [ + intltool + pkg-config + file + libxml2 + ]; - nativeBuildInputs = [ intltool pkg-config file libxml2 ]; + buildInputs = [ + openvpn + networkmanager + glib + ] ++ lib.optionals withGnome [ + gtk3 + gtk4 + libsecret + libnma + libnma-gtk4 + ]; configureFlags = [ "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--localstatedir=/" # needed for the management socket under /run/NetworkManager "--enable-absolute-paths" ]; diff --git a/pkgs/tools/networking/networkmanager/vpnc/default.nix b/pkgs/tools/networking/networkmanager/vpnc/default.nix index 70e7104696e..d81dbf08816 100644 --- a/pkgs/tools/networking/networkmanager/vpnc/default.nix +++ b/pkgs/tools/networking/networkmanager/vpnc/default.nix @@ -1,14 +1,30 @@ -{ lib, stdenv, fetchurl, substituteAll, vpnc, intltool, pkg-config, networkmanager, libsecret -, gtk3, withGnome ? true, gnome, glib, kmod, file, fetchpatch, libnma }: -let +{ stdenv +, lib +, fetchurl +, substituteAll +, vpnc +, intltool +, pkg-config +, networkmanager +, libsecret +, gtk3 +, gtk4 +, withGnome ? true +, gnome +, glib +, kmod +, file +, libnma +, libnma-gtk4 +}: + +stdenv.mkDerivation rec { pname = "NetworkManager-vpnc"; - version = "1.2.6"; -in stdenv.mkDerivation { - name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; + version = "1.2.8"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1js5lwcsqws4klgypfxl4ikmakv7v7xgddij1fj6b0y0qicx0kyy"; + url = "mirror://gnome/sources/NetworkManager-vpnc/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1l4xqlPI/cP95++EpNqpeaYFwj/THO/2R79+qqma+8w="; }; patches = [ @@ -16,21 +32,29 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit vpnc kmod; }) - # Don't use etc/dbus-1/system.d - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/NetworkManager-vpnc/merge_requests/5.patch"; - sha256 = "0z0x5vqmrsap3ynamhya7gh6c6k5grhj2vqpy76alnv9xns8dzi6"; - }) ]; - buildInputs = [ vpnc networkmanager glib ] - ++ lib.optionals withGnome [ gtk3 libsecret libnma ]; + nativeBuildInputs = [ + intltool + pkg-config + file + ]; - nativeBuildInputs = [ intltool pkg-config file ]; + buildInputs = [ + vpnc + networkmanager + glib + ] ++ lib.optionals withGnome [ + gtk3 + gtk4 + libsecret + libnma + libnma-gtk4 + ]; configureFlags = [ - "--without-libnm-glib" "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--enable-absolute-paths" ]; diff --git a/pkgs/tools/networking/obfs4/default.nix b/pkgs/tools/networking/obfs4/default.nix index ab13d3f4ef9..a988a14cd45 100644 --- a/pkgs/tools/networking/obfs4/default.nix +++ b/pkgs/tools/networking/obfs4/default.nix @@ -5,7 +5,7 @@ buildGoModule rec { version = "0.0.11"; src = fetchgit { - url = meta.repositories.git; + url = "https://git.torproject.org/pluggable-transports/obfs4.git"; rev = "refs/tags/${pname}proxy-${version}"; sha256 = "sha256-VjJ/Pc1YjNB2iLnN/5CxuaxolcaR1IMWgoESMzOXU/g="; }; @@ -17,7 +17,6 @@ buildGoModule rec { meta = with lib; { description = "A pluggable transport proxy"; homepage = "https://www.torproject.org/projects/obfsproxy"; - repositories.git = "https://git.torproject.org/pluggable-transports/obfs4.git"; maintainers = with maintainers; [ thoughtpolice ]; }; } diff --git a/pkgs/tools/networking/socat/default.nix b/pkgs/tools/networking/socat/default.nix index 255455811a6..06b3cbdbe80 100644 --- a/pkgs/tools/networking/socat/default.nix +++ b/pkgs/tools/networking/socat/default.nix @@ -38,7 +38,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Utility for bidirectional data transfer between two independent data channels"; homepage = "http://www.dest-unreach.org/socat/"; - repositories.git = "git://repo.or.cz/socat.git"; platforms = platforms.unix; license = with licenses; [ gpl2Only ]; maintainers = with maintainers; [ eelco ]; diff --git a/pkgs/tools/security/exploitdb/default.nix b/pkgs/tools/security/exploitdb/default.nix index 9df04ca0627..e589ca529c6 100644 --- a/pkgs/tools/security/exploitdb/default.nix +++ b/pkgs/tools/security/exploitdb/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "exploitdb"; - version = "2022-03-22"; + version = "2022-03-24"; src = fetchFromGitHub { owner = "offensive-security"; repo = pname; rev = version; - sha256 = "sha256-2V6levydKfYtpctgcyBuLES0OujWi8eqlB3x/YoOyHY="; + sha256 = "sha256-G2KFDNNM4NJ7DgQu1+uNjgixzyLFnF0G0YQ29PgYZ/0="; }; diff --git a/pkgs/tools/security/nitrokey-app/default.nix b/pkgs/tools/security/nitrokey-app/default.nix index d6f2e20611d..f06877b99fe 100644 --- a/pkgs/tools/security/nitrokey-app/default.nix +++ b/pkgs/tools/security/nitrokey-app/default.nix @@ -36,7 +36,6 @@ stdenv.mkDerivation rec { See https://www.nitrokey.com/ for more information. ''; homepage = "https://github.com/Nitrokey/nitrokey-app"; - repositories.git = "https://github.com/Nitrokey/nitrokey-app.git"; license = licenses.gpl3; maintainers = with maintainers; [ kaiha fpletz ]; }; diff --git a/pkgs/tools/security/shisho/default.nix b/pkgs/tools/security/shisho/default.nix new file mode 100644 index 00000000000..5a5995f5da3 --- /dev/null +++ b/pkgs/tools/security/shisho/default.nix @@ -0,0 +1,59 @@ +{ lib +, fetchFromGitHub +, rustPlatform +, installShellFiles +, rustfmt +}: + +rustPlatform.buildRustPackage rec { + pname = "shisho"; + version = "0.5.2"; + + src = fetchFromGitHub { + owner = "flatt-security"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-G7sHaDq+F5lXNaF1sSLUecdjZbCejJE79P4AQifKdFY="; + fetchSubmodules = true; + }; + cargoSha256 = "sha256-xd4andytmDMOIT+3DkmUC9fkxxGJ6yRY2WSdnGB6ZwY="; + + nativeBuildInputs = [ + installShellFiles + # required to build serde-sarif dependency + rustfmt + ]; + + postInstall = '' + installShellCompletion --cmd shisho \ + --bash <($out/bin/shisho completion bash) \ + --fish <($out/bin/shisho completion fish) \ + --zsh <($out/bin/shisho completion zsh) + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + + $out/bin/shisho --help + $out/bin/shisho --version | grep "${version}" + + runHook postInstallCheck + ''; + + meta = with lib; { + homepage = "https://docs.shisho.dev/shisho/"; + changelog = "https://docs.shisho.dev/changelog/"; + description = "Lightweight static analyzer for several programming languages"; + longDescription = '' + Shisho is a lightweight static code analyzer designed for developers and + is the core engine for Shisho products. It is, so to speak, like a + pluggable and configurable linter; it gives developers a way to codify + your domain knowledge over your code as rules. With powerful automation + and integration capabilities, the rules will help you find and fix issues + semiautomatically. + ''; + license = licenses.agpl3Only; + maintainers = with maintainers; [ jk ]; + }; +} diff --git a/pkgs/tools/security/tboot/default.nix b/pkgs/tools/security/tboot/default.nix index a33c26419e1..0b7ecca4f24 100644 --- a/pkgs/tools/security/tboot/default.nix +++ b/pkgs/tools/security/tboot/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "tboot"; - version = "1.10.4"; + version = "1.10.5"; src = fetchurl { url = "mirror://sourceforge/tboot/${pname}-${version}.tar.gz"; - sha256 = "sha256-iEn6mZ0tuDBA1a2POpJEBaIM0TMVDohbVvp/6OO4nAY="; + sha256 = "sha256-O0vhbAPLwlBx7x1L2gtP1VDu2G2sbH9+/fAkI8VRs5M="; }; buildInputs = [ openssl trousers zlib ]; diff --git a/pkgs/tools/security/tor/default.nix b/pkgs/tools/security/tor/default.nix index 571b4e7f4da..14e0be73f01 100644 --- a/pkgs/tools/security/tor/default.nix +++ b/pkgs/tools/security/tor/default.nix @@ -97,7 +97,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://www.torproject.org/"; - repositories.git = "https://git.torproject.org/git/tor"; description = "Anonymizing overlay network"; longDescription = '' diff --git a/pkgs/tools/security/tor/torsocks.nix b/pkgs/tools/security/tor/torsocks.nix index 399afe7f75c..16eeca0ffad 100644 --- a/pkgs/tools/security/tor/torsocks.nix +++ b/pkgs/tools/security/tor/torsocks.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { version = "2.3.0"; src = fetchgit { - url = meta.repositories.git; + url = "https://git.torproject.org/torsocks.git"; rev = "refs/tags/v${version}"; sha256 = "0x0wpcigf22sjxg7bm0xzqihmsrz51hl4v8xf91qi4qnmr4ny1hb"; }; @@ -35,7 +35,6 @@ stdenv.mkDerivation rec { meta = { description = "Wrapper to safely torify applications"; homepage = "https://github.com/dgoulet/torsocks"; - repositories.git = "https://git.torproject.org/torsocks.git"; license = lib.licenses.gpl2; platforms = lib.platforms.unix; maintainers = with lib.maintainers; [ thoughtpolice ]; diff --git a/pkgs/tools/system/evemu/default.nix b/pkgs/tools/system/evemu/default.nix index 61ef270df79..6cb349c546b 100644 --- a/pkgs/tools/system/evemu/default.nix +++ b/pkgs/tools/system/evemu/default.nix @@ -23,7 +23,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Records and replays device descriptions and events to emulate input devices through the kernel's input system"; homepage = "https://www.freedesktop.org/wiki/Evemu/"; - repositories.git = "git://git.freedesktop.org/git/evemu"; license = with licenses; [ lgpl3Only gpl3Only ]; maintainers = [ maintainers.amorsillo ]; platforms = platforms.linux; diff --git a/pkgs/tools/system/gohai/default.nix b/pkgs/tools/system/gohai/default.nix index 48c68f8d2f2..a4b07f112ae 100644 --- a/pkgs/tools/system/gohai/default.nix +++ b/pkgs/tools/system/gohai/default.nix @@ -21,7 +21,6 @@ buildGoPackage rec { license = licenses.mit; maintainers = [ maintainers.tazjin ]; platforms = platforms.unix; - repositories.git = "git://github.com/DataDog/gohai.git"; longDescription = '' Gohai is a tool which collects an inventory of system diff --git a/pkgs/tools/system/hardlink/default.nix b/pkgs/tools/system/hardlink/default.nix index a790c600a9d..a8231864849 100644 --- a/pkgs/tools/system/hardlink/default.nix +++ b/pkgs/tools/system/hardlink/default.nix @@ -26,7 +26,6 @@ stdenv.mkDerivation { meta = with lib; { description = "Consolidate duplicate files via hardlinks"; homepage = "https://pagure.io/hardlink"; - repositories.git = "https://src.fedoraproject.org/cgit/rpms/hardlink.git"; license = licenses.gpl2Plus; platforms = platforms.unix; }; diff --git a/pkgs/tools/system/mq-cli/default.nix b/pkgs/tools/system/mq-cli/default.nix index 2c1baa24f6f..cdbff1921a7 100644 --- a/pkgs/tools/system/mq-cli/default.nix +++ b/pkgs/tools/system/mq-cli/default.nix @@ -19,6 +19,5 @@ rustPlatform.buildRustPackage rec { license = licenses.mit; maintainers = with maintainers; [ tazjin ]; platforms = platforms.linux; - repositories.git = "git://github.com/aprilabank/mq-cli.git"; }; } diff --git a/pkgs/tools/system/thermald/default.nix b/pkgs/tools/system/thermald/default.nix index f2fae161daa..96fa0c19df3 100644 --- a/pkgs/tools/system/thermald/default.nix +++ b/pkgs/tools/system/thermald/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { pname = "thermald"; - version = "2.4.8"; + version = "2.4.9"; outputs = [ "out" "devdoc" ]; @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { owner = "intel"; repo = "thermal_daemon"; rev = "v${version}"; - sha256 = "sha256-Mup88vNS0iApwsZTdPnpXmkA0LNpSOzxBmbejcWIC+0="; + sha256 = "sha256-82O4vrUo3lMNzGOI5WyV1eponF0za0WM6mtd54xqUh8="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/text/difftastic/default.nix b/pkgs/tools/text/difftastic/default.nix index 14c95bd2f3b..981c5f0e931 100644 --- a/pkgs/tools/text/difftastic/default.nix +++ b/pkgs/tools/text/difftastic/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "difftastic"; - version = "0.22.0"; + version = "0.23.0"; src = fetchFromGitHub { owner = "wilfred"; repo = pname; rev = version; - sha256 = "sha256-VV4nCR+BGly+EdCkyI4KeS0Zmn6NkfRsMs//0Sj3E20="; + sha256 = "sha256-y1rwuZlkrxO1iOSN2o8pIewbNENs0xsntzLEZgfUgZ4="; }; - cargoSha256 = "sha256-MyCi5PuUs9MJArDFaBgjjBInYJAS/SAPe1iNTs9feLY="; + cargoSha256 = "sha256-mH6pkfWc8xXLXV/07LQ1jgk9hgt8WcIGdaNPpk7deLQ="; meta = with lib; { description = "A syntax-aware diff"; diff --git a/pkgs/tools/text/gtranslator/default.nix b/pkgs/tools/text/gtranslator/default.nix index 5bc99724e3f..d5e7922831e 100644 --- a/pkgs/tools/text/gtranslator/default.nix +++ b/pkgs/tools/text/gtranslator/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl +, fetchpatch , meson , ninja , pkg-config @@ -8,7 +10,7 @@ , python3 , wrapGAppsHook , libxml2 -, libgda +, libgda6 , libhandy , libsoup , json-glib @@ -23,13 +25,22 @@ stdenv.mkDerivation rec { pname = "gtranslator"; - version = "40.0"; + version = "41.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "0d48nc11z0m91scy21ah56ysxns82zvswx8lglvlkig1vqvblgpc"; + sha256 = "E28R/gOhlJkMQ6/jOL0eoK0U5+H26Gjlv3xbUsTF5eE="; }; + patches = [ + # Fix build with meson 0.61 + # data/meson.build:15:5: ERROR: Function does not take positional arguments. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gtranslator/-/commit/7ac572cc8c8c37ca3826ecf0d395edd3c38e8e22.patch"; + sha256 = "aRg6dYweftV8F7FXykO7m0G+p4SLTFnhTcZx72UCMDE="; + }) + ]; + nativeBuildInputs = [ meson ninja @@ -46,7 +57,7 @@ stdenv.mkDerivation rec { gtk3 libdazzle gtksourceview4 - libgda + libgda6 libhandy libsoup json-glib diff --git a/pkgs/tools/text/mdbook-pdf/default.nix b/pkgs/tools/text/mdbook-pdf/default.nix new file mode 100644 index 00000000000..8c21f50b1d7 --- /dev/null +++ b/pkgs/tools/text/mdbook-pdf/default.nix @@ -0,0 +1,28 @@ +{ lib, stdenv, fetchCrate, rustPlatform, pkg-config, openssl, CoreServices }: + +rustPlatform.buildRustPackage rec { + pname = "mdbook-pdf"; + version = "0.1.2"; + + src = fetchCrate { + inherit pname version; + sha256 = "1ibmn8x9kyfd058hsyah2ggyzpahzf2w2qjn6rs9qv8mr3bvc0pv"; + }; + + cargoSha256 = "0k47a5yqnjjc599vgk39ijy6fm62rr8xarvz37g0c7fx9cljhihz"; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ openssl ] + ++ lib.optionals stdenv.isDarwin [ CoreServices ]; + + # No test. + doCheck = false; + + meta = with lib; { + description = "A backend for mdBook written in Rust for generating PDF"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ hollowman6 ]; + homepage = "https://github.com/HollowMan6/mdbook-pdf"; + }; +} diff --git a/pkgs/tools/typesetting/odpdown/default.nix b/pkgs/tools/typesetting/odpdown/default.nix index 252167fcea9..27053e36ffa 100644 --- a/pkgs/tools/typesetting/odpdown/default.nix +++ b/pkgs/tools/typesetting/odpdown/default.nix @@ -20,7 +20,6 @@ python2Packages.buildPythonApplication rec { meta = with lib; { homepage = "https://github.com/thorstenb/odpdown"; - repositories.git = "https://github.com/thorstenb/odpdown.git"; description = "Create nice-looking slides from your favourite text editor"; longDescription = '' Have a tool like pandoc, latex beamer etc, that you can write (or diff --git a/pkgs/tools/typesetting/pdf2djvu/default.nix b/pkgs/tools/typesetting/pdf2djvu/default.nix index 33f8481bc1a..6921c64d85f 100644 --- a/pkgs/tools/typesetting/pdf2djvu/default.nix +++ b/pkgs/tools/typesetting/pdf2djvu/default.nix @@ -16,22 +16,37 @@ }: stdenv.mkDerivation rec { - version = "0.9.17.1"; + version = "0.9.18.2"; pname = "pdf2djvu"; src = fetchFromGitHub { owner = "jwilk"; repo = "pdf2djvu"; rev = version; - sha256 = "1igabfy3fd7qndihmkfk9incc15pjxpxh2cn5pfw5fxfwrpjrarn"; + sha256 = "s6n7nDO15DZSJ1EOPoNvjdFv/QtOoGiUa2b/k3kzWe8="; }; patches = [ - # Not included in 0.9.17.1, but will be in the next version. + # Fix build with Poppler 22.03. (fetchpatch { - name = "no-poppler-splash.patch"; - url = "https://github.com/jwilk/pdf2djvu/commit/2ec7eee57a47bbfd296badaa03dc20bf71b50201.patch"; - sha256 = "03kap7k2j29r16qgl781cxpswzg3r2yn513cqycgl0vax2xj3gly"; + url = "https://github.com/jwilk/pdf2djvu/commit/e170ad557d5f13daeeac047dfaa79347bbe5062f.patch"; + sha256 = "OPK2UWVs+E2uOEaxPtLWmVL28yCxaeJKscY9ziAbS7E="; + }) + (fetchpatch { + url = "https://github.com/jwilk/pdf2djvu/commit/956fedc7e0831126b9006efedad5519c14201c52.patch"; + sha256 = "JF1xvvL2WyMu6GjdrPLlRC6eC6vGLbVurQcNy3AOOXA="; + }) + (fetchpatch { + url = "https://github.com/jwilk/pdf2djvu/commit/dca43e8182174bc04e107eaefcafcfdfdf9bcd61.patch"; + sha256 = "0JcfDaVZpuv6VfUJ2HuxRqgntZ/t8AzU0RG/E83BWGY="; + }) + (fetchpatch { + url = "https://github.com/jwilk/pdf2djvu/commit/81b635e014ebd0240a8719cc39b6a1b759cc6a98.patch"; + sha256 = "LBmT4eflLd23X7gg7IbqGe3PfTGldEGFLEKImV4nbB0="; + postFetch = '' + # The file was renamed after the release. + sed -i "s/main.cc/pdf2djvu.cc/g" "$out" + ''; }) ]; @@ -62,6 +77,10 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + # Required by Poppler + # https://github.com/jwilk/pdf2djvu/commit/373e065faf2f0d868a3700788d20a96e9528bb12 + CXXFLAGS = "-std=c++17"; + meta = with lib; { description = "Creates djvu files from PDF files"; homepage = "https://jwilk.net/software/pdf2djvu"; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 2731c0bd3fc..174d2c72199 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -38,9 +38,14 @@ in # A script to convert old aliases to throws and remove old # throws can be found in './maintainers/scripts/remove-old-aliases.py'. +# Add 'preserve, reason: reason why' after the date if the alias should not be removed. +# Try to keep them to a minimum. +# valid examples of what to preserve: +# distro aliases such as: +# debian-package-name -> nixos-package-name + mapAliases ({ - # forceSystem should not be used directly in Nixpkgs. - # Added 2018-07-16 + # Added 2018-07-16 preserve, reason: forceSystem should not be used directly in Nixpkgs. forceSystem = system: _: (import self.path { localSystem = { inherit system; }; }); @@ -549,6 +554,7 @@ mapAliases ({ keybase-go = throw "'keybase-go' has been renamed to/replaced by 'keybase'"; # Converted to throw 2022-02-22 keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived"; # Added 2019-12-10 keysmith = libsForQt5.plasmaMobileGear.keysmith; # Added 2021-07-14 + kgx = gnome-console; # Added 2022-02-19 kibana7-oss = throw "kibana7-oss has been removed, as the distribution is no longer provided by upstream. https://github.com/NixOS/nixpkgs/pull/114456"; # Added 2021-06-09 kicad-with-packages3d = kicad; # Added 2019-11-25 kindlegen = throw "kindlegen has been removed from nixpkgs, as it's abandoned and no longer available for download"; # Added 2021-03-09 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4a2a408ed70..a33632b14f4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3797,6 +3797,8 @@ with pkgs; shipyard = callPackage ../tools/virtualization/shipyard { }; + shisho = callPackage ../tools/security/shisho { }; + simg2img = callPackage ../tools/filesystems/simg2img { }; simplenes = callPackage ../applications/emulators/simplenes { }; @@ -6100,6 +6102,8 @@ with pkgs; gnome-builder = callPackage ../applications/editors/gnome-builder { }; + gnome-desktop = callPackage ../development/libraries/gnome-desktop { }; + gnome-feeds = callPackage ../applications/networking/feedreaders/gnome-feeds {}; gnome-keysign = callPackage ../tools/security/gnome-keysign { }; @@ -7233,6 +7237,8 @@ with pkgs; lfs = callPackage ../tools/filesystems/lfs { }; + littlefs-fuse = callPackage ../tools/filesystems/littlefs-fuse { }; + lksctp-tools = callPackage ../os-specific/linux/lksctp-tools { }; lldpd = callPackage ../tools/networking/lldpd { }; @@ -7371,6 +7377,10 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) CoreServices; }; + mdbook-pdf = callPackage ../tools/text/mdbook-pdf { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + mdbook-plantuml = callPackage ../tools/text/mdbook-plantuml { inherit (darwin.apple_sdk.frameworks) CoreServices; }; @@ -7724,6 +7734,8 @@ with pkgs; librest = callPackage ../development/libraries/librest { }; + librest_1_0 = callPackage ../development/libraries/librest/1.0.nix { }; + inherit (callPackages ../development/libraries/libwebsockets { }) libwebsockets_3_1 libwebsockets_3_2 @@ -10292,6 +10304,8 @@ with pkgs; symengine = callPackage ../development/libraries/symengine { }; + synaesthesia = callPackage ../applications/audio/synaesthesia { }; + sysbench = callPackage ../development/tools/misc/sysbench {}; system-config-printer = callPackage ../tools/misc/system-config-printer { @@ -13422,6 +13436,7 @@ with pkgs; cargo-generate = callPackage ../development/tools/rust/cargo-generate { inherit (darwin.apple_sdk.frameworks) Security; }; + cargo-bootimage = callPackage ../development/tools/rust/bootimage { }; cargo-whatfeatures = callPackage ../development/tools/rust/cargo-whatfeatures { inherit (darwin.apple_sdk.frameworks) Security; @@ -13611,6 +13626,7 @@ with pkgs; inherit (callPackage ../development/compilers/vala { }) vala_0_48 vala_0_54 + vala_0_56 vala; vyper = with python3Packages; toPythonApplication vyper; @@ -18147,6 +18163,7 @@ with pkgs; libgnome-keyring3 = gnome.libgnome-keyring; libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { }; + libgnome-games-support_2_0 = callPackage ../development/libraries/libgnome-games-support/2.0.nix { }; libgnomekbd = callPackage ../development/libraries/libgnomekbd { }; @@ -18738,7 +18755,9 @@ with pkgs; libpulsar = callPackage ../development/libraries/libpulsar { }; - libpwquality = callPackage ../development/libraries/libpwquality { }; + libpwquality = callPackage ../development/libraries/libpwquality { + python = python3; + }; libqalculate = callPackage ../development/libraries/libqalculate { readline = readline81; @@ -20621,7 +20640,10 @@ with pkgs; vsqlite = callPackage ../development/libraries/vsqlite { }; - vte = callPackage ../development/libraries/vte { }; + vte = callPackage ../development/libraries/vte { + # Needs GCC ≥10 but aarch64 defaults to GCC 9. + stdenv = clangStdenv; + }; vte_290 = callPackage ../development/libraries/vte/2.90.nix { }; @@ -27414,7 +27436,6 @@ with pkgs; luppp = callPackage ../applications/audio/luppp { }; lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris { - inherit (gnome) gnome-desktop; wine = wineWowPackages.staging; }; lutris = callPackage ../applications/misc/lutris/fhsenv.nix { @@ -33509,7 +33530,7 @@ with pkgs; keynav = callPackage ../tools/X11/keynav { }; - kgx = callPackage ../applications/terminal-emulators/kgx { }; + gnome-console = callPackage ../applications/terminal-emulators/gnome-console { }; kmon = callPackage ../tools/system/kmon { }; diff --git a/pkgs/top-level/java-packages.nix b/pkgs/top-level/java-packages.nix index c8d9e85fbd7..160f51cf43c 100644 --- a/pkgs/top-level/java-packages.nix +++ b/pkgs/top-level/java-packages.nix @@ -10,8 +10,10 @@ let openjfx15 = callPackage ../development/compilers/openjdk/openjfx/15.nix { }; openjfx17 = callPackage ../development/compilers/openjdk/openjfx/17.nix { }; + mavenfod = callPackage ../development/java-modules/maven-fod.nix { }; + in { - inherit mavenbuild fetchMaven openjfx11 openjfx15 openjfx17; + inherit mavenbuild mavenfod fetchMaven openjfx11 openjfx15 openjfx17; compiler = let diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index e73b5ebda1d..bd7bacf3000 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -186,7 +186,7 @@ in { else testing; linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix rec { - kernel = linux_5_15; + kernel = linux_5_16; kernelPatches = kernel.kernelPatches; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 03f3147e976..b3bb64ad8f2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4667,6 +4667,13 @@ in { libpyvivotek = callPackage ../development/python-modules/libpyvivotek { }; + libpwquality = pipe pkgs.libpwquality [ + toPythonModule + (p: p.overrideAttrs (super: { meta = super.meta // { outputsToInstall = [ "py" ]; }; })) + (p: p.override { enablePython = true; inherit python; }) + (p: p.py) + ]; + libredwg = toPythonModule (pkgs.libredwg.override { enablePython = true; inherit (self) python libxml2; @@ -5610,6 +5617,10 @@ in { inherit (pkgs) notmuch; }; + notmuch2 = callPackage ../development/python-modules/notmuch2 { + inherit (pkgs) notmuch; + }; + nototools = callPackage ../data/fonts/noto-fonts/tools.nix { }; notus-scanner = callPackage ../development/python-modules/notus-scanner { }; |