Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2023-05-06 00:11:27 +00:00 committed by GitHub
commit 81dc7d6709
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
257 changed files with 12790 additions and 2423 deletions

View File

@ -101,3 +101,7 @@ end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
charset = unset
[lib/tests/*.plist]
indent_style = tab
insert_final_newline = unset

View File

@ -355,6 +355,7 @@ rec {
# PLIST handling
toPlist = {}: v: let
isFloat = builtins.isFloat or (x: false);
isPath = x: builtins.typeOf x == "path";
expr = ind: x: with builtins;
if x == null then "" else
if isBool x then bool ind x else
@ -362,6 +363,7 @@ rec {
if isString x then str ind x else
if isList x then list ind x else
if isAttrs x then attrs ind x else
if isPath x then str ind (toString x) else
if isFloat x then float ind x else
abort "generators.toPlist: should never happen (v = ${v})";

View File

@ -919,6 +919,30 @@ runTests {
expected = "«foo»";
};
testToPlist =
let
deriv = derivation { name = "test"; builder = "/bin/sh"; system = "aarch64-linux"; };
in {
expr = mapAttrs (const (generators.toPlist { })) {
value = {
nested.values = rec {
int = 42;
float = 0.1337;
bool = true;
emptystring = "";
string = "fn\${o}\"r\\d";
newlinestring = "\n";
path = /. + "/foo";
null_ = null;
list = [ 3 4 "test" ];
emptylist = [];
attrs = { foo = null; "foo b/ar" = "baz"; };
emptyattrs = {};
};
};
};
expected = { value = builtins.readFile ./test-to-plist-expected.plist; };
};
testToLuaEmptyAttrSet = {
expr = generators.toLua {} {};

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>nested</key>
<dict>
<key>values</key>
<dict>
<key>attrs</key>
<dict>
<key>foo b/ar</key>
<string>baz</string>
</dict>
<key>bool</key>
<true/>
<key>emptyattrs</key>
<dict>
</dict>
<key>emptylist</key>
<array>
</array>
<key>emptystring</key>
<string></string>
<key>float</key>
<real>0.133700</real>
<key>int</key>
<integer>42</integer>
<key>list</key>
<array>
<integer>3</integer>
<integer>4</integer>
<string>test</string>
</array>
<key>newlinestring</key>
<string>
</string>
<key>path</key>
<string>/foo</string>
<key>string</key>
<string>fn${o}"r\d</string>
</dict>
</dict>
</dict>
</plist>

View File

@ -5695,6 +5695,12 @@
githubId = 1713676;
name = "Luis G. Torres";
};
giorgiga = {
email = "giorgio.gallo@bitnic.it";
github = "giorgiga";
githubId = 471835;
name = "Giorgio Gallo";
};
GKasparov = {
email = "mizozahr@gmail.com";
github = "GKasparov";
@ -8666,6 +8672,12 @@
githubId = 621759;
name = "Lassulus";
};
laurent-f1z1 = {
email = "laurent.nixpkgs@fainsin.bzh";
github = "Laurent2916";
githubId = 21087104;
name = "Laurent Fainsin";
};
layus = {
email = "layus.on@gmail.com";
github = "layus";
@ -14468,6 +14480,15 @@
githubId = 12828415;
name = "Michel Weitbrecht";
};
slwst = {
email = "email@slw.st";
github = "slwst";
githubId = 11047377;
name = "slwst";
keys = [{
fingerprint = "6CEB 4A2F E6DC C345 1B2B 4733 AD52 C5FB 3EFE CC7A";
}];
};
smakarov = {
email = "setser200018@gmail.com";
github = "SeTSeR";

View File

@ -100,11 +100,12 @@ def convert_to_throw(date_older_list: list[str]) -> list[tuple[str, str]]:
date_older_list.remove(line)
continue
alias = before_equal.strip()
alias = before_equal
alias_unquoted = before_equal.strip('"')
after_equal_list = [x.strip(";:") for x in after_equal.split()]
converted = (
f"{indent}{alias} = throw \"'{alias}' has been renamed to/replaced by"
f"{indent}{alias} = throw \"'{alias_unquoted}' has been renamed to/replaced by"
f" '{after_equal_list.pop(0)}'\";"
f' # Converted to throw {datetime.today().strftime("%Y-%m-%d")}'
)

View File

@ -149,6 +149,15 @@ with lib.maintainers; {
enableFeatureFreezePing = true;
};
cuda = {
members = [
SomeoneSerge
];
scope = "Maintain CUDA-enabled packages";
shortName = "Cuda";
githubTeams = [ "cuda-maintainers" ];
};
darwin = {
members = [
toonn

View File

@ -25,6 +25,8 @@ These include `pkgs.nixosTest`, `testing-python.nix` and `make-test-python.nix`.
## Testing changes to the test framework {#sec-test-the-test-framework}
We currently have limited unit tests for the framework itself. You may run these with `nix-build -A nixosTests.nixos-test-driver`.
When making significant changes to the test framework, we run the tests on Hydra, to avoid disrupting the larger NixOS project.
For this, we use the `python-test-refactoring` branch in the `NixOS/nixpkgs` repository, and its [corresponding Hydra jobset](https://hydra.nixos.org/jobset/nixos/python-test-refactoring).

View File

@ -130,6 +130,11 @@ starting them in parallel:
start_all()
```
If the hostname of a node contains characters that can't be used in a
Python variable name, those characters will be replaced with
underscores in the variable name, so `nodes.machine-a` will be exposed
to Python as `machine_a`.
## Machine objects {#ssec-machine-objects}
The following methods are available on machine objects:

View File

@ -48,6 +48,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [Deepin Desktop Environment](https://github.com/linuxdeepin/dde), an elegant, easy to use and reliable desktop environment. Available as [services.xserver.desktopManager.deepin](options.html#opt-services.xserver.desktopManager.deepin).
- [system-repart](https://www.freedesktop.org/software/systemd/man/systemd-repart.service.html), grow and add partitions to a partition table. Available as [systemd.repart](options.html#opt-systemd.repart) and [boot.initrd.systemd.repart](options.html#opt-boot.initrd.systemd.repart)
- [fzf](https://github.com/junegunn/fzf), a command line fuzzyfinder. Available as [programs.fzf](#opt-programs.fzf.fuzzyCompletion).
- [readarr](https://github.com/Readarr/Readarr), Book Manager and Automation (Sonarr for Ebooks). Available as [services.readarr](options.html#opt-services.readarr.enable).

View File

@ -2,6 +2,7 @@ from contextlib import contextmanager
from pathlib import Path
from typing import Any, Dict, Iterator, List, Union, Optional, Callable, ContextManager
import os
import re
import tempfile
from test_driver.logger import rootlog
@ -28,6 +29,10 @@ def get_tmp_dir() -> Path:
return tmp_dir
def pythonize_name(name: str) -> str:
return re.sub(r"^[^A-z_]|[^A-z0-9_]", "_", name)
class Driver:
"""A handle to the driver that sets up the environment
and runs the tests"""
@ -113,7 +118,7 @@ class Driver:
polling_condition=self.polling_condition,
Machine=Machine, # for typing
)
machine_symbols = {m.name: m for m in self.machines}
machine_symbols = {pythonize_name(m.name): m for m in self.machines}
# If there's exactly one machine, make it available under the name
# "machine", even if it's not called that.
if len(self.machines) == 1:

View File

@ -21,29 +21,20 @@ let
in
nodesList ++ lib.optional (lib.length nodesList == 1 && !lib.elem "machine" nodesList) "machine";
# TODO: This is an implementation error and needs fixing
# the testing famework cannot legitimately restrict hostnames further
# beyond RFC1035
invalidNodeNames = lib.filter
(node: builtins.match "^[A-z_]([A-z0-9_]+)?$" node == null)
nodeHostNames;
pythonizeName = name:
let
head = lib.substring 0 1 name;
tail = lib.substring 1 (-1) name;
in
(if builtins.match "[A-z_]" head == null then "_" else head) +
lib.stringAsChars (c: if builtins.match "[A-z0-9_]" c == null then "_" else c) tail;
uniqueVlans = lib.unique (builtins.concatLists vlans);
vlanNames = map (i: "vlan${toString i}: VLan;") uniqueVlans;
machineNames = map (name: "${name}: Machine;") nodeHostNames;
pythonizedNames = map pythonizeName nodeHostNames;
machineNames = map (name: "${name}: Machine;") pythonizedNames;
withChecks =
if lib.length invalidNodeNames > 0 then
throw ''
Cannot create machines out of (${lib.concatStringsSep ", " invalidNodeNames})!
All machines are referenced as python variables in the testing framework which will break the
script when special characters are used.
This is an IMPLEMENTATION ERROR and needs to be fixed. Meanwhile,
please stick to alphanumeric chars and underscores as separation.
''
else
lib.warnIf config.skipLint "Linting is disabled";
withChecks = lib.warnIf config.skipLint "Linting is disabled";
driver =
hostPkgs.runCommand "nixos-test-driver-${config.name}"
@ -87,7 +78,7 @@ let
${testDriver}/bin/generate-driver-symbols
${lib.optionalString (!config.skipLint) ''
PYFLAKES_BUILTINS="$(
echo -n ${lib.escapeShellArg (lib.concatStringsSep "," nodeHostNames)},
echo -n ${lib.escapeShellArg (lib.concatStringsSep "," pythonizedNames)},
< ${lib.escapeShellArg "driver-symbols"}
)" ${hostPkgs.python3Packages.pyflakes}/bin/pyflakes $out/test-script
''}

View File

@ -25,6 +25,7 @@ let
path = makeBinPath [
pkgs.jq
nixos-enter
pkgs.util-linuxMinimal
];
};
@ -65,6 +66,9 @@ let
name = "nixos-enter";
src = ./nixos-enter.sh;
inherit (pkgs) runtimeShell;
path = makeBinPath [
pkgs.util-linuxMinimal
];
};
in

View File

@ -13,12 +13,7 @@ in
options.services.grafana-agent = {
enable = mkEnableOption (lib.mdDoc "grafana-agent");
package = mkOption {
type = types.package;
default = pkgs.grafana-agent;
defaultText = lib.literalExpression "pkgs.grafana-agent";
description = lib.mdDoc "The grafana-agent package to use.";
};
package = mkPackageOptionMD pkgs "grafana-agent" { };
credentials = mkOption {
description = lib.mdDoc ''
@ -37,11 +32,22 @@ in
};
};
extraFlags = mkOption {
type = with types; listOf str;
default = [ ];
example = [ "-enable-features=integrations-next" "-disable-reporting" ];
description = lib.mdDoc ''
Extra command-line flags passed to {command}`grafana-agent`.
See <https://grafana.com/docs/agent/latest/static/configuration/flags/>
'';
};
settings = mkOption {
description = lib.mdDoc ''
Configuration for `grafana-agent`.
Configuration for {command}`grafana-agent`.
See https://grafana.com/docs/agent/latest/configuration/
See <https://grafana.com/docs/agent/latest/configuration/>
'';
type = types.submodule {
@ -140,7 +146,7 @@ in
# We can't use Environment=HOSTNAME=%H, as it doesn't include the domain part.
export HOSTNAME=$(< /proc/sys/kernel/hostname)
exec ${lib.getExe cfg.package} -config.expand-env -config.file ${configFile}
exec ${lib.getExe cfg.package} -config.expand-env -config.file ${configFile} ${escapeShellArgs cfg.extraFlags}
'';
serviceConfig = {
Restart = "always";

View File

@ -121,7 +121,7 @@ let
fi
done
for i in $(find ${toString cfg.modules} -type d); do
for i in $(find ${toString cfg.modules} -type d | sort); do
if test $(echo $i/*.so* | wc -w) -ne 0; then
echo " ModulePath \"$i\"" >> $out
fi

View File

@ -40,7 +40,7 @@ let
# This can only be done here because we *cannot* depend on $out
# referring to the toplevel, except by living in the toplevel itself.
toplevelInjector = lib.escapeShellArgs [
"${pkgs.jq}/bin/jq"
"${pkgs.buildPackages.jq}/bin/jq"
''
."org.nixos.bootspec.v1".toplevel = $toplevel |
."org.nixos.bootspec.v1".init = $init
@ -60,7 +60,7 @@ let
children);
in
lib.escapeShellArgs [
"${pkgs.jq}/bin/jq"
"${pkgs.buildPackages.jq}/bin/jq"
"--sort-keys"
''."org.nixos.specialisation.v1" = ($ARGS.named | map_values(. | first))''
] + " ${lib.concatStringsSep " " specialisationLoader}";

View File

@ -410,6 +410,11 @@ mountFS() {
n=$((n + 1))
done
# For bind mounts, busybox has a tendency to ignore options, which can be a
# security issue (e.g. "nosuid"). Remounting the partition seems to fix the
# issue.
mount "/mnt-root$mountPoint" -o "remount,$optionsPrefixed"
[ "$mountPoint" == "/" ] &&
[ -f "/mnt-root/etc/NIXOS_LUSTRATE" ] &&
lustrateRoot "/mnt-root"

View File

@ -272,7 +272,7 @@ let
suggestedRootDevice = {
"efi_bootloading_with_default_fs" = "${cfg.bootLoaderDevice}2";
"legacy_bootloading_with_default_fs" = "${cfg.bootLoaderDevice}1";
"direct_boot_with_default_fs" = cfg.bootLoaderDevice;
"direct_boot_with_default_fs" = lookupDriveDeviceName "root" cfg.qemu.drives;
# This will enforce a NixOS module type checking error
# to ask explicitly the user to set a rootDevice.
# As it will look like `rootDevice = lib.mkDefault null;` after
@ -344,14 +344,14 @@ in
virtualisation.bootLoaderDevice =
mkOption {
type = types.path;
default = lookupDriveDeviceName "root" cfg.qemu.drives;
defaultText = literalExpression ''lookupDriveDeviceName "root" cfg.qemu.drives'';
type = types.nullOr types.path;
default = if cfg.useBootLoader then lookupDriveDeviceName "root" cfg.qemu.drives else null;
defaultText = literalExpression ''if cfg.useBootLoader then lookupDriveDeviceName "root" cfg.qemu.drives else null;'';
example = "/dev/vda";
description =
lib.mdDoc ''
The disk to be used for the boot filesystem.
By default, it is the same disk as the root filesystem.
By default, it is the same disk as the root filesystem if you use a bootloader, otherwise it's null.
'';
};
@ -862,6 +862,16 @@ in
Invalid virtualisation.forwardPorts.<entry ${toString i}>.guest.address:
The address must be in the default VLAN (10.0.2.0/24).
'';
}
{ assertion = cfg.useBootLoader -> cfg.diskImage != null;
message =
''
Currently, bootloaders cannot be used with a tmpfs disk image.
It would require some rework in the boot configuration mechanism
to detect the proper boot partition in UEFI scenarios for example.
If you are interested into this feature, please open an issue or open a pull request.
'';
}
]));
@ -889,7 +899,8 @@ in
# legacy and UEFI. In order to avoid this, we have to put "nodev" to force UEFI-only installs.
# Otherwise, we set the proper bootloader device for this.
# FIXME: make a sense of this mess wrt to multiple ESP present in the system, probably use boot.efiSysMountpoint?
boot.loader.grub.device = mkVMOverride (if cfg.useEFIBoot then "nodev" else cfg.bootLoaderDevice);
boot.loader.grub.enable = cfg.useBootLoader;
boot.loader.grub.device = mkIf cfg.useBootLoader (mkVMOverride (if cfg.useEFIBoot then "nodev" else cfg.bootLoaderDevice));
boot.loader.grub.gfxmodeBios = with cfg.resolution; "${toString x}x${toString y}";
virtualisation.rootDevice = mkDefault suggestedRootDevice;
@ -897,13 +908,13 @@ in
boot.loader.supportsInitrdSecrets = mkIf (!cfg.useBootLoader) (mkVMOverride false);
boot.initrd.extraUtilsCommands = lib.mkIf (cfg.useDefaultFilesystems && !config.boot.initrd.systemd.enable)
boot.initrd.extraUtilsCommands = lib.mkIf (cfg.useDefaultFilesystems && !config.boot.initrd.systemd.enable && cfg.diskImage != null)
''
# We need mke2fs in the initrd.
copy_bin_and_libs ${pkgs.e2fsprogs}/bin/mke2fs
'';
boot.initrd.postDeviceCommands = lib.mkIf (cfg.useDefaultFilesystems && !config.boot.initrd.systemd.enable)
boot.initrd.postDeviceCommands = lib.mkIf (cfg.useDefaultFilesystems && !config.boot.initrd.systemd.enable && cfg.diskImage != null)
''
# If the disk image appears to be empty, run mke2fs to
# initialise.

View File

@ -66,6 +66,15 @@ let
;
in {
# Testing the test driver
nixos-test-driver = {
extra-python-packages = handleTest ./nixos-test-driver/extra-python-packages.nix {};
node-name = runTest ./nixos-test-driver/node-name.nix;
};
# NixOS vm tests and non-vm unit tests
_3proxy = runTest ./3proxy.nix;
aaaaxy = runTest ./aaaaxy.nix;
acme = runTest ./acme.nix;
@ -197,6 +206,7 @@ in {
dovecot = handleTest ./dovecot.nix {};
drbd = handleTest ./drbd.nix {};
earlyoom = handleTestOn ["x86_64-linux"] ./earlyoom.nix {};
early-mount-options = handleTest ./early-mount-options.nix {};
ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
ecryptfs = handleTest ./ecryptfs.nix {};
@ -220,7 +230,6 @@ in {
etcd-cluster = handleTestOn ["x86_64-linux"] ./etcd-cluster.nix {};
etebase-server = handleTest ./etebase-server.nix {};
etesync-dav = handleTest ./etesync-dav.nix {};
extra-python-packages = handleTest ./extra-python-packages.nix {};
evcc = handleTest ./evcc.nix {};
fancontrol = handleTest ./fancontrol.nix {};
fcitx5 = handleTest ./fcitx5 {};

View File

@ -0,0 +1,19 @@
# Test for https://github.com/NixOS/nixpkgs/pull/193469
import ./make-test-python.nix {
name = "early-mount-options";
nodes.machine = {
virtualisation.fileSystems."/var" = {
options = [ "bind" "nosuid" "nodev" "noexec" ];
device = "/var";
};
};
testScript = ''
machine.wait_for_unit("multi-user.target")
var_mount_info = machine.succeed("findmnt /var -n -o OPTIONS")
options = var_mount_info.strip().split(",")
assert "nosuid" in options and "nodev" in options and "noexec" in options
'';
}

View File

@ -1,4 +1,4 @@
import ./make-test-python.nix ({ ... }:
import ../make-test-python.nix ({ ... }:
{
name = "extra-python-packages";

View File

@ -0,0 +1,33 @@
{
name = "nixos-test-driver.node-name";
nodes = {
"ok" = { };
# Valid node name, but not a great host name.
"one_two" = { };
# Valid node name, good host name
"a-b" = { };
# TODO: would be nice to test these eval failures
# Not allowed by lib/testing/network.nix (yet?)
# "foo.bar" = { };
# Not allowed.
# "not ok" = { }; # not ok
};
testScript = ''
start_all()
with subtest("python vars exist and machines are reachable through test backdoor"):
ok.succeed("true")
one_two.succeed("true")
a_b.succeed("true")
with subtest("hostname is derived from the node name"):
ok.succeed("hostname | tee /dev/stderr | grep '^ok$'")
one_two.succeed("hostname | tee /dev/stderr | grep '^onetwo$'")
a_b.succeed("hostname | tee /dev/stderr | grep '^a-b$'")
'';
}

View File

@ -16,16 +16,16 @@
rustPlatform.buildRustPackage rec {
pname = "ncspot";
version = "0.13.1";
version = "0.13.2";
src = fetchFromGitHub {
owner = "hrkfdn";
repo = "ncspot";
rev = "v${version}";
hash = "sha256-TZTADhoJloqMSO2UgbwwvJoZqhi8UC1qNDDNxE6Aq54=";
hash = "sha256-DdJa4ax/v86OgO+IAsiFA8/u6pEGcCw+N/3MLXzz8DM=";
};
cargoHash = "sha256-tEk7BxAN8jEquJiv89vC0lYrB/sKeZhThBzs09A9NpA=";
cargoHash = "sha256-HkpFboXgHbJMYJFabJ58Syy1ag+InwqkeJAw8MxAr0A=";
nativeBuildInputs = [ pkg-config ]
++ lib.optional withClipboard python3;

View File

@ -1,19 +1,19 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, intltool, pkg-config, ffmpeg_4, wxGTK32, gtk3, wrapGAppsHook }:
{ lib, stdenv, fetchFromGitHub, autoreconfHook, intltool, pkg-config, ffmpeg, wxGTK32, gtk3, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "spek";
version = "0.8.4";
version = "0.8.5";
src = fetchFromGitHub {
owner = "alexkay";
repo = "spek";
rev = "v${version}";
sha256 = "sha256-JLQx5LlnVe1TT1KVO3/QSVRqYL+pAMCxoDWrnkUNmRU=";
sha256 = "sha256-VYt2so2k3Rk3sLSV1Tf1G2pESYiXygrKr9Koop8ChCg=";
};
nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook ];
buildInputs = [ ffmpeg_4 wxGTK32 gtk3 ];
buildInputs = [ ffmpeg wxGTK32 gtk3 ];
meta = with lib; {
description = "Analyse your audio files by showing their spectrogram";

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "ergo";
version = "5.0.9";
version = "5.0.10";
src = fetchurl {
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
sha256 = "sha256-EChnLRoInWFRuRMfnyRlZbZBWB6/QG9yRdwW9+IiMYc=";
sha256 = "sha256-T1+xQtXbLyfiV1IAeIiqzIFt1UZuctIkyNGzRc8E+zM=";
};
nativeBuildInputs = [ makeWrapper ];

View File

@ -38,13 +38,13 @@ let
in
stdenv.mkDerivation rec {
pname = "cudatext";
version = "1.192.0";
version = "1.193.0";
src = fetchFromGitHub {
owner = "Alexey-T";
repo = "CudaText";
rev = version;
hash = "sha256-uRw4IeTJz5K3EPgEAtvtG938LT0doHh49/y02XlMhzE=";
hash = "sha256-vMTE6oe11ajO+Dw5pcgXEKSl8LR+3GI4DHH5KxS3Msw=";
};
postPatch = ''

View File

@ -11,18 +11,18 @@
},
"ATFlatControls": {
"owner": "Alexey-T",
"rev": "2023.04.26",
"hash": "sha256-OQOIDK3DSWQeKMjHPbJzfB35v+FQXFaoOES0luKSMc0="
"rev": "2023.05.04",
"hash": "sha256-VdjLHbgj5i7gEavnGLvPlBBlo5HPYUIBX78pkD2CbwI="
},
"ATSynEdit": {
"owner": "Alexey-T",
"rev": "2023.04.26",
"hash": "sha256-RD8ZmRy6jf6pUGPDI3Ft2LBYHXklxXlJXaLHjLv3usE="
"rev": "2023.05.02",
"hash": "sha256-E3XBPzd8D8SMhjXOj16syzdMgryzOVPxnEuZwpO7Czw="
},
"ATSynEdit_Cmp": {
"owner": "Alexey-T",
"rev": "2023.04.26",
"hash": "sha256-y5+NaTTSS6GI2gLOOewQnWzfAUB1reximvqnWjavORk="
"rev": "2023.05.02",
"hash": "sha256-bPib2pJqxb+m9eMGerClj1bvAoHcGH2OTmmKon6UQfo="
},
"EControl": {
"owner": "Alexey-T",
@ -31,8 +31,8 @@
},
"ATSynEdit_Ex": {
"owner": "Alexey-T",
"rev": "2023.04.17",
"hash": "sha256-ZCRoKuwU+DtXEEZEL2QhhwMfewQMhw+/20vVRgHpHf4="
"rev": "2023.05.02",
"hash": "sha256-EKJnkwQ7QTUTVaXOA1pi5YUHxaA/hu4qpgpHHaON61k="
},
"Python-for-Lazarus": {
"owner": "Alexey-T",

View File

@ -0,0 +1,47 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, ncurses
}:
stdenv.mkDerivation rec {
pname = "openvi";
version = "7.3.22";
src = fetchFromGitHub {
owner = "johnsonjh";
repo = "OpenVi";
rev = version;
hash = "sha256-yXYiH2FCT7ffRPmb28V54+KO1RLs8L9KHk3remkMWmA=";
};
patches = [
# do not attempt to install to /var/tmp/vi.recover
(fetchpatch {
url = "https://github.com/johnsonjh/OpenVi/commit/5205f0234369963c443e83ca5028ca63feaaac91.patch";
hash = "sha256-hoKzQLnpdRbc48wffWbzFtivr20VqEPs4WRPXuDa/88=";
})
];
buildInputs = [ ncurses ];
makeFlags = [
"PREFIX=$(out)"
# command -p will yield command not found error
"PAWK=awk"
# silently fail the chown command
"IUSGR=$(USER)"
];
enableParallelBuilding = true;
meta = with lib; {
homepage = "https://github.com/johnsonjh/OpenVi";
description = "Portable OpenBSD vi for UNIX systems";
license = licenses.bsd3;
platforms = platforms.unix;
maintainers = with maintainers; [ aleksana ];
mainProgram = "ovi";
};
}

View File

@ -10,6 +10,7 @@
, qttools
, qtsvg
, zlib
, zstd
, libGL
}:
@ -29,7 +30,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ pkg-config qbs wrapQtAppsHook ];
buildInputs = [ qtEnv zlib libGL ];
buildInputs = [ qtEnv zlib zstd libGL ];
outputs = [ "out" "dev" ];

File diff suppressed because it is too large Load Diff

View File

@ -115,12 +115,12 @@
};
blueprint = buildGrammar {
language = "blueprint";
version = "0.0.0+rev=6ef91ca";
version = "0.0.0+rev=7f1a5df";
src = fetchFromGitLab {
owner = "gabmus";
repo = "tree-sitter-blueprint";
rev = "6ef91ca8270f0112b9c6d27ecb9966c741a5d103";
hash = "sha256-E7SWUWQFlFWXfmdqNXt2eKkvFusnBUILHerQEFj2JTg=";
rev = "7f1a5df44861291d6951b6b2146a9fef4c226e14";
hash = "sha256-ihbcrDRMA+jGs7ZmDU1j9PwTEYY6SyMhC0vgmh1Om6Y=";
};
meta.homepage = "https://gitlab.com/gabmus/tree-sitter-blueprint.git";
};
@ -137,12 +137,12 @@
};
c_sharp = buildGrammar {
language = "c_sharp";
version = "0.0.0+rev=0dd182a";
version = "0.0.0+rev=2340fd6";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-c-sharp";
rev = "0dd182a14a519a70dc60c3727fdc2fdb65c030ae";
hash = "sha256-yIZUsEJvQkxD4gNp4jQRGtEeSTLeSdgFdJs03nvt9ko=";
rev = "2340fd6b57b06ccbf24c2c6dafb15905fdccfb1f";
hash = "sha256-9acxVw5EWr/NwO5ERwy3V976NMY65vDQp60jIoDfO7k=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-c-sharp";
};
@ -292,12 +292,12 @@
};
dart = buildGrammar {
language = "dart";
version = "0.0.0+rev=53485a8";
version = "0.0.0+rev=3abbd3a";
src = fetchFromGitHub {
owner = "UserNobody14";
repo = "tree-sitter-dart";
rev = "53485a8f301254e19c518aa20c80f1bcf7cf5c62";
hash = "sha256-1IcvFcxIkcrOuq6bypD08PeYw6J/pL/MbYPt+dKHQbc=";
rev = "3abbd3a486a1e356acfdf0367dbf3680f8a0024d";
hash = "sha256-+rIUp5mlO0yw/Bj+yxbgKQZlP+QdNf484CsuikZatLw=";
};
meta.homepage = "https://github.com/UserNobody14/tree-sitter-dart";
};
@ -336,12 +336,12 @@
};
dockerfile = buildGrammar {
language = "dockerfile";
version = "0.0.0+rev=8ee3a0f";
version = "0.0.0+rev=fd30df6";
src = fetchFromGitHub {
owner = "camdencheek";
repo = "tree-sitter-dockerfile";
rev = "8ee3a0f7587b2bd8c45c8cb7d28bd414604aec62";
hash = "sha256-I73T3NuN/K9+R3itIJrNVjlyVr/432UT3HEf6LND+0c=";
rev = "fd30df68c4178964ed012ef7f745055db76f8ebf";
hash = "sha256-k5KQ0GfTveXadgQk0xay2QY7uCvFYneQ/0AKwZqAG48=";
};
meta.homepage = "https://github.com/camdencheek/tree-sitter-dockerfile";
};
@ -722,12 +722,12 @@
};
haskell = buildGrammar {
language = "haskell";
version = "0.0.0+rev=3241b68";
version = "0.0.0+rev=684638e";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-haskell";
rev = "3241b683cc1eaa466afb83b9a5592ab39caaa2fa";
hash = "sha256-kGUBAXskVPRQHMwffYLRGO6uD9PNFWZeXkXsmp0yfKA=";
rev = "684638edce563245e4dc6263940aeffa2a0205c2";
hash = "sha256-ewMSd1DpaZEkbjHzUNX3D1CbhNjP47StyyvjU+oVaMM=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-haskell";
};
@ -997,23 +997,23 @@
};
llvm = buildGrammar {
language = "llvm";
version = "0.0.0+rev=e9948ed";
version = "0.0.0+rev=d47c95d";
src = fetchFromGitHub {
owner = "benwilliamgraham";
repo = "tree-sitter-llvm";
rev = "e9948edc41e9e5869af99dddb2b5ff5cc5581af6";
hash = "sha256-M7smrjU+7L9a2kpz0wM+G+YQGTQaqsVL/Q+OCKlPpzQ=";
rev = "d47c95d78ef0e7495a74d214dd6fcddf6e402dfc";
hash = "sha256-CK7f0qSAsec2cuQElXLFRQ5uiQLGCyEpNIKTIDwbBrU=";
};
meta.homepage = "https://github.com/benwilliamgraham/tree-sitter-llvm";
};
lua = buildGrammar {
language = "lua";
version = "0.0.0+rev=0fc8996";
version = "0.0.0+rev=4e94980";
src = fetchFromGitHub {
owner = "MunifTanjim";
repo = "tree-sitter-lua";
rev = "0fc89962b7ff5c7d676b8592c1cbce1ceaa806fd";
hash = "sha256-MbNP1/NKdSkUTydmK819o8vMKUZFan1yE7d227xMsh4=";
rev = "4e94980e52f81f713d09be104ba32bf050000031";
hash = "sha256-Arv627RIv0d/plfBPq5QVks737PUy3sq2kuLwLr++uM=";
};
meta.homepage = "https://github.com/MunifTanjim/tree-sitter-lua";
};

View File

@ -353,6 +353,7 @@ https://github.com/neoclide/jsonc.vim/,,
https://github.com/JuliaEditorSupport/julia-vim/,,
https://github.com/rebelot/kanagawa.nvim/,,
https://github.com/anuvyklack/keymap-layer.nvim/,HEAD,
https://github.com/kmonad/kmonad-vim/,,
https://github.com/b3nj5m1n/kommentary/,,
https://github.com/udalov/kotlin-vim/,,
https://github.com/qnighy/lalrpop.vim/,,

View File

@ -34,14 +34,14 @@ stdenv.mkDerivation (finalAttrs: {
+ lib.optionalString enableQt "-qt"
+ lib.optionalString (!enableQt) "-sdl"
+ lib.optionalString forceWayland "-wayland";
version = "1.14.4";
version = "1.15.2";
src = fetchFromGitHub {
owner = "hrydgard";
repo = "ppsspp";
rev = "v${finalAttrs.version}";
fetchSubmodules = true;
sha256 = "sha256-7xzhN8JIQD4LZg8sQ8rLNYZrW0nCNBfZFgzoKdoWbKc=";
sha256 = "sha256-D42u3MP+JKO/1IrOWVliVg4flUJi/pADScbNktRP+bY=";
};
postPatch = ''

View File

@ -27,13 +27,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "xemu";
version = "0.7.87";
version = "0.7.88";
src = fetchFromGitHub {
owner = "xemu-project";
repo = "xemu";
rev = "v${finalAttrs.version}";
hash = "sha256-NPvyXDrTKt7PIspLPrUBo7qs9hsHV+6u7dQlIqdlQtw=";
hash = "sha256-rV90ISPaipczaJgGj0vAO1IJYDMJpncVGOdllO3Km2k=";
fetchSubmodules = true;
};

View File

@ -127,9 +127,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "chrono"
version = "0.4.23"
version = "0.4.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
dependencies = [
"iana-time-zone",
"num-integer",
@ -306,7 +306,7 @@ dependencies = [
"proc-macro2",
"quote",
"scratch",
"syn",
"syn 1.0.105",
]
[[package]]
@ -323,7 +323,7 @@ checksum = "1362b0ddcfc4eb0a1f57b68bd77dd99f0e826958a96abd0ae9bd092e114ffed6"
dependencies = [
"proc-macro2",
"quote",
"syn",
"syn 1.0.105",
]
[[package]]
@ -371,7 +371,7 @@ checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
[[package]]
name = "felix"
version = "2.2.6"
version = "2.2.7"
dependencies = [
"chrono",
"content_inspector",
@ -409,9 +409,9 @@ dependencies = [
[[package]]
name = "flate2"
version = "1.0.25"
version = "1.0.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841"
checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
dependencies = [
"crc32fast",
"miniz_oxide",
@ -611,9 +611,9 @@ dependencies = [
[[package]]
name = "miniz_oxide"
version = "0.6.2"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
dependencies = [
"adler",
]
@ -796,18 +796,18 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.47"
version = "1.0.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"
checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
version = "1.0.21"
version = "1.0.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
dependencies = [
"proc-macro2",
]
@ -901,22 +901,22 @@ checksum = "9c8132065adcfd6e02db789d9285a0deb2f3fcb04002865ab67d5fb103533898"
[[package]]
name = "serde"
version = "1.0.149"
version = "1.0.162"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "256b9932320c590e707b94576e3cc1f7c9024d0ee6612dfbcf1cb106cbe8e055"
checksum = "71b2f6e1ab5c2b98c05f0f35b236b22e8df7ead6ffbf51d7808da7f8817e7ab6"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
version = "1.0.149"
version = "1.0.162"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4eae9b04cbffdfd550eb462ed33bc6a1b68c935127d008b27444d08380f94e4"
checksum = "a2a0814352fd64b58489904a44ea8d90cb1a91dcb6b4f5ebabc32c8318e93cb6"
dependencies = [
"proc-macro2",
"quote",
"syn",
"syn 2.0.15",
]
[[package]]
@ -1029,6 +1029,17 @@ dependencies = [
"unicode-ident",
]
[[package]]
name = "syn"
version = "2.0.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "syntect"
version = "5.0.0"
@ -1086,7 +1097,7 @@ checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"
dependencies = [
"proc-macro2",
"quote",
"syn",
"syn 1.0.105",
]
[[package]]
@ -1150,12 +1161,11 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
[[package]]
name = "walkdir"
version = "2.3.2"
version = "2.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
dependencies = [
"same-file",
"winapi",
"winapi-util",
]
@ -1186,7 +1196,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
"syn",
"syn 1.0.105",
"wasm-bindgen-shared",
]
@ -1208,7 +1218,7 @@ checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
dependencies = [
"proc-macro2",
"quote",
"syn",
"syn 1.0.105",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@ -1333,9 +1343,9 @@ dependencies = [
[[package]]
name = "zip"
version = "0.6.3"
version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "537ce7411d25e54e8ae21a7ce0b15840e7bfcff15b51d697ec3266cc76bdf080"
checksum = "0445d0fbc924bb93539b4316c11afb121ea39296f99a3c4c9edad09e3658cdef"
dependencies = [
"aes",
"byteorder",

View File

@ -9,13 +9,13 @@
rustPlatform.buildRustPackage rec {
pname = "felix";
version = "2.2.6";
version = "2.2.7";
src = fetchFromGitHub {
owner = "kyoheiu";
repo = pname;
rev = "v${version}";
sha256 = "sha256-t/BCRKqCCXZ76bFYyblNnKHB9y0oJ6ajqsbdIGq/YVM=";
sha256 = "sha256-ShC6V3NAD5Gv5nLG5e6inoOEEpZn4EuQkaRoGn94Z1g=";
};
cargoLock = {
@ -39,8 +39,7 @@ rustPlatform.buildRustPackage rec {
checkFlags = [
# extra test files not shipped with the repository
"--skip=functions::tests::test_list_up_contents"
"--skip=magic_image::tests::test_inspect_image"
"--skip=magic_packed::tests::test_inspect_signature"
"--skip=state::tests::test_has_write_permission"
];
meta = with lib; {

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,94 @@
{ lib
, cmake
, dbus
, fetchFromGitHub
, fetchYarnDeps
, freetype
, gtk3
, libsoup
, mkYarnPackage
, openssl
, pkg-config
, rustPlatform
, webkitgtk
}:
let
pname = "xplorer";
version = "unstable-2023-03-19";
src = fetchFromGitHub {
owner = "kimlimjustin";
repo = pname;
rev = "8d69a281cbceda277958796cb6b77669fb062ee3";
sha256 = "sha256-VFRdkSfe2mERaYYtZlg9dvH1loGWVBGwiTRj4AoNEAo=";
};
frontend-build = mkYarnPackage {
inherit version src;
pname = "xplorer-ui";
offlineCache = fetchYarnDeps {
yarnLock = src + "/yarn.lock";
sha256 = "sha256-H37vD0GTSsWV5UH7C6UANDWnExTGh8yqajLn3y7P2T8=";
};
packageJSON = ./package.json;
buildPhase = ''
export HOME=$(mktemp -d)
yarn --offline run prebuild
cp -r deps/xplorer/out $out
'';
distPhase = "true";
dontInstall = true;
};
in
rustPlatform.buildRustPackage {
inherit version src pname;
sourceRoot = "source/src-tauri";
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"tauri-plugin-window-state-0.1.0" = "sha256-DkKiwBwc9jrxMaKWOyvl9nsBJW0jBe8qjtqIdKJmsnc=";
"window-shadows-0.2.0" = "sha256-e1afzVjVUHtckMNQjcbtEQM0md+wPWj0YecbFvD0LKE=";
"window-vibrancy-0.3.0" = "sha256-0psa9ZtdI0T6sC1RJ4GeI3w01FdO2Zjypuk9idI5pBY=";
};
};
# copy the frontend static resources to final build directory
# Also modify tauri.conf.json so that it expects the resources at the new location
postPatch = ''
cp ${./Cargo.lock} Cargo.lock
mkdir -p frontend-build
cp -R ${frontend-build}/src frontend-build
substituteInPlace tauri.conf.json --replace '"distDir": "../out/src",' '"distDir": "frontend-build/src",'
'';
buildInputs = [ dbus openssl freetype libsoup gtk3 webkitgtk cmake ];
nativeBuildInputs = [ pkg-config ];
checkFlags = [
# tries to mutate the parent directory
"--skip=test_file_operation"
];
postInstall = ''
mv $out/bin/app $out/bin/xplorer
'';
meta = with lib; {
description = "A customizable, modern file manager";
homepage = "https://xplorer.space";
license = licenses.asl20;
maintainers = with maintainers; [ dit7ya ];
};
}

View File

@ -0,0 +1,88 @@
{
"name": "xplorer",
"description": "Xplorer, a customizable, modern file manager",
"version": "0.3.1",
"author": "Justin Maximillian Kimlim <kimlimjustin@gmail.com>",
"icon": "build/icon.icns",
"private": true,
"homepage": "https://xplorer.space",
"repository": {
"type": "git",
"url": "https://github.com/kimlimjustin/xplorer.git"
},
"os": ["darwin", "win32", "linux"],
"scripts": {
"start": "yarn dev",
"web": "concurrently \"cd api/web && cargo run\" \"live-server ./out/src --no-browser\"",
"dev": "yarn compile && concurrently --kill-others \"yarn compile:watch\" \"yarn sass:watch\" \"yarn web\" \"tauri dev\"",
"clean": "rimraf out",
"sass": "sass src/Public/style.scss out/src/Public/style.css",
"sass:watch": "node scripts/sass-watcher.js",
"docs": "yarn --cwd ./docs start",
"pretest": "yarn compile",
"test": "jest",
"copyfiles": "node scripts/copyfiles",
"compile": "webpack && yarn sass && yarn copyfiles",
"compile:watch": "webpack --watch",
"crowdin": "crowdin",
"crowdin:pull": "crowdin pull",
"postcrowdin:pull": "node scripts/post_crowdin_pull.js",
"crowdin:sync": "yarn --cwd ./docs write-translations && crowdin upload && crowdin download",
"lint": "eslint -c .eslintrc.yml --ext .ts ./src",
"prettier": "prettier --write src",
"grunt": "grunt",
"css:minify": "cleancss --batch --batch-suffix \"\" out/**/*.css ",
"prebuild": "yarn compile && yarn grunt && yarn css:minify",
"build": "tauri build",
"postinstall": "husky install",
"fakefiles": "python scripts/generate-fake-files.py 1000"
},
"workspaces": ["packages/*"],
"keywords": [
"Xplorer",
"File explorer",
"File",
"File manager",
"Folders",
"Directory"
],
"license": "Apache-2.0",
"devDependencies": {
"@crowdin/cli": "^3.6.5",
"@tauri-apps/cli": "^1.1.1",
"@types/jest": "^27.0.2",
"@types/marked": "^4.0.1",
"@typescript-eslint/eslint-plugin": "^5.4.0",
"@typescript-eslint/parser": "^5.4.0",
"buffer": "^6.0.3",
"clean-css-cli": "^5.3.3",
"concurrently": "^6.2.1",
"cpy": "^8.1.2",
"eslint": "^8.2.0",
"grunt": "^1.4.1",
"grunt-cli": "^1.4.3",
"grunt-contrib-uglify": "^5.0.1",
"grunt-contrib-watch": "^1.1.0",
"husky": "^7.0.2",
"jest": "^27.1.0",
"live-server": "^1.2.1",
"node-watch": "^0.7.1",
"postinstall-postinstall": "^2.1.0",
"prettier": "2.5.1",
"rimraf": "^3.0.2",
"sass": "1.45.2",
"ts-jest": "^27.0.7",
"ts-loader": "^9.2.6",
"typescript": "^4.4.2",
"webpack": "^5.58.2",
"webpack-cli": "^4.9.0"
},
"dependencies": {
"@tauri-apps/api": "^1.1.0",
"highlight.js": "^11.2.0",
"mammoth": "^1.4.18",
"marked": "^4.0.15",
"xlsx": "^0.17.1"
},
"optionalDependencies": {}
}

