Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2023-01-24 00:13:06 +00:00 committed by GitHub
commit a67028b842
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
331 changed files with 4576 additions and 2976 deletions

View file

@ -24,7 +24,7 @@ jobs:
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Create backport PRs
uses: korthout/backport-action@v1.0.1
uses: korthout/backport-action@v1.1.0
with:
# Config README: https://github.com/korthout/backport-action#backport-action
pull_description: |-

View file

@ -558,6 +558,12 @@ in mkLicense lset) ({
redistributable = false;
};
fair = {
fullName = "Fair License";
spdxId = "Fair";
free = true;
};
issl = {
fullName = "Intel Simplified Software License";
url = "https://software.intel.com/en-us/license/intel-simplified-software-license";

View file

@ -7799,6 +7799,12 @@
githubId = 17659803;
name = "Matthias Axel Kröll";
};
krostar = {
email = "alexis.destrez@pm.me";
github = "krostar";
githubId = 5759930;
name = "Alexis Destrez";
};
kristian-brucaj = {
email = "kbrucaj@gmail.com";
github = "Kristian-Brucaj";
@ -8285,6 +8291,12 @@
fingerprint = "5B93 9CFA E8FC 4D8F E07A 3AEA DFE1 D4A0 1733 7E2A";
}];
};
lorenz = {
name = "Lorenz Brun";
email = "lorenz@brun.one";
github = "lorenz";
githubId = 5228892;
};
lorenzleutgeb = {
email = "lorenz@leutgeb.xyz";
github = "lorenzleutgeb";
@ -8401,6 +8413,13 @@
githubId = 4969294;
name = "Louis Tim Larsen";
};
loveisgrief = {
name = "LoveIsGrief";
email = "loveisgrief@tuta.io";
keys = [{
fingerprint = "9847 4F48 18C6 4E0A F0C5 3529 E96D 1EDF A053 45EB";
}];
};
lovek323 = {
email = "jason@oconal.id.au";
github = "lovek323";
@ -10418,6 +10437,12 @@
githubId = 6052922;
name = "Kirill Struokov";
};
novenary = {
email = "streetwalkermc@gmail.com";
github = "9ary";
githubId = 1155030;
name = "novenary";
};
np = {
email = "np.nix@nicolaspouillard.fr";
github = "np";
@ -14055,6 +14080,13 @@
fingerprint = "D2A2 F0A1 E7A8 5E6F B711 DEE5 63A4 4817 A52E AB7B";
}];
};
the-argus = {
email = "i.mcfarlane2002@gmail.com";
github = "the-argus";
name = "Ian McFarlane";
githubId = 70479099;
matrix = "@eyes1238:matrix.org";
};
TheBrainScrambler = {
email = "esthromeris@riseup.net";
github = "TheBrainScrambler";

View file

@ -348,6 +348,15 @@
been changed to <literal>null</literal>.
</para>
</listitem>
<listitem>
<para>
The <literal>--target-host</literal> and
<literal>--build-host</literal> options of
<literal>nixos-rebuild</literal> no longer treat the
<literal>localhost</literal> value specially to build
on/deploy to local machine, omit the relevant flag.
</para>
</listitem>
<listitem>
<para>
The <literal>nix.readOnlyStore</literal> option has been
@ -532,6 +541,13 @@
security.
</para>
</listitem>
<listitem>
<para>
<literal>services.dhcpcd</literal> service now dont solicit
or accept IPv6 Router Advertisements on interfaces that use
static IPv6 addresses.
</para>
</listitem>
<listitem>
<para>
The module <literal>services.headscale</literal> was

View file

@ -583,15 +583,15 @@
<listitem>
<para>
Specifies the NixOS target host. By setting this to something other than
<replaceable>localhost</replaceable>, the system activation will happen
an empty string, the system activation will happen
on the remote host instead of the local machine. The remote host needs to
be accessible over ssh, and for the commands <option>switch</option>,
<option>boot</option> and <option>test</option> you need root access.
</para>
<para>
If <option>--build-host</option> is not explicitly specified, building
will take place locally.
If <option>--build-host</option> is not explicitly specified or empty,
building will take place locally.
</para>
<para>

View file

@ -85,6 +85,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- In `mastodon` it is now necessary to specify location of file with `PostgreSQL` database password. In `services.mastodon.database.passwordFile` parameter default value `/var/lib/mastodon/secrets/db-password` has been changed to `null`.
- The `--target-host` and `--build-host` options of `nixos-rebuild` no longer treat the `localhost` value specially to build on/deploy to local machine, omit the relevant flag.
- The `nix.readOnlyStore` option has been renamed to `boot.readOnlyNixStore` to clarify that it configures the NixOS boot process, not the Nix daemon.
- Deprecated `xlibsWrapper` transitional package has been removed in favour of direct use of its constitutents: `xorg.libX11`, `freetype` and others.
@ -137,6 +139,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- `services.chronyd` is now started with additional systemd sandbox/hardening options for better security.
- `services.dhcpcd` service now don't solicit or accept IPv6 Router Advertisements on interfaces that use static IPv6 addresses.
- The module `services.headscale` was refactored to be compliant with [RFC 0042](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md). To be precise, this means that the following things have changed:
- Most settings has been migrated under [services.headscale.settings](#opt-services.headscale.settings) which is an attribute-set that

View file

@ -7,20 +7,19 @@ let
cfg = config.services.activemq;
activemqBroker = stdenv.mkDerivation {
name = "activemq-broker";
phases = [ "installPhase" ];
buildInputs = [ jdk ];
installPhase = ''
mkdir -p $out/lib
source ${activemq}/lib/classpath.env
export CLASSPATH
ln -s "${./ActiveMQBroker.java}" ActiveMQBroker.java
javac -d $out/lib ActiveMQBroker.java
'';
};
activemqBroker = runCommand "activemq-broker"
{
nativeBuildInputs = [ jdk ];
} ''
mkdir -p $out/lib
source ${activemq}/lib/classpath.env
export CLASSPATH
ln -s "${./ActiveMQBroker.java}" ActiveMQBroker.java
javac -d $out/lib ActiveMQBroker.java
'';
in {
in
{
options = {
services.activemq = {

View file

@ -22,10 +22,10 @@ in {
# The upstream package has this in Install, but that's not enough, see the NixOS manual
systemd.services.lenovo_fix.wantedBy = [ "multi-user.target" ];
environment.etc."lenovo_fix.conf".source =
environment.etc."throttled.conf".source =
if cfg.extraConfig != ""
then pkgs.writeText "lenovo_fix.conf" cfg.extraConfig
else "${pkgs.throttled}/etc/lenovo_fix.conf";
then pkgs.writeText "throttled.conf" cfg.extraConfig
else "${pkgs.throttled}/etc/throttled.conf";
# Kernel 5.9 spams warnings whenever userspace writes to CPU MSRs.
# See https://github.com/erpalma/throttled/issues/215

View file

@ -31,6 +31,7 @@ in
serviceConfig = {
DynamicUser = true;
ExecStart = "${pkgs.blocky}/bin/blocky --config ${configFile}";
Restart = "on-failure";
AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ];
CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" ];

View file

@ -33,6 +33,13 @@ let
(if !config.networking.useDHCP && enableDHCP then
map (i: i.name) (filter (i: i.useDHCP == true) interfaces) else null);
staticIPv6Addresses = map (i: i.name) (filter (i: i.ipv6.addresses != [ ]) interfaces);
noIPv6rs = concatStringsSep "\n" (map (name: ''
interface ${name}
noipv6rs
'') staticIPv6Addresses);
# Config file adapted from the one that ships with dhcpcd.
dhcpcdConf = pkgs.writeText "dhcpcd.conf"
''
@ -75,6 +82,8 @@ let
''}
${cfg.extraConfig}
${optionalString config.networking.enableIPv6 noIPv6rs}
'';
exitHook = pkgs.writeText "dhcpcd.exit-hook"

View file

@ -94,11 +94,14 @@ let
] else []
) env))));
mastodonTootctl = pkgs.writeShellScriptBin "mastodon-tootctl" ''
mastodonTootctl = let
sourceExtraEnv = lib.concatMapStrings (p: "source ${p}\n") cfg.extraEnvFiles;
in pkgs.writeShellScriptBin "mastodon-tootctl" ''
set -a
export RAILS_ROOT="${cfg.package}"
source "${envFile}"
source /var/lib/mastodon/.secrets_env
${sourceExtraEnv}
sudo=exec
if [[ "$USER" != ${cfg.user} ]]; then
@ -427,6 +430,15 @@ in {
'';
};
extraEnvFiles = lib.mkOption {
type = with lib.types; listOf path;
default = [];
description = lib.mdDoc ''
Extra environment files to pass to all mastodon services. Useful for passing down environemntal secrets.
'';
example = [ "/etc/mastodon/s3config.env" ];
};
automaticMigrations = lib.mkOption {
type = lib.types.bool;
default = true;
@ -579,7 +591,7 @@ in {
};
serviceConfig = {
Type = "oneshot";
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ];
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
WorkingDirectory = cfg.package;
# System Call Filtering
SystemCallFilter = [ ("~" + lib.concatStringsSep " " (systemCallsList ++ [ "@resources" ])) "@chown" "pipe" "pipe2" ];
@ -607,7 +619,7 @@ in {
ExecStart = "${cfg.package}/run-streaming.sh";
Restart = "always";
RestartSec = 20;
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ];
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
WorkingDirectory = cfg.package;
# Runtime directory and mode
RuntimeDirectory = "mastodon-streaming";
@ -634,7 +646,7 @@ in {
ExecStart = "${cfg.package}/bin/puma -C config/puma.rb";
Restart = "always";
RestartSec = 20;
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ];
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
WorkingDirectory = cfg.package;
# Runtime directory and mode
RuntimeDirectory = "mastodon-web";
@ -662,7 +674,7 @@ in {
ExecStart = "${cfg.package}/bin/sidekiq -c ${toString cfg.sidekiqThreads} -r ${cfg.package}";
Restart = "always";
RestartSec = 20;
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ];
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
WorkingDirectory = cfg.package;
# System Call Filtering
SystemCallFilter = [ ("~" + lib.concatStringsSep " " systemCallsList) "@chown" "pipe" "pipe2" ];
@ -675,7 +687,7 @@ in {
environment = env;
serviceConfig = {
Type = "oneshot";
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ];
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
} // cfgService;
script = let
olderThanDays = toString cfg.mediaAutoRemove.olderThanDays;

View file

@ -242,20 +242,21 @@ def main() -> None:
warnings.warn("NIXOS_INSTALL_GRUB env var deprecated, use NIXOS_INSTALL_BOOTLOADER", DeprecationWarning)
os.environ["NIXOS_INSTALL_BOOTLOADER"] = "1"
# flags to pass to bootctl install/update
bootctl_flags = []
if "@canTouchEfiVariables@" != "1":
bootctl_flags.append("--no-variables")
if "@graceful@" == "1":
bootctl_flags.append("--graceful")
if os.getenv("NIXOS_INSTALL_BOOTLOADER") == "1":
# bootctl uses fopen() with modes "wxe" and fails if the file exists.
if os.path.exists("@efiSysMountPoint@/loader/loader.conf"):
os.unlink("@efiSysMountPoint@/loader/loader.conf")
flags = []
if "@canTouchEfiVariables@" != "1":
flags.append("--no-variables")
if "@graceful@" == "1":
flags.append("--graceful")
subprocess.check_call(["@systemd@/bin/bootctl", "--esp-path=@efiSysMountPoint@"] + flags + ["install"])
subprocess.check_call(["@systemd@/bin/bootctl", "--esp-path=@efiSysMountPoint@"] + bootctl_flags + ["install"])
else:
# Update bootloader to latest if needed
available_out = subprocess.check_output(["@systemd@/bin/bootctl", "--version"], universal_newlines=True).split()[2]
@ -284,7 +285,7 @@ def main() -> None:
print("skipping systemd-boot update to %s because of known regression" % available_version)
else:
print("updating systemd-boot from %s to %s" % (installed_version, available_version))
subprocess.check_call(["@systemd@/bin/bootctl", "--esp-path=@efiSysMountPoint@", "update"])
subprocess.check_call(["@systemd@/bin/bootctl", "--esp-path=@efiSysMountPoint@"] + bootctl_flags + ["update"])
mkdir_p("@efiSysMountPoint@/efi/nixos")
mkdir_p("@efiSysMountPoint@/loader/entries")

View file

@ -7,7 +7,7 @@ with lib;
###### interface
options = {
boot.modprobeConfig.enable = mkEnableOption (lib.mdDoc "modprobe config. This is useful for systemds like containers which do not require a kernel.") // {
boot.modprobeConfig.enable = mkEnableOption (lib.mdDoc "modprobe config. This is useful for systems like containers which do not require a kernel") // {
default = true;
};

View file

@ -211,7 +211,7 @@ let
''
mkdir $out
diskImage=$out/disk.img
${qemu}/bin/qemu-img create -f qcow2 $diskImage "60M"
${qemu}/bin/qemu-img create -f qcow2 $diskImage "120M"
${if cfg.useEFIBoot then ''
efiVars=$out/efi-vars.fd
cp ${cfg.efi.variables} $efiVars
@ -225,7 +225,7 @@ let
+ " -drive if=pflash,format=raw,unit=1,file=$efiVars");
}
''
# Create a /boot EFI partition with 60M and arbitrary but fixed GUIDs for reproducibility
# Create a /boot EFI partition with 120M and arbitrary but fixed GUIDs for reproducibility
${pkgs.gptfdisk}/bin/sgdisk \
--set-alignment=1 --new=1:34:2047 --change-name=1:BIOSBootPartition --typecode=1:ef02 \
--set-alignment=512 --largest-new=2 --change-name=2:EFISystem --typecode=2:ef00 \

