Merge master into staging-next
This commit is contained in:
+21
-1
@@ -34,7 +34,27 @@ $ nix-build doc
|
||||
|
||||
If the build succeeds, the manual will be in `./result/share/doc/nixpkgs/manual.html`.
|
||||
|
||||
### devmode
|
||||
### Development environment
|
||||
|
||||
In order to reduce repetition, consider using tools from the provided development environment:
|
||||
|
||||
Load it from the Nixpkgs documentation directory with
|
||||
|
||||
```ShellSession
|
||||
$ cd /path/to/nixpkgs/doc
|
||||
$ nix-shell
|
||||
```
|
||||
|
||||
To load the development utilities automatically when entering that directory, [set up `nix-direnv`](https://nix.dev/guides/recipes/direnv).
|
||||
|
||||
Make sure that your local files aren't added to Git history by adding the following lines to `.git/info/exclude` at the root of the Nixpkgs repository:
|
||||
|
||||
```
|
||||
/**/.envrc
|
||||
/**/.direnv
|
||||
```
|
||||
|
||||
#### `devmode`
|
||||
|
||||
The shell in the manual source directory makes available a command, `devmode`.
|
||||
It is a daemon, that:
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
nixpkgs ? { },
|
||||
markdown-code-runner,
|
||||
roboto,
|
||||
treefmt,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (
|
||||
@@ -47,6 +48,8 @@ stdenvNoCC.mkDerivation (
|
||||
|
||||
postPatch = ''
|
||||
ln -s ${optionsJSON}/share/doc/nixos/options.json ./config-options.json
|
||||
ln -s ${treefmt.functionsDoc.markdown} ./packages/treefmt-functions.section.md
|
||||
ln -s ${treefmt.optionsDoc.optionsJSON}/share/doc/nixos/options.json ./treefmt-options.json
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
|
||||
@@ -25,6 +25,7 @@ nginx.section.md
|
||||
opengl.section.md
|
||||
shell-helpers.section.md
|
||||
python-tree-sitter.section.md
|
||||
treefmt.section.md
|
||||
steam.section.md
|
||||
cataclysm-dda.section.md
|
||||
urxvt.section.md
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
# treefmt {#treefmt}
|
||||
|
||||
[treefmt](https://github.com/numtide/treefmt) streamlines the process of applying formatters to your project, making it a breeze with just one command line.
|
||||
|
||||
The [`treefmt` package](https://search.nixos.org/packages?channel=unstable&show=treefmt)
|
||||
provides functions for configuring treefmt using the module system, which are [documented below](#sec-functions-library-treefmt), along with [their options](#sec-treefmt-options-reference).
|
||||
|
||||
Alternatively, treefmt can be configured using [treefmt-nix](https://github.com/numtide/treefmt-nix).
|
||||
|
||||
```{=include=} sections auto-id-prefix=auto-generated-treefmt-functions
|
||||
treefmt-functions.section.md
|
||||
```
|
||||
|
||||
## Options Reference {#sec-treefmt-options-reference}
|
||||
|
||||
The following attributes can be passed to [`withConfig`](#pkgs.treefmt.withConfig) or [`evalConfig`](#pkgs.treefmt.evalConfig):
|
||||
|
||||
```{=include=} options
|
||||
id-prefix: opt-treefmt-
|
||||
list-id: configuration-variable-list
|
||||
source: ../treefmt-options.json
|
||||
```
|
||||
|
||||
@@ -72,6 +72,15 @@
|
||||
"part-toolchains": [
|
||||
"index.html#part-toolchains"
|
||||
],
|
||||
"pkgs.treefmt.buildConfig": [
|
||||
"index.html#pkgs.treefmt.buildConfig"
|
||||
],
|
||||
"pkgs.treefmt.evalConfig": [
|
||||
"index.html#pkgs.treefmt.evalConfig"
|
||||
],
|
||||
"pkgs.treefmt.withConfig": [
|
||||
"index.html#pkgs.treefmt.withConfig"
|
||||
],
|
||||
"preface": [
|
||||
"index.html#preface"
|
||||
],
|
||||
@@ -111,6 +120,9 @@
|
||||
"sec-building-packages-with-llvm-using-clang-stdenv": [
|
||||
"index.html#sec-building-packages-with-llvm-using-clang-stdenv"
|
||||
],
|
||||
"sec-functions-library-treefmt": [
|
||||
"index.html#sec-functions-library-treefmt"
|
||||
],
|
||||
"sec-inkscape": [
|
||||
"index.html#sec-inkscape"
|
||||
],
|
||||
@@ -408,6 +420,9 @@
|
||||
"sec-tools-of-stdenv": [
|
||||
"index.html#sec-tools-of-stdenv"
|
||||
],
|
||||
"sec-treefmt-options-reference": [
|
||||
"index.html#sec-treefmt-options-reference"
|
||||
],
|
||||
"ssec-cosmic-common-issues": [
|
||||
"index.html#ssec-cosmic-common-issues"
|
||||
],
|
||||
@@ -483,6 +498,9 @@
|
||||
"tester-testEqualArrayOrMap-return": [
|
||||
"index.html#tester-testEqualArrayOrMap-return"
|
||||
],
|
||||
"treefmt": [
|
||||
"index.html#treefmt"
|
||||
],
|
||||
"typst": [
|
||||
"index.html#typst",
|
||||
"doc/languages-frameworks/typst.section.md#typst"
|
||||
|
||||
@@ -24620,6 +24620,15 @@
|
||||
githubId = 1220572;
|
||||
name = "Christian Theune";
|
||||
};
|
||||
thevar1able = {
|
||||
email = "var1able+nixpkgs@var1able.network";
|
||||
github = "thevar1able";
|
||||
githubId = 875885;
|
||||
name = "Konstantin Bogdanov";
|
||||
keys = [
|
||||
{ fingerprint = "3221 7A73 EB95 0E9E E550 36A3 DB39 9448 D9FE 52F1"; }
|
||||
];
|
||||
};
|
||||
theverygaming = {
|
||||
name = "theverygaming";
|
||||
github = "theverygaming";
|
||||
|
||||
@@ -17,6 +17,28 @@ There's also [a convenient development daemon](https://nixos.org/manual/nixpkgs/
|
||||
|
||||
The above instructions don't deal with the appendix of available `configuration.nix` options, and the manual pages related to NixOS. These are built, and written in a different location and in a different format, as explained in the next sections.
|
||||
|
||||
## Development environment {#sec-contributing-development-env}
|
||||
|
||||
In order to reduce repetition, consider using tools from the provided development environment:
|
||||
|
||||
Load it from the NixOS documentation directory with
|
||||
|
||||
```ShellSession
|
||||
$ cd /path/to/nixpkgs/nixos/doc/manual
|
||||
$ nix-shell
|
||||
```
|
||||
|
||||
To load the development utilities automatically when entering that directory, [set up `nix-direnv`](https://nix.dev/guides/recipes/direnv).
|
||||
|
||||
Make sure that your local files aren't added to Git history by adding the following lines to `.git/info/exclude` at the root of the Nixpkgs repository:
|
||||
|
||||
```
|
||||
/**/.envrc
|
||||
/**/.direnv
|
||||
```
|
||||
|
||||
You might want to also use [`devmode`](https://github.com/NixOS/nixpkgs/blob/master/doc/README.md#devmode) while editing the manual.
|
||||
|
||||
## Testing redirects {#sec-contributing-redirects}
|
||||
|
||||
Once you have a successful build, you can open the relevant HTML (path mentioned above) in a browser along with the anchor, and observe the redirection.
|
||||
|
||||
@@ -71,6 +71,9 @@
|
||||
"ch-installation": [
|
||||
"index.html#ch-installation"
|
||||
],
|
||||
"sec-contributing-development-env": [
|
||||
"index.html#sec-contributing-development-env"
|
||||
],
|
||||
"sec-mattermost": [
|
||||
"index.html#sec-mattermost"
|
||||
],
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
- Create the first release note entry in this section!
|
||||
- [gtklock](https://github.com/jovanlanik/gtklock), a GTK-based lockscreen for Wayland. Available as [programs.gtklock](#opt-programs.gtklock.enable).
|
||||
|
||||
## Backward Incompatibilities {#sec-release-25.11-incompatibilities}
|
||||
|
||||
|
||||
@@ -331,6 +331,7 @@
|
||||
./programs/vivid.nix
|
||||
./programs/wavemon.nix
|
||||
./programs/wayland/cardboard.nix
|
||||
./programs/wayland/gtklock.nix
|
||||
./programs/wayland/hyprland.nix
|
||||
./programs/wayland/hyprlock.nix
|
||||
./programs/wayland/labwc.nix
|
||||
@@ -603,7 +604,6 @@
|
||||
./services/games/archisteamfarm.nix
|
||||
./services/games/armagetronad.nix
|
||||
./services/games/crossfire-server.nix
|
||||
./services/games/deliantra-server.nix
|
||||
./services/games/factorio.nix
|
||||
./services/games/freeciv.nix
|
||||
./services/games/mchprs.nix
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.programs.gtklock;
|
||||
configFormat = pkgs.formats.ini {
|
||||
listToValue = builtins.concatStringsSep ";";
|
||||
};
|
||||
|
||||
inherit (lib)
|
||||
types
|
||||
mkOption
|
||||
mkEnableOption
|
||||
mkPackageOption
|
||||
;
|
||||
in
|
||||
{
|
||||
options.programs.gtklock = {
|
||||
enable = mkEnableOption "gtklock, a GTK-based lockscreen for Wayland";
|
||||
|
||||
package = mkPackageOption pkgs "gtklock" { };
|
||||
|
||||
config = mkOption {
|
||||
type = configFormat.type;
|
||||
example = lib.literalExpression ''
|
||||
{
|
||||
main = {
|
||||
idle-hide = true;
|
||||
idle-timeout = 10;
|
||||
};
|
||||
}'';
|
||||
description = ''
|
||||
Configuration for gtklock.
|
||||
See [`gtklock(1)`](https://github.com/jovanlanik/gtklock/blob/master/man/gtklock.1.scd) man page for details.
|
||||
'';
|
||||
};
|
||||
|
||||
style = mkOption {
|
||||
type = with types; nullOr str;
|
||||
default = null;
|
||||
description = ''
|
||||
CSS Stylesheet for gtklock.
|
||||
See [gtklock's wiki](https://github.com/jovanlanik/gtklock/wiki#Styling) for details.
|
||||
'';
|
||||
};
|
||||
|
||||
modules = mkOption {
|
||||
type = with types; listOf package;
|
||||
default = [ ];
|
||||
example = lib.literalExpression ''
|
||||
with pkgs; [
|
||||
gtklock-playerctl-module
|
||||
gtklock-powerbar-module
|
||||
gtklock-userinfo-module
|
||||
]'';
|
||||
description = "gtklock modules to load.";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.gtklock.config.main = {
|
||||
style = lib.mkIf (cfg.style != null) "${pkgs.writeText "style.css" cfg.style}";
|
||||
|
||||
modules = lib.mkIf (cfg.modules != [ ]) (
|
||||
map (pkg: "${pkg}/lib/gtklock/${lib.removePrefix "gtklock-" pkg.pname}.so") cfg.modules
|
||||
);
|
||||
};
|
||||
|
||||
environment.etc."xdg/gtklock/config.ini".source = configFormat.generate "config.ini" cfg.config;
|
||||
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
security.pam.services.gtklock = { };
|
||||
};
|
||||
}
|
||||
@@ -1,182 +0,0 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.services.deliantra-server;
|
||||
serverPort = 13327;
|
||||
in
|
||||
{
|
||||
options.services.deliantra-server = {
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
If enabled, the Deliantra game server will be started at boot.
|
||||
'';
|
||||
};
|
||||
|
||||
package = lib.mkPackageOption pkgs "deliantra-server" {
|
||||
extraDescription = ''
|
||||
::: {.note}
|
||||
This will also be used for map/arch data, if you don't change {option}`dataDir`
|
||||
:::
|
||||
'';
|
||||
};
|
||||
|
||||
dataDir = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "${pkgs.deliantra-data}";
|
||||
defaultText = lib.literalExpression ''"''${pkgs.deliantra-data}"'';
|
||||
description = ''
|
||||
Where to store readonly data (maps, archetypes, sprites, etc).
|
||||
Note that if you plan to use the live map editor (rather than editing
|
||||
the maps offline and then nixos-rebuilding), THIS MUST BE WRITEABLE --
|
||||
copy the deliantra-data someplace writeable (say,
|
||||
/var/lib/deliantra/data) and update this option accordingly.
|
||||
'';
|
||||
};
|
||||
|
||||
stateDir = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "/var/lib/deliantra";
|
||||
description = ''
|
||||
Where to store runtime data (save files, persistent items, etc).
|
||||
|
||||
If left at the default, this will be automatically created on server
|
||||
startup if it does not already exist. If changed, it is the admin's
|
||||
responsibility to make sure that the directory exists and is writeable
|
||||
by the `crossfire` user.
|
||||
'';
|
||||
};
|
||||
|
||||
openFirewall = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to open ports in the firewall for the server.
|
||||
'';
|
||||
};
|
||||
|
||||
configFiles = lib.mkOption {
|
||||
type = lib.types.attrsOf lib.types.str;
|
||||
description = ''
|
||||
Contents of the server configuration files. These will be appended to
|
||||
the example configurations the server comes with and overwrite any
|
||||
default settings defined therein.
|
||||
|
||||
The example here is not comprehensive. See the files in
|
||||
/etc/deliantra-server after enabling this module for full documentation.
|
||||
'';
|
||||
example = lib.literalExpression ''
|
||||
{
|
||||
dm_file = '''
|
||||
admin:secret_password:localhost
|
||||
alice:xyzzy:*
|
||||
''';
|
||||
motd = "Welcome to Deliantra!";
|
||||
settings = '''
|
||||
# Settings for game mechanics.
|
||||
stat_loss_on_death true
|
||||
armor_max_enchant 7
|
||||
''';
|
||||
config = '''
|
||||
# Settings for the server daemon.
|
||||
hiscore_url https://deliantra.example.net/scores/
|
||||
max_map_reset 86400
|
||||
''';
|
||||
}
|
||||
'';
|
||||
default = {
|
||||
motd = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
users.users.deliantra = {
|
||||
description = "Deliantra server daemon user";
|
||||
home = cfg.stateDir;
|
||||
createHome = false;
|
||||
isSystemUser = true;
|
||||
group = "deliantra";
|
||||
};
|
||||
users.groups.deliantra = { };
|
||||
|
||||
# Merge the cfg.configFiles setting with the default files shipped with
|
||||
# Deliantra.
|
||||
# For most files this consists of reading
|
||||
# ${deliantra}/etc/deliantra-server/${name} and appending the user setting
|
||||
# to it.
|
||||
environment.etc =
|
||||
lib.attrsets.mapAttrs'
|
||||
(
|
||||
name: value:
|
||||
lib.attrsets.nameValuePair "deliantra-server/${name}" {
|
||||
mode = "0644";
|
||||
text =
|
||||
# Deliantra doesn't come with a motd file, but respects it if present
|
||||
# in /etc.
|
||||
(lib.optionalString (name != "motd") (
|
||||
lib.fileContents "${cfg.package}/etc/deliantra-server/${name}"
|
||||
))
|
||||
+ "\n${value}";
|
||||
}
|
||||
)
|
||||
(
|
||||
{
|
||||
motd = "";
|
||||
settings = "";
|
||||
config = "";
|
||||
dm_file = "";
|
||||
}
|
||||
// cfg.configFiles
|
||||
);
|
||||
|
||||
systemd.services.deliantra-server = {
|
||||
description = "Deliantra Server Daemon";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
|
||||
environment = {
|
||||
DELIANTRA_DATADIR = "${cfg.dataDir}";
|
||||
DELIANTRA_LOCALDIR = "${cfg.stateDir}";
|
||||
DELIANTRA_CONFDIR = "/etc/deliantra-server";
|
||||
};
|
||||
|
||||
serviceConfig = lib.mkMerge [
|
||||
{
|
||||
ExecStart = "${cfg.package}/bin/deliantra-server";
|
||||
Restart = "always";
|
||||
User = "deliantra";
|
||||
Group = "deliantra";
|
||||
WorkingDirectory = cfg.stateDir;
|
||||
}
|
||||
(lib.mkIf (cfg.stateDir == "/var/lib/deliantra") {
|
||||
StateDirectory = "deliantra";
|
||||
})
|
||||
];
|
||||
|
||||
# The deliantra server needs access to a bunch of files at runtime that
|
||||
# are not created automatically at server startup; they're meant to be
|
||||
# installed in $PREFIX/var/deliantra-server by `make install`. And those
|
||||
# files need to be writeable, so we can't just point at the ones in the
|
||||
# nix store. Instead we take the approach of copying them out of the store
|
||||
# on first run. If `bookarch` already exists, we assume the rest of the
|
||||
# files do as well, and copy nothing -- otherwise we risk ovewriting
|
||||
# server state information every time the server is upgraded.
|
||||
preStart = ''
|
||||
if [ ! -e "${cfg.stateDir}"/bookarch ]; then
|
||||
${pkgs.rsync}/bin/rsync -a --chmod=u=rwX,go=rX \
|
||||
"${cfg.package}/var/deliantra-server/" "${cfg.stateDir}/"
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
networking.firewall = lib.mkIf cfg.openFirewall {
|
||||
allowedTCPPorts = [ serverPort ];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -71,7 +71,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vivaldi";
|
||||
version = "7.3.3635.11";
|
||||
version = "7.3.3635.12";
|
||||
|
||||
suffix =
|
||||
{
|
||||
@@ -84,8 +84,8 @@ stdenv.mkDerivation rec {
|
||||
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}-1_${suffix}.deb";
|
||||
hash =
|
||||
{
|
||||
aarch64-linux = "sha256-w1/wWP3lZUQ5tBvv6XOCkoR1OCoByURBEvaaemsY19U=";
|
||||
x86_64-linux = "sha256-kJNFPXiZekjofGtKFbGc85c8yQymhntkCBuhylwQBpE=";
|
||||
aarch64-linux = "sha256-Gplg0QD7DcibaOv1Q8RUnefACZdNnM8yKYYiP1dpY58=";
|
||||
x86_64-linux = "sha256-qcV4n9/nAbb0Gw8azorDSjpjy4cXe2XlR94WwuwUEyc=";
|
||||
}
|
||||
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||
};
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ast-grep";
|
||||
version = "0.37.0";
|
||||
version = "0.38.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ast-grep";
|
||||
repo = "ast-grep";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-X2FTIyvpz4nEBc7zrPNAq/yTdOlVupwSoDQzvZGDjo8=";
|
||||
hash = "sha256-mUqjD/otB891kJ8aIF3NP9ewo7yAuGE3yPK+gIIrm2w=";
|
||||
};
|
||||
|
||||
# error: linker `aarch64-linux-gnu-gcc` not found
|
||||
@@ -27,7 +27,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
'';
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-0PUXj9LSFFC10H3LHVuiOHCREwFz8AkgkzJDUAGI+V0=";
|
||||
cargoHash = "sha256-s2h2Zt0cRW6V0VAKNuTL8WkHdfkLvuZA/bnSkQKcr9w=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -26,13 +26,12 @@
|
||||
vulkan-loader,
|
||||
systemd,
|
||||
libGL,
|
||||
writeShellScript,
|
||||
nix-update,
|
||||
krb5,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "beekeeper-studio";
|
||||
version = "5.1.5";
|
||||
version = "5.2.9";
|
||||
|
||||
src =
|
||||
let
|
||||
@@ -45,8 +44,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
fetchurl {
|
||||
url = "https://github.com/beekeeper-studio/beekeeper-studio/releases/download/v${finalAttrs.version}/beekeeper-studio_${finalAttrs.version}_${arch}.deb";
|
||||
hash = selectSystem {
|
||||
x86_64-linux = "sha256-ClKD5OnNhEBo1O3E3rXOGu9X8vVGZAOrfXQFppuEnbU=";
|
||||
aarch64-linux = "sha256-64ID+psuwfiVTfBayILeotJ3en21Hsv8FMQj+IQjjyE=";
|
||||
x86_64-linux = "sha256-iooZSiIkHfd3jSk+Pk0E7s/g51UzbyqyP8qnfes3mts=";
|
||||
aarch64-linux = "sha256-zLkEMOJhckIM0qPCKBNUgFwYiF1YjJU4wKmiLJ1pzNg=";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -84,11 +83,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
expat
|
||||
libgbm
|
||||
vulkan-loader
|
||||
krb5
|
||||
];
|
||||
|
||||
runtimeDependencies = map lib.getLib [
|
||||
systemd
|
||||
];
|
||||
runtimeDependencies = map lib.getLib [ systemd ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
@@ -106,6 +104,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
preFixup = ''
|
||||
patchelf --add-needed libGL.so.1 \
|
||||
--add-needed libEGL.so.1 \
|
||||
--add-rpath ${
|
||||
lib.makeLibraryPath [
|
||||
libGL
|
||||
@@ -113,10 +112,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
} $out/opt/beekeeper-studio/beekeeper-studio-bin
|
||||
'';
|
||||
|
||||
passthru.updateScript = writeShellScript "beekeeper-studio-update-script" ''
|
||||
${lib.getExe nix-update} beekeeper-studio --system x86_64-linux
|
||||
${lib.getExe nix-update} beekeeper-studio --system aarch64-linux --version "skip"
|
||||
'';
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = {
|
||||
description = "Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more";
|
||||
|
||||
Executable
+20
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl gnused jq nix bash coreutils nix-update common-updater-scripts
|
||||
|
||||
set -eou pipefail
|
||||
|
||||
PACKAGE_DIR=$(realpath $(dirname $0))
|
||||
|
||||
latestVersion=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sL https://api.github.com/repos/beekeeper-studio/beekeeper-studio/releases/latest | jq --raw-output .tag_name | sed 's/^v//')
|
||||
|
||||
currentVersion=$(nix-instantiate --eval -E "with import ./. {}; beekeeper-studio.version or (lib.getVersion beekeeper-studio)" | tr -d '"')
|
||||
|
||||
if [[ "$currentVersion" == "$latestVersion" ]]; then
|
||||
echo "package is up-to-date: $currentVersion"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
nix-update beekeeper-studio --version "$latestVersion" || true
|
||||
|
||||
hash=$(nix hash convert --to sri --hash-algo sha256 $(nix-prefetch-url "$(nix eval -f . --raw beekeeper-studio.src.url --system aarch64-linux)"))
|
||||
update-source-version beekeeper-studio $latestVersion $hash --system=aarch64-linux --ignore-same-version
|
||||
@@ -13,14 +13,14 @@
|
||||
|
||||
python3Packages.buildPythonPackage rec {
|
||||
pname = "boxflat";
|
||||
version = "1.30.0";
|
||||
version = "1.30.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Lawstorant";
|
||||
repo = "boxflat";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-6fzz3pq9fHoeGMT1Vz5Y8pKLdrprQEV5kLiZt7uJ1KI=";
|
||||
hash = "sha256-5P6To0VRnvdu316bPIL7gDRuZLRjXLFbOpB9wZKs/t8=";
|
||||
};
|
||||
|
||||
build-system = [ python3Packages.setuptools ];
|
||||
|
||||
+4
-455
@@ -5,18 +5,15 @@
|
||||
"packages": {
|
||||
"": {
|
||||
"dependencies": {
|
||||
"@anthropic-ai/claude-code": "^0.2.109"
|
||||
"@anthropic-ai/claude-code": "^0.2.122"
|
||||
}
|
||||
},
|
||||
"node_modules/@anthropic-ai/claude-code": {
|
||||
"version": "0.2.109",
|
||||
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-0.2.109.tgz",
|
||||
"integrity": "sha512-dxOUgATehMCBZHzC47H3i6CCAf2YlXQMcTxrfzl0XEkwqEhbT8EzwWVbqDVc7n/eLykY2SK7xf5hD1iK8kr/dw==",
|
||||
"version": "0.2.122",
|
||||
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-0.2.122.tgz",
|
||||
"integrity": "sha512-q9XnW6a4btqHM2XYxkcl2d7dDNRTX8pvaeisiNWYzAOSKC+wUfOrkioUUS3BG+i6sNtJB03jPKJdqvEvtXbZjw==",
|
||||
"hasInstallScript": true,
|
||||
"license": "SEE LICENSE IN README.md",
|
||||
"dependencies": {
|
||||
"better-sqlite3": "^11.9.1"
|
||||
},
|
||||
"bin": {
|
||||
"claude": "cli.js"
|
||||
},
|
||||
@@ -162,454 +159,6 @@
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/libvips"
|
||||
}
|
||||
},
|
||||
"node_modules/base64-js": {
|
||||
"version": "1.5.1",
|
||||
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
|
||||
"integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/better-sqlite3": {
|
||||
"version": "11.9.1",
|
||||
"resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-11.9.1.tgz",
|
||||
"integrity": "sha512-Ba0KR+Fzxh2jDRhdg6TSH0SJGzb8C0aBY4hR8w8madIdIzzC6Y1+kx5qR6eS1Z+Gy20h6ZU28aeyg0z1VIrShQ==",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"bindings": "^1.5.0",
|
||||
"prebuild-install": "^7.1.1"
|
||||
}
|
||||
},
|
||||
"node_modules/bindings": {
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
|
||||
"integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"file-uri-to-path": "1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/bl": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
|
||||
"integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"buffer": "^5.5.0",
|
||||
"inherits": "^2.0.4",
|
||||
"readable-stream": "^3.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/buffer": {
|
||||
"version": "5.7.1",
|
||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
|
||||
"integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"base64-js": "^1.3.1",
|
||||
"ieee754": "^1.1.13"
|
||||
}
|
||||
},
|
||||
"node_modules/chownr": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
|
||||
"integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/decompress-response": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
|
||||
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"mimic-response": "^3.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/deep-extend": {
|
||||
"version": "0.6.0",
|
||||
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
|
||||
"integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=4.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/detect-libc": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz",
|
||||
"integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==",
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/end-of-stream": {
|
||||
"version": "1.4.4",
|
||||
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
|
||||
"integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"once": "^1.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/expand-template": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
|
||||
"integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",
|
||||
"license": "(MIT OR WTFPL)",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/file-uri-to-path": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
|
||||
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/fs-constants": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
|
||||
"integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/github-from-package": {
|
||||
"version": "0.0.0",
|
||||
"resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
|
||||
"integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/ieee754": {
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
|
||||
"integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/ini": {
|
||||
"version": "1.3.8",
|
||||
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
|
||||
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/mimic-response": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
|
||||
"integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/minimist": {
|
||||
"version": "1.2.8",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
|
||||
"integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/mkdirp-classic": {
|
||||
"version": "0.5.3",
|
||||
"resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
|
||||
"integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/napi-build-utils": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz",
|
||||
"integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/node-abi": {
|
||||
"version": "3.74.0",
|
||||
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.74.0.tgz",
|
||||
"integrity": "sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"semver": "^7.3.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/prebuild-install": {
|
||||
"version": "7.1.3",
|
||||
"resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz",
|
||||
"integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"detect-libc": "^2.0.0",
|
||||
"expand-template": "^2.0.3",
|
||||
"github-from-package": "0.0.0",
|
||||
"minimist": "^1.2.3",
|
||||
"mkdirp-classic": "^0.5.3",
|
||||
"napi-build-utils": "^2.0.0",
|
||||
"node-abi": "^3.3.0",
|
||||
"pump": "^3.0.0",
|
||||
"rc": "^1.2.7",
|
||||
"simple-get": "^4.0.0",
|
||||
"tar-fs": "^2.0.0",
|
||||
"tunnel-agent": "^0.6.0"
|
||||
},
|
||||
"bin": {
|
||||
"prebuild-install": "bin.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/pump": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz",
|
||||
"integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"end-of-stream": "^1.1.0",
|
||||
"once": "^1.3.1"
|
||||
}
|
||||
},
|
||||
"node_modules/rc": {
|
||||
"version": "1.2.8",
|
||||
"resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
|
||||
"integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
|
||||
"license": "(BSD-2-Clause OR MIT OR Apache-2.0)",
|
||||
"dependencies": {
|
||||
"deep-extend": "^0.6.0",
|
||||
"ini": "~1.3.0",
|
||||
"minimist": "^1.2.0",
|
||||
"strip-json-comments": "~2.0.1"
|
||||
},
|
||||
"bin": {
|
||||
"rc": "cli.js"
|
||||
}
|
||||
},
|
||||
"node_modules/readable-stream": {
|
||||
"version": "3.6.2",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
|
||||
"integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"inherits": "^2.0.3",
|
||||
"string_decoder": "^1.1.1",
|
||||
"util-deprecate": "^1.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/safe-buffer": {
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
|
||||
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/semver": {
|
||||
"version": "7.7.1",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
|
||||
"integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
|
||||
"license": "ISC",
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/simple-concat": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
|
||||
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/simple-get": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz",
|
||||
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"decompress-response": "^6.0.0",
|
||||
"once": "^1.3.1",
|
||||
"simple-concat": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/string_decoder": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
|
||||
"integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"safe-buffer": "~5.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/strip-json-comments": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
|
||||
"integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/tar-fs": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.2.tgz",
|
||||
"integrity": "sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"chownr": "^1.1.1",
|
||||
"mkdirp-classic": "^0.5.2",
|
||||
"pump": "^3.0.0",
|
||||
"tar-stream": "^2.1.4"
|
||||
}
|
||||
},
|
||||
"node_modules/tar-stream": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
|
||||
"integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"bl": "^4.0.3",
|
||||
"end-of-stream": "^1.4.1",
|
||||
"fs-constants": "^1.0.0",
|
||||
"inherits": "^2.0.3",
|
||||
"readable-stream": "^3.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/tunnel-agent": {
|
||||
"version": "0.6.0",
|
||||
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
|
||||
"integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"safe-buffer": "^5.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
|
||||
"license": "ISC"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "claude-code";
|
||||
version = "0.2.109";
|
||||
version = "0.2.122";
|
||||
|
||||
nodejs = nodejs_20; # required for sandboxed Nix builds on Darwin
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${version}.tgz";
|
||||
hash = "sha256-XANo3GKiD5n66GZrB+gZ15o2zTAOKkjcFNbGE3TT1NA=";
|
||||
hash = "sha256-9w1wjuOTSphEfgKfNJhDFiTKuIJqfV6Bz4XEYXMIaGE=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-u5AZXNlN/NAag+35uz3rzLh6ItbKAdV8RSSjzCGk6uA=";
|
||||
npmDepsHash = "sha256-71YPsgeI8bmb+wwFHS5XOXKJXsagWZj+hBf2T/+GYMU=";
|
||||
|
||||
postPatch = ''
|
||||
cp ${./package-lock.json} package-lock.json
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
{
|
||||
lib,
|
||||
llvmPackages,
|
||||
llvmPackages_16,
|
||||
stdenv,
|
||||
llvmPackages_19,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
cmake,
|
||||
ninja,
|
||||
python3,
|
||||
@@ -14,30 +13,23 @@
|
||||
darwin,
|
||||
findutils,
|
||||
libiconv,
|
||||
|
||||
rustSupport ? true,
|
||||
|
||||
rustc,
|
||||
cargo,
|
||||
rustPlatform,
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (llvmPackages) stdenv;
|
||||
mkDerivation =
|
||||
(if stdenv.hostPlatform.isDarwin then llvmPackages_16.stdenv else llvmPackages.stdenv).mkDerivation;
|
||||
in
|
||||
mkDerivation rec {
|
||||
llvmPackages_19.stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "clickhouse";
|
||||
version = "24.3.7.30";
|
||||
version = "25.3.3.42";
|
||||
|
||||
src = fetchFromGitHub rec {
|
||||
owner = "ClickHouse";
|
||||
repo = "ClickHouse";
|
||||
rev = "v${version}-lts";
|
||||
tag = "v${finalAttrs.version}-lts";
|
||||
fetchSubmodules = true;
|
||||
name = "clickhouse-${rev}.tar.gz";
|
||||
hash = "sha256-xIqn1cRbuD3NpUC2c7ZzvC8EAmg+XOXCkp+g/HTdIc0=";
|
||||
name = "clickhouse-${tag}.tar.gz";
|
||||
hash = "sha256-VYT6Rnq7LaV9fZc4LJ9YtbWQDgEARYok8MjVfg8itIg=";
|
||||
postFetch = ''
|
||||
# delete files that make the source too big
|
||||
rm -rf $out/contrib/llvm-project/llvm/test
|
||||
@@ -62,20 +54,6 @@ mkDerivation rec {
|
||||
'';
|
||||
};
|
||||
|
||||
patches = [
|
||||
# They updated the Cargo.toml without updating the Cargo.lock :/
|
||||
(fetchpatch {
|
||||
url = "https://github.com/ClickHouse/ClickHouse/commit/bccd33932b5fe17ced2dc2f27813da0b1c034afa.patch";
|
||||
revert = true;
|
||||
hash = "sha256-4idwr+G8WGuT/VILKtDIJIvbCvi6pZokJFze4dP6ExE=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://github.com/ClickHouse/ClickHouse/commit/b6bd5ecb199ef8a10e3008a4ea3d96087db8a8c1.patch";
|
||||
revert = true;
|
||||
hash = "sha256-nbb/GV2qWEZ+BEfT6/9//yZf4VWdhOdJCI3PLeh6o0M=";
|
||||
})
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs =
|
||||
[
|
||||
@@ -83,14 +61,14 @@ mkDerivation rec {
|
||||
ninja
|
||||
python3
|
||||
perl
|
||||
llvmPackages.lld
|
||||
llvmPackages_19.lld
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isx86_64 [
|
||||
nasm
|
||||
yasm
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
llvmPackages.bintools
|
||||
llvmPackages_19.bintools
|
||||
findutils
|
||||
darwin.bootstrap_cmds
|
||||
]
|
||||
@@ -102,101 +80,38 @@ mkDerivation rec {
|
||||
|
||||
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
|
||||
|
||||
# their vendored version is too old and missing this patch: https://github.com/corrosion-rs/corrosion/pull/205
|
||||
corrosionSrc =
|
||||
if rustSupport then
|
||||
fetchFromGitHub {
|
||||
owner = "corrosion-rs";
|
||||
repo = "corrosion";
|
||||
rev = "v0.3.5";
|
||||
hash = "sha256-r/jrck4RiQynH1+Hx4GyIHpw/Kkr8dHe1+vTHg+fdRs=";
|
||||
}
|
||||
else
|
||||
null;
|
||||
corrosionDeps =
|
||||
if rustSupport then
|
||||
rustPlatform.fetchCargoVendor {
|
||||
src = corrosionSrc;
|
||||
name = "corrosion-deps";
|
||||
preBuild = "cd generator";
|
||||
hash = "sha256-ok1QLobiGBccmbEEWQxHz3ivvuT6FrOgG6wLK4gIbgU=";
|
||||
}
|
||||
else
|
||||
null;
|
||||
rustDeps =
|
||||
if rustSupport then
|
||||
rustPlatform.fetchCargoVendor {
|
||||
inherit src;
|
||||
name = "rust-deps";
|
||||
preBuild = "cd rust";
|
||||
hash = "sha256-nX5wBM8rVMbaf/IrPsqkdT2KQklQbBIGomeWSTjclR4=";
|
||||
}
|
||||
else
|
||||
null;
|
||||
|
||||
dontCargoSetupPostUnpack = true;
|
||||
postUnpack = lib.optionalString rustSupport ''
|
||||
pushd source
|
||||
|
||||
rm -rf contrib/corrosion
|
||||
cp -r --no-preserve=mode $corrosionSrc contrib/corrosion
|
||||
|
||||
pushd contrib/corrosion/generator
|
||||
cargoDeps="$corrosionDeps" cargoSetupPostUnpackHook
|
||||
corrosionDepsCopy="$cargoDepsCopy"
|
||||
popd
|
||||
|
||||
pushd rust
|
||||
cargoDeps="$rustDeps" cargoSetupPostUnpackHook
|
||||
rustDepsCopy="$cargoDepsCopy"
|
||||
cat .cargo/config.toml >> .cargo/config.toml.in
|
||||
cat .cargo/config.toml >> skim/.cargo/config.toml.in
|
||||
rm .cargo/config.toml
|
||||
popd
|
||||
|
||||
popd
|
||||
'';
|
||||
|
||||
postPatch =
|
||||
''
|
||||
patchShebangs src/
|
||||
patchShebangs utils/
|
||||
|
||||
sed -i 's|/usr/bin/env perl|"${lib.getExe perl}"|' contrib/openssl-cmake/CMakeLists.txt
|
||||
|
||||
substituteInPlace src/Storages/System/StorageSystemLicenses.sh \
|
||||
--replace 'git rev-parse --show-toplevel' '$src'
|
||||
substituteInPlace utils/check-style/check-duplicate-includes.sh \
|
||||
--replace 'git rev-parse --show-toplevel' '$src'
|
||||
--replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot"
|
||||
substituteInPlace utils/check-style/check-ungrouped-includes.sh \
|
||||
--replace 'git rev-parse --show-toplevel' '$src'
|
||||
--replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot"
|
||||
substituteInPlace utils/list-licenses/list-licenses.sh \
|
||||
--replace 'git rev-parse --show-toplevel' '$src'
|
||||
substituteInPlace utils/check-style/check-style \
|
||||
--replace 'git rev-parse --show-toplevel' '$src'
|
||||
--replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot"
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
sed -i 's|gfind|find|' cmake/tools.cmake
|
||||
sed -i 's|ggrep|grep|' cmake/tools.cmake
|
||||
''
|
||||
+ lib.optionalString rustSupport ''
|
||||
|
||||
pushd contrib/corrosion/generator
|
||||
cargoDepsCopy="$corrosionDepsCopy" cargoSetupPostPatchHook
|
||||
popd
|
||||
|
||||
pushd rust
|
||||
cargoDepsCopy="$rustDepsCopy" cargoSetupPostPatchHook
|
||||
popd
|
||||
|
||||
cargoSetupPostPatchHook() { true; }
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
# Make sure Darwin invokes lld.ld64 not lld.
|
||||
substituteInPlace cmake/tools.cmake \
|
||||
--replace '--ld-path=''${LLD_PATH}' '-fuse-ld=lld'
|
||||
''
|
||||
+ lib.optionalString rustSupport ''
|
||||
cargoSetupPostPatchHook() { true; }
|
||||
'';
|
||||
|
||||
cmakeFlags =
|
||||
[
|
||||
"-DENABLE_TESTS=OFF"
|
||||
"-DENABLE_DELTA_KERNEL_RS=0"
|
||||
"-DCOMPILER_CACHE=disabled"
|
||||
"-DENABLE_EMBEDDED_COMPILER=ON"
|
||||
]
|
||||
@@ -205,6 +120,7 @@ mkDerivation rec {
|
||||
) "-DNO_ARMV81_OR_HIGHER=1";
|
||||
|
||||
env = {
|
||||
CARGO_HOME = "$PWD/../.cargo/";
|
||||
NIX_CFLAGS_COMPILE =
|
||||
# undefined reference to '__sync_val_compare_and_swap_16'
|
||||
lib.optionalString stdenv.hostPlatform.isx86_64 " -mcx16"
|
||||
@@ -224,9 +140,9 @@ mkDerivation rec {
|
||||
sed -i -e '\!<log>/var/log/clickhouse-server/clickhouse-server\.log</log>!d' \
|
||||
$out/etc/clickhouse-server/config.xml
|
||||
substituteInPlace $out/etc/clickhouse-server/config.xml \
|
||||
--replace "<errorlog>/var/log/clickhouse-server/clickhouse-server.err.log</errorlog>" "<console>1</console>"
|
||||
--replace-fail "<errorlog>/var/log/clickhouse-server/clickhouse-server.err.log</errorlog>" "<console>1</console>"
|
||||
substituteInPlace $out/etc/clickhouse-server/config.xml \
|
||||
--replace "<level>trace</level>" "<level>warning</level>"
|
||||
--replace-fail "<level>trace</level>" "<level>warning</level>"
|
||||
'';
|
||||
|
||||
# Builds in 7+h with 2 cores, and ~20m with a big-parallel builder.
|
||||
@@ -241,10 +157,11 @@ mkDerivation rec {
|
||||
maintainers = with maintainers; [
|
||||
orivej
|
||||
mbalatsko
|
||||
thevar1able
|
||||
];
|
||||
|
||||
# not supposed to work on 32-bit https://github.com/ClickHouse/ClickHouse/pull/23959#issuecomment-835343685
|
||||
platforms = lib.filter (x: (lib.systems.elaborate x).is64bit) (platforms.linux ++ platforms.darwin);
|
||||
broken = stdenv.buildPlatform != stdenv.hostPlatform;
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -31,13 +31,13 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "frankenphp";
|
||||
version = "1.5.0";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dunglas";
|
||||
repo = "frankenphp";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-VOvH4Ma7IRDL2U6ihC620g9hvBcbt4VKP9SQxV1n3RM=";
|
||||
hash = "sha256-y1S1oPBuXpu2ApCxv9ENqzD2wjSeMzwqnBldmVLEIsM=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/caddy";
|
||||
@@ -45,7 +45,7 @@ buildGoModule rec {
|
||||
# frankenphp requires C code that would be removed with `go mod tidy`
|
||||
# https://github.com/golang/go/issues/26366
|
||||
proxyVendor = true;
|
||||
vendorHash = "sha256-ltT6RHGcEMJjCkqWWwtVrCUpPs2F8U0yBx+YbzGwfSo=";
|
||||
vendorHash = "sha256-M1z9Yv+WomKA+UACOUT8xcWdw+SD1MY2jfaDO4zYUQg=";
|
||||
|
||||
buildInputs = [
|
||||
phpUnwrapped
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
{
|
||||
lib,
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
symlinkJoin,
|
||||
versionCheckHook,
|
||||
makeWrapper,
|
||||
wrapGAppsHook4,
|
||||
cairo,
|
||||
gdk-pixbuf,
|
||||
glib,
|
||||
graphene,
|
||||
gtk4,
|
||||
libadwaita,
|
||||
pango,
|
||||
}:
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "geteduroam";
|
||||
version = "0.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "geteduroam";
|
||||
repo = "linux-app";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-Mtzt6i8vJ5M8T0vrAOxXhawlhCmCMEnDQz0Jo6uV88A=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-b06wnqT88J7etNTFJ6nE9Uo0gOQOGvvs0vPNnJr6r4Q=";
|
||||
|
||||
subPackages = [
|
||||
"cmd/geteduroam-gui"
|
||||
"cmd/geteduroam-notifcheck"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/geteduroam-gui \
|
||||
--set-default PUREGOTK_LIB_FOLDER ${finalAttrs.passthru.libraryPath}/lib \
|
||||
''${gappsWrapperArgs[@]}
|
||||
|
||||
# copy notifcheck service
|
||||
mkdir -p $out/lib/systemd/system/
|
||||
cp -v systemd/user/geteduroam/* $out/lib/systemd/system/
|
||||
substituteInPlace $out/lib/systemd/system/geteduroam-notifs.service \
|
||||
--replace-fail \
|
||||
"ExecStart=/usr/bin/geteduroam-notifcheck" \
|
||||
"ExecStart=$out/bin/geteduroam-notifcheck"
|
||||
|
||||
# copy icons and desktop entries
|
||||
cp -r cmd/geteduroam-gui/resources/share $out/
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook4
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
versionCheckProgram = "${placeholder "out"}/bin/geteduroam-gui";
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru = {
|
||||
libraryPath = symlinkJoin {
|
||||
name = "eduroam-gui-puregotk-lib";
|
||||
# based on https://github.com/jwijenbergh/puregotk/blob/bc1a52f44fd4c491947f7af85296c66173da17ba/internal/core/core.go#L41
|
||||
paths = [
|
||||
cairo
|
||||
gdk-pixbuf
|
||||
glib.out
|
||||
graphene
|
||||
gtk4
|
||||
libadwaita
|
||||
pango.out
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "GUI client to configure eduroam";
|
||||
homepage = "https://eduroam.app";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ pbsds ];
|
||||
platforms = lib.platforms.linux;
|
||||
changelog = "https://github.com/geteduroam/linux-app/releases/tag/${finalAttrs.version}";
|
||||
mainProgram = "geteduroam-gui";
|
||||
};
|
||||
})
|
||||
@@ -16,6 +16,7 @@ rustPlatform.buildRustPackage rec {
|
||||
sha256 = "sha256-+sSooE0KJqvWFdR63qazOMmSS8dV7MirYZ+sk7BnGQ4=";
|
||||
};
|
||||
|
||||
buildNoDefaultFeatures = true;
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-Yf8fAW65K7SLaRpvegjWBLVDV33sMGV+I1rqlWvx5Ss=";
|
||||
|
||||
|
||||
@@ -8,19 +8,19 @@
|
||||
|
||||
let
|
||||
pname = "pinact";
|
||||
version = "3.0.5";
|
||||
version = "3.1.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "suzuki-shunsuke";
|
||||
repo = "pinact";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-p8GOXx++wcUrQATlojx0D4ymlPFw9TCqL6YGSTOaRDo=";
|
||||
hash = "sha256-5jJzlMMpfk9fFDoqR0NJNacquZ4Zma0YF/pi80Miv0Y=";
|
||||
};
|
||||
mainProgram = "pinact";
|
||||
in
|
||||
buildGoModule {
|
||||
inherit pname version src;
|
||||
|
||||
vendorHash = "sha256-+iYNducL+tX34L5VlisqeNwvJUcuOAkEWDk/2JbfC0Q=";
|
||||
vendorHash = "sha256-kK4r0mCktlbhJr6iHD0Q/k1DralieN2AUg+zREZ06DA=";
|
||||
|
||||
env.CGO_ENABLED = 0;
|
||||
|
||||
|
||||
@@ -10,14 +10,14 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "snac2";
|
||||
version = "2.75";
|
||||
version = "2.77";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "grunfink";
|
||||
repo = "snac2";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-xy608ks9Z3eCjpE1M4U5r/Xi3ou8BuA4ljUDWgfTtoU=";
|
||||
hash = "sha256-QUPFD7x1ZDnDxediA+oqYC8CotmGeAr36xSZ3STOK9Y=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -31,13 +31,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "swayimg";
|
||||
version = "3.9";
|
||||
version = "4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "artemsen";
|
||||
repo = "swayimg";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-QPTODuVVDQCP7Ix63F0J0tOzfg5Q9B4GXaxjuTerkI0=";
|
||||
hash = "sha256-2UmaU60+5NNj2CVJt4oJXyBPjVeA0zBfEqZOOSI2vvk=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
{
|
||||
lib,
|
||||
writers,
|
||||
nixdoc,
|
||||
runCommand,
|
||||
treefmt,
|
||||
}:
|
||||
let
|
||||
root = toString ./.;
|
||||
revision = lib.trivial.revisionWithDefault "master";
|
||||
removeRoot = file: lib.removePrefix "/" (lib.removePrefix root file);
|
||||
|
||||
# Import and apply `./lib.nix`, which contains treefmt's public functions
|
||||
#
|
||||
# NOTE: we cannot access them via `treefmt.passthru` or `callPackages ./lib.nix { }`,
|
||||
# because that would be opaque to `unsafeGetAttrPos`.
|
||||
attrs =
|
||||
let
|
||||
fn = import ./lib.nix;
|
||||
args = builtins.mapAttrs (_: _: null) (builtins.functionArgs fn);
|
||||
in
|
||||
fn args;
|
||||
in
|
||||
{
|
||||
locations = lib.pipe attrs [
|
||||
builtins.attrNames
|
||||
(builtins.map (
|
||||
name:
|
||||
let
|
||||
pos = builtins.unsafeGetAttrPos name attrs;
|
||||
file = removeRoot pos.file;
|
||||
line = toString pos.line;
|
||||
subpath = "pkgs/by-name/tr/treefmt/${file}";
|
||||
url = "https://github.com/NixOS/nixpkgs/blob/${revision}/${subpath}#L${line}";
|
||||
in
|
||||
assert lib.hasPrefix root pos.file;
|
||||
lib.nameValuePair "pkgs.treefmt.${name}" "[${subpath}:${line}](${url}) in `<nixpkgs>`"
|
||||
))
|
||||
builtins.listToAttrs
|
||||
(writers.writeJSON "treefmt-function-locations")
|
||||
];
|
||||
|
||||
markdown =
|
||||
runCommand "treefmt-functions-doc"
|
||||
{
|
||||
nativeBuildInputs = [ nixdoc ];
|
||||
}
|
||||
''
|
||||
nixdoc --file ${./lib.nix} \
|
||||
--locs ${treefmt.functionsDoc.locations} \
|
||||
--description "Functions Reference" \
|
||||
--prefix "pkgs" \
|
||||
--category "treefmt" \
|
||||
--anchor-prefix "" \
|
||||
> $out
|
||||
'';
|
||||
}
|
||||
@@ -16,10 +16,7 @@
|
||||
# Inputs
|
||||
|
||||
`module`
|
||||
: A treefmt module, configuring options that include:
|
||||
- `name`: `String` (default `"treefmt-with-config"`)
|
||||
- `settings`: `Module` (default `{ }`)
|
||||
- `runtimeInputs`: `[Derivation]` (default `[ ]`)
|
||||
: A treefmt module. See [options reference](#sec-treefmt-options-reference).
|
||||
*/
|
||||
evalConfig =
|
||||
module:
|
||||
@@ -52,10 +49,7 @@
|
||||
# Inputs
|
||||
|
||||
`module`
|
||||
: A treefmt module, configuring options that include:
|
||||
- `name`: `String` (default `"treefmt-with-config"`)
|
||||
- `settings`: `Module` (default `{ }`)
|
||||
- `runtimeInputs`: `[Derivation]` (default `[ ]`)
|
||||
: A treefmt module. See [options reference](#sec-treefmt-options-reference).
|
||||
*/
|
||||
withConfig =
|
||||
module:
|
||||
@@ -79,7 +73,8 @@
|
||||
# Inputs
|
||||
|
||||
`settings`
|
||||
: A settings module, used to build a treefmt config file
|
||||
: A settings module, used to build a treefmt config file.
|
||||
See [`settings` option reference](#opt-treefmt-settings).
|
||||
*/
|
||||
buildConfig =
|
||||
module:
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
# To build this derivation, run `nix-build -A treefmt.optionsDoc`
|
||||
{
|
||||
lib,
|
||||
treefmt,
|
||||
nixosOptionsDoc,
|
||||
}:
|
||||
|
||||
let
|
||||
configuration = treefmt.evalConfig [ ];
|
||||
|
||||
root = toString configuration._module.specialArgs.modulesPath;
|
||||
revision = lib.trivial.revisionWithDefault "master";
|
||||
removeRoot = file: lib.removePrefix "/" (lib.removePrefix root file);
|
||||
|
||||
transformDeclaration =
|
||||
file:
|
||||
let
|
||||
fileStr = toString file;
|
||||
subpath = "pkgs/by-name/tr/treefmt/modules/" + removeRoot fileStr;
|
||||
in
|
||||
assert lib.hasPrefix root fileStr;
|
||||
{
|
||||
url = "https://github.com/NixOS/nixpkgs/blob/${revision}/${subpath}";
|
||||
name = subpath;
|
||||
};
|
||||
in
|
||||
nixosOptionsDoc {
|
||||
documentType = "none";
|
||||
options = builtins.removeAttrs configuration.options [ "_module" ];
|
||||
transformOptions = opt: opt // { declarations = map transformDeclaration opt.declarations; };
|
||||
}
|
||||
@@ -36,10 +36,29 @@ buildGoModule rec {
|
||||
;
|
||||
|
||||
tests = callPackages ./tests.nix { };
|
||||
|
||||
# Documentation for functions defined in `./lib.nix`
|
||||
functionsDoc = callPackages ./functions-doc.nix { };
|
||||
|
||||
# Documentation for options declared in `treefmt.evalConfig` configurations
|
||||
optionsDoc = callPackages ./options-doc.nix { };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "one CLI to format the code tree";
|
||||
longDescription = ''
|
||||
[treefmt](${meta.homepage}) streamlines the process of applying formatters
|
||||
to your project, making it a breeze with just one command line.
|
||||
|
||||
The `treefmt` package provides functions for configuring treefmt using
|
||||
the module system, which are documented in the [treefmt section] of the
|
||||
Nixpkgs Manual.
|
||||
|
||||
Alternatively, treefmt can be configured using [treefmt-nix].
|
||||
|
||||
[treefmt section]: https://nixos.org/manual/nixpkgs/unstable#treefmt
|
||||
[treefmt-nix]: https://github.com/numtide/treefmt-nix
|
||||
'';
|
||||
homepage = "https://github.com/numtide/treefmt";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{ lib, buildDotnetGlobalTool }:
|
||||
buildDotnetGlobalTool {
|
||||
pname = "upgrade-assistant";
|
||||
version = "0.5.1073";
|
||||
version = "0.5.1084";
|
||||
|
||||
nugetHash = "sha256-kk3SIv1gp9xtof0MkGkNUiqGuXgy1+YMGxLFZPFsw+0=";
|
||||
nugetHash = "sha256-O+HHLqou6hRAQ8vUzq+VfX0vRM+nZGPnfCg8niYX2gE=";
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/dotnet/upgrade-assistant";
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "yabai";
|
||||
version = "7.1.14";
|
||||
version = "7.1.15";
|
||||
|
||||
src =
|
||||
finalAttrs.passthru.sources.${stdenv.hostPlatform.system}
|
||||
@@ -66,13 +66,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# See the comments on https://github.com/NixOS/nixpkgs/pull/188322 for more information.
|
||||
"aarch64-darwin" = fetchzip {
|
||||
url = "https://github.com/koekeishiya/yabai/releases/download/v${finalAttrs.version}/yabai-v${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-cDONHrNPBTzEkVqxN1cHDqVumfyfcHrTYGZxn4s/mEA=";
|
||||
hash = "sha256-QDGt/v5t7g6+y6ijpLRF7YkqF8bISfxk684m7uUg4eM=";
|
||||
};
|
||||
"x86_64-darwin" = fetchFromGitHub {
|
||||
owner = "koekeishiya";
|
||||
repo = "yabai";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-YbEx1CzuvSFYFD3HgiZrrAd1x9cOQF6fGdgsOlkmUGU=";
|
||||
hash = "sha256-HvaMPmXNlFVOezqWxqXaAUq8E8O2ZkXMQPwkKXCAOcY=";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
--- a/utils/cfhq2xa.C
|
||||
+++ b/utils/cfhq2xa.C
|
||||
@@ -182,10 +182,10 @@ static inline bool Diff (pixel w1, pixel w2)
|
||||
pixel YUV1 = RGBAtoYUVA (w1);
|
||||
pixel YUV2 = RGBAtoYUVA (w2);
|
||||
|
||||
- return ((abs (((YUV1 >> Rshift) & Cmask) - ((YUV2 >> Rshift) & Cmask)) > trY) ||
|
||||
- (abs (((YUV1 >> Gshift) & Cmask) - ((YUV2 >> Gshift) & Cmask)) > trU) ||
|
||||
- (abs (((YUV1 >> Bshift) & Cmask) - ((YUV2 >> Bshift) & Cmask)) > trV) ||
|
||||
- (abs (((YUV1 >> Ashift) & Cmask) - ((YUV2 >> Ashift) & Cmask)) > trA) );
|
||||
+ return ((abs ((signed int)((YUV1 >> Rshift) & Cmask) - (signed int)((YUV2 >> Rshift) & Cmask)) > trY) ||
|
||||
+ (abs ((signed int)((YUV1 >> Gshift) & Cmask) - (signed int)((YUV2 >> Gshift) & Cmask)) > trU) ||
|
||||
+ (abs ((signed int)((YUV1 >> Bshift) & Cmask) - (signed int)((YUV2 >> Bshift) & Cmask)) > trV) ||
|
||||
+ (abs ((signed int)((YUV1 >> Ashift) & Cmask) - (signed int)((YUV2 >> Ashift) & Cmask)) > trA) );
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/utils/cfutil.in
|
||||
+++ b/utils/cfutil.in
|
||||
@@ -27,7 +27,7 @@ use common::sense;
|
||||
my $prefix = "@prefix@";
|
||||
my $exec_prefix = "@exec_prefix@";
|
||||
my $datarootdir = "@datarootdir@";
|
||||
-my $DATADIR = "@datadir@/@PACKAGE@";
|
||||
+my $DATADIR = $ENV{'DELIANTRA_DATADIR'} || "@datadir@/@PACKAGE@";
|
||||
|
||||
my $CONVERT = "@CONVERT@";
|
||||
my $IDENTIFY = "@IDENTIFY@";
|
||||
@@ -1,14 +0,0 @@
|
||||
--- a/include/util.h
|
||||
+++ b/include/util.h
|
||||
@@ -449,6 +449,11 @@ struct slice_allocator
|
||||
{
|
||||
p->~Tp ();
|
||||
}
|
||||
+
|
||||
+ bool operator ==(const slice_allocator &) const
|
||||
+ {
|
||||
+ return true;
|
||||
+ }
|
||||
};
|
||||
|
||||
// basically a memory area, but refcounted
|
||||
@@ -1,33 +0,0 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchurl,
|
||||
deliantra-server,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deliantra-arch";
|
||||
version = "3.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dist.schmorp.de/deliantra/${pname}-${version}.tar.xz";
|
||||
sha256 = "1xzhv48g90hwkzgx9nfjm81ivg6hchkik9ldimi8ijb4j393kvsz";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out"
|
||||
export DELIANTRA_DATADIR="$out"
|
||||
${deliantra-server}/bin/cfutil --install-arch .
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Archetype data for the Deliantra free MMORPG";
|
||||
homepage = "http://www.deliantra.net/";
|
||||
license = with licenses; [
|
||||
gpl2Plus
|
||||
agpl3Plus
|
||||
];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ToxicFrog ];
|
||||
};
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
deliantra-maps,
|
||||
deliantra-arch,
|
||||
deliantra-server,
|
||||
symlinkJoin,
|
||||
}:
|
||||
|
||||
symlinkJoin rec {
|
||||
name = "deliantra-data-${version}";
|
||||
version = "M${deliantra-maps.version}+A${deliantra-arch.version}";
|
||||
|
||||
paths = [
|
||||
deliantra-maps
|
||||
deliantra-arch
|
||||
"${deliantra-server}/share/deliantra-server"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Combined game data (maps + archetypes) for the Deliantra free MMORPG";
|
||||
homepage = "http://www.deliantra.net/";
|
||||
license = with licenses; [
|
||||
gpl2Plus
|
||||
agpl3Plus
|
||||
];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ToxicFrog ];
|
||||
hydraPlatforms = [ ];
|
||||
};
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchurl,
|
||||
deliantra-server,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deliantra-maps";
|
||||
version = "3.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dist.schmorp.de/deliantra/${pname}-${version}.tar.xz";
|
||||
sha256 = "0zbwzya28s1xpnbrmqkqvfrzns03zdjd8a9w9nk665aif6rw2zbz";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/maps"
|
||||
export DELIANTRA_DATADIR="$out"
|
||||
${deliantra-server}/bin/cfutil --install-maps .
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Map data for the Deliantra free MMORPG";
|
||||
homepage = "http://www.deliantra.net/";
|
||||
license = with licenses; [
|
||||
gpl2Plus
|
||||
agpl3Plus
|
||||
];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ToxicFrog ];
|
||||
};
|
||||
}
|
||||
@@ -1,93 +0,0 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchurl,
|
||||
perlPackages,
|
||||
autoconf,
|
||||
perl,
|
||||
gperf,
|
||||
optipng,
|
||||
pngnq,
|
||||
rsync,
|
||||
imagemagick,
|
||||
blitz,
|
||||
pkg-config,
|
||||
glib,
|
||||
boost,
|
||||
makeWrapper,
|
||||
}:
|
||||
|
||||
let
|
||||
perl-deps = with perlPackages; [
|
||||
AnyEvent
|
||||
AnyEventAIO
|
||||
AnyEventBDB
|
||||
AnyEventIRC
|
||||
CompressLZF
|
||||
commonsense
|
||||
Coro
|
||||
CoroEV
|
||||
Deliantra
|
||||
DigestSHA1
|
||||
EV
|
||||
PodPOM
|
||||
SafeHole
|
||||
URI
|
||||
YAMLLibYAML
|
||||
];
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deliantra-server";
|
||||
version = "3.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dist.schmorp.de/deliantra/${pname}-${version}.tar.xz";
|
||||
sha256 = "0v0m2m9fxq143aknh7jb3qj8bnpjrs3bpbbx07c18516y3izr71d";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
perl
|
||||
gperf
|
||||
optipng
|
||||
pngnq
|
||||
rsync
|
||||
imagemagick
|
||||
pkg-config
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
propagatedBuildInputs = perl-deps;
|
||||
|
||||
buildInputs = [
|
||||
blitz
|
||||
boost
|
||||
glib
|
||||
];
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
patches = [
|
||||
./0001-abs.patch
|
||||
./0002-datadir.patch
|
||||
./0003-swap.patch
|
||||
];
|
||||
|
||||
env.CXXFLAGS = "-std=c++11";
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/cfutil --prefix PERL5LIB : $PERL5LIB
|
||||
wrapProgram $out/bin/deliantra-server --prefix PERL5LIB : $PERL5LIB
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Server for the Deliantra free MMORPG";
|
||||
homepage = "http://www.deliantra.net/";
|
||||
license = with licenses; [
|
||||
gpl2Plus
|
||||
agpl3Plus
|
||||
];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ToxicFrog ];
|
||||
};
|
||||
}
|
||||
@@ -10274,10 +10274,6 @@ with pkgs;
|
||||
autoreconfHook = buildPackages.autoreconfHook269;
|
||||
};
|
||||
|
||||
clickhouse = callPackage ../servers/clickhouse {
|
||||
llvmPackages = llvmPackages_16;
|
||||
};
|
||||
|
||||
clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
|
||||
|
||||
couchdb3 = callPackage ../servers/http/couchdb/3.nix { };
|
||||
@@ -14935,15 +14931,6 @@ with pkgs;
|
||||
|
||||
cutemaze = qt6Packages.callPackage ../games/cutemaze { };
|
||||
|
||||
deliantra-server = callPackage ../games/deliantra/server.nix {
|
||||
# perl538 defines 'struct object' in sv.h. many conflicts result
|
||||
perl = perl540;
|
||||
perlPackages = perl540Packages;
|
||||
};
|
||||
deliantra-arch = callPackage ../games/deliantra/arch.nix { };
|
||||
deliantra-maps = callPackage ../games/deliantra/maps.nix { };
|
||||
deliantra-data = callPackage ../games/deliantra/data.nix { };
|
||||
|
||||
ddnet-server = ddnet.override { buildClient = false; };
|
||||
|
||||
duckmarines = callPackage ../games/duckmarines { love = love_0_10; };
|
||||
|
||||
Reference in New Issue
Block a user