hash = "sha256-OZe5dV50xq99olImbo7JQxPjRd7hGyBIVwFvtR9cIVc="; }; <del> appimageContents = (appimageTools.extract { inherit name src; }).overrideAttrs (oA: { </del> <ins> appimageContents = (appimageTools.extract { inherit pname version src; }).overrideAttrs (oA: { </ins> buildCommand = '' ${oA.buildCommand}


}); in appimageTools.wrapAppImage { <del> inherit name; </del> <ins> inherit pname version; </ins> src = appimageContents; multiPkgs = null; # no 32bit needed


extraInstallCommands = '' # Add desktop convencience stuff <del> mv $out/bin/{${name},${pname}} </del> <ins> mv $out/bin/{${pname}-*,${pname}} </ins> install -Dm444 ${appimageContents}/flexoptix-app.desktop -t $out/share/applications install -Dm444 ${appimageContents}/flexoptix-app.png -t $out/share/pixmaps substituteInPlace $out/share/applications/flexoptix-app.desktop


<del> { lib, stdenv </del> <ins> { lib , stdenv </ins> , fetchFromGitHub <ins> , fetchpatch </ins> , pkg-config , cmake , zlib


hash = "sha256-pqj1LwRdOK2CUu3hYIsogQIXxWzShDuKEbDTbtWkgnQ="; }; <ins> patches = lib.optionals stdenv.isDarwin [ # https://github.com/libproxy/libproxy/pull/189 (fetchpatch { url = "https://github.com/libproxy/libproxy/commit/4331b9db427ce2c25ff5eeb597bec4bc35ed1a0b.patch"; sha256 = "sha256-uTh3rYVvEke1iWVHsT3Zj2H1F+gyLrffcmyt0JEKaCA="; }) ]; </ins> outputs = [ "out" "dev" "py3" ]; nativeBuildInputs = [


<del> { lib, buildGoModule, fetchFromGitHub, installShellFiles, git, testers, git-town, makeWrapper }: </del> <ins> { lib, buildGoModule, fetchFromGitHub, fetchpatch, installShellFiles, git, testers, git-town, makeWrapper }: </ins> buildGoModule rec { pname = "git-town"; <del> version = "7.7.0"; </del> <ins> version = "7.8.0"; </ins> src = fetchFromGitHub { owner = "git-town"; repo = "git-town"; rev = "v${version}"; <del> sha256 = "sha256-FpBEBx2gb33fGDndvZmvG1A61NoJ4Qy4V3YQSb+Ugsc="; </del> <ins> sha256 = "sha256-g9ooMIMN8DN2FcWYkDC1hICCleQYdHf30PYMCit/NMI="; </ins> }; <ins> patches = [ # Fix "go vet" when building using Go 1.18. (fetchpatch { name = "fix-go-vet-in-go-1.18.patch"; url = "https://github.com/git-town/git-town/commit/23eb0aca7b28c6a0afc21db553aa0e35d35891aa.patch"; sha256 = "sha256-EyfhKVrQxRJNrYqaZI04dJogaXs1J+bbOIu7p8g2Clc="; }) ]; </ins> vendorSha256 = null; nativeBuildInputs = [ installShellFiles makeWrapper ];


outputs = [ "out" "udev" ]; <del> nativeBuildInputs = [ wrapGAppsHook gdk-pixbuf ]; buildInputs = [ libappindicator librsvg ]; </del> <ins> nativeBuildInputs = [ gdk-pixbuf gobject-introspection wrapGAppsHook ]; buildInputs = [ libappindicator librsvg ]; </ins> propagatedBuildInputs = with python3Packages; [ evdev <del> gobject-introspection </del> gtk3 psutil pygobject3


install -Dm444 -t $udev/etc/udev/rules.d rules.d-uinput/*.rules ''; <ins> dontWrapGApps = true; preFixup = '' makeWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; # no tests doCheck = false; pythonImportsCheck = [ "solaar" ]; </ins> meta = with lib; { description = "Linux devices manager for the Logitech Unifying Receiver"; longDescription = ''


MOUSE_PS2_VMMOUSE  = yes; MTRR_SANITIZER     = yes; NET_FC             = yes; # Fibre Channel driver support <ins> # Needed for touchpads to work on some AMD laptops PINCTRL_AMD        = whenAtLeast "5.19" yes; </ins> # GPIO on Intel Bay Trail, for some Chromebook internal eMMC disks PINCTRL_BAYTRAIL   = yes; # GPIO for Braswell and Cherryview devices


outputFile = "languages-frameworks/idris.xml"; } + toDocbook { <ins> inputFile = ../pkgs/development/node-packages/README.md; outputFile = "languages-frameworks/node.xml"; } + toDocbook { </ins> inputFile = ../pkgs/development/r-modules/README.md; outputFile = "languages-frameworks/r.xml"; }


<xi:include href="idris.xml" /> <!-- generated from ../../pkgs/development/idris-modules/README.md  --> <xi:include href="java.xml" /> <xi:include href="lua.xml" /> <ins> <xi:include href="node.xml" /> <!-- generated from ../../pkgs/development/node-packages/README.md  --> </ins> <xi:include href="perl.xml" /> <xi:include href="python.xml" /> <xi:include href="qt.xml" />


<del> NPM packages =========== </del> <ins> Node.js packages =============== To add a package from [NPM](https://www.npmjs.com/) to nixpkgs: </ins> 1. Install node2nix: `nix-env -f '<nixpkgs>' -iA node2nix`. 2. Modify `pkgs/development/node-packages/node-packages.json`, to add, update, or remove package entries.


<del> { lib, stdenv, fetchFromGitHub, cmake, darwin, python3 }: </del> <ins> { lib, stdenv, fetchFromGitHub, cmake, python3, autoSignDarwinBinariesHook, cctools }: </ins> # Like many google projects, shaderc doesn't gracefully support separately compiled dependencies, so we can't easily use # the versions of glslang and spirv-tools used by vulkan-loader. Exact revisions are taken from # https://github.com/google/shaderc/blob/known-good/known_good.json


rev = "0c28b6451d77774912e52949c1e57fa726edf113"; sha256 = "sha256-KpCMceTV/BRaoJe1qeXhKYQNQqdGaM6Q9nklpJKzHFY="; }; <del> in stdenv.mkDerivation rec { </del> <ins> in stdenv.mkDerivation rec { </ins> pname = "shaderc"; version = "2021.0";


ln -s ${spirv-headers} third_party/spirv-tools/external/spirv-headers ''; <del> nativeBuildInputs = [ cmake python3 ] ++ lib.optionals stdenv.isDarwin [ darwin.cctools ]; </del> <ins> nativeBuildInputs = [ cmake python3 ] ++ lib.optionals stdenv.isDarwin [ cctools ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ autoSignDarwinBinariesHook ]; </ins> postInstall = '' moveToOutput "lib/*.a" $static


session-desktop = callPackage ../applications/networking/instant-messengers/session-desktop { }; <del> shaderc = callPackage ../development/compilers/shaderc { }; </del> <ins> shaderc = callPackage ../development/compilers/shaderc { inherit (darwin) autoSignDarwinBinariesHook cctools; }; </ins> shades-of-gray-theme = callPackage ../data/themes/shades-of-gray { };


<del> { lib, stdenv, fetchurl, autoreconfHook, pkg-config, fftw }: </del> <ins> { lib , stdenv , fetchurl , autoreconfHook , pkg-config , fftw , withFftw3 ? true }: </ins> stdenv.mkDerivation rec { pname = "speexdsp";


outputs = [ "out" "dev" "doc" ]; nativeBuildInputs = [ autoreconfHook pkg-config ]; <del> buildInputs = [ fftw ]; </del> <ins> buildInputs = lib.optionals withFftw3 [ fftw ]; </ins> <del> configureFlags = [ "--with-fft=gpl-fftw3" ] ++ lib.optional stdenv.isAarch64 "--disable-neon"; </del> <ins> configureFlags = lib.optionals withFftw3 [ "--with-fft=gpl-fftw3" ] ++ lib.optional stdenv.isAarch64 "--disable-neon"; </ins> meta = with lib; { homepage = "https://www.speex.org/";


libcardiacarrest = callPackage ../misc/libcardiacarrest { }; <del> easyeffects = callPackage ../applications/audio/easyeffects { }; </del> <ins> easyeffects = callPackage ../applications/audio/easyeffects { # Fix crashes with speexdsp effects speexdsp = speexdsp.override { withFftw3 = false; }; }; </ins> pulseeffects-legacy = callPackage ../applications/audio/pulseeffects-legacy { };


installPhase = '' install -D powerlevel10k.zsh-theme --target-directory=$out/share/zsh-powerlevel10k <ins> install -D powerlevel9k.zsh-theme --target-directory=$out/share/zsh-powerlevel10k </ins> install -D config/* --target-directory=$out/share/zsh-powerlevel10k/config install -D internal/* --target-directory=$out/share/zsh-powerlevel10k/internal cp -R gitstatus $out/share/zsh-powerlevel10k/gitstatus


<del> #!/usr/bin/env ruby # Bind mounts hierarchy: from => to (relative) # If 'to' is nil, path will be the same mounts = { '/' => 'host', '/proc' => nil, '/sys' => nil, '/nix' => nil, '/tmp' => nil, '/var' => nil, '/run' => nil, '/dev' => nil, '/home' => nil, } # Propagate environment variables envvars = [ 'TERM', 'DISPLAY', 'XAUTHORITY', 'HOME', 'XDG_RUNTIME_DIR', 'LANG', 'SSL_CERT_FILE', 'DBUS_SESSION_BUS_ADDRESS', ] require 'tmpdir' require 'fileutils' require 'pathname' require 'set' require 'fiddle' def write_file(path, str) File.open(path, 'w') { |file| file.write str } end # Import C standard library and several needed calls $libc = Fiddle.dlopen nil def make_fcall(name, args, output) c = Fiddle::Function.new $libc[name], args, output lambda do |*args| ret = c.call *args raise SystemCallError.new Fiddle.last_error if ret < 0 return ret end end $fork = make_fcall 'fork', [], Fiddle::TYPE_INT CLONE_NEWNS   = 0x00020000 CLONE_NEWUSER = 0x10000000 $unshare = make_fcall 'unshare', [Fiddle::TYPE_INT], Fiddle::TYPE_INT MS_BIND = 0x1000 MS_REC  = 0x4000 MS_SLAVE  = 0x80000 $mount = make_fcall 'mount', [Fiddle::TYPE_VOIDP, Fiddle::TYPE_VOIDP, Fiddle::TYPE_VOIDP, Fiddle::TYPE_LONG, Fiddle::TYPE_VOIDP], Fiddle::TYPE_INT # Read command line args abort "Usage: chrootenv program args..." unless ARGV.length >= 1 execp = ARGV # Populate extra mounts if not ENV["CHROOTENV_EXTRA_BINDS"].nil? $stderr.puts "CHROOTENV_EXTRA_BINDS is discussed for deprecation." $stderr.puts "If you have a usecase, please drop a note in issue #16030." $stderr.puts "Notice that we now bind-mount host FS to '/host' and symlink all directories from it to '/' by default." for extra in ENV["CHROOTENV_EXTRA_BINDS"].split(':') paths = extra.split('=') if not paths.empty? if paths.size <= 2 mounts[paths[0]] = paths[1] else $stderr.puts "Ignoring invalid entry in CHROOTENV_EXTRA_BINDS: #{extra}" end end end end # Set destination paths for mounts mounts = mounts.map { |k, v| [k, v.nil? ? k.sub(/^/*/, '') : v] }.to_h # Create temporary directory for root and chdir root = Dir.mktmpdir 'chrootenv' # Fork process; we need this to do a proper cleanup because # child process will chroot into temporary directory. # We use imported 'fork' instead of native to overcome # CRuby's meddling with threads; this should be safe because # we don't use threads at all. $cpid = $fork.call if $cpid == 0 # If we are root, no need to create new user namespace. if Process.uid == 0 $unshare.call CLONE_NEWNS # Mark all mounted filesystems as slave so changes # don't propagate to the parent mount namespace. $mount.call nil, '/', nil, MS_REC | MS_SLAVE, nil else # Save user UID and GID uid = Process.uid gid = Process.gid # Create new mount and user namespaces # CLONE_NEWUSER requires a program to be non-threaded, hence # native fork above. $unshare.call CLONE_NEWNS | CLONE_NEWUSER # Map users and groups to the parent namespace begin # setgroups is only available since Linux 3.19 write_file '/proc/self/setgroups', 'deny' rescue end write_file '/proc/self/uid_map', "#{uid} #{uid} 1" write_file '/proc/self/gid_map', "#{gid} #{gid} 1" end # Do rbind mounts. mounts.each do |from, rto| to = "#{root}/#{rto}" FileUtils.mkdir_p to $mount.call from, to, nil, MS_BIND | MS_REC, nil end # Don't make root private so privilege drops inside chroot are possible File.chmod(0755, root) # Chroot! Dir.chroot root Dir.chdir '/' # New environment new_env = Hash[ envvars.map { |x| [x, ENV[x]] } ] # Finally, exec! exec(new_env, *execp, close_others: true, unsetenv_others: true) end # Wait for a child. If we catch a signal, resend it to child and continue # waiting. def wait_child begin Process.wait # Return child's exit code if $?.exited? exit $?.exitstatus else exit 1 end rescue SignalException => e Process.kill e.signo, $cpid wait_child end end begin wait_child ensure # Cleanup FileUtils.rm_rf root, secure: true end </del>


<ins> #define _GNU_SOURCE #include <errno.h> #include <error.h> #define errorf(status, fmt, ...)                                                error_at_line(status, errno, __FILE__, __LINE__, fmt, ##__VA_ARGS__) #include <dirent.h> #include <ftw.h> #include <sched.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sysexits.h> #include <unistd.h> #include <sys/mount.h> #include <sys/stat.h> #include <sys/wait.h> char *env_whitelist[] = {"TERM", "DISPLAY", "XAUTHORITY", "HOME", "XDG_RUNTIME_DIR", "LANG", "SSL_CERT_FILE", "DBUS_SESSION_BUS_ADDRESS"}; char **env_build(char *names[], size_t len) { char *env, **ret = malloc((len + 1) * sizeof(char *)), **ptr = ret; for (size_t i = 0; i < len; i++) { if ((env = getenv(names[i]))) { if (asprintf(ptr++, "%s=%s", names[i], env) < 0) errorf(EX_OSERR, "asprintf"); } } *ptr = NULL; return ret; } struct bind { char *from; char *to; }; struct bind binds[] = {{"/", "host"},   {"/proc", "proc"}, {"/sys", "sys"}, {"/nix", "nix"}, {"/tmp", "tmp"},   {"/var", "var"}, {"/run", "run"}, {"/dev", "dev"},   {"/home", "home"}}; void bind(struct bind *bind) { DIR *src = opendir(bind->from); if (src) { if (closedir(src) < 0) errorf(EX_IOERR, "closedir"); if (mkdir(bind->to, 0755) < 0) errorf(EX_IOERR, "mkdir"); if (mount(bind->from, bind->to, "bind", MS_BIND | MS_REC, NULL) < 0) errorf(EX_OSERR, "mount"); } else { // https://github.com/NixOS/nixpkgs/issues/31104 if (errno != ENOENT) errorf(EX_OSERR, "opendir"); } } void spitf(char *path, char *fmt, ...) { va_list args; va_start(args, fmt); FILE *f = fopen(path, "w"); if (f == NULL) errorf(EX_IOERR, "spitf(%s): fopen", path); if (vfprintf(f, fmt, args) < 0) errorf(EX_IOERR, "spitf(%s): vfprintf", path); if (fclose(f) < 0) errorf(EX_IOERR, "spitf(%s): fclose", path); } int nftw_rm(const char *path, const struct stat *sb, int type, struct FTW *ftw) { if (remove(path) < 0) errorf(EX_IOERR, "nftw_rm"); return 0; } #define LEN(x) sizeof(x) / sizeof(*x) int main(int argc, char *argv[]) { if (argc < 2) { fprintf(stderr, "Usage: %s command [arguments...]n" "Requires Linux kernel >= 3.19 with CONFIG_USER_NS.n", argv[0]); exit(EX_USAGE); } char tmpl[] = "/tmp/chrootenvXXXXXX"; char *root = mkdtemp(tmpl); if (root == NULL) errorf(EX_IOERR, "mkdtemp"); // Don't make root private so that privilege drops inside chroot are possible: if (chmod(root, 0755) < 0) errorf(EX_IOERR, "chmod"); pid_t cpid = fork(); if (cpid < 0) errorf(EX_OSERR, "fork"); if (cpid == 0) { uid_t uid = getuid(); gid_t gid = getgid(); // If we are root, no need to create new user namespace. if (uid == 0) { if (unshare(CLONE_NEWNS) < 0) errorf(EX_OSERR, "unshare() failed: You may have an old kernel or have CLONE_NEWUSER disabled by your distribution security settings."); // Mark all mounted filesystems as slave so changes // don't propagate to the parent mount namespace. if (mount(NULL, "/", NULL, MS_REC | MS_SLAVE, NULL) < 0) errorf(EX_OSERR, "mount"); } else { // Create new mount and user namespaces. CLONE_NEWUSER // requires a program to be non-threaded. if (unshare(CLONE_NEWNS | CLONE_NEWUSER) < 0) errorf(EX_OSERR, "unshare"); // Map users and groups to the parent namespace. // setgroups is only available since Linux 3.19: spitf("/proc/self/setgroups", "deny"); spitf("/proc/self/uid_map", "%d %d 1", uid, uid); spitf("/proc/self/gid_map", "%d %d 1", gid, gid); } if (chdir(root) < 0) errorf(EX_IOERR, "chdir"); for (size_t i = 0; i < LEN(binds); i++) bind(&binds[i]); if (chroot(root) < 0) errorf(EX_OSERR, "chroot"); if (chdir("/") < 0) errorf(EX_OSERR, "chdir"); argv++; if (execvpe(*argv, argv, env_build(env_whitelist, LEN(env_whitelist))) < 0) errorf(EX_OSERR, "execvpe"); } int status; if (waitpid(cpid, &status, 0) < 0) errorf(EX_OSERR, "waitpid"); if (nftw(root, nftw_rm, getdtablesize(), FTW_DEPTH | FTW_MOUNT | FTW_PHYS) < 0) errorf(EX_IOERR, "nftw"); if (WIFEXITED(status)) return WEXITSTATUS(status); else if (WIFSIGNALED(status)) kill(getpid(), WTERMSIG(status)); return EX_OSERR; } </ins>


let buildFHSEnv = callPackage ./env.nix { }; in <del> args@{ name, runScript ? "bash", extraBindMounts ? [], extraInstallCommands ? "", meta ? {}, passthru ? {}, ... }: </del> <ins> args@{ name, runScript ? "bash", extraInstallCommands ? "", meta ? {}, passthru ? {}, ... }: </ins> let <del> env = buildFHSEnv (removeAttrs args [ "runScript" "extraBindMounts" "extraInstallCommands" "meta" "passthru" ]); </del> <ins> env = buildFHSEnv (removeAttrs args [ "runScript" "extraInstallCommands" "meta" "passthru" ]); </ins> <del> # Sandboxing script chroot-user = writeScript "chroot-user" '' #! ${ruby}/bin/ruby ${builtins.readFile ./chroot-user.rb} ''; </del> <ins> chrootenv = stdenv.mkDerivation { name = "chrootenv"; unpackPhase = "cp ${./chrootenv.c} chrootenv.c"; installPhase = "cp chrootenv $out"; makeFlags = [ "chrootenv" ]; }; </ins> init = run: writeScript "${name}-init" '' #! ${stdenv.shell}


passthru = passthru // { env = runCommand "${name}-shell-env" { shellHook = '' <del> ${lib.optionalString (extraBindMounts != []) ''export CHROOTENV_EXTRA_BINDS="${lib.concatStringsSep ":" extraBindMounts}:$CHROOTENV_EXTRA_BINDS"''} exec ${chroot-user} ${init "bash"} "$(pwd)" </del> <ins> exec ${chrootenv} ${init "bash"} "$(pwd)" </ins> ''; } '' echo >&2 ""


mkdir -p $out/bin cat <<EOF >$out/bin/${name} #! ${stdenv.shell} <del> ${lib.optionalString (extraBindMounts != []) ''export CHROOTENV_EXTRA_BINDS="${lib.concatStringsSep ":" extraBindMounts}:$CHROOTENV_EXTRA_BINDS"''} exec ${chroot-user} ${init runScript} "$(pwd)" "$@" </del> <ins> exec ${chrootenv} ${init runScript} "$(pwd)" "$@" </ins> EOF chmod +x $out/bin/${name} ${extraInstallCommands}


<ins> diff --git a/go.mod b/go.mod index 660463a..5249458 100644 --- a/go.mod +++ b/go.mod @@ -2,7 +2,7 @@ module github.com/rs/curlie require ( golang.org/x/crypto v0.0.0-20180524125353-159ae71589f3 -	golang.org/x/sys v0.0.0-20191026070338-33540a1f6037 +	golang.org/x/sys v0.0.0-20211110154304-99a53858aa08 ) go 1.13 </ins>


hash = "sha256-3EKxuEpFm+lp2myMfymYYY9boSXGOF2iAdjtGKnjJK0="; }; <del> vendorSha256 = "sha256-tYZtnD7RUurhl8yccXlTIvOxybBJITM+it1ollYJ1OI="; </del> <ins> patches = [ ./bump-golang-x-sys.patch ]; vendorSha256 = "sha256-VsPdMUfS4UVem6uJgFISfFHQEKtIumDQktHQFPC1muc="; </ins> ldflags = [ "-s" "-w" "-X main.version=${version}" ];


, gtk3, glib, glib-networking, gsettings-desktop-schemas , gnome-desktop, gnome-settings-daemon, gnome-online-accounts , vino, gnome-bluetooth, tracker, adwaita-icon-theme <del> , udisks2, gsound, libhandy, cups }: </del> <ins> , udisks2, gsound, libhandy, cups, mutter }: </ins> stdenv.mkDerivation rec { pname = "gnome-control-center";


# Thumbnailers (for setting user profile pictures) --prefix XDG_DATA_DIRS : "${gdk_pixbuf}/share" --prefix XDG_DATA_DIRS : "${librsvg}/share" <ins> # WM keyboard shortcuts --prefix XDG_DATA_DIRS : "${mutter}/share" </ins> ) for i in $out/share/applications/*; do substituteInPlace $i --replace "Exec=gnome-control-center" "Exec=$out/bin/gnome-control-center"


{ lib, stdenv, fetchFromGitHub , pkg-config, cmake, ninja, yasm <del> , libjpeg, openssl, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf </del> <ins> , libjpeg, openssl_1_1, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf </ins> , openh264, usrsctp, libevent, libvpx , libX11, libXtst, libXcomposite, libXdamage, libXext, libXrender, libXrandr, libXi , glib, abseil-cpp, pcre, util-linuxMinimal, libselinux, libsepol, pipewire


nativeBuildInputs = [ pkg-config cmake ninja yasm ]; buildInputs = [ <del> libjpeg openssl libopus ffmpeg alsa-lib libpulseaudio protobuf </del> <ins> libjpeg libopus ffmpeg alsa-lib libpulseaudio protobuf </ins> openh264 usrsctp libevent libvpx libX11 libXtst libXcomposite libXdamage libXext libXrender libXrandr libXi glib abseil-cpp pcre util-linuxMinimal libselinux libsepol pipewire


propagatedBuildInputs = [ # Required for linking downstream binaries. <del> abseil-cpp openh264 usrsctp libevent libvpx </del> <ins> abseil-cpp openh264 usrsctp libevent libvpx openssl_1_1 </ins> ]; meta = with lib; {


]; # test_peer_interface hits a timeout <ins> # test_tcp_connection_with_forwarding fails due to dbus # creating unix socket anyway on v1.14.4 </ins> checkPhase = '' dbus-run-session --config-file=${dbus.daemon}/share/dbus-1/session.conf  ${python.interpreter} -m pytest -sv --cov=dbus_next  <del> -k "not test_peer_interface" </del> <ins> -k "not test_peer_interface and not test_tcp_connection_with_forwarding" </ins> ''; meta = with lib; {


</listitem> <listitem> <para> <ins> <literal>services.mastodon</literal> gained a tootctl wrapped named <literal>mastodon-tootctl</literal> similar to <literal>nextcloud-occ</literal> which can be executed from any user and switches to the configured mastodon user with sudo and sources the environment variables. </para> </listitem> <listitem> <para> </ins> A new <literal>virtualisation.rosetta</literal> module was added to allow running <literal>x86_64</literal> binaries through


- The module for the application firewall `opensnitch` got the ability to configure rules. Available as [services.opensnitch.rules](#opt-services.opensnitch.rules) <ins> - `services.mastodon` gained a tootctl wrapped named `mastodon-tootctl` similar to `nextcloud-occ` which can be executed from any user and switches to the configured mastodon user with sudo and sources the environment variables. </ins> - A new `virtualisation.rosetta` module was added to allow running `x86_64` binaries through [Rosetta](https://developer.apple.com/documentation/apple-silicon/about-the-rosetta-translation-environment) inside virtualised NixOS guests on Apple silicon. This feature works by default with the [UTM](https://docs.getutm.app/) virtualisation [package](https://search.nixos.org/packages?channel=unstable&show=utm&from=0&size=1&sort=relevance&type=packages&query=utm).


] else [] ) env)))); <del> mastodonEnv = pkgs.writeShellScriptBin "mastodon-env" '' </del> <ins> mastodonTootctl = pkgs.writeShellScriptBin "mastodon-tootctl" '' #! ${pkgs.runtimeShell} </ins> set -a export RAILS_ROOT="${cfg.package}" source "${envFile}" source /var/lib/mastodon/.secrets_env <del> eval -- "$@" </del> <ins> sudo=exec if [[ "$USER" != ${cfg.user} ]]; then sudo='exec /run/wrappers/bin/sudo -u ${cfg.user} --preserve-env' fi $sudo ${cfg.package}/bin/tootctl "$@" </ins> ''; in {