View File

@ -14,19 +14,19 @@
stdenv.mkDerivation rec {
pname = "drawio";
version = "21.2.1";
version = "21.2.8";
src = fetchFromGitHub {
owner = "jgraph";
repo = "drawio-desktop";
rev = "v${version}";
fetchSubmodules = true;
hash = "sha256-sjJZwVQdFAMWdaGUyQbv1qfdJWE2tN90z7eFYyAW9ko=";
hash = "sha256-XXtAd29r161rcamZM8QnkJ9mhQeJvqTL4Escdu95me8=";
};
offlineCache = fetchYarnDeps {
yarnLock = src + "/yarn.lock";
hash = "sha256-YlJ84psoEgeDnCX+O8TvwqhTthm5voJ6dfTvTiZlkuk=";
hash = "sha256-H77BfiH3Nqi1a2Uek8N8BgODzMBGgXrBvrcahrKisNo=";
};
nativeBuildInputs = [

View File

@ -15,13 +15,13 @@
stdenv.mkDerivation rec {
pname = "asn";
version = "0.73.2";
version = "0.73.3";
src = fetchFromGitHub {
owner = "nitefood";
repo = "asn";
rev = "v${version}";
sha256 = "sha256-aswssP2l7NdjUEwXO2v0nEiZCk6kArnZA3Jch59W+yA=";
sha256 = "sha256-O0Iu+7UAAf+v0gZdGTdBpdn9BZ/9OqTAA/u0WDiz9s8=";
};
nativeBuildInputs = [ makeWrapper ];

View File

@ -1,5 +1,4 @@
{ newScope, config, stdenv, fetchurl, makeWrapper
, llvmPackages_15
, llvmPackages_16
, ed, gnugrep, coreutils, xdg-utils
, glib, gtk3, gtk4, gnome, gsettings-desktop-schemas, gn, fetchgit
@ -19,7 +18,7 @@
}:
let
llvmPackages = llvmPackages_15;
llvmPackages = llvmPackages_16;
stdenv = llvmPackages.stdenv;
upstream-info = (lib.importJSON ./upstream-info.json).${channel};
@ -54,9 +53,6 @@ let
inherit (upstream-info.deps.gn) url rev sha256;
};
});
} // lib.optionalAttrs (chromiumVersionAtLeast "113") rec {
llvmPackages = llvmPackages_16;
stdenv = llvmPackages_16.stdenv;
});
browser = callPackage ./browser.nix {

View File

@ -45,19 +45,19 @@
}
},
"ungoogled-chromium": {
"version": "112.0.5615.165",
"sha256": "1zbrgkzcb211y1mvi9g35421dnp5bskkczwnpygzja7lm7z6530n",
"sha256bin64": "16da3zi0qy2nc92jf90zvncss3xk9ggiys3ld9j0ghbsrs1jxbvm",
"version": "113.0.5672.64",
"sha256": "0knw3i37hh874ycjlc8bl68wdhyqhma5pn7alwa6254qr5dkci9h",
"sha256bin64": null,
"deps": {
"gn": {
"version": "2023-02-17",
"version": "2023-03-18",
"url": "https://gn.googlesource.com/gn",
"rev": "b25a2f8c2d33f02082f0f258350f5e22c0973108",
"sha256": "075p4jwk1apvwmqmvhwfw5f669ci7nxwjq9mz5aa2g5lz4fkdm4c"
"rev": "41fef642de70ecdcaaa26be96d56a0398f95abd4",
"sha256": "12w4g2dl58283allclpi1c4i6ih9v2xvdb9hpbmfda12v8lizmlq"
},
"ungoogled-patches": {
"rev": "112.0.5615.165-1",
"sha256": "1q2870z4k2hkn3jh24xc0xiadd1sxc4apn1jz740yzlwsi6jmcgw"
"rev": "113.0.5672.64-1",
"sha256": "0xvgq6971qvvn0cf4z5wkfabhm7dsx2f68npfl4y2nix7hwfs6lq"
}
}
}

