Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into staging-next
Browse files Browse the repository at this point in the history
  • Loading branch information
K900 committed Jan 17, 2025
2 parents 7f1521b + 90789b0 commit 0fd5f20
Show file tree
Hide file tree
Showing 213 changed files with 3,555 additions and 2,519 deletions.
2 changes: 2 additions & 0 deletions nixos/doc/manual/release-notes/rl-2411.section.md
Original file line number Diff line number Diff line change
Expand Up @@ -928,6 +928,8 @@

- `buildNimSbom` was added as an alternative to `buildNimPackage`. `buildNimSbom` uses [SBOMs](https://cyclonedx.org/) to generate packages whereas `buildNimPackage` uses a custom JSON lockfile format.

- The default version of `z3` has been updated from 4.8 to 4.13. There are still a few packages that need specific 4.8 versions; those will continue to be maintained.

## Detailed Migration Information {#sec-release-24.11-migration}

### `sound` options removal {#sec-release-24.11-migration-sound}
Expand Down
10 changes: 10 additions & 0 deletions nixos/modules/services/web-apps/wakapi.nix
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,14 @@ in
options.services.wakapi = {
enable = mkEnableOption "Wakapi";
package = mkPackageOption pkgs "wakapi" { };
stateDir = mkOption {
type = types.path;
default = "/var/lib/wakapi";
description = ''
The state directory where data is stored. Will also be used as the
working directory for the wakapi service.
'';
};

settings = mkOption {
inherit (settingsFormat) type;
Expand Down Expand Up @@ -166,6 +174,8 @@ in
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
WorkingDirectory = cfg.stateDir;
RuntimeDirectory = "wakapi";
StateDirectory = "wakapi";
StateDirectoryMode = "0700";
Restart = "always";
Expand Down
67 changes: 47 additions & 20 deletions nixos/tests/wakapi.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,36 +3,63 @@ import ./make-test-python.nix (
{
name = "Wakapi";

nodes.machine = {
services.wakapi = {
enable = true;
settings = {
server.port = 3000; # upstream default, set explicitly in case upstream changes it

db = {
dialect = "postgres"; # `createLocally` only supports postgres
host = "/run/postgresql";
port = 5432; # service will fail if port is not set
name = "wakapi";
user = "wakapi";
nodes = {
wakapiPsql = {
services.wakapi = {
enable = true;
settings = {
server.port = 3000; # upstream default, set explicitly in case upstream changes it
db = {
dialect = "postgres"; # `createLocally` only supports postgres
host = "/run/postgresql";
port = 5432; # service will fail if port is not set
name = "wakapi";
user = "wakapi";
};
};

# Automatically create our database
database.createLocally = true; # only works with Postgresql for now

# Created with `cat /dev/urandom | LC_ALL=C tr -dc 'a-zA-Z0-9' | fold -w ${1:-32} | head -n 1`
# Prefer passwordSaltFile in production.
passwordSalt = "NpqCY7eY7fMoIWYmPx5mAgr6YoSlXSuI";
};
};

database.createLocally = true;
wakapiSqlite = {
services.wakapi = {
enable = true;
settings = {
server.port = 3001;
db = {
dialect = "sqlite3";
name = "wakapi";
user = "wakapi";
};
};

# Created with `cat /dev/urandom | LC_ALL=C tr -dc 'a-zA-Z0-9' | fold -w ${1:-32} | head -n 1`
# Prefer passwordSaltFile in production.
passwordSalt = "NpqCY7eY7fMoIWYmPx5mAgr6YoSlXSuI";
passwordSalt = "NpqCY7eY7fMoIWYmPx5mAgr6YoSlXSuI";
};
};
};

# Test that the service is running and that it is reachable.
# Test that service works under both postgresql and sqlite3
# by starting all machines, and curling the default address.
# This is not very comprehensive for a test, but it should
# catch very basic mistakes in the module.
testScript = ''
machine.wait_for_unit("wakapi.service")
machine.wait_for_open_port(3000)
machine.succeed("curl --fail http://localhost:3000")
with subtest("Test Wakapi with postgresql backend"):
wakapiPsql.start()
wakapiPsql.wait_for_unit("wakapi.service")
wakapiPsql.wait_for_open_port(3000)
wakapiPsql.succeed("curl --fail http://localhost:3000")
with subtest("Test Wakapi with sqlite3 backend"):
wakapiSqlite.start()
wakapiSqlite.wait_for_unit("wakapi.service")
wakapiSqlite.wait_for_open_port(3001)
wakapiSqlite.succeed("curl --fail http://localhost:3001")
'';

meta.maintainers = [ lib.maintainers.NotAShelf ];
Expand Down
6 changes: 3 additions & 3 deletions pkgs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,17 +73,17 @@ Now that this is out of the way. To add a package to Nixpkgs:

- GNU Hello: [`pkgs/by-name/he/hello/package.nix`](./by-name/he/hello/package.nix). Trivial package, which specifies some `meta` attributes which is good practice.

- GNU cpio: [`pkgs/tools/archivers/cpio/default.nix`](tools/archivers/cpio/default.nix). Also a simple package. The generic builder in `stdenv` does everything for you. It has no dependencies beyond `stdenv`.
- GNU cpio: [`pkgs/by-name/cp/cpio/package.nix`](./by-name/cp/cpio/package.nix). Also a simple package. The generic builder in `stdenv` does everything for you. It has no dependencies beyond `stdenv`.

- GNU Multiple Precision arithmetic library (GMP): [`pkgs/development/libraries/gmp`](development/libraries/gmp). Also done by the generic builder, but has a dependency on `m4`.

- Pan, a GTK-based newsreader: [`pkgs/applications/networking/newsreaders/pan/default.nix`](applications/networking/newsreaders/pan/default.nix). Has an optional dependency on `gtkspell`, which is only built if `spellCheck` is `true`.
- Pan, a GTK-based newsreader: [`pkgs/by-name/pa/pan/package.nix`](./by-name/pa/pan/package.nix). Has an optional dependency on `gtkspell`, which is only built if `spellCheck` is `true`.

- Apache HTTPD: [`pkgs/servers/http/apache-httpd/2.4.nix`](servers/http/apache-httpd/2.4.nix). A bunch of optional features, variable substitutions in the configure flags, a post-install hook, and miscellaneous hackery.

- buildMozillaMach: [`pkgs/applications/networking/browser/firefox/common.nix`](applications/networking/browsers/firefox/common.nix). A reusable build function for Firefox, Thunderbird and Librewolf.

- JDiskReport, a Java utility: [`pkgs/tools/misc/jdiskreport/default.nix`](tools/misc/jdiskreport/default.nix). Nixpkgs doesn’t have a decent `stdenv` for Java yet so this is pretty ad-hoc.
- JDiskReport, a Java utility: [`pkgs/by-name/jd/jdiskreport/package.nix`](./by-name/jd/jdiskreport/package.nix). Nixpkgs doesn’t have a decent `stdenv` for Java yet so this is pretty ad-hoc.

- XML::Simple, a Perl module: [`pkgs/top-level/perl-packages.nix`](top-level/perl-packages.nix) (search for the `XMLSimple` attribute). Most Perl modules are so simple to build that they are defined directly in `perl-packages.nix`; no need to make a separate file for them.

Expand Down
54 changes: 33 additions & 21 deletions pkgs/applications/editors/vim/plugins/generated.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7455,6 +7455,18 @@ final: prev:
meta.homepage = "https://github.com/benlubas/molten-nvim/";
};

monaspace-nvim = buildVimPlugin {
pname = "monaspace.nvim";
version = "2025-01-14";
src = fetchFromGitHub {
owner = "jackplus-xyz";
repo = "monaspace.nvim";
rev = "8f6e5e64393b530fd1d8e0ea96c51ffbb4046186";
sha256 = "08c5kj2wmlykamww1bilgws45mmx8yqb4y0f58cazf3wl1rjbldr";
};
meta.homepage = "https://github.com/jackplus-xyz/monaspace.nvim/";
};

monokai-pro-nvim = buildVimPlugin {
pname = "monokai-pro.nvim";
version = "2024-12-16";
Expand Down Expand Up @@ -10145,6 +10157,18 @@ final: prev:
meta.homepage = "https://github.com/nvzone/minty/";
};

nvzone-typr = buildVimPlugin {
pname = "nvzone-typr";
version = "2025-01-15";
src = fetchFromGitHub {
owner = "nvzone";
repo = "typr";
rev = "a60c7f237be94d4b39228a3bd2ced80fe9fe2781";
sha256 = "0hbd85s2d28832qqy0lnm7f2iqa5n5s16h7n10hsm9iawi0z2ll9";
};
meta.homepage = "https://github.com/nvzone/typr/";
};

nvzone-volt = buildVimPlugin {
pname = "nvzone-volt";
version = "2024-12-31";
Expand Down Expand Up @@ -11713,12 +11737,12 @@ final: prev:

snacks-nvim = buildVimPlugin {
pname = "snacks.nvim";
version = "2025-01-15";
version = "2025-01-16";
src = fetchFromGitHub {
owner = "folke";
repo = "snacks.nvim";
rev = "e5dd9281ee9402858fb7b7f1ac74ddcef40ebacc";
sha256 = "147rbp4z58bvm6s2lk1yzis7rjrrppwgchxpiyf9klj2gh08mzwp";
rev = "4ac28ad1de74438daf10b07e5dea6463470d8d05";
sha256 = "15n86b1vrc54s8icm1p0sp5ay811w9z8ygwbkqd478a677q8vk0w";
};
meta.homepage = "https://github.com/folke/snacks.nvim/";
};
Expand Down Expand Up @@ -13039,12 +13063,12 @@ final: prev:

todo-comments-nvim = buildVimPlugin {
pname = "todo-comments.nvim";
version = "2024-09-16";
version = "2025-01-14";
src = fetchFromGitHub {
owner = "folke";
repo = "todo-comments.nvim";
rev = "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0";
sha256 = "0v6vn3f9svj756ds8cp0skpw65xixlx1f3aj0fh374wdpb5i4zhh";
rev = "304a8d204ee787d2544d8bc23cd38d2f929e7cc5";
sha256 = "0hrmiaxjp11200nds3y33brj8gpbn5ykd78jfy1jiash3d44xpva";
};
meta.homepage = "https://github.com/folke/todo-comments.nvim/";
};
Expand Down Expand Up @@ -13173,12 +13197,12 @@ final: prev:

trouble-nvim = buildVimPlugin {
pname = "trouble.nvim";
version = "2024-11-27";
version = "2025-01-15";
src = fetchFromGitHub {
owner = "folke";
repo = "trouble.nvim";
rev = "46cf952fc115f4c2b98d4e208ed1e2dce08c9bf6";
sha256 = "12ky8alz6zi2vlqspnacmkj99d4sam4hrzs92i3n4sz6jx2w8696";
rev = "50481f414bd3c1a40122c1d759d7e424d5fafe84";
sha256 = "14cvhnz4njzqydnbyf9iydsdhqvms4kajlvxgkr1gfkw6rw96r37";
};
meta.homepage = "https://github.com/folke/trouble.nvim/";
};
Expand Down Expand Up @@ -13315,18 +13339,6 @@ final: prev:
meta.homepage = "https://github.com/leafgarland/typescript-vim/";
};

nvzone-typr = buildVimPlugin {
pname = "typr";
version = "2025-01-15";
src = fetchFromGitHub {
owner = "nvzone";
repo = "typr";
rev = "a60c7f237be94d4b39228a3bd2ced80fe9fe2781";
sha256 = "0hbd85s2d28832qqy0lnm7f2iqa5n5s16h7n10hsm9iawi0z2ll9";
};
meta.homepage = "https://github.com/nvzone/typr/";
};

typst-conceal-vim = buildVimPlugin {
pname = "typst-conceal.vim";
version = "2023-10-13";
Expand Down
1 change: 1 addition & 0 deletions pkgs/applications/editors/vim/plugins/vim-plugin-names
Original file line number Diff line number Diff line change
Expand Up @@ -618,6 +618,7 @@ https://github.com/mawkler/modicator.nvim/,HEAD,
https://github.com/miikanissi/modus-themes.nvim/,HEAD,
https://github.com/tomasr/molokai/,,
https://github.com/benlubas/molten-nvim/,HEAD,
https://github.com/jackplus-xyz/monaspace.nvim/,HEAD,
https://github.com/loctvl842/monokai-pro.nvim/,HEAD,
https://github.com/leafo/moonscript-vim/,HEAD,
https://github.com/yegappan/mru/,,
Expand Down
49 changes: 26 additions & 23 deletions pkgs/applications/emulators/libretro/cores/citra.nix
Original file line number Diff line number Diff line change
@@ -1,48 +1,51 @@
{
lib,
cmake,
fetchFromGitHub,
boost,
ffmpeg_6,
gcc12Stdenv,
libGL,
libGLU,
libX11,
mkLibretroCore,
nasm,
}:
mkLibretroCore rec {
mkLibretroCore {
core = "citra";
version = "0-unstable-2024-04-01";
version = "0-unstable-2024-12-03";

src = fetchFromGitHub {
owner = "libretro";
repo = "citra";
# TODO: upstream migrated to cmake, this is the latest rev without it
rev = "36b600692905ebd457cbc9321e2f521938eced16";
hash = "sha256-ZJcsdFgLBda4xS4Z6I8Pu+6B9TYwak//0CbloDK3Yg0=";
rev = "a31aff7e1a3a66f525b9ea61633d2c5e5b0c8b31";
hash = "sha256-HlhY4AeFQSabrmPQWLygjPGTWkIh0U0Hv1Fv4YFu9xg=";
fetchSubmodules = true;
};

makefile = "Makefile";
makeFlags = [
"HAVE_FFMPEG_STATIC=0"
# https://github.com/libretro/citra/blob/1a66174355b5ed948de48ef13c0ed508b6d6169f/Makefile#L87-L90
"GIT_REV=${src.rev}"
"GIT_DESC=${lib.substring 0 7 src.rev}"
"GIT_BRANCH=master"
"BUILD_DATE=01/01/1970_00:00"
];

extraBuildInputs = [
boost
ffmpeg_6
libGL
libGLU
nasm
libX11
];

# FIXME: build fail with GCC13:
# error: 'mic_device_name' has incomplete type
stdenv = gcc12Stdenv;
extraNativeBuildInputs = [ cmake ];

# This changes `ir/opt` to `ir/var/empty` in `externals/dynarmic/src/dynarmic/CMakeLists.txt`
# making the build fail, as that path does not exist
dontFixCmake = true;

# https://github.com/libretro/citra/blob/a31aff7e1a3a66f525b9ea61633d2c5e5b0c8b31/.gitlab-ci.yml#L6
cmakeFlags = [
(lib.cmakeBool "ENABLE_TESTS" false)
(lib.cmakeBool "ENABLE_DEDICATED_ROOM" false)
(lib.cmakeBool "ENABLE_SDL2" false)
(lib.cmakeBool "ENABLE_QT" false)
(lib.cmakeBool "ENABLE_WEB_SERVICE" false)
(lib.cmakeBool "ENABLE_SCRIPTING" false)
(lib.cmakeBool "ENABLE_OPENAL" false)
(lib.cmakeBool "ENABLE_LIBUSB" false)
(lib.cmakeBool "CITRA_ENABLE_BUNDLE_TARGET" false)
(lib.cmakeBool "CITRA_WARNINGS_AS_ERRORS" false)
];

meta = {
description = "Port of Citra to libretro";
Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/emulators/libretro/cores/dosbox-pure.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "dosbox-pure";
version = "0-unstable-2024-12-31";
version = "0-unstable-2025-01-12";

src = fetchFromGitHub {
owner = "schellingb";
repo = "dosbox-pure";
rev = "9e468f0087454c6c1b68975ead933977d5cf33b2";
hash = "sha256-tiyDXxwZapu+Ol1icOeemVQ5oAjMMx2/M4nA0CiRkMY=";
rev = "e69a36a83c09f6660f7683d64eb8077a2da9a487";
hash = "sha256-QiwkWP6fHiGASN1SpLY+pSJVsu3TsENj7oAM4pCXnsk=";
};

hardeningDisable = [ "format" ];
Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/emulators/libretro/cores/fbneo.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "fbneo";
version = "0-unstable-2025-01-06";
version = "0-unstable-2025-01-13";

src = fetchFromGitHub {
owner = "libretro";
repo = "fbneo";
rev = "b8780c057029db8768c9a057b0bc28f9a12609d8";
hash = "sha256-cK3ILA0Ape6rHf5dPbXOMmQ69ZPZ/qrxeKYA1LniBEk=";
rev = "274cdf95a16981c130015a8b4808a95ef5b46203";
hash = "sha256-BS+Siam2jz6mFDz0mtvWH3+Is3Il78UbWkCh2f+DSAE=";
};

makefile = "Makefile";
Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/emulators/libretro/cores/flycast.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@
}:
mkLibretroCore {
core = "flycast";
version = "0-unstable-2025-01-09";
version = "0-unstable-2025-01-10";

src = fetchFromGitHub {
owner = "flyinghead";
repo = "flycast";
rev = "3114344414dbd8fb08efe1d6a25dbae457a2ec44";
hash = "sha256-UgH8L02WkAPaMMUnes6GYLjRbkuY8+9b6LCGaaQWhjQ=";
rev = "2e8984804170afce31a6d85e10ee4e153bbfb5aa";
hash = "sha256-jOOfYZ33SZM39vaJ/OqL7OpvIjuYoSewspOWNVTOBdk=";
fetchSubmodules = true;
};

Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/emulators/libretro/cores/mame2003-plus.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "mame2003-plus";
version = "0-unstable-2025-01-10";
version = "0-unstable-2025-01-13";

src = fetchFromGitHub {
owner = "libretro";
repo = "mame2003-plus-libretro";
rev = "61305d60329d6a9abf7ddad1c3657b3253c5e64d";
hash = "sha256-fLThBOHkX0dV0zjDuJIh1ILpWi2FNV9oOXRH4ApcGbs=";
rev = "0fcccae96eb722d58be329977eb49173c5c97981";
hash = "sha256-Dt9MVWSe9ykNUasEgANsKYuXdqD3cGuM5jQCyD1iSY0=";
};

makefile = "Makefile";
Expand Down
Loading

0 comments on commit 0fd5f20

Please sign in to comment.