description = lib.mdDoc '' User under which mastodon runs. If it is set to "mastodon", that user will be created, otherwise it should be set to the <del> name of a user created elsewhere.  In both cases, `mastodon` and a package containing only the shell script `mastodon-env` will be added to the user's package set. To run a command from `mastodon` such as `tootctl` with the environment configured by this module use `mastodon-env`, as in: `mastodon-env tootctl accounts create newuser --email newuser@example.com` </del> <ins> name of a user created elsewhere. In both cases, the `mastodon` package will be added to the user's package set and a tootctl wrapper to system packages that switches to the configured account and load the right environment. </ins> ''; type = lib.types.str; default = "mastodon";


} ]; <ins> environment.systemPackages = [ mastodonTootctl ]; </ins> systemd.services.mastodon-init-dirs = { script = '' umask 077


inherit (cfg) group; }; }) <del> (lib.attrsets.setAttrByPath [ cfg.user "packages" ] [ cfg.package mastodonEnv pkgs.imagemagick ]) </del> <ins> (lib.attrsets.setAttrByPath [ cfg.user "packages" ] [ cfg.package pkgs.imagemagick ]) </ins> ]; users.groups.${cfg.group}.members = lib.optional cfg.configureNginx config.services.nginx.user;


# Simple check tootctl commands # Check Mastodon version <del> server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl version' | grep '${pkgs.mastodon.version}'") </del> <ins> server.succeed("mastodon-tootctl version | grep '${pkgs.mastodon.version}'") </ins> # Manage accounts <del> server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks add example.com'") server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks list' | grep 'example.com'") server.fail("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks list' | grep 'mastodon.local'") server.fail("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts create alice --email=alice@example.com'") server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks remove example.com'") server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts create bob --email=bob@example.com'") server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts approve bob'") server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts delete bob'") </del> <ins> server.succeed("mastodon-tootctl email_domain_blocks add example.com") server.succeed("mastodon-tootctl email_domain_blocks list | grep example.com") server.fail("mastodon-tootctl email_domain_blocks list | grep mastodon.local") server.fail("mastodon-tootctl accounts create alice --email=alice@example.com") server.succeed("mastodon-tootctl email_domain_blocks remove example.com") server.succeed("mastodon-tootctl accounts create bob --email=bob@example.com") server.succeed("mastodon-tootctl accounts approve bob") server.succeed("mastodon-tootctl accounts delete bob") </ins> # Manage IP access <del> server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks add 192.168.0.0/16 --severity=no_access'") server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks export' | grep '192.168.0.0/16'") server.fail("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks export' | grep '172.16.0.0/16'") </del> <ins> server.succeed("mastodon-tootctl ip_blocks add 192.168.0.0/16 --severity=no_access") server.succeed("mastodon-tootctl ip_blocks export | grep 192.168.0.0/16") server.fail("mastodon-tootctl ip_blocks export | grep 172.16.0.0/16") </ins> client.fail("curl --fail https://mastodon.local/about") <del> server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks remove 192.168.0.0/16'") </del> <ins> server.succeed("mastodon-tootctl ip_blocks remove 192.168.0.0/16") </ins> client.succeed("curl --fail https://mastodon.local/about") server.shutdown()