View File

@ -76,14 +76,14 @@ let
++ lib.optionals mediaSupport [ ffmpeg ]
);
tag = "mullvad-browser-102.9.0esr-12.0-2-build1";
version = "12.0.4";
tag = "mullvad-browser-102.10.0esr-12.0-2-build2";
version = "12.0.5";
lang = "ALL";
srcs = {
x86_64-linux = fetchurl {
url = "https://github.com/mullvad/mullvad-browser/releases/download/${tag}/mullvad-browser-linux64-${version}_${lang}.tar.xz";
hash = "sha256-q4dTKNQkcqaRwiF25iVOQSvwVLA3tJRlQ4DzC3tuG5A=";
hash = "sha256-Ezs2pjJNGOinMIskBDwpj70eKSkfcV6ZCKb60I5J23w=";
};
};

View File

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "arkade";
version = "0.9.13";
version = "0.9.16";
src = fetchFromGitHub {
owner = "alexellis";
repo = "arkade";
rev = version;
sha256 = "sha256-j7fqLkVRAH4EN90IQ/9y/uKfFsdXXTW6R/WFRhuKPGQ=";
sha256 = "sha256-HbwajFTCjiNtAMawI7uBZhIBGyVHUQQjsOrtuxuYmeM=";
};
CGO_ENABLED = 0;

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "civo";
version = "1.0.50";
version = "1.0.53";
src = fetchFromGitHub {
owner = "civo";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-w1Ozj9zmeGzuokX0LgHab5TI0WcdtY29n7w4LfOWthI=";
sha256 = "sha256-UE83fnP2cJuRWwyAkZhaF9N64q2Cw4oR/TTnvPbDSxc=";
};
vendorHash = "sha256-7I4V4DVdHSvr/1ic/YT+Vttreg0tFasRNT/aFe4/0OY=";
vendorHash = "sha256-c6Bx/+zyhvV9B1nZ7dJdIsNRSoWeHc2eE81V7Mbkwds=";
nativeBuildInputs = [ installShellFiles ];

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "clusterctl";
version = "1.4.1";
version = "1.4.2";
src = fetchFromGitHub {
owner = "kubernetes-sigs";
repo = "cluster-api";
rev = "v${version}";
hash = "sha256-ST/3zoZgeG0P8TwxHEKucZ7DHoD6e6Qx47jv6e+r4Rs=";
hash = "sha256-NvCQs6YzQ2zNLQiYgFK/q2c74g/+YkzQIQJWEINOYIE=";
};
vendorHash = "sha256-ZJFpzBeC048RZ6YfjXQPyohCO1WagxXvBBacifkfkjE=";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kubeshark";
version = "40.0";
version = "40.1";
src = fetchFromGitHub {
owner = "kubeshark";
repo = "kubeshark";
rev = version;
sha256 = "sha256-Tmk9xbAqEsJ8nffRX6qw3RKKoBbSO2gmVT5Ff4Cn9DA=";
sha256 = "sha256-hRAV8Nnph52Q7fdvW68Ma4DUM0lQdL6e0v1reR/G9Fs=";
};
vendorHash = "sha256-ckIjmrXkn1AVBQRwM6+wdRwwYHytxKm3rKEe+csORdU=";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "pachyderm";
version = "2.5.4";
version = "2.5.5";
src = fetchFromGitHub {
owner = "pachyderm";
repo = "pachyderm";
rev = "v${version}";
hash = "sha256-VYHSExQDIyK86kCz3gzIR+Q5iYrhkAPx56vST73vPOo=";
hash = "sha256-RaMOn5Cb98wKI9w0+kVUCMiySKGuudXHsi+EXFIm3Zc=";
};
vendorHash = "sha256-XmIPifozTYd1rV2wm0dU0GPvg/+HFoSLGHB6DDrkzVc=";

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "rke2";
version = "1.26.4+rke2r1";
version = "1.27.1+rke2r1";
src = fetchFromGitHub {
owner = "rancher";
repo = pname;
rev = "v${version}";
hash = "sha256-orxRyCgj3pGLlBoUEjVpyWKw4zfvN4DtaymYKEBXNbs=";
hash = "sha256-MPhE4dkFDLMG/Zxn9UqUMmbV95wfNDJU9C5CT8Ap5iA=";
};
vendorHash = "sha256-YeWyMEwatKuT4FWIpaDK6/xo5TG5IOecoYR+uVidOW4=";
vendorHash = "sha256-STpM7GxLdEhe7tfa6n6jyUSQsE9D91pCBvw1n7Q9qMc=";
subPackages = [ "." ];