View file

@ -30,7 +30,6 @@ let
linux_5_4_hardened
linux_5_10_hardened
linux_5_15_hardened
linux_6_0_hardened
linux_6_1_hardened
linux_testing;

View file

@ -20,8 +20,8 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
enableOCR = true;
testScript = { nodes, ... }: let
user = nodes.machine.config.users.users.alice;
bob = nodes.machine.config.users.users.bob;
user = nodes.machine.users.users.alice;
bob = nodes.machine.users.users.bob;
in ''
machine.wait_for_unit("display-manager.service")
@ -40,7 +40,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
with subtest("Check that logging in has given the user ownership of devices"):
machine.succeed("getfacl -p /dev/snd/timer | grep -q ${user.name}")
# TODO: DBus API could eliminate this? Pantheon uses Bamf.
with subtest("Check if pantheon session components actually start"):
machine.wait_until_succeeds("pgrep gala")
machine.wait_for_window("gala")
@ -49,6 +48,12 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
machine.wait_until_succeeds("pgrep plank")
machine.wait_for_window("plank")
with subtest("Open system settings"):
machine.execute("su - ${user.name} -c 'DISPLAY=:0 io.elementary.switchboard >&2 &'")
# Wait for all plugins to be loaded before we check if the window is still there.
machine.sleep(5)
machine.wait_for_window("io.elementary.switchboard")
with subtest("Open elementary terminal"):
machine.execute("su - ${user.name} -c 'DISPLAY=:0 io.elementary.terminal >&2 &'")
machine.wait_for_window("io.elementary.terminal")

View file

@ -101,13 +101,13 @@ in
# Replace version inside sd-boot with something older. See magic[] string in systemd src/boot/efi/boot.c
machine.succeed(
"""
find /boot -iname '*.efi' -print0 | \
find /boot -iname '*boot*.efi' -print0 | \
xargs -0 -I '{}' sed -i 's/#### LoaderInfo: systemd-boot .* ####/#### LoaderInfo: systemd-boot 000.0-1-notnixos ####/' '{}'
"""
)
output = machine.succeed("/run/current-system/bin/switch-to-configuration boot")
assert "updating systemd-boot from (000.0-1-notnixos) to " in output
assert "updating systemd-boot from 000.0-1-notnixos to " in output
'';
};

View file