, stdenv , fetchurl , appimageTools <ins> , appimage-run </ins> , makeWrapper <del> , electron </del> , git }:


installPhase = '' runHook preInstall <del> mkdir -p $out/bin $out/share/${pname} $out/share/applications cp -a ${appimageContents}/{locales,resources} $out/share/${pname} </del> <ins> mkdir -p $out/bin $out/share/${pname} $out/share/applications $out/share/${pname}/resources/app/icons cp -a ${appimageContents}/resources/app/icons/logseq.png $out/share/${pname}/resources/app/icons/logseq.png </ins> cp -a ${appimageContents}/Logseq.desktop $out/share/applications/${pname}.desktop <del> # remove the `git` in `dugite` because we want the `git` in `nixpkgs` chmod +w -R $out/share/${pname}/resources/app/node_modules/dugite/git chmod +w $out/share/${pname}/resources/app/node_modules/dugite rm -rf $out/share/${pname}/resources/app/node_modules/dugite/git chmod -w $out/share/${pname}/resources/app/node_modules/dugite </del> <ins> # set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs makeWrapper ${appimage-run}/bin/appimage-run $out/bin/logseq  --set "LOCAL_GIT_DIRECTORY" ${git}  --add-flags ${src} # Make the desktop entry run the app using appimage-run </ins> substituteInPlace $out/share/applications/${pname}.desktop  <del> --replace Exec=Logseq Exec=${pname}  </del> <ins> --replace Exec=Logseq "Exec=$out/bin/logseq"  </ins> --replace Icon=Logseq Icon=$out/share/${pname}/resources/app/icons/logseq.png runHook postInstall ''; <del> postFixup = '' # set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs makeWrapper ${electron}/bin/electron $out/bin/${pname}  --set "LOCAL_GIT_DIRECTORY" ${git}  --add-flags $out/share/${pname}/resources/app ''; </del> passthru.updateScript = ./update.sh; meta = with lib; {


lilo = callPackage ../tools/misc/lilo { }; <del> logseq = callPackage ../applications/misc/logseq { electron = electron_20; }; </del> <ins> logseq = callPackage ../applications/misc/logseq { }; </ins> natls = callPackage ../tools/misc/natls { };


# Darwin , gmp , libiconv <ins> , qemu </ins> , Carbon , AppKit


'' + optionalString isDarwin '' sed -i '/qemucapabilitiestest/d' tests/meson.build sed -i '/vircryptotest/d' tests/meson.build <ins> sed -i '/domaincapstest/d' tests/meson.build sed -i '/qemufirmwaretest/d' tests/meson.build sed -i '/qemuvhostusertest/d' tests/meson.build </ins> '' + optionalString (isDarwin && isx86_64) '' sed -i '/qemucaps2xmltest/d' tests/meson.build sed -i '/qemuhotplugtest/d' tests/meson.build


(cfg "runstatedir" "/run") (cfg "init_script" (if isDarwin then "none" else "systemd")) <ins> (cfg "qemu_datadir" (if isDarwin then "${qemu}/share/qemu" else "")) </ins> (feat "apparmor" isLinux) (feat "attr" isLinux)


python3.pkgs.buildPythonApplication rec { pname = "sticky"; <del> version = "1.14"; </del> <ins> version = "1.16"; </ins> format = "other"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; <del> hash = "sha256-7UZbCbzQ1ZrSzxTUdbA+wsH3p27qj/c/cM4GY/kzG6E="; </del> <ins> hash = "sha256-+opzjvSdGwwn1imNzSsfD9rfs4naSXzcMBJRPhKW2WM="; </ins> }; postPatch = ''