View File

@ -110,13 +110,13 @@
"vendorHash": null
},
"aws": {
"hash": "sha256-cmE7jJO49CuYdiKjrPaHhNCFoMbT0z4uSnFdC7Fnd9g=",
"hash": "sha256-oD8I7wWLdn9Yv6naRcq0myg1L2DcvP/a6VL/fUfdC+g=",
"homepage": "https://registry.terraform.io/providers/hashicorp/aws",
"owner": "hashicorp",
"repo": "terraform-provider-aws",
"rev": "v4.65.0",
"rev": "v4.66.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-UvbuWjxlou7lwvU5D6DaEXuCFvn8ECTbkNvKGrHwsu8="
"vendorHash": "sha256-tetNRSjQTgFzFLSdmRL6f+UlwKp62zr00JzFXJs8nMs="
},
"azuread": {
"hash": "sha256-YdlH1c2Oeu9wDiZvlzgYhY8CvWCMM3W/ilEkTU3mR1k=",
@ -566,13 +566,13 @@
"vendorHash": null
},
"ibm": {
"hash": "sha256-YIabiu1o2+gJ6ZK5F1PRnVqKP3gbhD96FkDfytX8Hak=",
"hash": "sha256-0ZIm6OTVTfbWcPMWsLNxmD3QDDbB72lvwsISkiWzcFQ=",
"homepage": "https://registry.terraform.io/providers/IBM-Cloud/ibm",
"owner": "IBM-Cloud",
"repo": "terraform-provider-ibm",
"rev": "v1.52.1",
"rev": "v1.53.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-BTt21bR4kgzyAuS3flalgOJuRxVPwwNOIR2nj2zdw9E="
"vendorHash": "sha256-bcCiNWwVSLI3F3ikTx8z/TtkbgjLAB8puSFTC9LTEMU="
},
"icinga2": {
"hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
@ -819,13 +819,13 @@
"vendorHash": null
},
"okta": {
"hash": "sha256-pSGoD4WSfw6lTJTn/Yf8k60CtbPjZeEPJ7mH1c6cRD0=",
"hash": "sha256-NUczAdOYpqpHGpE2OaJtziggA5o+CUYSq2F/RkTL7YU=",
"homepage": "https://registry.terraform.io/providers/okta/okta",
"owner": "okta",
"repo": "terraform-provider-okta",
"rev": "v3.46.0",
"rev": "v4.0.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-DkC4BmFfckBtT12lr3rgU9Mg4Nb+7sXjDT/EdfbSFQM="
"vendorHash": "sha256-LjYPZaF8vy1WUNeI/TFIDjVh08sxf6nKLpvmQsCQFFo="
},
"oktaasa": {
"hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
@ -855,13 +855,13 @@
"vendorHash": "sha256-62q67aaOZA3fQmyL8bEHB+W497bcx9Xy7kKrbkjkbaI="
},
"opentelekomcloud": {
"hash": "sha256-bRvs4IxnUObX/ChPdCn97VUQSxTjV2tfnmBmWmgAXUA=",
"hash": "sha256-WgddD3gy8pTRAtkh6FHqFzN15aLkFz7KnPFUN0MS56Q=",
"homepage": "https://registry.terraform.io/providers/opentelekomcloud/opentelekomcloud",
"owner": "opentelekomcloud",
"repo": "terraform-provider-opentelekomcloud",
"rev": "v1.34.2",
"rev": "v1.34.3",
"spdx": "MPL-2.0",
"vendorHash": "sha256-VEreMBvqvBGUZz5EY5+0jbNDOVbmhYerfLYGa1rl+aw="
"vendorHash": "sha256-2EuGZxHrpPwDicSrIf/Jx/c4LhOtE5HvTz9LkJ4xCSY="
},
"opsgenie": {
"hash": "sha256-Wbe+DyK5wKuZZX8yd3DJN+2wT8KZt+YsBwJYKnZnfcI=",
@ -1180,12 +1180,12 @@
"vendorHash": "sha256-bNE5HxOcj0K2vdqWPVECeTojnWz0hF9mw0TnRRBhqkQ="
},
"vault": {
"hash": "sha256-etQTHPZ1bngVMpeQ/IZ8yaoe94ZPNT2IG4ip4d+73Xg=",
"hash": "sha256-eTHdmow16TJ/uJ4M5yFiYrwuYo4kYSnkPXymxAYVjuw=",
"homepage": "https://registry.terraform.io/providers/hashicorp/vault",
"owner": "hashicorp",
"proxyVendor": true,
"repo": "terraform-provider-vault",
"rev": "v3.15.1",
"rev": "v3.15.2",
"spdx": "MPL-2.0",
"vendorHash": "sha256-Ox8Onq44NdE/KMrmzbOpKetJKww9T2PvEliLbWU/bLU="
},
@ -1235,11 +1235,11 @@
"vendorHash": "sha256-guUjkk7oW+Gvu015LUAxGqUwZF4H+4xmmOaMqKixZaI="
},
"vultr": {
"hash": "sha256-QZYuxtY89ldGUPNz/DJlFU6HWUJgeJC2TM6cSDoeaYc=",
"hash": "sha256-4Um4UyDjtamy2s15K3Idm5edZj5BOy13+kr39wl9e0Q=",
"homepage": "https://registry.terraform.io/providers/vultr/vultr",
"owner": "vultr",
"repo": "terraform-provider-vultr",
"rev": "v2.14.1",
"rev": "v2.15.0",
"spdx": "MPL-2.0",
"vendorHash": null
},
@ -1253,13 +1253,13 @@
"vendorHash": "sha256-itSr5HHjus6G0t5/KFs0sNiredH9m3JnQ3siLtm+NHs="
},
"yandex": {
"hash": "sha256-UFAWifGu/3QKH8JLBYObLhO/PdCQ1f5e9hmehF8grak=",
"hash": "sha256-ij/KKv/e3KzT5c5KbsW7LszsqzVgwPF2jrnRFOw0uxw=",
"homepage": "https://registry.terraform.io/providers/yandex-cloud/yandex",
"owner": "yandex-cloud",
"proxyVendor": true,
"repo": "terraform-provider-yandex",
"rev": "v0.89.0",
"rev": "v0.90.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-RfSPCBDb4crv6GZPhsVSQOWnZ3xHa/VWln5pSg68Exg="
"vendorHash": "sha256-5pzIvNVgfFT4j18JNHxJ5ZappuS9nFjlpPC3dcsIQRQ="
}
}

View File

@ -4,10 +4,12 @@ let
stable = "0.0.26";
ptb = "0.0.42";
canary = "0.0.151";
development = "0.0.216";
} else {
stable = "0.0.273";
ptb = "0.0.59";
canary = "0.0.283";
development = "0.0.8778";
};
version = versions.${branch};
srcs = rec {
@ -24,6 +26,10 @@ let
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
sha256 = "sha256-ZN+lEGtSajgYsyMoGRmyTZCpUGVmb9LKgVv89NA4m7U=";
};
development = fetchurl {
url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
sha256 = "sha256-lQnIQC7Wek7OYDzZvLIJfb8I4oATD8pSB+mjQMPyqYQ=";
};
};
x86_64-darwin = {
stable = fetchurl {
@ -38,6 +44,10 @@ let
url = "https://dl-canary.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
sha256 = "0mqpk1szp46mih95x42ld32rrspc6jx1j7qdaxf01whzb3d4pi9l";
};
development = fetchurl {
url = "https://dl-development.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";
sha256 = "sha256-K4rlShYhmsjT2QHjb6+IbCXJFK+9REIx/gW68bcVSVc=";
};
};
aarch64-darwin = x86_64-darwin;
};
@ -49,7 +59,7 @@ let
downloadPage = "https://discordapp.com/download";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
maintainers = with maintainers; [ MP2E artturin infinidoge ];
maintainers = with maintainers; [ MP2E artturin infinidoge jopejoe1 ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" ];
};
package =
@ -83,6 +93,11 @@ let
binaryName = if stdenv.isLinux then "DiscordCanary" else desktopName;
desktopName = "Discord Canary";
};
development = rec {
pname = "discord-development";
binaryName = if stdenv.isLinux then "DiscordDevelopment" else desktopName;
desktopName = "Discord Development";
};
}
);
in

View File

