+1
-1
.github/workflows/manual-nixos.yml
+1
-1
.github/workflows/manual-nixos.yml
···
+1
-1
.github/workflows/manual-nixpkgs.yml
+1
-1
.github/workflows/manual-nixpkgs.yml
···
+69
doc/languages-frameworks/dlang.section.md
+69
doc/languages-frameworks/dlang.section.md
···+However, Nixpkgs provides a build helper for compiling packages using the `dub` package manager.+Note that you need to define `installPhase` because `dub` doesn't know where files should go in `$out`.+Also note that running `dub test` is disabled by default. You can enable it by setting `doCheck = true`.+Nixpkgs has its own lockfile format for `dub` dependencies, because `dub`'s official "lockfile" format (`dub.selections.json`) is not hash based.+* Finally, run `dub-to-nix` and it will print the lockfile to stdout. You could pipe stdout into a text file or just copy the output manually into a file.+The `buildDubPackage` function takes an attrset of parameters that are passed on to `stdenv.mkDerivation`.+* `dubLock`: A lockfile generated by `dub-to-nix` from the source of the package. Can be either a path to the file, or an attrset already parsed with `lib.importJSON`.+The latter useful if the package uses `dub` dependencies not already in the lockfile. (e.g. if the package calls `dub run some-dub-package` manually)+* `dubBuildType ? "release"`: The build type to pass to `dub build` as a value for the `--build=` flag.
+1
doc/languages-frameworks/index.md
+1
doc/languages-frameworks/index.md
+5
nixos/doc/manual/release-notes/rl-2405.section.md
+5
nixos/doc/manual/release-notes/rl-2405.section.md
···+- The default dbus implementation has transitioned to dbus-broker from the classic dbus daemon for better performance and reliability. Users can revert to the classic dbus daemon by setting `services.dbus.implementation = "dbus";`. For detailed deviations, refer to [dbus-broker's deviations page](https://github.com/bus1/dbus-broker/wiki/Deviations).- A new option `virtualisation.containers.cdi` was added. It contains `static` and `dynamic` attributes (corresponding to `/etc/cdi` and `/run/cdi` respectively) to configure the Container Device Interface (CDI).- `virtualisation.docker.enableNvidia` and `virtualisation.podman.enableNvidia` options are deprecated. `virtualisation.containers.cdi.dynamic.nvidia.enable` should be used instead. This option will expose GPUs on containers with the `--device` CLI option. This is supported by Docker 25, Podman 3.2.0 and Singularity 4. Any container runtime that supports the CDI specification will take advantage of this feature.···- Programs written in [Nim](https://nim-lang.org/) are built with libraries selected by lockfiles.+- Programs written in [D](https://dlang.org/) using the `dub` build system and package manager can now be built using `buildDubPackage` utilizing lockfiles provided by the new `dub-to-nix` helper program.+See the [D section](https://nixos.org/manual/nixpkgs/unstable#dlang) in the manual for more information.
+6
-5
nixos/modules/services/system/dbus.nix
+6
-5
nixos/modules/services/system/dbus.nix
·········
+2
-2
nixos/tests/mycelium/default.nix
+2
-2
nixos/tests/mycelium/default.nix
···
+2
-2
pkgs/applications/audio/furnace/default.nix
+2
-2
pkgs/applications/audio/furnace/default.nix
···
+2
-2
pkgs/applications/audio/mympd/default.nix
+2
-2
pkgs/applications/audio/mympd/default.nix
···
+2
-2
pkgs/applications/audio/sidplayfp/default.nix
+2
-2
pkgs/applications/audio/sidplayfp/default.nix
···
+1
-1
pkgs/applications/editors/vim/plugins/deprecated.json
+1
-1
pkgs/applications/editors/vim/plugins/deprecated.json
+134
-122
pkgs/applications/editors/vim/plugins/generated.nix
+134
-122
pkgs/applications/editors/vim/plugins/generated.nix
······························································································································
+42
-42
pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
+42
-42
pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
····································
+1
-1
pkgs/applications/editors/vim/plugins/overrides.nix
+1
-1
pkgs/applications/editors/vim/plugins/overrides.nix
+1
pkgs/applications/editors/vim/plugins/vim-plugin-names
+1
pkgs/applications/editors/vim/plugins/vim-plugin-names
···
+15
pkgs/applications/editors/vscode/extensions/default.nix
+15
pkgs/applications/editors/vscode/extensions/default.nix
···+description = "A Visual Studio Code extension that converts from the Test Explorer UI API into native VS Code testing";+downloadPage = "https://marketplace.visualstudio.com/items?itemName=ms-vscode.test-adapter-converter";
+2
-2
pkgs/applications/science/logic/lean4/default.nix
+2
-2
pkgs/applications/science/logic/lean4/default.nix
···
+3
-3
pkgs/applications/version-management/gh/default.nix
+3
-3
pkgs/applications/version-management/gh/default.nix
···
+7
pkgs/build-support/dlang/README.md
+7
pkgs/build-support/dlang/README.md
+124
pkgs/build-support/dlang/builddubpackage/default.nix
+124
pkgs/build-support/dlang/builddubpackage/default.nix
···+dub fetch ${dep.pname}@${dep.version} --cache=user --skip-registry=standard --registry=file://${dubRegistryBase}/${dep.pname}
+5
pkgs/build-support/dlang/dub-support.nix
+5
pkgs/build-support/dlang/dub-support.nix
+19
pkgs/build-support/dlang/dub-to-nix/default.nix
+19
pkgs/build-support/dlang/dub-to-nix/default.nix
···
+39
pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py
+39
pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py
···+eprint(f'Package "{pname}" has a branch-type version "{version}", which doesn\'t point to a fixed version')+eprint("You can resolve it by manually changing the required version to a fixed one inside `dub.selections.json`")+eprint("When packaging, you might need to create a patch for `dub.sdl` or `dub.json` to accept the changed version")+sha256 = subprocess.run(command, check=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL).stdout.rstrip()
+5
pkgs/build-support/fetchurl/mirrors.nix
+5
pkgs/build-support/fetchurl/mirrors.nix
+1
-1
pkgs/build-support/substitute/substitute-all.nix
+1
-1
pkgs/build-support/substitute/substitute-all.nix
···
+34
pkgs/by-name/ca/cano/package.nix
+34
pkgs/by-name/ca/cano/package.nix
···
+2
-2
pkgs/by-name/fr/freefilesync/package.nix
+2
-2
pkgs/by-name/fr/freefilesync/package.nix
······
+3
-3
pkgs/by-name/gl/glas/package.nix
+3
-3
pkgs/by-name/gl/glas/package.nix
···
+11
-10
pkgs/by-name/ko/koodousfinder/package.nix
+11
-10
pkgs/by-name/ko/koodousfinder/package.nix
·········
+3
-3
pkgs/by-name/la/labwc-tweaks/package.nix
+3
-3
pkgs/by-name/la/labwc-tweaks/package.nix
···
+17
-42
pkgs/by-name/my/mycelium/Cargo.lock
+17
-42
pkgs/by-name/my/mycelium/Cargo.lock
·································
+2
-2
pkgs/by-name/my/mycelium/package.nix
+2
-2
pkgs/by-name/my/mycelium/package.nix
···
+112
pkgs/by-name/se/serve-d/dub-lock.json
+112
pkgs/by-name/se/serve-d/dub-lock.json
···
+39
pkgs/by-name/se/serve-d/package.nix
+39
pkgs/by-name/se/serve-d/package.nix
···
+2
-2
pkgs/by-name/sw/swaymux/package.nix
+2
-2
pkgs/by-name/sw/swaymux/package.nix
······
+1
pkgs/development/compilers/ldc/generic.nix
+1
pkgs/development/compilers/ldc/generic.nix
···platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
+1
-1
pkgs/development/compilers/tinygo/default.nix
+1
-1
pkgs/development/compilers/tinygo/default.nix
···
+2
-2
pkgs/development/guile-modules/guile-lib/default.nix
+2
-2
pkgs/development/guile-modules/guile-lib/default.nix
···
+2
-2
pkgs/development/libraries/libsidplayfp/default.nix
+2
-2
pkgs/development/libraries/libsidplayfp/default.nix
···
+2
-2
pkgs/development/python-modules/amaranth/default.nix
+2
-2
pkgs/development/python-modules/amaranth/default.nix
···
+4
-4
pkgs/development/python-modules/breezy/Cargo.lock
+4
-4
pkgs/development/python-modules/breezy/Cargo.lock
·········
+2
-2
pkgs/development/python-modules/breezy/default.nix
+2
-2
pkgs/development/python-modules/breezy/default.nix
······
+116
-101
pkgs/development/python-modules/bsuite/default.nix
+116
-101
pkgs/development/python-modules/bsuite/default.nix
···-(fetchpatch { # Convert np.int -> np.int32 since np.int is deprecated (https://github.com/google-deepmind/bsuite/pull/48)-url = "https://github.com/google-deepmind/bsuite/pull/48/commits/f8d81b2f1c27ef2c8c71ae286001ed879ea306ab.patch";+# Convert np.int -> np.int32 since np.int is deprecated, https://github.com/google-deepmind/bsuite/pull/48+url = "https://github.com/google-deepmind/bsuite/pull/48/commits/f8d81b2f1c27ef2c8c71ae286001ed879ea306ab.patch";+url = "https://github.com/google-deepmind/bsuite/commit/d08b63655c7efa5b5bb0f35e825e17549d23e812.patch";+description = "Collection of experiments that investigate core capabilities of a reinforcement learning (RL) agent";
+19
-22
pkgs/development/python-modules/fastapi-sso/default.nix
+19
-22
pkgs/development/python-modules/fastapi-sso/default.nix
·········
+2
-2
pkgs/development/python-modules/jupyterhub/default.nix
+2
-2
pkgs/development/python-modules/jupyterhub/default.nix
···
+13
-18
pkgs/development/python-modules/myuplink/default.nix
+13
-18
pkgs/development/python-modules/myuplink/default.nix
······
+23
-26
pkgs/development/python-modules/plotnine/default.nix
+23
-26
pkgs/development/python-modules/plotnine/default.nix
············
+21
-21
pkgs/development/python-modules/policy-sentry/default.nix
+21
-21
pkgs/development/python-modules/policy-sentry/default.nix
·········
+2
-2
pkgs/development/python-modules/pyathena/default.nix
+2
-2
pkgs/development/python-modules/pyathena/default.nix
···
+21
-9
pkgs/development/tools/literate-programming/Literate/default.nix
+21
-9
pkgs/development/tools/literate-programming/Literate/default.nix
······
+3
pkgs/development/tools/literate-programming/Literate/dub-lock.json
+3
pkgs/development/tools/literate-programming/Literate/dub-lock.json
+3
-3
pkgs/development/tools/misc/fzf-make/default.nix
pkgs/by-name/fz/fzf-make/package.nix
+3
-3
pkgs/development/tools/misc/fzf-make/default.nix
pkgs/by-name/fz/fzf-make/package.nix
···
+2
-2
pkgs/development/web/nodejs/v21.nix
+2
-2
pkgs/development/web/nodejs/v21.nix
···
+1
-4
pkgs/os-specific/linux/firmware/linux-firmware/default.nix
+1
-4
pkgs/os-specific/linux/firmware/linux-firmware/default.nix
+34
-85
pkgs/tools/misc/btdu/default.nix
+34
-85
pkgs/tools/misc/btdu/default.nix
···-url = "https://github.com/dlang-community/containers/archive/v${_d_emsi_containers_ver}.tar.gz";
+20
pkgs/tools/misc/btdu/dub-lock.json
+20
pkgs/tools/misc/btdu/dub-lock.json
···
-82
pkgs/tools/misc/btdu/update.py
-82
pkgs/tools/misc/btdu/update.py
···-nixpkgs = subprocess.check_output(["git", "rev-parse", "--show-toplevel"]).decode("utf-8").strip('\n')
+3
pkgs/tools/misc/fd/default.nix
+3
pkgs/tools/misc/fd/default.nix
+3
-3
pkgs/tools/misc/phrase-cli/default.nix
+3
-3
pkgs/tools/misc/phrase-cli/default.nix
···
+3
-3
pkgs/tools/networking/dnsproxy/default.nix
+3
-3
pkgs/tools/networking/dnsproxy/default.nix
···ldflags = [ "-s" "-w" "-X" "github.com/AdguardTeam/dnsproxy/internal/version.version=${version}" ];
+3
-2
pkgs/top-level/all-packages.nix
+3
-2
pkgs/top-level/all-packages.nix
······