stdenv.mkDerivation rec { pname = "bulky"; <del> version = "2.8"; </del> <ins> version = "2.9"; </ins> src = fetchFromGitHub { owner = "linuxmint"; repo = "bulky"; rev = version; <del> hash = "sha256-DZjX4xPyA30TTyOX+VyGSY/FWPX2316CYImDWRma9r0="; </del> <ins> hash = "sha256-eCu7AgL4bzstu8vsqBJImRZm1qMVnnycuOShY5fB+C4="; </ins> }; nativeBuildInputs = [


-e s,/usr/share/locale,/run/current-system/sw/share/locale,g  {} + <del> sed "s|/usr/share/sounds|/run/current-system/sw/share/sounds|g" -i ./files/usr/share/cinnamon/cinnamon-settings/bin/SettingsWidgets.py sed "s|'python3'|'${pythonEnv.interpreter}'|g" -i ./files/usr/share/cinnamon/cinnamon-settings/bin/CinnamonGtkSettings.py sed "s|/usr/bin/cinnamon-screensaver-command|/run/current-system/sw/bin/cinnamon-screensaver-command|g"  -i ./files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js -i ./files/usr/share/cinnamon/applets/user@cinnamon.org/applet.js sed "s|"/usr/lib"|"${cinnamon-control-center}/lib"|g" -i ./files/usr/share/cinnamon/cinnamon-settings/bin/capi.py sed 's|"lspci"|"${pciutils}/bin/lspci"|g' -i ./files/usr/share/cinnamon/cinnamon-settings/modules/cs_info.py </del> <ins> # All optional and may introduce circular dependency. find ./files/usr/share/cinnamon/applets -type f -exec sed -i  -e '/^#/!s,/usr/bin,/run/current-system/sw/bin,g'  {} + </ins> <del> sed "s| cinnamon-session| ${cinnamon-session}/bin/cinnamon-session|g" -i ./files/usr/bin/cinnamon-session-cinnamon  -i ./files/usr/bin/cinnamon-session-cinnamon2d </del> <ins> pushd ./files/usr/share/cinnamon/cinnamon-settings substituteInPlace ./bin/capi.py                     --replace '"/usr/lib"' '"${cinnamon-control-center}/lib"' substituteInPlace ./bin/CinnamonGtkSettings.py      --replace "'python3'" "'${pythonEnv.interpreter}'" substituteInPlace ./bin/SettingsWidgets.py          --replace "/usr/share/sounds" "/run/current-system/sw/share/sounds" substituteInPlace ./bin/Spices.py                   --replace "msgfmt" "${gettext}/bin/msgfmt" substituteInPlace ./modules/cs_info.py              --replace "lspci" "${pciutils}/bin/lspci" popd </ins> <del> sed "s|msgfmt|${gettext}/bin/msgfmt|g" -i ./files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py </del> <ins> sed "s| cinnamon-session| ${cinnamon-session}/bin/cinnamon-session|g" -i ./files/usr/bin/cinnamon-session-{cinnamon,cinnamon2d} </ins> patchShebangs src/data-to-c.pl '';


--prefix XDG_DATA_DIRS : "${gnome.caribou}/share" ) <ins> buildPythonPath "$out ${python3.pkgs.xapp}" # https://github.com/NixOS/nixpkgs/issues/200397 patchPythonScript $out/bin/cinnamon-spice-updater </ins> # https://github.com/NixOS/nixpkgs/issues/129946 <del> buildPythonPath "${python3.pkgs.xapp}" </del> patchPythonScript $out/share/cinnamon/cinnamon-desktop-editor/cinnamon-desktop-editor.py <ins> # Called as `pkexec cinnamon-settings-users.py`. wrapGApp $out/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py </ins> ''; passthru = {


stdenvNoCC.mkDerivation rec { pname = "mint-cursor-themes"; <del> version = "1.0.1"; </del> <ins> version = "1.0.2"; </ins> src = fetchFromGitHub { owner = "linuxmint"; repo = pname; # They don't really do tags, this is just a named commit. <del> rev = "e17f8a4620827235dabbe5221bd0ee8c44dad0d5"; hash = "sha256-yLUmIVh884uDVkNil7qxf6t/gykipzBvPgzwmY3zvQk="; </del> <ins> rev = "d2c1428b499a347c291dafb13c89699fdbdd4be7"; hash = "sha256-i2Wf+OKwal9G5hkcAdmGSgX6txu1AHajqqPJdhpJoA0="; </ins> }; installPhase = ''


in stdenv.mkDerivation rec { pname = "warpinator"; <del> version = "1.6.2"; </del> <ins> version = "1.6.3"; </ins> src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; <del> hash = "sha256-crGW1FBfTEiKqx981EzG414we4icyBv/keGtMlr8UFc="; </del> <ins> hash = "sha256-iCq2cwZgsq5/bJqjYuZ6dZLqz2nIpgHCrIQeMVxJNXY="; </ins> }; nativeBuildInputs = [


# Patch pastebin & inxi location sed "s|/usr/bin/pastebin|$out/bin/pastebin|" -i scripts/upload-system-info sed "s|'inxi'|'${inxi}/bin/inxi'|" -i scripts/upload-system-info <del> # Patch gtk3 module target dir substituteInPlace libxapp/meson.build  --replace "gtk3_dep.get_pkgconfig_variable('libdir')" "'$out'" </del> ''; <ins> # Fix gtk3 module target dir. Proper upstream solution should be using define_variable. PKG_CONFIG_GTK__3_0_LIBDIR = "${placeholder "out"}/lib"; </ins> meta = with lib; { homepage = "https://github.com/linuxmint/xapp"; description = "Cross-desktop libraries and common resources";


, cudatoolkit , libdrm , ncurses <ins> , nvtop , testers , udev </ins> , addOpenGLRunpath , amd ? true , nvidia ? true <del> , udev </del> }: let pname-suffix = if amd && nvidia then "" else if amd then "-amd" else "-nvidia"; nvidia-postFixup = "addOpenGLRunpath $out/bin/nvtop"; <del> libPath = lib.makeLibraryPath [ libdrm ncurses ]; </del> <ins> libPath = lib.makeLibraryPath [ libdrm ncurses udev ]; </ins> amd-postFixup = '' patchelf  --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)"


cmakeFlags = with lib; [ "-DCMAKE_BUILD_TYPE=Release" "-DBUILD_TESTING=ON" <ins> "-DUSE_LIBUDEV_OVER_LIBSYSTEMD=ON" </ins> ] ++ optional nvidia "-DNVML_INCLUDE_DIRS=${cudatoolkit}/include" ++ optional nvidia "-DNVML_LIBRARIES=${cudatoolkit}/targets/x86_64-linux/lib/stubs/libnvidia-ml.so" ++ optional (!amd) "-DAMDGPU_SUPPORT=OFF"


doCheck = true; <ins> passthru = { tests.version = testers.testVersion { inherit version; package = nvtop; command = "nvtop --version"; }; }; </ins> meta = with lib; { description = "A (h)top like task monitor for AMD, Intel and NVIDIA GPUs"; longDescription = ''


enableParallelBuilding = true; <ins> passthru = { inherit openssl; }; </ins> meta = with lib; { description = "Small layer on top of PKCS#11 API to make PKCS#11 implementations easier"; homepage = "https://github.com/OpenSC/libp11";


<del> { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, openssl, libp11, pam, libintl }: </del> <ins> { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libp11, pam, libintl }: </ins> stdenv.mkDerivation rec { pname = "pam_p11";


}; nativeBuildInputs = [ autoreconfHook pkg-config ]; <del> buildInputs = [ pam openssl libp11 ] </del> <ins> buildInputs = [ pam libp11.passthru.openssl libp11 ] </ins> ++ lib.optionals stdenv.isDarwin [ libintl ]; meta = with lib; {


++ lib.optionals stdenv.hostPlatform.isMusl [ argp-standalone ] ++ lib.optionals withJitterEntropy [ jitterentropy ] ++ lib.optionals withNistBeacon    [ curl jansson libxml2 ] <del> ++ lib.optionals withPkcs11        [ libp11 openssl ] </del> <ins> ++ lib.optionals withPkcs11        [ libp11 libp11.passthru.openssl ] </ins> ++ lib.optionals withRtlsdr        [ librtlsdr ]; enableParallelBuilding = true;


libow = callPackage ../development/libraries/libow { }; <del> libp11 = callPackage ../development/libraries/libp11 { }; </del> <ins> libp11 = callPackage ../development/libraries/libp11 { openssl = openssl_1_1; }; </ins> libpam-wrapper = callPackage ../development/libraries/libpam-wrapper { };


pam_mysql = callPackage ../os-specific/linux/pam_mysql { }; <del> pam_p11 = callPackage ../os-specific/linux/pam_p11 { openssl = openssl_1_1; }; </del> <ins> pam_p11 = callPackage ../os-specific/linux/pam_p11 { }; </ins> pam_pgsql = callPackage ../os-specific/linux/pam_pgsql { };


{ fetchurl, stdenv, which, pkgconfig, makeWrapper, libxcb, xcbutilkeysyms <del> , xcbutil, xcbutilwm, libstartup_notification, libX11, pcre, libev, yajl , xcb-util-cursor, coreutils, perl, pango, perlPackages, libxkbcommon </del> <ins> , xcbutil, xcbutilwm, xcbutilxrm, libstartup_notification, libX11, pcre, libev , yajl, xcb-util-cursor, coreutils, perl, pango, perlPackages, libxkbcommon </ins> , xorgserver, xvfb_run, dmenu, i3status }: stdenv.mkDerivation rec { name = "i3-${version}"; <del> version = "4.12"; </del> <ins> version = "4.13"; </ins> src = fetchurl { url = "http://i3wm.org/downloads/${name}.tar.bz2"; <del> sha256 = "1d3q3lgpjbkmcwzjhp0dfr0jq847silcfg087slcnj95ikh1r7p1"; </del> <ins> sha256 = "12ngz32swh9n85xy0cz1lq16aqi9ys5hq19v589q9a97wn1k3hcl"; </ins> }; <ins> nativeBuildInputs = [ which pkgconfig makeWrapper ]; </ins> buildInputs = [ <del> which pkgconfig makeWrapper libxcb xcbutilkeysyms xcbutil xcbutilwm libxkbcommon </del> <ins> libxcb xcbutilkeysyms xcbutil xcbutilwm xcbutilxrm libxkbcommon </ins> libstartup_notification libX11 pcre libev yajl xcb-util-cursor perl pango perlPackages.AnyEventI3 perlPackages.X11XCB perlPackages.IPCRun perlPackages.ExtUtilsPkgConfig perlPackages.TestMore perlPackages.InlineC xorgserver xvfb_run ]; <ins> configureFlags = [ "--disable-builddir" ]; enableParallelBuilding = true; </ins> postPatch = '' patchShebangs . '';


! grep -q '^not ok' testcases/latest/complete-run.log ''; <del> configurePhase = "makeFlags=PREFIX=$out"; </del> postInstall = '' wrapProgram "$out/bin/i3-save-tree" --prefix PERL5LIB ":" "$PERL5LIB" <del> mkdir -p $out/man/man1 cp man/*.1 $out/man/man1 </del> for program in $out/bin/i3-sensible-*; do sed -i 's/which/command -v/' $program done


meta = with stdenv.lib; { description = "A tiling window manager"; homepage    = "http://i3wm.org"; <del> maintainers = with maintainers; [ garbas modulistic ]; </del> <ins> maintainers = with maintainers; [ garbas modulistic fpletz ]; </ins> license     = licenses.bsd3; platforms   = platforms.all;


<ins> diff --git a/CMakeLists.txt b/CMakeLists.txt index 915912af5..f5c2cf9cc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -91,11 +91,6 @@ if("${CMAKE_HOST_SYSTEM_NAME}" STREQUAL Windows) endif() endif() else() -	CPMAddPackage( -		NAME Ccache.cmake -		GITHUB_REPOSITORY TheLartians/Ccache.cmake -		VERSION 1.2 -	) endif() # Dependencies -- 2.40.1 </ins>


, stdenv , fetchurl , fetchFromGitHub <del> , substituteAll </del> , cmake , curl , nasm


, SDL2 , SDL2_mixer , zlib <ins> , unzip , makeWrapper , makeDesktopItem , copyDesktopItems </ins> }: <del> let assets_version = "2.2.5"; assets = fetchurl { url = "https://github.com/mazmazz/SRB2/releases/download/SRB2_assets_220/srb2-${assets_version}-assets.7z"; sha256 = "1m9xf3vraq9nipsi09cyvvfa4i37gzfxg970rnqfswd86z9v6v00"; }; assets_optional = fetchurl { url = "https://github.com/mazmazz/SRB2/releases/download/SRB2_assets_220/srb2-${assets_version}-optional-assets.7z"; sha256 = "1j29jrd0r1k2bb11wyyl6yv9b90s2i6jhrslnh77qkrhrwnwcdz4"; }; in stdenv.mkDerivation rec { </del> <ins> stdenv.mkDerivation (finalAttrs: { </ins> pname = "srb2"; <del> version = "2.2.10"; </del> <ins> version = "2.2.11"; </ins> src = fetchFromGitHub { owner = "STJr"; repo = "SRB2"; <del> rev = "SRB2_release_${version}"; sha256 = "03388n094d2yr5si6ngnggbqhm8b2l0s0qvfnkz49li9bd6a81gg"; </del> <ins> rev = "SRB2_release_${finalAttrs.version}"; hash = "sha256-tyiXivJWjNnL+4YynUV6k6iaMs8o9HkHrp+qFj2+qvQ="; </ins> }; nativeBuildInputs = [ cmake nasm p7zip <ins> makeWrapper copyDesktopItems </ins> ]; buildInputs = [


zlib ]; <ins> assets = stdenv.mkDerivation { pname = "srb2-data"; version = finalAttrs.version; nativeBuildInputs = [ unzip ]; src = fetchurl { url = "https://github.com/STJr/SRB2/releases/download/SRB2_release_${finalAttrs.version}/SRB2-v${lib.replaceStrings ["."] [""] finalAttrs.version}-Full.zip"; hash = "sha256-KsJIkCczD/HyIwEy5dI3zsHbWFCMBaCoCHizfupFoWM="; }; sourceRoot = "."; installPhase = '' mkdir -p $out/share/srb2 cp -r *pk3 *dta *dat models/ $out/share/srb2/ ''; }; </ins> cmakeFlags = [ <del> "-DSRB2_ASSET_DIRECTORY=/build/source/assets" </del> <ins> "-DSRB2_ASSET_DIRECTORY=${finalAttrs.assets}/share/srb2" </ins> "-DGME_INCLUDE_DIR=${game-music-emu}/include" "-DOPENMPT_INCLUDE_DIR=${libopenmpt.dev}/include" "-DSDL2_MIXER_INCLUDE_DIR=${lib.getDev SDL2_mixer}/include/SDL2" <del> "-DSDL2_INCLUDE_DIR=${lib.getDev SDL2}/include/SDL2" </del> <ins> "-DSDL2_INCLUDE_DIR=${lib.getDev SDL2.dev}/include/SDL2" </ins> ]; patches = [ <del> ./wadlocation.patch </del> <ins> # Fix unknown command "CPMAddPackage" by not using Ccache.cmake ./cmake.patch </ins> ]; <del> postPatch = '' substituteInPlace src/sdl/i_system.c  --replace '@wadlocation@' $out ''; </del> <ins> desktopItems = [ (makeDesktopItem rec { name = "Sonic Robo Blast 2"; exec = finalAttrs.pname; icon = finalAttrs.pname; comment = finalAttrs.meta.description; desktopName = name; genericName = name; categories = [ "Game" ]; }) ]; </ins> <del> preConfigure = '' 7z x ${assets} -o"/build/source/assets" -aos 7z x ${assets_optional} -o"/build/source/assets" -aos ''; </del> <ins> installPhase = '' mkdir -p $out/bin $out/share/applications $out/share/pixmaps $out/share/icons copyDesktopItems cp ../srb2.png $out/share/pixmaps/. cp ../srb2.png $out/share/icons/. </ins> <del> postInstall = '' mkdir $out/bin mv $out/lsdlsrb2-${version} $out/bin/srb2 </del> <ins> cp bin/lsdlsrb2 $out/bin/srb2 wrapProgram $out/bin/srb2 --set SRB2WADDIR "${finalAttrs.assets}/share/srb2" </ins> ''; meta = with lib; {


homepage = "https://www.srb2.org/"; platforms = platforms.linux; license = licenses.gpl2Plus; <del> maintainers = with maintainers; [ zeratax ]; </del> <ins> maintainers = with maintainers; [ zeratax donovanglover ]; </ins> }; <del> } </del> <ins> }) </ins>


<del> diff --git a/src/sdl/i_system.c b/src/sdl/i_system.c index 10c0747bf..861f00728 100644 --- a/src/sdl/i_system.c +++ b/src/sdl/i_system.c @@ -145,13 +145,7 @@ int TimeFunction(int requested_frequency); // Locations for searching the srb2.pk3 #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON) -#define DEFAULTWADLOCATION1 "/usr/local/share/games/SRB2" -#define DEFAULTWADLOCATION2 "/usr/local/games/SRB2" -#define DEFAULTWADLOCATION3 "/usr/share/games/SRB2" -#define DEFAULTWADLOCATION4 "/usr/games/SRB2" -#define DEFAULTSEARCHPATH1 "/usr/local/games" -#define DEFAULTSEARCHPATH2 "/usr/games" -#define DEFAULTSEARCHPATH3 "/usr/local" +#define DEFAULTWADLOCATION1 "@wadlocation@" #elif defined (_WIN32) #define DEFAULTWADLOCATION1 "c:gamessrb2" #define DEFAULTWADLOCATION2 "gamessrb2" @@ -2812,34 +2806,6 @@ static const char *locateWad(void) if (((envstr = I_GetEnv("SRB2WADDIR")) != NULL) && isWadPathOk(envstr)) return envstr; -#ifndef NOCWD -	I_OutputMsg(",."); -	// examine current dir -	strcpy(returnWadPath, "."); -	if (isWadPathOk(returnWadPath)) -		return NULL; -#endif - - -#ifdef CMAKECONFIG -#ifndef NDEBUG -	I_OutputMsg(","CMAKE_ASSETS_DIR); -	strcpy(returnWadPath, CMAKE_ASSETS_DIR); -	if (isWadPathOk(returnWadPath)) -	{ -		return returnWadPath; -	} -#endif -#endif - -#ifdef __APPLE__ -	OSX_GetResourcesPath(returnWadPath); -	I_OutputMsg(",%s", returnWadPath); -	if (isWadPathOk(returnWadPath)) -	{ -		return returnWadPath; -	} -#endif // examine default dirs #ifdef DEFAULTWADLOCATION1 @@ -2884,16 +2850,7 @@ static const char *locateWad(void) if (isWadPathOk(returnWadPath)) return returnWadPath; #endif -#ifndef NOHOME -	// find in $HOME -	I_OutputMsg(",HOME"); -	if ((envstr = I_GetEnv("HOME")) != NULL) -	{ -		WadPath = searchWad(envstr); -		if (WadPath) -			return WadPath; -	} -#endif + #ifdef DEFAULTSEARCHPATH1 // find in /usr/local I_OutputMsg(", in:"DEFAULTSEARCHPATH1); </del>


<del> https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=2d7ed98add14f75041499ac189696c9bd3d757fe --- a/Makeconfig +++ b/Makeconfig @@ -43,6 +43,22 @@ else $(error objdir must be defined by the build-directory Makefile) endif +# Did we request 'make -s' run? "yes" or "no". +# Starting from make-4.4 MAKEFLAGS now contains long +# options like '--shuffle'. To detect presence of 's' +# we pick first word with short options. Long options +# are guaranteed to come after whitespace. We use '-' +# prefix to always have a word before long options +# even if no short options were passed. +# Typical MAKEFLAGS values to watch for: +#   "rs --shuffle=42" (silent) +#   " --shuffle" (not silent) +ifeq ($(findstring s, $(firstword -$(MAKEFLAGS))),) +silent-make := no +else +silent-make := yes +endif + # Root of the sysdeps tree. sysdep_dir := $(..)sysdeps export sysdep_dir := $(sysdep_dir) @@ -917,7 +933,7 @@ endif # umpteen zillion filenames along with it (we use `...' instead) # but we don't want this echoing done when the user has said # he doesn't want to see commands echoed by using -s. -ifneq	"$(findstring s,$(MAKEFLAGS))" ""	# if -s +ifeq ($(silent-make),yes)			# if -s +cmdecho	:= echo >/dev/null else						# not -s +cmdecho	:= echo --- a/Makerules +++ b/Makerules @@ -794,7 +794,7 @@ endif # Maximize efficiency by minimizing the number of rules. .SUFFIXES:	# Clear the suffix list.  We don't use suffix rules. # Don't define any builtin rules. -MAKEFLAGS := $(MAKEFLAGS)r +MAKEFLAGS := $(MAKEFLAGS) -r # Generic rule for making directories. %/: @@ -811,7 +811,7 @@ MAKEFLAGS := $(MAKEFLAGS)r .PRECIOUS: $(foreach l,$(libtypes),$(patsubst %,$(common-objpfx)$l,c)) # Use the verbose option of ar and tar when not running silently. -ifeq	"$(findstring s,$(MAKEFLAGS))" ""	# if not -s +ifeq ($(silent-make),no)			# if not -s verbose := v else	   					# -s verbose	:= --- a/elf/rtld-Rules +++ b/elf/rtld-Rules @@ -52,7 +52,7 @@ $(objpfx)rtld-libc.a: $(foreach dir,$(rtld-subdirs), mv -f $@T $@ # Use the verbose option of ar and tar when not running silently. -ifeq	"$(findstring s,$(MAKEFLAGS))" ""	# if not -s +ifeq ($(silent-make),no)			# if not -s verbose := v else						# -s verbose	:= </del>


let version = "2.35"; <del> patchSuffix = "-163"; </del> <ins> patchSuffix = "-224"; </ins> sha256 = "sha256-USNzL2tnzNMZMF79OZlx1YWSEivMKmUYob0lEN0M9S4="; in


*/ ./2.35-master.patch.gz <del> /* Can be removed after next snapshot update or release update.  */ ./2.35-make-4.4.patch </del> <ins> /* Revert this patch contained in the previous bundle.  For now, until we know more. */ ./revert-mktime.patch </ins> /* Allow NixOS and Nix to handle the locale-archive. */ ./nix-locale-archive.patch


<ins> commit f6d4c1ac648c4ff8baad94500df0bb13108a4f79 Author: Paul Eggert <eggert@cs.ucla.edu> Date:   Thu Sep 8 20:08:32 2022 -0500 REVERT: mktime: improve heuristic for ca-1986 Indiana DST This patch syncs mktime.c from Gnulib, fixing a problem reported by Mark Krenz <https://bugs.gnu.org/48085>, and it should fix BZ#29035 too. * time/mktime.c (__mktime_internal): Be more generous about accepting arguments with the wrong value of tm_isdst, by falling back to a one-hour DST difference if we find no nearby DST that is unusual.  This fixes a problem where "1986-04-28 00:00 EDT" was rejected when TZ="America/Indianapolis" because the nearest DST timestamp occurred in 1970, a temporal distance too great for the old heuristic.  This also also narrows the search a bit, which is a minor performance win. (cherry picked from commit 83859e1115269cf56d21669361d4ddbe2687831c) diff --git b/time/mktime.c a/time/mktime.c index e9a6006710..494c89bf54 100644 --- b/time/mktime.c +++ a/time/mktime.c @@ -429,13 +429,8 @@ __mktime_internal (struct tm *tp, time with the right value, and use its UTC offset. Heuristic: probe the adjacent timestamps in both directions, -	 looking for the desired isdst.  If none is found within a -	 reasonable duration bound, assume a one-hour DST difference. -	 This should work for all real time zone histories in the tz -	 database.  */ - -      /* +1 if we wanted standard time but got DST, -1 if the reverse.  */ -      int dst_difference = (isdst == 0) - (tm.tm_isdst == 0); +	 looking for the desired isdst.  This should work for all real +	 time zone histories in the tz database.  */ /* Distance between probes when looking for a DST boundary.  In tzdata2003a, the shortest period of DST is 601200 seconds @@ -446,14 +441,12 @@ __mktime_internal (struct tm *tp, periods when probing.  */ int stride = 601200; -      /* In TZDB 2021e, the longest period of DST (or of non-DST), in -	 which the DST (or adjacent DST) difference is not one hour, -	 is 457243209 seconds: e.g., America/Cambridge_Bay with leap -	 seconds, starting 1965-10-31 00:00 in a switch from -	 double-daylight time (-05) to standard time (-07), and -	 continuing to 1980-04-27 02:00 in a switch from standard time -	 (-07) to daylight time (-06).  */ -      int duration_max = 457243209; +      /* The longest period of DST in tzdata2003a is 536454000 seconds +	 (e.g., America/Jujuy starting 1946-10-01 01:00).  The longest +	 period of non-DST is much longer, but it makes no real sense +	 to search for more than a year of non-DST, so use the DST +	 max.  */ +      int duration_max = 536454000; /* Search in both directions, so the maximum distance is half the duration; add the stride to avoid off-by-1 problems.  */ @@ -490,11 +483,6 @@ __mktime_internal (struct tm *tp, } } -      /* No unusual DST offset was found nearby.  Assume one-hour DST.  */ -      t += 60 * 60 * dst_difference; -      if (mktime_min <= t && t <= mktime_max && convert_time (convert, t, &tm)) -	goto offset_found; - __set_errno (EOVERFLOW); return -1; } </ins>


settings_ = lib.recursiveUpdate { init = { <del> PRINT_MODE = if enableTextMode then "TEXT" else if enableTWBT then "TWBT" else null; </del> <ins> PRINT_MODE = if enableTextMode then "TEXT" else if enableTWBT then "TWBT" else if stdenv.hostPlatform.isDarwin then "STANDARD" # https://www.bay12games.com/dwarves/mantisbt/view.php?id=11680 else null; </ins> INTRO = enableIntro; TRUETYPE = enableTruetype; FPS = enableFPS;


ln -sfT ${cfg.package}/modules ${cfg.dataDir}/modules if [ "$(id -u)" = 0 ]; then chown -R elasticsearch ${cfg.dataDir}; fi ''; <del> postStart = mkBefore '' until ${pkgs.curl.bin}/bin/curl -s -o /dev/null ${cfg.listenAddress}:${toString cfg.port}; do sleep 1 done ''; </del> }; environment.systemPackages = [ cfg.package ];


, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext, libXfixes , libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, mesa, nspr, nss , pango, systemd, libappindicator-gtk3, libdbusmenu, writeScript, python3, runCommand <ins> , wayland </ins> , branch , common-updater-scripts, withOpenASAR ? false }:


libXScrnSaver libappindicator-gtk3 libdbusmenu <ins> wayland </ins> ]; installPhase = ''


'') cfg.listenAddresses} Listen /var/run/cups/cups.sock <del> SetEnv PATH ${bindir}/lib/cups/filter:${bindir}/bin </del> <ins> SetEnv PATH /var/lib/cups/path/lib/cups/filter:/var/lib/cups/path/bin </ins> DefaultShared ${if cfg.defaultShared then "Yes" else "No"}


for i in *; do [ ! -e "/var/lib/cups/$i" ] && ln -s "${rootdir}/etc/cups/$i" "/var/lib/cups/$i" done <ins> #update path reference [ -L /var/lib/cups/path ] &&  rm /var/lib/cups/path [ ! -e /var/lib/cups/path ] &&  ln -s ${bindir} /var/lib/cups/path </ins> ${optionalString cfg.gutenprint '' if [ -d /var/lib/cups/ppd ]; then ${gutenprint}/bin/cups-genppdupdate -p /var/lib/cups/ppd


mkDerivationWith python3.pkgs.buildPythonApplication rec { pname = "openshot-qt"; <del> version = "2.6.1"; </del> <ins> version = "3.0.0"; </ins> src = fetchFromGitHub { owner = "OpenShot"; repo = "openshot-qt"; rev = "v${version}"; <del> hash = "sha256-29fAg4SDoAFzv6q43Dcs2HdaeKZfPEzlGqCcICiPSF0="; </del> <ins> hash = "sha256-h4R2txi038m6tzdKYiXIB8CiqWt2MFFRNerp1CFP5as="; </ins> }; nativeBuildInputs = [


export HOME=$(mktemp -d) ''; <del> # Following Arch PKGBUILD for Python 3.10 compatibility # https://github.com/OpenShot/openshot-qt/issues/4608 # https://github.com/archlinux/svntogit-community/commits/packages/openshot/trunk patches = [ (fetchpatch { name = "video-widget.patch"; url = "https://github.com/OpenShot/openshot-qt/commit/9748a13268d66a5949aebc970637b5903756d018.patch"; hash = "sha256-QwLtcooDJeYWDp80a1dUFo2so/zEWqqsq5IgkXWX324="; }) (fetchpatch { name = "python-3.10-int.patch"; url = "https://github.com/OpenShot/openshot-qt/commit/fff785eb1e3e0c30ed6ca57e2d1933aaa807ae22.patch"; hash = "sha256-ee/s7rhF71ot5oPkGK+j59mL1B3e72xoH27KFoDL8s8="; }) ]; </del> doCheck = false; dontWrapGApps = true;


stdenv.mkDerivation rec { pname = "libopenshot"; <del> version = "0.2.7"; </del> <ins> version = "0.3.0"; </ins> src = fetchFromGitHub { owner = "OpenShot"; repo = "libopenshot"; rev = "v${version}"; <del> sha256 = "sha256-aF8wrPxFIjCy5gw72e/WyL/Wcx9tUGDkrqHS+ZDVK0U="; </del> <ins> sha256 = "sha256-qe866gFhcbd7yCNXDiZ9Aj0TAiWoJ+r7C5BjtWBKSGA="; </ins> }; postPatch = ''


pnpm = nodeEnv.buildNodePackage { name = "pnpm"; packageName = "pnpm"; <del> version = "7.19.0"; </del> <ins> version = "7.24.3"; </ins> src = fetchurl { <del> url = "https://registry.npmjs.org/pnpm/-/pnpm-7.19.0.tgz"; sha512 = "0ZPqlBY9M5fqKI9Ya0kEB7PQj7Pg7bYEjXbRbg4pNnJIObzXeO+PaK/8FBd8KMgJe5QpLb6rn2nVFHNSNoz+kw=="; </del> <ins> url = "https://registry.npmjs.org/pnpm/-/pnpm-7.24.3.tgz"; sha512 = "0fpP1l16xOY8YwsATSLodNNBa7bitV1cNY475fioVLR7Thx5tkCtdp3xIlvZYX8ZoPtedLhGn3fICC409HQSNQ=="; </ins> }; buildInputs = globalBuildInputs; meta = {


<ins> { lib, fetchzip }: fetchzip rec { pname = "capitaine-cursors-themed"; version = "5"; stripRoot = false; url = "https://github.com/sainnhe/capitaine-cursors/releases/download/r${version}/Linux.zip"; sha256 = "jQNAXuR/OtvohWziGYgb5Ni2/tEIGaY9HIyUUW793EY="; postFetch = '' mkdir -p $out/share/icons cp -r ./ $out/share/icons ''; meta = with lib; { description = "A fork of the capitaine cursor theme, with some additional variants (Gruvbox, Nord, Palenight) and support for HiDPI"; homepage = "https://github.com/sainnhe/capitaine-cursors"; license = licenses.lgpl3Only; platforms = platforms.unix; maintainers = [ maintainers.math-42 ]; }; } </ins>


capitaine-cursors = callPackage ../data/icons/capitaine-cursors { }; <ins> capitaine-cursors-themed = callPackage ../data/icons/capitaine-cursors-themed { }; </ins> carlito = callPackage ../data/fonts/carlito {}; cascadia-code = callPackage ../data/fonts/cascadia-code { };


<del> { poetry2nix, pkgs, lib }: </del> <ins> { lib , python3 , fetchFromGitHub }: </ins> <del> let pythonPackages = (poetry2nix.mkPoetryPackages { projectDir = ./.; overrides = [ poetry2nix.defaultPoetryOverrides (import ./poetry-git-overlay.nix { inherit pkgs; }) (self: super: { </del> <ins> python3.pkgs.buildPythonApplication rec { pname = "rmfuse"; version = "unstable-2021-06-06"; </ins> <del> rmfuse = super.rmfuse.overridePythonAttrs(old: { meta = old.meta // { description = "RMfuse provides access to your reMarkable Cloud files in the form of a FUSE filesystem."; longDescription = '' RMfuse provides access to your reMarkable Cloud files in the form of a FUSE filesystem. These files are exposed either in their original format, or as PDF files that contain your annotations. This lets you manage files in the reMarkable Cloud using the same tools you use on your local system. ''; license = lib.licenses.mit; homepage = "https://github.com/rschroll/rmfuse"; maintainers = [ lib.maintainers.adisbladis ]; }; }); </del> <ins> format = "pyproject"; </ins> <del> reportlab = let ft = pkgs.freetype.overrideAttrs (oldArgs: { dontDisableStatic = true; }); in super.reportlab.overridePythonAttrs(old: { postPatch = '' substituteInPlace setup.py  --replace "mif = findFile(d,'ft2build.h')" "mif = findFile('${lib.getDev ft}','ft2build.h')" ''; </del> <ins> src = fetchFromGitHub { owner = "rschroll"; repo = "rmfuse"; rev = "3796b8610c8a965a60a417fc0bf8ea5200b71fd2"; hash = "sha256-W3kS6Kkmp8iWMOYFL7r1GyjSQvFotBXQCuTMK0vyHQ8="; }; </ins> <del> NIX_CFLAGS_COMPILE = "-I${pkgs.freetype}/include/freetype2"; </del> <ins> postPatch = '' substituteInPlace pyproject.toml  --replace 'bidict = "^' 'bidict = ">=' ''; </ins> <del> nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkg-config ]; buildInputs = old.buildInputs ++ [ pkgs.freetype ]; }); </del> <ins> nativeBuildInputs = with python3.pkgs; [ poetry-core ]; </ins> <del> }) ]; }).python.pkgs; in pythonPackages.rmfuse </del> <ins> propagatedBuildInputs = with python3.pkgs; [ bidict rmrl rmcl pyfuse3 xdg ]; meta = { description = "FUSE access to the reMarkable Cloud"; homepage = "https://github.com/rschroll/rmfuse"; license = lib.licenses.mit; longDescription = '' RMfuse provides access to your reMarkable Cloud files in the form of a FUSE filesystem. These files are exposed either in their original format, or as PDF files that contain your annotations. This lets you manage files in the reMarkable Cloud using the same tools you use on your local system. ''; maintainers = with lib.maintainers; [ adisbladis ]; }; } </ins>


<del> { pkgs }: self: super: { rmfuse = super.rmfuse.overridePythonAttrs ( _: { src = pkgs.fetchgit { url = "https://github.com/rschroll/rmfuse.git"; rev = "3796b8610c8a965a60a417fc0bf8ea5200b71fd2"; sha256 = "03qxy95jpk741b81bd38y51d4a0vynx2y1g662bci9r6m7l14yav"; }; } ); } </del>


<del> [[package]] name = "anyio" version = "2.2.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" category = "main" optional = false python-versions = ">=3.6.2" [package.dependencies] idna = ">=2.8" sniffio = ">=1.1" [package.extras] curio = ["curio (>=1.4)"] doc = ["sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"] test = ["coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "pytest (>=6.0)", "trustme", "uvloop (<0.15)", "uvloop (>=0.15)"] trio = ["trio (>=0.16)"] [[package]] name = "asks" version = "2.4.12" description = "asks - async http" category = "main" optional = false python-versions = ">= 3.6.2" [package.dependencies] anyio = ">=2.0,<3.0" async_generator = "*" h11 = "*" [[package]] name = "async-generator" version = "1.10" description = "Async generators and context managers for Python 3.5+" category = "main" optional = false python-versions = ">=3.5" [[package]] name = "attrs" version = "21.4.0" description = "Classes Without Boilerplate" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [package.extras] dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit", "cloudpickle"] docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"] tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "cloudpickle"] tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "cloudpickle"] [[package]] name = "bidict" version = "0.21.4" description = "The bidirectional mapping library for Python." category = "main" optional = false python-versions = ">=3.6" [[package]] name = "cffi" version = "1.15.0" description = "Foreign Function Interface for Python calling C code." category = "main" optional = false python-versions = "*" [package.dependencies] pycparser = "*" [[package]] name = "cssselect2" version = "0.6.0" description = "CSS selectors for Python ElementTree" category = "main" optional = false python-versions = ">=3.7" [package.dependencies] tinycss2 = "*" webencodings = "*" [package.extras] doc = ["sphinx", "sphinx-rtd-theme"] test = ["pytest", "pytest-cov", "pytest-flake8", "pytest-isort", "coverage"] [[package]] name = "h11" version = "0.13.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" category = "main" optional = false python-versions = ">=3.6" [[package]] name = "idna" version = "3.3" description = "Internationalized Domain Names in Applications (IDNA)" category = "main" optional = false python-versions = ">=3.5" [[package]] name = "lxml" version = "4.9.0" description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" [package.extras] cssselect = ["cssselect (>=0.7)"] html5 = ["html5lib"] htmlsoup = ["beautifulsoup4"] source = ["Cython (>=0.29.7)"] [[package]] name = "outcome" version = "1.1.0" description = "Capture the outcome of Python function calls." category = "main" optional = false python-versions = ">=3.6" [package.dependencies] attrs = ">=19.2.0" [[package]] name = "pdfrw" version = "0.4" description = "PDF file reader/writer library" category = "main" optional = false python-versions = "*" [[package]] name = "pillow" version = "9.1.1" description = "Python Imaging Library (Fork)" category = "main" optional = false python-versions = ">=3.7" [package.extras] docs = ["olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-issues (>=3.0.1)", "sphinx-removed-in", "sphinx-rtd-theme (>=1.0)", "sphinxext-opengraph"] tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] [[package]] name = "pycparser" version = "2.21" description = "C parser in Python" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "pyfuse3" version = "3.2.1" description = "Python 3 bindings for libfuse 3 with async I/O support" category = "main" optional = false python-versions = ">=3.5" [package.dependencies] trio = ">=0.15" [[package]] name = "reportlab" version = "3.6.9" description = "The Reportlab Toolkit" category = "main" optional = false python-versions = ">=3.7, <4" [package.dependencies] pillow = ">=4.0.0" [package.extras] rlpycairo = ["rlPyCairo (>=0.0.5)"] [[package]] name = "rmcl" version = "0.4.2" description = "reMarkable Cloud Library" category = "main" optional = false python-versions = ">=3.7,<4.0" [package.dependencies] asks = ">=2.4.12,<3.0.0" trio = ">=0.18.0,<0.19.0" xdg = ">=5.0.1,<6.0.0" [[package]] name = "rmfuse" version = "0.2.3" description = "" category = "main" optional = false python-versions = "^3.7" develop = false [package.dependencies] bidict = "^0.21.2" pyfuse3 = {version = "^3.2.0", optional = true} rmcl = "^0.4.2" rmrl = "^0.2.1" xdg = "^5.0.1" [package.extras] pyfuse3 = ["pyfuse3 (>=3.2.0,<4.0.0)"] llfuse = ["llfuse (>=1.4.1,<2.0.0)"] [package.source] type = "git" url = "https://github.com/rschroll/rmfuse.git" reference = "master" resolved_reference = "3796b8610c8a965a60a417fc0bf8ea5200b71fd2" [[package]] name = "rmrl" version = "0.2.1" description = "Render reMarkable documents to PDF" category = "main" optional = false python-versions = ">=3.7,<4.0" [package.dependencies] pdfrw = ">=0.4,<0.5" reportlab = ">=3.5.59,<4.0.0" svglib = ">=1.0.1,<2.0.0" xdg = ">=5.0.1,<6.0.0" [[package]] name = "sniffio" version = "1.2.0" description = "Sniff out which async library your code is running under" category = "main" optional = false python-versions = ">=3.5" [[package]] name = "sortedcontainers" version = "2.4.0" description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" category = "main" optional = false python-versions = "*" [[package]] name = "svglib" version = "1.3.0" description = "A pure-Python library for reading and converting SVG" category = "main" optional = false python-versions = ">=3.7" [package.dependencies] cssselect2 = ">=0.2.0" lxml = "*" reportlab = "*" tinycss2 = ">=0.6.0" [[package]] name = "tinycss2" version = "1.1.1" description = "A tiny CSS parser" category = "main" optional = false python-versions = ">=3.6" [package.dependencies] webencodings = ">=0.4" [package.extras] doc = ["sphinx", "sphinx-rtd-theme"] test = ["pytest", "pytest-cov", "pytest-flake8", "pytest-isort", "coverage"] [[package]] name = "trio" version = "0.18.0" description = "A friendly Python library for async concurrency and I/O" category = "main" optional = false python-versions = ">=3.6" [package.dependencies] async-generator = ">=1.9" attrs = ">=19.2.0" cffi = {version = ">=1.14", markers = "os_name == "nt" and implementation_name != "pypy""} idna = "*" outcome = "*" sniffio = "*" sortedcontainers = "*" [[package]] name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" category = "main" optional = false python-versions = "*" [[package]] name = "xdg" version = "5.1.1" description = "Variables defined by the XDG Base Directory Specification" category = "main" optional = false python-versions = ">=3.6,<4.0" [metadata] lock-version = "1.1" python-versions = "^3.8" content-hash = "3da90f3013f1220c9081c0a11dac7d8cd05c5a47ebda40fbb4357e44503e99a3" [metadata.files] anyio = [ {file = "anyio-2.2.0-py3-none-any.whl", hash = "sha256:aa3da546ed17f097ca876c78024dea380a3b7fa80759abfdda59f12176a3dac8"}, {file = "anyio-2.2.0.tar.gz", hash = "sha256:4a41c5b3a65ed92e469d51b6fba3779301850ea2e352afcf9e36c46f21ee14a9"}, ] asks = [ {file = "asks-2.4.12.tar.gz", hash = "sha256:38de944eb350e7e4e3a918055fa8ff033da5f7b5ff385c1160a2d6b9d84783b0"}, ] async-generator = [ {file = "async_generator-1.10-py3-none-any.whl", hash = "sha256:01c7bf666359b4967d2cda0000cc2e4af16a0ae098cbffcb8472fb9e8ad6585b"}, {file = "async_generator-1.10.tar.gz", hash = "sha256:6ebb3d106c12920aaae42ccb6f787ef5eefdcdd166ea3d628fa8476abe712144"}, ] attrs = [ {file = "attrs-21.4.0-py2.py3-none-any.whl", hash = "sha256:2d27e3784d7a565d36ab851fe94887c5eccd6a463168875832a1be79c82828b4"}, {file = "attrs-21.4.0.tar.gz", hash = "sha256:626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd"}, ] bidict = [ {file = "bidict-0.21.4-py3-none-any.whl", hash = "sha256:3ac67daa353ecf853a1df9d3e924f005e729227a60a8dbada31a4c31aba7f654"}, {file = "bidict-0.21.4.tar.gz", hash = "sha256:42c84ffbe6f8de898af6073b4be9ea7ccedcd78d3474aa844c54e49d5a079f6f"}, ] cffi = [ {file = "cffi-1.15.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:c2502a1a03b6312837279c8c1bd3ebedf6c12c4228ddbad40912d671ccc8a962"}, {file = "cffi-1.15.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:23cfe892bd5dd8941608f93348c0737e369e51c100d03718f108bf1add7bd6d0"}, {file = "cffi-1.15.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:41d45de54cd277a7878919867c0f08b0cf817605e4eb94093e7516505d3c8d14"}, {file = "cffi-1.15.0-cp27-cp27m-win32.whl", hash = "sha256:4a306fa632e8f0928956a41fa8e1d6243c71e7eb59ffbd165fc0b41e316b2474"}, {file = "cffi-1.15.0-cp27-cp27m-win_amd64.whl", hash = "sha256:e7022a66d9b55e93e1a845d8c9eba2a1bebd4966cd8bfc25d9cd07d515b33fa6"}, {file = "cffi-1.15.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:14cd121ea63ecdae71efa69c15c5543a4b5fbcd0bbe2aad864baca0063cecf27"}, {file = "cffi-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d4d692a89c5cf08a8557fdeb329b82e7bf609aadfaed6c0d79f5a449a3c7c023"}, {file = "cffi-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0104fb5ae2391d46a4cb082abdd5c69ea4eab79d8d44eaaf79f1b1fd806ee4c2"}, {file = "cffi-1.15.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:91ec59c33514b7c7559a6acda53bbfe1b283949c34fe7440bcf917f96ac0723e"}, {file = "cffi-1.15.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f5c7150ad32ba43a07c4479f40241756145a1f03b43480e058cfd862bf5041c7"}, {file = "cffi-1.15.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:00c878c90cb53ccfaae6b8bc18ad05d2036553e6d9d1d9dbcf323bbe83854ca3"}, {file = "cffi-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abb9a20a72ac4e0fdb50dae135ba5e77880518e742077ced47eb1499e29a443c"}, {file = "cffi-1.15.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a5263e363c27b653a90078143adb3d076c1a748ec9ecc78ea2fb916f9b861962"}, {file = "cffi-1.15.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f54a64f8b0c8ff0b64d18aa76675262e1700f3995182267998c31ae974fbc382"}, {file = "cffi-1.15.0-cp310-cp310-win32.whl", hash = "sha256:c21c9e3896c23007803a875460fb786118f0cdd4434359577ea25eb556e34c55"}, {file = "cffi-1.15.0-cp310-cp310-win_amd64.whl", hash = "sha256:5e069f72d497312b24fcc02073d70cb989045d1c91cbd53979366077959933e0"}, {file = "cffi-1.15.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:64d4ec9f448dfe041705426000cc13e34e6e5bb13736e9fd62e34a0b0c41566e"}, {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2756c88cbb94231c7a147402476be2c4df2f6078099a6f4a480d239a8817ae39"}, {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b96a311ac60a3f6be21d2572e46ce67f09abcf4d09344c49274eb9e0bf345fc"}, {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75e4024375654472cc27e91cbe9eaa08567f7fbdf822638be2814ce059f58032"}, {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:59888172256cac5629e60e72e86598027aca6bf01fa2465bdb676d37636573e8"}, {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:27c219baf94952ae9d50ec19651a687b826792055353d07648a5695413e0c605"}, {file = "cffi-1.15.0-cp36-cp36m-win32.whl", hash = "sha256:4958391dbd6249d7ad855b9ca88fae690783a6be9e86df65865058ed81fc860e"}, {file = "cffi-1.15.0-cp36-cp36m-win_amd64.whl", hash = "sha256:f6f824dc3bce0edab5f427efcfb1d63ee75b6fcb7282900ccaf925be84efb0fc"}, {file = "cffi-1.15.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:06c48159c1abed75c2e721b1715c379fa3200c7784271b3c46df01383b593636"}, {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c2051981a968d7de9dd2d7b87bcb9c939c74a34626a6e2f8181455dd49ed69e4"}, {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fd8a250edc26254fe5b33be00402e6d287f562b6a5b2152dec302fa15bb3e997"}, {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:91d77d2a782be4274da750752bb1650a97bfd8f291022b379bb8e01c66b4e96b"}, {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:45db3a33139e9c8f7c09234b5784a5e33d31fd6907800b316decad50af323ff2"}, {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:263cc3d821c4ab2213cbe8cd8b355a7f72a8324577dc865ef98487c1aeee2bc7"}, {file = "cffi-1.15.0-cp37-cp37m-win32.whl", hash = "sha256:17771976e82e9f94976180f76468546834d22a7cc404b17c22df2a2c81db0c66"}, {file = "cffi-1.15.0-cp37-cp37m-win_amd64.whl", hash = "sha256:3415c89f9204ee60cd09b235810be700e993e343a408693e80ce7f6a40108029"}, {file = "cffi-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4238e6dab5d6a8ba812de994bbb0a79bddbdf80994e4ce802b6f6f3142fcc880"}, {file = "cffi-1.15.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0808014eb713677ec1292301ea4c81ad277b6cdf2fdd90fd540af98c0b101d20"}, {file = "cffi-1.15.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:57e9ac9ccc3101fac9d6014fba037473e4358ef4e89f8e181f8951a2c0162024"}, {file = "cffi-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b6c2ea03845c9f501ed1313e78de148cd3f6cad741a75d43a29b43da27f2e1e"}, {file = "cffi-1.15.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:10dffb601ccfb65262a27233ac273d552ddc4d8ae1bf93b21c94b8511bffe728"}, {file = "cffi-1.15.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:786902fb9ba7433aae840e0ed609f45c7bcd4e225ebb9c753aa39725bb3e6ad6"}, {file = "cffi-1.15.0-cp38-cp38-win32.whl", hash = "sha256:da5db4e883f1ce37f55c667e5c0de439df76ac4cb55964655906306918e7363c"}, {file = "cffi-1.15.0-cp38-cp38-win_amd64.whl", hash = "sha256:181dee03b1170ff1969489acf1c26533710231c58f95534e3edac87fff06c443"}, {file = "cffi-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:45e8636704eacc432a206ac7345a5d3d2c62d95a507ec70d62f23cd91770482a"}, {file = "cffi-1.15.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:31fb708d9d7c3f49a60f04cf5b119aeefe5644daba1cd2a0fe389b674fd1de37"}, {file = "cffi-1.15.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:6dc2737a3674b3e344847c8686cf29e500584ccad76204efea14f451d4cc669a"}, {file = "cffi-1.15.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:74fdfdbfdc48d3f47148976f49fab3251e550a8720bebc99bf1483f5bfb5db3e"}, {file = "cffi-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffaa5c925128e29efbde7301d8ecaf35c8c60ffbcd6a1ffd3a552177c8e5e796"}, {file = "cffi-1.15.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3f7d084648d77af029acb79a0ff49a0ad7e9d09057a9bf46596dac9514dc07df"}, {file = "cffi-1.15.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ef1f279350da2c586a69d32fc8733092fd32cc8ac95139a00377841f59a3f8d8"}, {file = "cffi-1.15.0-cp39-cp39-win32.whl", hash = "sha256:2a23af14f408d53d5e6cd4e3d9a24ff9e05906ad574822a10563efcef137979a"}, {file = "cffi-1.15.0-cp39-cp39-win_amd64.whl", hash = "sha256:3773c4d81e6e818df2efbc7dd77325ca0dcb688116050fb2b3011218eda36139"}, {file = "cffi-1.15.0.tar.gz", hash = "sha256:920f0d66a896c2d99f0adbb391f990a84091179542c205fa53ce5787aff87954"}, ] cssselect2 = [ {file = "cssselect2-0.6.0-py3-none-any.whl", hash = "sha256:3a83b2a68370c69c9cd3fcb88bbfaebe9d22edeef2c22d1ff3e1ed9c7fa45ed8"}, {file = "cssselect2-0.6.0.tar.gz", hash = "sha256:5b5d6dea81a5eb0c9ca39f116c8578dd413778060c94c1f51196371618909325"}, ] h11 = [ {file = "h11-0.13.0-py3-none-any.whl", hash = "sha256:8ddd78563b633ca55346c8cd41ec0af27d3c79931828beffb46ce70a379e7442"}, {file = "h11-0.13.0.tar.gz", hash = "sha256:70813c1135087a248a4d38cc0e1a0181ffab2188141a93eaf567940c3957ff06"}, ] idna = [ {file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"}, {file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"}, ] lxml = [ {file = "lxml-4.9.0-cp27-cp27m-macosx_10_15_x86_64.whl", hash = "sha256:b5031d151d6147eac53366d6ec87da84cd4d8c5e80b1d9948a667a7164116e39"}, {file = "lxml-4.9.0-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5d52e1173f52020392f593f87a6af2d4055dd800574a5cb0af4ea3878801d307"}, {file = "lxml-4.9.0-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:3af00ee88376022589ceeb8170eb67dacf5f7cd625ea59fa0977d719777d4ae8"}, {file = "lxml-4.9.0-cp27-cp27m-win32.whl", hash = "sha256:1057356b808d149bc14eb8f37bb89129f237df488661c1e0fc0376ca90e1d2c3"}, {file = "lxml-4.9.0-cp27-cp27m-win_amd64.whl", hash = "sha256:f6d23a01921b741774f35e924d418a43cf03eca1444f3fdfd7978d35a5aaab8b"}, {file = "lxml-4.9.0-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:56e19fb6e4b8bd07fb20028d03d3bc67bcc0621347fbde64f248e44839771756"}, {file = "lxml-4.9.0-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:4cd69bca464e892ea4ed544ba6a7850aaff6f8d792f8055a10638db60acbac18"}, {file = "lxml-4.9.0-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:94b181dd2777890139e49a5336bf3a9a3378ce66132c665fe8db4e8b7683cde2"}, {file = "lxml-4.9.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:607224ffae9a0cf0a2f6e14f5f6bce43e83a6fbdaa647891729c103bdd6a5593"}, {file = "lxml-4.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:11d62c97ceff9bab94b6b29c010ea5fb6831743459bb759c917f49ba75601cd0"}, {file = "lxml-4.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:70a198030d26f5e569367f0f04509b63256faa76a22886280eea69a4f535dd40"}, {file = "lxml-4.9.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3cf816aed8125cfc9e6e5c6c31ff94278320d591bd7970c4a0233bee0d1c8790"}, {file = "lxml-4.9.0-cp310-cp310-win32.whl", hash = "sha256:65b3b5f12c6fb5611e79157214f3cd533083f9b058bf2fc8a1c5cc5ee40fdc5a"}, {file = "lxml-4.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:0aa4cce579512c33373ca4c5e23c21e40c1aa1a33533a75e51b654834fd0e4f2"}, {file = "lxml-4.9.0-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:63419db39df8dc5564f6f103102c4665f7e4d9cb64030e98cf7a74eae5d5760d"}, {file = "lxml-4.9.0-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:d8e5021e770b0a3084c30dda5901d5fce6d4474feaf0ced8f8e5a82702502fbb"}, {file = "lxml-4.9.0-cp35-cp35m-win32.whl", hash = "sha256:f17b9df97c5ecdfb56c5e85b3c9df9831246df698f8581c6e111ac664c7c656e"}, {file = "lxml-4.9.0-cp35-cp35m-win_amd64.whl", hash = "sha256:75da29a0752c8f2395df0115ac1681cefbdd4418676015be8178b733704cbff2"}, {file = "lxml-4.9.0-cp36-cp36m-macosx_10_15_x86_64.whl", hash = "sha256:e4d020ecf3740b7312bacab2cb966bb720fd4d3490562d373b4ad91dd1857c0d"}, {file = "lxml-4.9.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:b71c52d69b91af7d18c13aef1b0cc3baee36b78607c711eb14a52bf3aa7c815e"}, {file = "lxml-4.9.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28cf04a1a38e961d4a764d2940af9b941b66263ed5584392ef875ee9c1e360a3"}, {file = "lxml-4.9.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:915ecf7d486df17cc65aeefdb680d5ad4390cc8c857cf8db3fe241ed234f856a"}, {file = "lxml-4.9.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e564d5a771b4015f34166a05ea2165b7e283635c41b1347696117f780084b46d"}, {file = "lxml-4.9.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:c2a57755e366e0ac7ebdb3e9207f159c3bf1afed02392ab18453ce81f5ee92ee"}, {file = "lxml-4.9.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:00f3a6f88fd5f4357844dd91a1abac5f466c6799f1b7f1da2df6665253845b11"}, {file = "lxml-4.9.0-cp36-cp36m-win32.whl", hash = "sha256:9093a359a86650a3dbd6532c3e4d21a6f58ba2cb60d0e72db0848115d24c10ba"}, {file = "lxml-4.9.0-cp36-cp36m-win_amd64.whl", hash = "sha256:d1690c4d37674a5f0cdafbc5ed7e360800afcf06928c2a024c779c046891bf09"}, {file = "lxml-4.9.0-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:6af7f51a6010748fc1bb71917318d953c9673e4ae3f6d285aaf93ef5b2eb11c1"}, {file = "lxml-4.9.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:eabdbe04ee0a7e760fa6cd9e799d2b020d098c580ba99107d52e1e5e538b1ecb"}, {file = "lxml-4.9.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:b1e22f3ee4d75ca261b6bffbf64f6f178cb194b1be3191065a09f8d98828daa9"}, {file = "lxml-4.9.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:53b0410b220766321759f7f9066da67b1d0d4a7f6636a477984cbb1d98483955"}, {file = "lxml-4.9.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d76da27f5e3e9bc40eba6ed7a9e985f57547e98cf20521d91215707f2fb57e0f"}, {file = "lxml-4.9.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:686565ac77ff94a8965c11829af253d9e2ce3bf0d9225b1d2eb5c4d4666d0dca"}, {file = "lxml-4.9.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:b62d1431b4c40cda43cc986f19b8c86b1d2ae8918cfc00f4776fdf070b65c0c4"}, {file = "lxml-4.9.0-cp37-cp37m-win32.whl", hash = "sha256:4becd16750ca5c2a1b1588269322b2cebd10c07738f336c922b658dbab96a61c"}, {file = "lxml-4.9.0-cp37-cp37m-win_amd64.whl", hash = "sha256:e35a298691b9e10e5a5631f8f0ba605b30ebe19208dc8f58b670462f53753641"}, {file = "lxml-4.9.0-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:aa7447bf7c1a15ef24e2b86a277b585dd3f055e8890ac7f97374d170187daa97"}, {file = "lxml-4.9.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:612ef8f2795a89ba3a1d4c8c1af84d8453fd53ee611aa5ad460fdd2cab426fc2"}, {file = "lxml-4.9.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:1bfb791a8fcdbf55d1d41b8be940393687bec0e9b12733f0796668086d1a23ff"}, {file = "lxml-4.9.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:024684e0c5cfa121c22140d3a0898a3a9b2ea0f0fd2c229b6658af4bdf1155e5"}, {file = "lxml-4.9.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:81c29c8741fa07ecec8ec7417c3d8d1e2f18cf5a10a280f4e1c3f8c3590228b2"}, {file = "lxml-4.9.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6467626fa74f96f4d80fc6ec2555799e97fff8f36e0bfc7f67769f83e59cff40"}, {file = "lxml-4.9.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9cae837b988f44925d14d048fa6a8c54f197c8b1223fd9ee9c27084f84606143"}, {file = "lxml-4.9.0-cp38-cp38-win32.whl", hash = "sha256:5a49ad78543925e1a4196e20c9c54492afa4f1502c2a563f73097e2044c75190"}, {file = "lxml-4.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:bb7c1b029e54e26e01b1d1d912fc21abb65650d16ea9a191d026def4ed0859ed"}, {file = "lxml-4.9.0-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:d0d03b9636f1326772e6854459728676354d4c7731dae9902b180e2065ba3da6"}, {file = "lxml-4.9.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:9af19eb789d674b59a9bee5005779757aab857c40bf9cc313cb01eafac55ce55"}, {file = "lxml-4.9.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:dd00d28d1ab5fa7627f5abc957f29a6338a7395b724571a8cbff8fbed83aaa82"}, {file = "lxml-4.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:754a1dd04bff8a509a31146bd8f3a5dc8191a8694d582dd5fb71ff09f0722c22"}, {file = "lxml-4.9.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7679344f2270840dc5babc9ccbedbc04f7473c1f66d4676bb01680c0db85bcc"}, {file = "lxml-4.9.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:d882c2f3345261e898b9f604be76b61c901fbfa4ac32e3f51d5dc1edc89da3cb"}, {file = "lxml-4.9.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4e97c8fc761ad63909198acc892f34c20f37f3baa2c50a62d5ec5d7f1efc68a1"}, {file = "lxml-4.9.0-cp39-cp39-win32.whl", hash = "sha256:cf9ec915857d260511399ab87e1e70fa13d6b2972258f8e620a3959468edfc32"}, {file = "lxml-4.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:1254a79f8a67a3908de725caf59eae62d86738f6387b0a34b32e02abd6ae73db"}, {file = "lxml-4.9.0-pp37-pypy37_pp73-macosx_10_15_x86_64.whl", hash = "sha256:03370ec37fe562238d385e2c53089076dee53aabf8325cab964fdb04a9130fa0"}, {file = "lxml-4.9.0-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:f386def57742aacc3d864169dfce644a8c396f95aa35b41b69df53f558d56dd0"}, {file = "lxml-4.9.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:ea3f2e9eb41f973f73619e88bf7bd950b16b4c2ce73d15f24a11800ce1eaf276"}, {file = "lxml-4.9.0-pp38-pypy38_pp73-macosx_10_15_x86_64.whl", hash = "sha256:2d10659e6e5c53298e6d718fd126e793285bff904bb71d7239a17218f6a197b7"}, {file = "lxml-4.9.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:fcdf70191f0d1761d190a436db06a46f05af60e1410e1507935f0332280c9268"}, {file = "lxml-4.9.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:2b9c2341d96926b0d0e132e5c49ef85eb53fa92ae1c3a70f9072f3db0d32bc07"}, {file = "lxml-4.9.0-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:615886ee84b6f42f1bdf1852a9669b5fe3b96b6ff27f1a7a330b67ad9911200a"}, {file = "lxml-4.9.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:94f2e45b054dd759bed137b6e14ae8625495f7d90ddd23cf62c7a68f72b62656"}, {file = "lxml-4.9.0.tar.gz", hash = "sha256:520461c36727268a989790aef08884347cd41f2d8ae855489ccf40b50321d8d7"}, ] outcome = [ {file = "outcome-1.1.0-py2.py3-none-any.whl", hash = "sha256:c7dd9375cfd3c12db9801d080a3b63d4b0a261aa996c4c13152380587288d958"}, {file = "outcome-1.1.0.tar.gz", hash = "sha256:e862f01d4e626e63e8f92c38d1f8d5546d3f9cce989263c521b2e7990d186967"}, ] pdfrw = [ {file = "pdfrw-0.4-py2.py3-none-any.whl", hash = "sha256:758289edaa3b672e9a1a67504be73c18ec668d4e5b9d5ac9cbc0dc753d8d196b"}, {file = "pdfrw-0.4.tar.gz", hash = "sha256:0dc0494a0e6561b268542b28ede2280387c2728114f117d3bb5d8e4787b93ef4"}, ] pillow = [ {file = "Pillow-9.1.1-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:42dfefbef90eb67c10c45a73a9bc1599d4dac920f7dfcbf4ec6b80cb620757fe"}, {file = "Pillow-9.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ffde4c6fabb52891d81606411cbfaf77756e3b561b566efd270b3ed3791fde4e"}, {file = "Pillow-9.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c857532c719fb30fafabd2371ce9b7031812ff3889d75273827633bca0c4602"}, {file = "Pillow-9.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:59789a7d06c742e9d13b883d5e3569188c16acb02eeed2510fd3bfdbc1bd1530"}, {file = "Pillow-9.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4d45dbe4b21a9679c3e8b3f7f4f42a45a7d3ddff8a4a16109dff0e1da30a35b2"}, {file = "Pillow-9.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e9ed59d1b6ee837f4515b9584f3d26cf0388b742a11ecdae0d9237a94505d03a"}, {file = "Pillow-9.1.1-cp310-cp310-win32.whl", hash = "sha256:b3fe2ff1e1715d4475d7e2c3e8dabd7c025f4410f79513b4ff2de3d51ce0fa9c"}, {file = "Pillow-9.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:5b650dbbc0969a4e226d98a0b440c2f07a850896aed9266b6fedc0f7e7834108"}, {file = "Pillow-9.1.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:0b4d5ad2cd3a1f0d1df882d926b37dbb2ab6c823ae21d041b46910c8f8cd844b"}, {file = "Pillow-9.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9370d6744d379f2de5d7fa95cdbd3a4d92f0b0ef29609b4b1687f16bc197063d"}, {file = "Pillow-9.1.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b761727ed7d593e49671d1827044b942dd2f4caae6e51bab144d4accf8244a84"}, {file = "Pillow-9.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a66fe50386162df2da701b3722781cbe90ce043e7d53c1fd6bd801bca6b48d4"}, {file = "Pillow-9.1.1-cp37-cp37m-win32.whl", hash = "sha256:2b291cab8a888658d72b575a03e340509b6b050b62db1f5539dd5cd18fd50578"}, {file = "Pillow-9.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:1d4331aeb12f6b3791911a6da82de72257a99ad99726ed6b63f481c0184b6fb9"}, {file = "Pillow-9.1.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:8844217cdf66eabe39567118f229e275f0727e9195635a15e0e4b9227458daaf"}, {file = "Pillow-9.1.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b6617221ff08fbd3b7a811950b5c3f9367f6e941b86259843eab77c8e3d2b56b"}, {file = "Pillow-9.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20d514c989fa28e73a5adbddd7a171afa5824710d0ab06d4e1234195d2a2e546"}, {file = "Pillow-9.1.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:088df396b047477dd1bbc7de6e22f58400dae2f21310d9e2ec2933b2ef7dfa4f"}, {file = "Pillow-9.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:53c27bd452e0f1bc4bfed07ceb235663a1df7c74df08e37fd6b03eb89454946a"}, {file = "Pillow-9.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:3f6c1716c473ebd1649663bf3b42702d0d53e27af8b64642be0dd3598c761fb1"}, {file = "Pillow-9.1.1-cp38-cp38-win32.whl", hash = "sha256:c67db410508b9de9c4694c57ed754b65a460e4812126e87f5052ecf23a011a54"}, {file = "Pillow-9.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:f054b020c4d7e9786ae0404278ea318768eb123403b18453e28e47cdb7a0a4bf"}, {file = "Pillow-9.1.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:c17770a62a71718a74b7548098a74cd6880be16bcfff5f937f900ead90ca8e92"}, {file = "Pillow-9.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3f6a6034140e9e17e9abc175fc7a266a6e63652028e157750bd98e804a8ed9a"}, {file = "Pillow-9.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f372d0f08eff1475ef426344efe42493f71f377ec52237bf153c5713de987251"}, {file = "Pillow-9.1.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09e67ef6e430f90caa093528bd758b0616f8165e57ed8d8ce014ae32df6a831d"}, {file = "Pillow-9.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66daa16952d5bf0c9d5389c5e9df562922a59bd16d77e2a276e575d32e38afd1"}, {file = "Pillow-9.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d78ca526a559fb84faaaf84da2dd4addef5edb109db8b81677c0bb1aad342601"}, {file = "Pillow-9.1.1-cp39-cp39-win32.whl", hash = "sha256:55e74faf8359ddda43fee01bffbc5bd99d96ea508d8a08c527099e84eb708f45"}, {file = "Pillow-9.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:7c150dbbb4a94ea4825d1e5f2c5501af7141ea95825fadd7829f9b11c97aaf6c"}, {file = "Pillow-9.1.1-pp37-pypy37_pp73-macosx_10_10_x86_64.whl", hash = "sha256:769a7f131a2f43752455cc72f9f7a093c3ff3856bf976c5fb53a59d0ccc704f6"}, {file = "Pillow-9.1.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:488f3383cf5159907d48d32957ac6f9ea85ccdcc296c14eca1a4e396ecc32098"}, {file = "Pillow-9.1.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b525a356680022b0af53385944026d3486fc8c013638cf9900eb87c866afb4c"}, {file = "Pillow-9.1.1-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:6e760cf01259a1c0a50f3c845f9cad1af30577fd8b670339b1659c6d0e7a41dd"}, {file = "Pillow-9.1.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a4165205a13b16a29e1ac57efeee6be2dfd5b5408122d59ef2145bc3239fa340"}, {file = "Pillow-9.1.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:937a54e5694684f74dcbf6e24cc453bfc5b33940216ddd8f4cd8f0f79167f765"}, {file = "Pillow-9.1.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:baf3be0b9446a4083cc0c5bb9f9c964034be5374b5bc09757be89f5d2fa247b8"}, {file = "Pillow-9.1.1.tar.gz", hash = "sha256:7502539939b53d7565f3d11d87c78e7ec900d3c72945d4ee0e2f250d598309a0"}, ] pycparser = [ {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, ] pyfuse3 = [ {file = "pyfuse3-3.2.1.tar.gz", hash = "sha256:22d146dac59a8429115e9a93317975ea54b35e0278044a94d3fac5b4ad5f7e33"}, ] reportlab = [ {file = "reportlab-3.6.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4ba8eebfa4383e4680d6e7e6dba9c45c1fe19bbc0a754db4d84823f1a9511e56"}, {file = "reportlab-3.6.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:37dda88dbe16dd3f4f9039464637cce66e462c0b95e5763dbd45ac5799136d3a"}, {file = "reportlab-3.6.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:10681d89a0ca37bb4036283fb8c0efac9ac1b22265dbdf350bda0448be33e00c"}, {file = "reportlab-3.6.9-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cebd0b28a0e875a9ce789514700f80659269ecf2a8fcef0aa10b8ae52b40474a"}, {file = "reportlab-3.6.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ec84055cf2c83783958b74eadf0e577eb0cd9088c8b5d536e9ddc0f4a9f8c70"}, {file = "reportlab-3.6.9-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:90f74627cafecf3924741ab8b0690a19df4214eb56b1cfce2dc74a15c9744034"}, {file = "reportlab-3.6.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2c2fd861f10b2cd49ccf29a31da9ad5c3b95aa437804e4fd0351ed4eb695f74"}, {file = "reportlab-3.6.9-cp310-cp310-win32.whl", hash = "sha256:e492e87886423192af1fafde23907bcd9d2fdccfc22f67e18aa5c73db3a380a3"}, {file = "reportlab-3.6.9-cp310-cp310-win_amd64.whl", hash = "sha256:d1bf9455aff37beb421a4447d89d6dd77bb46f677c0bab4eb0272cdb79faad2f"}, {file = "reportlab-3.6.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0a7f2b7232c3ffb451b649d55c51a6dd0c8104ad7bbcfe355addf7619705e7fa"}, {file = "reportlab-3.6.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1967dbc9930917d75c39784712a137d432dbc2e5ca9e132a2453319c2619ccff"}, {file = "reportlab-3.6.9-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:32a5c5cd9625a40feec956f460355b4813bc3187c4f8dc9efd9f1a7f8f854e34"}, {file = "reportlab-3.6.9-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8cb82b6d14ad4bd915acacc8f114c6a7bab8b9b1503cabb930e433ebd320f90c"}, {file = "reportlab-3.6.9-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0e767cf4507ca8eed7dde8511f0889b0f19f160a2bdf9ef07742b2aaeceed9f2"}, {file = "reportlab-3.6.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a114761ad3ba6e0cdfacf14a8fb2cb8f5713b115ca1f0c17f3cd638d0a5b4bd"}, {file = "reportlab-3.6.9-cp37-cp37m-win32.whl", hash = "sha256:bbaab798991863952c593c0459dcb82e0aade837675593310e13cba2ce7fb45a"}, {file = "reportlab-3.6.9-cp37-cp37m-win_amd64.whl", hash = "sha256:ab1ffe4ec7be99ad348791116d436610afdc7a9a02a968997f31eaa62eaadad8"}, {file = "reportlab-3.6.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:496f42840604255ce06777bc129048b3bab966213bbac4f07fbe4ceb6a2e0482"}, {file = "reportlab-3.6.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a441afdfe31870b964bccde042d7172ed3c0077f519bbf3ed7d9d34c406b6b91"}, {file = "reportlab-3.6.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4fbe23ac870adf90544d2014c572dba6ec4d772afad6505bb91f171ddad12839"}, {file = "reportlab-3.6.9-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:de724c78f4eb1363b1195dce85a2a8806e7509b69ac5c842a714d942ea534d63"}, {file = "reportlab-3.6.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:713574da534b6ce73d884f1574c35a565e438af4888fcc75e752f1de02e356a7"}, {file = "reportlab-3.6.9-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:193671445b4885128d8800d3e416eb2fa4fd89bafae08cc9889c0752fe5ad8c2"}, {file = "reportlab-3.6.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ff0e014a3a3fe286c642ef51213c41684a156b9ed293ef205e8890bc1dbbfdc7"}, {file = "reportlab-3.6.9-cp38-cp38-win32.whl", hash = "sha256:23f5aed2d212096f2fe95d56f868d63f839a08bf7e389237e644d93981274222"}, {file = "reportlab-3.6.9-cp38-cp38-win_amd64.whl", hash = "sha256:09b2ca175129a34292399fc4c6a8b1739f6c5946368fcaa6f931d69385b2f720"}, {file = "reportlab-3.6.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:cb21666fc9edec9716553bfcfe0c30d1bbbe2731910a96f07ec65652974e5f83"}, {file = "reportlab-3.6.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d927bf802bf53c1b5a3878a22e9be310900877984e7c436a3a99bdd19cfec4c3"}, {file = "reportlab-3.6.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce3a3aad287c8532f62223f5720b5504e31abe3dce52a27bd2a25f508c0d846e"}, {file = "reportlab-3.6.9-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c9a5f63bc381c0f945402ef4c1bccc74a8eed28f6be6596704b1db7d82ec89fe"}, {file = "reportlab-3.6.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:50f8e30f5410efc69b0217261b1f21912888da392a4549e79c7aaaac85f01bfa"}, {file = "reportlab-3.6.9-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15294435f786968bcdf1a7a67bcc23a136470b6ea26919497f5c76ff0f653041"}, {file = "reportlab-3.6.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9b5e9115363545a727d8ebe7e4b94f7cf6f26113261a269d50d88b8db4eb726"}, {file = "reportlab-3.6.9-cp39-cp39-win32.whl", hash = "sha256:e1fc1b1f5d9d1c2e18b5e60602dfa7854b2330ba0efc312ef605abf588abea9c"}, {file = "reportlab-3.6.9-cp39-cp39-win_amd64.whl", hash = "sha256:92a6613af9877e3ad2a1c5a16a122514a4f9f8d9b91b1f22e7fa0fa796617b36"}, {file = "reportlab-3.6.9.tar.gz", hash = "sha256:5d0cc3682456ad213150f6dbffe7d47eab737d809e517c316103376be548fb84"}, ] rmcl = [ {file = "rmcl-0.4.2-py3-none-any.whl", hash = "sha256:09534999cd233e5e8db531e51aab87eee7d72aa5a2592bcf100e2d015110cf52"}, {file = "rmcl-0.4.2.tar.gz", hash = "sha256:58de4758e7e3cb7acbf28fcfa80f4155252afdfb191beb4ba4aa36961f66cc67"}, ] rmfuse = [] rmrl = [ {file = "rmrl-0.2.1-py3-none-any.whl", hash = "sha256:c35b9f20494a6034a16e916d7351575efb3e3f77acabe9094453a7f6013eaa86"}, {file = "rmrl-0.2.1.tar.gz", hash = "sha256:c532bef4168350e6ab17cf37c6481dc12b6a78e007c073503f082f36215b71c9"}, ] sniffio = [ {file = "sniffio-1.2.0-py3-none-any.whl", hash = "sha256:471b71698eac1c2112a40ce2752bb2f4a4814c22a54a3eed3676bc0f5ca9f663"}, {file = "sniffio-1.2.0.tar.gz", hash = "sha256:c4666eecec1d3f50960c6bdf61ab7bc350648da6c126e3cf6898d8cd4ddcd3de"}, ] sortedcontainers = [ {file = "sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0"}, {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, ] svglib = [ {file = "svglib-1.3.0.tar.gz", hash = "sha256:a38998b95d1bb99564dc9dffaf15e4e9453761f2790d2dd4147a4ad5fbac1078"}, ] tinycss2 = [ {file = "tinycss2-1.1.1-py3-none-any.whl", hash = "sha256:fe794ceaadfe3cf3e686b22155d0da5780dd0e273471a51846d0a02bc204fec8"}, {file = "tinycss2-1.1.1.tar.gz", hash = "sha256:b2e44dd8883c360c35dd0d1b5aad0b610e5156c2cb3b33434634e539ead9d8bf"}, ] trio = [ {file = "trio-0.18.0-py3-none-any.whl", hash = "sha256:a42af0634ba729cbfe8578be058750c6471dac19fbc7167ec6a3ca3f966fb424"}, {file = "trio-0.18.0.tar.gz", hash = "sha256:87a66ae61f27fe500c9024926a9ba482c07e1e0f56380b70a264d19c435ba076"}, ] webencodings = [ {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, ] xdg = [ {file = "xdg-5.1.1-py3-none-any.whl", hash = "sha256:865a7b56ed1d4cd2fce2ead1eddf97360843619757f473cd90b75f1817ca541d"}, {file = "xdg-5.1.1.tar.gz", hash = "sha256:aa619f26ccec6088b2a6018721d4ee86e602099b24644a90a8d3308a25acd06c"}, ] </del>


<del> [tool.poetry] name = "rmfuse-env" version = "0.1.0" description = "" authors = [] [tool.poetry.dependencies] python = "^3.8" rmfuse = {git = "https://github.com/rschroll/rmfuse.git", extras = ["pyfuse3"]} [tool.poetry.dev-dependencies] [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" </del>


<del> #!/usr/bin/env nix-shell #! nix-shell -i bash -p poetry poetry2nix.cli set -eu poetry lock poetry2nix lock </del>


gtksourceview5 ]; <ins> postPatch = '' substituteInPlace src/meson.build  --replace "1.2.0" "${libadwaita.version}" ''; </ins> postInstall = '' ln -s $out/bin/io.posidon.Paper $out/bin/paper '';


libreoffice = hiPrio libreoffice-still; <ins> libreoffice-qt = hiPrio libreoffice-qt-still; libreoffice-qt-unwrapped = libreoffice-qt.unwrapped; </ins> libreoffice-unwrapped = libreoffice.unwrapped; libreoffice-args = {