@ -17,13 +17,13 @@
stdenv.mkDerivation rec {
pname = "teams-for-linux";
version = "1.0.65";
version = "1.0.83";
src = fetchFromGitHub {
owner = "IsmaelMartinez";
repo = pname;
rev = "v${version}";
sha256 = "sha256-Rj6A1h5R4w8zacoTV0WKTbTD67qwsw4zHP+KQ6h7/gs=";
sha256 = "sha256-2tCBFc4CEgaYJq5fMbHi+M/Cz5Eeo2Slqgu9xUUkUjA=";
};
offlineCache = fetchYarnDeps {

View File

@ -1,4 +1,4 @@
{ pkgs, nodejs_16, stdenv, lib, nixosTests }:
{ pkgs, stdenv, lib, nixosTests }:
let
nodePackages = import ./node-composition.nix {
@ -13,6 +13,7 @@ nodePackages.n8n.override {
buildInputs = [
pkgs.postgresql
pkgs.libmongocrypt
];
# Oracle's official package on npm is binary only (WHY?!) and doesn't provide binaries for aarch64.
@ -24,6 +25,9 @@ nodePackages.n8n.override {
rm -rf node_modules/oracledb
'';
# makes libmongocrypt bindings not look for static libraries in completely wrong places
BUILD_TYPE = "dynamic";
dontNpmInstall = true;
passthru = {

View File

@ -530,12 +530,15 @@ let
then
ln -s $out/lib/node_modules/.bin $out/bin
# Patch the shebang lines of all the executables
# Fixup all executables
ls $out/bin/* | while read i
do
file="$(readlink -f "$i")"
chmod u+rwx "$file"
patchShebangs "$file"
if isScript "$file"
then
sed -i 's/\r$//' "$file" # convert crlf to lf
fi
done
fi

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,5 @@
{ lib
, stdenv
, fetchFromGitHub
, mkDerivation
, pkg-config
@ -7,12 +8,13 @@
, callPackage
, qtbase
, qtkeychain
, wrapQtAppsHook
, qttools
, sqlite
, libsecret
}:
mkDerivation rec {
stdenv.mkDerivation rec {
pname = "owncloud-client";
version = "3.2.1";
@ -25,12 +27,8 @@ mkDerivation rec {
hash = "sha256-39tpvzlTy3KRxg8DzCQW2VnsaLqJ+dNQRur2TqRZytE=";
};
nativeBuildInputs = [ pkg-config cmake extra-cmake-modules ];
buildInputs = [ qtbase qttools qtkeychain sqlite libsecret libregraph ];
qtWrapperArgs = [
"--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libsecret ]}"
];
nativeBuildInputs = [ pkg-config cmake extra-cmake-modules wrapQtAppsHook qttools ];
buildInputs = [ qtbase qtkeychain sqlite libsecret libregraph ];
cmakeFlags = [
"-UCMAKE_INSTALL_LIBDIR"

View File

@ -1,11 +1,12 @@
{ lib
, stdenv
, fetchFromGitHub
, mkDerivation
, cmake
, qtbase
, wrapQtAppsHook
}:
mkDerivation rec {
stdenv.mkDerivation rec {
pname = "libre-graph-api-cpp-qt-client";
version = "0.13.2";
@ -18,7 +19,7 @@ mkDerivation rec {
sourceRoot = "source/client";
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [ cmake wrapQtAppsHook ];
buildInputs = [ qtbase ];
cmakeFlags = [ ];

View File

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, buildGoModule, installShellFiles, testers, gh }:
{ lib, fetchFromGitHub, buildGoModule, installShellFiles, stdenv, testers, gh }:
buildGoModule rec {
pname = "gh";
@ -15,27 +15,23 @@ buildGoModule rec {
nativeBuildInputs = [ installShellFiles ];
# upstream unsets these to handle cross but it breaks our build
postPatch = ''
substituteInPlace Makefile \
--replace "GOOS= GOARCH= GOARM= GOFLAGS= CGO_ENABLED=" ""
'';
buildPhase = ''
runHook preBuild
make GO_LDFLAGS="-s -w" GH_VERSION=${version} bin/gh manpages
make GO_LDFLAGS="-s -w" GH_VERSION=${version} bin/gh ${lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) "manpages"}
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dm755 bin/gh -t $out/bin
'' + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installManPage share/man/*/*.[1-9]
installShellCompletion --cmd gh \
--bash <($out/bin/gh completion -s bash) \
--fish <($out/bin/gh completion -s fish) \
--zsh <($out/bin/gh completion -s zsh)
'' + ''
runHook postInstall
'';

View File

@ -12,13 +12,13 @@
buildPythonApplication rec {
pname = "git-machete";
version = "3.17.1";
version = "3.17.3";
src = fetchFromGitHub {
owner = "virtuslab";
repo = pname;
rev = "v${version}";
hash = "sha256-UpByKN2L0g42ProwHNRxPw6ggxyDVTUZfWRF+TpUVKc=";
hash = "sha256-XBgYLrbxHE5czcEzYhX4ORQFtyKHcDw3VmZVx2TtycI=";
};
nativeBuildInputs = [ installShellFiles ];

View File

@ -19,12 +19,12 @@
buildGoModule rec {
pname = "gitea";
version = "1.19.2";
version = "1.19.3";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl {
url = "https://dl.gitea.io/gitea/${version}/gitea-src-${version}.tar.gz";
hash = "sha256-L0wedLLQ8NBiw7JQ5AiFa+kQb+Vg0jnBtSGtgIknIDg=";
url = "https://dl.gitea.com/gitea/${version}/gitea-src-${version}.tar.gz";
hash = "sha256-rSvBeSnJ356Yba7tZXg0S11ZRzYmF3xnOl4ZUJ8XQYw=";
};
vendorHash = null;

View File

@ -1,14 +1,14 @@
{
"version": "15.11.1",
"repo_hash": "sha256-xhwWn/+GSAKYy5YcjgIUPJUvhBquvCWu6eFg5ZiNM7s=",
"version": "15.11.2",
"repo_hash": "sha256-4wdbe/DkZdfmOuKHlmBEKQYYduIaB1SD5ZYICHqADeE=",
"yarn_hash": "02ipm7agjy3c75df76c00k3qq5gpw3d876f6x91xnwizswsv9agb",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v15.11.1-ee",
"rev": "v15.11.2-ee",
"passthru": {
"GITALY_SERVER_VERSION": "15.11.1",
"GITLAB_PAGES_VERSION": "15.11.1",
"GITALY_SERVER_VERSION": "15.11.2",
"GITLAB_PAGES_VERSION": "15.11.2",
"GITLAB_SHELL_VERSION": "14.18.0",
"GITLAB_WORKHORSE_VERSION": "15.11.1"
"GITLAB_WORKHORSE_VERSION": "15.11.2"
}
}

View File

@ -11,7 +11,7 @@ let
gemdir = ./.;
};
version = "15.11.1";
version = "15.11.2";
package_version = "v${lib.versions.major version}";
gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
@ -22,7 +22,7 @@ let
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
sha256 = "sha256-D12R9liFsrH0XwGSLkmhCbWMbPXrp0kzus4t4Kuw4cg=";
sha256 = "sha256-yX93YHHajXqAQq93mM/bRCQciDfJ0GR3kLSO4MQsWPY=";
};
vendorSha256 = "sha256-gJelagGPogeCdJtRpj4RaYlqzZRhtU0EIhmj1aK4ZOk=";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "gitlab-pages";
version = "15.11.1";
version = "15.11.2";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-pages";
rev = "v${version}";
sha256 = "sha256-BPChY2t0ygH73XZYDWDb0EVPqrniMxzg3JWgcmsAesA=";
sha256 = "sha256-c5brpl9OEW4N8vmphdCRYl5TGkMN3FmXmINPpyEajUs=";
};
vendorHash = "sha256-s3HHoz9URACuVVhePQQFviTqlQU7vCLOjTJPBlus1Vo=";

View File

@ -5,7 +5,7 @@ in
buildGoModule rec {
pname = "gitlab-workhorse";
version = "15.11.1";
version = "15.11.2";
src = fetchFromGitLab {
owner = data.owner;

View File

@ -0,0 +1,28 @@
{ lib, buildKodiAddon, fetchFromGitHub, addonUpdateScript }:
buildKodiAddon rec {
pname = "infotagger";
namespace = "script.module.infotagger";
version = "0.0.7";
src = fetchFromGitHub {
owner = "jurialmunkey";
repo = namespace;
rev = "v${version}";
hash = "sha256-Us7ud0QORGn+ALB4uyISekp0kUYY8nN8uFNg8MlxEB0=";
};
passthru = {
# Unusual Python path.
pythonPath = "resources/modules";
updateScript = addonUpdateScript {
attrPath = "kodi.packages.infotagger";
};
};
meta = with lib; {
homepage = "https://github.com/jurialmunkey/script.module.infotagger";
description = "Wrapper for new Nexus InfoTagVideo ListItem methods to maintain backwards compatibility";
license = licenses.gpl3Plus;
maintainers = teams.kodi.members;
};
}

View File

@ -1,4 +1,4 @@
{ lib, buildKodiAddon, fetchzip, addonUpdateScript, six, requests, inputstreamhelper }:
{ lib, buildKodiAddon, fetchzip, addonUpdateScript, six, requests, infotagger, inputstreamhelper }:
buildKodiAddon rec {
pname = "youtube";
@ -13,6 +13,7 @@ buildKodiAddon rec {
propagatedBuildInputs = [
six
requests
infotagger
inputstreamhelper
];

View File

@ -3,6 +3,9 @@
, secureBoot ? false
, httpSupport ? false
, tpmSupport ? false
, tlsSupport ? false
, debug ? false
, sourceDebug ? debug
}:
assert csmSupport -> seabios != null;
@ -41,11 +44,17 @@ edk2.mkDerivation projectDscPath (finalAttrs: {
hardeningDisable = [ "format" "stackprotector" "pic" "fortify" ];
buildFlags =
lib.optionals secureBoot [ "-D SECURE_BOOT_ENABLE=TRUE" ]
# IPv6 has no reason to be disabled.
[ "-D NETWORK_IP6_ENABLE=TRUE" ]
++ lib.optionals debug [ "-D DEBUG_ON_SERIAL_PORT=TRUE" ]
++ lib.optionals sourceDebug [ "-D SOURCE_DEBUG_ENABLE=TRUE" ]
++ lib.optionals secureBoot [ "-D SECURE_BOOT_ENABLE=TRUE" ]
++ lib.optionals csmSupport [ "-D CSM_ENABLE" "-D FD_SIZE_2MB" ]
++ lib.optionals httpSupport [ "-D NETWORK_HTTP_ENABLE=TRUE" "-D NETWORK_HTTP_BOOT_ENABLE=TRUE" ]
++ lib.optionals tlsSupport [ "-D NETWORK_TLS_ENABLE=TRUE" ]
++ lib.optionals tpmSupport [ "-D TPM_ENABLE" "-D TPM2_ENABLE" "-D TPM2_CONFIG_ENABLE"];
buildConfig = if debug then "DEBUG" else "RELEASE";
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Qunused-arguments";
env.PYTHON_COMMAND = "python3";

View File

@ -2,13 +2,13 @@
stdenvNoCC.mkDerivation rec {
pname = "numix-icon-theme-circle";
version = "23.04.20";
version = "23.04.28";
src = fetchFromGitHub {
owner = "numixproject";
repo = pname;
rev = version;
sha256 = "sha256-pc5GwxU4KP6PktPvuCYVzJORVmMvC8GdBPr7QSN2cM0=";
sha256 = "sha256-GxTxywN5+CL/+21xhfCvbxJeGnDNjYrQ7iUd2/eq+QU=";
};
nativeBuildInputs = [ gtk3 ];

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "ddccontrol-db";
version = "20230328";
version = "20230424";
src = fetchFromGitHub {
owner = "ddccontrol";
repo = pname;
rev = version;
sha256 = "sha256-74HZqgIEDCKeByPFsuUy3A9zutc5ALNxCrRipi7nbI4=";
sha256 = "sha256-qi6dDh6Zk1GpHBpQ+aatAmG9lCdesnJRhK3jVjKYKcQ=";
};
nativeBuildInputs = [ autoreconfHook intltool ];

View File

@ -0,0 +1,63 @@
{
stdenv,
fetchurl,
lib,
unzip,
# To select only certain themes, pass `selected_themes` as a list of strings.
# reference ./shas.nix for available themes
selected_themes ? [],
}: let
version = "2020-12-28";
# this file is generated via ./update.sh
# borrowed from pkgs/data/fonts/nerdfonts
themeShas = import ./shas.nix;
knownThemes = builtins.attrNames themeShas;
selectedThemes =
if (selected_themes == [])
then knownThemes
else let
unknown = lib.subtractLists knownThemes selected_themes;
in
if (unknown != [])
then throw "Unknown theme(s): ${lib.concatStringsSep " " unknown}"
else selected_themes;
srcs = lib.lists.forEach selectedThemes (
name: (fetchurl {
url = themeShas.${name}.url;
sha256 = themeShas.${name}.sha;
})
);
in
stdenv.mkDerivation {
pname = "adi1090x-plymouth-themes";
inherit version srcs;
nativeBuildInputs = [
unzip
];
sourceRoot = ".";
unpackCmd = "tar xzf $curSrc";
installPhase = ''
mkdir -p $out/share/plymouth/themes
for theme in ${toString selectedThemes}; do
mv $theme $out/share/plymouth/themes/$theme
done
find $out/share/plymouth/themes/ -name \*.plymouth -exec sed -i "s@\/usr\/@$out\/@" {} \;
'';
meta = with lib; {
description = "Plymouth boot themes from adi1090x";
longDescription = ''
A variety of plymouth boot screens by adi1090x. Using the default value
of `selected_themes` will install all themes (~524M). Consider overriding
this with a list of the string names of each theme to install. Check
./shas.nix for available themes.
'';
homepage = "https://github.com/adi1090x/plymouth-themes";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [slwst];
};
}

View File

@ -0,0 +1,322 @@
{
"abstract_ring" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/abstract_ring.tar.gz";
sha = "133gifr4571b14ci44jmm49j91yhq785yx4b3h6yvx0188liibr2";
};
"abstract_ring_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/abstract_ring_alt.tar.gz";
sha = "157yg2y4vfwjfly2paq2xn1p6h2wrbvvzwy4lbpbhlmhyhrymjvj";
};
"alienware" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/alienware.tar.gz";
sha = "1i3i0gj927drbgivcx3fqj6fqdwm2gqy0wrwfkdqdjyqzq1286a5";
};
"angular" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/angular.tar.gz";
sha = "06n3ix7k8zpraqc75wy4fnk1bzcyhfajjxjq9kyy470wgsjrw6p4";
};
"angular_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/angular_alt.tar.gz";
sha = "1l1iy9p0k4a8mcdps30avscjp6wfv20m9zy376r18y7xwcz19qbj";
};
"black_hud" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/black_hud.tar.gz";
sha = "13y32zxcshnfyjxs0r7f1sz010sr6brsaap90im2cb4rlvp0ajsz";
};
"blockchain" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/blockchain.tar.gz";
sha = "1f60nvrk506bqw47g90wzbvn3bp5h1gbi0ll5f3bd6wj77qfk05i";
};
"circle" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/circle.tar.gz";
sha = "04085lkh4i5diszpr1w5xnhnngp8ba1ckalcjj5s8hm8lk6wd4nc";
};
"circle_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/circle_alt.tar.gz";
sha = "0awbjrd31fv2cb0q7n58h5iji29di8n550bmpz5qdg6xn55baqqx";
};
"circle_flow" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/circle_flow.tar.gz";
sha = "0ffxgjmx5la55dn3nyqgxi8fyd1ci4wckmvfaa6s1kyd7xsk8785";
};
"circle_hud" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/circle_hud.tar.gz";
sha = "0sd28d0ac7wvkwmbrnvg42bccz6y4iyl2wp1pg7awwjxvag0azlf";
};
"circuit" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/circuit.tar.gz";
sha = "1jzlr6c47n3zs0f1cafgjy92sks5060d1gs0774kxc0c96bysypg";
};
"colorful" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/colorful.tar.gz";
sha = "18lbyffvhdav5cjh0xnidf09amryf5dcj5rizl9z7ghxpz2z57pr";
};
"colorful_loop" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/colorful_loop.tar.gz";
sha = "0qcn19gxl9w2q0w7lihi8wnlwlh8h3k0ddbp3ww9wcw1q0wsy1vi";
};
"colorful_sliced" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/colorful_sliced.tar.gz";
sha = "0d9lafg76w2y77ywj1f1p5n1ci2q9jnfqfd16akf6f28h0iz1f9r";
};
"connect" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/connect.tar.gz";
sha = "1a0z59l391xv795d8mhcwa816wlmzyl75pwiizvvra2a0i8g6wz0";
};
"cross_hud" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/cross_hud.tar.gz";
sha = "188wj6hkvryawmw4r3bwcsvqxx52h10jb4ddq3jx7sh2rz1kpvwa";
};
"cubes" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/cubes.tar.gz";
sha = "0bydagjwfkvbhgr7sv903a7pjkrmrdz6vh22i4qjx5rhzw2wvvsk";
};
"cuts" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/cuts.tar.gz";
sha = "0znz82zzgyqkfprvzhkzv974amcnxqdg38ajsm4d7wlagc52zs0d";
};
"cuts_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_1/cuts_alt.tar.gz";
sha = "1bgs4v5kkh96m1xh29wjmdxinfsxh4g7lg9fk1nqj87igdg7wwss";
};
"cyanide" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/cyanide.tar.gz";
sha = "04aklg9il310iv7zjpan6z4ha7gvh1b0yzgwi91679vm38cg0593";
};
"cybernetic" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/cybernetic.tar.gz";
sha = "0ad75fcra24bjzs4pqn89l19wb4rcjph63j71lv60m0rz75vgjfb";
};
"dark_planet" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/dark_planet.tar.gz";
sha = "03i2knrfi56f8lbc8hs8rqa4jg432nsmjn74wibb04ppmvm8f47j";
};
"darth_vader" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/darth_vader.tar.gz";
sha = "0mlxy17l1hjf3nq390wc26n4x3c45n5hmks75zkzjz3l5ac1fah6";
};
"deus_ex" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/deus_ex.tar.gz";
sha = "1mllj0xj9g1nn01vcq0xsfcwd0qnmk1s3vj5d03f9qp513k8qzdl";
};
"dna" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/dna.tar.gz";
sha = "0xcf4vxd99w3d44bhrdk1yqsfcakix6cd7hdpjsgccgs1jd02hi1";
};
"double" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/double.tar.gz";
sha = "07gxkzqrp0cfisdkq0wqfiai37m2yr2fhcpdpazmzkkxnm4qf25y";
};
"dragon" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/dragon.tar.gz";
sha = "0ypr1vyl6zilfzncymlh2s1ivxr7n88kfaygmz2y83l332asjs66";
};
"flame" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/flame.tar.gz";
sha = "0kvly5rgp47a4lby3blb1dird9xwy9y9c8a0wg17qfvz3zr69r0g";
};
"glitch" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/glitch.tar.gz";
sha = "0s0kmrw01wj9i7qd7zbwvmfbbh7r3jfkc4522jv44m4rl6r4h84c";
};
"glowing" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/glowing.tar.gz";
sha = "19nkbk2cw6j763idz5z7l71lx529xcgyx1dcd9qd356x9ifdw206";
};
"green_blocks" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/green_blocks.tar.gz";
sha = "0x8pgsyfbchy7z6d4rijsk2nml6fl1xwba0f0h3lw9i6359k7j3j";
};
"green_loader" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/green_loader.tar.gz";
sha = "00rdpy1gbc4ikxx487w3k27z622z2rjcsi0d18i23s5p3xqd1l3a";
};
"hexagon" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon.tar.gz";
sha = "0yk47hs5qfv09q5df4x6j82ivrxfxh1bxsw8p8x7hcmlb08dh6g6";
};
"hexagon_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon_2.tar.gz";
sha = "175im23q769s2if3xi8j669r0b5y0dagz8rsbvq7kghznzw4abc2";
};
"hexagon_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon_alt.tar.gz";
sha = "1ayhw1gzrb98hf7f77b6ka5wi19ymp3mljhhgm5lx8w8pwawsxnb";
};
"hexagon_dots" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon_dots.tar.gz";
sha = "0pdw9ih9fsxvv394yc5vfj7nlq7mca9w05y0s631gnsdzgqxsyd6";
};
"hexagon_dots_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon_dots_alt.tar.gz";
sha = "0aff3bgpva41b4jk4mp0fxdvli286x4pk3q9ysvps7z7srw4fvvn";
};
"hexagon_hud" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon_hud.tar.gz";
sha = "0wpmsffdp59dy2g5ggprgr7l50rf131c7v8pbgpir230lpn10xzi";
};
"hexagon_red" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_2/hexagon_red.tar.gz";
sha = "0fgmma5j6fnjykpwplji4rm57d07l9shfpay079gz1nhbhnq3rkl";
};
"hexa_retro" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/hexa_retro.tar.gz";
sha = "1cbyhqhv2ysx9w8cpbfidrm0w70wssp4fld0q1g01fgcbg93b7mf";
};
"hud" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/hud.tar.gz";
sha = "0s01p1n75ckwa69iy5v2z2cg85ipzgx356n4yvdyi1jh9pnl22k9";
};
"hud_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/hud_2.tar.gz";
sha = "1bvkl5f0fwi7xzy23pj3p7c98fbz2zk8abz7frxr0pp0xj3ql87i";
};
"hud_3" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/hud_3.tar.gz";
sha = "1n5qqkp0qb4mlpp7g20hpvazgwxw4gjb2p0ys0q2bglb3amzc2xr";
};
"hud_space" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/hud_space.tar.gz";
sha = "0dhajnica048smn5wpwc13ij0n9g6c10a0qxgi4rwiczr7p9vajj";
};
"ibm" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/ibm.tar.gz";
sha = "0xri6x716ma3y7d59yn9vm7skw5y53kn6s2ivfrvlfsac9n1zj4m";
};
"infinite_seal" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/infinite_seal.tar.gz";
sha = "0r9plydfdc35s2is1zi3pbx3s0bs5hqkim3laiav8fv3rzq0f3lq";
};
"ironman" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/ironman.tar.gz";
sha = "0af6qfdqj0n5qgsxg6nnrs2k8xas6cd18jw96mrwfcckpfz091cm";
};
"liquid" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/liquid.tar.gz";
sha = "0ghavh6nj68kwcgvrnwbabkzn44zq0m2ic1b2cl278d2vffzqv87";
};
"loader" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/loader.tar.gz";
sha = "1zlba3mra45ii0gahlw8v1vq1j7nbfjq62pcjn43vb40zcc1j873";
};
"loader_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/loader_2.tar.gz";
sha = "1yw4n9bw483pl7m3ks2ajgfldslgyc4gb1kw61fszfp5x4l3k4rg";
};
"loader_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/loader_alt.tar.gz";
sha = "1pi97pfhg13wq5s8hai4fd31s6bcfq09r969fl216yxksj8h69wj";
};
"lone" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/lone.tar.gz";
sha = "0413mxr8lqlznbps5c4qgbhm0zpz8dlkbdj67r9gvzi9v020qjgl";
};
"metal_ball" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/metal_ball.tar.gz";
sha = "129q23q992fxfi976px5r68sf8wqbac3zby4yjh97s48zm83rzb5";
};
"motion" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/motion.tar.gz";
sha = "0g84ac8ps69ihic2z7gr4nlwib9ra86il2fdl7rl7w5nc8xzhx1y";
};
"optimus" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/optimus.tar.gz";
sha = "1l4bmbiqqypwqvyhcd561nnxhrq5zif8pmkyk2hdwscbq6rlbc7r";
};
"owl" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/owl.tar.gz";
sha = "03gqqcvp4320qy1d3az1k2a8rj97alk8qzgkz6xg4akz9ccd731y";
};
"pie" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/pie.tar.gz";
sha = "1j479l428gq1b2g0g2ybkf81jzad69n59kphm0ns5gfv6khx10ga";
};
"pixels" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/pixels.tar.gz";
sha = "13rfdd9v7h0k2wbwr428h2w8dv5vhhbw03wvirlmafsbhmgjz5xs";
};
"polaroid" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_3/polaroid.tar.gz";
sha = "096iz34hpmicixrdrqaxmx8m83vggm90xqz4zyy5vkpcy3vl60mf";
};
"red_loader" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/red_loader.tar.gz";
sha = "0n2jmfy558rma6knraskb7rgccvnayxh7csl0jaarx2xl9zxzzay";
};
"rings" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/rings.tar.gz";
sha = "1g9p2cdn1w7dmy2z017xdkv6rm50gdb5qqd8a0y0662fzph5adg0";
};
"rings_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/rings_2.tar.gz";
sha = "07v4mq1lpw9vfzg0rfxmkyfhyhz3nv5zab5kf10bjjgpjq8c9fi3";
};
"rog" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/rog.tar.gz";
sha = "13lcrsdk1v1xn7fxn54xbk1jkh55kmsf813q1v7x8a2l8p9pl0hp";
};
"rog_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/rog_2.tar.gz";
sha = "0cgc1y1jrb689h9wd7jf3wvf9r996k4ik965v4wclmp9wra5gflk";
};
"seal" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/seal.tar.gz";
sha = "0ip23x69ljdj1bwxlhvz3fbg3ia47m2aw6d122v2rqhwqasmy40n";
};
"seal_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/seal_2.tar.gz";
sha = "1fc91n6ys2fl8xbzdj0ywck87xnyn1gp4jvjk307w49jmkpdzs15";
};
"seal_3" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/seal_3.tar.gz";
sha = "1l2jlxhhaf5whbvbdf31ypcasalx4fsd4yn90xybmjq7b27bz5b2";
};
"sliced" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/sliced.tar.gz";
sha = "0363lwq3rwdcz3fg47f6kch150vxspvpjdqzg87aahli30kkjfdi";
};
"sphere" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/sphere.tar.gz";
sha = "1zjlwign7f2zd70qkg25adbbmq8ndm9b44gc4pa0ls64i6yfd6fz";
};
"spin" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/spin.tar.gz";
sha = "0hwjc4i69zmzw7cpmsrhmx00w5k5y46m317m1imw2ycmhm0jicm5";
};
"spinner_alt" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/spinner_alt.tar.gz";
sha = "1ifs9xxd1cxvgjcnqjfw2zxkcapssv10hvchjrlf9nl60ayyp4m4";
};
"splash" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/splash.tar.gz";
sha = "12l8hwzmi68mjqgl384wf1fscvnzwp4a3vmlsb2zcbfwhrs5q717";
};
"square" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/square.tar.gz";
sha = "1mpyrivchsj2gr8flwj0g45vb792fvjjb5jmkn9xz1glrxxs7zww";
};
"square_hud" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/square_hud.tar.gz";
sha = "1lvv00r5rg8yjwibfqncka1s0p59fnpklhz3v6ifbs7ynlyp0kag";
};
"target" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/target.tar.gz";
sha = "1ipsd3rjclmwzg2l4bxpj0mgfl5bwxs1ihf498660zhm0bqqpgpr";
};
"target_2" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/target_2.tar.gz";
sha = "16lipy5c0pyyb1idwj1zchfr8g0cy6qr46c87b8g1kv2g96n5cn6";
};
"tech_a" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/tech_a.tar.gz";
sha = "0fn8aib05kmjxnp7j2bmgrs3avaj6bn06kxz55bw8fdg8ihxnxg0";
};
"tech_b" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/tech_b.tar.gz";
sha = "03i8jcvql76mhcq0dqaj2wygfza72fc7c22vfcyp38cx1lm6ilbv";
};
"unrap" = {
url = "https://github.com/adi1090x/files/raw/1f8b8d834eb0978d8b0260ffd161e9997b3ee0a2/plymouth-themes/themes/pack_4/unrap.tar.gz";
sha = "08gqwb11539kz5178ga6f96jv82xmyyzv44q6d05ajcw3pxk5j4c";
};
}

