diff options
Diffstat (limited to 'pkgs/by-name')
128 files changed, 6843 insertions, 291 deletions
diff --git a/pkgs/by-name/ab/aba/package.nix b/pkgs/by-name/ab/aba/package.nix new file mode 100644 index 000000000000..4e62d4da8d0c --- /dev/null +++ b/pkgs/by-name/ab/aba/package.nix @@ -0,0 +1,53 @@ +{ fetchFromSourcehut +, just +, lib +, nix-update-script +, rustPlatform +, scdoc +}: +let + version = "0.7.0"; +in +rustPlatform.buildRustPackage { + pname = "aba"; + inherit version; + + src = fetchFromSourcehut { + owner = "~onemoresuza"; + repo = "aba"; + rev = version; + hash = "sha256-YPE5HYa90BcNy5jdYbzkT81KavJcbSeGrsWRILnIiEE="; + domain = "sr.ht"; + }; + + cargoSha256 = "sha256-wzI+UMcVeFQNFlWDkyxk8tjpU7beNRKoPYbid8b15/Q="; + + nativeBuildInputs = [ + just + scdoc + ]; + + # There are no tests + doCheck = false; + + dontUseJustBuild = true; + dontUseJustCheck = true; + dontUseJustInstall = true; + + postInstall = '' + just --set PREFIX $out install-doc + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "An address book for aerc"; + homepage = "https://sr.ht/~onemoresuza/aba/"; + changelog = "https://git.sr.ht/~onemoresuza/aba/tree/main/item/CHANGELOG.md"; + downloadPage = "https://git.sr.ht/~onemoresuza/aba/refs/${version}"; + maintainers = with lib.maintainers; [ onemoresuza ]; + license = lib.licenses.isc; + platforms = lib.platforms.unix; + mainProgram = "aba"; + }; +} diff --git a/pkgs/by-name/al/alpine-make-rootfs/package.nix b/pkgs/by-name/al/alpine-make-rootfs/package.nix new file mode 100644 index 000000000000..1fcfc23710a5 --- /dev/null +++ b/pkgs/by-name/al/alpine-make-rootfs/package.nix @@ -0,0 +1,33 @@ +{ stdenvNoCC, lib, fetchFromGitHub, makeWrapper, apk-tools, coreutils, findutils, gnugrep, gnused, gnutar, gzip, rsync, util-linux, wget +}: +stdenvNoCC.mkDerivation rec { + pname = "alpine-make-rootfs"; + version = "0.7.0"; + + src = fetchFromGitHub { + owner = "alpinelinux"; + repo = "alpine-make-rootfs"; + rev = "v${version}"; + hash = "sha256-B5qYQ6ah4hFZfb3S5vwgevh7aEHI3YGLoA+IyipaDck="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + dontBuild = true; + makeFlags = [ "PREFIX=$(out)" ]; + + postInstall = '' + wrapProgram $out/bin/alpine-make-rootfs --set PATH ${lib.makeBinPath [ + apk-tools coreutils findutils gnugrep gnused gnutar gzip rsync util-linux wget + ]} + ''; + + meta = with lib; { + homepage = "https://github.com/alpinelinux/alpine-make-rootfs"; + description = "Make customized Alpine Linux rootfs (base image) for containers"; + mainProgram = "alpine-make-rootfs"; + maintainers = with maintainers; [ danielsidhion ]; + license = licenses.mit; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/am/amazon-ssm-agent/0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch b/pkgs/by-name/am/amazon-ssm-agent/0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch new file mode 100644 index 000000000000..364f7653efa3 --- /dev/null +++ b/pkgs/by-name/am/amazon-ssm-agent/0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch @@ -0,0 +1,44 @@ +From bea6307ec2a77d90d59c13940381d73ec0f05b70 Mon Sep 17 00:00:00 2001 +From: Graham Christensen <graham@grahamc.com> +Date: Mon, 1 Mar 2021 10:57:44 -0500 +Subject: [PATCH] Disable NIC tests that fail in the Nix sandbox. + +--- + agent/managedInstances/fingerprint/fingerprint_integ_test.go | 2 ++ + agent/ssm/service_test.go | 1 + + 2 files changed, 3 insertions(+) + +diff --git a/agent/managedInstances/fingerprint/fingerprint_integ_test.go b/agent/managedInstances/fingerprint/fingerprint_integ_test.go +index a1f969ff..631ea1f5 100644 +--- a/agent/managedInstances/fingerprint/fingerprint_integ_test.go ++++ b/agent/managedInstances/fingerprint/fingerprint_integ_test.go +@@ -28,12 +28,14 @@ func TestHostnameInfo(t *testing.T) { + } + + func TestPrimaryIpInfo(t *testing.T) { ++ t.Skip("The Nix build sandbox has no non-loopback IPs, causing this test to fail."); + ip, err := primaryIpInfo() + assert.NoError(t, err, "expected no error fetching the primary ip") + assert.NotEmpty(t, ip, "expected to fetch primary ip") + } + + func TestMacAddrInfo(t *testing.T) { ++ t.Skip("The Nix build sandbox has no non-loopback interfaces, causing this test to fail."); + mac, err := macAddrInfo() + assert.NoError(t, err, "expected no error fetching the mac addr") + assert.NotEmpty(t, mac, "expected to fetch mac address") +diff --git a/agent/ssm/service_test.go b/agent/ssm/service_test.go +index f4b34f83..d8216dba 100644 +--- a/agent/ssm/service_test.go ++++ b/agent/ssm/service_test.go +@@ -85,6 +85,7 @@ func (suite *SsmServiceTestSuite) TestUpdateEmptyInstanceInformation() { + // Test function for update instance information + // This function update the agent name, agent statuc, and agent version. + func (suite *SsmServiceTestSuite) TestUpdateInstanceInformation() { ++ suite.T().Skip("The Nix build sandbox has no interfaces for IP and MAC address reports."); + // Give mock value to test UpdateInstanceInformation, assert the error is nil, assert the log.Debug function get called. + response, err := suite.sdkService.UpdateInstanceInformation(suite.logMock, "2.2.3.2", "active", "Amazon-ssm-agent") + assert.Nil(suite.T(), err, "Err should be nil") +-- +2.29.2 + diff --git a/pkgs/by-name/am/amazon-ssm-agent/0002-version-gen-don-t-use-unnecessary-constants.patch b/pkgs/by-name/am/amazon-ssm-agent/0002-version-gen-don-t-use-unnecessary-constants.patch new file mode 100644 index 000000000000..234e510d3d17 --- /dev/null +++ b/pkgs/by-name/am/amazon-ssm-agent/0002-version-gen-don-t-use-unnecessary-constants.patch @@ -0,0 +1,46 @@ +From 473e3f8544915a35b3a45c548743978b34e5310e Mon Sep 17 00:00:00 2001 +From: Cole Helbling <cole.e.helbling@outlook.com> +Date: Tue, 2 Mar 2021 00:24:00 -0800 +Subject: [PATCH] version-gen: don't use unnecessary constants + +This prevents the tool from being built with Nix, because this project +doesn't use Go modules (or something; I'm not really familiar with Go, +much less Go + Nix). +--- + agent/version/versiongenerator/version-gen.go | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/agent/version/versiongenerator/version-gen.go b/agent/version/versiongenerator/version-gen.go +index d710effc..55c9a001 100644 +--- a/agent/version/versiongenerator/version-gen.go ++++ b/agent/version/versiongenerator/version-gen.go +@@ -22,8 +22,6 @@ import ( + "path/filepath" + "strings" + "text/template" +- +- "github.com/aws/amazon-ssm-agent/agent/appconfig" + ) + + const versiongoTemplate = `// This is an autogenerated file and should not be edited. +@@ -59,7 +57,7 @@ func main() { + versionStr := strings.TrimSpace(string(versionContent)) + + fmt.Printf("Agent Version: %v", versionStr) +- if err := ioutil.WriteFile(filepath.Join("VERSION"), []byte(versionStr), appconfig.ReadWriteAccess); err != nil { ++ if err := ioutil.WriteFile(filepath.Join("VERSION"), []byte(versionStr), 0600); err != nil { + log.Fatalf("Error writing to VERSION file. %v", err) + } + +@@ -108,7 +106,7 @@ func main() { + + releaseNoteOutFile := strings.Join(releaseNoteLines, "\n") + +- if err = ioutil.WriteFile(filepath.Join(releaseNotesFile), []byte(releaseNoteOutFile), appconfig.ReadWriteAccess); err != nil { ++ if err = ioutil.WriteFile(filepath.Join(releaseNotesFile), []byte(releaseNoteOutFile), 0600); err != nil { + log.Fatalf("Error writing to RELEASENOTES.md file. %v", err) + } + +-- +2.30.0 + diff --git a/pkgs/by-name/am/amazon-ssm-agent/package.nix b/pkgs/by-name/am/amazon-ssm-agent/package.nix new file mode 100644 index 000000000000..4816ac1bdc73 --- /dev/null +++ b/pkgs/by-name/am/amazon-ssm-agent/package.nix @@ -0,0 +1,157 @@ +{ lib +, writeShellScriptBin +, buildGoModule +, makeWrapper +, fetchFromGitHub +, coreutils +, nettools +, util-linux +, stdenv +, dmidecode +, bashInteractive +, nix-update-script +, testers +, amazon-ssm-agent +, overrideEtc ? true +}: + +let + # Tests use lsb_release, so we mock it (the SSM agent used to not + # read from our /etc/os-release file, but now it does) because in + # reality, it won't (shouldn't) be used when active on a system with + # /etc/os-release. If it is, we fake the only two fields it cares about. + fake-lsb-release = writeShellScriptBin "lsb_release" '' + . /etc/os-release || true + + case "$1" in + -i) echo "''${NAME:-unknown}";; + -r) echo "''${VERSION:-unknown}";; + esac + ''; + + binaries = { + "core" = "amazon-ssm-agent"; + "agent" = "ssm-agent-worker"; + "cli-main" = "ssm-cli"; + "worker" = "ssm-document-worker"; + "logging" = "ssm-session-logger"; + "sessionworker" = "ssm-session-worker"; + }; +in +buildGoModule rec { + pname = "amazon-ssm-agent"; + version = "3.2.1705.0"; + + src = fetchFromGitHub { + owner = "aws"; + repo = "amazon-ssm-agent"; + rev = "refs/tags/${version}"; + hash = "sha256-4KhDD5G/fS1rHitQdbYqIz6RSQ3PTMZsUENC202a/Do="; + }; + + vendorHash = null; + + patches = [ + # Some tests use networking, so we skip them. + ./0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch + + # They used constants from another package that I couldn't figure + # out how to resolve, so hardcoded the constants. + ./0002-version-gen-don-t-use-unnecessary-constants.patch + ]; + + nativeBuildInputs = [ makeWrapper ]; + + # See the list https://github.com/aws/amazon-ssm-agent/blob/3.2.1630.0/makefile#L120-L138 + # The updater is not built because it cannot work on NixOS + subPackages = [ + "core" + "agent" + "agent/cli-main" + "agent/framework/processor/executer/outofproc/worker" + "agent/session/logging" + "agent/framework/processor/executer/outofproc/sessionworker" + ]; + + ldflags = [ "-s" "-w" ]; + + postPatch = '' + printf "#!/bin/sh\ntrue" > ./Tools/src/checkstyle.sh + + substituteInPlace agent/platform/platform_unix.go \ + --replace "/usr/bin/uname" "${coreutils}/bin/uname" \ + --replace '"/bin", "hostname"' '"${nettools}/bin/hostname"' \ + --replace '"lsb_release"' '"${fake-lsb-release}/bin/lsb_release"' + + substituteInPlace agent/session/shell/shell_unix.go \ + --replace '"script"' '"${util-linux}/bin/script"' + + substituteInPlace agent/rebooter/rebooter_unix.go \ + --replace "/sbin/shutdown" "shutdown" + + echo "${version}" > VERSION + '' + lib.optionalString overrideEtc '' + substituteInPlace agent/appconfig/constants_unix.go \ + --replace '"/etc/amazon/ssm/"' '"${placeholder "out"}/etc/amazon/ssm/"' + '' + lib.optionalString stdenv.isLinux '' + substituteInPlace agent/managedInstances/fingerprint/hardwareInfo_unix.go \ + --replace /usr/sbin/dmidecode ${dmidecode}/bin/dmidecode + ''; + + preBuild = '' + # Note: if this step fails, please patch the code to fix it! Please only skip + # tests if it is not feasible for the test to pass in a sandbox. + make quick-integtest + + make pre-release + make pre-build + ''; + + installPhase = '' + runHook preInstall + + declare -A map=(${builtins.concatStringsSep " " (lib.mapAttrsToList (name: value: "[\"${name}\"]=\"${value}\"") binaries)}) + + for key in ''${!map[@]}; do + install -D -m 0555 -T "$GOPATH/bin/''${key}" "$out/bin/''${map[''${key}]}" + done + + # These templates retain their `.template` extensions on installation. The + # amazon-ssm-agent.json.template is required as default configuration when an + # amazon-ssm-agent.json isn't present. Here, we retain the template to show + # we're using the default configuration. + + # seelog.xml isn't actually required to run, but it does ship as a template + # with debian packages, so it's here for reference. Future work in the nixos + # module could use this template and substitute a different log level. + + install -D -m 0444 -t $out/etc/amazon/ssm amazon-ssm-agent.json.template + install -D -m 0444 -T seelog_unix.xml $out/etc/amazon/ssm/seelog.xml.template + + runHook postInstall + ''; + + postFixup = '' + wrapProgram $out/bin/amazon-ssm-agent --prefix PATH : ${bashInteractive}/bin + ''; + + passthru = { + updateScript = nix-update-script { }; + tests.version = testers.testVersion { + package = amazon-ssm-agent; + command = "amazon-ssm-agent --version"; + }; + }; + + meta = with lib; { + description = "Agent to enable remote management of your Amazon EC2 instance configuration"; + changelog = "https://github.com/aws/amazon-ssm-agent/releases/tag/${version}"; + homepage = "https://github.com/aws/amazon-ssm-agent"; + license = licenses.asl20; + platforms = platforms.unix; + maintainers = with maintainers; [ copumpkin manveru anthonyroussel ]; + + # Darwin support is broken + broken = stdenv.isDarwin; + }; +} diff --git a/pkgs/by-name/ar/argagg/package.nix b/pkgs/by-name/ar/argagg/package.nix new file mode 100644 index 000000000000..bb8507abbe97 --- /dev/null +++ b/pkgs/by-name/ar/argagg/package.nix @@ -0,0 +1,41 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "argagg"; + version = "0.4.7"; + + src = fetchFromGitHub { + owner = "vietjtnguyen"; + repo = "argagg"; + rev = finalAttrs.version; + hash = "sha256-G0PzoKpUyb1MaziLvHgasq98jPODUu4EgPzywRjuIN8="; + }; + + nativeBuildInputs = [ + cmake + ]; + + meta = { + homepage = "https://github.com/vietjtnguyen/argagg"; + description = "Argument Aggregator"; + longDescription = '' + argagg is yet another C++ command line argument/option parser. It was + written as a simple and idiomatic alternative to other frameworks like + getopt, Boost program options, TCLAP, and others. The goal is to achieve + the majority of argument parsing needs in a simple manner with an easy to + use API. It operates as a single pass over all arguments, recognizing + flags prefixed by - (short) or -- (long) and aggregating them into easy to + access structures with lots of convenience functions. It defers processing + types until you access them, so the result structures end up just being + pointers into the original command line argument C-strings. + ''; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ AndersonTorres ]; + platforms = lib.platforms.all; + badPlatforms = [ "aarch64-darwin" ]; + }; +}) diff --git a/pkgs/by-name/ar/argtable/package.nix b/pkgs/by-name/ar/argtable/package.nix new file mode 100644 index 000000000000..18206202691c --- /dev/null +++ b/pkgs/by-name/ar/argtable/package.nix @@ -0,0 +1,48 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "argtable"; + version = "3.2.2"; + srcVersion = "v${finalAttrs.version}.f25c624"; + + src = fetchFromGitHub { + owner = "argtable"; + repo = "argtable3"; + rev = finalAttrs.srcVersion; + hash = "sha256-X89xFLDs6NEgjzzwy8kplvTgukQd/CV3Xa9A3JXecf4="; + }; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + (lib.cmakeBool "BUILD_SHARED_LIBS" true) + ]; + + postPatch = '' + patchShebangs tools/build + ''; + + meta = { + homepage = "https://github.com/argtable/argtable3"; + description = "A single-file, ANSI C command-line parsing library"; + longDescription = '' + Argtable is an open source ANSI C library that parses GNU-style + command-line options. It simplifies command-line parsing by defining a + declarative-style API that you can use to specify what your command-line + syntax looks like. Argtable will automatically generate consistent error + handling logic and textual descriptions of the command line syntax, which + are essential but tedious to implement for a robust CLI program. + ''; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ AndersonTorres artuuge ]; + platforms = lib.platforms.all; + }; +}) +# TODO: a NixOS test suite +# TODO: multiple outputs +# TODO: documentation +# TODO: build both shared and static libs diff --git a/pkgs/by-name/as/ast-grep/package.nix b/pkgs/by-name/as/ast-grep/package.nix index 3ac77c214afc..68e9ebd5f4d0 100644 --- a/pkgs/by-name/as/ast-grep/package.nix +++ b/pkgs/by-name/as/ast-grep/package.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage rec { pname = "ast-grep"; - version = "0.12.4"; + version = "0.12.5"; src = fetchFromGitHub { owner = "ast-grep"; repo = "ast-grep"; rev = version; - hash = "sha256-rWfuPk8PWxOmy/WDXGnqBCuGPEI7tBwuOc0IP2FhAq8="; + hash = "sha256-oFe3AbMpBVBAm/W4IowXAKcEN7CDrrAXhx4dzMXppUM="; }; - cargoHash = "sha256-M3eNvY8UwsnV9mvkGD//u1zTiJzV1ce7ODyQjnDSZTo="; + cargoHash = "sha256-f4tcJqT3l9G6FimBb0D4PATgQYUkSG5uIQ9BbsbgC/U="; # error: linker `aarch64-linux-gnu-gcc` not found postPatch = '' diff --git a/pkgs/by-name/ba/bashly/Gemfile b/pkgs/by-name/ba/bashly/Gemfile new file mode 100644 index 000000000000..b5d29f5f4c59 --- /dev/null +++ b/pkgs/by-name/ba/bashly/Gemfile @@ -0,0 +1,2 @@ +source 'https://rubygems.org' +gem 'bashly' diff --git a/pkgs/by-name/ba/bashly/Gemfile.lock b/pkgs/by-name/ba/bashly/Gemfile.lock new file mode 100644 index 000000000000..0021014b3728 --- /dev/null +++ b/pkgs/by-name/ba/bashly/Gemfile.lock @@ -0,0 +1,59 @@ +GEM + remote: https://rubygems.org/ + specs: + bashly (1.1.1) + colsole (>= 0.8.1, < 2) + completely (~> 0.6.1) + filewatcher (~> 2.0) + gtx (~> 0.1) + lp (~> 0.2) + mister_bin (~> 0.7) + psych (>= 3.3.2, < 7) + tty-markdown (~> 0.7) + colsole (1.0.0) + completely (0.6.1) + colsole (>= 0.8.1, < 2) + mister_bin (~> 0.7) + docopt_ng (0.7.1) + filewatcher (2.1.0) + module_methods (~> 0.1.0) + gtx (0.1.0) + kramdown (2.4.0) + rexml + lp (0.2.1) + mister_bin (0.7.6) + colsole (>= 0.8.1, < 2) + docopt_ng (~> 0.7, >= 0.7.1) + module_methods (0.1.0) + pastel (0.8.0) + tty-color (~> 0.5) + psych (5.1.1.1) + stringio + rexml (3.2.6) + rouge (4.1.3) + stringio (3.0.8) + strings (0.2.1) + strings-ansi (~> 0.2) + unicode-display_width (>= 1.5, < 3.0) + unicode_utils (~> 1.4) + strings-ansi (0.2.0) + tty-color (0.6.0) + tty-markdown (0.7.2) + kramdown (>= 1.16.2, < 3.0) + pastel (~> 0.8) + rouge (>= 3.14, < 5.0) + strings (~> 0.2.0) + tty-color (~> 0.5) + tty-screen (~> 0.8) + tty-screen (0.8.1) + unicode-display_width (2.5.0) + unicode_utils (1.4.0) + +PLATFORMS + x86_64-linux + +DEPENDENCIES + bashly + +BUNDLED WITH + 2.3.26 diff --git a/pkgs/by-name/ba/bashly/gemset.nix b/pkgs/by-name/ba/bashly/gemset.nix new file mode 100644 index 000000000000..e24c0b3483d7 --- /dev/null +++ b/pkgs/by-name/ba/bashly/gemset.nix @@ -0,0 +1,231 @@ +{ + bashly = { + dependencies = ["colsole" "completely" "filewatcher" "gtx" "lp" "mister_bin" "psych" "tty-markdown"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1rhzbpv8j5qcm5a84m4vzrryb0j8z90q6djbpid4ay2fr492kvkq"; + type = "gem"; + }; + version = "1.1.1"; + }; + colsole = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1fvf6dz2wsvjk7q24z0dm8lajq3p2l6i5ywf3mxj683rmhwq49bg"; + type = "gem"; + }; + version = "1.0.0"; + }; + completely = { + dependencies = ["colsole" "mister_bin"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01nk1cigb09z6rjy41qrhqf58cgpqm43xwjdkz33mfmwrnz04cw1"; + type = "gem"; + }; + version = "0.6.1"; + }; + docopt_ng = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rsnl5s7k2s1gl4n4dg68ssg577kf11sl4a4l2lb2fpswj718950"; + type = "gem"; + }; + version = "0.7.1"; + }; + filewatcher = { + dependencies = ["module_methods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03f9v57c5zag09mi10yjhdx7y0vv2w5wrnwzbij9hhkwh43rk077"; + type = "gem"; + }; + version = "2.1.0"; + }; + gtx = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10hfhicvv371gy1i16x6vry1xglvxl0zh7qr6f14pqsx32qih6ff"; + type = "gem"; + }; + version = "0.1.0"; + }; + kramdown = { + dependencies = ["rexml"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ic14hdcqxn821dvzki99zhmcy130yhv5fqfffkcf87asv5mnbmn"; + type = "gem"; + }; + version = "2.4.0"; + }; + lp = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ns1aza32n929w7smg1dsn4g6qlfi7k1jrvssyn35cicmwn0gyyr"; + type = "gem"; + }; + version = "0.2.1"; + }; + mister_bin = { + dependencies = ["colsole" "docopt_ng"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xx8cxvzcn47zsnshcllf477x4rbssrchvp76929qnsg5k9q7fas"; + type = "gem"; + }; + version = "0.7.6"; + }; + module_methods = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1886wjscfripgzlmyvcd0jmlzwr6hxvklm2a5rm32dw5bf7bvjki"; + type = "gem"; + }; + version = "0.1.0"; + }; + pastel = { + dependencies = ["tty-color"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xash2gj08dfjvq4hy6l1z22s5v30fhizwgs10d6nviggpxsj7a8"; + type = "gem"; + }; + version = "0.8.0"; + }; + psych = { + dependencies = ["stringio"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0wjzrkssjfjpynij5dpycyflhqbjvi1gc2j73xgq3b196s1d3c24"; + type = "gem"; + }; + version = "5.1.1.1"; + }; + rexml = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05i8518ay14kjbma550mv0jm8a6di8yp5phzrd8rj44z9qnrlrp0"; + type = "gem"; + }; + version = "3.2.6"; + }; + rouge = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19drl3x8fw65v3mpy7fk3cf3dfrywz5alv98n2rm4pp04vdn71lw"; + type = "gem"; + }; + version = "4.1.3"; + }; + stringio = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ix96dxbjqlpymdigb4diwrifr0bq7qhsrng95fkkp18av326nqk"; + type = "gem"; + }; + version = "3.0.8"; + }; + strings = { + dependencies = ["strings-ansi" "unicode-display_width" "unicode_utils"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1yynb0qhhhplmpzavfrrlwdnd1rh7rkwzcs4xf0mpy2wr6rr6clk"; + type = "gem"; + }; + version = "0.2.1"; + }; + strings-ansi = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "120wa6yjc63b84lprglc52f40hx3fx920n4dmv14rad41rv2s9lh"; + type = "gem"; + }; + version = "0.2.0"; + }; + tty-color = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0aik4kmhwwrmkysha7qibi2nyzb4c8kp42bd5vxnf8sf7b53g73g"; + type = "gem"; + }; + version = "0.6.0"; + }; + tty-markdown = { + dependencies = ["kramdown" "pastel" "rouge" "strings" "tty-color" "tty-screen"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04f599zn5rfndq4d9l0acllfpc041bzdkkz2h6x0dl18f2wivn0y"; + type = "gem"; + }; + version = "0.7.2"; + }; + tty-screen = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18jr6s1cg8yb26wzkqa6874q0z93rq0y5aw092kdqazk71y6a235"; + type = "gem"; + }; + version = "0.8.1"; + }; + unicode-display_width = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d0azx233nags5jx3fqyr23qa2rhgzbhv8pxp46dgbg1mpf82xky"; + type = "gem"; + }; + version = "2.5.0"; + }; + unicode_utils = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0h1a5yvrxzlf0lxxa1ya31jcizslf774arnsd89vgdhk4g7x08mr"; + type = "gem"; + }; + version = "1.4.0"; + }; +} diff --git a/pkgs/by-name/ba/bashly/package.nix b/pkgs/by-name/ba/bashly/package.nix new file mode 100644 index 000000000000..5a3d6661caa2 --- /dev/null +++ b/pkgs/by-name/ba/bashly/package.nix @@ -0,0 +1,38 @@ +{ lib +, stdenvNoCC +, bundlerApp +}: + +let + bashlyBundlerApp = bundlerApp { + pname = "bashly"; + gemdir = ./.; + exes = [ "bashly" ]; + }; +in +stdenvNoCC.mkDerivation (finalAttrs: { + name = "bashly"; + + dontUnpack = true; + + installPhase = '' + runHook preInstall + + mkdir $out; + cd $out; + + mkdir bin; pushd bin; + ln -vs ${bashlyBundlerApp}/bin/bashly; + + runHook postInstall + ''; + + meta = { + description = "Bash command line framework and CLI generator"; + homepage = "https://github.com/DannyBen/bashly"; + license = lib.licenses.mit; + mainProgram = "bashly"; + maintainers = with lib.maintainers; [ drupol ]; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/by-name/be/bemoji/package.nix b/pkgs/by-name/be/bemoji/package.nix new file mode 100644 index 000000000000..68f83bf43287 --- /dev/null +++ b/pkgs/by-name/be/bemoji/package.nix @@ -0,0 +1,32 @@ +{ lib +, stdenvNoCC +, fetchFromGitHub +}: + +stdenvNoCC.mkDerivation rec { + pname = "bemoji"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "marty-oehme"; + repo = "bemoji"; + rev = version; + hash = "sha256-XXNrUaS06UHF3cVfIfWjGF1sdPE709W2tFhfwTitzNs="; + }; + + strictDeps = true; + dontBuild = true; + + postInstall = '' + install -Dm555 bemoji -t $out/bin + ''; + + meta = with lib; { + homepage = "https://github.com/marty-oehme/bemoji/"; + description = "Emoji picker with support for bemenu/wofi/rofi/dmenu and wayland/X11"; + license = licenses.mit; + mainProgram = "bemoji"; + platforms = platforms.all; + maintainers = with maintainers; [ laurent-f1z1 ]; + }; +} diff --git a/pkgs/by-name/bo/boogie/package.nix b/pkgs/by-name/bo/boogie/package.nix index 44811a33b637..2080271e8a40 100644 --- a/pkgs/by-name/bo/boogie/package.nix +++ b/pkgs/by-name/bo/boogie/package.nix @@ -2,13 +2,13 @@ buildDotnetModule rec { pname = "Boogie"; - version = "3.0.4"; + version = "3.0.5"; src = fetchFromGitHub { owner = "boogie-org"; repo = "boogie"; rev = "v${version}"; - sha256 = "sha256-yebThnIOpZ5crYsSZtbDj8Gn6DznTNJ4T/TsFR3gWvs="; + sha256 = "sha256-KciQakwus7cKjtfp5x8nDV7bbTXlzILcL3ivCJAV6Vk="; }; projectFile = [ "Source/Boogie.sln" ]; diff --git a/pkgs/by-name/br/bruno/package.nix b/pkgs/by-name/br/bruno/package.nix index 4dfa1375ef7a..b058449ea224 100644 --- a/pkgs/by-name/br/bruno/package.nix +++ b/pkgs/by-name/br/bruno/package.nix @@ -15,11 +15,11 @@ stdenv.mkDerivation rec { pname = "bruno"; - version = "0.17.0"; + version = "0.27.0"; src = fetchurl { url = "https://github.com/usebruno/bruno/releases/download/v${version}/bruno_${version}_amd64_linux.deb"; - hash = "sha256-4FF9SEgWuIPQSarOBTaEvgdgRTkR1caRYr/bjfFmTLE="; + hash = "sha256-57Cbp/+3rNq/bhUItPuN6ZIjSd8IzmJsn9FNm89khiE="; }; nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ]; diff --git a/pkgs/by-name/c2/c2fmzq/package.nix b/pkgs/by-name/c2/c2fmzq/package.nix new file mode 100644 index 000000000000..ae21cc0e5007 --- /dev/null +++ b/pkgs/by-name/c2/c2fmzq/package.nix @@ -0,0 +1,36 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, nixosTests +}: + +buildGoModule rec { + pname = "c2FmZQ"; + version = "0.4.9"; + + src = fetchFromGitHub { + owner = "c2FmZQ"; + repo = "c2FmZQ"; + rev = "v${version}"; + hash = "sha256-xrQBL/Xjzsg0jZ7cFuDfjCQhmt/dTD8FoCSlw0sX5MQ="; + }; + + ldflags = [ "-s" "-w" ]; + + sourceRoot = "source/c2FmZQ"; + + vendorHash = "sha256-Hz6P+ptn1i+8Ek3pp8j+iB8NN5Xks50jyZuT8Ullxbo="; + + subPackages = [ "c2FmZQ-client" "c2FmZQ-server" ]; + + passthru.tests = { inherit (nixosTests) c2fmzq; }; + + meta = with lib; { + description = "Securely encrypt, store, and share files, including but not limited to pictures and videos"; + homepage = "https://github.com/c2FmZQ/c2FmZQ"; + license = licenses.gpl3Only; + mainProgram = "c2FmZQ-server"; + maintainers = with maintainers; [ hmenke ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/ca/cardboard/package.nix b/pkgs/by-name/ca/cardboard/package.nix new file mode 100644 index 000000000000..4bed07f0bc57 --- /dev/null +++ b/pkgs/by-name/ca/cardboard/package.nix @@ -0,0 +1,137 @@ +{ lib +, stdenv +, fetchFromGitLab +, fetchurl +, fetchgit +, ffmpeg +, libGL +, libX11 +, libcap +, libdrm +, libinput +, libpng +, libxcb +, libxkbcommon +, mesa +, meson +, ninja +, pandoc +, pixman +, pkg-config +, unzip +, wayland +, wayland-protocols +, xcbutilerrors +, xcbutilimage +, xcbutilwm +}: + +let + allSources = { + # cereal.wrap + cereal-wrap = fetchurl { + name = "cereal-1.3.0.tar.gz"; + url = "https://github.com/USCiLab/cereal/archive/v1.3.0.tar.gz"; + hash = "sha256-Mp6j4xMLAmwDpKzFDhaOfa/05uZhvGp9/sDXe1cIUdU="; + }; + cereal-wrapdb = fetchurl { + name = "cereal-1.3.0-1-wrap.zip"; + url = "https://wrapdb.mesonbuild.com/v1/projects/cereal/1.3.0/1/get_zip"; + hash = "sha256-QYck5UT7fPLqtLDb1iOSX4Hnnns48Jj23Ae/LCfLSKY="; + }; + + # expected.wrap + expected-wrap = fetchgit { + name = "expected"; + url = "https://gitlab.com/cardboardwm/expected"; + rev = "0ee13cb2b058809aa9708c45ca18d494e72a759e"; + sha256 = "sha256-gYr4/pjuLlr3k6Jcrg2/SzJLtbgyA+ZN2oMHkHXANDo="; + }; + + # wlroots.wrap + wlroots-wrap = fetchgit { + name = "wlroots"; + url = "https://github.com/swaywm/wlroots"; + rev = "0.12.0"; + sha256 = "sha256-1rE3D+kQprjcjobc95/mQkUa5y1noY0MdoYJ/SpFQwY="; + }; + + # the source itself + cardboard = fetchFromGitLab { + owner = "cardboardwm"; + repo = "cardboard"; + rev = "b54758d85164fb19468f5ca52588ebea576cd027"; + hash = "sha256-Kn5NyQSDyX7/nn2bKZPnsuepkoppi5XIkdu7IDy5r4w="; + }; + }; +in +stdenv.mkDerivation { + pname = "cardboard"; + version = "unstable-2021-05-10"; + + src = allSources.cardboard; + + outputs = [ "out" "dev" "lib" "man" ]; + + nativeBuildInputs = [ + meson + ninja + pandoc + pkg-config + unzip + ]; + + buildInputs = [ + ffmpeg + libGL + libX11 + libcap + libdrm + libinput + libpng + libxcb + libxkbcommon + mesa + pixman + wayland + wayland-protocols + xcbutilerrors + xcbutilimage + xcbutilwm + ]; + + postPatch = '' + pushd subprojects + tar xvf ${allSources.cereal-wrap} + unzip ${allSources.cereal-wrapdb} + cp -r ${allSources.expected-wrap} ${allSources.expected-wrap.name} + cp -r ${allSources.wlroots-wrap} ${allSources.wlroots-wrap.name} + popd + + # gcc12 + sed '1i#include <functional>' -i cardboard/ViewAnimation.h + ''; + + # "Inherited" from Nixpkgs expression for wlroots + mesonFlags = [ + (lib.mesonBool "man" true) + (lib.mesonOption "wlroots:logind-provider" "systemd") + (lib.mesonEnable "wlroots:libseat" false) + ]; + + # gcc12 + env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=array-bounds" ]; + + passthru = { + providedSessions = [ "cardboard" ]; + }; + + meta = { + homepage = "https://gitlab.com/cardboardwm/cardboard"; + description = "A scrollable, tiling Wayland compositor inspired on PaperWM"; + license = lib.licenses.gpl3Only; + mainProgram = "cardboard"; + maintainers = with lib.maintainers; [ AndersonTorres ]; + inherit (wayland.meta) platforms; + }; +} diff --git a/pkgs/by-name/ca/cargo-xwin/package.nix b/pkgs/by-name/ca/cargo-xwin/package.nix new file mode 100644 index 000000000000..36d60fb509de --- /dev/null +++ b/pkgs/by-name/ca/cargo-xwin/package.nix @@ -0,0 +1,31 @@ +{ lib +, stdenv +, rustPlatform +, fetchFromGitHub +, darwin +}: + +rustPlatform.buildRustPackage rec { + pname = "cargo-xwin"; + version = "0.14.8"; + + src = fetchFromGitHub { + owner = "rust-cross"; + repo = "cargo-xwin"; + rev = "v${version}"; + hash = "sha256-VhpqmGhGBqB20ZteIwbd0GCIUltBGfBw7XF9lH7witA="; + }; + + cargoHash = "sha256-e5QyaiQKlIzBwJE781BrhdVINacw0iniPywIsoMlCGg="; + + buildInputs = lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Security + ]; + + meta = with lib; { + description = "Cross compile Cargo project to Windows MSVC target with ease"; + homepage = "https://github.com/rust-cross/cargo-xwin"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ shivaraj-bh ]; + }; +} diff --git a/pkgs/by-name/ci/cidr-merger/package.nix b/pkgs/by-name/ci/cidr-merger/package.nix new file mode 100644 index 000000000000..3d0612071609 --- /dev/null +++ b/pkgs/by-name/ci/cidr-merger/package.nix @@ -0,0 +1,25 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: + +buildGoModule rec { + pname = "cidr-merger"; + version = "1.1.3"; + + src = fetchFromGitHub { + owner = "zhanhb"; + repo = "cidr-merger"; + rev = "v${version}"; + sha256 = "sha256-Kb+89VP7JhBrTE4MM3H/dqoIBgDLnVhKqkgHdymYCgk="; + }; + + vendorHash = "sha256-cPri384AX/FdfNtzt3xj4bF+/izSa4sZuAohK0R/7H4="; + + meta = with lib; { + description = "A simple command line tool to merge ip/ip cidr/ip range, supports IPv4/IPv6"; + homepage = "https://github.com/zhanhb/cidr-merger"; + license = licenses.mit; + maintainers = with maintainers; [ cyounkins ]; + }; +} diff --git a/pkgs/by-name/ci/ciscoPacketTracer7/package.nix b/pkgs/by-name/ci/ciscoPacketTracer7/package.nix new file mode 100644 index 000000000000..620e7420439b --- /dev/null +++ b/pkgs/by-name/ci/ciscoPacketTracer7/package.nix @@ -0,0 +1,90 @@ +{ stdenv +, lib +, buildFHSEnv +, copyDesktopItems +, dpkg +, lndir +, makeDesktopItem +, makeWrapper +, requireFile +}: + +let + version = "7.3.1"; + + ptFiles = stdenv.mkDerivation { + name = "PacketTracer7drv"; + inherit version; + + dontUnpack = true; + src = requireFile { + name = "PacketTracer_${builtins.replaceStrings ["."] [""] version}_amd64.deb"; + sha256 = "c39802d15dd61d00ba27fb8c116da45fd8562ab4b49996555ad66b88deace27f"; + url = "https://www.netacad.com"; + }; + + nativeBuildInputs = [ dpkg makeWrapper ]; + + installPhase = '' + dpkg-deb -x $src $out + makeWrapper "$out/opt/pt/bin/PacketTracer7" "$out/bin/packettracer7" \ + --prefix LD_LIBRARY_PATH : "$out/opt/pt/bin" + ''; + }; + + desktopItem = makeDesktopItem { + name = "cisco-pt7.desktop"; + desktopName = "Cisco Packet Tracer 7"; + icon = "${ptFiles}/opt/pt/art/app.png"; + exec = "packettracer7 %f"; + mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ]; + }; + + fhs = buildFHSEnv { + name = "packettracer7"; + runScript = "${ptFiles}/bin/packettracer7"; + + targetPkgs = pkgs: with pkgs; [ + alsa-lib + dbus + expat + fontconfig + glib + libglvnd + libpulseaudio + libudev0-shim + libxkbcommon + libxml2 + libxslt + nspr + nss + xorg.libICE + xorg.libSM + xorg.libX11 + xorg.libXScrnSaver + ]; + }; +in stdenv.mkDerivation { + pname = "ciscoPacketTracer7"; + inherit version; + + dontUnpack = true; + + installPhase = '' + mkdir $out + ${lndir}/bin/lndir -silent ${fhs} $out + ''; + + desktopItems = [ desktopItem ]; + + nativeBuildInputs = [ copyDesktopItems ]; + + meta = with lib; { + description = "Network simulation tool from Cisco"; + homepage = "https://www.netacad.com/courses/packet-tracer"; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + license = licenses.unfree; + maintainers = with maintainers; [ lucasew ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/by-name/ci/ciscoPacketTracer8/package.nix b/pkgs/by-name/ci/ciscoPacketTracer8/package.nix new file mode 100644 index 000000000000..5784c156e956 --- /dev/null +++ b/pkgs/by-name/ci/ciscoPacketTracer8/package.nix @@ -0,0 +1,118 @@ +{ stdenvNoCC +, lib +, alsa-lib +, autoPatchelfHook +, buildFHSEnv +, ciscoPacketTracer8 +, copyDesktopItems +, dbus +, dpkg +, expat +, fontconfig +, glib +, libdrm +, libglvnd +, libpulseaudio +, libudev0-shim +, libxkbcommon +, libxml2 +, libxslt +, lndir +, makeDesktopItem +, makeWrapper +, nspr +, nss +, qt5 +, requireFile +, xorg +}: + +let + hashes = { + "8.2.0" = "1b19885d59f6130ee55414fb02e211a1773460689db38bfd1ac7f0d45117ed16"; + "8.2.1" = "1fh79r4fnh9gjxjh39gcp4j7npgs5hh3qhrhx74x8x546an3i0s2"; + }; +in + +stdenvNoCC.mkDerivation rec { + pname = "ciscoPacketTracer8"; + + version = "8.2.1"; + + src = requireFile { + name = "CiscoPacketTracer_${builtins.replaceStrings ["."] [""] version}_Ubuntu_64bit.deb"; + sha256 = hashes.${version}; + url = "https://www.netacad.com"; + }; + + unpackPhase = '' + runHook preUnpack + + dpkg-deb -x $src $out + chmod 755 "$out" + + runHook postUnpack + ''; + + nativeBuildInputs = [ + autoPatchelfHook + copyDesktopItems + dpkg + makeWrapper + qt5.wrapQtAppsHook + ]; + + buildInputs = [ + alsa-lib + dbus + expat + fontconfig + glib + qt5.qtbase + qt5.qtmultimedia + qt5.qtnetworkauth + qt5.qtscript + qt5.qtspeech + qt5.qtwebengine + qt5.qtwebsockets + ]; + + installPhase = '' + runHook preInstall + + makeWrapper "$out/opt/pt/bin/PacketTracer" "$out/bin/packettracer8" \ + "''${qtWrapperArgs[@]}" \ + --prefix LD_LIBRARY_PATH : "$out/opt/pt/bin" + + install -D $out/opt/pt/art/app.png $out/share/icons/hicolor/128x128/apps/ciscoPacketTracer8.png + + rm $out/opt/pt/bin/libQt5* -f + + runHook postInstall + ''; + + desktopItems = [ + (makeDesktopItem { + name = "cisco-pt8.desktop"; + desktopName = "Cisco Packet Tracer 8"; + icon = "ciscoPacketTracer8"; + exec = "packettracer8 %f"; + mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ]; + }) + ]; + + dontWrapQtApps = true; + + passthru = { + inherit hashes; + }; + + meta = with lib; { + description = "Network simulation tool from Cisco"; + homepage = "https://www.netacad.com/courses/packet-tracer"; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + license = licenses.unfree; + maintainers = with maintainers; [ lucasew ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix new file mode 100644 index 000000000000..48bcff3f32a9 --- /dev/null +++ b/pkgs/by-name/co/cockpit/package.nix @@ -0,0 +1,227 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, bashInteractive +, cacert +, coreutils +, dbus +, docbook_xml_dtd_43 +, docbook_xsl +, findutils +, gettext +, git +, glib +, glib-networking +, gnused +, gnutls +, json-glib +, krb5 +, libssh +, libxcrypt +, libxslt +, makeWrapper +, nodejs +, nixosTests +, nix-update-script +, openssh +, openssl +, pam +, pkg-config +, polkit +, python3Packages +, ripgrep +, runtimeShell +, systemd +, udev +, xmlto +}: + +let + pythonWithGobject = python3Packages.python.withPackages (p: with p; [ + pygobject3 + ]); +in + +stdenv.mkDerivation rec { + pname = "cockpit"; + version = "303"; + + src = fetchFromGitHub { + owner = "cockpit-project"; + repo = "cockpit"; + rev = "refs/tags/${version}"; + hash = "sha256-1VPnmb4VDSwzdXtk2YZVHH4qFJSe2OPzsmzVD/NkbYg="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + autoreconfHook + makeWrapper + docbook_xml_dtd_43 + docbook_xsl + findutils + gettext + git + (lib.getBin libxslt) + nodejs + openssl + pam + pkg-config + pythonWithGobject.python + python3Packages.setuptools + systemd + ripgrep + xmlto + ]; + + buildInputs = [ + (lib.getDev glib) + libxcrypt + gnutls + json-glib + krb5 + libssh + polkit + udev + ]; + + postPatch = '' + # Instead of requiring Internet access to do an npm install to generate the package-lock.json + # it copies the package-lock.json already present in the node_modules folder fetched as a git + # submodule. + echo "#!/bin/sh" > test/node_modules + + substituteInPlace src/tls/cockpit-certificate-helper.in \ + --replace 'COCKPIT_CONFIG="@sysconfdir@/cockpit"' 'COCKPIT_CONFIG=/etc/cockpit' + + substituteInPlace src/tls/cockpit-certificate-ensure.c \ + --replace '#define COCKPIT_SELFSIGNED_PATH PACKAGE_SYSCONF_DIR COCKPIT_SELFSIGNED_FILENAME' '#define COCKPIT_SELFSIGNED_PATH "/etc" COCKPIT_SELFSIGNED_FILENAME' + + substituteInPlace src/common/cockpitconf.c \ + --replace 'const char *cockpit_config_dirs[] = { PACKAGE_SYSCONF_DIR' 'const char *cockpit_config_dirs[] = { "/etc"' + + # instruct users with problems to create a nixpkgs issue instead of nagging upstream directly + substituteInPlace configure.ac \ + --replace 'devel@lists.cockpit-project.org' 'https://github.com/NixOS/nixpkgs/issues/new?assignees=&labels=0.kind%3A+bug&template=bug_report.md&title=cockpit%25' + + patchShebangs \ + build.js \ + test/common/pixel-tests \ + test/common/run-tests \ + test/common/tap-cdp \ + test/static-code \ + tools/escape-to-c \ + tools/make-compile-commands \ + tools/node-modules \ + tools/termschutz \ + tools/webpack-make.js + + for f in node_modules/.bin/*; do + patchShebangs $(realpath $f) + done + + export HOME=$(mktemp -d) + + cp node_modules/.package-lock.json package-lock.json + + for f in pkg/**/*.js pkg/**/*.jsx test/**/* src/**/*; do + # some files substituteInPlace report as missing and it's safe to ignore them + substituteInPlace "$(realpath "$f")" \ + --replace '"/usr/bin/' '"' \ + --replace '"/bin/' '"' || true + done + + substituteInPlace src/common/Makefile-common.am \ + --replace 'TEST_PROGRAM += test-pipe' "" # skip test-pipe because it hangs the build + + substituteInPlace test/pytest/*.py \ + --replace "'bash" "'${bashInteractive}/bin/bash" + + echo "m4_define(VERSION_NUMBER, [${version}])" > version.m4 + ''; + + configureFlags = [ + "--enable-prefix-only=yes" + "--disable-pcp" # TODO: figure out how to package its dependency + "--with-default-session-path=/run/wrappers/bin:/run/current-system/sw/bin" + "--with-admin-group=root" # TODO: really? Maybe "wheel"? + "--enable-old-bridge=yes" + ]; + + enableParallelBuilding = true; + + preBuild = '' + patchShebangs \ + tools/test-driver + ''; + + postBuild = '' + chmod +x \ + src/systemd/update-motd \ + src/tls/cockpit-certificate-helper \ + src/ws/cockpit-desktop + + patchShebangs \ + src/systemd/update-motd \ + src/tls/cockpit-certificate-helper \ + src/ws/cockpit-desktop + + PATH=${pythonWithGobject}/bin patchShebangs src/client/cockpit-client + + substituteInPlace src/ws/cockpit-desktop \ + --replace ' /bin/bash' ' ${runtimeShell}' + ''; + + fixupPhase = '' + runHook preFixup + + wrapProgram $out/libexec/cockpit-certificate-helper \ + --prefix PATH : ${lib.makeBinPath [ coreutils openssl ]} \ + --run 'cd $(mktemp -d)' + + wrapProgram $out/share/cockpit/motd/update-motd \ + --prefix PATH : ${lib.makeBinPath [ gnused ]} + + substituteInPlace $out/share/polkit-1/actions/org.cockpit-project.cockpit-bridge.policy \ + --replace /usr $out + + runHook postFixup + ''; + + doCheck = true; + checkInputs = [ + bashInteractive + cacert + dbus + glib-networking + openssh + python3Packages.pytest + python3Packages.vulture + ]; + checkPhase = '' + export GIO_EXTRA_MODULES=$GIO_EXTRA_MODULES:${glib-networking}/lib/gio/modules + export G_DEBUG=fatal-criticals + export G_MESSAGES_DEBUG=cockpit-ws,cockpit-wrapper,cockpit-bridge + export PATH=$PATH:$(pwd) + + cockpit-bridge --version + make pytest -j$NIX_BUILD_CORES || true + make check -j$NIX_BUILD_CORES || true + test/static-code + npm run eslint + npm run stylelint || true + ''; + + passthru = { + tests = { inherit (nixosTests) cockpit; }; + updateScript = nix-update-script {}; + }; + + meta = with lib; { + description = "Web-based graphical interface for servers"; + homepage = "https://cockpit-project.org/"; + license = licenses.lgpl21; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/by-name/cr/create-react-app/package.nix b/pkgs/by-name/cr/create-react-app/package.nix index 16ee303ab3d6..7ce48825da75 100644 --- a/pkgs/by-name/cr/create-react-app/package.nix +++ b/pkgs/by-name/cr/create-react-app/package.nix @@ -28,6 +28,6 @@ buildNpmPackage rec { homepage = "https://github.com/facebook/create-react-app"; license = lib.licenses.mit; mainProgram = "create-react-app"; - maintainers = with lib.maintainers; [ ma27 ]; + maintainers = with lib.maintainers; [ ]; }; } diff --git a/pkgs/by-name/cy/cyme/package.nix b/pkgs/by-name/cy/cyme/package.nix new file mode 100644 index 000000000000..3e32c22d2e41 --- /dev/null +++ b/pkgs/by-name/cy/cyme/package.nix @@ -0,0 +1,53 @@ +{ + lib +, fetchFromGitHub +, rustPlatform +, pkg-config +, stdenv +, darwin +, libusb1 +, udev +, nix-update-script +}: + +rustPlatform.buildRustPackage rec { + pname = "cyme"; + version = "1.5.0"; + + src = fetchFromGitHub { + owner = "tuna-f1sh"; + repo = "cyme"; + rev = "v${version}"; + hash = "sha256-UXh97pHJ9wa/xSslHLB7WVDwLKJYvLPgmPX8RvKrsTI="; + }; + + cargoHash = "sha256-hSd53K50Y4K/fYGfsT2fHUaipVSpeYN6/EOFlv4ocuE="; + + nativeBuildInputs = [ + pkg-config + ] ++ lib.optionals stdenv.isDarwin [ + darwin.DarwinTools + ]; + + buildInputs = [ + libusb1 + ] ++ lib.optionals stdenv.isLinux [ + udev + ]; + + checkFlags = lib.optionals stdenv.isDarwin [ + # system_profiler is not available in the sandbox + "--skip=test_run" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = with lib; { + homepage = "https://github.com/tuna-f1sh/cyme"; + description = "A modern cross-platform lsusb"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ h7x4 ]; + platforms = platforms.linux ++ platforms.darwin ++ platforms.windows; + mainProgram = "cyme"; + }; +} diff --git a/pkgs/by-name/db/dbus-cpp/package.nix b/pkgs/by-name/db/dbus-cpp/package.nix new file mode 100644 index 000000000000..2e834111c9d9 --- /dev/null +++ b/pkgs/by-name/db/dbus-cpp/package.nix @@ -0,0 +1,127 @@ +{ stdenv +, lib +, fetchFromGitLab +, fetchpatch +, gitUpdater +, testers +, boost +, cmake +, dbus +, doxygen +, graphviz +, gtest +, libxml2 +, lomiri +, pkg-config +, process-cpp +, properties-cpp +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "dbus-cpp"; + version = "5.0.3"; + + src = fetchFromGitLab { + owner = "ubports"; + repo = "development/core/lib-cpp/dbus-cpp"; + rev = finalAttrs.version; + hash = "sha256-t8SzPRUuKeEchT8vAsITf8MwbgHA+mR5C9CnkdVyX7s="; + }; + + outputs = [ + "out" + "dev" + "doc" + "examples" + ]; + + patches = [ + # Handle already-stolen dbus call better + # Remove when version > 5.0.3 + (fetchpatch { + name = "0001-dbus-cpp-src-Dont-steal-a-pending-dbus-call-more-then-once.patch"; + url = "https://gitlab.com/ubports/development/core/lib-cpp/dbus-cpp/-/commit/9f3d1ff2b1c6c732285949c3dbb35e40cf55ea92.patch"; + hash = "sha256-xzOCIJVsK2J+X9RsV930R9uw6h4UxqwSaNOgv8v4qQU="; + }) + + # Fix GCC13 compilation + # Remove when version > 5.0.3 + (fetchpatch { + name = "0002-dbus-cpp-Add-missing-headers-for-GCC13.patch"; + url = "https://gitlab.com/ubports/development/core/lib-cpp/dbus-cpp/-/commit/c761b1eec084962dbe64d35d7f7b86dcbe57a3f7.patch"; + hash = "sha256-/tKe3iHWxP9jWtpdgwwRynj8565u9LxCt4WXJDXzgX4="; + }) + ]; + + postPatch = '' + substituteInPlace doc/CMakeLists.txt \ + --replace 'DESTINATION share/''${CMAKE_PROJECT_NAME}/doc' 'DESTINATION ''${CMAKE_INSTALL_DOCDIR}' + + # Warning on aarch64-linux breaks build due to -Werror + substituteInPlace CMakeLists.txt \ + --replace '-Werror' "" + + # pkg-config output patching hook expects prefix variable here + substituteInPlace data/dbus-cpp.pc.in \ + --replace 'includedir=''${exec_prefix}' 'includedir=''${prefix}' + '' + lib.optionalString (!finalAttrs.doCheck) '' + sed -i -e '/add_subdirectory(tests)/d' CMakeLists.txt + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + doxygen + graphviz + pkg-config + ]; + + buildInputs = [ + boost + lomiri.cmake-extras + dbus + libxml2 + process-cpp + properties-cpp + ]; + + nativeCheckInputs = [ + dbus + ]; + + checkInputs = [ + gtest + ]; + + cmakeFlags = [ + "-DDBUS_CPP_ENABLE_DOC_GENERATION=ON" + ]; + + # Too flaky on ARM CI & for some amd64 users + doCheck = false; + + # DBus, parallelism messes with communication + enableParallelChecking = false; + + preFixup = '' + moveToOutput libexec/examples $examples + ''; + + passthru = { + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + updateScript = gitUpdater { }; + }; + + meta = with lib; { + description = "A dbus-binding leveraging C++-11"; + homepage = "https://gitlab.com/ubports/development/core/lib-cpp/dbus-cpp"; + license = licenses.lgpl3Only; + maintainers = with maintainers; [ OPNA2608 ]; + mainProgram = "dbus-cppc"; + platforms = platforms.linux; + pkgConfigModules = [ + "dbus-cpp" + ]; + }; +}) diff --git a/pkgs/by-name/de/decker/package.nix b/pkgs/by-name/de/decker/package.nix new file mode 100644 index 000000000000..84c08eaaa38d --- /dev/null +++ b/pkgs/by-name/de/decker/package.nix @@ -0,0 +1,79 @@ +{ lib +, stdenv +, fetchFromGitHub +, SDL2 +, SDL2_image +, unixtools +, multimarkdown +}: + +stdenv.mkDerivation rec { + pname = "decker"; + version = "1.31"; + + src = fetchFromGitHub { + owner = "JohnEarnest"; + repo = "Decker"; + rev = "v${version}"; + hash = "sha256-9utCIf7LO/ms46QqagkcXZ3BuvRuLa6nE78MgkbaEjA="; + }; + + buildInputs = [ + SDL2 + SDL2_image + multimarkdown + unixtools.xxd + ]; + + doCheck = true; + + postPatch = '' + patchShebangs ./scripts + ''; + + buildPhase = '' + runHook preBuild + make lilt + make decker + make docs + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + install -Dm0755 ./c/build/lilt -t $out/bin + install -Dm0755 ./c/build/decker -t $out/bin + install -Dm0644 ./syntax/vim/ftdetect/lil.vim -t $out/share/vim-plugins/decker/ftdetect + install -Dm0644 ./syntax/vim/syntax/lil.vim -t $out/share/vim-plugins/decker/syntax + + # Fixing the permissions of the installed files on the documentation. + chmod a-x ./docs/images/* \ + ./docs/*.md \ + ./examples/decks/*.deck \ + ./examples/lilt/*.lil + + # This example has a shebang so we'll leave it as an executable. + chmod a+x ./examples/lilt/podcasts.lil + + mkdir -p $out/share/doc/decker + cp -r ./docs/*.html ./docs/images ./examples $out/share/doc/decker + + runHook postInstall + ''; + + checkPhase = '' + runHook preCheck + make test + runHook postCheck + ''; + + meta = with lib; { + homepage = "https://beyondloom.com/decker"; + description = "Multimedia platform for creating and sharing interactive documents"; + license = licenses.mit; + mainProgram = "decker"; + platforms = platforms.all; + maintainers = with maintainers; [ foo-dogsquared ]; + }; +} diff --git a/pkgs/by-name/di/diesel-cli-ext/package.nix b/pkgs/by-name/di/diesel-cli-ext/package.nix new file mode 100644 index 000000000000..7b118b3ce7e0 --- /dev/null +++ b/pkgs/by-name/di/diesel-cli-ext/package.nix @@ -0,0 +1,25 @@ +{ lib +, rustPlatform +, fetchCrate +}: + +rustPlatform.buildRustPackage rec { + pname = "diesel-cli-ext"; + version = "0.3.13"; + + src = fetchCrate { + pname = "diesel_cli_ext"; + inherit version; + hash = "sha256-5AIzMxEcxL/vYWx3D/meA///Zo+1210HUMEE4dFBhkc="; + }; + + cargoHash = "sha256-Ya7RL3TuQjKkEkggK/ANChtVZRuTaooM+lE3KBZnvYU="; + + meta = with lib; { + description = "Provides different tools for projects using the diesel_cli"; + homepage = "https://crates.io/crates/diesel_cli_ext"; + license = with licenses; [ asl20 mit ]; + mainProgram = "diesel_ext"; + maintainers = with maintainers; [ siph ]; + }; +} diff --git a/pkgs/by-name/do/doggo/package.nix b/pkgs/by-name/do/doggo/package.nix new file mode 100644 index 000000000000..cdd19bc37b90 --- /dev/null +++ b/pkgs/by-name/do/doggo/package.nix @@ -0,0 +1,43 @@ +{ buildGoModule +, fetchFromGitHub +, installShellFiles +, lib +}: + +buildGoModule rec { + pname = "doggo"; + version = "0.5.7"; + + src = fetchFromGitHub { + owner = "mr-karan"; + repo = pname; + rev = "v${version}"; + hash = "sha256-hzl7BE3vsE2G9O2nwN/gkqQTJ+9aDfNIjmpmgN1AYq8="; + }; + + vendorHash = "sha256-uonybBLABPj9CPtc+y82ajvQI7kubK+lKi4eLcZIUqA="; + nativeBuildInputs = [ installShellFiles ]; + subPackages = [ "cmd/doggo" ]; + + ldflags = [ + "-w -s" + "-X main.buildVersion=v${version}" + ]; + + postInstall = '' + installShellCompletion --cmd doggo \ + --fish --name doggo.fish completions/doggo.fish \ + --zsh --name _doggo completions/doggo.zsh + ''; + + meta = with lib; { + homepage = "https://github.com/mr-karan/doggo"; + description = "Command-line DNS Client for Humans. Written in Golang"; + longDescription = '' + doggo is a modern command-line DNS client (like dig) written in Golang. + It outputs information in a neat concise manner and supports protocols like DoH, DoT, DoQ, and DNSCrypt as well + ''; + license = licenses.gpl3Only; + maintainers = with maintainers; [ georgesalkhouri ]; + }; +} diff --git a/pkgs/by-name/ek/eksctl/package.nix b/pkgs/by-name/ek/eksctl/package.nix index 91f98463a85c..a670490ef0ad 100644 --- a/pkgs/by-name/ek/eksctl/package.nix +++ b/pkgs/by-name/ek/eksctl/package.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "eksctl"; - version = "0.161.0"; + version = "0.163.0"; src = fetchFromGitHub { owner = "weaveworks"; repo = pname; rev = version; - hash = "sha256-hlHwzZ0U3G6IGJjeHZPlO2+thJ1UKxHhRb28EQ39pZk="; + hash = "sha256-rpyLjoHMSgEHTILeEQpUKD7BOJHn/uT3GK6Fquirzdk="; }; - vendorHash = "sha256-9rT2zkgwxDQlxTWF1zHpYOOI7uK5Q/GYFWIrKgP2GaQ="; + vendorHash = "sha256-NOhssVWEkvoXpmnsCVVT7Li0ePGWDSGIlB2MyFtMnpI="; doCheck = false; diff --git a/pkgs/by-name/ez/eza/package.nix b/pkgs/by-name/ez/eza/package.nix index e7181d59afaf..5b7817330cb7 100644 --- a/pkgs/by-name/ez/eza/package.nix +++ b/pkgs/by-name/ez/eza/package.nix @@ -17,16 +17,16 @@ rustPlatform.buildRustPackage rec { pname = "eza"; - version = "0.14.2"; + version = "0.15.1"; src = fetchFromGitHub { owner = "eza-community"; repo = "eza"; rev = "v${version}"; - hash = "sha256-eST70KMdGgbTo4FNL3K5YGn9lwIGroG4y4ExKDb30hU="; + hash = "sha256-GovkmMjxHWP9nl0z1LwQrIgT6TkMaYY1wEwAABAYNK0="; }; - cargoHash = "sha256-h5ooNR0IeXWyY6PuZM/bQLkX4F0eZsEY2eoIgo0nRFA="; + cargoHash = "sha256-7mhGAXfrHfOKdcnCPtYNbNGRVCfVHni80zEAUATPRLk="; nativeBuildInputs = [ cmake pkg-config installShellFiles pandoc ]; buildInputs = [ zlib ] diff --git a/pkgs/by-name/fa/fantomas/package.nix b/pkgs/by-name/fa/fantomas/package.nix new file mode 100644 index 000000000000..c698e6edef6c --- /dev/null +++ b/pkgs/by-name/fa/fantomas/package.nix @@ -0,0 +1,17 @@ +{ buildDotnetGlobalTool, lib }: + +buildDotnetGlobalTool { + pname = "fantomas"; + version = "6.2.2"; + + nugetSha256 = "sha256-r5F44iwAV3QSeh3TyGTVhrN2oL4A68eD5dKiz/VnwdI="; + + meta = with lib; { + description = "F# source code formatter"; + homepage = "https://github.com/fsprojects/fantomas"; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ mikaelfangel ]; + mainProgram = "fantomas"; + }; +} diff --git a/pkgs/by-name/fi/firewalk/package.nix b/pkgs/by-name/fi/firewalk/package.nix new file mode 100644 index 000000000000..8909a61062c7 --- /dev/null +++ b/pkgs/by-name/fi/firewalk/package.nix @@ -0,0 +1,27 @@ +{ lib +, stdenv +, fetchurl +, libnet +, libpcap +, libdnet +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "firewalk"; + version = "5.0"; + + src = fetchurl { + url = "https://salsa.debian.org/pkg-security-team/firewalk/-/archive/upstream/${finalAttrs.version}/firewalk-upstream-${finalAttrs.version}.tar.gz"; + hash = "sha256-f0sHzcH3faeg7epfpWXbgaHrRWaWBKMEqLdy38+svGo="; + }; + + buildInputs = [ libnet libpcap libdnet ]; + + meta = with lib; { + description = "Gateway ACL scanner"; + homepage = "http://packetfactory.openwall.net/projects/firewalk/"; + license = licenses.bsd2; + maintainers = with maintainers; [ tochiaha ]; + platforms = platforms.linux; + }; +}) diff --git a/pkgs/by-name/fl/flip/package.nix b/pkgs/by-name/fl/flip/package.nix new file mode 100644 index 000000000000..f7957c0990b0 --- /dev/null +++ b/pkgs/by-name/fl/flip/package.nix @@ -0,0 +1,32 @@ +{ + stdenv, + lib, + fetchFromGitHub, + cmake +}: + +stdenv.mkDerivation { + pname = "flip"; + version = "1.2"; + + src = fetchFromGitHub { + owner = "NVlabs"; + repo = "flip"; + rev = "8303adb2060d69423d040453995f4ad1a030a1cc"; + hash = "sha256-jSB79qOtnW/cjApIDcLRqGabnzCIwS7saA+aF1TcyV0="; + }; + + nativeBuildInputs = [ + cmake + ]; + + enableParallelBuilding = true; + + meta = with lib; { + description = "A tool for visualizing and communicating the errors in rendered images."; + license = licenses.bsd3; + platforms = platforms.unix; + maintainers = with maintainers; [ zmitchell ]; + mainProgram = "flip"; + }; +} diff --git a/pkgs/by-name/fo/fortune-kind/package.nix b/pkgs/by-name/fo/fortune-kind/package.nix index 54d1ecc33fae..a5aee58a2861 100644 --- a/pkgs/by-name/fo/fortune-kind/package.nix +++ b/pkgs/by-name/fo/fortune-kind/package.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "fortune-kind"; - version = "0.1.4"; + version = "0.1.6"; src = fetchFromGitHub { owner = "cafkafk"; repo = "fortune-kind"; rev = "v${version}"; - hash = "sha256-xIibKXca3RXQpRJyQ62GL7l24ovX4KXhdk2zK1gB98M="; + hash = "sha256-GWsDauFPyiZA6gY7yuEkAeIZrmrvZyJQnP6+ZkdaQSw="; }; - cargoHash = "sha256-7JBT3EhwrcNITR5ocQkLoQw4/R7xAoplZ9I1cTs9DW8="; + cargoHash = "sha256-1swDHofUuVQx5J7jwmEyRC9REgv4Jg0r0BHBKmkt5Wc="; nativeBuildInputs = [ makeBinaryWrapper installShellFiles ]; buildInputs = lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.Security ]; diff --git a/pkgs/by-name/ge/geopard/Cargo.lock b/pkgs/by-name/ge/geopard/Cargo.lock new file mode 100644 index 000000000000..42ebac5c5af2 --- /dev/null +++ b/pkgs/by-name/ge/geopard/Cargo.lock @@ -0,0 +1,1590 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "0.7.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +dependencies = [ + "memchr", +] + +[[package]] +name = "anyhow" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" + +[[package]] +name = "async-channel" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" +dependencies = [ + "concurrent-queue", + "event-listener", + "futures-core", +] + +[[package]] +name = "async-fs" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" +dependencies = [ + "async-lock", + "autocfg", + "blocking", + "futures-lite", +] + +[[package]] +name = "async-io" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794" +dependencies = [ + "async-lock", + "autocfg", + "concurrent-queue", + "futures-lite", + "libc", + "log", + "parking", + "polling", + "slab", + "socket2", + "waker-fn", + "windows-sys 0.42.0", +] + +[[package]] +name = "async-lock" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa24f727524730b077666307f2734b4a1a1c57acb79193127dcc8914d5242dd7" +dependencies = [ + "event-listener", +] + +[[package]] +name = "async-native-tls" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e9e7a929bd34c68a82d58a4de7f86fffdaf97fb2af850162a7bb19dd7269b33" +dependencies = [ + "async-std", + "native-tls", + "thiserror", + "url", +] + +[[package]] +name = "async-net" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4051e67316bc7eff608fe723df5d32ed639946adcd69e07df41fd42a7b411f1f" +dependencies = [ + "async-io", + "autocfg", + "blocking", + "futures-lite", +] + +[[package]] +name = "async-std" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d" +dependencies = [ + "async-channel", + "async-lock", + "crossbeam-utils", + "futures-channel", + "futures-core", + "futures-io", + "memchr", + "once_cell", + "pin-project-lite", + "pin-utils", + "slab", + "wasm-bindgen-futures", +] + +[[package]] +name = "async-task" +version = "4.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524" + +[[package]] +name = "async-trait" +version = "0.1.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "095183a3539c7c7649b2beb87c2d3f0591f3a7fed07761cc546d244e27e0238c" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "atomic-waker" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "debc29dde2e69f9e47506b525f639ed42300fc014a3e007832592448fa8e4599" + +[[package]] +name = "atty" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +dependencies = [ + "hermit-abi", + "libc", + "winapi", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "blocking" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c67b173a56acffd6d2326fb7ab938ba0b00a71480e14902b2591c87bc5741e8" +dependencies = [ + "async-channel", + "async-lock", + "async-task", + "atomic-waker", + "fastrand", + "futures-lite", +] + +[[package]] +name = "bumpalo" +version = "3.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" + +[[package]] +name = "cairo-rs" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8af54f5d48af1226928adc1f57edd22f5df1349e7da1fc96ae15cf43db0e871" +dependencies = [ + "bitflags", + "cairo-sys-rs", + "glib", + "libc", + "once_cell", + "thiserror", +] + +[[package]] +name = "cairo-sys-rs" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55382a01d30e5e53f185eee269124f5e21ab526595b872751278dfbb463594e" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "cc" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" + +[[package]] +name = "cfg-expr" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa" +dependencies = [ + "smallvec", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "concurrent-queue" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" + +[[package]] +name = "crossbeam-utils" +version = "0.8.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "env_logger" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3" +dependencies = [ + "atty", + "humantime", + "log", + "regex", + "termcolor", +] + +[[package]] +name = "errno" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" +dependencies = [ + "errno-dragonfly", + "libc", + "winapi", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "field-offset" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3cf3a800ff6e860c863ca6d4b16fd999db8b752819c1606884047b73e468535" +dependencies = [ + "memoffset", + "rustc_version", +] + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13e2792b0ff0340399d58445b88fd9770e3489eff258a4cbc1523418f12abf84" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608" + +[[package]] +name = "futures-executor" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531" + +[[package]] +name = "futures-lite" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" +dependencies = [ + "fastrand", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", + "waker-fn", +] + +[[package]] +name = "futures-macro" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "futures-sink" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364" + +[[package]] +name = "futures-task" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366" + +[[package]] +name = "futures-util" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "gdk-pixbuf" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b023fbe0c6b407bd3d9805d107d9800da3829dc5a676653210f1d5f16d7f59bf" +dependencies = [ + "bitflags", + "gdk-pixbuf-sys", + "gio", + "glib", + "libc", + "once_cell", +] + +[[package]] +name = "gdk-pixbuf-sys" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b41bd2b44ed49d99277d3925652a163038bd5ed943ec9809338ffb2f4391e3b" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gdk4" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5042053ee765aeef08d9d7e3f0f1e36a4d37f1659b3f93ad3d6997515dbb64a" +dependencies = [ + "bitflags", + "cairo-rs", + "gdk-pixbuf", + "gdk4-sys", + "gio", + "glib", + "libc", + "pango", +] + +[[package]] +name = "gdk4-sys" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14f0fb00507af1e9299681dd09965f720e2b5ea95536d49a5681e8994ef10c7a" +dependencies = [ + "cairo-sys-rs", + "gdk-pixbuf-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "pango-sys", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gemini" +version = "0.1.0" +dependencies = [ + "async-native-tls", + "async-net", + "futures", + "log", + "once_cell", + "regex", + "thiserror", + "url", +] + +[[package]] +name = "geopard" +version = "1.4.0" +dependencies = [ + "anyhow", + "async-fs", + "async-native-tls", + "async-net", + "async-trait", + "env_logger", + "futures", + "gemini", + "gtk4", + "libadwaita", + "log", + "once_cell", + "serde", + "thiserror", + "toml", + "url", +] + +[[package]] +name = "gio" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65acfc24267314eee46f49e0a531e08fd6c3025040d1cfb4a7cd8e41c5e06116" +dependencies = [ + "bitflags", + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "gio-sys", + "glib", + "libc", + "once_cell", + "pin-project-lite", + "smallvec", + "thiserror", +] + +[[package]] +name = "gio-sys" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5d3076ecb86c8c3a672c9843d6232b3a344fb81d304d0ba1ac64b23343efa46" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", + "winapi", +] + +[[package]] +name = "glib" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a78b6a0901e258cb03c761ca94c84d519427ede489cae12cd5ba0d7d584e69e9" +dependencies = [ + "bitflags", + "futures-channel", + "futures-core", + "futures-executor", + "futures-task", + "futures-util", + "gio-sys", + "glib-macros", + "glib-sys", + "gobject-sys", + "libc", + "memchr", + "once_cell", + "smallvec", + "thiserror", +] + +[[package]] +name = "glib-macros" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55e93d79ed130f0f0b58bc0aa29fb0e40c9dfd63997fec51f8adf780d1520bc4" +dependencies = [ + "anyhow", + "heck", + "proc-macro-crate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "glib-sys" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72a0985cf568e18cf63b443c9a14f4bdaa947fed7437476000dba84926a20b25" +dependencies = [ + "libc", + "system-deps", +] + +[[package]] +name = "gobject-sys" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a0155d388840c77d61b033b66ef4f9bc7f4133d83df83572d6b4fb234a3be7d" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "graphene-rs" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21cf11565bb0e4dfc2f99d4775b6c329f0d40a2cff9c0066214d31a0e1b46256" +dependencies = [ + "glib", + "graphene-sys", + "libc", +] + +[[package]] +name = "graphene-sys" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf80a4849a8d9565410a8fec6fc3678e9c617f4ac7be182ca55ab75016e07af9" +dependencies = [ + "glib-sys", + "libc", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gsk4" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fa9cd285a72a95124b65c069a9cb1b8fb8e310be71783404c39fccf3bf7774c" +dependencies = [ + "bitflags", + "cairo-rs", + "gdk4", + "glib", + "graphene-rs", + "gsk4-sys", + "libc", + "pango", +] + +[[package]] +name = "gsk4-sys" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a445ae1e50cbf181a1d5c61b920a7e7e8657b96e0ecdbbf8911a86fad462a32" +dependencies = [ + "cairo-sys-rs", + "gdk4-sys", + "glib-sys", + "gobject-sys", + "graphene-sys", + "libc", + "pango-sys", + "system-deps", +] + +[[package]] +name = "gtk4" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e47dca53cb1a8ae3006e869b5711ae7370180db537f6d98e3bcaf23fabfd911f" +dependencies = [ + "bitflags", + "cairo-rs", + "field-offset", + "futures-channel", + "gdk-pixbuf", + "gdk4", + "gio", + "glib", + "graphene-rs", + "gsk4", + "gtk4-macros", + "gtk4-sys", + "libc", + "once_cell", + "pango", +] + +[[package]] +name = "gtk4-macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db4676c4f90d8b010e88cb4558f61f47d76d6f6b8e6f6b89e62640f443907f61" +dependencies = [ + "anyhow", + "proc-macro-crate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "gtk4-sys" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65463dc801460e498d5e7ffa6e9ae2cfbed7d05fabd1ca5a8d024adbc89eeda6" +dependencies = [ + "cairo-sys-rs", + "gdk-pixbuf-sys", + "gdk4-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "graphene-sys", + "gsk4-sys", + "libc", + "pango-sys", + "system-deps", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "hermit-abi" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +dependencies = [ + "libc", +] + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "idna" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "indexmap" +version = "1.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" +dependencies = [ + "autocfg", + "hashbrown", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3" +dependencies = [ + "libc", + "windows-sys 0.45.0", +] + +[[package]] +name = "js-sys" +version = "0.3.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libadwaita" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c4efd2020a4fcedbad2c4a97de97bf6045e5dc49d61d5a5d0cfd753db60700" +dependencies = [ + "bitflags", + "futures-channel", + "gdk-pixbuf", + "gdk4", + "gio", + "glib", + "gtk4", + "libadwaita-sys", + "libc", + "once_cell", + "pango", +] + +[[package]] +name = "libadwaita-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0727b85b4fe2b1bed5ac90df6343de15cbf8118bfb96d7c3cc1512681a4b34ac" +dependencies = [ + "gdk4-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "gtk4-sys", + "libc", + "pango-sys", + "system-deps", +] + +[[package]] +name = "libc" +version = "0.2.139" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" + +[[package]] +name = "linux-raw-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" + +[[package]] +name = "log" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "memchr" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + +[[package]] +name = "memoffset" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +dependencies = [ + "autocfg", +] + +[[package]] +name = "native-tls" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +dependencies = [ + "lazy_static", + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + +[[package]] +name = "once_cell" +version = "1.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" + +[[package]] +name = "openssl" +version = "0.10.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b102428fd03bc5edf97f62620f7298614c45cedf287c271e7ed450bbaf83f2e1" +dependencies = [ + "bitflags", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "openssl-sys" +version = "0.9.80" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23bbbf7854cd45b83958ebe919f0e8e516793727652e27fda10a8384cfc790b7" +dependencies = [ + "autocfg", + "cc", + "libc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "pango" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "243c048be90312220fb3bd578176eed8290568274a93c95040289d39349384bc" +dependencies = [ + "bitflags", + "gio", + "glib", + "libc", + "once_cell", + "pango-sys", +] + +[[package]] +name = "pango-sys" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4293d0f0b5525eb5c24734d30b0ed02cd02aa734f216883f376b54de49625de8" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "parking" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" + +[[package]] +name = "percent-encoding" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" + +[[package]] +name = "pin-project-lite" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" + +[[package]] +name = "polling" +version = "2.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6" +dependencies = [ + "autocfg", + "cfg-if", + "libc", + "log", + "wepoll-ffi", + "windows-sys 0.42.0", +] + +[[package]] +name = "proc-macro-crate" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.6.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver", +] + +[[package]] +name = "rustix" +version = "0.36.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd5c6ff11fecd55b40746d1995a02f2eb375bf8c00d192d521ee09f42bef37bc" +dependencies = [ + "bitflags", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys", + "windows-sys 0.45.0", +] + +[[package]] +name = "schannel" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" +dependencies = [ + "windows-sys 0.42.0", +] + +[[package]] +name = "security-framework" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a332be01508d814fed64bf28f798a146d73792121129962fdf335bb3c49a4254" +dependencies = [ + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" + +[[package]] +name = "serde" +version = "1.0.152" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.152" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "slab" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" +dependencies = [ + "autocfg", +] + +[[package]] +name = "smallvec" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" + +[[package]] +name = "socket2" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "system-deps" +version = "6.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff" +dependencies = [ + "cfg-expr", + "heck", + "pkg-config", + "toml", + "version-compare", +] + +[[package]] +name = "tempfile" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95" +dependencies = [ + "cfg-if", + "fastrand", + "redox_syscall", + "rustix", + "windows-sys 0.42.0", +] + +[[package]] +name = "termcolor" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "thiserror" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "toml" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_datetime" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622" + +[[package]] +name = "toml_edit" +version = "0.19.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a1eb0622d28f4b9c90adc4ea4b2b46b47663fde9ac5fafcb14a1369d5508825" +dependencies = [ + "indexmap", + "toml_datetime", + "winnow", +] + +[[package]] +name = "unicode-bidi" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58" + +[[package]] +name = "unicode-ident" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "775c11906edafc97bc378816b94585fbd9a054eabaf86fdd0ced94af449efab7" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "url" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", +] + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "version-compare" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "waker-fn" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" + +[[package]] +name = "wasm-bindgen" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" + +[[package]] +name = "web-sys" +version = "0.3.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "wepoll-ffi" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb" +dependencies = [ + "cc", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" + +[[package]] +name = "winnow" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c95fb4ff192527911dd18eb138ac30908e7165b8944e528b6af93aa4c842d345" +dependencies = [ + "memchr", +] diff --git a/pkgs/by-name/ge/geopard/package.nix b/pkgs/by-name/ge/geopard/package.nix new file mode 100644 index 000000000000..2ed0b1aacdef --- /dev/null +++ b/pkgs/by-name/ge/geopard/package.nix @@ -0,0 +1,73 @@ +{ stdenv +, cargo +, rustc +, fetchFromGitHub +, glib +, gtk4 +, libadwaita +, rustPlatform +, openssl +, pkg-config +, lib +, wrapGAppsHook4 +, meson +, ninja +, gdk-pixbuf +, cmake +, desktop-file-utils +, gettext +, blueprint-compiler +, appstream-glib +}: + +stdenv.mkDerivation rec { + pname = "geopard"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "ranfdev"; + repo = pname; + rev = version; + hash = "sha256-elHxtFEGkdhEPHxuJtcMYwWnvo6vDaHiOyN51EOzym0="; + }; + + cargoDeps = rustPlatform.importCargoLock { + lockFile = ./Cargo.lock; + }; + + nativeBuildInputs = [ + openssl + gettext + glib # for glib-compile-schemas + meson + ninja + pkg-config + wrapGAppsHook4 + cmake + blueprint-compiler + desktop-file-utils + appstream-glib + blueprint-compiler + cargo + rustc + rustPlatform.cargoSetupHook + ]; + + buildInputs = [ + desktop-file-utils + gdk-pixbuf + glib + gtk4 + libadwaita + openssl + ]; + + meta = with lib; { + homepage = "https://github.com/ranfdev/Geopard"; + description = "Colorful, adaptive gemini browser"; + maintainers = with maintainers; [ jfvillablanca ]; + license = licenses.gpl3Plus; + platforms = platforms.linux; + mainProgram = "geopard"; + }; +} diff --git a/pkgs/by-name/ge/geticons/package.nix b/pkgs/by-name/ge/geticons/package.nix new file mode 100644 index 000000000000..f3afda0f136d --- /dev/null +++ b/pkgs/by-name/ge/geticons/package.nix @@ -0,0 +1,27 @@ +{ lib +, rustPlatform +, fetchFromSourcehut +, gitUpdater +}: + +rustPlatform.buildRustPackage rec { + pname = "geticons"; + version = "1.2.2"; + + src = fetchFromSourcehut { + owner = "~zethra"; + repo = pname; + rev = version; + hash = "sha256-HEnUfOLeRTi2dRRqjDPVwVVHo/GN9wE28x5qv3qOpCY="; + }; + + cargoHash = "sha256-Znwni7uMnG9cpZbztUMY1j73K+XrDLv5zyNEZDoxWg4="; + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + description = "CLI utility to get icons for apps on your system or other generic icons by name"; + homepage = "https://git.sr.ht/~zethra/geticons"; + license = with licenses; [ gpl3Plus ]; + maintainers = with maintainers; [ Madouura ]; + }; +} diff --git a/pkgs/by-name/gi/git-get/package.nix b/pkgs/by-name/gi/git-get/package.nix new file mode 100644 index 000000000000..8cd852c5d757 --- /dev/null +++ b/pkgs/by-name/gi/git-get/package.nix @@ -0,0 +1,52 @@ +{ lib, fetchFromGitHub, git, buildGoModule }: + +let config-module = "git-get/pkg/cfg"; +in +buildGoModule rec { + pname = "git-get"; + version = "0.5.0"; + + src = fetchFromGitHub { + owner = "grdl"; + repo = pname; + rev = "v${version}"; + hash = "sha256-v98Ff7io7j1LLzciHNWJBU3LcdSr+lhwYrvON7QjyCI="; + # populate values that require us to use git. By doing this in postFetch we + # can delete .git afterwards and maintain better reproducibility of the src. + leaveDotGit = true; + postFetch = '' + git -C $out rev-parse HEAD > $out/COMMIT + # in format of 0000-00-00T00:00:00Z + date -u -d "@$(git -C $out log -1 --pretty=%ct)" "+%Y-%m-%dT%H:%M:%SZ" > $out/SOURCE_DATE_EPOCH + find "$out" -name .git -print0 | xargs -0 rm -rf + ''; + }; + + vendorHash = "sha256-C+XOjMDMFneKJNeBh0KWPx8yM7XiiIpTlc2daSfhZhY="; + + doCheck = false; + + # ldflags based on metadata from git and source + preBuild = '' + ldflags+=" -X ${config-module}.commit=$(cat COMMIT)" + ldflags+=" -X ${config-module}.date=$(cat SOURCE_DATE_EPOCH)" + ''; + + ldflags = [ + "-s" + "-w" + "-X ${config-module}.version=v${version}" + ]; + + preInstall = '' + mv "$GOPATH/bin/get" "$GOPATH/bin/git-get" + mv "$GOPATH/bin/list" "$GOPATH/bin/git-list" + ''; + + meta = with lib; { + description = "A better way to clone, organize and manage multiple git repositories"; + homepage = "https://github.com/grdl/git-get"; + license = licenses.mit; + maintainers = with maintainers; [ sumnerevans ]; + }; +} diff --git a/pkgs/by-name/gr/grun/package.nix b/pkgs/by-name/gr/grun/package.nix new file mode 100644 index 000000000000..aef41add611d --- /dev/null +++ b/pkgs/by-name/gr/grun/package.nix @@ -0,0 +1,41 @@ +{ lib +, stdenv +, fetchFromGitHub +, gtk2 +, pkg-config +, autoreconfHook +}: + +stdenv.mkDerivation { + pname = "grun"; + version = "0.9.3"; + + src = fetchFromGitHub { + owner = "lrgc"; + repo = "grun"; + rev = "release_0_9_3"; + hash = "sha256-VbvX0wrgMIPmPnu3aQdtQ6H0X3umi8aJ42QvmmeMrJ0="; + }; + + buildInputs = [ + gtk2 + ]; + + nativeBuildInputs = [ + pkg-config + autoreconfHook + ]; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + ]; + + meta = { + description = "An application launcher written in C and using GTK for the interface"; + homepage = "https://github.com/lrgc/grun"; + platforms = lib.platforms.linux; + license = with lib.licenses; [ gpl2Only ]; + maintainers = with lib.maintainers; [ _3JlOy-PYCCKUi ]; + }; +} + diff --git a/pkgs/by-name/gu/guile-avahi/package.nix b/pkgs/by-name/gu/guile-avahi/package.nix index 3ad6ff9dd2c3..c75d4ee0f079 100644 --- a/pkgs/by-name/gu/guile-avahi/package.nix +++ b/pkgs/by-name/gu/guile-avahi/package.nix @@ -3,6 +3,7 @@ , fetchgit , avahi , gmp +, buildPackages , autoreconfHook , pkg-config , texinfo @@ -20,6 +21,7 @@ stdenv.mkDerivation rec { }; strictDeps = true; + depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ autoreconfHook guile pkg-config texinfo ]; buildInputs = [ guile ]; propagatedBuildInputs = [ avahi gmp ]; diff --git a/pkgs/by-name/gu/guile-disarchive/package.nix b/pkgs/by-name/gu/guile-disarchive/package.nix index a81157db614e..f01047db34c5 100644 --- a/pkgs/by-name/gu/guile-disarchive/package.nix +++ b/pkgs/by-name/gu/guile-disarchive/package.nix @@ -24,6 +24,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook guile + guile-lzma pkg-config ]; diff --git a/pkgs/by-name/he/headphones-toolbox/package.nix b/pkgs/by-name/he/headphones-toolbox/package.nix index ceaa22bb66f7..9f520d7c4875 100644 --- a/pkgs/by-name/he/headphones-toolbox/package.nix +++ b/pkgs/by-name/he/headphones-toolbox/package.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation (finalAttrs: { name = "headphones-toolbox"; - version = "0.0.4"; + version = "0.0.5"; src = fetchurl { - url = "https://github.com/george-norton/headphones-toolbox/releases/download/headphones-toolbox-beta-v5/ploopy-headphones-toolbox_${finalAttrs.version}_amd64.deb"; - hash = "sha256-47F/bTi7ctIbfRnYVbksYUsHmL+3KYWccNg5dKPGR/U="; + url = "https://github.com/ploopyco/headphones-toolbox/releases/download/app-v${finalAttrs.version}/ploopy-headphones-toolbox_${finalAttrs.version}_amd64.deb"; + hash = "sha256-lWjmpybGcL3sbBng8zCTUtwYhlrQ6cCrKkhiu+g9MsE="; }; nativeBuildInputs = [ @@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: { meta = with lib; { description = "A UI for configuring Ploopy Headphones"; - homepage = "https://github.com/george-norton/headphones-toolbox"; + homepage = "https://github.com/ploopyco/headphones-toolbox/"; maintainers = with maintainers; [ knarkzel nyanbinary ]; license = licenses.gpl3Only; sourceProvenance = with sourceTypes; [ binaryNativeCode ]; diff --git a/pkgs/by-name/hi/hifile/package.nix b/pkgs/by-name/hi/hifile/package.nix new file mode 100644 index 000000000000..bf2bda5100dc --- /dev/null +++ b/pkgs/by-name/hi/hifile/package.nix @@ -0,0 +1,41 @@ +{ lib, appimageTools, fetchurl }: + +let + version = "0.9.9.5"; + pname = "hifile"; + + src = fetchurl { + url = "https://www.hifile.app/files/HiFile-${version}.AppImage"; + hash = "sha256-Ks/NLPm5loo9q8pT0LdtfcrC38203beNE74sbEpyuJM="; + }; + + appimageContents = appimageTools.extractType2 { + inherit pname version src; + }; + +in +appimageTools.wrapType2 rec { + inherit pname version src; + + extraInstallCommands = '' + mv $out/bin/${pname}-${version} $out/bin/${pname} + + install -m 444 -D ${appimageContents}/HiFile.desktop $out/share/applications/HiFile.desktop + install -m 444 -D ${appimageContents}/HiFile.png $out/share/icons/hicolor/512x512/apps/HiFile.png + substituteInPlace $out/share/applications/HiFile.desktop \ + --replace 'Exec=HiFile' 'Exec=${pname}' + ''; + + meta = with lib; { + description = "Dual-pane graphical file manager for Windows, macOS and Linux"; + longDescription = '' + HiFile is the next evolution of file managers. Its mission is to increase your productivity whenever you work with files or folders. It aims to be better in every way - more convenient, more versatile, more efficient, more elegant, more customizable, and more fun. + ''; + homepage = "https://www.hifile.app/"; + downloadPage = "https://www.hifile.app/download"; + license = licenses.unfree; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + maintainers = with maintainers; [ ymstnt ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/by-name/ho/homeassistant-satellite/package.nix b/pkgs/by-name/ho/homeassistant-satellite/package.nix new file mode 100644 index 000000000000..26f90237f521 --- /dev/null +++ b/pkgs/by-name/ho/homeassistant-satellite/package.nix @@ -0,0 +1,56 @@ +{ lib +, python3 +, fetchFromGitHub +}: + +python3.pkgs.buildPythonApplication rec { + pname = "homeassistant-satellite"; + version = "2.3.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "synesthesiam"; + repo = "homeassistant-satellite"; + rev = "v${version}"; + hash = "sha256-iosutOpkpt0JJIMyALuQSDLj4jk57ITShVyPYlQgMFg="; + }; + + nativeBuildInputs = with python3.pkgs; [ + setuptools + wheel + ]; + + propagatedBuildInputs = with python3.pkgs; [ + aiohttp + ]; + + passthru.optional-dependencies = { + pulseaudio = with python3.pkgs; [ + pasimple + pulsectl + ]; + silerovad = with python3.pkgs; [ + numpy + onnxruntime + ]; + webrtc = with python3.pkgs; [ + webrtc-noise-gain + ]; + }; + + pythonImportsCheck = [ + "homeassistant_satellite" + ]; + + # no tests + doCheck = false; + + meta = with lib; { + changelog = "https://github.com/synesthesiam/homeassistant-satellite/blob/v${version}/CHANGELOG.md"; + description = "Streaming audio satellite for Home Assistant"; + homepage = "https://github.com/synesthesiam/homeassistant-satellite"; + license = licenses.mit; + maintainers = with maintainers; [ hexa ]; + mainProgram = "homeassistant-satellite"; + }; +} diff --git a/pkgs/by-name/ji/jitterentropy-rngd/package.nix b/pkgs/by-name/ji/jitterentropy-rngd/package.nix new file mode 100644 index 000000000000..feb7d1e2fb12 --- /dev/null +++ b/pkgs/by-name/ji/jitterentropy-rngd/package.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + pname = "jitterentropy-rngd"; + version = "1.2.8"; + + src = fetchFromGitHub { + owner = "smuellerDD"; + repo = pname; + rev = "v${version}"; + hash = "sha256-LDym636ss3B1G/vrqatu9g5vbVEeDX0JQcxZ/IxGeY0="; + }; + + enableParallelBuilding = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out + make install DESTDIR= PREFIX=$out UNITDIR=$out/lib/systemd/system + + runHook postInstall + ''; + + meta = with lib; { + description = ''A random number generator, which injects entropy to the kernel''; + homepage = "https://github.com/smuellerDD/jitterentropy-rngd"; + changelog = "https://github.com/smuellerDD/jitterentropy-rngd/releases/tag/v${version}"; + license = [ licenses.gpl2Only licenses.bsd3 ]; + platforms = platforms.linux; + maintainers = with maintainers; [ thillux ]; + mainProgram = "jitterentropy-rngd"; + }; +} diff --git a/pkgs/by-name/kc/kconfig-frontends/package.nix b/pkgs/by-name/kc/kconfig-frontends/package.nix new file mode 100644 index 000000000000..954ca475a75d --- /dev/null +++ b/pkgs/by-name/kc/kconfig-frontends/package.nix @@ -0,0 +1,66 @@ +{ lib +, stdenv +, fetchurl +, bash +, bison +, flex +, gperf +, ncurses +, pkg-config +, python3 +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "kconfig-frontends"; + version = "4.11.0.1"; + + src = fetchurl { + url = "https://bitbucket.org/nuttx/tools/downloads/kconfig-frontends-${finalAttrs.version}.tar.bz2"; + hash = "sha256-yxg4z+Lwl7oJyt4n1HUncg1bKeK3FcCpbDPQtqELqxM="; + }; + + patches = [ + # This patch is a fixed file, there is no need to normalize it + (fetchurl { + url = "https://bitbucket.org/nuttx/tools/downloads/gperf3.1_kconfig_id_lookup.patch"; + hash = "sha256-cqAWjRnMA/fJ8wnEfUxoPEW0hIJY/mprE6/TQMY6NPI="; + }) + ]; + + outputs = [ "out" "lib" "dev" "doc" ]; + + nativeBuildInputs = [ + bison + flex + gperf + pkg-config + ]; + + buildInputs = [ + bash + ncurses + python3 + ]; + + strictDeps = true; + + configureFlags = [ + "--enable-frontends=conf,mconf,nconf" + ]; + + env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=format-security"; + + meta = { + description = "Out of Linux tree packaging of the kconfig infrastructure"; + longDescription = '' + Configuration language and system for the Linux kernel and other + projects. Features simple syntax and grammar, limited yet adequate option + types, simple organization of options, and direct and reverse + dependencies. + ''; + homepage = "https://bitbucket.org/nuttx/tools/"; + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ AndersonTorres ]; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/by-name/kd/kdsingleapplication/package.nix b/pkgs/by-name/kd/kdsingleapplication/package.nix new file mode 100644 index 000000000000..22522dd6dc97 --- /dev/null +++ b/pkgs/by-name/kd/kdsingleapplication/package.nix @@ -0,0 +1,33 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, qt6 +}: + +stdenv.mkDerivation rec { + pname = "KDSingleApplication"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "KDAB"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-5YprRbfiFI2UGMJqDf+3VDwXV904USEpMEpoNm0g7KY="; + }; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ qt6.qtbase ]; + + cmakeFlags = [ "-DKDSingleApplication_QT6=true" ]; + dontWrapQtApps = true; + + meta = with lib; { + description = "KDAB's helper class for single-instance policy applications"; + homepage = "https://www.kdab.com/"; + maintainers = with maintainers; [ hellwolf ]; + platforms = platforms.unix; + license = licenses.mit; + changelog = "https://github.com/KDAB/KDSingleApplication/releases/tag/v${version}"; + }; +} diff --git a/pkgs/by-name/km/kmsvnc/package.nix b/pkgs/by-name/km/kmsvnc/package.nix new file mode 100644 index 000000000000..000dc8115b2b --- /dev/null +++ b/pkgs/by-name/km/kmsvnc/package.nix @@ -0,0 +1,43 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, pkg-config +, libdrm +, libvncserver +, libxkbcommon +, libva +}: + +stdenv.mkDerivation rec { + pname = "kmsvnc"; + version = "0.0.5"; + + src = fetchFromGitHub { + owner = "isjerryxiao"; + repo = "kmsvnc"; + rev = "v${version}"; + hash = "sha256-Dz1y4t8u9/rnmOiYMWMq6aEq3kV47uiIK7K4DSvjZNc="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + libdrm + libvncserver + libxkbcommon + libva + ]; + + meta = with lib; { + description = "A VNC server for DRM/KMS capable GNU/Linux devices"; + homepage = "https://github.com/isjerryxiao/kmsvnc"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ nickcao ]; + mainProgram = "kmsvnc"; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/ko/kokkos/package.nix b/pkgs/by-name/ko/kokkos/package.nix new file mode 100644 index 000000000000..b6578f4a020f --- /dev/null +++ b/pkgs/by-name/ko/kokkos/package.nix @@ -0,0 +1,44 @@ +{ lib +, stdenv +, fetchFromGitHub +, gitUpdater +, cmake +, python3 +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "kokkos"; + version = "4.1.00"; + + src = fetchFromGitHub { + owner = "kokkos"; + repo = "kokkos"; + rev = finalAttrs.version; + hash = "sha256-bPgXn1Lv+EiiKEHgTVhRFhcELUnZCphaXDlrTYq6cpY="; + }; + + nativeBuildInputs = [ + cmake + python3 + ]; + + cmakeFlags = [ + (lib.cmakeBool "Kokkos_ENABLE_TESTS" true) + ]; + + postPatch = '' + patchShebangs . + ''; + + doCheck = true; + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + description = "C++ Performance Portability Programming EcoSystem"; + homepage = "https://github.com/kokkos/kokkos"; + license = with licenses; [ asl20-llvm ]; + maintainers = with maintainers; [ Madouura ]; + platforms = platforms.unix; + broken = stdenv.isDarwin; + }; +}) diff --git a/pkgs/by-name/ko/konbucase/package.nix b/pkgs/by-name/ko/konbucase/package.nix new file mode 100644 index 000000000000..75876d990661 --- /dev/null +++ b/pkgs/by-name/ko/konbucase/package.nix @@ -0,0 +1,52 @@ +{ lib +, stdenv +, fetchFromGitHub +, meson +, ninja +, vala +, pkg-config +, wrapGAppsHook +, pantheon +, gtksourceview5 +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "konbucase"; + version = "4.1.1"; + + src = fetchFromGitHub { + owner = "ryonakano"; + repo = "konbucase"; + rev = finalAttrs.version; + hash = "sha256-g3EDa9EXymi6c8dRHFZYGEAT7k8M2TXUAzZVKTnLzyk="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + meson + ninja + vala + pkg-config + wrapGAppsHook + ]; + + buildInputs = [ + pantheon.granite7 + gtksourceview5 + ]; + + postInstall = '' + mv $out/bin/com.github.ryonakano.konbucase $out/bin/konbucase + substituteInPlace $out/share/applications/com.github.ryonakano.konbucase.desktop \ + --replace 'Exec=com.github.ryonakano.konbucase' 'Exec=${placeholder "out"}/bin/konbucase' + ''; + + meta = with lib; { + homepage = "https://github.com/ryonakano/konbucase"; + description = "A case converting app suitable for coding or typing"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ galaxy ]; + platforms = platforms.linux; + mainProgram = "konbucase"; + }; +}) diff --git a/pkgs/by-name/la/lanraragi/expose-password-hashing.patch b/pkgs/by-name/la/lanraragi/expose-password-hashing.patch new file mode 100644 index 000000000000..1f6941f55ff4 --- /dev/null +++ b/pkgs/by-name/la/lanraragi/expose-password-hashing.patch @@ -0,0 +1,36 @@ +diff --git a/lib/LANraragi/Controller/Config.pm b/lib/LANraragi/Controller/Config.pm +index 2cd2c999..0bd8ab6e 100644 +--- a/lib/LANraragi/Controller/Config.pm ++++ b/lib/LANraragi/Controller/Config.pm +@@ -50,6 +50,15 @@ sub index { + ); + } + ++sub make_password_hash { ++ my $ppr = Authen::Passphrase::BlowfishCrypt->new( ++ cost => 8, ++ salt_random => 1, ++ passphrase => shift, ++ ); ++ return $ppr->as_rfc2307; ++} ++ + # Save the given parameters to the Redis config + sub save_config { + +@@ -95,14 +104,7 @@ sub save_config { + my $password = $self->req->param('newpassword'); + + if ( $password ne "" ) { +- my $ppr = Authen::Passphrase::BlowfishCrypt->new( +- cost => 8, +- salt_random => 1, +- passphrase => $password, +- ); +- +- my $pass_hashed = $ppr->as_rfc2307; +- $confhash{password} = $pass_hashed; ++ $confhash{password} = make_password_hash($password); + } + } + diff --git a/pkgs/by-name/la/lanraragi/fix-minion-redis-password.patch b/pkgs/by-name/la/lanraragi/fix-minion-redis-password.patch new file mode 100644 index 000000000000..eb6b88f68f7f --- /dev/null +++ b/pkgs/by-name/la/lanraragi/fix-minion-redis-password.patch @@ -0,0 +1,34 @@ +diff --git a/lib/LANraragi.pm b/lib/LANraragi.pm +index e6b833c4..d677030b 100644 +--- a/lib/LANraragi.pm ++++ b/lib/LANraragi.pm +@@ -144,8 +144,13 @@ sub startup { + shutdown_from_pid( get_temp . "/minion.pid" ); + + my $miniondb = $self->LRR_CONF->get_redisad . "/" . $self->LRR_CONF->get_miniondb; ++ my $redispassword = $self->LRR_CONF->get_redispassword; ++ ++ # If the password is non-empty, add the required delimiters ++ if ($redispassword) { $redispassword = "x:" . $redispassword . "@"; } ++ + say "Minion will use the Redis database at $miniondb"; +- $self->plugin( 'Minion' => { Redis => "redis://$miniondb" } ); ++ $self->plugin( 'Minion' => { Redis => "redis://$redispassword$miniondb" } ); + $self->LRR_LOGGER->info("Successfully connected to Minion database."); + $self->minion->missing_after(5); # Clean up older workers after 5 seconds of unavailability + +diff --git a/lib/LANraragi/Model/Config.pm b/lib/LANraragi/Model/Config.pm +index f52056d4..63e1f5d3 100644 +--- a/lib/LANraragi/Model/Config.pm ++++ b/lib/LANraragi/Model/Config.pm +@@ -42,8 +42,8 @@ sub get_minion { + my $miniondb = get_redisad . "/" . get_miniondb; + my $password = get_redispassword; + +- # If the password is non-empty, add the required @ +- if ($password) { $password = $password . "@"; } ++ # If the password is non-empty, add the required delimiters ++ if ($password) { $password = "x:" . $password . "@"; } + + return Minion->new( Redis => "redis://$password$miniondb" ); + } diff --git a/pkgs/by-name/la/lanraragi/fix-paths.patch b/pkgs/by-name/la/lanraragi/fix-paths.patch new file mode 100644 index 000000000000..f545bd4759f7 --- /dev/null +++ b/pkgs/by-name/la/lanraragi/fix-paths.patch @@ -0,0 +1,100 @@ +diff --git a/lib/LANraragi.pm b/lib/LANraragi.pm +index e6b833c4..4b90e4c5 100644 +--- a/lib/LANraragi.pm ++++ b/lib/LANraragi.pm +@@ -21,6 +21,8 @@ use LANraragi::Utils::Minion; + use LANraragi::Model::Search; + use LANraragi::Model::Config; + ++use FindBin; ++ + # This method will run once at server start + sub startup { + my $self = shift; +@@ -30,7 +32,7 @@ sub startup { + say "キタ━━━━━━(゚∀゚)━━━━━━!!!!!"; + + # Load package.json to get version/vername/description +- my $packagejson = decode_json( Mojo::File->new('package.json')->slurp ); ++ my $packagejson = decode_json( Mojo::File->new("$FindBin::Bin/../package.json")->slurp ); + + my $version = $packagejson->{version}; + my $vername = $packagejson->{version_name}; +diff --git a/lib/LANraragi/Model/Archive.pm b/lib/LANraragi/Model/Archive.pm +index 73e824dd..8bcea29c 100644 +--- a/lib/LANraragi/Model/Archive.pm ++++ b/lib/LANraragi/Model/Archive.pm +@@ -13,6 +13,7 @@ use Time::HiRes qw(usleep); + use File::Basename; + use File::Copy "cp"; + use File::Path qw(make_path); ++use FindBin; + + use LANraragi::Utils::Generic qw(remove_spaces remove_newlines render_api_response); + use LANraragi::Utils::TempFolder qw(get_temp); +@@ -126,7 +127,7 @@ sub serve_thumbnail { + } else { + + # If the thumbnail doesn't exist, serve the default thumbnail. +- $self->render_file( filepath => "./public/img/noThumb.png" ); ++ $self->render_file( filepath => "$FindBin::Bin/../public/img/noThumb.png" ); + } + return; + +diff --git a/lib/LANraragi/Utils/Generic.pm b/lib/LANraragi/Utils/Generic.pm +index 14736893..4352f023 100644 +--- a/lib/LANraragi/Utils/Generic.pm ++++ b/lib/LANraragi/Utils/Generic.pm +@@ -17,6 +17,8 @@ use Sys::CpuAffinity; + use LANraragi::Utils::TempFolder qw(get_temp); + use LANraragi::Utils::Logging qw(get_logger); + ++use FindBin; ++ + # Generic Utility Functions. + use Exporter 'import'; + our @EXPORT_OK = +@@ -161,7 +163,7 @@ sub start_shinobu { + my $mojo = shift; + + my $proc = Proc::Simple->new(); +- $proc->start( $^X, "./lib/Shinobu.pm" ); ++ $proc->start( $^X, "$FindBin::Bin/../lib/Shinobu.pm" ); + $proc->kill_on_destroy(0); + + $mojo->LRR_LOGGER->debug( "Shinobu Worker new PID is " . $proc->pid ); +@@ -201,7 +203,7 @@ sub get_css_list { + + #Get all the available CSS sheets. + my @css; +- opendir( my $dir, "./public/themes" ) or die $!; ++ opendir( my $dir, "$FindBin::Bin/../public/themes" ) or die $!; + while ( my $file = readdir($dir) ) { + if ( $file =~ /.+\.css/ ) { push( @css, $file ); } + } +diff --git a/lib/LANraragi/Utils/Logging.pm b/lib/LANraragi/Utils/Logging.pm +index ee29c507..6bdfc1bd 100644 +--- a/lib/LANraragi/Utils/Logging.pm ++++ b/lib/LANraragi/Utils/Logging.pm +@@ -18,7 +18,7 @@ our @EXPORT_OK = qw(get_logger get_plugin_logger get_logdir get_lines_from_file) + # Get the Log folder. + sub get_logdir { + +- my $log_folder = "$FindBin::Bin/../log"; ++ my $log_folder = "./log"; + + # Folder location can be overriden by LRR_LOG_DIRECTORY + if ( $ENV{LRR_LOG_DIRECTORY} ) { +diff --git a/lib/LANraragi/Utils/TempFolder.pm b/lib/LANraragi/Utils/TempFolder.pm +index 792b1c1b..f0eb341b 100644 +--- a/lib/LANraragi/Utils/TempFolder.pm ++++ b/lib/LANraragi/Utils/TempFolder.pm +@@ -20,7 +20,7 @@ our @EXPORT_OK = qw(get_temp get_tempsize clean_temp_full clean_temp_partial); + #Get the current tempfolder. + #This can be called from any process safely as it uses FindBin. + sub get_temp { +- my $temp_folder = "$FindBin::Bin/../public/temp"; ++ my $temp_folder = "./public/temp"; + + # Folder location can be overriden by LRR_TEMP_DIRECTORY + if ( $ENV{LRR_TEMP_DIRECTORY} ) { diff --git a/pkgs/by-name/la/lanraragi/install.patch b/pkgs/by-name/la/lanraragi/install.patch new file mode 100644 index 000000000000..9d260f5a494f --- /dev/null +++ b/pkgs/by-name/la/lanraragi/install.patch @@ -0,0 +1,63 @@ +diff --git a/tools/cpanfile b/tools/cpanfile +index 359c61fe..ca3b7ec7 100755 +--- a/tools/cpanfile ++++ b/tools/cpanfile +@@ -20,7 +20,7 @@ requires 'Sort::Naturally', 1.03; + requires 'Authen::Passphrase', 0.008; + requires 'File::ReadBackwards', 1.05; + requires 'URI::Escape', 1.74; +-requires 'URI', 5.09; ++requires 'URI', 5.05; + + # Used by Installer + requires 'IPC::Cmd', 1.02; +diff --git a/tools/install.pl b/tools/install.pl +index 0cbb847d..1bd61fa0 100755 +--- a/tools/install.pl ++++ b/tools/install.pl +@@ -91,32 +91,6 @@ if ( $ENV{HOMEBREW_FORMULA_PREFIX} ) { + $cpanopt = " -l " . $ENV{HOMEBREW_FORMULA_PREFIX} . "/libexec"; + } + +-#Load IPC::Cmd +-install_package( "IPC::Cmd", $cpanopt ); +-install_package( "Config::AutoConf", $cpanopt ); +-IPC::Cmd->import('can_run'); +-require Config::AutoConf; +- +-say("\r\nWill now check if all LRR software dependencies are met. \r\n"); +- +-#Check for Redis +-say("Checking for Redis..."); +-can_run('redis-server') +- or die 'NOT FOUND! Please install a Redis server before proceeding.'; +-say("OK!"); +- +-#Check for GhostScript +-say("Checking for GhostScript..."); +-can_run('gs') +- or warn 'NOT FOUND! PDF support will not work properly. Please install the "gs" tool.'; +-say("OK!"); +- +-#Check for libarchive +-say("Checking for libarchive..."); +-Config::AutoConf->new()->check_header("archive.h") +- or die 'NOT FOUND! Please install libarchive and ensure its headers are present.'; +-say("OK!"); +- + #Check for PerlMagick + say("Checking for ImageMagick/PerlMagick..."); + my $imgk; +@@ -154,12 +128,6 @@ if ( $back || $full ) { + #Clientside Dependencies with Provisioning + if ( $front || $full ) { + +- say("\r\nObtaining remote Web dependencies...\r\n"); +- +- if ( system("npm install") != 0 ) { +- die "Something went wrong while obtaining node modules - Bailing out."; +- } +- + say("\r\nProvisioning...\r\n"); + + #Load File::Copy diff --git a/pkgs/by-name/la/lanraragi/package.nix b/pkgs/by-name/la/lanraragi/package.nix new file mode 100644 index 000000000000..74ec38eeae23 --- /dev/null +++ b/pkgs/by-name/la/lanraragi/package.nix @@ -0,0 +1,130 @@ +{ lib +, stdenv +, buildNpmPackage +, fetchFromGitHub +, fetchpatch +, makeBinaryWrapper +, perl +, ghostscript +, nixosTests +}: + +let + perlEnv = perl.withPackages (_: cpanDeps); + + cpanDeps = with perl.pkgs; [ + ImageMagick + locallib + Redis + Encode + ArchiveLibarchiveExtract + ArchiveLibarchivePeek + NetDNSNative + SortNaturally + AuthenPassphrase + FileReadBackwards + URI + LogfileRotate + Mojolicious + MojoliciousPluginTemplateToolkit + MojoliciousPluginRenderFile + MojoliciousPluginStatus + IOSocketSSL + CpanelJSONXS + Minion + MinionBackendRedis + ProcSimple + ParallelLoops + SysCpuAffinity + FileChangeNotify + ModulePluggable + TimeLocal + ] ++ lib.optional stdenv.isLinux LinuxInotify2; +in +buildNpmPackage rec { + pname = "lanraragi"; + version = "0.8.90"; + + src = fetchFromGitHub { + owner = "Difegue"; + repo = "LANraragi"; + rev = "v.${version}"; + hash = "sha256-ljnREUGCKvUJvcQ+aJ6XqiMTkVmfjt/0oC47w3PCj/k="; + }; + + patches = [ + (fetchpatch { + name = "add-package-lock-json.patch"; # Can be removed when updating to 0.9.0 + url = "https://github.com/Difegue/LANraragi/commit/c5cd8641795bf7e40deef4ae955ea848dde44050.patch"; + hash = "sha256-XKxRzeugkIe6N4XRN6+O1wEZpxo6OzU0OaG0ywKFv38="; + }) + ./install.patch + ./fix-paths.patch + ./expose-password-hashing.patch + ./fix-minion-redis-password.patch # Should be upstreamed + ]; + + npmFlags = [ "--legacy-peer-deps" ]; + + npmDepsHash = "sha256-UQsChPU5b4+r5Kv6P/3rJCGUzssiUNSKo3w4axNyJew="; + + nativeBuildInputs = [ + perl + makeBinaryWrapper + perl.pkgs.Appcpanminus + ] ++ cpanDeps; + + nativeCheckInputs = with perl.pkgs; [ + TestMockObject + TestTrap + TestDeep + ]; + + buildPhase = '' + runHook preBuild + + perl ./tools/install.pl install-full + rm -r node_modules public/js/vendor/*.map public/css/vendor/*.map + + runHook postBuild + ''; + + doCheck = true; + + checkPhase = '' + runHook preCheck + + rm tests/plugins.t # Uses network + prove -r -l -v tests + + runHook postCheck + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/share/lanraragi + cp -r lib public script templates package.json $out/share/lanraragi + + makeWrapper ${perlEnv}/bin/perl $out/bin/lanraragi \ + --prefix PATH : ${lib.makeBinPath [ ghostscript ]} \ + --add-flags "$out/share/lanraragi/script/launcher.pl -f $out/share/lanraragi/script/lanraragi" + + runHook postInstall + ''; + + passthru = { + inherit perlEnv; + tests = { inherit (nixosTests) lanraragi; }; + }; + + meta = { + changelog = "https://github.com/Difegue/LANraragi/releases/tag/${src.rev}"; + description = "Web application for archival and reading of manga/doujinshi"; + homepage = "https://github.com/Difegue/LANraragi"; + license = lib.licenses.mit; + mainProgram = "lanraragi"; + maintainers = with lib.maintainers; [ tomasajt ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/by-name/li/libre-graph-api-cpp-qt-client/package.nix b/pkgs/by-name/li/libre-graph-api-cpp-qt-client/package.nix new file mode 100644 index 000000000000..5fc90574d40f --- /dev/null +++ b/pkgs/by-name/li/libre-graph-api-cpp-qt-client/package.nix @@ -0,0 +1,33 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, qt6 +}: + +stdenv.mkDerivation rec { + pname = "libre-graph-api-cpp-qt-client"; + version = "1.0.4"; + + src = fetchFromGitHub { + owner = "owncloud"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-wbdamPi2XSLWeprrYZtBUDH1A2gdp6/5geFZv+ZqSWk="; + }; + + sourceRoot = "${src.name}/client"; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ qt6.qtbase ]; + dontWrapQtApps = true; + + meta = with lib; { + description = "C++ Qt API for Libre Graph, a free API for cloud collaboration inspired by the MS Graph API"; + homepage = "https://owncloud.org"; + maintainers = with maintainers; [ hellwolf ]; + platforms = platforms.unix; + license = licenses.asl20; + changelog = "https://github.com/owncloud/libre-graph-api-cpp-qt-client/releases/tag/v${version}"; + }; +} diff --git a/pkgs/by-name/li/lint-staged/package.nix b/pkgs/by-name/li/lint-staged/package.nix new file mode 100644 index 000000000000..c93044c71a9f --- /dev/null +++ b/pkgs/by-name/li/lint-staged/package.nix @@ -0,0 +1,37 @@ +{ lib, buildNpmPackage, fetchFromGitHub, testers, lint-staged }: + +buildNpmPackage rec { + pname = "lint-staged"; + version = "14.0.1"; + + src = fetchFromGitHub { + owner = "okonet"; + repo = "lint-staged"; + rev = "v${version}"; + hash = "sha256-xuHrxi/1zfeY2dd625iLDNJFoNO28JJrPvmECdqeZXk="; + }; + + npmDepsHash = "sha256-4lyTBmcX5k//kbFHmzbOQJp+Jd9TPY7bzm51QuiXUzE="; + + dontNpmBuild = true; + + # Fixes `lint-staged --version` output + postPatch = '' + substituteInPlace package.json --replace \ + '"version": "0.0.0-development"' \ + '"version": "${version}"' + ''; + + passthru.tests.version = testers.testVersion { package = lint-staged; }; + + meta = with lib; { + description = "Run linters on git staged files"; + longDescription = '' + Run linters against staged git files and don't let 💩 slip into your code base! + ''; + homepage = src.meta.homepage; + license = licenses.mit; + maintainers = with maintainers; [ DamienCassou ]; + mainProgram = "lint-staged"; + }; +} diff --git a/pkgs/by-name/li/litmus/package.nix b/pkgs/by-name/li/litmus/package.nix new file mode 100644 index 000000000000..11068ea39fb7 --- /dev/null +++ b/pkgs/by-name/li/litmus/package.nix @@ -0,0 +1,55 @@ +{ stdenv +, lib +, fetchFromGitHub +, autoreconfHook +, pkg-config +, expat +, libproxy +, neon +, zlib +}: + +stdenv.mkDerivation rec { + version = "0.14"; + pname = "litmus"; + + src = fetchFromGitHub { + owner = "notroj"; + repo = "litmus"; + rev = version; + # Required for neon m4 macros, bundled neon not used + fetchSubmodules = true; + hash = "sha256-jWz0cnytgn7px3vvB9/ilWBNALQiW5/QvgguM27I3yQ="; + }; + + postPatch = '' + # neon version requirements are broken, remove them: + # configure: incompatible neon library version 0.32.5: wanted 0.27 28 29 30 31 32 + # configure: using bundled neon (0.32.5) + sed -i /NE_REQUIRE_VERSIONS/d configure.ac + ''; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + + buildInputs = [ + expat + libproxy + neon + zlib + ]; + + autoreconfFlags = [ "-I" "neon/macros" ]; + + meta = with lib; { + description = "WebDAV server protocol compliance test suite"; + homepage = "http://www.webdav.org/neon/litmus/"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = [ maintainers.lorenz ]; + mainProgram = "litmus"; + }; +} + diff --git a/pkgs/by-name/mi/minecraftia/package.nix b/pkgs/by-name/mi/minecraftia/package.nix new file mode 100644 index 000000000000..584730ea8df3 --- /dev/null +++ b/pkgs/by-name/mi/minecraftia/package.nix @@ -0,0 +1,28 @@ +{ lib, fetchzip, stdenvNoCC }: + +stdenvNoCC.mkDerivation { + pname = "minecraftia"; + version = "1.0"; + + src = fetchzip { + url = "https://fontlibrary.org/assets/downloads/minecraftia/71962a7e3d4a70435c030466a12f1d63/minecraftia.zip"; + hash = "sha256-AZFSts0GpBttbhl1LHMORiqqc9o7ZWhh5hbjhSnxAlA="; + stripRoot = false; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/truetype $src/Minecraftia.ttf + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://fontlibrary.org/en/font/minecraftia"; + description = "Cool Minecraft font"; + license = licenses.cc-by-sa-30; + platforms = platforms.all; + maintainers = with lib.maintainers; [ gepbird ]; + }; +} diff --git a/pkgs/by-name/my/mystmd/package.nix b/pkgs/by-name/my/mystmd/package.nix new file mode 100644 index 000000000000..5bf90c7d90cd --- /dev/null +++ b/pkgs/by-name/my/mystmd/package.nix @@ -0,0 +1,34 @@ +{ lib, buildNpmPackage, fetchFromGitHub }: + +buildNpmPackage rec { + pname = "mystmd"; + version = "1.1.22"; + + src = fetchFromGitHub { + owner = "executablebooks"; + repo = "mystmd"; + rev = "mystmd@${version}"; + hash = "sha256-jx/UCC/Cl5kqAbMzeikTmrx9xWS02OCp3rn0pvtIAPY="; + }; + + npmDepsHash = "sha256-1qQ19iB7N+KvO1uUdEMU1iN91FMQs4wzfTCdv6wfn30="; + + dontNpmInstall = true; + + installPhase = '' + runHook preInstall + + install -D packages/mystmd/dist/myst.cjs $out/bin/myst + + runHook postInstall + ''; + + meta = with lib; { + description = "Command line tools for working with MyST Markdown"; + homepage = "https://github.com/executablebooks/mystmd"; + changelog = "https://github.com/executablebooks/mystmd/blob/${src.rev}/packages/myst-cli/CHANGELOG.md"; + license = licenses.mit; + maintainers = [ maintainers.marsam ]; + mainProgram = "myst"; + }; +} diff --git a/pkgs/by-name/n2/n2/package.nix b/pkgs/by-name/n2/n2/package.nix new file mode 100644 index 000000000000..dd35f134d8a1 --- /dev/null +++ b/pkgs/by-name/n2/n2/package.nix @@ -0,0 +1,26 @@ +{ lib +, rustPlatform +, fetchFromGitHub +}: + +rustPlatform.buildRustPackage { + pname = "n2"; + version = "unstable-2023-10-10"; + + src = fetchFromGitHub { + owner = "evmar"; + repo = "n2"; + rev = "90041c1f010d27464e3b18e38440ed9855ea62ef"; + hash = "sha256-svJPcriSrqloJlr7pIp/k84O712l4ZEPlSr58GPANXY="; + }; + + cargoHash = "sha256-jrIo0N3o2fYe3NgNG33shkMd0rJxi5evtidCL9BcfVc="; + + meta = with lib; { + homepage = "https://github.com/evmar/n2"; + description = "A ninja compatible build system"; + license = licenses.asl20; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/by-name/na/namespace-cli/package.nix b/pkgs/by-name/na/namespace-cli/package.nix new file mode 100644 index 000000000000..e0dd291ef76b --- /dev/null +++ b/pkgs/by-name/na/namespace-cli/package.nix @@ -0,0 +1,35 @@ +{ lib +, fetchFromGitHub +, buildGoModule +}: + +buildGoModule rec { + pname = "namespace-cli"; + version = "0.0.302"; + + src = fetchFromGitHub { + owner = "namespacelabs"; + repo = "foundation"; + rev = "v${version}"; + hash = "sha256-I4ZkPdxidT2670NU5o1QTaee4fuDJNEirg7peuHqaJQ="; + }; + + vendorHash = "sha256-jYkEXoCxqlxLF7oRc7H+/pMwkphOEwt2qUFkg+JOKVA="; + + subPackages = ["cmd/nsc" "cmd/ns" "cmd/docker-credential-nsc"]; + + ldflags = [ + "-s" + "-w" + "-X namespacelabs.dev/foundation/internal/cli/version.Tag=v${version}" + ]; + + meta = with lib; { + mainProgram = "nsc"; + maintainers = with maintainers; [ techknowlogick ]; + license = licenses.asl20; + changelog = "https://github.com/namespacelabs/foundation/releases/tag/v${version}"; + homepage = "https://github.com/namespacelabs/foundation"; + description = "A command line interface for the Namespaces platform"; + }; +} diff --git a/pkgs/by-name/ne/netclient/package.nix b/pkgs/by-name/ne/netclient/package.nix index 33d72747be66..029fd53cdc07 100644 --- a/pkgs/by-name/ne/netclient/package.nix +++ b/pkgs/by-name/ne/netclient/package.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "netclient"; - version = "0.21.0"; + version = "0.21.1"; src = fetchFromGitHub { owner = "gravitl"; repo = "netclient"; rev = "v${version}"; - hash = "sha256-68/BmVoAFaIg4vgjzhedSBqm6H9VDu3M7JemfPEcpjQ="; + hash = "sha256-r5Du9Gwt+deeUe6AJDN85o4snybvzZIIsyt+cfgMq2Q="; }; - vendorHash = "sha256-CsW4tW6+INw93A7uXtHeVnxRrE5unHXhm2SOmQkJwYA="; + vendorHash = "sha256-/RNteV+Ys7TVTJtQsWcGK/1C6mf/sQUahIeEzefBe3A="; buildInputs = lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa ++ lib.optional stdenv.isLinux libX11; diff --git a/pkgs/by-name/ni/nixops-dns/deps.nix b/pkgs/by-name/ni/nixops-dns/deps.nix new file mode 100644 index 000000000000..7da38f83e7fe --- /dev/null +++ b/pkgs/by-name/ni/nixops-dns/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/mattn/go-sqlite3"; + fetch = { + type = "git"; + url = "https://github.com/mattn/go-sqlite3"; + rev = "b4142c444a8941d0d92b0b7103a24df9cd815e42"; + sha256 = "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla"; + }; + } + { + goPackagePath = "github.com/miekg/dns"; + fetch = { + type = "git"; + url = "https://github.com/miekg/dns"; + rev = "75229eecb7af00b2736e93b779a78429dcb19472"; + sha256 = "1vsjy07kkyx11iz4qsihhykac3ddq3ywdgv6bwrv407504f7x6wl"; + }; + } +] diff --git a/pkgs/by-name/ni/nixops-dns/package.nix b/pkgs/by-name/ni/nixops-dns/package.nix new file mode 100644 index 000000000000..cf633a65ca53 --- /dev/null +++ b/pkgs/by-name/ni/nixops-dns/package.nix @@ -0,0 +1,25 @@ +{ lib +, buildGoPackage +, fetchFromGitHub }: + +buildGoPackage rec { + pname = "nixops-dns"; + version = "1.0"; + + goDeps = ./deps.nix; + goPackagePath = "github.com/kamilchm/nixops-dns"; + + src = fetchFromGitHub { + owner = "kamilchm"; + repo = "nixops-dns"; + rev = "v${version}"; + sha256 = "1fyqwk2knrv40zpf71a56bjyaycr3p6fzrqq7gaan056ydy83cai"; + }; + + meta = with lib; { + homepage = "https://github.com/kamilchm/nixops-dns/"; + description = "DNS server for resolving NixOps machines"; + license = licenses.mit; + maintainers = with maintainers; [ kamilchm sorki ]; + }; +} diff --git a/pkgs/by-name/oc/octorpki/package.nix b/pkgs/by-name/oc/octorpki/package.nix new file mode 100644 index 000000000000..87a8498d28a6 --- /dev/null +++ b/pkgs/by-name/oc/octorpki/package.nix @@ -0,0 +1,50 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, fetchpatch +}: + +buildGoModule rec { + pname = "octorpki"; + version = "1.5.10"; + + src = fetchFromGitHub { + owner = "cloudflare"; + repo = "cfrpki"; + rev = "v${version}"; + hash = "sha256-eqIAauwFh1Zbv3Jkk8plz1OR3ZW8fs0ugNwwTnSHSFM="; + }; + + patches = [ + # https://github.com/cloudflare/cfrpki/pull/150 + (fetchpatch { + url = "https://github.com/cloudflare/cfrpki/commit/fd0c4e95b880c463430c91ce1f86205b9309399b.patch"; + hash = "sha256-cJ0mWkjtGvgTIH5eEum8h2Gy2PqR+nPto+mj5m/I/d4="; + }) + ]; + + ldflags = [ + "-X main.version=v${version}" + "-X main.talpath=${placeholder "out"}/share/tals" + ]; + + subPackages = [ + "cmd/octorpki" + ]; + + postInstall = '' + mkdir -p $out/share + cp -R cmd/octorpki/tals $out/share/tals + ''; + + vendorHash = null; + + meta = with lib; { + homepage = "https://github.com/cloudflare/cfrpki#octorpki"; + changelog = "https://github.com/cloudflare/cfrpki/releases/tag/v${version}"; + description = "A software used to download RPKI (RFC 6480) certificates and validate them"; + license = licenses.bsd3; + platforms = platforms.all; + maintainers = teams.wdz.members; + }; +} diff --git a/pkgs/by-name/oe/oelint-adv/package.nix b/pkgs/by-name/oe/oelint-adv/package.nix index 357772d5f8ec..f77ca05a6345 100644 --- a/pkgs/by-name/oe/oelint-adv/package.nix +++ b/pkgs/by-name/oe/oelint-adv/package.nix @@ -6,13 +6,13 @@ python3.pkgs.buildPythonApplication rec { pname = "oelint-adv"; - version = "3.25.0"; + version = "3.26.1"; format = "setuptools"; src = fetchPypi { inherit version; pname = "oelint_adv"; - hash = "sha256-dhTS2DZ7Usb1jgBv9Wm86w8CCMt64aHyBrxucLZUQjs="; + hash = "sha256-xQC3y9YeY8o4L4pLV+nLs1Ao8KH6q1BprwTeUm8f+2w="; }; propagatedBuildInputs = with python3.pkgs; [ diff --git a/pkgs/by-name/on/onedrivegui/package.nix b/pkgs/by-name/on/onedrivegui/package.nix new file mode 100644 index 000000000000..6ffd81584f3e --- /dev/null +++ b/pkgs/by-name/on/onedrivegui/package.nix @@ -0,0 +1,87 @@ +{ lib +, python3Packages +, fetchFromGitHub +, writeText +, copyDesktopItems +, makeDesktopItem +, makeWrapper +, onedrive +}: + +let + version = "1.0.3"; + + setupPy = writeText "setup.py" '' + from setuptools import setup + setup( + name='onedrivegui', + version='${version}', + scripts=[ + 'src/OneDriveGUI.py', + ], + ) + ''; + +in +python3Packages.buildPythonApplication rec { + pname = "onedrivegui"; + inherit version; + + src = fetchFromGitHub { + owner = "bpozdena"; + repo = "OneDriveGUI"; + rev = "v${version}"; + hash = "sha256-HutziAzhIDYP8upNPieL2GNrxPBHUCVs09FFxdSqeBs="; + }; + + nativeBuildInputs = [ copyDesktopItems makeWrapper ]; + + propagatedBuildInputs = with python3Packages; [ pyside6 requests ]; + + # wrap manually to avoid having a bash script in $out/bin with a .py extension + dontWrapPythonPrograms = true; + + doCheck = false; # No tests defined + pythonImportsCheck = [ "OneDriveGUI" ]; + + desktopItems = [ + (makeDesktopItem { + name = "OneDriveGUI"; + exec = "onedrivegui"; + desktopName = "OneDriveGUI"; + comment = "OneDrive GUI Client"; + type = "Application"; + icon = "OneDriveGUI"; + terminal = false; + categories = [ "Utility" ]; + }) + ]; + + postPatch = '' + # Patch OneDriveGUI.py so DIR_PATH points to shared files location + sed -i src/OneDriveGUI.py -e "s@^DIR_PATH =.*@DIR_PATH = '$out/share/OneDriveGUI'@" + cp ${setupPy} ${setupPy.name} + ''; + + postInstall = '' + mkdir -p $out/share/OneDriveGUI + # we do not need the `ui` directory - only resources + cp -r src/resources $out/share/OneDriveGUI + install -Dm444 -t $/out/share/icons/hicolor/48x48/apps src/resources/images/OneDriveGUI.png + # we put our own executable wrapper in place instead + rm -r $out/bin/* + + makeWrapper ${python3Packages.python.interpreter} $out/bin/onedrivegui \ + --prefix PATH : ${lib.makeBinPath [ onedrive ]} \ + --prefix PYTHONPATH : ${python3Packages.makePythonPath (propagatedBuildInputs ++ [(placeholder "out")])} \ + --add-flags $out/lib/${python3Packages.python.libPrefix}/site-packages/OneDriveGUI.py + ''; + + meta = with lib; { + homepage = "https://github.com/bpozdena/OneDriveGUI"; + description = "A simple GUI for Linux OneDrive Client, with multi-account support"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ jgarcia ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/on/onedriver/package.nix b/pkgs/by-name/on/onedriver/package.nix new file mode 100644 index 000000000000..f4087401ea92 --- /dev/null +++ b/pkgs/by-name/on/onedriver/package.nix @@ -0,0 +1,64 @@ +{ buildGoModule +, fetchFromGitHub +, lib +, pkg-config +, webkitgtk +, glib +, fuse +, installShellFiles +}: +let + pname = "onedriver"; + version = "0.13.0-2"; + + src = fetchFromGitHub { + owner = "jstaf"; + repo = "onedriver"; + rev = "v${version}"; + hash = "sha256-Bcjgmx9a4pTRhkzR3tbOB6InjvuH71qomv4t+nRNc+w="; + }; +in +buildGoModule { + inherit pname version src; + vendorHash = "sha256-OOiiKtKb+BiFkoSBUQQfqm4dMfDW3Is+30Kwcdg8LNA="; + + nativeBuildInputs = [ pkg-config installShellFiles ]; + buildInputs = [ webkitgtk glib fuse ]; + + ldflags = [ "-X github.com/jstaf/onedriver/cmd/common.commit=v${version}" ]; + + subPackages = [ + "cmd/onedriver" + "cmd/onedriver-launcher" + ]; + + postInstall = '' + echo "Running postInstall" + install -Dm644 ./resources/onedriver.svg $out/share/icons/onedriver/onedriver.svg + install -Dm644 ./resources/onedriver.png $out/share/icons/onedriver/onedriver.png + install -Dm644 ./resources/onedriver-128.png $out/share/icons/onedriver/onedriver-128.png + + install -Dm644 ./resources/onedriver.desktop $out/share/applications/onedriver.desktop + + mkdir -p $out/share/man/man1 + installManPage ./resources/onedriver.1 + + substituteInPlace $out/share/applications/onedriver.desktop \ + --replace "/usr/bin/onedriver-launcher" "$out/bin/onedriver-launcher" \ + --replace "/usr/share/icons" "$out/share/icons" + ''; + + meta = with lib; { + description = "A network filesystem for Linux"; + longDescription = '' + onedriver is a network filesystem that gives your computer direct access to your files on Microsoft OneDrive. + This is not a sync client. Instead of syncing files, onedriver performs an on-demand download of files when + your computer attempts to use them. onedriver allows you to use files on OneDrive as if they were files on + your local computer. + ''; + inherit (src.meta) homepage; + license = licenses.gpl3Plus; + maintainers = [ maintainers.massimogengarelli ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/ow/owncloud-client/package.nix b/pkgs/by-name/ow/owncloud-client/package.nix new file mode 100644 index 000000000000..5edbd5d0f6b8 --- /dev/null +++ b/pkgs/by-name/ow/owncloud-client/package.nix @@ -0,0 +1,57 @@ +{ lib +, stdenv +, fetchFromGitHub +, pkg-config +, cmake +, extra-cmake-modules +, qt6 +, qt6Packages +, sqlite +, libsecret +, libre-graph-api-cpp-qt-client +, kdsingleapplication +# darwin only: +, libinotify-kqueue +, sparkleshare +}: + +stdenv.mkDerivation rec { + pname = "owncloud-client"; + version = "5.0.0"; + + src = fetchFromGitHub { + owner = "owncloud"; + repo = "client"; + rev = "refs/tags/v${version}"; + hash = "sha256-SSMNmWrCT1sGa38oY8P84QNedNkQPcIRWrV9B65B5X8="; + }; + + nativeBuildInputs = [ + pkg-config + cmake + extra-cmake-modules + qt6.qttools + qt6.wrapQtAppsHook + ]; + + buildInputs = [ + sqlite + libsecret + qt6.qtbase + qt6.qtsvg # Needed for the systray icon + qt6Packages.qtkeychain + libre-graph-api-cpp-qt-client + kdsingleapplication + ] ++ lib.optionals stdenv.isDarwin [ + libinotify-kqueue sparkleshare + ]; + + meta = with lib; { + description = "Synchronise your ownCloud with your computer using this desktop client"; + homepage = "https://owncloud.org"; + maintainers = with maintainers; [ qknight hellwolf ]; + platforms = platforms.unix; + license = licenses.gpl2Plus; + changelog = "https://github.com/owncloud/client/releases/tag/v${version}"; + }; +} diff --git a/pkgs/by-name/pa/paper-age/package.nix b/pkgs/by-name/pa/paper-age/package.nix new file mode 100644 index 000000000000..d15954fd6b2b --- /dev/null +++ b/pkgs/by-name/pa/paper-age/package.nix @@ -0,0 +1,27 @@ +{ lib +, rustPlatform +, fetchFromGitHub +}: + +rustPlatform.buildRustPackage rec { + pname = "paper-age"; + version = "1.2.0"; + + src = fetchFromGitHub { + owner = "matiaskorhonen"; + repo = "paper-age"; + rev = "v${version}"; + hash = "sha256-7dd1R41CDgkpFI8fUWCJfgz3lr22IjWQYW6vRYEFidc="; + }; + + cargoHash = "sha256-IJDV0dmOsA9gbVKGfPsN3TKJbox3JTNxldArQK6GPt8="; + + meta = with lib; { + description = "Easy and secure paper backups of secrets"; + homepage = "https://github.com/matiaskorhonen/paper-age"; + changelog = "https://github.com/matiaskorhonen/paper-age/blob/${src.rev}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ tomfitzhenry ]; + mainProgram = "paper-age"; + }; +} diff --git a/pkgs/by-name/pg/pgmoneta/package.nix b/pkgs/by-name/pg/pgmoneta/package.nix new file mode 100644 index 000000000000..dee9c6610b14 --- /dev/null +++ b/pkgs/by-name/pg/pgmoneta/package.nix @@ -0,0 +1,61 @@ +{ lib +, stdenv +, bzip2 +, cjson +, cmake +, curl +, docutils +, fetchFromGitHub +, libarchive +, libev +, libgccjit +, libssh +, lz4 +, openssl +, systemd +, zlib +, zstd +}: + +stdenv.mkDerivation rec { + pname = "pgmoneta"; + version = "0.7.1"; + + src = fetchFromGitHub { + owner = "pgmoneta"; + repo = "pgmoneta"; + rev = version; + hash = "sha256-F3bQ3UytEunXf0w2Eo1vx3u0Q40usYhbCmCVuL9X9lI="; + }; + + nativeBuildInputs = [ + cmake + docutils # for rst2man + ]; + + buildInputs = [ + bzip2 + cjson + curl + libarchive + libev + libgccjit + libssh + lz4 + openssl + systemd + zlib + zstd + ]; + + env.NIX_CFLAGS_COMPILE = "-Wno-error"; + + meta = with lib; { + description = "Backup / restore solution for PostgreSQL"; + homepage = "https://pgmoneta.github.io/"; + changelog = "https://github.com/pgmoneta/pgmoneta/releases/tag/${version}"; + license = licenses.bsd3; + maintainers = [ maintainers.marsam ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/ph/phel/package.nix b/pkgs/by-name/ph/phel/package.nix new file mode 100644 index 000000000000..84fe0583f267 --- /dev/null +++ b/pkgs/by-name/ph/phel/package.nix @@ -0,0 +1,27 @@ +{ lib +, fetchFromGitHub +, php +}: + +php.buildComposerProject (finalAttrs: { + pname = "phel"; + version = "0.11.0-dev"; + + src = fetchFromGitHub { + owner = "phel-lang"; + repo = "phel-lang"; + rev = "83d9d81b6c7daae361c0f1f68462083027b81581"; + hash = "sha256-B2IozL/nJE4C1Gq54/64TJEySC1STroG1poCBzd3j3I="; + }; + + vendorHash = "sha256-83GX/dxHa6w1E34wnJshg7yxlVyRkDT5jmAPCCqPdtA="; + + meta = { + changelog = "https://github.com/phel-lang/phel-lang/releases/tag/v${finalAttrs.version}"; + description = "Phel is a functional programming language that compiles to PHP. A Lisp dialect inspired by Clojure and Janet."; + homepage = "https://github.com/phel-lang/phel-lang"; + license = lib.licenses.mit; + mainProgram = "phel"; + maintainers = with lib.maintainers; [ drupol ]; + }; +}) diff --git a/pkgs/by-name/pi/pid1/package.nix b/pkgs/by-name/pi/pid1/package.nix new file mode 100644 index 000000000000..76e4d3044cea --- /dev/null +++ b/pkgs/by-name/pi/pid1/package.nix @@ -0,0 +1,23 @@ +{ lib, rustPlatform, fetchFromGitHub }: + +rustPlatform.buildRustPackage rec { + pname = "pid1"; + version = "0.1.2"; + + src = fetchFromGitHub { + owner = "fpco"; + repo = "pid1-rs"; + rev = "v${version}"; + hash = "sha256-BljIa+4BKI7WHlOhXfN/3VKMzs5G5E4tNlQ2oPpJV2g="; + }; + + cargoHash = "sha256-7PANlw/SKxyAqymfXIXFT/v3U0GCiGfgStguSr0lrqQ="; + + meta = with lib; { + description = "Signal handling and zombie reaping for PID1 process"; + homepage = "https://github.com/fpco/pid1-rs"; + license = licenses.mit; + maintainers = with maintainers; [ psibi ]; + mainProgram = "pid1"; + }; +} diff --git a/pkgs/by-name/pi/pinact/package.nix b/pkgs/by-name/pi/pinact/package.nix new file mode 100644 index 000000000000..7e5b90100ee3 --- /dev/null +++ b/pkgs/by-name/pi/pinact/package.nix @@ -0,0 +1,45 @@ +{ lib +, fetchFromGitHub +, buildGo120Module +, testers +, pinact +}: + +let + pname = "pinact"; + version = "0.1.2"; + src = fetchFromGitHub { + owner = "suzuki-shunsuke"; + repo = "pinact"; + rev = "v${version}"; + hash = "sha256-OQo21RHk0c+eARKrA2qB4NAWWanb94DOZm4b9lqDz8o="; + }; +in +buildGo120Module { + inherit pname version src; + + vendorHash = "sha256-g7rdIE+w/pn70i8fOmAo/QGjpla3AUWm7a9MOhNmrgE="; + + doCheck = true; + + passthru.tests.version = testers.testVersion { + package = pinact; + command = "pinact --version"; + version = src.rev; + }; + + ldflags = [ + "-s" + "-w" + "-X main.version=${version} -X main.commit=${src.rev}" + ]; + + meta = with lib; { + description = "Pin GitHub Actions versions"; + homepage = "https://github.com/suzuki-shunsuke/pinact"; + changelog = "https://github.com/suzuki-shunsuke/pinact/releases/tag/${src.rev}"; + license = licenses.mit; + maintainers = [ maintainers.kachick ]; + mainProgram = "pinact"; + }; +} diff --git a/pkgs/by-name/pr/presenterm/package.nix b/pkgs/by-name/pr/presenterm/package.nix new file mode 100644 index 000000000000..6e09e86f2059 --- /dev/null +++ b/pkgs/by-name/pr/presenterm/package.nix @@ -0,0 +1,23 @@ +{ lib, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + pname = "presenterm"; + version = "0.2.1"; + + src = fetchFromGitHub { + owner = "mfontanini"; + repo = "presenterm"; + rev = "v${version}"; + hash = "sha256-sXVMVU34gxZKGNye6hoyv07a7N7f6UbivA6thbSOeZA="; + }; + + cargoHash = "sha256-PsDaXMws/8hEvAZwClQ4okGuryg1iKg0IBr7Xp2QYBE="; + + meta = with lib; { + description = "A terminal based slideshow tool"; + homepage = "https://github.com/mfontanini/presenterm"; + license = licenses.bsd2; + maintainers = with maintainers; [ mikaelfangel ]; + mainProgram = "presenterm"; + }; +} diff --git a/pkgs/by-name/pr/prox/package.nix b/pkgs/by-name/pr/prox/package.nix new file mode 100644 index 000000000000..7c49551423f7 --- /dev/null +++ b/pkgs/by-name/pr/prox/package.nix @@ -0,0 +1,31 @@ +{ buildGoModule +, fetchFromGitHub +, lib +}: + +buildGoModule rec { + pname = "prox"; + # While upstream did release a v1.0.0, v0.5.2 is actually newer: https://github.com/fgrosse/prox/releases/tag/v0.5.2 + version = "0.5.2"; + + src = fetchFromGitHub { + owner = "fgrosse"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-mqx8ICne0NnyW0N1Jeu+PJXWDBr12OASLxlePI6v6Bc="; + }; + + vendorHash = "sha256-4gZfEbyAzAzxtOR6FhP7eUSdln+fANn87+duCq1aq5A="; + + postPatch = '' + substituteInPlace cmd/prox/version.go \ + --replace '0.0.0-unknown' '${version}' + ''; + + meta = with lib; { + homepage = "https://github.com/fgrosse/prox"; + description = "A process runner for Procfile-based applications "; + license = licenses.bsd2; + maintainers = with maintainers; [ lucperkins ]; + }; +} diff --git a/pkgs/by-name/py/pyprland/package.nix b/pkgs/by-name/py/pyprland/package.nix new file mode 100644 index 000000000000..5af31a41de88 --- /dev/null +++ b/pkgs/by-name/py/pyprland/package.nix @@ -0,0 +1,40 @@ +{ lib, fetchFromGitHub, python3Packages }: + +python3Packages.buildPythonApplication rec { + pname = "pyprland"; + version = "1.4.1"; + format = "pyproject"; + + disabled = python3Packages.pythonOlder "3.10"; + + src = fetchFromGitHub { + owner = "hyprland-community"; + repo = "pyprland"; + rev = version; + hash = "sha256-x/Rar80jwBX64pW+uv0edhlC44OP1b1e2vnJLFGlIms="; + }; + + nativeBuildInputs = with python3Packages; [ poetry-core ]; + + postInstall = '' + # file has shebang but cant be run due to a relative import, has proper entrypoint in /bin + chmod -x $out/${python3Packages.python.sitePackages}/pyprland/command.py + ''; + + pythonImportsCheck = [ + "pyprland" + "pyprland.common" + "pyprland.plugins" + "pyprland.plugins.interface" + "pyprland.plugins.ironbar" + ]; + + meta = with lib; { + mainProgram = "pypr"; + description = "An hyperland plugin system"; + homepage = "https://github.com/hyprland-community/pyprland"; + license = licenses.mit; + maintainers = with maintainers; [ iliayar ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/pz/pzip/package.nix b/pkgs/by-name/pz/pzip/package.nix new file mode 100644 index 000000000000..f2797c6791c8 --- /dev/null +++ b/pkgs/by-name/pz/pzip/package.nix @@ -0,0 +1,34 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, unzip +}: + +buildGoModule rec { + pname = "pzip"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "ybirader"; + repo = "pzip"; + rev = "v${version}"; + hash = "sha256-bb2TSSyA7TwgoV53M/7WkNcTq8F0EjCA7ObHfnGL9l0="; + }; + + vendorHash = "sha256-MRZlv4eN1Qbu+QXr//YexTDYSK4pCXAPO7VvGqZhjho="; + + nativeBuildInputs = [ + unzip + ]; + + ldflags = [ "-s" "-w" ]; + + meta = with lib; { + description = "A fast concurrent zip archiver and extractor"; + homepage = "https://github.com/ybirader/pzip"; + changelog = "https://github.com/ybirader/pzip/releases/tag/${src.rev}"; + license = licenses.asl20; + maintainers = with maintainers; [ figsoda ]; + mainProgram = "pzip"; + }; +} diff --git a/pkgs/by-name/qu/quicksand/package.nix b/pkgs/by-name/qu/quicksand/package.nix new file mode 100644 index 000000000000..189c1dfdf5b4 --- /dev/null +++ b/pkgs/by-name/qu/quicksand/package.nix @@ -0,0 +1,40 @@ +{ lib, stdenvNoCC, fetchFromGitHub }: + +stdenvNoCC.mkDerivation { + pname = "quicksand"; + version = "2.0-unstable-2021-01-15"; + + src = fetchFromGitHub { + owner = "andrew-paglinawan"; + repo = "QuicksandFamily"; + rev = "be4b9d638e1c79fa42d4a0ab0aa7fe29466419c7"; + hash = "sha256-zkxm2u35Ll2qyCoUeuA0eumVjNSel+y1kkWoHxeNI/g="; + sparseCheckout = ["fonts"]; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts/quicksand + + install -Dm444 fonts/*.ttf -t $out/share/fonts/quicksand/ + install -Dm444 fonts/statics/*.ttf -t $out/share/fonts/quicksand/ + + runHook postInstall + ''; + + meta = { + homepage = "https://github.com/andrew-paglinawan/QuicksandFamily"; + description = "A sans serif font designed using geometric shapes"; + longDescription = '' + Quicksand is a sans serif typeface designed by Andrew Paglinawan + in 2008 using geometric shapes as it's core foundation. It is + designed for display purposes but legible enough to use in small + sizes as well. Quicksand Family is available in three styles + which are Light, Regular and Bold including true italics for each weight. + ''; + license = with lib.licenses; [ ofl ]; + maintainers = with lib.maintainers; [ hubble ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/by-name/ra/raft-cowsql/package.nix b/pkgs/by-name/ra/raft-cowsql/package.nix index 34c7d72726d7..821abd91727c 100644 --- a/pkgs/by-name/ra/raft-cowsql/package.nix +++ b/pkgs/by-name/ra/raft-cowsql/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "raft-cowsql"; - version = "0.17.3"; + version = "0.17.7"; src = fetchFromGitHub { owner = "cowsql"; repo = "raft"; rev = "refs/tags/v${version}"; - hash = "sha256-Ad09giGVsAVtm/0GRU/OaZx7BGjL5TlU8BrzFaFlE9k="; + hash = "sha256-ZAUC2o0VWpC/zMOVOAxW+CAdiDTXa5JG0gfHirTjm88="; }; nativeBuildInputs = [ autoreconfHook pkg-config ]; diff --git a/pkgs/by-name/re/reactphysics3d/package.nix b/pkgs/by-name/re/reactphysics3d/package.nix new file mode 100644 index 000000000000..f775d7d54240 --- /dev/null +++ b/pkgs/by-name/re/reactphysics3d/package.nix @@ -0,0 +1,23 @@ +{ lib, stdenv, fetchFromGitHub, cmake }: + +stdenv.mkDerivation (finalAttrs: { + pname = "reactphysics3d"; + version = "0.9.0"; + + src = fetchFromGitHub { + owner = "DanielChappuis"; + repo = "reactphysics3d"; + rev = "v${finalAttrs.version}"; + hash = "sha256-AUdsUXsygsGfS8H+AHEV1fSrrX7zGmfsaTONYUG3zqk="; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with lib; { + description = "An open source C++ physics engine library"; + homepage = "https://www.reactphysics3d.com"; + maintainers = with maintainers; [ rexxDigital ]; + license = licenses.zlib; + platforms = platforms.all; + }; +}) diff --git a/pkgs/by-name/ri/rimgo/package.nix b/pkgs/by-name/ri/rimgo/package.nix index 1f8ca9b8459d..73150d42b812 100644 --- a/pkgs/by-name/ri/rimgo/package.nix +++ b/pkgs/by-name/ri/rimgo/package.nix @@ -6,14 +6,14 @@ }: buildGoModule rec { pname = "rimgo"; - version = "1.2.0"; + version = "1.2.1"; src = fetchFromGitea { domain = "codeberg.org"; owner = "rimgo"; repo = "rimgo"; rev = "v${version}"; - hash = "sha256-C878ABs978viVtIuv3fPn2F2anOg2GB/+f5jaCO13tc="; + hash = "sha256-C6xixULZCDs+rIP7IWBVQNo34Yk/8j9ell2D0nUoHBg="; }; vendorHash = "sha256-u5N7aI9RIQ3EmiyHv0qhMcKkvmpp+5G7xbzdQcbhybs="; diff --git a/pkgs/by-name/ri/river-bnf/package.nix b/pkgs/by-name/ri/river-bnf/package.nix new file mode 100644 index 000000000000..f869a6e2ff0c --- /dev/null +++ b/pkgs/by-name/ri/river-bnf/package.nix @@ -0,0 +1,42 @@ +{ lib +, stdenv +, fetchFromSourcehut +, wayland +, wayland-scanner +, unstableGitUpdater +}: + +stdenv.mkDerivation rec { + pname = "river-bnf"; + version = "unstable-2023-10-10"; + + src = fetchFromSourcehut { + owner = "~leon_plickat"; + repo = pname; + rev = "bb8ded380ed5d539777533065b4fd33646ad5603"; + hash = "sha256-rm9Nt3WLgq9QOXzrkYBGp45EALNYFTQGInxfYIN0XcU="; + }; + + nativeBuildInputs = [ + wayland-scanner + ]; + + buildInputs = [ + wayland.dev + ]; + + postPatch = '' + substituteInPlace Makefile --replace '/usr/local' $out + ''; + + passthru.updateScript = unstableGitUpdater { }; + + meta = { + description = "Switch back'n'forth between river tags"; + homepage = "https://git.sr.ht/~leon_plickat/river-bnf"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ adamcstephens ]; + mainProgram = "river-bnf"; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/sc/scala-update/package.nix b/pkgs/by-name/sc/scala-update/package.nix new file mode 100644 index 000000000000..d15292c4d32e --- /dev/null +++ b/pkgs/by-name/sc/scala-update/package.nix @@ -0,0 +1,47 @@ +{ lib, stdenv, coursier, buildGraalvmNativeImage }: + +let + baseName = "scala-update"; + version = "0.2.2"; + deps = stdenv.mkDerivation { + name = "${baseName}-deps-${version}"; + buildCommand = '' + export COURSIER_CACHE=$(pwd) + ${coursier}/bin/cs fetch io.github.kitlangton:scala-update_2.13:${version} > deps + mkdir -p $out/share/java + cp $(< deps) $out/share/java/ + ''; + outputHashMode = "recursive"; + outputHashAlgo = "sha256"; + outputHash = "kNnFzzHn+rFq4taqRYjBYaDax0MHW+vIoSFVN3wxA8M="; + }; +in buildGraalvmNativeImage { + pname = baseName; + inherit version; + + buildInputs = [ deps ]; + + src = "${deps}/share/java/${baseName}_2.13-${version}.jar"; + + extraNativeImageBuildArgs = + [ "--no-fallback" "--enable-url-protocols=https" "update.Main" ]; + + buildPhase = '' + runHook preBuild + + native-image ''${nativeImageBuildArgs[@]} -cp $(JARS=("${deps}/share/java"/*.jar); IFS=:; echo "''${JARS[*]}") + + runHook postBuild + ''; + + installCheckPhase = '' + $out/bin/${baseName} --version | grep -q "${version}" + ''; + + meta = with lib; { + description = "Update your Scala dependencies interactively"; + homepage = "https://github.com/kitlangton/scala-update"; + license = licenses.asl20; + maintainers = [ maintainers.rtimush ]; + }; +} diff --git a/pkgs/by-name/sc/scalingo/package.nix b/pkgs/by-name/sc/scalingo/package.nix new file mode 100644 index 000000000000..3b5682846987 --- /dev/null +++ b/pkgs/by-name/sc/scalingo/package.nix @@ -0,0 +1,32 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "scalingo"; + version = "1.29.1"; + + src = fetchFromGitHub { + owner = pname; + repo = "cli"; + rev = version; + hash = "sha256-xBf+LIwlpauJd/0xJIQdfEa0rxph3BJPuMY4+0s+Bb4="; + }; + + vendorHash = null; + + preCheck = '' + export HOME=$TMPDIR + ''; + + postInstall = '' + rm $out/bin/dists + ''; + + meta = with lib; { + description = "Command line client for the Scalingo PaaS"; + homepage = "https://doc.scalingo.com/platform/cli/start"; + changelog = "https://github.com/Scalingo/cli/blob/master/CHANGELOG.md"; + license = licenses.bsdOriginal; + maintainers = with maintainers; [ cimm ]; + platforms = with lib.platforms; unix; + }; +} diff --git a/pkgs/by-name/sc/scd2html/package.nix b/pkgs/by-name/sc/scd2html/package.nix new file mode 100644 index 000000000000..17cd4f211685 --- /dev/null +++ b/pkgs/by-name/sc/scd2html/package.nix @@ -0,0 +1,43 @@ +{ lib +, stdenv +, fetchFromSourcehut +, scdoc +}: + +stdenv.mkDerivation rec { + pname = "scd2html"; + version = "1.0.0"; + + src = fetchFromSourcehut { + owner = "~bitfehler"; + repo = pname; + rev = "v${version}"; + hash = "sha256-oZSHv5n/WOrvy77tC94Z8pYugLpHkcv7U1PrzR+8fHM="; + }; + + strictDeps = true; + + nativeBuildInputs = [ + scdoc + ]; + + postPatch = '' + substituteInPlace Makefile \ + --replace "LDFLAGS+=-static" "LDFLAGS+=" + ''; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + ]; + + enableParallelBuilding = true; + + meta = with lib; { + description = "scd2html generates HTML from scdoc source files"; + homepage = "https://git.sr.ht/~bitfehler/scd2html"; + license = licenses.mit; + maintainers = with maintainers; [ ianmjones ]; + platforms = platforms.linux; + mainProgram = "scd2html"; + }; +} diff --git a/pkgs/by-name/se/serial-unit-testing/package.nix b/pkgs/by-name/se/serial-unit-testing/package.nix new file mode 100644 index 000000000000..dd45dc760cf7 --- /dev/null +++ b/pkgs/by-name/se/serial-unit-testing/package.nix @@ -0,0 +1,40 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, udev +}: + +rustPlatform.buildRustPackage rec { + pname = "serial-unit-testing"; + version = "0.2.4"; + + src = fetchFromGitHub { + owner = "markatk"; + repo = "serial-unit-testing"; + rev = "v${version}"; + hash = "sha256-SLwTwEQdwbus9RFskFjU8m4fS9Pnp8HsgnKkBvTqmSI="; + }; + + cargoHash = "sha256-PoV2v0p0L3CTtC9VMAx2Z/ZsSAIFi2gh2TtOp64S6ZQ="; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + udev + ]; + + # tests require a serial port + doCheck = false; + + meta = with lib; { + description = "Automate testing of serial communication with any serial port device"; + homepage = "https://github.com/markatk/serial-unit-testing"; + changelog = "https://github.com/markatk/serial-unit-testing/blob/v${version}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ rudolfvesely ]; + mainProgram = "sut"; + }; +} diff --git a/pkgs/by-name/sh/shopware-cli/package.nix b/pkgs/by-name/sh/shopware-cli/package.nix index c89935687b9a..ac7a6ec1f18f 100644 --- a/pkgs/by-name/sh/shopware-cli/package.nix +++ b/pkgs/by-name/sh/shopware-cli/package.nix @@ -9,12 +9,12 @@ buildGoModule rec { pname = "shopware-cli"; - version = "0.3.5"; + version = "0.3.6"; src = fetchFromGitHub { repo = "shopware-cli"; owner = "FriendsOfShopware"; rev = version; - hash = "sha256-xjeko2aFnz3vjQqqn/VimYGg9lZaz5trDX5HC8a+XgE="; + hash = "sha256-3Js44cLS6GLI6wFuT2wxgwyMF3beXaULVeaejfxxtA0="; }; nativeBuildInputs = [ installShellFiles makeWrapper ]; diff --git a/pkgs/by-name/sp/spice-autorandr/package.nix b/pkgs/by-name/sp/spice-autorandr/package.nix new file mode 100644 index 000000000000..e79f4cb18bd9 --- /dev/null +++ b/pkgs/by-name/sp/spice-autorandr/package.nix @@ -0,0 +1,50 @@ +{ lib +, stdenv +, fetchFromGitHub +, pkg-config +, autoreconfHook +, libX11 +, libXrandr +}: + +stdenv.mkDerivation { + pname = "spice-autorandr"; + version = "0.0.2"; + + src = fetchFromGitHub { + owner = "seife"; + repo = "spice-autorandr"; + rev = "0f61dc921b638761ee106b5891384c6348820b26"; + hash = "sha256-eBvzalWT3xI8+uNns0/ZyRes91ePpj0beKb8UBVqo0E="; + }; + + nativeBuildInputs = [ autoreconfHook pkg-config ]; + buildInputs = [ libX11 libXrandr ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + cp $pname $out/bin/ + + runHook postInstall + ''; + + meta = { + description = "Automatically adjust the client window resolution in Linux KVM guests using the SPICE driver."; + longDescription = '' + Some desktop environments update the display resolution automatically, + this package is only useful when running without a DE or with a DE that + does not update display resolution automatically. + + This package relies on `spice-vdagent` running an updating the xrandr modes. Enable + `spice-vdagent` by adding `services.spice-autorandr.enable = true` to your `configuration.nix`. + ''; + homepage = "https://github.com/seife/spice-autorandr"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ + dmytrokyrychuk + ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/by-name/st/steamguard-cli/package.nix b/pkgs/by-name/st/steamguard-cli/package.nix new file mode 100644 index 000000000000..d93cfa4b281c --- /dev/null +++ b/pkgs/by-name/st/steamguard-cli/package.nix @@ -0,0 +1,37 @@ +{ installShellFiles +, lib +, rustPlatform +, fetchFromGitHub +}: + +rustPlatform.buildRustPackage rec { + pname = "steamguard-cli"; + version = "0.12.3"; + + src = fetchFromGitHub { + owner = "dyc3"; + repo = pname; + rev = "v${version}"; + hash = "sha256-qfyo63u6gBkGNxVBmFsz9YXs6duRU/VnFly40C13vI8="; + }; + + cargoHash = "sha256-B8/WCSHC905wDxYGLYVMT0QxgMiGR0/VMVzOlyTKPss="; + + nativeBuildInputs = [ installShellFiles ]; + postInstall = '' + installShellCompletion --cmd steamguard \ + --bash <($out/bin/steamguard completion --shell bash) \ + --fish <($out/bin/steamguard completion --shell fish) \ + --zsh <($out/bin/steamguard completion --shell zsh) \ + ''; + + meta = with lib; { + changelog = "https://github.com/dyc3/steamguard-cli/releases/tag/v${version}"; + description = "A linux utility for generating 2FA codes for Steam and managing Steam trade confirmations."; + homepage = "https://github.com/dyc3/steamguard-cli"; + license = with licenses; [ gpl3Only ]; + mainProgram = "steamguard"; + maintainers = with maintainers; [ surfaceflinger ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/su/supersonic/package.nix b/pkgs/by-name/su/supersonic/package.nix index 9b0fe4fd0634..db635f073a63 100644 --- a/pkgs/by-name/su/supersonic/package.nix +++ b/pkgs/by-name/su/supersonic/package.nix @@ -20,16 +20,16 @@ assert waylandSupport -> stdenv.isLinux; buildGoModule rec { pname = "supersonic" + lib.optionalString waylandSupport "-wayland"; - version = "0.5.2"; + version = "0.6.0"; src = fetchFromGitHub { owner = "dweymouth"; repo = "supersonic"; rev = "v${version}"; - hash = "sha256-4SLAUqLMoUxTSi4I/QeHqudO62Gmhpm1XbCGf+3rPlc="; + hash = "sha256-elDVkhRW1mTez56OKQJJ0m0VxP8/Bq+HcXf5iokeY5I="; }; - vendorHash = "sha256-6Yp5OoybFpoBuIKodbwnyX3crLCl8hJ2r4plzo0plsY="; + vendorHash = "sha256-z1sDlyc7HW+tYfG0Z4EjUCEM3Su4JjmWIKxU2MV6GOA="; nativeBuildInputs = [ copyDesktopItems @@ -62,6 +62,7 @@ buildGoModule rec { darwin.apple_sdk_11_0.frameworks.Kernel darwin.apple_sdk_11_0.frameworks.OpenGL darwin.apple_sdk_11_0.frameworks.UserNotifications + darwin.apple_sdk_11_0.frameworks.MediaPlayer ]; postInstall = '' diff --git a/pkgs/by-name/sw/swipe-guess/package.nix b/pkgs/by-name/sw/swipe-guess/package.nix new file mode 100644 index 000000000000..2f6d5f8fe9a5 --- /dev/null +++ b/pkgs/by-name/sw/swipe-guess/package.nix @@ -0,0 +1,39 @@ +{ lib +, stdenv +, fetchFromSourcehut +}: + +stdenv.mkDerivation rec { + pname = "swipe-guess"; + version = "0.2.1"; + + src = fetchFromSourcehut { + owner = "~earboxer"; + repo = "swipeGuess"; + rev = "v${version}"; + hash = "sha256-8bPsnqjLeeZ7btTre9j1T93VWY9+FdBdJdxyvBVt34s="; + }; + + dontConfigure = true; + + buildPhase = '' + runHook preBuild + + ${lib.getExe stdenv.cc} swipeGuess.c -o swipeGuess + + runHook postBuild + ''; + + postInstall = '' + install -Dm555 swipeGuess -t $out/bin + ''; + + meta = { + description = "Completion plugin for touchscreen-keyboards on mobile devices"; + homepage = "https://git.sr.ht/~earboxer/swipeGuess/"; + license = lib.licenses.agpl3Only; + mainProgram = "swipeGuess"; + maintainers = with lib.maintainers; [ eclairevoyant ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/by-name/sy/symbolicator/Cargo.lock b/pkgs/by-name/sy/symbolicator/Cargo.lock index 6657c265645d..1752195bb12a 100644 --- a/pkgs/by-name/sy/symbolicator/Cargo.lock +++ b/pkgs/by-name/sy/symbolicator/Cargo.lock @@ -29,9 +29,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "aho-corasick" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea5d730647d4fadd988536d06fecce94b7b4f2a7efdae548f1cf4b63205518ab" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" dependencies = [ "memchr", ] @@ -157,14 +157,14 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] name = "async-compression" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb42b2197bf15ccb092b62c74515dbd8b86d0effd934795f6687c93b6e679a2c" +checksum = "f658e2baef915ba0f26f1f7c42bfb8e12f532a01f449a090ded75ae7a07e9ba2" dependencies = [ "brotli", "flate2", @@ -185,13 +185,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.73" +version = "0.1.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -716,7 +716,7 @@ version = "0.68.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "cexpr", "clang-sys", "lazy_static", @@ -729,7 +729,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.37", + "syn 2.0.38", "which", ] @@ -741,9 +741,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "block-buffer" @@ -816,9 +816,9 @@ checksum = "ad152d03a2c813c80bb94fedbf3a3f02b28f793e39e7c214c8a0bcc196343de7" [[package]] name = "byteorder" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" @@ -883,9 +883,9 @@ dependencies = [ [[package]] name = "cargo-platform" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cfa25e60aea747ec7e1124f238816749faa93759c6ff5b31f1ccdda137f4479" +checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36" dependencies = [ "serde", ] @@ -898,7 +898,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.19", + "semver 1.0.20", "serde", "serde_json", ] @@ -991,7 +991,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -1222,10 +1222,11 @@ dependencies = [ [[package]] name = "deranged" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" dependencies = [ + "powerfmt", "serde", ] @@ -1353,26 +1354,15 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "add4f07d43996f76ef320709726a556a9d4f965d9410d8d0271132d2f8293480" +checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" dependencies = [ - "errno-dragonfly", "libc", "windows-sys 0.48.0", ] [[package]] -name = "errno-dragonfly" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" -dependencies = [ - "cc", - "libc", -] - -[[package]] name = "error-chain" version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1431,9 +1421,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" +checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" dependencies = [ "crc32fast", "miniz_oxide", @@ -1478,7 +1468,7 @@ dependencies = [ "pmutil", "proc-macro2", "swc_macros_common", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -1537,7 +1527,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -1917,9 +1907,9 @@ dependencies = [ [[package]] name = "insta" -version = "1.33.0" +version = "1.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa511b2e298cd49b1856746f6bb73e17036bcd66b25f5e92cdcdbec9bd75686" +checksum = "5d64600be34b2fcfc267740a243fa7744441bb4947a619ac4e5bb6507f35fbfc" dependencies = [ "console", "lazy_static", @@ -1977,7 +1967,7 @@ dependencies = [ "pmutil", "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -2028,9 +2018,9 @@ dependencies = [ [[package]] name = "jobserver" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" +checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" dependencies = [ "libc", ] @@ -2172,9 +2162,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.148" +version = "0.2.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" +checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" [[package]] name = "libloading" @@ -2194,9 +2184,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.4.8" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3852614a3bd9ca9804678ba6be5e3b8ce76dfc902cae004e3e0c44051b6e88db" +checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" [[package]] name = "lock_api" @@ -2340,7 +2330,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b23ab3a13de24f89fa3060579288f142ac4d138d37eec8a398ba59b0ca4d577" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "debugid", "num-derive", "num-traits", @@ -2564,13 +2554,13 @@ dependencies = [ [[package]] name = "num-derive" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e6a0fd4f737c707bd9086cc16c925f294943eb62eb71499e9fd4cf71f8b9f4e" +checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -2585,9 +2575,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" dependencies = [ "autocfg", ] @@ -2632,7 +2622,7 @@ version = "0.10.57" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bac25ee399abb46215765b1cb35bc0212377e58a061560d8b29b024fd0430e7c" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "cfg-if", "foreign-types", "libc", @@ -2649,7 +2639,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -2824,7 +2814,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -2874,7 +2864,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -2909,10 +2899,16 @@ checksum = "52a40bc70c2c58040d2d8b167ba9a5ff59fc9dab7ad44771cfde3dcfde7a09c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] name = "ppv-lite86" version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2931,7 +2927,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -2950,16 +2946,16 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.67" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d433d9f1a3e8c1263d9456598b16fec66f4acc9a74dacffd35c7bb09b3a1328" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" dependencies = [ "unicode-ident", ] [[package]] name = "process-event" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "clap", @@ -3130,14 +3126,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.9.6" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebee201405406dbf528b8b672104ae6d6d63e6d118cb10e4d51abbc7b58044ff" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.3.9", - "regex-syntax 0.7.5", + "regex-automata 0.4.3", + "regex-syntax 0.8.2", ] [[package]] @@ -3151,13 +3147,13 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.3.9" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b23e92ee4318893fa3fe3e6fb365258efbfe6ac6ab30f090cdcbb7aa37efa9" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.7.5", + "regex-syntax 0.8.2", ] [[package]] @@ -3168,9 +3164,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.7.5" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "reqwest" @@ -3265,16 +3261,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.19", + "semver 1.0.20", ] [[package]] name = "rustix" -version = "0.38.15" +version = "0.38.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2f9da0cbd88f9f09e7814e388301c8414c51c62aa6ce1e4b5c551d49d96e531" +checksum = "745ecfa778e66b2b63c88a61cb36e0eea109e803b0b86bf9879fbc77c70e86ed" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "errno", "libc", "linux-raw-sys", @@ -3383,7 +3379,7 @@ checksum = "1db149f81d46d2deba7cd3c50772474707729550221e69588478ebf9ada425ae" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -3430,9 +3426,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad977052201c6de01a8ef2aa3378c4bd23217a056337d1d6da40468d267a4fb0" +checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" dependencies = [ "serde", ] @@ -3580,22 +3576,22 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.188" +version = "1.0.189" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" +checksum = "8e422a44e74ad4001bdc8eede9a4570ab52f71190e9c076d14369f38b9200537" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.188" +version = "1.0.189" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" +checksum = "1e48d1f918009ce3145511378cf68d613e3b3d9137d67272562080d68a2b32d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -3688,9 +3684,9 @@ dependencies = [ [[package]] name = "sharded-slab" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1b21f559e07218024e7e9f90f96f601825397de0e25420135f7f952453fed0b" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" dependencies = [ "lazy_static", ] @@ -3723,9 +3719,9 @@ dependencies = [ [[package]] name = "similar" -version = "2.2.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "420acb44afdae038210c99e69aae24109f32f15500aa708e81d46c9f29d55fcf" +checksum = "2aeaf503862c419d66959f5d7ca015337d864e9c49485d771b732e2a20453597" [[package]] name = "simple_asn1" @@ -3783,7 +3779,7 @@ checksum = "0eb01866308440fc64d6c44d9e86c5cc17adfe33c4d6eed55da9145044d0ffc1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -3906,7 +3902,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -3967,7 +3963,7 @@ version = "0.106.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebf4d6804b1da4146c4c0359d129e3dd43568d321f69d7953d9abbca4ded76ba" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "is-macro", "num-bigint", "scoped-tls", @@ -4020,7 +4016,7 @@ dependencies = [ "pmutil", "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -4032,7 +4028,7 @@ dependencies = [ "pmutil", "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -4056,7 +4052,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -4204,7 +4200,7 @@ dependencies = [ [[package]] name = "symbolicator" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "axum", @@ -4222,6 +4218,7 @@ dependencies = [ "symbolic", "symbolicator-crash", "symbolicator-js", + "symbolicator-native", "symbolicator-service", "symbolicator-sources", "symbolicator-test", @@ -4241,7 +4238,7 @@ dependencies = [ [[package]] name = "symbolicator-crash" -version = "23.10.0" +version = "23.10.1" dependencies = [ "bindgen", "cmake", @@ -4249,7 +4246,7 @@ dependencies = [ [[package]] name = "symbolicator-js" -version = "23.10.0" +version = "23.10.1" dependencies = [ "data-url", "futures", @@ -4274,20 +4271,47 @@ dependencies = [ ] [[package]] -name = "symbolicator-service" -version = "23.10.0" +name = "symbolicator-native" +version = "23.10.1" dependencies = [ "anyhow", "apple-crash-report-parser", "async-trait", + "chrono", + "futures", + "insta", + "minidump", + "minidump-processor", + "minidump-unwind", + "moka", + "once_cell", + "regex", + "sentry", + "serde", + "serde_json", + "symbolic", + "symbolicator-service", + "symbolicator-sources", + "symbolicator-test", + "tempfile", + "test-assembler", + "thiserror", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "symbolicator-service" +version = "23.10.1" +dependencies = [ + "anyhow", "aws-config", "aws-credential-types", "aws-sdk-s3", "aws-types", - "backtrace", "cadence", "chrono", - "data-url", "filetime", "flate2", "futures", @@ -4295,18 +4319,11 @@ dependencies = [ "humantime", "humantime-serde", "idna 0.4.0", - "insta", "ipnetwork", "jsonwebtoken", - "lazy_static", - "minidump", - "minidump-processor", - "minidump-unwind", "moka", "once_cell", - "parking_lot 0.12.1", "rand", - "regex", "reqwest", "sentry", "serde", @@ -4318,7 +4335,6 @@ dependencies = [ "symbolicator-sources", "symbolicator-test", "tempfile", - "test-assembler", "thiserror", "tokio", "tokio-util", @@ -4331,13 +4347,13 @@ dependencies = [ [[package]] name = "symbolicator-sources" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "aws-types", "glob", "insta", - "lazy_static", + "once_cell", "serde", "serde_yaml", "symbolic", @@ -4346,7 +4362,7 @@ dependencies = [ [[package]] name = "symbolicator-stress" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "axum", @@ -4358,6 +4374,7 @@ dependencies = [ "serde_json", "serde_yaml", "symbolicator-js", + "symbolicator-native", "symbolicator-service", "symbolicator-test", "tempfile", @@ -4367,7 +4384,7 @@ dependencies = [ [[package]] name = "symbolicator-test" -version = "23.10.0" +version = "23.10.1" dependencies = [ "axum", "humantime", @@ -4385,7 +4402,7 @@ dependencies = [ [[package]] name = "symbolicli" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "clap", @@ -4397,6 +4414,7 @@ dependencies = [ "serde_yaml", "symbolic", "symbolicator-js", + "symbolicator-native", "symbolicator-service", "symbolicator-sources", "tempfile", @@ -4409,13 +4427,13 @@ dependencies = [ [[package]] name = "symsorter" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "chrono", "clap", "console", - "lazy_static", + "once_cell", "rayon", "regex", "serde", @@ -4439,9 +4457,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.37" +version = "2.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7303ef2c05cd654186cb250d29049a24840ca25d2747c25c0381c8d9e2f582e8" +checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" dependencies = [ "proc-macro2", "quote", @@ -4522,7 +4540,7 @@ checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] @@ -4537,14 +4555,15 @@ dependencies = [ [[package]] name = "time" -version = "0.3.29" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" dependencies = [ "deranged", "itoa", "libc", "num_threads", + "powerfmt", "serde", "time-core", "time-macros", @@ -4582,9 +4601,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.32.0" +version = "1.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" +checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" dependencies = [ "backtrace", "bytes", @@ -4605,14 +4624,14 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] name = "tokio-metrics" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4b2fc67d5dec41db679b9b052eb572269616926040b7831e32c8a152df77b84" +checksum = "eace09241d62c98b7eeb1107d4c5c64ca3bd7da92e8c218c153ab3a78f9be112" dependencies = [ "futures-util", "pin-project-lite", @@ -4721,7 +4740,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "bytes", "futures-core", "futures-util", @@ -4754,11 +4773,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.37" +version = "0.1.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +checksum = "ee2ef2af84856a50c1d430afce2fdded0a4ec7eda868db86409b4543df0797f9" dependencies = [ - "cfg-if", "log", "pin-project-lite", "tracing-attributes", @@ -4767,20 +4785,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", ] [[package]] name = "tracing-core" -version = "0.1.31" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", "valuable", @@ -5104,7 +5122,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", "wasm-bindgen-shared", ] @@ -5138,7 +5156,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn 2.0.38", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5151,7 +5169,7 @@ checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasm-split" -version = "23.10.0" +version = "23.10.1" dependencies = [ "anyhow", "clap", @@ -5421,9 +5439,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "winnow" -version = "0.5.15" +version = "0.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc" +checksum = "a3b801d0e0a6726477cc207f60162da452f3a95adb368399bef20a946e06f65c" dependencies = [ "memchr", ] @@ -5499,30 +5517,28 @@ dependencies = [ [[package]] name = "zstd" -version = "0.12.4" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" +checksum = "bffb3309596d527cfcba7dfc6ed6052f1d39dfbd7c867aa2e865e4a449c10110" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "6.0.6" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" +checksum = "43747c7422e2924c11144d5229878b98180ef8b06cca4ab5af37afc8a8d8ea3e" dependencies = [ - "libc", "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.8+zstd.1.5.5" +version = "2.0.9+zstd.1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c" +checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" dependencies = [ "cc", - "libc", "pkg-config", ] diff --git a/pkgs/by-name/sy/symbolicator/package.nix b/pkgs/by-name/sy/symbolicator/package.nix index 56891611f981..c744f572a59e 100644 --- a/pkgs/by-name/sy/symbolicator/package.nix +++ b/pkgs/by-name/sy/symbolicator/package.nix @@ -11,13 +11,13 @@ rustPlatform.buildRustPackage rec { pname = "symbolicator"; - version = "23.10.0"; + version = "23.10.1"; src = fetchFromGitHub { owner = "getsentry"; repo = "symbolicator"; rev = version; - hash = "sha256-yD1uXqFN1T7bgbW20zu7VauELZTsTPpv4sdtVa/Xc3I="; + hash = "sha256-G8ElLH6u07uJR2Jz05rM59tnVADaDQ768lK477NuWuM="; fetchSubmodules = true; }; diff --git a/pkgs/by-name/sy/syncrclone/package.nix b/pkgs/by-name/sy/syncrclone/package.nix new file mode 100644 index 000000000000..b4a24b574608 --- /dev/null +++ b/pkgs/by-name/sy/syncrclone/package.nix @@ -0,0 +1,31 @@ +{ lib +, python3 +, fetchFromGitHub +}: + +python3.pkgs.buildPythonApplication rec { + pname = "syncrclone"; + version = "unstable-2023-03-23"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "jwink3101"; + repo = "syncrclone"; + rev = "137c9c4cc737a383b23cd9a5a21bb079e6a8fc59"; + hash = "sha256-v81hPeu5qnMG6Sb95D88jy5x/GO781bf7efCYjbOaxs="; + }; + + pythonImportsCheck = [ + "syncrclone" + ]; + + meta = with lib; { + description = "Bidirectional sync tool for rclone"; + homepage = "https://github.com/Jwink3101/syncrclone"; + changelog = "https://github.com/Jwink3101/syncrclone/blob/${src.rev}/docs/changelog.md"; + sourceProvenance = with sourceTypes; [ fromSource ]; + license = licenses.mit; + maintainers = with maintainers; [ prominentretail ]; + mainProgram = "syncrclone"; + }; +} diff --git a/pkgs/by-name/sy/synthesia/package.nix b/pkgs/by-name/sy/synthesia/package.nix new file mode 100644 index 000000000000..44c48bb59b03 --- /dev/null +++ b/pkgs/by-name/sy/synthesia/package.nix @@ -0,0 +1,76 @@ +{ lib +, fetchurl +, stdenvNoCC +, runtimeShell +, copyDesktopItems +, makeDesktopItem +, wineWowPackages +}: + +let + icon = fetchurl { + name = "synthesia.png"; + url = "https://cdn.synthesia.app/images/headerIcon.png"; + hash = "sha256-M9cQqHwwjko5pchdNtIMjYwd4joIvBphAYnpw73qYzM="; + }; +in +stdenvNoCC.mkDerivation rec { + pname = "synthesia"; + version = "10.9"; + + desktopItems = [ + (makeDesktopItem { + name = pname; + desktopName = "Synthesia"; + comment = meta.description; + exec = pname; + icon = pname; + categories = [ "Game" "Audio" ]; + startupWMClass = "synthesia.exe"; + }) + ]; + + nativeBuildInputs = [ + copyDesktopItems + wineWowPackages.stable + ]; + + src = fetchurl { + url = "https://cdn.synthesia.app/files/Synthesia-${version}-installer.exe"; + hash = "sha256-BFTsbesfMqxY1731ss6S0w8BcUaoqjVrr62VeU1BfrU="; + }; + + dontUnpack = true; + + dontBuild = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/bin + cat <<'EOF' > $out/bin/${pname} + #!${runtimeShell} + export PATH=${wineWowPackages.stable}/bin:$PATH + export WINEARCH=win64 + export WINEPREFIX="''${SYNTHESIA_HOME:-"''${XDG_DATA_HOME:-"''${HOME}/.local/share"}/${pname}"}/wine" + export WINEDLLOVERRIDES="mscoree=" # disable mono + if [ ! -d "$WINEPREFIX" ] ; then + mkdir -p "$WINEPREFIX" + wine ${src} /S + fi + wine "$WINEPREFIX/drive_c/Program Files (x86)/Synthesia/Synthesia.exe" + EOF + chmod +x $out/bin/${pname} + install -Dm644 ${icon} $out/share/icons/hicolor/48x48/apps/${pname}.png + runHook postInstall + ''; + + meta = with lib; { + description = "A fun way to learn how to play the piano"; + homepage = "https://synthesiagame.com/"; + downloadPage = "https://synthesiagame.com/download"; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + license = licenses.unfree; + maintainers = with maintainers; [ ners ]; + platforms = wineWowPackages.stable.meta.platforms; + }; +} diff --git a/pkgs/by-name/sy/systemctl-tui/package.nix b/pkgs/by-name/sy/systemctl-tui/package.nix new file mode 100644 index 000000000000..5da79686b5f8 --- /dev/null +++ b/pkgs/by-name/sy/systemctl-tui/package.nix @@ -0,0 +1,30 @@ +{ lib +, rustPlatform +, fetchCrate +, stdenv +, darwin +}: + +rustPlatform.buildRustPackage rec { + pname = "systemctl-tui"; + version = "0.2.2"; + + src = fetchCrate { + inherit pname version; + hash = "sha256-q/LzehMspiqxQOgALh1smhmL1803xr4GzIw9t+jE6NM="; + }; + + cargoHash = "sha256-GNuWag8Y1aSkBMzXcHpwfVU80zmhusLIOrKtZSe/jI0="; + + buildInputs = lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.AppKit + ]; + + meta = with lib; { + description = "A simple TUI for interacting with systemd services and their logs"; + homepage = "https://crates.io/crates/systemctl-tui"; + license = licenses.mit; + maintainers = with maintainers; [ siph ]; + mainProgram = "systemctl-tui"; + }; +} diff --git a/pkgs/by-name/ta/taschenrechner/package.nix b/pkgs/by-name/ta/taschenrechner/package.nix new file mode 100644 index 000000000000..eeb2b841abff --- /dev/null +++ b/pkgs/by-name/ta/taschenrechner/package.nix @@ -0,0 +1,27 @@ +{ lib +, rustPlatform +, fetchFromGitLab +}: + +rustPlatform.buildRustPackage rec { + pname = "taschenrechner"; + version = "1.3.0"; + + src = fetchFromGitLab { + domain = "gitlab.fem-net.de"; + owner = "mabl"; + repo = "taschenrechner"; + rev = version; + hash = "sha256-PF9VCdlgA4c4Qw8Ih3JT29/r2e7i162lVAbW1QSOlWo="; + }; + + cargoHash = "sha256-SFgStvpcqEwus1JBs5ZyMHO1UD0oWV7mvS6o4v5gIFc="; + + meta = with lib; { + description = "A cli-calculator written in Rust"; + homepage = "https://gitlab.fem-net.de/mabl/taschenrechner"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ netali ]; + mainProgram = "taschenrechner"; + }; +} diff --git a/pkgs/by-name/te/tecoc/package.nix b/pkgs/by-name/te/tecoc/package.nix new file mode 100644 index 000000000000..a5531b3aa874 --- /dev/null +++ b/pkgs/by-name/te/tecoc/package.nix @@ -0,0 +1,80 @@ +{ stdenv +, lib +, fetchFromGitHub +, ncurses +, unstableGitUpdater +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "tecoc"; + version = "unstable-2023-06-21"; + + src = fetchFromGitHub { + owner = "blakemcbride"; + repo = "TECOC"; + rev = "b4a96395a18c7e64ccaef0e25fdde3b7ef33ac4b"; + hash = "sha256-KTOGsTtxJh2sneU2VoDNUHcL3m8zt+3rBZTDvK1n02A="; + }; + + buildInputs = [ ncurses ]; + + makefile = if stdenv.hostPlatform.isDarwin + then "makefile.osx" + else if stdenv.hostPlatform.isFreeBSD + then "makefile.bsd" + else if stdenv.hostPlatform.isOpenBSD + then "makefile.bsd" + else if stdenv.hostPlatform.isWindows + then "makefile.win" + else "makefile.linux"; # I think Linux is a safe default... + + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "-C src/" ]; + + installPhase = '' + runHook preInstall + + install -d $out/bin $out/share/doc/tecoc $out/lib/teco/macros + install -m755 src/tecoc $out/bin + install -m644 src/aaout.txt doc/* $out/share/doc/tecoc + install -m644 lib/* lib2/* $out/lib/teco/macros + + runHook postInstall + ''; + + postFixup = '' + pushd $out/bin + ln -s tecoc Make + ln -s tecoc mung + ln -s tecoc teco + ln -s tecoc Inspect + popd + ''; + + passthru.updateScript = unstableGitUpdater { + url = finalAttrs.meta.homepage; + }; + + meta = { + homepage = "https://github.com/blakemcbride/TECOC"; + description = "A clone of the good old TECO editor"; + longDescription = '' + For those who don't know: TECO is the acronym of Tape Editor and COrrector + (because it was a paper tape edition tool in its debut days). Now the + acronym follows after Text Editor and Corrector, or Text Editor + Character-Oriented. + + TECO is a character-oriented text editor, originally developed by Dan + Murphy at MIT circa 1962. It is also a Turing-complete imperative + interpreted programming language for text manipulation, done via + user-loaded sets of macros. In fact, the venerable Emacs was born as a set + of Editor MACroS for TECO. + + TECOC is a portable C implementation of TECO-11. + ''; + license = { + url = "https://github.com/blakemcbride/TECOC/blob/${finalAttrs.src.rev}/doc/readme-1st.txt"; + }; + maintainers = [ lib.maintainers.AndersonTorres ]; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/by-name/te/textsnatcher/package.nix b/pkgs/by-name/te/textsnatcher/package.nix new file mode 100644 index 000000000000..21b75c31a37f --- /dev/null +++ b/pkgs/by-name/te/textsnatcher/package.nix @@ -0,0 +1,62 @@ +{ lib +, stdenv +, fetchFromGitHub +, meson +, ninja +, vala +, wrapGAppsHook +, pkg-config +, pantheon +, libhandy +, libportal +, glib +, gtk3 +, desktop-file-utils +, scrot +, tesseract +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "textsnatcher"; + version = "2.0.0"; + + src = fetchFromGitHub { + owner = "RajSolai"; + repo = "TextSnatcher"; + rev = "v${finalAttrs.version}"; + hash = "sha256-phqtPjwKB5BoCpL+cMeHvRLL76ZxQ5T74cpAsgN+/JM="; + }; + + nativeBuildInputs = [ + meson + ninja + vala + pkg-config + desktop-file-utils + wrapGAppsHook + ]; + + buildInputs = [ + pantheon.granite + libhandy + libportal + gtk3 + glib + ]; + + preFixup = '' + gappsWrapperArgs+=( + --prefix PATH : ${lib.makeBinPath [ scrot tesseract ]} + ) + ''; + + meta = with lib; { + description = "Copy Text from Images with ease, Perform OCR operations in seconds"; + homepage = "https://textsnatcher.rf.gd/"; + changelog = "https://github.com/RajSolai/TextSnatcher/releases/tag/v${finalAttrs.version}"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ galaxy ]; + mainProgram = "com.github.rajsolai.textsnatcher"; + platforms = platforms.linux; + }; +}) diff --git a/pkgs/by-name/tk/tkdiff/189.patch b/pkgs/by-name/tk/tkdiff/189.patch new file mode 100644 index 000000000000..c638727d3bd4 --- /dev/null +++ b/pkgs/by-name/tk/tkdiff/189.patch @@ -0,0 +1,71 @@ +Index: tkdiff +=================================================================== +diff --git a/tkdiff b/tkdiff +--- a/tkdiff (revision 188) ++++ b/tkdiff (revision 189) +@@ -111,7 +111,7 @@ + } + + # Determine the name of the temporary directory, the rc file name, +-# and possible VPATH EnvVar, all of which are platform dependent. ++# NULLdev, and possible VPATH EnvVar, all of which are platform dependent. + # + # Much MAY likely be overridden by a preference in .tkdiffrc, + # EXCEPT (obviously) when no such file actually exists yet +@@ -126,6 +126,9 @@ + set opts(tmpdir) C:/temp + } + ++ # Reserved filename which is actually a NULL device ++ set opts(NULLdev) "nul" ++ + # Split up and store a VPATH if it exists + if {[info exists ::env(VPATH)]} { + set finfo(Vpath) [split $::env(VPATH) ";"] +@@ -145,6 +148,9 @@ + set opts(tmpdir) $::env(TMPDIR) + } {set opts(tmpdir) /tmp } + ++ # Reserved filename which is actually a NULL device (Unix-like platforms) ++ set opts(NULLdev) "/dev/null" ++ + # Split up and store a VPATH if it exists + if {[info exists ::env(VPATH)]} { + set finfo(Vpath) [split $::env(VPATH) ":"] +@@ -2106,7 +2112,7 @@ + # 1 Failed (PLUS a 'pushed' HARD-error message to the caller) + ############################################################################### + proc get-file {fn ndx {probe 0}} { +- global g finfo ++ global g opts finfo + + # Ancestor files are stored into a slightly adjusted array element name + # N.B> 'ndx' AS PASSED *can* be an EXPRESSION (not just a number): resolve! +@@ -2121,7 +2127,7 @@ + } elseif {!$tildechk} { + # DO NOT REPORT non-existence if this attempt was ONLY a probe + if {$probe} { return 1 } { set MSG "File '$fn' does not exist" } +- } elseif {[file isfile $fn]} { ++ } elseif {[file isfile $fn] || $fn == $opts(NULLdev)} { + set finfo(${A}lbl,$ndx) [shortNm [set finfo(${A}pth,$ndx) "$fn"]] + } else { set MSG "'$fn' exists, but is not a file" } + +@@ -2857,7 +2863,7 @@ + # Align various label decorations to the CURRENT input file pairing + ############################################################################### + proc alignDecor {pairnum} { +- global g w finfo ++ global g w opts finfo + + # Establish if 3way mode is NOW active and what file indices are in use + set g(is3way) [info exists finfo(albl,$pairnum)] +@@ -2874,7 +2880,8 @@ + set finfo(lbl,$LR) $finfo(ulbl,$ndx($n)) ;# Override lbl display + } else {set finfo(lbl,$LR) $finfo(lbl,$ndx($n))} + +- if {![info exists finfo(tmp,$ndx($n))]} { ++ if {![info exists finfo(tmp,$ndx($n))] \ ++ && $finfo(pth,$ndx($n)) != $opts(NULLdev)} { + # (N.B> Tip data will ALSO be used by report generation heading) + set g(tooltip,${LR}Label) "{$finfo(pth,$ndx($n))\n" + append g(tooltip,${LR}Label) \ diff --git a/pkgs/by-name/tk/tkdiff/package.nix b/pkgs/by-name/tk/tkdiff/package.nix new file mode 100644 index 000000000000..478ee4e29ff9 --- /dev/null +++ b/pkgs/by-name/tk/tkdiff/package.nix @@ -0,0 +1,43 @@ +{ diffutils, fetchzip, lib, makeBinaryWrapper, stdenv, tk }: + +stdenv.mkDerivation (finalAttrs: { + pname = "tkdiff"; + version = "5.6"; + + src = fetchzip { + url = "mirror://sourceforge/tkdiff/tkdiff-${builtins.replaceStrings ["."] ["-"] finalAttrs.version}.zip"; + hash = "sha256-EpbIdjsejkkTaSpoZRM5AHz0r1Cio+YzRryK0BoghBk="; + }; + + # fix regression: allow /dev/null again. eg: "tkdiff /dev/null file" + # svn diff --git -r188:189 https://svn.code.sf.net/p/tkdiff/code/trunk + patches = [ ./189.patch ]; + + nativeBuildInputs = [ makeBinaryWrapper ]; + + installPhase = '' + runHook preInstall + + install -Dm755 -t $out/bin tkdiff + wrapProgram $out/bin/tkdiff \ + --prefix PATH : ${lib.makeBinPath [ diffutils tk ]} + + runHook postInstall + ''; + + meta = { + description = "A graphical front end to the diff program"; + homepage = "https://tkdiff.sourceforge.io/"; + license = lib.licenses.gpl2Plus; + longDescription = '' + TkDiff is a graphical front end to the diff program. It provides a + side-by-side view of the differences between two text files, along + with several innovative features such as diff bookmarks, a graphical + map of differences for quick navigation, and a facility for slicing + diff regions to achieve exactly the merge output desired. + ''; + mainProgram = "tkdiff"; + maintainers = with lib.maintainers; [ robert-manchester ]; + platforms = tk.meta.platforms; + }; +}) diff --git a/pkgs/by-name/tp/tpm2-totp/package.nix b/pkgs/by-name/tp/tpm2-totp/package.nix new file mode 100644 index 000000000000..766c6e138af6 --- /dev/null +++ b/pkgs/by-name/tp/tpm2-totp/package.nix @@ -0,0 +1,46 @@ +{ lib +, stdenv +, fetchFromGitHub +, tpm2-tss +, autoreconfHook +, autoconf-archive +, pkg-config +, qrencode +}: + +stdenv.mkDerivation rec { + pname = "tpm2-totp"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "tpm2-software"; + repo = "tpm2-totp"; + rev = "v${version}"; + hash = "sha256-aeWhI2GQcWa0xAqlmHfcbCMg78UqcD6eanLlEVNVnRM="; + }; + + preConfigure = '' + echo '0.3.0' > VERSION + ''; + + nativeBuildInputs = [ + autoreconfHook + autoconf-archive + pkg-config + ]; + + buildInputs = [ + tpm2-tss + qrencode + ]; + + meta = with lib; { + description = "Attest the trustworthiness of a device against a human using time-based one-time passwords"; + homepage = "https://github.com/tpm2-software/tpm2-totp"; + changelog = "https://github.com/tpm2-software/tpm2-totp/blob/${src.rev}/CHANGELOG.md"; + license = licenses.bsd3; + mainProgram = "tpm2-totp"; + platforms = platforms.all; + maintainers = with maintainers; [ raitobezarius ]; + }; +} diff --git a/pkgs/by-name/tr/trealla/package.nix b/pkgs/by-name/tr/trealla/package.nix index 1a9d5569f235..6aee9c1598b9 100644 --- a/pkgs/by-name/tr/trealla/package.nix +++ b/pkgs/by-name/tr/trealla/package.nix @@ -17,13 +17,13 @@ assert lib.elem lineEditingLibrary [ "isocline" "readline" ]; stdenv.mkDerivation (finalAttrs: { pname = "trealla"; - version = "2.28.12"; + version = "2.29.36"; src = fetchFromGitHub { owner = "trealla-prolog"; repo = "trealla"; rev = "v${finalAttrs.version}"; - hash = "sha256-uWCpCjYFtK2pNeHHZWhWI6YZ+cllQpkKz//nHracl5s="; + hash = "sha256-tQp2DOBW71Wm1aQqspW9tuH8aM8ir+ilZiENdElB/+0="; }; postPatch = '' diff --git a/pkgs/by-name/tr/trunk-ng/package.nix b/pkgs/by-name/tr/trunk-ng/package.nix index 0ba415d1bb96..6c8b7055fc68 100644 --- a/pkgs/by-name/tr/trunk-ng/package.nix +++ b/pkgs/by-name/tr/trunk-ng/package.nix @@ -3,13 +3,13 @@ rustPlatform.buildRustPackage rec { pname = "trunk-ng"; - version = "0.17.8"; + version = "0.17.10"; src = fetchFromGitHub { owner = "ctron"; repo = "trunk"; rev = "v${version}"; - hash = "sha256-ycZIqDBZccPapOK0ZI9Cvq94tRxChrsWX1rhyWh0S2c="; + hash = "sha256-F2g/GMxnS5r44i3NIJGOic9f+H5+JbFi3dqMqI6h6JQ="; }; nativeBuildInputs = [ pkg-config ]; @@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec { # requires network checkFlags = [ "--skip=tools::tests::download_and_install_binaries" ]; - cargoHash = "sha256-URHArTog34JcuxXHzTQBjQOFMffarNb51d9sUOfjm6c="; + cargoHash = "sha256-37nCqRTgbsg2cXu4xwYC/qfodPIxx97Qns8FQe9NroQ="; meta = with lib; { homepage = "https://github.com/ctron/trunk"; diff --git a/pkgs/by-name/tu/tusc-sh/package.nix b/pkgs/by-name/tu/tusc-sh/package.nix index e370deec9bd0..387b68f85222 100644 --- a/pkgs/by-name/tu/tusc-sh/package.nix +++ b/pkgs/by-name/tu/tusc-sh/package.nix @@ -10,13 +10,13 @@ let tusc = stdenvNoCC.mkDerivation (finalAttrs: { pname = "tusc-sh"; - version = "1.0.2"; + version = "1.1.0"; src = fetchFromGitHub { owner = "adhocore"; repo = "tusc.sh"; rev = finalAttrs.version; - hash = "sha256-RFgQMYit12pmWnEAE1cyl34SFW87xEbS7gq5Nyel/ss="; + hash = "sha256-9bTv6ih9N3nPtY5fioZvUCSvCHHB0+yVpxA++z8uGWY="; }; dontConfigure = true; diff --git a/pkgs/by-name/ui/uiua/package.nix b/pkgs/by-name/ui/uiua/package.nix index bb40115a53fd..9ddfd1d8cf13 100644 --- a/pkgs/by-name/ui/uiua/package.nix +++ b/pkgs/by-name/ui/uiua/package.nix @@ -14,16 +14,16 @@ rustPlatform.buildRustPackage rec { pname = "uiua"; - version = "0.0.20"; + version = "0.0.23"; src = fetchFromGitHub { owner = "uiua-lang"; repo = "uiua"; - rev = "refs/tags/${version}"; - hash = "sha256-fFsMN+4ORB//Ch+wrRRMeZKXvW8ta5m66Vy3I3uyHO8="; + rev = version; + hash = "sha256-+Q/dn0pGZ3R+UlAt9stQZU1n+WITujJzTxY5dpXc+Bc="; }; - cargoHash = "sha256-old+U0sJWnp8wTiZBjcQ7+mv+6N15cpyyTDEjTUnghk="; + cargoHash = "sha256-R4jQ9Or9vh3dtqJH7nPvYM4o1h277sFUf+nC1VQl1Uk="; nativeBuildInputs = lib.optionals stdenv.isDarwin [ rustPlatform.bindgenHook @@ -41,13 +41,14 @@ rustPlatform.buildRustPackage rec { buildFeatures = lib.optional audioSupport "audio"; - passthru.tests.run = runCommand "uiua-test-run" {nativeBuildInputs = [uiua];} '' + passthru.tests.run = runCommand "uiua-test-run" { nativeBuildInputs = [ uiua ]; } '' uiua init; diff -U3 --color=auto <(uiua run main.ua) <(echo '"Hello, World!"') touch $out; ''; - meta = with lib; { + meta = { + changelog = "https://github.com/uiua-lang/uiua/releases/tag/${src.rev}"; description = "A stack-oriented array programming language with a focus on simplicity, beauty, and tacit code"; longDescription = '' Uiua combines the stack-oriented and array-oriented paradigms in a single @@ -55,8 +56,8 @@ rustPlatform.buildRustPackage rec { high information density and little syntactic noise. ''; homepage = "https://www.uiua.org/"; - license = licenses.mit; + license = lib.licenses.mit; mainProgram = "uiua"; - maintainers = with maintainers; [ cafkafk tomasajt ]; + maintainers = with lib.maintainers; [ cafkafk tomasajt ]; }; } diff --git a/pkgs/by-name/ui/uiua386/package.nix b/pkgs/by-name/ui/uiua386/package.nix new file mode 100644 index 000000000000..fefec669b7ba --- /dev/null +++ b/pkgs/by-name/ui/uiua386/package.nix @@ -0,0 +1,23 @@ +{ lib, stdenvNoCC, uiua }: + +stdenvNoCC.mkDerivation { + pname = "uiua386"; + + inherit (uiua) src version; + + installPhase = '' + runHook preInstall + + install -Dm444 -t $out/share/fonts/truetype ./site/Uiua386.ttf + + runHook postInstall + ''; + + meta = { + description = "An Uiua font"; + homepage = "https://uiua.org/"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ skykanin ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/by-name/ux/uxn/package.nix b/pkgs/by-name/ux/uxn/package.nix index f858733d12b9..a0c13b8ebb36 100644 --- a/pkgs/by-name/ux/uxn/package.nix +++ b/pkgs/by-name/ux/uxn/package.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "uxn"; - version = "unstable-2023-09-06"; + version = "unstable-2023-09-29"; src = fetchFromSourcehut { owner = "~rabbits"; repo = "uxn"; - rev = "d7f96acb93742744fec32ba667a4b4438dcf90cf"; - hash = "sha256-kaYT61qDSPtpNd0M3IHxR8EzhnsB5uNH075+Xag1Vv8="; + rev = "c71842aa8472f26c0ea7fbf92624659313c038ba"; + hash = "sha256-Lo1AkK81Hv8A0jBfpR4lxlBJcWkh9LttURiXVoibKSs="; }; outputs = [ "out" "projects" ]; diff --git a/pkgs/by-name/ve/vesktop/package.nix b/pkgs/by-name/ve/vesktop/package.nix index d25167ebe308..d528fec7563a 100644 --- a/pkgs/by-name/ve/vesktop/package.nix +++ b/pkgs/by-name/ve/vesktop/package.nix @@ -1,6 +1,7 @@ { lib , stdenv , stdenvNoCC +, gcc13Stdenv , fetchFromGitHub , substituteAll , makeWrapper @@ -9,6 +10,7 @@ , vencord , electron , pipewire +, libpulseaudio , libicns , jq , moreutils @@ -16,13 +18,13 @@ }: stdenv.mkDerivation rec { pname = "vesktop"; - version = "0.3.3"; + version = "0.4.1"; src = fetchFromGitHub { owner = "Vencord"; repo = "Vesktop"; rev = "v${version}"; - sha256 = "sha256-Njs3tACxUyRolYUtS/q2lITIQnUBFXVXWZEfQ66HpPM="; + hash = "sha256-jSGad3qMhAdiGdwomQO6BIyHIbKrGLRGniGrJN97gN8="; }; pnpm-deps = stdenvNoCC.mkDerivation { @@ -51,7 +53,7 @@ stdenv.mkDerivation rec { dontFixup = true; outputHashMode = "recursive"; - outputHash = "sha256-vInaSLGahRUgvwAeUcI+oV84L+tgNRCmfFpE0aUD4X4="; + outputHash = "sha256-lTeL+8QujWzx4ys2T+G55NUP51c8i5lB1vAkUtzkJlA="; }; nativeBuildInputs = [ @@ -92,7 +94,12 @@ stdenv.mkDerivation rec { # yes, upstream really packages it as "vesktop" but uses "vencorddesktop" file names installPhase = let - libPath = lib.makeLibraryPath [ pipewire ]; + # this is mainly required for venmic + libPath = lib.makeLibraryPath [ + libpulseaudio + pipewire + gcc13Stdenv.cc.cc.lib + ]; in '' runHook preInstall @@ -132,7 +139,8 @@ stdenv.mkDerivation rec { homepage = "https://github.com/Vencord/Vesktop"; license = licenses.gpl3Only; maintainers = with maintainers; [ getchoo Scrumplex vgskye ]; - platforms = platforms.linux; + platforms = [ "x86_64-linux" "aarch64-linux" ]; mainProgram = "vencorddesktop"; + broken = stdenv.hostPlatform.isAarch64; }; } diff --git a/pkgs/by-name/vi/virtio-win/package.nix b/pkgs/by-name/vi/virtio-win/package.nix new file mode 100644 index 000000000000..5c1bb96b9e25 --- /dev/null +++ b/pkgs/by-name/vi/virtio-win/package.nix @@ -0,0 +1,38 @@ +{ lib, stdenv, fetchurl, libarchive }: + +stdenv.mkDerivation rec { + pname = "virtio-win"; + version = "0.1.240-1"; + + src = fetchurl { + url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-${version}/virtio-win.iso"; + hash = "sha256-69SCWGaPf3jgJu0nbCip0Z2D4CD/oICtaZENyGu8vMY="; + }; + + nativeBuildInputs = [ + libarchive + ]; + + unpackCmd = "mkdir source; bsdtar -xf $curSrc -C source"; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp -R ./. $out/ + + runHook postInstall + ''; + + passthru.updateScript = ./update.sh; + + meta = with lib; { + description = "Windows VirtIO Drivers"; + homepage = "https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html"; + changelog = "https://fedorapeople.org/groups/virt/virtio-win/CHANGELOG"; + license = [ licenses.bsd3 ]; + maintainers = with maintainers; [ anthonyroussel ]; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/vi/virtio-win/update.sh b/pkgs/by-name/vi/virtio-win/update.sh new file mode 100755 index 000000000000..99a0f30fe4a6 --- /dev/null +++ b/pkgs/by-name/vi/virtio-win/update.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl pup common-updater-scripts + +set -eu -o pipefail + +version="$(curl -Ls https://fedorapeople.org/groups/virt/virtio-win/repo/latest/ | \ + pup 'a[href*="virtio-win-"] text{}' | \ + sed -E 's/virtio-win-(.*)\.noarch\.rpm/\1/' | \ + sort -Vu | \ + tail -n1)" + +update-source-version virtio-win "$version" diff --git a/pkgs/by-name/wa/wait4x/package.nix b/pkgs/by-name/wa/wait4x/package.nix new file mode 100644 index 000000000000..9daad7d2a198 --- /dev/null +++ b/pkgs/by-name/wa/wait4x/package.nix @@ -0,0 +1,31 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: +let + pname = "wait4x"; + version = "2.13.0"; +in +buildGoModule { + inherit pname version; + + src = fetchFromGitHub { + owner = "atkrad"; + repo = pname; + rev = "v${version}"; + hash = "sha256-vhYWt1vRL1iTtdZRhk3HsBnmhcp4hieN+8vsyQS4hpo="; + }; + + vendorHash = "sha256-WY8FPRjjAFcDLMbU22pL3rFTw7fBPwCbXJDjhHDI4Kw="; + + # Tests make network access + doCheck = false; + + meta = with lib; { + description = "Wait4X allows you to wait for a port or a service to enter the requested state"; + homepage = "https://github.com/atkrad/wait4x"; + license = licenses.asl20; + maintainers = with maintainers; [ jfvillablanca ]; + mainProgram = "wait4x"; + }; +} diff --git a/pkgs/by-name/wa/waybar-mpris/package.nix b/pkgs/by-name/wa/waybar-mpris/package.nix new file mode 100644 index 000000000000..253829d9abec --- /dev/null +++ b/pkgs/by-name/wa/waybar-mpris/package.nix @@ -0,0 +1,33 @@ +{ lib +, fetchgit +, buildGoModule +, installShellFiles +}: + +buildGoModule { + pname = "waybar-mpris"; + version = "unstable-2022-01-27"; + + src = fetchgit { + url = "https://git.hrfee.pw/hrfee/waybar-mpris"; + rev = "485ec0ec0af80a0d63c10e94aebfc59b16aab46b"; + hash = "sha256-BjLxWnDNsR2ZnNklNiKzi1DeoPpaZsRdKbVSwNwYhJ4="; + }; + + vendorHash = "sha256-85jFSAOfNMihv710LtfETmkKRqcdRuFCHVuPkW94X/Y="; + + nativeBuildInputs = [ installShellFiles ]; + + CGO_LDFLAGS = "-s -w"; + + GOFLAGS = "-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"; + + meta = with lib; { + description = "A waybar component/utility for displaying and controlling MPRIS2 compliant media players individually"; + homepage = "https://git.hrfee.pw/hrfee/waybar-mpris"; + license = licenses.mit; + mainProgram = "waybar-mpris"; + maintainers = with maintainers; [ khaneliman ]; + }; +} + diff --git a/pkgs/by-name/wb/wb32-dfu-updater/package.nix b/pkgs/by-name/wb/wb32-dfu-updater/package.nix new file mode 100644 index 000000000000..fb144b7d6e2b --- /dev/null +++ b/pkgs/by-name/wb/wb32-dfu-updater/package.nix @@ -0,0 +1,33 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, libusb1 +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "wb32-dfu-updater"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "WestberryTech"; + repo = finalAttrs.pname; + rev = finalAttrs.version; + hash = "sha256-DKsDVO00JFhR9hIZksFVJLRwC6PF9LCRpf++QywFO2w="; + }; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ libusb1 ]; + + meta = with lib; { + description = "USB programmer for downloading and uploading firmware to/from USB devices."; + longDescription = '' + wb32-dfu-updater is a host tool used to download and upload firmware to/from WB32 MCU via USB. (wb32-dfu-updater_cli is the command line version). + ''; + homepage = "https://github.com/WestberryTech/wb32-dfu-updater"; + license = licenses.asl20; + maintainers = [ maintainers.liketechnik ]; + mainProgram = "wb32-dfu-updater_cli"; + platforms = platforms.all; + }; +}) diff --git a/pkgs/by-name/wh/whatsapp-emoji-font/package.nix b/pkgs/by-name/wh/whatsapp-emoji-font/package.nix new file mode 100644 index 000000000000..5e34282891b9 --- /dev/null +++ b/pkgs/by-name/wh/whatsapp-emoji-font/package.nix @@ -0,0 +1,46 @@ +{ stdenvNoCC +, lib +, fetchFromGitHub +, imagemagick +, nix-update-script +, pngquant +, python3Packages +, which +, zopfli +}: + +stdenvNoCC.mkDerivation rec { + pname = "whatsapp-emoji-linux"; + version = "2.23.2.72-1"; + + src = fetchFromGitHub { + rev = "refs/tags/${version}"; + owner = "dmlls"; + repo = "whatsapp-emoji-linux"; + hash = "sha256-dwX+y8jCpR+SyiH13Os9VeXLDwmAYB7ARW2lAMl/7RE="; + }; + + makeFlags = [ + "PREFIX=$(out)" + ]; + + enableParallelBuilding = true; + + nativeBuildInputs = [ + imagemagick + pngquant + python3Packages.nototools + which + zopfli + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "WhatsApp Emoji for GNU/Linux"; + homepage = "https://github.com/dmlls/whatsapp-emoji-linux"; + maintainers = [ lib.maintainers.lucasew ]; + sourceProvenance = [ lib.sourceTypes.fromSource ]; + license = lib.licenses.unfree; + }; +} diff --git a/pkgs/by-name/wh/whistle/package.nix b/pkgs/by-name/wh/whistle/package.nix new file mode 100644 index 000000000000..0e097ed347d3 --- /dev/null +++ b/pkgs/by-name/wh/whistle/package.nix @@ -0,0 +1,26 @@ +{ lib, buildNpmPackage, fetchFromGitHub }: + +buildNpmPackage rec { + pname = "whistle"; + version = "2.9.58"; + + src = fetchFromGitHub { + owner = "avwo"; + repo = "whistle"; + rev = "v${version}"; + hash = "sha256-/dt4xwUZrvymCpc3xRyWM2Wsh7zk7ndepgOWJwJ2Das="; + }; + + npmDepsHash = "sha256-9GBhC2PQyaqi64ncIuMZSf9CLB8l+cywT7QTzW9WiTs="; + + dontNpmBuild = true; + + meta = with lib; { + description = "HTTP, HTTP2, HTTPS, Websocket debugging proxy"; + homepage = "https://github.com/avwo/whistle"; + changelog = "https://github.com/avwo/whistle/blob/${src.rev}/CHANGELOG.md"; + license = licenses.mit; + maintainers = [ maintainers.marsam ]; + mainProgram = "whistle"; + }; +} diff --git a/pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix b/pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix index e22b02825b75..a6b78b70b244 100644 --- a/pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix +++ b/pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix @@ -1,38 +1,47 @@ -{ lib, stdenv, dockapps-sources, pkg-config, libX11, libXpm, libXext, alsa-lib }: - -stdenv.mkDerivation rec { +{ lib +, stdenv +, alsa-lib +, dockapps-sources +, libX11 +, libXext +, libXpm +, pkg-config +}: + +stdenv.mkDerivation (finalAttrs: { pname = "AlsaMixer.app"; - version = "0.2.1"; - src = dockapps-sources; + inherit (dockapps-sources) version src; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libX11 libXpm libXext alsa-lib ]; + sourceRoot = "${finalAttrs.src.name}/AlsaMixer.app"; - setSourceRoot = '' - export sourceRoot=$(echo */${pname}) - ''; + nativeBuildInputs = [ + pkg-config + ]; - dontConfigure = true; + buildInputs = [ + alsa-lib + libX11 + libXpm + libXext + ]; - preInstall = '' - install -d ${placeholder "out"}/bin - ''; + hardeningDisable = [ "fortify" ]; + + dontConfigure = true; installPhase = '' runHook preInstall - install -t ${placeholder "out"}/bin AlsaMixer.app + install -D -t ${placeholder "out"}/bin/ AlsaMixer.app + pushd ${placeholder "out"}/bin + ln -vs AlsaMixer.app AlsaMixer runHook postInstall ''; - postInstall = '' - ln -s ${placeholder "out"}/bin/AlsaMixer.app ${placeholder "out"}/bin/AlsaMixer - ''; - - meta = with lib; { + meta = { description = "Alsa mixer application for Windowmaker"; homepage = "https://www.dockapps.net/alsamixerapp"; - license = licenses.gpl2Plus; - maintainers = [ maintainers.bstrik ]; + license = lib.licenses.gpl2Plus; + maintainers = [ ]; }; -} +}) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/cputnik.nix b/pkgs/by-name/wi/windowmaker/dockapps/cputnik.nix new file mode 100644 index 000000000000..6ac10e374e0f --- /dev/null +++ b/pkgs/by-name/wi/windowmaker/dockapps/cputnik.nix @@ -0,0 +1,46 @@ +{ lib +, stdenv +, dockapps-sources +, libX11 +, libXext +, libXpm +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "cputnik"; + + inherit (dockapps-sources) version src; + + sourceRoot = "${finalAttrs.src.name}/cputnik/src"; + + buildInputs = [ + libX11 + libXpm + libXext + ]; + + preBuild = '' + makeFlagsArray+=( + INCS="-I${libX11.dev}/include -I${libXext.dev}/include -I${libXpm.dev}/include" + LIBS="-L${libX11}/lib -L${libXext}/lib -L${libXpm}/lib -lX11 -lXpm -lXext" + ) + ''; + + hardeningDisable = [ "format" ]; + + installPhase = '' + runHook preInstall + + install -Dm755 -t $out/bin/ cputnik + + runHook postInstall + ''; + + meta = { + description = "A Calendar clock with antialiased text"; + homepage = "https://www.dockapps.net/wmcalclock"; + license = lib.licenses.gpl2Plus; + maintainers = [ ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/default.nix b/pkgs/by-name/wi/windowmaker/dockapps/default.nix index 8a66fdbd67f2..84cfe01bddf3 100644 --- a/pkgs/by-name/wi/windowmaker/dockapps/default.nix +++ b/pkgs/by-name/wi/windowmaker/dockapps/default.nix @@ -1,20 +1,29 @@ { config, lib, pkgs }: -lib.makeScope pkgs.newScope (self: with self; { +lib.makeScope pkgs.newScope (self: { - dockapps-sources = pkgs.fetchgit { - url = "https://repo.or.cz/dockapps.git"; - rev = "b2b9d872ee61c9b329e4597c301e4417cbd9c3ea"; - sha256 = "sha256-BuSnwPIj3gUWMjj++SK+117xm/77u4gXLQzRFttei0w="; + dockapps-sources = { + pname = "dockapps-sources"; + version = "2023-10-11"; # Shall correspond to src.rev + + src = pkgs.fetchFromRepoOrCz { + repo = "dockapps"; + rev = "1bbb32008ecb58acaec9ea70e00b4ea1735408fc"; + hash = "sha256-BLUDe/cIIuh9mCtafbcBSDatUXSRD83FeyYhcbem5FU="; + }; }; - libdockapp = callPackage ./libdockapp.nix { }; + AlsaMixer-app = self.callPackage ./AlsaMixer-app.nix { }; + + cputnik = self.callPackage ./cputnik.nix { }; + + libdockapp = self.callPackage ./libdockapp.nix { }; - AlsaMixer-app = callPackage ./AlsaMixer-app.nix { }; + wmCalClock = self.callPackage ./wmCalClock.nix { }; - wmCalClock = callPackage ./wmCalClock.nix { }; + wmcube = self.callPackage ./wmcube.nix { }; - wmsm-app = callPackage ./wmsm-app.nix { }; + wmsm-app = self.callPackage ./wmsm-app.nix { }; - wmsystemtray = callPackage ./wmsystemtray.nix { }; + wmsystemtray = self.callPackage ./wmsystemtray.nix { }; }) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix b/pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix index aaf99ec932e6..12446bfc7262 100644 --- a/pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix +++ b/pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix @@ -1,30 +1,36 @@ -{ lib, stdenv, dockapps-sources, autoreconfHook, pkg-config -, libX11, libXext, libXpm, mkfontdir, fontutil }: +{ lib +, stdenv +, autoreconfHook +, dockapps-sources +, fontutil +, libX11 +, libXext +, libXpm +, mkfontdir +, pkg-config +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "libdockapp"; - version = "0.7.3"; - src = dockapps-sources; + inherit (dockapps-sources) version src; + + sourceRoot = "${finalAttrs.src.name}/libdockapp"; nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ libX11 libXext libXpm fontutil mkfontdir ]; - setSourceRoot = '' - export sourceRoot=$(echo */${pname}) - ''; - # There is a bug on --with-font configureFlags = [ "--with-examples=no" "--with-font=no" ]; - meta = with lib; { + meta = { description = "A library providing a framework for dockapps"; homepage = "https://www.dockapps.net/libdockapp"; - license = licenses.gpl2Plus; - maintainers = [ maintainers.bstrik ]; + license = lib.licenses.gpl2Plus; + maintainers = [ ]; }; -} +}) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix index 9f49b4508c1c..1dc130971ded 100644 --- a/pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix +++ b/pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix @@ -1,17 +1,23 @@ -{ lib, stdenv, dockapps-sources -, libX11, libXpm, libXext }: - -stdenv.mkDerivation rec { +{ lib +, stdenv +, dockapps-sources +, libX11 +, libXext +, libXpm +}: + +stdenv.mkDerivation (finalAttrs: { pname = "wmCalClock"; - version = "1.25"; - src = dockapps-sources; + inherit (dockapps-sources) version src; - buildInputs = [ libX11 libXpm libXext ]; + sourceRoot = "${finalAttrs.src.name}/wmCalClock"; - setSourceRoot = '' - export sourceRoot=$(echo */${pname}/Src) - ''; + buildInputs = [ + libX11 + libXpm + libXext + ]; preBuild = '' makeFlagsArray+=( @@ -28,11 +34,11 @@ stdenv.mkDerivation rec { installFlags = [ "DESTDIR=${placeholder "out"}" ]; - meta = with lib; { + meta = { description = "A Calendar clock with antialiased text"; homepage = "https://www.dockapps.net/wmcalclock"; - license = licenses.gpl2Plus; - maintainers = [ maintainers.bstrik ]; - platforms = platforms.linux; + license = lib.licenses.gpl2Plus; + maintainers = [ ]; + platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/wmcube.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmcube.nix new file mode 100644 index 000000000000..5aaa00e23e34 --- /dev/null +++ b/pkgs/by-name/wi/windowmaker/dockapps/wmcube.nix @@ -0,0 +1,48 @@ +{ lib +, stdenv +, dockapps-sources +, libX11 +, libXpm +, libXext +, libdockapp +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "wmcube"; + + inherit (dockapps-sources) version src; + + sourceRoot = "${finalAttrs.src.name}/wmcube/wmcube"; + + buildInputs = [ + libX11 + libXext + libXpm + libdockapp + ]; + + env.NIX_CFLAGS_COMPILE = "-std=gnu89"; + + preBuild = '' + makeFlagsArray=( + CC="${stdenv.cc.targetPrefix}cc" + PREFIX="${placeholder "out"}" + VERSION="${finalAttrs.version}" + LIBDIR="-L${lib.getLib libX11}/lib -L${lib.getLib libXext}/lib \ +-L${lib.getLib libXpm}/lib -L${lib.getLib libdockapp}/lib" + INCDIR="-I${lib.getDev libX11}/lib -I${lib.getDev libXext}/lib \ +-I${lib.getDev libXpm}/lib -I${lib.getDev libdockapp}/lib" + LIBS="-lm -lXpm -lXext -lX11 -ldockapp" + ) + ''; + + preInstall = '' + mkdir -pv $out/{bin,doc/wmcube-${finalAttrs.version},share/wmcube,man/man1} + ''; + + meta = { + description = "System monitor for Windowmaker"; + license = lib.licenses.gpl2Plus; + maintainers = [ ]; + }; +}) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix index 5c68a39a1ead..6becfce9578b 100644 --- a/pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix +++ b/pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix @@ -1,20 +1,25 @@ -{ lib, stdenv, dockapps-sources +{ lib +, stdenv +, dockapps-sources , libX11 , libXpm , libXext -, libdockapp }: +, libdockapp +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "wmsm.app"; - version = "0.2.1"; - src = dockapps-sources; + inherit (dockapps-sources) version src; - buildInputs = [ libX11 libXpm libXext libdockapp ]; + sourceRoot = "${src.name}/wmsm.app/wmsm"; - setSourceRoot = '' - export sourceRoot=$(echo */${pname}/wmsm) - ''; + buildInputs = [ + libX11 + libXext + libXpm + libdockapp + ]; env.NIX_CFLAGS_COMPILE = "-std=gnu89"; @@ -24,7 +29,9 @@ stdenv.mkDerivation rec { --replace "/usr/bin/install" "install" ''; - makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; + makeFlags = [ + "CC=${stdenv.cc.targetPrefix}cc" + ]; installPhase = '' runHook preInstall @@ -32,12 +39,14 @@ stdenv.mkDerivation rec { runHook postInstall ''; - installFlags = [ "PREFIX=${placeholder "out"}/bin" ]; + installFlags = [ + "PREFIX=${placeholder "out"}/bin" + ]; - meta = with lib; { + meta = { description = "System monitor for Windowmaker"; homepage = "https://www.dockapps.net/wmsmapp"; - license = licenses.gpl2; - maintainers = [ maintainers.bstrik ]; + license = lib.licenses.gpl2Plus; + maintainers = [ ]; }; -} +}) diff --git a/pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix index ced4cad80556..7f17475d318f 100644 --- a/pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix +++ b/pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix @@ -1,22 +1,40 @@ -{ lib, stdenv, fetchurl, pkg-config, libX11, libXpm, libXext, libXfixes, libXmu }: +{ lib +, stdenv +, fetchurl +, libX11 +, libXext +, libXfixes +, libXmu +, libXpm +, pkg-config +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "wmsystemtray"; version = "1.4"; src = fetchurl { - url = "mirror://sourceforge/project/${pname}/${pname}/${pname}-${version}.tar.gz"; - sha256 = "sha256-jt70NpHp//BxAA4pFmx8GtQgwJVukGgVEGHogcisl+k="; + url = "mirror://sourceforge/project/wmsystemtray/wmsystemtray/wmsystemtray-${finalAttrs.version}.tar.gz"; + hash = "sha256-jt70NpHp//BxAA4pFmx8GtQgwJVukGgVEGHogcisl+k="; }; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libX11 libXpm libXext libXfixes libXmu ]; + nativeBuildInputs = [ + pkg-config + ]; - meta = with lib; { + buildInputs = [ + libX11 + libXext + libXfixes + libXmu + libXpm + ]; + + meta = { description = "A system tray for Windowmaker"; homepage = "http://wmsystemtray.sourceforge.net"; license = licenses.gpl2Only; - maintainers = [ maintainers.bstrik ]; + maintainers = [ ]; platforms = platforms.linux; }; -} +}) diff --git a/pkgs/by-name/wi/windowmaker/package.nix b/pkgs/by-name/wi/windowmaker/package.nix index 2381c16f41ae..6c39eadeb05b 100644 --- a/pkgs/by-name/wi/windowmaker/package.nix +++ b/pkgs/by-name/wi/windowmaker/package.nix @@ -2,6 +2,7 @@ , stdenv , fetchFromRepoOrCz , autoreconfHook +, callPackage , pkg-config , imagemagick , libX11 @@ -62,6 +63,10 @@ stdenv.mkDerivation (finalAttrs: { "--with-x" ]; + passthru = { + dockapps = callPackage ./dockapps { }; + }; + meta = { homepage = "http://windowmaker.org/"; description = "NeXTSTEP-like window manager"; diff --git a/pkgs/by-name/xs/xsct/package.nix b/pkgs/by-name/xs/xsct/package.nix new file mode 100644 index 000000000000..80023f676c49 --- /dev/null +++ b/pkgs/by-name/xs/xsct/package.nix @@ -0,0 +1,38 @@ +{ stdenv +, lib +, fetchFromGitHub +, gitUpdater +, libX11 +, libXrandr +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "xsct"; + version = "2.0"; + + src = fetchFromGitHub { + owner = "faf0"; + repo = "sct"; + rev = finalAttrs.version; + hash = "sha256-XhrkaK85I/U2ChO5mZYah/TaXz03yahfMEbfgzXqytU="; + }; + + buildInputs = [ + libX11 + libXrandr + ]; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + description = "Set color temperature of screen"; + homepage = "https://github.com/faf0/sct"; + license = licenses.unlicense; + maintainers = with maintainers; [ OPNA2608 ]; + platforms = with platforms; linux ++ freebsd ++ openbsd; + }; +}) |