@ -2,11 +2,11 @@
appimageTools.wrapType2 rec {
pname = "cider";
version = "1.5.7";
version = "1.6.0";
src = fetchurl {
url = "https://github.com/ciderapp/cider-releases/releases/download/v${version}/Cider-${version}.AppImage";
sha256 = "sha256-fWpt7YxqEDa1U4CwyVZwgbiwe0lrh64v0cJG9pbNMUU=";
sha256 = "sha256-fbeUl+vQpEdP17m3koblKv9z4CRpLNYtVQf7bs8ZP1M=";
};
extraInstallCommands =

View file

@ -0,0 +1,31 @@
{ lib, fetchurl, stdenv, unzip, fpc }:
stdenv.mkDerivation rec {
pname = "dolbybcsoftwaredecode";
version = "april-2018";
src = fetchurl {
url = "mirror://sourceforge/dolbybcsoftwaredecode/April-2018/SourceCode.zip";
sha256 = "sha256-uLcsRIpwmJlstlGV8I4+/30+D9GDpUt7DOIP/GkXWp4=";
};
nativeBuildInputs = [ unzip fpc ];
buildPhase = ''
fpc DolbyBi64.PP
'';
installPhase = ''
mkdir -p $out/bin
cp DolbyBi64 $out/bin/
'';
meta = with lib; {
description = "A Dolby B & C software decoder";
homepage = "https://sourceforge.net/projects/dolbybcsoftwaredecode/";
maintainers = with maintainers; [ lorenz ];
# Project is has source code available, but has no explicit license.
# I asked upstream to assign a license, so maybe this can be free
# in the future, but for now let's play it safe and make it unfree.
license = lib.licenses.unfree;
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "dragonfly-reverb";
version = "3.2.7";
version = "3.2.8";
src = fetchFromGitHub {
owner = "michaelwillis";
repo = "dragonfly-reverb";
rev = version;
sha256 = "sha256-DJ6J5PuRFDin6PtkNYjIRI1gEVQkKmnZLhnj7L4JtPM=";
sha256 = "sha256-Jz0t9IO3H+guL4NiETCBHSb4rxFTxZRHw2v20yS/wlk=";
fetchSubmodules = true;
};

View file

@ -5,14 +5,14 @@
stdenv.mkDerivation rec {
pname = "grandorgue";
version = "3.9.0-1";
version = "3.9.4-1";
src = fetchFromGitHub {
owner = "GrandOrgue";
repo = pname;
rev = version;
fetchSubmodules = true;
sha256 = "sha256-+LWEjoke7f+6f4K4jO9nCG88Mdg9C49+v3FboM9/NkU=";
sha256 = "sha256-10gcVxMLhMXUblvJYLj0TTwGFl1YHI7HU3TfHXtJ+24=";
};
postPatch = ''

View file

@ -22,13 +22,13 @@
stdenv.mkDerivation rec {
pname = "MIDIVisualizer";
version = "6.5";
version = "7.0";
src = fetchFromGitHub {
owner = "kosua20";
repo = pname;
rev = "v${version}";
sha256 = "sha256-thRcRJ88bz3jwu6rKaQxt2MkBSf5Ri1jygkKDguP2eE=";
sha256 = "sha256-wfPSPH+E9cErVvfJZqHttFtjiUYJopM/u6w6NpRHifE=";
};
nativeBuildInputs = [ cmake pkg-config makeWrapper];

View file

@ -6,13 +6,13 @@
python3Packages.buildPythonApplication rec {
pname = "pyradio";
version = "0.8.9.32";
version = "0.8.9.36";
src = fetchFromGitHub {
owner = "coderholic";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-1lczH8xTZV1XVVByLAGXJbjXd20JUJALIJJ3s9+orxM=";
hash = "sha256-xEFjyVly1VyDz9ALtVwxxrEs856joP+pe/mappyKrPU=";
};
nativeBuildInputs = [

View file

@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, autoreconfHook
, pkg-config
, which
@ -9,7 +10,7 @@
, libxml2
, libjack2
, libsndfile
, wxGTK30
, wxGTK32
, libsigcxx
, libsamplerate
, rubberband
@ -21,15 +22,23 @@
stdenv.mkDerivation rec {
pname = "sooperlooper";
version = "1.7.4";
version = "1.7.8";
src = fetchFromGitHub {
owner = "essej";
repo = "sooperlooper";
rev = "v${builtins.replaceStrings [ "." ] [ "_" ] version}";
sha256 = "1jng9bkb7iikad0dy1fkiq9wjjdhh1xi1p0cp2lvnz1dsc4yk6iw";
rev = "v${version}";
sha256 = "sha256-Lrsz/UDCgoac63FJ3CaPVaYwvBtzkGQQRLhUi6lUusE=";
};
patches = [
(fetchpatch {
name = "10-build_with_wx_32.patch";
url = "https://sources.debian.org/data/main/s/sooperlooper/1.7.8~dfsg0-2/debian/patches/10-build_with_wx_32.patch";
sha256 = "sha256-NF/w+zgRBNkSTqUJhfH9kQogXSYEF70pCN+loR0hjpg=";
})
];
autoreconfPhase = ''
patchShebangs ./autogen.sh
./autogen.sh
@ -47,7 +56,7 @@ stdenv.mkDerivation rec {
libxml2
libjack2
libsndfile
wxGTK30
wxGTK32
libsigcxx
libsamplerate
rubberband
@ -68,7 +77,7 @@ stdenv.mkDerivation rec {
However, this kind of live performance looping tool is most effectively used via hardware (midi footpedals, etc)
and the engine can be run standalone on a computer without a monitor.
'';
homepage = "http://essej.net/sooperlooper/"; # https is broken
homepage = "https://sonosaurus.com/sooperlooper/";
license = licenses.gpl2;
maintainers = with maintainers; [ magnetophon ];
platforms = platforms.linux;

View file

@ -60,7 +60,7 @@ stdenv.mkDerivation {
EXECUTABLE = binName;
OPTS = [ "-DLINKALL" ]
OPTS = [ "-DLINKALL" "-DGPIO" ]
++ optional dsdSupport "-DDSD"
++ optional (!faad2Support) "-DNO_FAAD"
++ optional ffmpegSupport "-DFFMPEG"

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "ergo";
version = "5.0.3";
version = "5.0.6";
src = fetchurl {
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
sha256 = "sha256-IDAss4qX39qPyOsPpVg5zU6zq/QV/RTnbHTGVl9UmOA=";
sha256 = "sha256-UiPwvZcdkeFOTMVcUT1Xr5ByrJC+yzodCfi8Br61hjU=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "stellar-core";
version = "19.4.0";
version = "19.6.0";
src = fetchFromGitHub {
owner = "stellar";
repo = pname;
rev = "v${version}";
sha256 = "sha256-pgwLCtlj2Ak34KfE+ffIxQ1Z4Epxm3f1Y2aqYOIlLUc=";
sha256 = "sha256-lDefmPZM8ow6t5CpNBxef+9BoT773p5UgeMhgF+em2w=";
fetchSubmodules = true;
};

View file

@ -31,11 +31,11 @@ let
in
stdenv.mkDerivation rec {
pname = "wasabiwallet";
version = "2.0.2";
version = "2.0.2.1";
src = fetchurl {
url = "https://github.com/zkSNACKs/WalletWasabi/releases/download/v${version}/Wasabi-${version}.tar.gz";
sha256 = "sha256-0DFl+UFxQckRM2qXFqDpKaRQ5sIMUbNj7l3zKPKAOnQ=";
sha256 = "sha256-kvUwWRZZmalJQL65tRNdgTg7ZQHhmIbfmsfHbHBYz7w=";
};
dontBuild = true;

View file

@ -1,11 +1,11 @@
{ lib, stdenv, fetchurl, intltool, pkg-config, gtk2 }:
stdenv.mkDerivation rec {
version = "0.8.18.1";
version = "0.8.19";
pname = "leafpad";
src = fetchurl {
url = "https://download.savannah.gnu.org/releases/leafpad/${pname}-${version}.tar.gz";
sha256 = "0b0az2wvqgvam7w0ns1j8xp2llslm1rx6h7zcsy06a7j0yp257cm";
sha256 = "sha256-B9P3EvTb0KMyUf0d7hTiGv3J+SCQ/HaMEasKxVatvpc=";
};
nativeBuildInputs = [ pkg-config intltool ];

View file

@ -5,13 +5,13 @@
mkDerivation rec {
pname = "sigil";
version = "1.9.10";
version = "1.9.20";
src = fetchFromGitHub {
repo = "Sigil";
owner = "Sigil-Ebook";
rev = version;
sha256 = "sha256-FWUrhTTV1TCoBhitopQc469I7SRy4UDKdRLifVKhCCg=";
sha256 = "sha256-rpJ+HBYmGuhxnZbJn59mc+IokBc5834X2uyriIGnsqA=";
};
pythonPath = with python3Packages; [ lxml ];

View file

@ -11,7 +11,7 @@
, perl
, luajit
, darwin
, python37
, python3
}:
let
@ -41,7 +41,7 @@ stdenv.mkDerivation {
nativeBuildInputs = [ pkg-config buildSymlinks ];
buildInputs = [
gettext ncurses cscope luajit ruby tcl perl python37
gettext ncurses cscope luajit ruby tcl perl python3
];
patches = [ ./macvim.patch ];
@ -61,7 +61,7 @@ stdenv.mkDerivation {
"--without-local-dir"
"--with-luajit"
"--with-lua-prefix=${luajit}"
"--with-python3-command=${python37}/bin/python3"
"--with-python3-command=${python3}/bin/python3"
"--with-ruby-command=${ruby}/bin/ruby"
"--with-tclsh=${tcl}/bin/tclsh"
"--with-tlib=ncurses"
@ -159,7 +159,7 @@ stdenv.mkDerivation {
libperl=$(dirname $(find ${perl} -name "libperl.dylib"))
install_name_tool -add_rpath ${luajit}/lib $exe
install_name_tool -add_rpath ${tcl}/lib $exe
install_name_tool -add_rpath ${python37}/lib $exe
install_name_tool -add_rpath ${python3}/lib $exe
install_name_tool -add_rpath $libperl $exe
install_name_tool -add_rpath ${ruby}/lib $exe

View file

@ -4,7 +4,7 @@ self: super:
let
generatedGrammars = callPackage ./generated.nix {
buildGrammar = callPackage ../../../../../development/tools/parsing/tree-sitter/grammar.nix { };
inherit (tree-sitter) buildGrammar;
};
generatedDerivations = lib.filterAttrs (_: lib.isDerivation) generatedGrammars;

View file

@ -36,7 +36,7 @@ def generate_grammar(item):
generated = f""" {lang} = buildGrammar {{
language = "{lang}";
version = "{rev[:7]}";
source = """
src = """
generated += subprocess.check_output(["nurl", url, rev, "--indent=4"], text=True)
generated += ";"

View file

@ -9,10 +9,10 @@
let
# Keep these separate so the update script can regex them
rpcs3GitVersion = "14568-1852b370d";
rpcs3Version = "0.0.26-14568-1852b370d";
rpcs3Revision = "1852b370d7a8310de092ca4132464c84192671cb";
rpcs3Sha256 = "0yqvn5w9b4lxb43lllqch0s1sdj5v274hhbysgblbc7nilzcgsq6";
rpcs3GitVersion = "14599-d3183708e";
rpcs3Version = "0.0.26-14599-d3183708e";
rpcs3Revision = "d3183708e81ba2707d39829cc1c0cb226dd9e50e";
rpcs3Sha256 = "0lx9v614r9afmfknw9qdwawwayg3z0fj6chbhnfghm2j2zgqqbpi";
ittapi = fetchFromGitHub {
owner = "intel";

View file

@ -16,7 +16,6 @@
, libssh2
, openssl
, coreutils
, autoreconfHook
, autoSignDarwinBinariesHook
# updater only
@ -25,23 +24,14 @@
stdenv.mkDerivation rec {
pname = "mc";
version = "4.8.28";
version = "4.8.29";
src = fetchurl {
url = "https://www.midnight-commander.org/downloads/${pname}-${version}.tar.xz";
sha256 = "sha256-6ZTZvppxcumsSkrWIQeSH2qjEuZosFbf5bi867r1OAM=";
sha256 = "sha256-AdijuU9YGAzKW/FyV7UHjR/W/SeptcDpcOx2dUlUCtQ=";
};
patches = [
# Add support for PERL_FOR_BUILD to fix cross-compilation:
# https://midnight-commander.org/ticket/4399
(fetchurl {
url = "https://midnight-commander.org/raw-attachment/ticket/4399/0001-configure.ac-introduce-PERL_FOR_BUILD.patch";
hash = "sha256-i4cbg/pner+yPfgmP04DEIvpNDlM9YDca1TNBdhWhwI=";
})
];
nativeBuildInputs = [ pkg-config autoreconfHook unzip ]
nativeBuildInputs = [ pkg-config unzip ]
# The preFixup hook rewrites the binary, which invaliates the code
# signature. Add the fixup hook to sign the output.
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [

View file

@ -16,11 +16,11 @@
stdenv.mkDerivation rec {
pname = "xfe";
version = "1.44";
version = "1.45";
src = fetchurl {
url = "mirror://sourceforge/xfe/xfe-${version}.tar.xz";
sha256 = "594c14d185bdfc7e3132aefda7cf4e233625258ca9a1939359944a2c07c030b6";
sha256 = "sha256-RmvVUzqCsRRwXgC4Yabt46uFHnL0XFWncQfXDG+owDc=";
};
nativeBuildInputs = [ pkg-config intltool ];

View file

@ -21,13 +21,13 @@
mkDerivation rec {
pname = "ovito";
version = "3.7.7";
version = "3.7.11";
src = fetchFromGitLab {
owner = "stuko";
repo = "ovito";
rev = "v${version}";
sha256 = "sha256-wKXnb7ZzWOPPrHj3jOeFazRy0PVqcV/OFeaBs6qgF1I=";
sha256 = "sha256-Z3uwjOYJ7di/LLllbzdKjzUE7m119i03bA8dJPqhxWA=";
};
nativeBuildInputs = [

View file

@ -30,7 +30,6 @@
, wrapGAppsHook
, gobject-introspection
, itstool
, libchamplain
, libsecret
, gsettings-desktop-schemas
, python3
@ -86,7 +85,6 @@ stdenv.mkDerivation rec {
librest
gcr
gnome.adwaita-icon-theme
libchamplain
libsecret
];

View file

@ -6,11 +6,11 @@ with python3.pkgs;
buildPythonApplication rec {
pname = "ablog";
version = "0.10.29";
version = "0.10.33";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-q2zoXCmnzzjXSBGFKzondOQRz7CjZp0wCiXxbgpXHIA=";
sha256 = "sha256-vCkLX64aPAem0QvKI1iUNAHWEJZlAOIb1DA9U7xPJkU=";
};
propagatedBuildInputs = [

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "batsignal";
version = "1.6.2";
version = "1.6.4";
src = fetchFromGitHub {
owner = "electrickite";
repo = "batsignal";
rev = version;
sha256 = "sha256-3T0vpyAw21u2+csqaz3Yf10G8IQRDyjReedIo+I4fvw=";
sha256 = "sha256-Z5j5tSIF3AZiZjkFFtyyi3hMqWMXtf6ont2CQ/FSEjk=";
};
buildInputs = [ libnotify glib ];

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "clightd";
version = "5.6";
version = "5.7";
src = fetchFromGitHub {
owner = "FedeDP";
repo = "Clightd";
rev = version;
sha256 = "sha256-PxYOI/2ZOz3JSGCPIXfm3WfGZ19D8JhhdNS3FVuXus8=";
sha256 = "sha256-4daM6Z67d52v2LmzqSZ6RSAHznyZNEqvAdWCuVFi0Kw=";
};
# dbus-1.pc has datadir=/etc

View file

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "clight";
version = "4.8";
version = "4.9";
src = fetchFromGitHub {
owner = "FedeDP";
repo = "Clight";
rev = version;
sha256 = "sha256-nDI5Rq1iPVkj25HRpxmS9zxNDUy+9YsSwbZnEwYt86E=";
sha256 = "sha256-m1oKjyy7fMK6mIf5FRuWCbfAM8qlHXRR/rwHsCZADiY=";
};
# dbus-1.pc has datadir=/etc

View file

@ -2,12 +2,12 @@
stdenvNoCC.mkDerivation rec {
pname = "fluidd";
version = "1.21.1";
version = "1.23.0";
src = fetchurl {
name = "fluidd-v${version}.zip";
url = "https://github.com/cadriel/fluidd/releases/download/v${version}/fluidd.zip";
sha256 = "sha256-TahXPbZy7eoSJ/U2wL6GaMM8F6zypf7EU91JVWlevQg=";
sha256 = "sha256-SAyR7SeMFh2twLr8QqKzALlMFLv/oAfySN5+cSNALis=";
};
nativeBuildInputs = [ unzip ];

View file

@ -5,13 +5,13 @@
mkDerivation rec {
pname = "klayout";
version = "0.27.11";
version = "0.28.3";
src = fetchFromGitHub {
owner = "KLayout";
repo = "klayout";
rev = "v${version}";
hash = "sha256-w3ag+TPUrjPbPIy6N4HPsfraOyoHqBbvjwB1M6+qh60=";
hash = "sha256-keC+QLV/iEEGFDdy/Vt2pCr55qbqQzcx3HokdDi+xSU=";
};
postPatch = ''

View file

@ -9,13 +9,13 @@
mkDerivation rec {
pname = "moolticute";
version = "0.55.0";
version = "1.00.1";
src = fetchFromGitHub {
owner = "mooltipass";
repo = pname;
rev = "v${version}";
sha256 = "sha256-up78503+YqUB2fR9B6W6plYksTJzTj5pkmFJ5eL/mLY=";
sha256 = "sha256-oENMr3d2vFisEFl7gYBQQ0XRBeogAYOfBE5th463laI=";
};
outputs = [ "out" "udev" ];

View file

@ -11,22 +11,27 @@
, openssl
, pkg-config
, zeromq
, darwin
}:
let
inherit (darwin.apple_sdk.frameworks) Foundation;
in
stdenv.mkDerivation rec {
pname = "p2pool";
version = "2.4";
version = "2.7";
src = fetchFromGitHub {
owner = "SChernykh";
repo = "p2pool";
rev = "v${version}";
sha256 = "sha256-En2ogxAD61w7DRTsCGIp6fEP/cC2A+pTYIbjeJ1MktY=";
sha256 = "sha256-j3SVwat/LGw/iGcyNn8acR29Ob/WXDKyeCfDTsH+gxA=";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ libuv zeromq libsodium gss hwloc openssl curl ];
buildInputs = [ libuv zeromq libsodium gss hwloc openssl curl ]
++ lib.optionals stdenv.isDarwin [ Foundation ];
installPhase = ''
runHook preInstall

View file

@ -20,14 +20,14 @@
python3Packages.buildPythonApplication rec {
name = "polychromatic";
version = "0.7.3";
version = "0.8.0";
format = "other";
src = fetchFromGitHub {
owner = "polychromatic";
repo = "polychromatic";
rev = "v${version}";
sha256 = "sha256-H++kQ3Fxw56avEsSE1ctu5p0s50s0eQ+jL5zXS3AA94=";
sha256 = "sha256-ym2pcGUWM5zCUx/lYs+WECj+wbyBtWnx04W/NRXNKlw=";
};
postPatch = ''
@ -35,7 +35,7 @@ python3Packages.buildPythonApplication rec {
substituteInPlace scripts/build-styles.sh \
--replace '$(which sassc 2>/dev/null)' '${sassc}/bin/sassc' \
--replace '$(which sass 2>/dev/null)' '${sassc}/bin/sass'
substituteInPlace pylib/common.py \
substituteInPlace polychromatic/paths.py \
--replace "/usr/share/polychromatic" "$out/share/polychromatic"
'';

View file

@ -18,14 +18,14 @@
mkDerivation rec {
pname = "qcad";
version = "3.27.6.11";
version = "3.27.8.7";
src = fetchFromGitHub {
name = "qcad-${version}-src";
owner = "qcad";
repo = "qcad";
rev = "v${version}";
sha256 = "sha256-FfbHedJgzZdUpamLL2Wz2P8glaC/IVYCGZQk9EEc83k=";
sha256 = "sha256-GWDDZzFDOR96ZpmNDUuE+S9zTMVSYFNJKp8z/Cx3hec=";
};
patches = [

View file

@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "tofi";
version = "0.7.0";
version = "0.8.1";
src = fetchFromGitHub {
owner = "philj56";
repo = pname;
rev = "v${version}";
sha256 = "sha256-KLHZrfoQ6x3EeKWo/TMp30rEIqdq16i8YLr4zFHbnSc=";
sha256 = "sha256-HhkXypRGerWWHrR4maR3AtayWSy5qhl/LYwBHWGKboU=";
};
nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-protocols ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "writefreely";
version = "0.13.1";
version = "0.13.2";
src = fetchFromGitHub {
owner = "writeas";
repo = pname;
rev = "v${version}";
sha256 = "sha256-qYceijC/u8G9vr7uhApWWyWD9P65pLJCTjePEvh+oXA=";
sha256 = "sha256-GnuqYgiwXdKM+os5RzuUYe9ADOhZaxou5dD7GCEE1Ns=";
};
vendorSha256 = "sha256-CBPvtc3K9hr1oEmC+yUe3kPSWx20k6eMRqoxsf3NfCE=";
vendorSha256 = "sha256-IBer+8FP+IWWJPnaugr8zzQA9mSVFzP0Nofgl/PhtzQ=";
nativeBuildInputs = [ go-bindata ];

View file

@ -2,13 +2,13 @@
xmrig.overrideAttrs (oldAttrs: rec {
pname = "xmrig-mo";
version = "6.18.0-mo1";
version = "6.18.1-mo1";
src = fetchFromGitHub {
owner = "MoneroOcean";
repo = "xmrig";
rev = "v${version}";
sha256 = "sha256-Ma5wXaQBAVWJsL2wVOHxQ2aSAG9wOywk/abtUi03JvY=";
sha256 = "sha256-ZHSDJLZ+5WTqJwSWT05VuN7VAK/aD0dimVFiZ39IWvg=";
};
meta = with lib; {

View file

@ -2,18 +2,18 @@
rustPlatform.buildRustPackage rec {
pname = "xplr";
version = "0.20.1";
version = "0.20.2";
src = fetchFromGitHub {
owner = "sayanarijit";
repo = pname;
rev = "v${version}";
sha256 = "sha256-b3TdhziXPytHitilMBkr6OGaI+CBI3w4qcTIkQtOAjs=";
sha256 = "sha256-iPcxDNtwWnvFljZw052aw/ekCahyFBNt/zbUAdaWJA8=";
};
buildInputs = lib.optional stdenv.isDarwin libiconv;
cargoSha256 = "sha256-pdXLuogkz5q4+B/y/alA900OHVGBT8W6BR7I2aH8IaA=";
cargoSha256 = "sha256-Sn7ZcNdmMDQJHn99iTJX9c3uVhaGpRvEgdoJFmIUgeU=";
meta = with lib; {
description = "A hackable, minimal, fast TUI file explorer";

View file

@ -6,6 +6,7 @@
, pcre2
, gnome
, makeWrapper
, removeReferencesTo
}:
let
vendorHashes = {
@ -64,16 +65,25 @@ flutter.mkFlutterApp rec {
substituteInPlace "$out/share/applications/com.yubico.authenticator.desktop" \
--replace "@EXEC_PATH/authenticator" "$out/bin/yubioath-flutter" \
--replace "@EXEC_PATH/linux_support/com.yubico.yubioath.png" "$out/share/icons/com.yubico.yubioath.png"
# Remove unnecessary references to Flutter.
remove-references-to -t ${flutter.unwrapped} $out/app/data/flutter_assets/shaders/ink_sparkle.frag
'';
nativeBuildInputs = [
makeWrapper
removeReferencesTo
];
buildInputs = [
pcre2
];
disallowedReferences = [
flutter
flutter.unwrapped
];
meta = with lib; {
description = "Yubico Authenticator for Desktop";
homepage = "https://github.com/Yubico/yubioath-flutter";

View file

@ -0,0 +1,45 @@
{ IOKit
, buildGoModule
, fetchFromGitHub
, fetchpatch
, lib
, stdenv
}:
buildGoModule rec {
pname = "avalanchego";
version = "1.9.7";
src = fetchFromGitHub {
owner = "ava-labs";
repo = pname;
rev = "v${version}";
hash = "sha256-7WiIw2k0ZNm6jFHIiJlKuWFdEhb11qGVot1B50Za/GY=";
};
vendorHash = "sha256-2ezrasgGkMqr+dUF+TfsM5cevLGAFMyq9FlMxzKola8=";
# go mod vendor has a bug, see: https://github.com/golang/go/issues/57529
proxyVendor = true;
buildInputs = lib.optionals stdenv.isDarwin [ IOKit ];
subPackages = [ "main" ];
ldflags = [
"-s"
"-w"
"-X github.com/ava-labs/avalanchego/version.GitCommit=${version}"
];
postInstall = ''
mv $out/bin/{main,${pname}}
'';
meta = with lib; {
description = "Go implementation of an Avalanche node";
homepage = "https://github.com/ava-labs/avalanchego";
changelog = "https://github.com/ava-labs/avalanchego/releases/tag/v${version}";
license = licenses.bsd3;
maintainers = with maintainers; [ urandom ];
};
}

View file

@ -90,11 +90,11 @@ in
stdenv.mkDerivation rec {
pname = "brave";
version = "1.46.144";
version = "1.47.171";
src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "sha256-RivuyMPrqBXeTENrH4wApqHglPAZHVXMd863Wlh+EHY=";
sha256 = "sha256-0hKosta1fxth9ScDRmrrt8BH4CTIRm0ghetY4Jkuco8=";
};
dontConfigure = true;

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "circumflex";
version = "2.6";
version = "2.8";
src = fetchFromGitHub {
owner = "bensadeh";
repo = "circumflex";
rev = version;
hash = "sha256-pcY2PXiOazKAi8mAAbmftXDae01fcUw/u9JPOHQVclI=";
hash = "sha256-knN+T/dmIwHLqT3MJBjQhGlSeAu0lE2ZOv6tLqkcwS0=";
};
vendorHash = "sha256-rF1Hu4Pf9AF2MTx4GAPmzSn0M38uTxPS1bsAkO23SdI=";
vendorHash = "sha256-Xwek2xlvdGO6C/T0a96RGuMcX7jCbvntEYBf10tvmAo=";
nativeBuildInputs = [ makeWrapper ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "civo";
version = "1.0.41";
version = "1.0.45";
src = fetchFromGitHub {
owner = "civo";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-dvbxxW+UyTA+EzBV6g9JRao8D6ZE5hhXLX4q/mmPIQg=";
sha256 = "sha256-wYZC4eEvxvHgtb0l+kpP2msQgt8InJu59lgS5cwGxRI=";
};
vendorSha256 = "sha256-gBVSpjoAfbxlJnlrFrsBupJgVQ59sh1ipOry0Mgppig=";
vendorHash = "sha256-42ZTPl4kI+dgr78s9WvLFchQU9uvkMkkio53REjvpbw=";
nativeBuildInputs = [ installShellFiles ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "driftctl";
version = "0.38.1";
version = "0.38.2";
src = fetchFromGitHub {
owner = "snyk";
repo = "driftctl";
rev = "v${version}";
sha256 = "sha256-etH/92Nhl5ZkmBeDtgFN0pLUOzgWhd3lClW4+zXYPr4=";
sha256 = "sha256-PPzoZypTP3yrgU50Uv7yBNCc2nAa84quCTWjxyq9h/c=";
};
vendorSha256 = "sha256-tvl0VlMUD7rVlB/OjyptYyllx6brX+ycGTp4In9yEvE=";
vendorHash = "sha256-XVEXWBVqYoAlK4DP0GdWqJDcLy9WxCaUdNbVESJ9zoM=";
nativeBuildInputs = [ installShellFiles ];

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kubelogin";
version = "0.0.24";
version = "0.0.25";
src = fetchFromGitHub {
owner = "Azure";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xHMUS08gtfN72sMkGZ+2Cazgkd2HgvHSKqugYg+j1So=";
sha256 = "sha256-28snlCqvQ0aF7DHjeHWyjOYuy2wHd2EqEDqmst9MQLc=";
};
vendorSha256 = "sha256-mjIB0ITf296yDQJP46EI6pLYkZfyU3yzD9iwP0iIXvQ=";

View file

@ -8,13 +8,13 @@
buildGoModule rec {
pname = "kubeone";
version = "1.5.4";
version = "1.5.5";
src = fetchFromGitHub {
owner = "kubermatic";
repo = "kubeone";
rev = "v${version}";
hash = "sha256-s94o2/wInWMWbJcq8cpEbJYHL6vpD3Vurl/rOigzQRk=";
hash = "sha256-PdrU3kKuoT4MP5N2t4E1PIKZOMu8D0ZbUyMTIi/KZ7g=";
};
vendorHash = "sha256-Y4eivDchnN2rtQWjFY3cFiJXRfj48UfVUKM/OLuWXGA=";

View file

@ -2,17 +2,17 @@
buildGoModule rec {
pname = "kuttl";
version = "0.14.0";
version = "0.15.0";
cli = "kubectl-kuttl";
src = fetchFromGitHub {
owner = "kudobuilder";
repo = "kuttl";
rev = "v${version}";
sha256 = "sha256-xQS7qCUTM3X4SpUZfxKHb08poJ2W52R7+TNe4BFL5sY=";
sha256 = "sha256-u+j1ulM6B238qXvLMJZwLqglr9CGk81MsnBYiNiZVJQ=";
};
vendorSha256 = "sha256-u8Ezk78CrAhSeeMVXj09/Hiegtx+ZNKlr/Fg0O7+iOY=";
vendorHash = "sha256-taJAQPa0EA0Ph9OpCs7jzLqBV61kVstZrWyNEYc/GBk=";
subPackages = [ "cmd/kubectl-kuttl" ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "levant";
version = "0.3.1";
version = "0.3.2";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "levant";
rev = "v${version}";
sha256 = "sha256-ujybD4nSHC/w2Pfu43eSO6rNJjXFAvc81T05icWFvbs=";
sha256 = "sha256-UI8PVvTqk8D4S9kq3sgxrm8dkRokpgkLyTN6pzUXNV0=";
};
vendorSha256 = "sha256-pKxj0qz7adSuPpiXu4+2KBO3JZu8zZ8ycPF5LosF4T8=";
vendorSha256 = "sha256-MzKttGfuIg0Pp/iz68EpXuk4I+tFozhIabKlsWuvJ48=";
# The tests try to connect to a Nomad cluster.
doCheck = false;

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "pachyderm";
version = "2.4.2";
version = "2.4.4";
src = fetchFromGitHub {
owner = "pachyderm";
repo = "pachyderm";
rev = "v${version}";
hash = "sha256-IzZBs6g6MQKofhMIdLr7ty7HzwF+SoyzCJ6RDMHt0mo=";
hash = "sha256-53VUZHA+yURikVtcXXa/fZqwAqwjukBKS4NQEBBoHew=";
};
vendorHash = "sha256-j7zg0vIhdYbzyi4owdVEF4XyUNwGds6J01+3k5K90Yg=";
vendorHash = "sha256-k6ODl+whgeeyd8XaOjTDjxfShpOztirjq/Tg98YP8Hs=";
subPackages = [ "src/server/cmd/pachctl" ];

View file

@ -2,18 +2,18 @@
buildGoModule rec{
pname = "pinniped";
version = "0.20.0";
version = "0.22.0";
src = fetchFromGitHub {
owner = "vmware-tanzu";
repo = "pinniped";
rev = "v${version}";
sha256 = "sha256-JKZij9f6zlBzbYolxz03R5j95zKELVmEhX+QRTxF/cc=";
sha256 = "sha256-gi6uFJFP3hdHJqH9y7Q8tUGRJECPHxbajU5BJeBcJzo=";
};
subPackages = "cmd/pinniped";
vendorSha256 = "sha256-szv/B7LG/In0j6MT6KCnuUfaCnK7RsJOLeuOtJ/ig9w=";
vendorHash = "sha256-4N8HtBeGeu22Go63dV0WBdbheXylButu+M9vZL7qOcU=";
ldflags = [ "-s" "-w" ];

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "starboard";
version = "0.15.10";
version = "0.15.11";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-SuOfRLCEASgiLsy0xeuA1z55+vSMb4VGZuk+OVLSWJA=";
sha256 = "sha256-HgMGwumLL0z3l1/UEoJleoKsErFvznddFc9mJuco9fA=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
@ -20,7 +20,7 @@ buildGoModule rec {
find "$out" -name .git -print0 | xargs -0 rm -rf
'';
};
vendorSha256 = "sha256-uTDeYzq8XyjHHXfPQzN/ipHfqsPweedKhQQ8CkvqKIM=";
vendorSha256 = "sha256-WThZpum6sEYyDkwGKo3onMLy6hpmMJ/o6+5olX5nEjk=";
nativeBuildInputs = [ installShellFiles ];

View file

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "temporalite";
version = "0.2.0";
version = "0.3.0";
src = fetchFromGitHub {
owner = "temporalio";
repo = pname;
rev = "v${version}";
sha256 = "sha256-rLEkWg5LNVb7i/2IARKGuP9ugaVJA9pwYbKLm0QLmOc=";
sha256 = "sha256-IEB9AFEt8U2zXYfbChfL/UH1rNSLPnfS396/cPE8UdE=";
};
vendorSha256 = "sha256-vjuwh/HRRYfB6J49rfJxif12nYPnbBodWF9hTiGygS8=";
vendorSha256 = "sha256-w86/XCMRGBmXM+oQ5+0qiX0fdwiKXvsmEkApuRLUOiA=";
subPackages = [ "cmd/temporalite" ];

View file

@ -433,13 +433,13 @@
"vendorHash": null
},
"gitlab": {
"hash": "sha256-RCN4CRFffg1rhyNACo/5ebVzbvsUXf6otDRuxlF8RoM=",
"hash": "sha256-bCF6BLuzjUZToZKerfsGcav4DD6AWwOrlELxQKygHv4=",
"homepage": "https://registry.terraform.io/providers/gitlabhq/gitlab",
"owner": "gitlabhq",
"repo": "terraform-provider-gitlab",
"rev": "v15.7.1",
"rev": "v15.8.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-7XiZP51K/S5Al+VNJw4NcqzkMeqs2iSHCOlNAI4+id4="
"vendorHash": "sha256-aVbJT31IIgW0GYzwVX7kT4j7E+dadSbnttThh2lzGyE="
},
"google": {
"hash": "sha256-/UgxXHucsrt960zLQiPruqJLxjFriTrNKjeI1gNEWys=",

View file

@ -5,13 +5,13 @@ buildGoModule rec {
/* Do not use "dev" as a version. If you do, Tilt will consider itself
running in development environment and try to serve assets from the
source tree, which is not there once build completes. */
version = "0.30.9";
version = "0.30.13";
src = fetchFromGitHub {
owner = "tilt-dev";
repo = pname;
rev = "v${version}";
sha256 = "sha256-vZthFaIsgpZ2aap9kRSH//AHHnOpekPIkwpz9Tt0lI4=";
sha256 = "sha256-W67aQIXp2TOtZuccjQUGC9gNtvdyUNWuU7VM2LOFkCg=";
};
vendorSha256 = null;

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "vcluster";
version = "0.12.2";
version = "0.12.3";
src = fetchFromGitHub {
owner = "loft-sh";
repo = pname;
rev = "v${version}";
sha256 = "sha256-PkayQ1sLjnA+1Xatgs0EvZTCTfWV5uoYYtnKX8OAwYQ=";
sha256 = "sha256-7yyOpF/eIeJinTe0sHPWLLBUbKYDhphmW8qkOdYOdXM=";
};
vendorSha256 = null;

View file

@ -10,13 +10,13 @@
buildGoModule rec {
pname = "werf";
version = "1.2.195";
version = "1.2.197";
src = fetchFromGitHub {
owner = "werf";
repo = "werf";
rev = "v${version}";
hash = "sha256-rNhCZO4Axeuc5jEAndjma7/jnst1kDNdtb/h/jD2rtE=";
hash = "sha256-cRpXdV/aHxVxMd54nmf9bMogiC9V8ryvCtSe+6Vx/Hk=";
};
vendorHash = "sha256-GjcmpHyjhjCWE5gQR/oTHfhHYg5WRu8uhgAuWhdxlYk=";

View file

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "goeland";
version = "0.12.3";
version = "0.13.0";
src = fetchFromGitHub {
owner = "slurdge";
repo = pname;
rev = "v${version}";
sha256 = "sha256-R3ZkGTq0g90DkflLXr2MUBIv5Qspi3OM+sdDGqJYjyw=";
sha256 = "sha256-MD8wdXOZ8Kmun8AYv/zlRKwgAcGu2A349Xr8d7SVX4s=";
};
vendorSha256 = "sha256-iljGBe8c6dqEHRpMN5cz7wmminejoiXXDKuQDazDztA=";
vendorHash = "sha256-BErLmtzgVqDKLFAnKugDBwj3Vgm8rM6BfWcMOhu4SWY=";
ldflags = [
"-s"

View file

@ -1,17 +1,17 @@
{ mkDerivation, stdenv, lib, pkg-config, fetchFromGitHub, qtbase, qtsvg, qtmultimedia, qmake, boost, openssl, wrapQtAppsHook }:
{ stdenv, lib, cmake, pkg-config, fetchFromGitHub, qtbase, qtsvg, qtmultimedia, qtimageformats, qttools, boost, openssl, wrapQtAppsHook }:
mkDerivation rec {
stdenv.mkDerivation rec {
pname = "chatterino2";
version = "2.3.5";
version = "2.4.0";
src = fetchFromGitHub {
owner = "Chatterino";
repo = pname;
rev = "v${version}";
sha256 = "sha256-ozfLLoNUN+1SPXbMNbF1V5sdZgPZEA/J3xXzJP9D3uI=";
sha256 = "sha256-6t7Or2heyV0B5zdWZpN80iADe52faNVlIEZYtcixpZo=";
fetchSubmodules = true;
};
nativeBuildInputs = [ qmake pkg-config wrapQtAppsHook ];
buildInputs = [ qtbase qtsvg qtmultimedia boost openssl ];
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
buildInputs = [ qtbase qtsvg qtmultimedia qtimageformats qttools boost openssl ];
postInstall = lib.optionalString stdenv.isDarwin ''
mkdir -p "$out/Applications"
mv bin/chatterino.app "$out/Applications/"

View file

@ -3,13 +3,13 @@
let
xorgxrdp = stdenv.mkDerivation rec {
pname = "xorgxrdp";
version = "0.2.9";
version = "0.9.19";
src = fetchFromGitHub {
owner = "neutrinolabs";
repo = "xorgxrdp";
rev = "v${version}";
sha256 = "1bhp5x47hajhinvglmc4vxxnpjvfjm6369njb3ghqfr7c5xypvzr";
hash = "sha256-WI1KyJDQkmNHwweZMbNd2KUfawaieoGMDMQfeD12cZs=";
};
nativeBuildInputs = [ pkg-config autoconf automake which libtool nasm ];
@ -34,21 +34,23 @@ let
};
xrdp = stdenv.mkDerivation rec {
version = "0.9.9";
version = "0.9.21.1";
pname = "xrdp";
src = fetchFromGitHub {
owner = "volth";
owner = "neutrinolabs";
repo = "xrdp";
rev = "refs/tags/runtime-cfg-path-${version}"; # Fixes https://github.com/neutrinolabs/xrdp/issues/609; not a patch on top of the official repo because "xorgxrdp.configureFlags" above includes "xrdp.src" which must be patched already
rev = "v${version}";
fetchSubmodules = true;
sha256 = "0ynj6pml4f38y8571ryhifza57wfqg4frdrjcwzw3fmryiznfm1z";
hash = "sha256-/o052ij+Tpcw5/k1UyP6OGOzrtBwh3jRkftStIEhUF0=";
};
nativeBuildInputs = [ pkg-config autoconf automake which libtool nasm ];
nativeBuildInputs = [ pkg-config autoconf automake which libtool nasm perl ];
buildInputs = [ openssl systemd pam fuse libjpeg libopus xorg.libX11 xorg.libXfixes xorg.libXrandr ];
patches = [ ./dynamic_config.patch ];
postPatch = ''
substituteInPlace sesman/xauth.c --replace "xauth -q" "${xorg.xauth}/bin/xauth -q"
'';
@ -58,23 +60,23 @@ let
./bootstrap
'';
dontDisableStatic = true;
configureFlags = [ "--with-systemdsystemunitdir=/var/empty" "--enable-ipv6" "--enable-jpeg" "--enable-fuse" "--enable-rfxcodec" "--enable-opus" ];
configureFlags = [ "--with-systemdsystemunitdir=/var/empty" "--enable-ipv6" "--enable-jpeg" "--enable-fuse" "--enable-rfxcodec" "--enable-opus" "--enable-pam-config=unix" ];
installFlags = [ "DESTDIR=$(out)" "prefix=" ];
postInstall = ''
# remove generated keys (as non-determenistic) and upstart script
rm $out/etc/xrdp/{rsakeys.ini,key.pem,cert.pem,xrdp.sh}
# remove generated keys (as non-deterministic)
rm $out/etc/xrdp/{rsakeys.ini,key.pem,cert.pem}
cp $src/keygen/openssl.conf $out/share/xrdp/openssl.conf
substituteInPlace $out/etc/xrdp/sesman.ini --replace /etc/xrdp/pulse $out/etc/xrdp/pulse
# remove all session types except Xorg (they are not supported by this setup)
${perl}/bin/perl -i -ne 'print unless /\[(X11rdp|Xvnc|console|vnc-any|sesman-any|rdp-any|neutrinordp-any)\]/ .. /^$/' $out/etc/xrdp/xrdp.ini
perl -i -ne 'print unless /\[(X11rdp|Xvnc|console|vnc-any|sesman-any|rdp-any|neutrinordp-any)\]/ .. /^$/' $out/etc/xrdp/xrdp.ini
# remove all session types and then add Xorg
${perl}/bin/perl -i -ne 'print unless /\[(X11rdp|Xvnc|Xorg)\]/ .. /^$/' $out/etc/xrdp/sesman.ini
perl -i -ne 'print unless /\[(X11rdp|Xvnc|Xorg)\]/ .. /^$/' $out/etc/xrdp/sesman.ini
cat >> $out/etc/xrdp/sesman.ini <<EOF
@ -98,22 +100,8 @@ let
description = "An open source RDP server";
homepage = "https://github.com/neutrinolabs/xrdp";
license = licenses.asl20;
maintainers = [ ];
maintainers = with maintainers; [ chvp ];
platforms = platforms.linux;
knownVulnerabilities = [
"CVE-2020-4044"
"CVE-2022-23468"
"CVE-2022-23477"
"CVE-2022-23478"
"CVE-2022-23479"
"CVE-2022-23480"
"CVE-2022-23481"
"CVE-2022-23482"
"CVE-2022-23483"
"CVE-2022-23484"
"CVE-2022-23493"
"CVE-2022-23613"
];
};
};
in xrdp

View file

@ -0,0 +1,376 @@
diff --git a/common/xrdp_client_info.h b/common/xrdp_client_info.h
index f45195e8..b87ae64e 100644
--- a/common/xrdp_client_info.h
+++ b/common/xrdp_client_info.h
@@ -148,6 +148,9 @@ struct xrdp_client_info
char certificate[1024];
char key_file[1024];
+ char rsakeys_ini_file[256];
+ char xrdp_keyboard_ini_file[256];
+ char keymaps_path[256];
/* X11 keyboard layout - inferred from keyboard type/subtype */
char model[16];
diff --git a/libxrdp/xrdp_rdp.c b/libxrdp/xrdp_rdp.c
index d08f068a..cc7a173d 100644
--- a/libxrdp/xrdp_rdp.c
+++ b/libxrdp/xrdp_rdp.c
@@ -27,6 +27,7 @@
#include "log.h"
#include "ssl_calls.h"
#include "string_calls.h"
+#include <string.h>
#if defined(XRDP_NEUTRINORDP)
#include <freerdp/codec/rfx.h>
@@ -46,10 +47,21 @@ xrdp_rdp_read_config(const char *xrdp_ini, struct xrdp_client_info *client_info)
struct list *values = (struct list *)NULL;
char *item = NULL;
char *value = NULL;
+ char cfg_dir[256];
int pos;
char *tmp = NULL;
int tmp_length = 0;
+ g_strncpy(cfg_dir, xrdp_ini, 255);
+ *(strrchr(cfg_dir, '/')) = 0;
+
+ /* default location is next to xrdp.ini */
+ g_snprintf(client_info->certificate, 1023, "%s/cert.pem", cfg_dir);
+ g_snprintf(client_info->key_file, 1023, "%s/key.pem", cfg_dir);
+ g_snprintf(client_info->xrdp_keyboard_ini_file, 255, "%s/xrdp_keyboard.ini", cfg_dir);
+ g_snprintf(client_info->rsakeys_ini_file, 255, "%s/rsakeys.ini", cfg_dir);
+ g_snprintf(client_info->keymaps_path, 255, "%s", cfg_dir);
+
client_info->xrdp_keyboard_overrides.type = -1;
client_info->xrdp_keyboard_overrides.subtype = -1;
client_info->xrdp_keyboard_overrides.layout = -1;
@@ -253,14 +265,14 @@ xrdp_rdp_read_config(const char *xrdp_ini, struct xrdp_client_info *client_info)
if (g_strlen(value) == 0)
{
/* default key_file path */
- g_snprintf(client_info->key_file, 1023, "%s/key.pem", XRDP_CFG_PATH);
+ g_snprintf(client_info->key_file, 1023, "%s/key.pem", cfg_dir);
LOG(LOG_LEVEL_INFO, "Using default X.509 key file: %s",
client_info->key_file);
}
else if (value[0] != '/')
{
/* default key_file path */
- g_snprintf(client_info->key_file, 1023, "%s/key.pem", XRDP_CFG_PATH);
+ g_snprintf(client_info->key_file, 1023, "%s/key.pem", cfg_dir);
LOG(LOG_LEVEL_WARNING,
"X.509 key file should use absolute path, using "
"default instead: %s", client_info->key_file);
@@ -277,6 +289,51 @@ xrdp_rdp_read_config(const char *xrdp_ini, struct xrdp_client_info *client_info)
client_info->key_file, g_get_strerror());
}
}
+ else if (g_strcasecmp(item, "rsakeys_ini") == 0)
+ {
+ if (value[0] != '/')
+ {
+ g_snprintf(client_info->rsakeys_ini_file, 255, "%s/rsakeys.ini", cfg_dir);
+ log_message(LOG_LEVEL_WARNING,
+ "rsakeys.ini file should use absolute path, using "
+ "default instead: %s", client_info->rsakeys_ini_file);
+ }
+ else
+ {
+ /* use user defined rsakeys.ini */
+ g_strncpy(client_info->rsakeys_ini_file, value, 255);
+ }
+ }
+ else if (g_strcasecmp(item, "xrdp_keyboard_ini") == 0)
+ {
+ if (value[0] != '/')
+ {
+ g_snprintf(client_info->xrdp_keyboard_ini_file, 255, "%s/xrdp_keyboard.ini", cfg_dir);
+ log_message(LOG_LEVEL_WARNING,
+ "xrdp_keyboard.ini file should use absolute path, using "
+ "default instead: %s", client_info->xrdp_keyboard_ini_file);
+ }
+ else
+ {
+ /* use user defined xrdp_keyboard.ini */
+ g_strncpy(client_info->xrdp_keyboard_ini_file, value, 255);
+ }
+ }
+ else if (g_strcasecmp(item, "keymaps_path") == 0)
+ {
+ if (value[0] != '/')
+ {
+ g_snprintf(client_info->keymaps_path, 255, "%s", cfg_dir);
+ log_message(LOG_LEVEL_WARNING,
+ "keymaps_path should use absolute path, using "
+ "default instead: %s", client_info->keymaps_path);
+ }
+ else
+ {
+ /* use user defined xrdp_keyboard.ini */
+ g_strncpy(client_info->keymaps_path, value, 255);
+ }
+ }
else if (g_strcasecmp(item, "domain_user_separator") == 0
&& g_strlen(value) > 0)
{
diff --git a/libxrdp/xrdp_sec.c b/libxrdp/xrdp_sec.c
index 8fa34aea..da94cf95 100644
--- a/libxrdp/xrdp_sec.c
+++ b/libxrdp/xrdp_sec.c
@@ -371,7 +371,6 @@ xrdp_load_keyboard_layout(struct xrdp_client_info *client_info)
char *item = (char *)NULL;
char *value = (char *)NULL;
char *q = (char *)NULL;
- char keyboard_cfg_file[256] = { 0 };
char rdp_layout[256] = { 0 };
const struct xrdp_keyboard_overrides *ko =
@@ -419,10 +418,9 @@ xrdp_load_keyboard_layout(struct xrdp_client_info *client_info)
client_info->keyboard_subtype = 1;
}
- g_snprintf(keyboard_cfg_file, 255, "%s/xrdp_keyboard.ini", XRDP_CFG_PATH);
- LOG(LOG_LEVEL_DEBUG, "keyboard_cfg_file %s", keyboard_cfg_file);
+ LOG(LOG_LEVEL_DEBUG, "keyboard_cfg_file %s", client_info->xrdp_keyboard_ini_file);
- fd = g_file_open(keyboard_cfg_file);
+ fd = g_file_open(client_info->xrdp_keyboard_ini_file);
if (fd >= 0)
{
@@ -594,7 +592,7 @@ xrdp_load_keyboard_layout(struct xrdp_client_info *client_info)
else
{
LOG(LOG_LEVEL_ERROR, "xrdp_load_keyboard_layout: error opening %s",
- keyboard_cfg_file);
+ client_info->xrdp_keyboard_ini_file);
}
}
@@ -2759,7 +2757,6 @@ xrdp_sec_incoming(struct xrdp_sec *self)
int index = 0;
char *item = NULL;
char *value = NULL;
- char key_file[256];
iso = self->mcs_layer->iso_layer;
@@ -2805,19 +2802,17 @@ xrdp_sec_incoming(struct xrdp_sec *self)
LOG(LOG_LEVEL_DEBUG, "Using RDP security, and "
"reading the server configuration");
- g_memset(key_file, 0, sizeof(char) * 256);
g_random(self->server_random, 32);
items = list_create();
items->auto_free = 1;
values = list_create();
values->auto_free = 1;
- g_snprintf(key_file, 255, "%s/rsakeys.ini", XRDP_CFG_PATH);
- if (file_by_name_read_section(key_file, "keys", items, values) != 0)
+ if (file_by_name_read_section(self->rdp_layer->client_info.rsakeys_ini_file, "keys", items, values) != 0)
{
/* this is a show stopper */
LOG(LOG_LEVEL_ERROR, "XRDP cannot read file: %s "
- "(check permissions)", key_file);
+ "(check permissions)", self->rdp_layer->client_info.rsakeys_ini_file);
list_delete(items);
list_delete(values);
return 1;
diff --git a/sesman/config.c b/sesman/config.c
index 61e9e403..0466f61a 100644
--- a/sesman/config.c
+++ b/sesman/config.c
@@ -34,6 +34,7 @@
#include "sesman.h"
#include "log.h"
#include "string_calls.h"
+#include <string.h>
#include "chansrv/chansrv_common.h"
/***************************************************************************//**
@@ -47,11 +48,10 @@
*
*/
static int
-config_read_globals(int file, struct config_sesman *cf, struct list *param_n,
+config_read_globals(const char *base_dir, int file, struct config_sesman *cf, struct list *param_n,
struct list *param_v)
{
int i;
- int length;
char *buf;
list_clear(param_v);
@@ -127,13 +127,12 @@ config_read_globals(int file, struct config_sesman *cf, struct list *param_n,
g_free(cf->default_wm);
cf->default_wm = g_strdup("startwm.sh");
}
- /* if default_wm doesn't begin with '/', it's a relative path to XRDP_CFG_PATH */
+ /* if default_wm doesn't begin with '/', it's a relative path to base_dir */
if (cf->default_wm[0] != '/')
{
/* sizeof operator returns string length including null terminator */
- length = sizeof(XRDP_CFG_PATH) + g_strlen(cf->default_wm) + 1; /* '/' */
- buf = (char *)g_malloc(length, 0);
- g_sprintf(buf, "%s/%s", XRDP_CFG_PATH, cf->default_wm);
+ buf = (char *)g_malloc(g_strlen(base_dir) + 1 + g_strlen(cf->default_wm) + 1, 0);
+ g_sprintf(buf, "%s/%s", base_dir, cf->default_wm);
g_free(cf->default_wm);
cf->default_wm = g_strdup(buf);
g_free(buf);
@@ -151,10 +150,8 @@ config_read_globals(int file, struct config_sesman *cf, struct list *param_n,
/* if reconnect_sh doesn't begin with '/', it's a relative path to XRDP_CFG_PATH */
if (cf->reconnect_sh[0] != '/')
{
- /* sizeof operator returns string length including null terminator */
- length = sizeof(XRDP_CFG_PATH) + g_strlen(cf->reconnect_sh) + 1; /* '/' */
- buf = (char *)g_malloc(length, 0);
- g_sprintf(buf, "%s/%s", XRDP_CFG_PATH, cf->reconnect_sh);
+ buf = (char *)g_malloc(g_strlen(base_dir) + 1 + g_strlen(cf->reconnect_sh) + 1, 0);
+ g_sprintf(buf, "%s/%s", base_dir, cf->reconnect_sh);
g_free(cf->reconnect_sh);
cf->reconnect_sh = g_strdup(buf);
g_free(buf);
@@ -511,6 +508,7 @@ struct config_sesman *
config_read(const char *sesman_ini)
{
struct config_sesman *cfg;
+ char cfg_dir[256];
int all_ok = 0;
if ((cfg = g_new0(struct config_sesman, 1)) != NULL)
@@ -532,8 +530,10 @@ config_read(const char *sesman_ini)
param_v->auto_free = 1;
/* read global config */
- config_read_globals(fd, cfg, param_n, param_v);
-
+ g_strcpy(cfg_dir, sesman_ini);
+ *(strrchr(cfg_dir, '/')) = 0; // cfg_file validated to contain '/'
+
+ config_read_globals(cfg_dir, fd, cfg, param_n, param_v);
/* read Xvnc/X11rdp/Xorg parameter list */
config_read_vnc_params(fd, cfg, param_n, param_v);
config_read_rdp_params(fd, cfg, param_n, param_v);
diff --git a/xrdp/lang.c b/xrdp/lang.c
index e4c18077..06f92997 100644
--- a/xrdp/lang.c
+++ b/xrdp/lang.c
@@ -229,7 +229,7 @@ km_read_section(int fd, const char *section_name, struct xrdp_key_info *keymap)
/*****************************************************************************/
int
-get_keymaps(int keylayout, struct xrdp_keymap *keymap)
+get_keymaps(const char* keymaps_path, int keylayout, struct xrdp_keymap *keymap)
{
int fd;
int basic_key_layout = keylayout & 0x0000ffff;
@@ -239,21 +239,21 @@ get_keymaps(int keylayout, struct xrdp_keymap *keymap)
filename = (char *)g_malloc(256, 0);
/* check if there is a keymap file e.g. km-e00100411.ini */
- g_snprintf(filename, 255, "%s/km-%08x.ini", XRDP_CFG_PATH, keylayout);
+ g_snprintf(filename, 255, "%s/km-%08x.ini", keymaps_path, keylayout);
/* if the file does not exist, use only lower 16 bits instead */
if (!g_file_exist(filename))
{
LOG(LOG_LEVEL_WARNING, "Cannot find keymap file %s", filename);
/* e.g. km-00000411.ini */
- g_snprintf(filename, 255, "%s/km-%08x.ini", XRDP_CFG_PATH, basic_key_layout);
+ g_snprintf(filename, 255, "%s/km-%08x.ini", keymaps_path, basic_key_layout);
}
/* finally, use 'en-us' */
if (!g_file_exist(filename))
{
LOG(LOG_LEVEL_WARNING, "Cannot find keymap file %s", filename);
- g_snprintf(filename, 255, "%s/km-00000409.ini", XRDP_CFG_PATH);
+ g_snprintf(filename, 255, "%s/km-00000409.ini", keymaps_path);
}
if (g_file_exist(filename))
diff --git a/xrdp/xrdp.c b/xrdp/xrdp.c
index e91672fb..37cef0c0 100644
--- a/xrdp/xrdp.c
+++ b/xrdp/xrdp.c
@@ -384,7 +384,6 @@ xrdp_sanity_check(void)
{
int intval = 1;
int host_be;
- const char *key_file = XRDP_CFG_PATH "/rsakeys.ini";
/* check compiled endian with actual endian */
host_be = !((int)(*(unsigned char *)(&intval)));
@@ -429,12 +428,6 @@ xrdp_sanity_check(void)
return 1;
}
- if (!g_file_exist(key_file))
- {
- g_writeln("File %s is missing, create it using xrdp-keygen", key_file);
- return 1;
- }
-
return 0;
}
diff --git a/xrdp/xrdp.h b/xrdp/xrdp.h
index 36d8f87a..687b9dd5 100644
--- a/xrdp/xrdp.h
+++ b/xrdp/xrdp.h
@@ -380,7 +380,7 @@ get_char_from_scan_code(int device_flags, int scan_code, int *keys,
int caps_lock, int num_lock, int scroll_lock,
struct xrdp_keymap *keymap);
int
-get_keymaps(int keylayout, struct xrdp_keymap *keymap);
+get_keymaps(const char* keymaps_path, int keylayout, struct xrdp_keymap *keymap);
/* xrdp_login_wnd.c */
int
diff --git a/xrdp/xrdp.ini.in b/xrdp/xrdp.ini.in
index 3b6340f8..c05e2930 100644
--- a/xrdp/xrdp.ini.in
+++ b/xrdp/xrdp.ini.in
@@ -52,6 +52,12 @@ crypt_level=high
; openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 365
certificate=
key_file=
+;directory with km-*.ini files; default is the directory of xrdp.ini
+#keymaps_path=
+;location of xrdp_keyboard_ini; default next to xrdp.ini
+#xrdp_keyboard_ini=
+;location of rsakeys.ini; default next to xrdp.ini
+#rsakeys_ini=
; set SSL protocols
; can be comma separated list of 'SSLv3', 'TLSv1', 'TLSv1.1', 'TLSv1.2', 'TLSv1.3'
diff --git a/xrdp/xrdp_wm.c b/xrdp/xrdp_wm.c
index 94691582..602b3ca6 100644
--- a/xrdp/xrdp_wm.c
+++ b/xrdp/xrdp_wm.c
@@ -64,7 +64,7 @@ xrdp_wm_create(struct xrdp_process *owner,
self->mm = xrdp_mm_create(self);
self->default_font = xrdp_font_create(self);
/* this will use built in keymap or load from file */
- get_keymaps(self->session->client_info->keylayout, &(self->keymap));
+ get_keymaps(client_info->keymaps_path, self->session->client_info->keylayout, &(self->keymap));
xrdp_wm_set_login_state(self, WMLS_RESET);
self->target_surface = self->screen;
self->current_surface_index = 0xffff; /* screen */
diff --git a/xup/xup.c b/xup/xup.c
index e67d9477..8bc718a0 100644
--- a/xup/xup.c
+++ b/xup/xup.c
@@ -318,7 +318,7 @@ lib_mod_event(struct mod *mod, int msg, tbus param1, tbus param2,
msg param1 param2 param3 param4
15 0 65507 29 0
16 0 65507 29 49152 */
- init_stream(s, 8192);
+ init_stream(s, (int)sizeof(mod->client_info) < 8192 ? 8192 : (int)sizeof(mod->client_info));
s_push_layer(s, iso_hdr, 4);
out_uint16_le(s, 103);
out_uint32_le(s, 16); /* key up */

View file

@ -7,13 +7,13 @@ let
apps = lib.makeBinPath [ openssh python' cron rsync sshfs-fuse encfs ];
in stdenv.mkDerivation rec {
pname = "backintime-common";
version = "1.3.2";
version = "1.3.3";
src = fetchFromGitHub {
owner = "bit-team";
repo = "backintime";
rev = "v${version}";
sha256 = "sha256-7iTQZ7SiESsKK8F8BpLrRNkj8JhHo64kliaOvMvYGvw=";
sha256 = "sha256-cKmzq155/dCl5wZA2SE3XjfCocHxTh4Wa2IdfzSfQHg=";
};
nativeBuildInputs = [ makeWrapper gettext ];

View file

@ -10,7 +10,9 @@ python3.pkgs.buildPythonApplication rec {
sha256 = "sha256-Uw8UIJa+Dtsy+o31I1ynLyhZrFNX42NFRXu1O2ISbzU=";
};
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
pythonRelaxDeps = [ "cheroot" ];
nativeBuildInputs = with python3.pkgs; [ setuptools-scm pythonRelaxDepsHook ];
propagatedBuildInputs = with python3.pkgs; [
babel

View file

@ -1,23 +1,19 @@
{ lib, stdenv, appimageTools, desktop-file-utils, fetchurl }:
let
version = "2020.10.111";
version = "2022.10.117";
name = "p3x-onenote-${version}";
plat = {
aarch64-linux = "-arm64";
armv7l-linux = "-armv7l";
i386-linux = "-i386";
i686-linux = "-i386";
x86_64-linux = "";
}.${stdenv.hostPlatform.system};
sha256 = {
aarch64-linux = "0a3c0w1312l6k2jvn7cn8priibnh8wg0184zjcli29f9ds1afl5s";
armv7l-linux = "172m2d94zzm8q61pvnjy01cl5fg11ad9hfh1han0gycnv3difniy";
i386-linux = "12m0i5sb15sbysp5fvhbj4k36950m7kpjr12n88r5fpkyh13ihsp";
i686-linux = "12m0i5sb15sbysp5fvhbj4k36950m7kpjr12n88r5fpkyh13ihsp";
x86_64-linux = "0bn48r55l5dh8zcf8ijh3z6hlyp3s6fvfyqc1csvnslm63dfkzcq";
aarch64-linux = "0plpwymm1bgzbzwk2689lw1fadxdwxzzn5dmayk1ayxz1k3pj9wi";
armv7l-linux = "1pvr8f1ccl4nyfmshn3v3jfaa5x519rsy57g4pdapffj10vpbkb8";
x86_64-linux = "12j2py8yb81ngahbkbi7269izpc5aydd432cbv0sw45ighhyqhmr";
}.${stdenv.hostPlatform.system};
src = fetchurl {

View file

@ -17,14 +17,14 @@
let
pname = "qownnotes";
appname = "QOwnNotes";
version = "23.1.0";
version = "23.1.1";
in
stdenv.mkDerivation {
inherit pname appname version;
src = fetchurl {
url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
sha256 = "sha256-HMs8DTL2BDSDmchadpVvbShjJMPP6W587F38uiixCuQ=";
sha256 = "sha256-BMisfFMy3kNoZHCYbGqzT9hxzVpKBUN6fSOilPw9O1w=";
};
nativeBuildInputs = [

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "super-productivity";
version = "7.12.0";
version = "7.12.1";
src = fetchurl {
url = "https://github.com/johannesjo/super-productivity/releases/download/v${version}/superProductivity-${version}.AppImage";
sha256 = "sha256-Ms7wt79iZz0xnrp+yrFs/FzVqINe6BSOEmYG9Oiz5JU=";
sha256 = "sha256-zMw6C7kyO8yDLF2vrRlBqcgzcfM4TR7/fJPHPaixw6Y=";
name = "${pname}-${version}.AppImage";
};

View file

@ -3,6 +3,9 @@
, stdenv
, fetchFromGitHub
, cmake
, macdylibbundler
, makeWrapper
, darwin
, codec2
, libpulseaudio
, libsamplerate
@ -21,23 +24,28 @@
stdenv.mkDerivation rec {
pname = "freedv";
version = "1.8.6";
version = "1.8.7";
src = fetchFromGitHub {
owner = "drowe67";
repo = "freedv-gui";
rev = "v${version}";
hash = "sha256-zzzRePBc09fK1ILoDto3EVz7IxJKePi39E18BrQedE0=";
hash = "sha256-N9LZCf2YAhVgxnQWgCB9TqGNpUGP1ZqpLmbYIaQsn08=";
};
postPatch = lib.optionalString stdenv.isDarwin ''
substituteInPlace src/CMakeLists.txt \
--replace "if(APPLE)" "if(0)" \
--replace "\''${FREEDV_LINK_LIBS})" "\''${FREEDV_LINK_LIBS} \''${FREEDV_LINK_LIBS_OSX})" \
--replace "\''${RES_FILES})" "\''${RES_FILES} \''${FREEDV_SOURCES_OSX})"
--replace "\''${CMAKE_SOURCE_DIR}/macdylibbundler/dylibbundler" "dylibbundler"
sed -i "/hdiutil/d" src/CMakeLists.txt
'';
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [
cmake
] ++ lib.optionals stdenv.isDarwin [
macdylibbundler
makeWrapper
darwin.autoSignDarwinBinariesHook
];
buildInputs = [
codec2
@ -67,6 +75,12 @@ stdenv.mkDerivation rec {
doCheck = true;
postInstall = lib.optionalString stdenv.isDarwin ''
mkdir -p $out/Applications
mv $out/bin/FreeDV.app $out/Applications
makeWrapper $out/Applications/FreeDV.app/Contents/MacOS/FreeDV $out/bin/freedv
'';
meta = with lib; {
homepage = "https://freedv.org/";
description = "Digital voice for HF radio";

View file

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "siril";
version = "1.0.5";
version = "1.0.6";
src = fetchFromGitLab {
owner = "free-astro";
repo = pname;
rev = version;
sha256 = "sha256-1NPMTHPbYKPmaG+xRyKFU4/4Iio2ptn+HOvnsg4hoFE=";
sha256 = "sha256-KFCA3fUMVFHmh1BdKed5/dkq0EeYcmoWec97WX9ZHUc=";
};
nativeBuildInputs = [

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "bowtie2";
version = "2.4.5";
version = "2.5.1";
src = fetchFromGitHub {
owner = "BenLangmead";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xCsTkQXrZS+Njn0YfidhPln+OwVfTXOqbtB0dCfTP2U=";
sha256 = "sha256-HaiZmWU6akHXJVWBmCvkG2E61NDrAP7UIxx9DNCEZqE=";
};
nativeBuildInputs = [ cmake ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "last";
version = "1411";
version = "1422";
src = fetchFromGitLab {
owner = "mcfrith";
repo = "last";
rev = version;
sha256 = "sha256-CO3tlFx9NxGplErENG6iFikgE246swPITsVR+nHzsYw=";
sha256 = "sha256-3OhttOd6qgO6d+sbVkZj8i/K6bJTvlMyfa3E4mIpt24=";
};
nativeBuildInputs = [ unzip ];

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "sambamba";
version = "0.8.2";
version = "1.0.0";
src = fetchFromGitHub {
owner = "biod";
repo = "sambamba";
rev = "v${version}";
sha256 = "sha256-FEa9QjQoGNUOAtMNMZcqpTKMKVtXoBuOomTy0mpos/0=";
sha256 = "sha256-HwAzsbT71Q35Io6H7Hzs4RTatpRpdHqV0cwPYAlsf6c=";
fetchSubmodules = true;
};

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "star";
version = "2.7.10a";
version = "2.7.10b";
src = fetchFromGitHub {
repo = "STAR";
owner = "alexdobin";
rev = version;
sha256 = "sha256-qwddCGMOKWgx76qGwRQXwvv9fCSeVsZbWHmlBwEqGKE=";
sha256 = "sha256-58Y4lzqXwBhRlXcionUg2IhAg5znNUuyr/FsuNZd+5Q=";
};
sourceRoot = "source/source";

View file

@ -0,0 +1,56 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, zlib
}:
stdenv.mkDerivation {
pname = "TandemAligner";
version = "unstable-2022-09-17";
src = fetchFromGitHub {
owner = "seryrzu";
repo = "tandem_aligner";
rev = "ac6004f108ad20477045f4d0b037d96051a9df70";
hash = "sha256-iMDj1HZ8LzmZckuAM3lbG3eSJSd/5JGVA6SBs7+AgX8=";
};
sourceRoot = "source/tandem_aligner";
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp src/projects/tandem_aligner/tandem_aligner $out/bin
runHook postInstall
'';
doCheck = true;
# adapted from target test_launch in Makefile
checkPhase = ''
runHook preCheck
mkdir -p $TMPDIR/test_launch
src/projects/tandem_aligner/tandem_aligner \
--first $src/tandem_aligner/test_dataset/first.fasta \
--second $src/tandem_aligner/test_dataset/second.fasta \
-o $TMPDIR/test_launch \
--debug
grep -q "Thank you for using TandemAligner!" $TMPDIR/test_launch/tandem_aligner.log
diff $TMPDIR/test_launch/cigar.txt $src/tandem_aligner/test_dataset/true_cigar.txt
runHook postCheck
'';
meta = {
description = "A parameter-free algorithm for sequence alignment";
homepage = "https://github.com/seryrzu/tandem_aligner";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ amesgen ];
platforms = lib.platforms.linux;
mainProgram = "tandem_aligner";
};
}

View file

@ -2,13 +2,13 @@
mkDerivation rec {
pname = "openhantek6022";
version = "3.3.1";
version = "3.3.2.1";
src = fetchFromGitHub {
owner = "OpenHantek";
repo = "OpenHantek6022";
rev = version;
sha256 = "sha256-8QXFTQQZ5Q1SRQI4jWzRek+3BTuWfGHJIbgvwbZulg8=";
sha256 = "sha256-ysluU3UmWtrTAstnCbSy4TdzbjcnSUeE+d8mpC7Ocvk=";
};
nativeBuildInputs = [ cmake makeWrapper ];

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "fast-downward";
version = "22.06.1";
version = "22.12.0";
src = fetchFromGitHub {
owner = "aibasel";
repo = "downward";
rev = "release-${version}";
sha256 = "sha256-SBksyZoLR1MtyJUbGigGIbT72qVpN+nznU/bmJGYRz8=";
sha256 = "sha256-GwZ5BGzLRMgWNBaA7M2D2p9OxvdyWqm+sTwxGpcI/qY=";
};
nativeBuildInputs = [ cmake python3.pkgs.wrapPython ];

View file

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "gretl";
version = "2022b";
version = "2022c";
src = fetchurl {
url = "mirror://sourceforge/gretl/${pname}-${version}.tar.xz";
sha256 = "sha256-A+LyWPSUBBvnnyBrVSAUCiny24UAztUwy1nmRoDaGjI=";
sha256 = "sha256-4QAQTNqbfIX6K3CdtKcVONtCWrkTRvGl2ZXGR1eyQdA=";
};
buildInputs = [

View file

@ -12,6 +12,14 @@ stdenv.mkDerivation {
patches = [ ./ocaml-includes.patch ./ocaml-3.12.patch ];
postPatch = ''
# Deprecated in ocaml 3.10 https://github.com/ocaml/ocaml/commit/f6190f3d0c49c5220d443ee8d03ca5072d68aa87
# Deprecated in ocaml 3.08 https://github.com/ocaml/ocaml/commit/0c7aecb88dc696f66f49f3bed54a037361a26b8d
substituteInPlace fastdot_c.c --replace copy_double caml_copy_double --replace Bigarray_val Caml_ba_array_val --replace caml_bigarray caml_ba_array
# They were already deprecated in 3.12 https://v2.ocaml.org/releases/3.12/htmlman/libref/Array.html
substituteInPlace abffs.ml main.ml --replace create_matrix make_matrix
substituteInPlace intHashtbl.ml --replace Array.create Array.make
'';
strictDeps = true;
nativeBuildInputs = [ makeWrapper ocaml ];
@ -20,7 +28,7 @@ stdenv.mkDerivation {
makeFlags = [
"CAML_INCLUDES=${ocaml}/lib/ocaml/caml"
"WITHBIGARRAY=bigarray.cma"
("WITHBIGARRAY=" + lib.optionalString (lib.versionOlder ocaml.version "4.08.0") "bigarray.cma")
];
# see https://bugzilla.redhat.com/show_bug.cgi?id=435559

View file

@ -15,7 +15,7 @@ diff -ru megam_0.92/Makefile megam_0.92-b/Makefile
#WITHCLIBS =-I /usr/lib/ocaml/3.09.2/caml
-WITHCLIBS =-I /usr/lib/ocaml/caml
+WITHCLIBS =-I $(CAML_INCLUDES)
+WITHCLIBS =-I $(CAML_INCLUDES) -I +unix -I +str
################ End of user's variables #####################

View file

@ -4,11 +4,11 @@
buildPythonApplication rec {
pname = "MAVProxy";
version = "1.8.57";
version = "1.8.59";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-tsx3oVXPIa3OtbLWj3QWrW9leL9/jsdbbLG+Wd3nxn4=";
sha256 = "sha256-XY0d9q4nSuPflN4ZX+nT4RKFy6i4Cd2lNWvWaJQzWW8=";
};
postPatch = ''

View file

@ -35,16 +35,25 @@
mkDerivation rec {
pname = "recoll";
version = "1.33.2";
version = "1.33.4";
src = fetchurl {
url = "https://www.lesbonscomptes.com/${pname}/${pname}-${version}.tar.gz";
sha256 = "sha256-ql4VHiblIn8uihUbF1htPnpvjw0qMxdzW8HLGlUrZW0=";
sha256 = "sha256-ffD49sGYWYEWAFPRtpyDU/CYFvkrEDL21Ddq3QsXCvc=";
};
configureFlags = [ "--enable-recollq" "--disable-webkit" "--without-systemd" ]
++ lib.optionals (!withGui) [ "--disable-qtgui" "--disable-x11mon" ]
++ (if stdenv.isLinux then [ "--with-inotify" ] else [ "--without-inotify" ]);
configureFlags = [
"--enable-recollq"
"--disable-webkit"
"--without-systemd"
] ++ lib.optionals (!withGui) [
"--disable-qtgui"
"--disable-x11mon"
] ++ (if stdenv.isLinux then [
"--with-inotify"
] else [
"--without-inotify"
]);
NIX_CFLAGS_COMPILE = [ "-DNIXPKGS" ];
@ -54,13 +63,23 @@ mkDerivation rec {
];
nativeBuildInputs = [
file pkg-config python3Packages.setuptools which
file
pkg-config
python3Packages.setuptools
which
];
buildInputs = [
bison chmlib python3Packages.python xapian zlib
] ++ lib.optional withGui qtbase
++ lib.optional stdenv.isDarwin libiconv;
bison
chmlib
python3Packages.python
xapian
zlib
] ++ lib.optional withGui [
qtbase
] ++ lib.optional stdenv.isDarwin [
libiconv
];
# the filters search through ${PATH} using a sh proc 'checkcmds' for the
# filtering utils. Short circuit this by replacing the filtering command with
@ -108,7 +127,8 @@ mkDerivation rec {
members, email attachments.
'';
homepage = "https://www.lesbonscomptes.com/recoll/";
license = licenses.gpl2;
changelog = "https://www.lesbonscomptes.com/recoll/pages/release-${version}.html";
license = licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ jcumming ];
};

View file

@ -15,11 +15,11 @@ let
in
stdenv.mkDerivation rec {
pname = "hyper";
version = "3.3.0";
version = "3.4.1";
src = fetchurl {
url = "https://github.com/vercel/hyper/releases/download/v${version}/hyper_${version}_amd64.deb";
sha256 = "sha256-VJAFa4I5nHuS/aXhiiXztUh2MjCq5zdwCtK0oSsOrGQ=";
sha256 = "sha256-jEzZ6MWFaNXBS8CAzfn/ufMPpWcua9HhBFzetWMlH1Y=";
};
nativeBuildInputs = [ dpkg ];

View file

@ -14,13 +14,13 @@
buildGoPackage rec {
pname = "forgejo";
version = "1.18.2-0";
version = "1.18.2-1";
src = fetchurl {
name = "${pname}-src-${version}.tar.gz";
# see https://codeberg.org/forgejo/forgejo/releases
url = "https://codeberg.org/attachments/5d59ec04-9f29-4b32-a1ef-bec5c3132e26";
hash = "sha256-RLShwdx8geyFr1Jk5qDVbsEt2hCjdrwX0lNHea7P+pk=";
url = "https://codeberg.org/attachments/44ff6fcb-1515-4bba-85bf-3d3795ced2f7";
hash = "sha256-XSh17AwPtC+Y24lgjjXJzT/uBHg+0hWZ2RZ/eNF4mCY=";
};
outputs = [ "out" "data" ];

View file

@ -12,13 +12,13 @@
buildPythonApplication rec {
pname = "git-machete";
version = "3.14.2";
version = "3.14.3";
src = fetchFromGitHub {
owner = "virtuslab";
repo = pname;
rev = "v${version}";
hash = "sha256-uIVt7pneJq7l/kMSa7VqhcQgXhHCrpBGEqE7QZaDyQQ=";
hash = "sha256-VOny8r00JYUT4Z7LukvWTH9ZTn86vn2Dc1YhPmtdE5s=";
};
nativeBuildInputs = [ installShellFiles ];

View file

@ -15,12 +15,12 @@
buildGoPackage rec {
pname = "gitea";
version = "1.18.2";
version = "1.18.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-NqlY5s3tZT9HO6X0knlTPwoY6tMsYm9SyH3CEZpIcy0=";
hash = "sha256-jqjpbDgcmwZoc/ovgburFeeta9mAJOmz7yrvmUKAwRU=";
};
patches = [

View file

@ -0,0 +1,27 @@
{ lib, fetchFromGitHub, rustPlatform, git }:
rustPlatform.buildRustPackage rec {
pname = "gitprompt-rs";
version = "0.3.0";
src = fetchFromGitHub {
owner = "9ary";
repo = pname;
rev = version;
sha256 = "00xxz7awk01981daabp8m3kwq127y733ynijiwqgs8xvn4nkg8h6";
};
cargoSha256 = "0avs833vb6q1avjbfygm55s83iy942xgqsx6qdzksry44n35s418";
postPatch = ''
substituteInPlace src/main.rs \
--replace 'Command::new("git")' 'Command::new("${git}/bin/git")'
'';
meta = with lib; {
description = "Simple Git prompt";
homepage = "https://github.com/9ary/gitprompt-rs";
license = with licenses; [ mpl20 ];
maintainers = with maintainers; [ novenary ];
};
}

View file

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "jftui";
version = "0.6.1";
version = "0.6.2";
src = fetchFromGitHub {
owner = "Aanok";
repo = pname;
rev = "v${version}";
sha256 = "sha256-TkSnNZBnmDSMsxTFQx1OcFDLQBUqxIrFXQeeslXKqA0=";
sha256 = "sha256-4j0ypzszNWjHbb4RkMIoqvgz624zoKCKiIpidQUPIF4=";
};
nativeBuildInputs = [

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