View File

@ -0,0 +1,34 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash --keep GITHUB_TOKEN -p nix-prefetch jq
set -eo pipefail
curl_args=( '--silent' )
# optionally takes a GITHUB_TOKEN to overcome api rate limiting.
if [ -n "$GITHUB_TOKEN" ]; then curl_args+=( --header "authorization: Bearer ${GITHUB_TOKEN}" ); fi
# get last master ref
curl_args+=( --url https://api.github.com/repos/adi1090x/files/commits/master )
last_ref=$(curl "${curl_args[@]}" | jq -r '.sha' )
unset curl_args[-1]
curl_args+=( https://api.github.com/repos/adi1090x/files/git/trees/$last_ref\?recursive=1 )
theme_archives=$(curl "${curl_args[@]}" \
| jq '.tree | map(select(.path| test("^plymouth-themes/themes/pack_.*tar.gz$"))| .path)')
dirname="$(dirname "$0")"
printf '{\n' > "$dirname/shas.nix"
repo_url="https://github.com/adi1090x/files/raw/$last_ref"
while
read -r file_path
do
name=$(basename $file_path)
printf ' "%s" = {\n url = "%s";\n sha = "%s";\n };\n' "${name%%.*}" "$repo_url/$file_path" "$(nix-prefetch-url "$repo_url/$file_path")" >>"$dirname/shas.nix"
done < <(jq -r '.[]' <<<"$theme_archives")
printf '}\n' >> "$dirname/shas.nix"

View File

@ -67,6 +67,9 @@ buildGoPackage rec {
substituteInPlace inputdevices/layout_list.go \
--replace "/usr/share/X11/xkb" "${xkeyboard_config}/share/X11/xkb"
substituteInPlace system/uadp/crypto.go \
--replace "/usr/share/uadp" "/var/lib/dde-daemon/uadp"
substituteInPlace appearance/background/{background.go,custom_wallpapers.go} accounts/user.go bin/dde-system-daemon/wallpaper.go \
--replace "/usr/share/wallpapers" "/run/current-system/sw/share/wallpapers"

View File

@ -335,6 +335,7 @@ backendStdenv.mkDerivation rec {
homepage = "https://developer.nvidia.com/cuda-toolkit";
platforms = [ "x86_64-linux" ];
license = licenses.unfree;
maintainers = teams.cuda.members;
};
}

View File

@ -60,6 +60,7 @@ backendStdenv.mkDerivation {
meta = {
description = attrs.name;
license = lib.licenses.unfree;
maintainers = lib.teams.cuda.members;
platforms = lib.optionals (lib.hasAttr arch attrs) [ "x86_64-linux" ];
};
}

View File

@ -116,7 +116,7 @@ edk2 = buildStdenv.mkDerivation {
buildPhase = ''
runHook preBuild
build -a ${targetArch} -b RELEASE -t ${buildType} -p ${projectDscPath} -n $NIX_BUILD_CORES $buildFlags
build -a ${targetArch} -b ${attrs.buildConfig or "RELEASE"} -t ${buildType} -p ${projectDscPath} -n $NIX_BUILD_CORES $buildFlags
runHook postBuild
'';

File diff suppressed because it is too large Load Diff

View File

@ -2,11 +2,11 @@
stdenvNoCC.mkDerivation rec {
pname = "flix";
version = "0.35.0";
version = "0.36.0";
src = fetchurl {
url = "https://github.com/flix/flix/releases/download/v${version}/flix.jar";
sha256 = "sha256-liPOAQfdAYc2JlUb+BXQ5KhTOYexC1vBCIuO0nT2jhk=";
sha256 = "sha256-HAhNNg8f+uC2QKYqkugJIyH7VakNA631S2/UE2vG+5M=";
};
dontUnpack = true;

View File

@ -28,4 +28,5 @@ in lib.concatLists [
"--with-long-double-128"
"--with-long-double-format=${gcc.long-double-format or "ieee"}"
]))
(lib.optional targetPlatform.isMips64n32 "--disable-libsanitizer") # libsanitizer does not compile on mips64n32
]

View File

@ -10,6 +10,7 @@
, mustache-go
, yaml2json
, tezos-rust-libs
, darwin
}:
ocamlPackages.buildDunePackage rec {
@ -110,6 +111,8 @@ ocamlPackages.buildDunePackage rec {
pure-splitmix
zarith_stubs_js
simple-diff
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
preBuild = ''

View File

@ -97,8 +97,6 @@ stdenv.mkDerivation {
substituteInPlace cmake/builtin-config-ix.cmake \
--replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
'' + lib.optionalString stdenv.isDarwin ''
substituteInPlace cmake/builtin-config-ix.cmake \
--replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)'
substituteInPlace cmake/config-ix.cmake \
--replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)'
'' + lib.optionalString (useLLVM) ''

View File

@ -23,13 +23,13 @@ let
in stdenv.mkDerivation rec {
pname = "openshadinglanguage";
version = "1.12.11.0";
version = "1.12.12.0";
src = fetchFromGitHub {
owner = "AcademySoftwareFoundation";
repo = "OpenShadingLanguage";
rev = "v${version}";
hash = "sha256-kN0+dWOUPXK8+xtR7onuPNimdn8WcaKcSRkOnaoi7BQ=";
hash = "sha256-kxfDhqF8uTdLqt99rTOk8TWBdN5NF7zm98CT0DbLrW0=";
};
cmakeFlags = [

View File

@ -99,7 +99,6 @@ let
# "clang-builtin-headers"
"stdlib"
"sdk-overlay"
"parser-lib"
"static-mirror-lib"
"editor-integration"
# "tools"
@ -257,6 +256,7 @@ in stdenv.mkDerivation {
${copySource "llvm-project"}
${copySource "swift"}
${copySource "swift-experimental-string-processing"}
${copySource "swift-syntax"}
${lib.optionalString
(!stdenv.isDarwin)
(copySource "swift-corelibs-libdispatch")}
@ -276,9 +276,13 @@ in stdenv.mkDerivation {
-e 's|/bin/cp|${coreutils}/bin/cp|g' \
-e 's|/usr/bin/file|${file}/bin/file|g'
patch -p1 -d swift -i ${./patches/swift-cmake-3.25-compat.patch}
patch -p1 -d swift -i ${./patches/swift-wrap.patch}
patch -p1 -d swift -i ${./patches/swift-nix-resource-root.patch}
patch -p1 -d swift -i ${./patches/swift-linux-fix-libc-paths.patch}
patch -p1 -d swift -i ${./patches/swift-linux-fix-linking.patch}
patch -p1 -d swift -i ${./patches/swift-darwin-libcxx-flags.patch}
patch -p1 -d swift -i ${./patches/swift-darwin-link-cxxabi.patch}
patch -p1 -d swift -i ${substituteAll {
src = ./patches/swift-darwin-plistbuddy-workaround.patch;
inherit swiftArch;
@ -287,8 +291,6 @@ in stdenv.mkDerivation {
src = ./patches/swift-prevent-sdk-dirs-warning.patch;
inherit (builtins) storeDir;
}}
substituteInPlace swift/cmake/modules/SwiftConfigureSDK.cmake \
--replace '/usr/include' "${stdenv.cc.libc_dev}/include"
# This patch needs to know the lib output location, so must be substituted
# in the same derivation as the compiler.
@ -321,8 +323,8 @@ in stdenv.mkDerivation {
''}
# Remove tests for cross compilation, which we don't currently support.
rm swift/test/Interop/Cxx/class/constructors-copy-irgen.swift
rm swift/test/Interop/Cxx/class/constructors-irgen.swift
rm swift/test/Interop/Cxx/class/constructors-copy-irgen-*.swift
rm swift/test/Interop/Cxx/class/constructors-irgen-*.swift
# TODO: consider fixing and re-adding. This test fails due to a non-standard "install_prefix".
rm swift/validation-test/Python/build_swift.swift
@ -342,7 +344,7 @@ in stdenv.mkDerivation {
rm swift/test/Serialization/restrict-swiftmodule-to-revision.swift
# This test was flaky in ofborg, see #186476
rm swift/test/AutoDiff/compiler_crashers_fixed/sr14290-missing-debug-scopes-in-pullback-trampoline.swift
rm swift/test/AutoDiff/compiler_crashers_fixed/issue-56649-missing-debug-scopes-in-pullback-trampoline.swift
patchShebangs .
@ -446,7 +448,8 @@ in stdenv.mkDerivation {
-DSWIFT_PATH_TO_CMARK_SOURCE=$SWIFT_SOURCE_ROOT/swift-cmark
-DSWIFT_PATH_TO_CMARK_BUILD=$SWIFT_BUILD_ROOT/swift-cmark
-DSWIFT_PATH_TO_LIBDISPATCH_SOURCE=$SWIFT_SOURCE_ROOT/swift-corelibs-libdispatch
-DEXPERIMENTAL_STRING_PROCESSING_SOURCE_DIR=$SWIFT_SOURCE_ROOT/swift-experimental-string-processing
-DSWIFT_PATH_TO_SWIFT_SYNTAX_SOURCE=$SWIFT_SOURCE_ROOT/swift-syntax
-DSWIFT_PATH_TO_STRING_PROCESSING_SOURCE=$SWIFT_SOURCE_ROOT/swift-experimental-string-processing
-DSWIFT_INSTALL_COMPONENTS=${lib.concatStringsSep ";" swiftInstallComponents}
-DSWIFT_STDLIB_ENABLE_OBJC_INTEROP=${if stdenv.isDarwin then "ON" else "OFF"}
"
@ -501,6 +504,7 @@ in stdenv.mkDerivation {
cmakeFlags="
-GNinja
-DCMAKE_Swift_COMPILER=$SWIFT_BUILD_ROOT/swift/bin/swiftc
-DSWIFT_PATH_TO_SWIFT_SYNTAX_SOURCE=$SWIFT_SOURCE_ROOT/swift-syntax
-DTOOLCHAIN_DIR=/var/empty
-DSWIFT_NATIVE_LLVM_TOOLS_PATH=${stdenv.cc}/bin
@ -579,7 +583,7 @@ in stdenv.mkDerivation {
# Undo the clang and swift wrapping we did for the build.
# (This happened via patches to cmake files.)
cd $SWIFT_BUILD_ROOT
mv llvm/bin/clang-14{-unwrapped,}
mv llvm/bin/clang-15{-unwrapped,}
mv swift/bin/swift-frontend{-unwrapped,}
mkdir $out $lib

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,63 @@
On Darwin, the SDK is a directory of stubs, and libc++ lives separately. We
need to patch the CMake files in several places to make the build for C++
interop succeed. The required flags can be read from cc-wrapper support files.
--- a/SwiftCompilerSources/CMakeLists.txt
+++ b/SwiftCompilerSources/CMakeLists.txt
@@ -105,18 +105,11 @@ function(add_swift_compiler_modules_library name)
get_filename_component(swift_exec_bin_dir ${ALS_SWIFT_EXEC} DIRECTORY)
set(sdk_option ${sdk_option} "-resource-dir" "${swift_exec_bin_dir}/../bootstrapping0/lib/swift")
endif()
- if(NOT EXISTS "${sdk_path}/usr/include/c++")
- # Darwin SDKs in Xcode 12 or older do not include libc++, which prevents clang from finding libc++ when invoked
- # from ClangImporter. This results in build errors. To workaround this, let's explicitly pass the path to libc++
- # to clang.
- message(WARNING "Building with an outdated Darwin SDK: libc++ missing from the ${SWIFT_HOST_VARIANT_SDK} SDK. Will use libc++ from the toolchain.")
- get_filename_component(absolute_libcxx_path "${CMAKE_C_COMPILER}/../../include/c++/v1" REALPATH)
- if (EXISTS "${absolute_libcxx_path}")
- set(sdk_option ${sdk_option} "-Xcc" "-isystem" "-Xcc" "${absolute_libcxx_path}")
- else()
- message(ERROR "libc++ not found in the toolchain.")
- endif()
- endif()
+ file(READ "$ENV{NIX_CC}/nix-support/libcxx-cxxflags" nix_libcxx_cxxflags)
+ separate_arguments(nix_libcxx_cxxflags)
+ foreach(nix_libcxx_cxxflag ${nix_libcxx_cxxflags})
+ set(sdk_option ${sdk_option} "-Xcc" "${nix_libcxx_cxxflag}")
+ endforeach()
elseif(BOOTSTRAPPING_MODE STREQUAL "CROSSCOMPILE")
set(sdk_option "-sdk" "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_PATH}")
get_filename_component(swift_exec_bin_dir ${ALS_SWIFT_EXEC} DIRECTORY)
--- a/cmake/modules/SwiftConfigureSDK.cmake
+++ b/cmake/modules/SwiftConfigureSDK.cmake
@@ -270,6 +270,18 @@ macro(configure_sdk_darwin
# Add this to the list of known SDKs.
list(APPEND SWIFT_CONFIGURED_SDKS "${prefix}")
+ set(cxx_overlay_opt "")
+ if("${prefix}" STREQUAL "OSX")
+ file(READ "$ENV{NIX_CC}/nix-support/libcxx-cxxflags" nix_libcxx_cxxflags)
+ separate_arguments(nix_libcxx_cxxflags)
+ foreach(nix_libcxx_cxxflag ${nix_libcxx_cxxflags})
+ set(cxx_overlay_opt ${cxx_overlay_opt} "-Xcc" "${nix_libcxx_cxxflag}")
+ endforeach()
+ endif()
+ set(SWIFT_SDK_${prefix}_CXX_OVERLAY_SWIFT_COMPILE_FLAGS
+ ${cxx_overlay_opt}
+ CACHE STRING "Extra flags for compiling the C++ overlay")
+
_report_sdk("${prefix}")
endmacro()
--- a/stdlib/public/Cxx/std/CMakeLists.txt
+++ b/stdlib/public/Cxx/std/CMakeLists.txt
@@ -145,6 +145,9 @@ add_swift_target_library(swiftstd STATIC NO_LINK_NAME IS_STDLIB
SWIFT_COMPILE_FLAGS_LINUX
${SWIFT_SDK_LINUX_CXX_OVERLAY_SWIFT_COMPILE_FLAGS}
+ SWIFT_COMPILE_FLAGS_OSX
+ ${SWIFT_SDK_OSX_CXX_OVERLAY_SWIFT_COMPILE_FLAGS}
+
LINK_FLAGS "${SWIFT_RUNTIME_SWIFT_LINK_FLAGS}"
TARGET_SDKS ALL_APPLE_PLATFORMS LINUX
INSTALL_IN_COMPONENT compiler

View File

@ -0,0 +1,14 @@
This patches the stdlib backdeploy static lib to have its users link c++abi.
Without this, later steps that try to link this fail looking for global
new/delete operators (__Znwm/__ZdlPv).
--- a/stdlib/toolchain/Compatibility56/Overrides.cpp
+++ b/stdlib/toolchain/Compatibility56/Overrides.cpp
@@ -23,6 +23,7 @@
using namespace swift;
__asm__ (".linker_option \"-lc++\"");
+__asm__ (".linker_option \"-lc++abi\"");
#define OVERRIDE(name, ret, attrs, ccAttrs, namespace, typedArgs, namedArgs) \
Override_ ## name name;

View File

@ -0,0 +1,48 @@
This code injects an LLVM modulemap for glibc and libstdc++ by overriding
specific VFS paths. In order to do that, it needs to know the actual locations
of glibc and libstdc++, but it only searches `-sysroot` and fails. Here we
patch it to also consider `-idirafter` and `-isystem` as added by cc-wrapper.
--- a/lib/ClangImporter/ClangIncludePaths.cpp
+++ b/lib/ClangImporter/ClangIncludePaths.cpp
@@ -120,6 +120,7 @@ static clang::driver::Driver createClangDriver(const ASTContext &ctx) {
/// \return a path without dots (`../`, './').
static llvm::Optional<Path>
findFirstIncludeDir(const llvm::opt::InputArgList &args,
+ const llvm::opt::ArgList &DriverArgs,
const ArrayRef<const char *> expectedFileNames) {
// C++ stdlib paths are added as `-internal-isystem`.
std::vector<std::string> includeDirs =
@@ -128,6 +129,14 @@ findFirstIncludeDir(const llvm::opt::InputArgList &args,
llvm::append_range(includeDirs,
args.getAllArgValues(
clang::driver::options::OPT_internal_externc_isystem));
+ // Nix adds the C stdlib include path using `-idirafter`.
+ llvm::append_range(includeDirs,
+ DriverArgs.getAllArgValues(
+ clang::driver::options::OPT_idirafter));
+ // Nix adds the C++ stdlib include path using `-isystem`.
+ llvm::append_range(includeDirs,
+ DriverArgs.getAllArgValues(
+ clang::driver::options::OPT_isystem));
for (const auto &includeDir : includeDirs) {
Path dir(includeDir);
@@ -193,7 +202,7 @@ getGlibcFileMapping(ASTContext &ctx) {
// Ideally we would check that all of the headers referenced from the
// modulemap are present.
Path glibcDir;
- if (auto dir = findFirstIncludeDir(parsedIncludeArgs,
+ if (auto dir = findFirstIncludeDir(parsedIncludeArgs, clangDriverArgs,
{"inttypes.h", "unistd.h", "stdint.h"})) {
glibcDir = dir.value();
} else {
@@ -251,7 +260,7 @@ getLibStdCxxFileMapping(ASTContext &ctx) {
auto parsedStdlibArgs = parseClangDriverArgs(clangDriver, stdlibArgStrings);
Path cxxStdlibDir;
- if (auto dir = findFirstIncludeDir(parsedStdlibArgs,
+ if (auto dir = findFirstIncludeDir(parsedStdlibArgs, clangDriverArgs,
{"cstdlib", "string", "vector"})) {
cxxStdlibDir = dir.value();
} else {

View File

@ -7,15 +7,15 @@ second (ToolChains.cpp) happens when Swift is used to link the final product.
--- a/lib/ClangImporter/ClangImporter.cpp
+++ b/lib/ClangImporter/ClangImporter.cpp
@@ -68,6 +68,7 @@
@@ -73,6 +73,7 @@
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/Memory.h"
#include "llvm/Support/Path.h"
+#include "llvm/Support/Process.h"
#include "llvm/Support/VirtualFileSystem.h"
#include "llvm/Support/YAMLParser.h"
#include "llvm/Support/YAMLTraits.h"
#include <algorithm>
@@ -809,6 +810,17 @@ importer::addCommonInvocationArguments(
@@ -786,6 +787,17 @@ importer::addCommonInvocationArguments(
const std::string &overrideResourceDir = importerOpts.OverrideResourceDir;
if (overrideResourceDir.empty()) {
@ -33,7 +33,7 @@ second (ToolChains.cpp) happens when Swift is used to link the final product.
llvm::SmallString<128> resourceDir(searchPathOpts.RuntimeResourcePath);
// Adjust the path to refer to our copy of the Clang resource directory
@@ -824,6 +836,7 @@ importer::addCommonInvocationArguments(
@@ -801,6 +813,7 @@ importer::addCommonInvocationArguments(
// Set the Clang resource directory to the path we computed.
invocationArgStrs.push_back("-resource-dir");
invocationArgStrs.push_back(std::string(resourceDir.str()));
@ -43,7 +43,7 @@ second (ToolChains.cpp) happens when Swift is used to link the final product.
invocationArgStrs.push_back(overrideResourceDir);
--- a/lib/Driver/ToolChains.cpp
+++ b/lib/Driver/ToolChains.cpp
@@ -1372,10 +1372,20 @@ void ToolChain::getClangLibraryPath(const ArgList &Args,
@@ -1393,10 +1393,20 @@ void ToolChain::getClangLibraryPath(const ArgList &Args,
SmallString<128> &LibPath) const {
const llvm::Triple &T = getTriple();

View File

@ -2,7 +2,7 @@
, pkgs
, newScope
, darwin
, llvmPackages_latest
, llvmPackages_15
, overrideCC
}:
@ -15,20 +15,21 @@ let
# Re-export this so we can rely on the minimum Swift SDK elsewhere.
apple_sdk = pkgs.darwin.apple_sdk_11_0;
# Our current Clang on Darwin is v11, but we need at least v12. The
# following applies the newer Clang with the same libc overrides as
# `apple_sdk.stdenv`.
# Swift builds its own Clang for internal use. We wrap that clang with a
# cc-wrapper derived from the clang configured below. Because cc-wrapper
# applies a specific resource-root, the two versions are best matched, or
# we'll often run into compilation errors.
#
# If 'latest' becomes an issue, recommend replacing it with v14, which is
# currently closest to the official Swift builds.
# The following selects the correct Clang version, matching the version
# used in Swift, and applies the same libc overrides as `apple_sdk.stdenv`.
clang = if pkgs.stdenv.isDarwin
then
llvmPackages_latest.clang.override rec {
llvmPackages_15.clang.override rec {
libc = apple_sdk.Libsystem;
bintools = pkgs.bintools.override { inherit libc; };
}
else
llvmPackages_latest.clang;
llvmPackages_15.clang;
# Overrides that create a useful environment for swift packages, allowing
# packaging with `swiftPackages.callPackage`. These are similar to

View File

@ -6,6 +6,7 @@
, swiftpm2nix
, Foundation
, XCTest
, pkg-config
, sqlite
, ncurses
, CryptoKit
@ -31,6 +32,7 @@ stdenv.mkDerivation {
buildInputs = [
Foundation
XCTest
pkg-config
sqlite
ncursesInput
]

View File

@ -2,15 +2,16 @@
{
workspaceStateFile = ./workspace-state.json;
hashes = {
"indexstore-db" = "05d7l3fgcvbw8plaky3pgjm03x20a63z9r14njxg5qm2zcp5m6jx";
"indexstore-db" = "0lf96m82s8f6lv67wbcnm9ii01fgw4bsr4vn2xp07ydfj1iqy8il";
"swift-argument-parser" = "1jph9w7lk9nr20fsv2c8p4hisx3dda817fh7pybd0r0j1jwa9nmw";
"swift-collections" = "1k6sjx5rqmp3gklny77b480hyzy6gkhpi23r0s8ljfbrcwawgnan";
"swift-crypto" = "020b8q4ss2k7a65r5dgh59z40i6sn7ij1allxkh8c8a9d0jzn313";
"swift-driver" = "1lcb5wqragc74nd0fjnk47lyph9hs0i9cps1mplvp2i91yzjqk05";
"swift-llbuild" = "07zbp2dyfqd1bnyg7snpr9brn40jf22ivly5v10mql3hrg76a18h";
"swift-package-manager" = "0a3vahdkj35n0dkinwcgybgfb9dnq2lq1nknn874r38xbj3mhlff";
"swift-crypto" = "0kllp7j0hd8k67l9b9zr2c3ddc5bvshldchzivhcz3q31qvq9ag8";
"swift-driver" = "0cbvddj54k3sbw0vzlmzhccs7h43hi5kq6i3n2i0mysz3bf0c6zg";
"swift-llbuild" = "106vnssh6pgy5s9dnq1hi1c9v2wkfydqgncg5dy7c9n23iisjy3s";
"swift-package-manager" = "1d1ngh7da42dm0rwkw7jzxa63a1rpc88wimm85w2j59cm446pk9k";
"swift-syntax" = "05394mzznmcrw246lyzsjsn1fmilj98jgkjyyxr2ynhnbgzp2jl2";
"swift-system" = "0402hkx2q2dv27gccnn8ma79ngvwiwzkhcv4zlcdldmy6cgi0px7";
"swift-tools-support-core" = "134f9x44jnzdy8cwi6hs372dwbyqvr4qmsjzjy25wzpyv6m9rhrz";
"Yams" = "1893y13sis2aimi1a5kgkczbf06z4yig054xb565yg2xm13srb45";
"swift-tools-support-core" = "1qvblyiazv58qwyxgyk2dh5ymbab3y70vm2q81qs6rmv43hs8ciz";
"Yams" = "0b4lprxl4f6yqq0djnp394mxgmsxm2pljr7fh4f6ihdhnpwfsfvl";
};
}

View File

@ -12,8 +12,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "9305648b0a8700434fa2e55eeacf7c7f4402a0d5"
"branch": "release/5.8",
"revision": "6caa12ab3bb6245eee4e09dce7677e64720c6545"
},
"name": "sourceControlCheckout"
},
@ -63,8 +63,8 @@
},
"state": {
"checkoutState": {
"revision": "ddb07e896a2a8af79512543b1c7eb9797f8898a5",
"version": "1.1.7"
"revision": "75ec60b8b4cc0f085c3ac414f3dca5625fa3588e",
"version": "2.2.4"
},
"name": "sourceControlCheckout"
},
@ -80,8 +80,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "82b274af66cfbb8f3131677676517b34d01e30fd"
"branch": "release/5.8",
"revision": "7cfe0c0b6e6297efe88a3ce34e6138ee7eda969e"
},
"name": "sourceControlCheckout"
},
@ -97,8 +97,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "564424db5fdb62dcb5d863bdf7212500ef03a87b"
"branch": "release/5.8",
"revision": "dccfc2e127a34b89a849407594cf2d604b598ba9"
},
"name": "sourceControlCheckout"
},
@ -114,13 +114,30 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "c6e40adbfc78acc60ca464ae482b56442f9f34f4"
"branch": "release/5.8",
"revision": "6651d98a4ce3c6faa82768256ca286412bf4a04d"
},
"name": "sourceControlCheckout"
},
"subpath": "swift-package-manager"
},
{
"basedOn": null,
"packageRef": {
"identity": "swift-syntax",
"kind": "remoteSourceControl",
"location": "https://github.com/apple/swift-syntax.git",
"name": "SwiftSyntax"
},
"state": {
"checkoutState": {
"branch": "release/5.8",
"revision": "cd793adf5680e138bf2bcbaacc292490175d0dcd"
},
"name": "sourceControlCheckout"
},
"subpath": "swift-syntax"
},
{
"basedOn": null,
"packageRef": {
@ -148,8 +165,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "286b48b1d73388e1d49b2bb33aabf995838104e3"
"branch": "release/5.8",
"revision": "ac4871e01ef338cb95b5d28328cab0ec1dfae935"
},
"name": "sourceControlCheckout"
},
@ -165,8 +182,8 @@
},
"state": {
"checkoutState": {
"revision": "9ff1cc9327586db4e0c8f46f064b6a82ec1566fa",
"version": "4.0.6"
"revision": "f47ba4838c30dbd59998a4e4c87ab620ff959e8a",
"version": "5.0.5"
},
"name": "sourceControlCheckout"
},
@ -174,5 +191,5 @@
}
]
},
"version": 5
"version": 6
}

View File

@ -5,20 +5,21 @@ let
# These packages are all part of the Swift toolchain, and have a single
# upstream version that should match. We also list the hashes here so a basic
# version upgrade touches only this file.
version = "5.7.3";
version = "5.8";
hashes = {
llvm-project = "sha256-IDtLPe0sXamnmovbFVKvmDMnci4u/A0urAPjWTYwJCo=";
sourcekit-lsp = "sha256-BT6+VCBSupKOg2mXo6HlkvNRc8pVZU772Mj3LKFamsU=";
swift = "sha256-essP2eIp1sLuROqk0OKGBPfJnvnyAW0moMk0cX1IVQQ=";
swift-cmark = "sha256-f0BoTs4HYdx/aJ9HIGCWMalhl8PvClWD6R4QK3qSgAw=";
swift-corelibs-foundation = "sha256-g78zKSq/b/pVFAD2k2SoMpzJQIpkxMvZOaSz5JPaQmA=";
swift-corelibs-libdispatch = "sha256-1qbXiC1k9+T+L6liqXKg6EZXqem6KEEx8OctuL4Kb2o=";
swift-corelibs-xctest = "sha256-qLUO9/3tkJWorDMEHgHd8VC3ovLLq/UWXJWMtb6CMN0=";
swift-docc = "sha256-WlXJMAnrlVPCM+iCIhG0Gyho76BsC2yVBEpX3m/WiIQ=";
swift-docc-render-artifact = "sha256-ttdurN/K7OX+I4577jG3YGeRs+GLUTc7BiiEZGmFD+s=";
swift-driver = "sha256-BUwsvw8pirvprUFfliLQMMHr6SHTSgeaJYc9lTEvi9E=";
swift-experimental-string-processing = "sha256-W0cQBkdR3A0hrV75Wwm0YULUDVg1bjT0O5w5VGBYDJs=";
swift-package-manager = "sha256-zlFYh1wdjUwOsnbagKnAtqXl3vKPcRtnA7YMORtUeyg=";
llvm-project = "sha256-0xwSAwwkzFgYO3mY1rHqV8TCeH2NpM7m3VUkCDqjcdE=";
sourcekit-lsp = "sha256-XDGq64LbpgBrRy3IvZNgsoLUePXECK5p10vQ8cUKeGE=";
swift = "sha256-EY2IImBCVLiUutvDQjNUiInwCNxZsCu1mZzYSjNd4+A=";
swift-cmark = "sha256-6xkO9kN6eXMAigjk+KyIgVhTyC50BxmkZmD4+9z6nz8=";
swift-corelibs-foundation = "sha256-yRjjxJRy1eTM9VG7/Fn60UMghPavsaoueH0V8cjaIyM=";
swift-corelibs-libdispatch = "sha256-XOAWuaGqWJtxhGIPXYT3PIvk5OK0rkY4g1IOybJUlm4=";
swift-corelibs-xctest = "sha256-uwxQhKUQ1xp5ao6kfkdlYOvMr6yAb5IaBIdOfoyf+n8=";
swift-docc = "sha256-k1ygYDZwF4Jo7iOkHxc/3NzfgN+8XNCks5aizxBgPjM=";
swift-docc-render-artifact = "sha256-vdSyICXOjlNSjZXzPRxa/5305pg6PG4xww9GYEV9m10=";
swift-driver = "sha256-7xsG3Bpf+wqisCMaPEuEg8CjGYO/0r8BX3pMUmRrezE=";
swift-experimental-string-processing = "sha256-ioXG6pQKjlAc2oF38Z7TGighyZN8w2ZAAtFUq83Ow6Q=";
swift-package-manager = "sha256-xd6ZpeXfMoHyVrJxz6XcDLPKBvc2nl1lgWXuLrJdq+E=";
swift-syntax = "sha256-gkpx/1sWWi9y917OJ1GSNFYXrJb6e2qI4JlV+38laRQ=";
};
# Create fetch derivations.

View File

@ -28,6 +28,12 @@ stdenv.mkDerivation {
configurePhase = generated.configure;
# We only install the docc binary, so don't need the other products.
# This works around a failure building generate-symbol-graph:
# Sources/generate-symbol-graph/main.swift:13:18: error: module 'SwiftDocC' was not compiled for testing
# TODO: Figure out the cause. It doesn't seem to happen outside Nixpkgs.
swiftpmFlags = "--product docc";
# TODO: Tests depend on indexstore-db being provided by an existing Swift
# toolchain. (ie. looks for `../lib/libIndexStore.so` relative to swiftc.
#doCheck = true;

View File

@ -2,14 +2,13 @@
{
workspaceStateFile = ./workspace-state.json;
hashes = {
"swift-argument-parser" = "070gip241dgn3d0nxgwxva4vp6kbnf11g01q5yaq6kmflcmz58f2";
"swift-cmark" = "0xfchdgls3070z16in8ks69y8fpiajmyk7lmp5h7ym7164isa6bb";
"swift-crypto" = "0h054rq14jyg94aiymmp37vqz60a13dlczp5g09pln724j4ypv92";
"swift-argument-parser" = "1jph9w7lk9nr20fsv2c8p4hisx3dda817fh7pybd0r0j1jwa9nmw";
"swift-cmark" = "1qswlh6j9mlfq8qj7xfqspla7w7rrzvplgcs4mgllgi012yfgwnp";
"swift-crypto" = "020b8q4ss2k7a65r5dgh59z40i6sn7ij1allxkh8c8a9d0jzn313";
"swift-docc-plugin" = "11d6nhi139yzk1lxxrixsbgyj1bnvmh40wj30y725q83nqq49ljh";
"swift-docc-symbolkit" = "14hb2wc09hisf2r2yny17z28z0m58cf4lnqaczad2x2hk4s1iayi";
"swift-lmdb" = "1m5y6x2vs1wflcv2c57rx87gh12sy0hkwy5iy9inxmda2mcs8qcb";
"swift-markdown" = "09270bfrwlp904cma29hsbhr1p25v8kwgvhcfi7lg2av7aaknd97";
"swift-docc-symbolkit" = "14w37wzbx1mygfwm4iv0ypj120n1axhk627rg5a7v8j0ln511r7s";
"swift-lmdb" = "0azmc24mnxn4pbda8w8v7hy3h0gqqm4br43pnr7lc4sfj3dcv43m";
"swift-markdown" = "1l4ydc0xyv88gnyc33p61qavdh8cv98c548n1icphrfd6i78yygw";
"swift-nio" = "04bvay94b34ynmlvgyl9a7f431l3cf8k2zr483spv8mvyh1hxiqn";
"swift-nio-ssl" = "1ak4aldilmz0pnfgbwq1x4alr38nfyvx2pz7p2vi2plf82da80g5";
};
}

View File

@ -12,8 +12,8 @@
},
"state": {
"checkoutState": {
"revision": "d2930e8fcf9c33162b9fcc1d522bc975e2d4179b",
"version": "1.0.1"
"revision": "e394bf350e38cb100b6bc4172834770ede1b7232",
"version": "1.0.3"
},
"name": "sourceControlCheckout"
},
@ -29,8 +29,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7-gfm",
"revision": "792c1c3326327515ce9bf64c44196b7f4daab9a6"
"branch": "gfm",
"revision": "eb9a6a357b6816c68f4b194eaa5b67f3cd1fa5c3"
},
"name": "sourceControlCheckout"
},
@ -46,8 +46,8 @@
},
"state": {
"checkoutState": {
"revision": "9680b7251cd2be22caaed8f1468bd9e8915a62fb",
"version": "1.1.2"
"revision": "ddb07e896a2a8af79512543b1c7eb9797f8898a5",
"version": "1.1.7"
},
"name": "sourceControlCheckout"
},
@ -80,8 +80,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "8682202025906dce29a8b04f9263f40ba87b89d8"
"branch": "main",
"revision": "b45d1f2ed151d057b54504d653e0da5552844e34"
},
"name": "sourceControlCheckout"
},
@ -97,8 +97,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "6ea45a7ebf6d8f72bd299dfcc3299e284bbb92ee"
"branch": "main",
"revision": "584941b1236b15bad74d8163785d389c028b1ad8"
},
"name": "sourceControlCheckout"
},
@ -114,8 +114,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "d6cd065a7e4b6c3fad615dcd39890e095a2f63a2"
"branch": "main",
"revision": "d491147940587dbadfb3472354f4d0c6e063e061"
},
"name": "sourceControlCheckout"
},
@ -137,25 +137,8 @@
"name": "sourceControlCheckout"
},
"subpath": "swift-nio"
},
{
"basedOn": null,
"packageRef": {
"identity": "swift-nio-ssl",
"kind": "remoteSourceControl",
"location": "https://github.com/apple/swift-nio-ssl.git",
"name": "swift-nio-ssl"
},
"state": {
"checkoutState": {
"revision": "2e74773972bd6254c41ceeda827f229bccbf1c0f",
"version": "2.15.0"
},
"name": "sourceControlCheckout"
},
"subpath": "swift-nio-ssl"
}
]
},
"version": 5
"version": 6
}

View File

@ -2,10 +2,10 @@
{
workspaceStateFile = ./workspace-state.json;
hashes = {
"swift-argument-parser" = "11did5snqj8chcbdbiyx84mpif940ls2pr1iikwivvfp63i248hm";
"swift-llbuild" = "07zbp2dyfqd1bnyg7snpr9brn40jf22ivly5v10mql3hrg76a18h";
"swift-argument-parser" = "1jph9w7lk9nr20fsv2c8p4hisx3dda817fh7pybd0r0j1jwa9nmw";
"swift-llbuild" = "106vnssh6pgy5s9dnq1hi1c9v2wkfydqgncg5dy7c9n23iisjy3s";
"swift-system" = "0402hkx2q2dv27gccnn8ma79ngvwiwzkhcv4zlcdldmy6cgi0px7";
"swift-tools-support-core" = "134f9x44jnzdy8cwi6hs372dwbyqvr4qmsjzjy25wzpyv6m9rhrz";
"Yams" = "1893y13sis2aimi1a5kgkczbf06z4yig054xb565yg2xm13srb45";
"swift-tools-support-core" = "1qvblyiazv58qwyxgyk2dh5ymbab3y70vm2q81qs6rmv43hs8ciz";
"Yams" = "11abhcfkmqm3cmh7vp7rqzvxd1zj02j2866a2pp6v9m89456xb76";
};
}

View File

@ -12,8 +12,8 @@
},
"state": {
"checkoutState": {
"revision": "e1465042f195f374b94f915ba8ca49de24300a0d",
"version": "1.0.2"
"revision": "e394bf350e38cb100b6bc4172834770ede1b7232",
"version": "1.0.3"
},
"name": "sourceControlCheckout"
},
@ -29,8 +29,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "564424db5fdb62dcb5d863bdf7212500ef03a87b"
"branch": "release/5.8",
"revision": "dccfc2e127a34b89a849407594cf2d604b598ba9"
},
"name": "sourceControlCheckout"
},
@ -63,8 +63,8 @@
},
"state": {
"checkoutState": {
"branch": "release/5.7",
"revision": "286b48b1d73388e1d49b2bb33aabf995838104e3"
"branch": "release/5.8",
"revision": "ac4871e01ef338cb95b5d28328cab0ec1dfae935"
},
"name": "sourceControlCheckout"
},
@ -80,8 +80,8 @@
},
"state": {
"checkoutState": {
"revision": "9ff1cc9327586db4e0c8f46f064b6a82ec1566fa",
"version": "4.0.6"
"revision": "01835dc202670b5bb90d07f3eae41867e9ed29f6",
"version": "5.0.1"
},
"name": "sourceControlCheckout"
},
@ -89,5 +89,5 @@
}
]
},
"version": 5
"version": 6
}

Some files were not shown because too many files have changed in this diff Show More