mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-10-02 13:00:23 +00:00
Merge master into haskell-updates
This commit is contained in:
3
.github/workflows/check-nix-format.yml
vendored
3
.github/workflows/check-nix-format.yml
vendored
@@ -39,6 +39,9 @@ jobs:
|
||||
pkgs/development/cuda-modules
|
||||
pkgs/test/cuda
|
||||
pkgs/top-level/cuda-packages.nix
|
||||
NIX_FMT_PATHS_MAINTAINERS: |
|
||||
maintainers/maintainer-list.nix
|
||||
maintainers/team-list.nix
|
||||
NIX_FMT_PATHS_K3S: |
|
||||
nixos/modules/services/cluster/k3s
|
||||
nixos/tests/k3s
|
||||
|
||||
@@ -46,7 +46,8 @@
|
||||
|
||||
checks = forAllSystems (system: {
|
||||
tarball = jobs.${system}.tarball;
|
||||
} // lib.optionalAttrs (self.legacyPackages.${system}.stdenv.isLinux) {
|
||||
# Exclude power64 due to "libressl is not available on the requested hostPlatform" with hostPlatform being power64
|
||||
} // lib.optionalAttrs (self.legacyPackages.${system}.stdenv.isLinux && !self.legacyPackages.${system}.targetPlatform.isPower64) {
|
||||
# Test that ensures that the nixosSystem function can accept a lib argument
|
||||
# Note: prefer not to extend or modify `lib`, especially if you want to share reusable modules
|
||||
# alternatives include: `import` a file, or put a custom library in an option or in `_module.args.<libname>`
|
||||
|
||||
@@ -81,7 +81,7 @@ let
|
||||
&& final.parsed.kernel == platform.parsed.kernel;
|
||||
isCompatible = _: throw "2022-05-23: isCompatible has been removed in favor of canExecute, refer to the 22.11 changelog for details";
|
||||
# Derived meta-data
|
||||
useLLVM = final.isFreeBSD;
|
||||
useLLVM = final.isFreeBSD || final.isOpenBSD;
|
||||
|
||||
libc =
|
||||
/**/ if final.isDarwin then "libSystem"
|
||||
|
||||
@@ -16,12 +16,12 @@
|
||||
"armv6l-linux"
|
||||
"armv7l-linux"
|
||||
"i686-linux"
|
||||
"mipsel-linux"
|
||||
# "mipsel-linux" is excluded because it is not bootstrapped
|
||||
|
||||
# Other platforms with sufficient support in stdenv which is not formally
|
||||
# mandated by their platform tier.
|
||||
"aarch64-darwin"
|
||||
"armv5tel-linux"
|
||||
# "armv5tel-linux" is excluded because it is not bootstrapped
|
||||
"powerpc64le-linux"
|
||||
"riscv64-linux"
|
||||
|
||||
|
||||
@@ -535,11 +535,9 @@ rec {
|
||||
name = "riscv-multiplatform";
|
||||
target = "Image";
|
||||
autoModules = true;
|
||||
preferBuiltin = true;
|
||||
baseConfig = "defconfig";
|
||||
DTB = true;
|
||||
extraConfig = ''
|
||||
SERIAL_OF_PLATFORM y
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -27,8 +27,13 @@ import utils
|
||||
),
|
||||
default=pathlib.Path(__file__).parent.parent.parent.parent
|
||||
)
|
||||
def main(repo_metadata: pathlib.Path, nixpkgs: pathlib.Path):
|
||||
metadata = utils.KDERepoMetadata.from_repo_metadata_checkout(repo_metadata)
|
||||
@click.option(
|
||||
"--unstable",
|
||||
default=False,
|
||||
is_flag=True
|
||||
)
|
||||
def main(repo_metadata: pathlib.Path, nixpkgs: pathlib.Path, unstable: bool):
|
||||
metadata = utils.KDERepoMetadata.from_repo_metadata_checkout(repo_metadata, unstable)
|
||||
out_dir = nixpkgs / "pkgs/kde/generated"
|
||||
metadata.write_json(out_dir)
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@ class KDERepoMetadata:
|
||||
return project
|
||||
|
||||
@classmethod
|
||||
def from_repo_metadata_checkout(cls, repo_metadata: pathlib.Path):
|
||||
def from_repo_metadata_checkout(cls, repo_metadata: pathlib.Path, unstable=False):
|
||||
projects = [
|
||||
Project.from_yaml(metadata_file)
|
||||
for metadata_file in repo_metadata.glob("projects-invent/**/metadata.yaml")
|
||||
@@ -122,29 +122,32 @@ class KDERepoMetadata:
|
||||
dep_graph={},
|
||||
)
|
||||
|
||||
dep_specs = ["dependency-data-stable-kf6-qt6"]
|
||||
dep_graph = collections.defaultdict(set)
|
||||
|
||||
for spec in dep_specs:
|
||||
spec_path = repo_metadata / "dependencies" / spec
|
||||
for line in spec_path.open():
|
||||
line = line.strip()
|
||||
if line.startswith("#"):
|
||||
continue
|
||||
if not line:
|
||||
continue
|
||||
if unstable:
|
||||
spec_name = "dependency-data-kf6-qt6"
|
||||
else:
|
||||
spec_name = "dependency-data-stable-kf6-qt6"
|
||||
|
||||
dependent, dependency = line.split(": ")
|
||||
spec_path = repo_metadata / "dependencies" / spec_name
|
||||
for line in spec_path.open():
|
||||
line = line.strip()
|
||||
if line.startswith("#"):
|
||||
continue
|
||||
if not line:
|
||||
continue
|
||||
|
||||
dependent = self.try_lookup_package(dependent)
|
||||
if dependent is None:
|
||||
continue
|
||||
dependent, dependency = line.split(": ")
|
||||
|
||||
dependency = self.try_lookup_package(dependency)
|
||||
if dependency is None:
|
||||
continue
|
||||
dependent = self.try_lookup_package(dependent)
|
||||
if dependent is None:
|
||||
continue
|
||||
|
||||
dep_graph[dependent].add(dependency)
|
||||
dependency = self.try_lookup_package(dependency)
|
||||
if dependency is None:
|
||||
continue
|
||||
|
||||
dep_graph[dependent].add(dependency)
|
||||
|
||||
self.dep_graph = dep_graph
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
/* List of maintainer teams.
|
||||
/*
|
||||
List of maintainer teams.
|
||||
name = {
|
||||
# Required
|
||||
members = [ maintainer1 maintainer2 ];
|
||||
@@ -25,10 +26,11 @@
|
||||
* keep the list alphabetically sorted
|
||||
* test the validity of the format with:
|
||||
nix-build lib/tests/teams.nix
|
||||
*/
|
||||
*/
|
||||
|
||||
{ lib }:
|
||||
with lib.maintainers; {
|
||||
with lib.maintainers;
|
||||
{
|
||||
acme = {
|
||||
members = [
|
||||
aanderse
|
||||
@@ -67,9 +69,7 @@ with lib.maintainers; {
|
||||
minijackson
|
||||
yurrriq
|
||||
];
|
||||
githubTeams = [
|
||||
"beam"
|
||||
];
|
||||
githubTeams = [ "beam" ];
|
||||
scope = "Maintain BEAM-related packages and modules.";
|
||||
shortName = "BEAM";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -95,9 +95,7 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
budgie = {
|
||||
members = [
|
||||
bobby285271
|
||||
];
|
||||
members = [ bobby285271 ];
|
||||
scope = "Maintain Budgie desktop environment";
|
||||
shortName = "Budgie";
|
||||
};
|
||||
@@ -144,9 +142,7 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
cloudposse = {
|
||||
members = [
|
||||
dudymas
|
||||
];
|
||||
members = [ dudymas ];
|
||||
scope = "Maintain atmos and applications made by the Cloud Posse team.";
|
||||
shortName = "CloudPosse";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -178,12 +174,8 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
darwin = {
|
||||
members = [
|
||||
toonn
|
||||
];
|
||||
githubTeams = [
|
||||
"darwin-maintainers"
|
||||
];
|
||||
members = [ toonn ];
|
||||
githubTeams = [ "darwin-maintainers" ];
|
||||
scope = "Maintain Darwin compatibility of packages and Darwin-only packages.";
|
||||
shortName = "Darwin";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -213,9 +205,7 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
deepin = {
|
||||
members = [
|
||||
rewine
|
||||
];
|
||||
members = [ rewine ];
|
||||
scope = "Maintain deepin desktop environment and related packages.";
|
||||
shortName = "DDE";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -262,29 +252,21 @@ with lib.maintainers; {
|
||||
|
||||
docs = {
|
||||
members = [ ];
|
||||
githubTeams = [
|
||||
"documentation-team"
|
||||
];
|
||||
githubTeams = [ "documentation-team" ];
|
||||
scope = "Maintain nixpkgs/NixOS documentation and tools for building it.";
|
||||
shortName = "Docs";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
emacs = {
|
||||
members = [
|
||||
adisbladis
|
||||
];
|
||||
members = [ adisbladis ];
|
||||
scope = "Maintain the Emacs editor and packages.";
|
||||
shortName = "Emacs";
|
||||
};
|
||||
|
||||
enlightenment = {
|
||||
members = [
|
||||
romildo
|
||||
];
|
||||
githubTeams = [
|
||||
"enlightenment"
|
||||
];
|
||||
members = [ romildo ];
|
||||
githubTeams = [ "enlightenment" ];
|
||||
scope = "Maintain Enlightenment desktop environment and related packages.";
|
||||
shortName = "Enlightenment";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -303,7 +285,12 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
flutter = {
|
||||
members = [ mkg20001 RossComputerGuy FlafyDev hacker1024 ];
|
||||
members = [
|
||||
mkg20001
|
||||
RossComputerGuy
|
||||
FlafyDev
|
||||
hacker1024
|
||||
];
|
||||
scope = "Maintain Flutter and Dart-related packages and build tools";
|
||||
shortName = "flutter";
|
||||
enableFeatureFreezePing = false;
|
||||
@@ -373,9 +360,7 @@ with lib.maintainers; {
|
||||
sikmir
|
||||
willcohen
|
||||
];
|
||||
githubTeams = [
|
||||
"geospatial"
|
||||
];
|
||||
githubTeams = [ "geospatial" ];
|
||||
scope = "Maintain geospatial packages.";
|
||||
shortName = "Geospatial";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -400,9 +385,7 @@ with lib.maintainers; {
|
||||
qbit
|
||||
mfrw
|
||||
];
|
||||
githubTeams = [
|
||||
"golang"
|
||||
];
|
||||
githubTeams = [ "golang" ];
|
||||
scope = "Maintain Golang compilers.";
|
||||
shortName = "Go";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -415,9 +398,7 @@ with lib.maintainers; {
|
||||
jtojnar
|
||||
dasj19
|
||||
];
|
||||
githubTeams = [
|
||||
"gnome"
|
||||
];
|
||||
githubTeams = [ "gnome" ];
|
||||
scope = "Maintain GNOME desktop environment and platform.";
|
||||
shortName = "GNOME";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -443,9 +424,7 @@ with lib.maintainers; {
|
||||
ncfavier
|
||||
sternenseemann
|
||||
];
|
||||
githubTeams = [
|
||||
"haskell"
|
||||
];
|
||||
githubTeams = [ "haskell" ];
|
||||
scope = "Maintain Haskell packages and infrastructure.";
|
||||
shortName = "Haskell";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -472,9 +451,7 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
infisical = {
|
||||
members = [
|
||||
akhilmhdh
|
||||
];
|
||||
members = [ akhilmhdh ];
|
||||
scope = "Maintain Infisical";
|
||||
shortName = "Infisical";
|
||||
};
|
||||
@@ -568,9 +545,7 @@ with lib.maintainers; {
|
||||
uthar
|
||||
hraban
|
||||
];
|
||||
githubTeams = [
|
||||
"lisp"
|
||||
];
|
||||
githubTeams = [ "lisp" ];
|
||||
scope = "Maintain the Lisp ecosystem.";
|
||||
shortName = "lisp";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -586,18 +561,14 @@ with lib.maintainers; {
|
||||
rrbutani
|
||||
sternenseemann
|
||||
];
|
||||
githubTeams = [
|
||||
"llvm"
|
||||
];
|
||||
githubTeams = [ "llvm" ];
|
||||
scope = "Maintain LLVM package sets and related packages";
|
||||
shortName = "LLVM";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
lomiri = {
|
||||
members = [
|
||||
OPNA2608
|
||||
];
|
||||
members = [ OPNA2608 ];
|
||||
scope = "Maintain Lomiri desktop environment and related packages.";
|
||||
shortName = "Lomiri";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -614,21 +585,15 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
lua = {
|
||||
githubTeams = [
|
||||
"lua"
|
||||
];
|
||||
githubTeams = [ "lua" ];
|
||||
scope = "Maintain the lua ecosystem.";
|
||||
shortName = "lua";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
lumina = {
|
||||
members = [
|
||||
romildo
|
||||
];
|
||||
githubTeams = [
|
||||
"lumina"
|
||||
];
|
||||
members = [ romildo ];
|
||||
githubTeams = [ "lumina" ];
|
||||
scope = "Maintain lumina desktop environment and related packages.";
|
||||
shortName = "Lumina";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -647,12 +612,8 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
lxqt = {
|
||||
members = [
|
||||
romildo
|
||||
];
|
||||
githubTeams = [
|
||||
"lxqt"
|
||||
];
|
||||
members = [ romildo ];
|
||||
githubTeams = [ "lxqt" ];
|
||||
scope = "Maintain LXQt desktop environment and related packages.";
|
||||
shortName = "LXQt";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -717,9 +678,7 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
mobile = {
|
||||
members = [
|
||||
samueldr
|
||||
];
|
||||
members = [ samueldr ];
|
||||
scope = "Maintain Mobile NixOS.";
|
||||
shortName = "Mobile";
|
||||
};
|
||||
@@ -766,21 +725,15 @@ with lib.maintainers; {
|
||||
};
|
||||
|
||||
ocaml = {
|
||||
members = [
|
||||
alizter
|
||||
];
|
||||
githubTeams = [
|
||||
"ocaml"
|
||||
];
|
||||
members = [ alizter ];
|
||||
githubTeams = [ "ocaml" ];
|
||||
scope = "Maintain the OCaml compiler and package set.";
|
||||
shortName = "OCaml";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
openstack = {
|
||||
members = [
|
||||
SuperSandro2000
|
||||
];
|
||||
members = [ SuperSandro2000 ];
|
||||
scope = "Maintain the ecosystem around OpenStack";
|
||||
shortName = "OpenStack";
|
||||
};
|
||||
@@ -801,18 +754,14 @@ with lib.maintainers; {
|
||||
davidak
|
||||
bobby285271
|
||||
];
|
||||
githubTeams = [
|
||||
"pantheon"
|
||||
];
|
||||
githubTeams = [ "pantheon" ];
|
||||
scope = "Maintain Pantheon desktop environment and platform.";
|
||||
shortName = "Pantheon";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
perl = {
|
||||
members = [
|
||||
sgo
|
||||
];
|
||||
members = [ sgo ];
|
||||
scope = "Maintain the Perl interpreter and Perl packages.";
|
||||
shortName = "Perl";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -826,9 +775,7 @@ with lib.maintainers; {
|
||||
patka
|
||||
talyz
|
||||
];
|
||||
githubTeams = [
|
||||
"php"
|
||||
];
|
||||
githubTeams = [ "php" ];
|
||||
scope = "Maintain PHP related packages and extensions.";
|
||||
shortName = "PHP";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -839,17 +786,13 @@ with lib.maintainers; {
|
||||
saschagrunert
|
||||
vdemeester
|
||||
];
|
||||
githubTeams = [
|
||||
"podman"
|
||||
];
|
||||
githubTeams = [ "podman" ];
|
||||
scope = "Maintain Podman and CRI-O related packages and modules.";
|
||||
shortName = "Podman";
|
||||
};
|
||||
|
||||
postgres = {
|
||||
members = [
|
||||
thoughtpolice
|
||||
];
|
||||
members = [ thoughtpolice ];
|
||||
scope = "Maintain the PostgreSQL package and plugins along with the NixOS module.";
|
||||
shortName = "PostgreSQL";
|
||||
};
|
||||
@@ -875,9 +818,7 @@ with lib.maintainers; {
|
||||
SuperSandro2000
|
||||
ttuegel
|
||||
];
|
||||
githubTeams = [
|
||||
"qt-kde"
|
||||
];
|
||||
githubTeams = [ "qt-kde" ];
|
||||
scope = "Maintain the Qt framework, KDE application suite, Plasma desktop environment and related projects.";
|
||||
shortName = "Qt / KDE";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -907,9 +848,7 @@ with lib.maintainers; {
|
||||
|
||||
release = {
|
||||
members = [ ];
|
||||
githubTeams = [
|
||||
"nixos-release-managers"
|
||||
];
|
||||
githubTeams = [ "nixos-release-managers" ];
|
||||
scope = "Manage the current nixpkgs/NixOS release.";
|
||||
shortName = "Release";
|
||||
};
|
||||
@@ -920,16 +859,13 @@ with lib.maintainers; {
|
||||
Flakebi
|
||||
mschwaig
|
||||
];
|
||||
githubTeams = [
|
||||
"rocm-maintainers"
|
||||
];
|
||||
githubTeams = [ "rocm-maintainers" ];
|
||||
scope = "Maintain ROCm and related packages.";
|
||||
shortName = "ROCm";
|
||||
};
|
||||
|
||||
ruby = {
|
||||
members = [
|
||||
];
|
||||
members = [ ];
|
||||
scope = "Maintain the Ruby interpreter and related packages.";
|
||||
shortName = "Ruby";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -943,9 +879,7 @@ with lib.maintainers; {
|
||||
winter
|
||||
zowoq
|
||||
];
|
||||
githubTeams = [
|
||||
"rust"
|
||||
];
|
||||
githubTeams = [ "rust" ];
|
||||
scope = "Maintain the Rust compiler toolchain and nixpkgs integration.";
|
||||
shortName = "Rust";
|
||||
enableFeatureFreezePing = true;
|
||||
@@ -976,9 +910,7 @@ with lib.maintainers; {
|
||||
|
||||
serokell = {
|
||||
# Verify additions by approval of an already existing member of the team.
|
||||
members = [
|
||||
balsoft
|
||||
];
|
||||
members = [ balsoft ];
|
||||
scope = "Group registration for Serokell employees who collectively maintain packages.";
|
||||
shortName = "Serokell employees";
|
||||
};
|
||||
@@ -997,27 +929,21 @@ with lib.maintainers; {
|
||||
|
||||
systemd = {
|
||||
members = [ ];
|
||||
githubTeams = [
|
||||
"systemd"
|
||||
];
|
||||
githubTeams = [ "systemd" ];
|
||||
scope = "Maintain systemd for NixOS.";
|
||||
shortName = "systemd";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
tests = {
|
||||
members = [
|
||||
tfc
|
||||
];
|
||||
members = [ tfc ];
|
||||
scope = "Maintain the NixOS VM test runner.";
|
||||
shortName = "NixOS tests";
|
||||
enableFeatureFreezePing = true;
|
||||
};
|
||||
|
||||
tts = {
|
||||
members = [
|
||||
mic92
|
||||
];
|
||||
members = [ mic92 ];
|
||||
scope = "coqui-ai TTS (formerly Mozilla TTS) and leaf packages";
|
||||
shortName = "coqui-ai TTS";
|
||||
};
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
|
||||
- [Quickwit](https://quickwit.io), sub-second search & analytics engine on cloud storage. Available as [services.quickwit](options.html#opt-services.quickwit).
|
||||
|
||||
- [Flood](https://flood.js.org/), a beautiful WebUI for various torrent clients. Available as [services.flood](options.html#opt-services.flood).
|
||||
|
||||
- [Renovate](https://github.com/renovatebot/renovate), a dependency updating tool for various git forges and language ecosystems. Available as [services.renovate](#opt-services.renovate.enable).
|
||||
|
||||
## Backward Incompatibilities {#sec-release-24.11-incompatibilities}
|
||||
|
||||
@@ -1316,6 +1316,7 @@
|
||||
./services/system/zram-generator.nix
|
||||
./services/torrent/deluge.nix
|
||||
./services/torrent/flexget.nix
|
||||
./services/torrent/flood.nix
|
||||
./services/torrent/magnetico.nix
|
||||
./services/torrent/opentracker.nix
|
||||
./services/torrent/peerflix.nix
|
||||
|
||||
@@ -244,6 +244,27 @@ The upgrade process is:
|
||||
$ ./delete_old_cluster.sh
|
||||
```
|
||||
|
||||
## Versioning and End-of-Life {#module-services-postgres-versioning}
|
||||
|
||||
PostgreSQL's versioning policy is described [here](https://www.postgresql.org/support/versioning/). TLDR:
|
||||
|
||||
- Each major version is supported for 5 years.
|
||||
- Every three months there will be a new minor release, containing bug and security fixes.
|
||||
- For criticial/security fixes there could be more minor releases inbetween. This happens *very* infrequently.
|
||||
- After five years, a final minor version is released. This usually happens in early November.
|
||||
- After that a version is considered end-of-life (EOL).
|
||||
- Around February each year is the first time an EOL-release will not have received regular updates anymore.
|
||||
|
||||
Technically, we'd not want to have EOL'ed packages in a stable NixOS release, which is to be supported until one month after the previous release. Thus, with NixOS' release schedule in May and November, the oldest PostgreSQL version in nixpkgs would have to be supported until December. It could be argued that a soon-to-be-EOL-ed version should thus be removed in May for the .05 release already. But since new security vulnerabilities are first disclosed in Februrary of the following year, we agreed on keeping the oldest PostgreSQL major version around one more cycle in [#310580](https://github.com/NixOS/nixpkgs/pull/310580#discussion_r1597284693).
|
||||
|
||||
Thus:
|
||||
- In September/October the new major version will be released and added to nixos-unstable.
|
||||
- In November the last minor version for the oldest major will be released.
|
||||
- Both the current stable .05 release and nixos-unstable should be updated to the latest minor.
|
||||
- In November, before branch-off for the .11 release, the EOL-ed major will be removed from nixos-unstable.
|
||||
|
||||
This leaves a small gap of a couple of weeks after the latest minor release and the end of our support window for the .05 release, in which there could be an emergency release to other major versions of PostgreSQL - but not the oldest major we have in that branch. In that case: If we can't trivially patch the issue, we will mark the package/version as insecure **immediately**.
|
||||
|
||||
## Options {#module-services-postgres-options}
|
||||
|
||||
A complete list of options for the PostgreSQL module may be found [here](#opt-services.postgresql.enable).
|
||||
|
||||
@@ -146,6 +146,7 @@ in {
|
||||
dolphin-plugins
|
||||
spectacle
|
||||
ffmpegthumbs
|
||||
krdp
|
||||
];
|
||||
in
|
||||
requiredPackages
|
||||
|
||||
@@ -196,7 +196,7 @@ in
|
||||
Group = "archisteamfarm";
|
||||
WorkingDirectory = cfg.dataDir;
|
||||
Type = "simple";
|
||||
ExecStart = "${lib.getExe cfg.package} --no-restart --process-required --service --system-required --path ${cfg.dataDir}";
|
||||
ExecStart = "${lib.getExe cfg.package} --no-restart --service --system-required --path ${cfg.dataDir}";
|
||||
Restart = "always";
|
||||
|
||||
# copied from the default systemd service at
|
||||
|
||||
@@ -120,14 +120,9 @@ in {
|
||||
if [ ! -e "${cfg.secretsFile}" ]; then
|
||||
echo "WARNING: secrets file not found, autogenerating!"
|
||||
DIR="$(dirname "${cfg.secretsFile}")"
|
||||
if [ ! -d "$DIR" ]; then
|
||||
mkdir -p -m750 "$DIR"
|
||||
chown "${cfg.user}:${cfg.group}" "$DIR"
|
||||
fi
|
||||
dd if=/dev/random bs=18 count=1 | base64 > "${cfg.secretsFile}"
|
||||
chmod 600 "${cfg.secretsFile}"
|
||||
install -m 750 -o ${cfg.user} -g ${cfg.group} -d "$DIR"
|
||||
install -m 600 -o ${cfg.user} -g ${cfg.group} <(dd if=/dev/random bs=18 count=1 | base64) "${cfg.secretsFile}"
|
||||
fi
|
||||
chown "${cfg.user}:${cfg.group}" "${cfg.secretsFile}"
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ in {
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.qdrant.settings = {
|
||||
service.static_content_dir = mkDefault pkgs.qdrant-web-ui;
|
||||
storage.storage_path = mkDefault "/var/lib/qdrant/storage";
|
||||
storage.snapshots_path = mkDefault "/var/lib/qdrant/snapshots";
|
||||
# The following default values are the same as in the default config,
|
||||
|
||||
@@ -73,6 +73,7 @@ in
|
||||
virtualHosts.${cfg.domain}.locations."/oauth2/" = {
|
||||
proxyPass = cfg.proxy;
|
||||
extraConfig = ''
|
||||
auth_request off;
|
||||
proxy_set_header X-Scheme $scheme;
|
||||
proxy_set_header X-Auth-Request-Redirect $scheme://$host$request_uri;
|
||||
'';
|
||||
|
||||
85
nixos/modules/services/torrent/flood.nix
Normal file
85
nixos/modules/services/torrent/flood.nix
Normal file
@@ -0,0 +1,85 @@
|
||||
{ config, lib, pkgs, utils, ... }:
|
||||
|
||||
let
|
||||
cfg = config.services.flood;
|
||||
in
|
||||
{
|
||||
meta.maintainers = with lib.maintainers; [ thiagokokada ];
|
||||
|
||||
options.services.flood = {
|
||||
enable = lib.mkEnableOption "flood";
|
||||
package = lib.mkPackageOption pkgs "flood" { };
|
||||
openFirewall = lib.mkEnableOption "" // {
|
||||
description = "Whether to open the firewall for the port in {option}`services.flood.port`.";
|
||||
};
|
||||
port = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
description = "Port to bind webserver.";
|
||||
default = 3000;
|
||||
example = 3001;
|
||||
};
|
||||
host = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = "Host to bind webserver.";
|
||||
default = "localhost";
|
||||
example = "::";
|
||||
};
|
||||
extraArgs = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
description = "Extra arguments passed to `flood`.";
|
||||
default = [ ];
|
||||
example = [ "--baseuri=/" ];
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
systemd.services.flood = {
|
||||
description = "A modern web UI for various torrent clients.";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
unitConfig = {
|
||||
Documentation = "https://github.com/jesec/flood/wiki";
|
||||
};
|
||||
serviceConfig = {
|
||||
Restart = "on-failure";
|
||||
RestartSec = "3s";
|
||||
ExecStart = utils.escapeSystemdExecArgs ([
|
||||
(lib.getExe cfg.package)
|
||||
"--host"
|
||||
cfg.host
|
||||
"--port"
|
||||
(toString cfg.port)
|
||||
"--rundir=/var/lib/flood"
|
||||
] ++ cfg.extraArgs);
|
||||
|
||||
CapabilityBoundingSet = [ "" ];
|
||||
DynamicUser = true;
|
||||
LockPersonality = true;
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = true;
|
||||
PrivateTmp = true;
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
ProtectSystem = "strict";
|
||||
RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
StateDirectory = "flood";
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = [ "@system-service" "@pkey" "~@privileged" ];
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = lib.mkIf cfg.openFirewall [
|
||||
cfg.port
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1136,6 +1136,6 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with maintainers; [ mvs tcmal ];
|
||||
meta.maintainers = with maintainers; [ mvs ];
|
||||
meta.doc = ./akkoma.md;
|
||||
}
|
||||
|
||||
@@ -46,10 +46,10 @@ let
|
||||
version = src.version;
|
||||
src = pkgs.invoiceplane;
|
||||
|
||||
postPhase = ''
|
||||
postPatch = ''
|
||||
# Patch index.php file to load additional config file
|
||||
substituteInPlace index.php \
|
||||
--replace "require('vendor/autoload.php');" "require('vendor/autoload.php'); \$dotenv = Dotenv\Dotenv::createImmutable(__DIR__, 'extraConfig.php'); \$dotenv->load();";
|
||||
--replace-fail "require('vendor/autoload.php');" "require('vendor/autoload.php'); \$dotenv = Dotenv\Dotenv::createImmutable(__DIR__, 'extraConfig.php'); \$dotenv->load();";
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -323,15 +323,15 @@ in {
|
||||
assertions = [
|
||||
{
|
||||
assertion = (hasPrefix "/" efi.efiSysMountPoint);
|
||||
message = "The ESP mount point '${efi.efiSysMountPoint}' must be an absolute path";
|
||||
message = "The ESP mount point '${toString efi.efiSysMountPoint}' must be an absolute path";
|
||||
}
|
||||
{
|
||||
assertion = cfg.xbootldrMountPoint == null || (hasPrefix "/" cfg.xbootldrMountPoint);
|
||||
message = "The XBOOTLDR mount point '${cfg.xbootldrMountPoint}' must be an absolute path";
|
||||
message = "The XBOOTLDR mount point '${toString cfg.xbootldrMountPoint}' must be an absolute path";
|
||||
}
|
||||
{
|
||||
assertion = cfg.xbootldrMountPoint != efi.efiSysMountPoint;
|
||||
message = "The XBOOTLDR mount point '${cfg.xbootldrMountPoint}' cannot be the same as the ESP mount point '${efi.efiSysMountPoint}'";
|
||||
message = "The XBOOTLDR mount point '${toString cfg.xbootldrMountPoint}' cannot be the same as the ESP mount point '${toString efi.efiSysMountPoint}'";
|
||||
}
|
||||
{
|
||||
assertion = (config.boot.kernelPackages.kernel.features or { efiBootStub = true; }) ? efiBootStub;
|
||||
|
||||
@@ -328,6 +328,7 @@ in {
|
||||
firewall-nftables = handleTest ./firewall.nix { nftables = true; };
|
||||
fish = handleTest ./fish.nix {};
|
||||
flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {};
|
||||
flood = handleTest ./flood.nix {};
|
||||
floorp = handleTest ./firefox.nix { firefoxPackage = pkgs.floorp; };
|
||||
fluentd = handleTest ./fluentd.nix {};
|
||||
fluidd = handleTest ./fluidd.nix {};
|
||||
|
||||
27
nixos/tests/flood.nix
Normal file
27
nixos/tests/flood.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
import ./make-test-python.nix ({ pkgs, ... }:
|
||||
let
|
||||
port = 3001;
|
||||
in
|
||||
{
|
||||
name = "flood";
|
||||
meta = {
|
||||
maintainers = with pkgs.lib.maintainers; [ thiagokokada ];
|
||||
};
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
services.flood = {
|
||||
inherit port;
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
extraArgs = [ "--baseuri=/" ];
|
||||
};
|
||||
};
|
||||
|
||||
testScript = /* python */ ''
|
||||
machine.start()
|
||||
machine.wait_for_unit("flood.service")
|
||||
machine.wait_for_open_port(${toString port})
|
||||
|
||||
machine.succeed("curl --fail http://localhost:${toString port}")
|
||||
'';
|
||||
})
|
||||
@@ -1,27 +1,27 @@
|
||||
args@{ pkgs, nextcloudVersion ? 22, ... }:
|
||||
{ name, pkgs, testBase, system,... }:
|
||||
|
||||
(import ../make-test-python.nix ({ pkgs, ...}: let
|
||||
adminpass = "notproduction";
|
||||
adminuser = "root";
|
||||
in {
|
||||
name = "nextcloud-basic";
|
||||
with import ../../lib/testing-python.nix { inherit system pkgs; };
|
||||
runTest ({ config, ... }: {
|
||||
inherit name;
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ globin eqyiel ];
|
||||
maintainers = [ globin eqyiel ma27 ];
|
||||
};
|
||||
|
||||
nodes = rec {
|
||||
imports = [ testBase ];
|
||||
|
||||
nodes = {
|
||||
# The only thing the client needs to do is download a file.
|
||||
client = { ... }: {
|
||||
services.davfs2.enable = true;
|
||||
systemd.tmpfiles.settings.nextcloud = {
|
||||
"/tmp/davfs2-secrets"."f+" = {
|
||||
mode = "0600";
|
||||
argument = "http://nextcloud/remote.php/dav/files/${adminuser} ${adminuser} ${adminpass}";
|
||||
argument = "http://nextcloud/remote.php/dav/files/${config.adminuser} ${config.adminuser} ${config.adminpass}";
|
||||
};
|
||||
};
|
||||
virtualisation.fileSystems = {
|
||||
"/mnt/dav" = {
|
||||
device = "http://nextcloud/remote.php/dav/files/${adminuser}";
|
||||
device = "http://nextcloud/remote.php/dav/files/${config.adminuser}";
|
||||
fsType = "davfs";
|
||||
options = let
|
||||
davfs2Conf = (pkgs.writeText "davfs2.conf" "secrets /tmp/davfs2-secrets");
|
||||
@@ -30,11 +30,7 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
nextcloud = { config, pkgs, ... }: let
|
||||
cfg = config;
|
||||
in {
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
|
||||
nextcloud = { config, pkgs, ... }: {
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/nextcloud-data 0750 nextcloud nginx - -"
|
||||
];
|
||||
@@ -42,14 +38,7 @@ in {
|
||||
services.nextcloud = {
|
||||
enable = true;
|
||||
datadir = "/var/lib/nextcloud-data";
|
||||
hostName = "nextcloud";
|
||||
database.createLocally = true;
|
||||
config = {
|
||||
# Don't inherit adminuser since "root" is supposed to be the default
|
||||
adminpassFile = "${pkgs.writeText "adminpass" adminpass}"; # Don't try this at home!
|
||||
dbtableprefix = "nixos_";
|
||||
};
|
||||
package = pkgs.${"nextcloud" + (toString nextcloudVersion)};
|
||||
config.dbtableprefix = "nixos_";
|
||||
autoUpdateApps = {
|
||||
enable = true;
|
||||
startAt = "20:00";
|
||||
@@ -57,64 +46,31 @@ in {
|
||||
phpExtraExtensions = all: [ all.bz2 ];
|
||||
};
|
||||
|
||||
environment.systemPackages = [ cfg.services.nextcloud.occ ];
|
||||
specialisation.withoutMagick.configuration = {
|
||||
services.nextcloud.enableImagemagick = false;
|
||||
};
|
||||
};
|
||||
|
||||
nextcloudWithoutMagick = args@{ config, pkgs, lib, ... }:
|
||||
lib.mkMerge
|
||||
[ (nextcloud args)
|
||||
{ services.nextcloud.enableImagemagick = false; } ];
|
||||
};
|
||||
|
||||
testScript = { nodes, ... }: let
|
||||
withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
||||
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/dav/files/${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_USER="${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
|
||||
"''${@}"
|
||||
'';
|
||||
copySharedFile = pkgs.writeScript "copy-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
echo 'hi' | ${withRcloneEnv} ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
|
||||
'';
|
||||
|
||||
diffSharedFile = pkgs.writeScript "diff-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
|
||||
'';
|
||||
|
||||
test-helpers.extraTests = { nodes, ... }: let
|
||||
findInClosure = what: drv: pkgs.runCommand "find-in-closure" { exportReferencesGraph = [ "graph" drv ]; inherit what; } ''
|
||||
test -e graph
|
||||
grep "$what" graph >$out || true
|
||||
'';
|
||||
nextcloudUsesImagick = findInClosure "imagick" nodes.nextcloud.system.build.vm;
|
||||
nextcloudWithoutDoesntUseIt = findInClosure "imagick" nodes.nextcloudWithoutMagick.system.build.vm;
|
||||
nexcloudWithImagick = findInClosure "imagick" nodes.nextcloud.system.build.vm;
|
||||
nextcloudWithoutImagick = findInClosure "imagick" nodes.nextcloud.specialisation.withoutMagick.configuration.system.build.vm;
|
||||
in ''
|
||||
assert open("${nextcloudUsesImagick}").read() != ""
|
||||
assert open("${nextcloudWithoutDoesntUseIt}").read() == ""
|
||||
with subtest("File is in proper nextcloud home"):
|
||||
nextcloud.succeed("test -f ${nodes.nextcloud.services.nextcloud.datadir}/data/root/files/test-shared-file")
|
||||
|
||||
nextcloud.start()
|
||||
client.start()
|
||||
nextcloud.wait_for_unit("multi-user.target")
|
||||
# This is just to ensure the nextcloud-occ program is working
|
||||
nextcloud.succeed("nextcloud-occ status")
|
||||
nextcloud.succeed("curl -sSf http://nextcloud/login")
|
||||
# Ensure that no OpenSSL 1.1 is used.
|
||||
nextcloud.succeed(
|
||||
"${nodes.nextcloud.services.phpfpm.pools.nextcloud.phpPackage}/bin/php -i | grep 'OpenSSL Library Version' | awk -F'=>' '{ print $2 }' | awk '{ print $2 }' | grep -v 1.1"
|
||||
)
|
||||
nextcloud.succeed(
|
||||
"${withRcloneEnv} ${copySharedFile}"
|
||||
)
|
||||
client.wait_for_unit("multi-user.target")
|
||||
nextcloud.succeed("test -f /var/lib/nextcloud-data/data/root/files/test-shared-file")
|
||||
client.succeed(
|
||||
"${withRcloneEnv} ${diffSharedFile}"
|
||||
)
|
||||
assert "hi" in client.succeed("cat /mnt/dav/test-shared-file")
|
||||
nextcloud.succeed("grep -vE '^HBEGIN:oc_encryption_module' /var/lib/nextcloud-data/data/root/files/test-shared-file")
|
||||
with subtest("Closure checks"):
|
||||
assert open("${nexcloudWithImagick}").read() != ""
|
||||
assert open("${nextcloudWithoutImagick}").read() == ""
|
||||
|
||||
with subtest("Davfs2"):
|
||||
assert "hi" in client.succeed("cat /mnt/dav/test-shared-file")
|
||||
|
||||
with subtest("Ensure SSE is disabled by default"):
|
||||
nextcloud.succeed("grep -vE '^HBEGIN:oc_encryption_module' /var/lib/nextcloud-data/data/root/files/test-shared-file")
|
||||
'';
|
||||
})) args
|
||||
})
|
||||
|
||||
@@ -5,21 +5,108 @@
|
||||
|
||||
with pkgs.lib;
|
||||
|
||||
foldl
|
||||
(matrix: ver: matrix // {
|
||||
"basic${toString ver}" = import ./basic.nix { inherit system pkgs; nextcloudVersion = ver; };
|
||||
"with-postgresql-and-redis${toString ver}" = import ./with-postgresql-and-redis.nix {
|
||||
inherit system pkgs;
|
||||
nextcloudVersion = ver;
|
||||
let
|
||||
baseModule = { config, ... }: {
|
||||
imports = [
|
||||
{
|
||||
options.test-helpers = {
|
||||
rclone = mkOption { type = types.str; };
|
||||
upload-sample = mkOption { type = types.str; };
|
||||
check-sample = mkOption { type = types.str; };
|
||||
init = mkOption { type = types.str; default = ""; };
|
||||
extraTests = mkOption { type = types.either types.str (types.functionTo types.str); default = ""; };
|
||||
};
|
||||
options.adminuser = mkOption { type = types.str; };
|
||||
options.adminpass = mkOption { type = types.str; };
|
||||
}
|
||||
];
|
||||
|
||||
adminuser = "root";
|
||||
adminpass = "hunter2";
|
||||
|
||||
test-helpers.rclone = "${pkgs.writeShellScript "rclone" ''
|
||||
set -euo pipefail
|
||||
export PATH="${pkgs.rclone}/bin:$PATH"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
||||
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/dav/files/${config.adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_USER="${config.adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(rclone obscure ${config.adminpass})"
|
||||
exec "$@"
|
||||
''}";
|
||||
test-helpers.upload-sample = "${pkgs.writeShellScript "rclone-upload" ''
|
||||
<<<'hi' rclone rcat nextcloud:test-shared-file
|
||||
''}";
|
||||
test-helpers.check-sample = "${pkgs.writeShellScript "check-sample" ''
|
||||
set -e
|
||||
diff <(echo 'hi') <(rclone cat nextcloud:test-shared-file)
|
||||
''}";
|
||||
|
||||
nodes = {
|
||||
client = { ... }: {};
|
||||
nextcloud = {
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
services.nextcloud = {
|
||||
enable = true;
|
||||
hostName = "nextcloud";
|
||||
https = false;
|
||||
database.createLocally = true;
|
||||
config = {
|
||||
adminpassFile = "${pkgs.writeText "adminpass" config.adminpass}"; # Don't try this at home!
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
"with-mysql-and-memcached${toString ver}" = import ./with-mysql-and-memcached.nix {
|
||||
inherit system pkgs;
|
||||
nextcloudVersion = ver;
|
||||
};
|
||||
"with-declarative-redis-and-secrets${toString ver}" = import ./with-declarative-redis-and-secrets.nix {
|
||||
inherit system pkgs;
|
||||
nextcloudVersion = ver;
|
||||
};
|
||||
})
|
||||
{ }
|
||||
[ 27 28 29 ]
|
||||
|
||||
testScript = args@{ nodes, ... }: let
|
||||
inherit (config) test-helpers;
|
||||
in mkBefore ''
|
||||
nextcloud.start()
|
||||
client.start()
|
||||
nextcloud.wait_for_unit("multi-user.target")
|
||||
|
||||
${test-helpers.init}
|
||||
|
||||
with subtest("Ensure nextcloud-occ is working"):
|
||||
nextcloud.succeed("nextcloud-occ status")
|
||||
nextcloud.succeed("curl -sSf http://nextcloud/login")
|
||||
|
||||
with subtest("Upload/Download test"):
|
||||
nextcloud.succeed(
|
||||
"${test-helpers.rclone} ${test-helpers.upload-sample}"
|
||||
)
|
||||
client.wait_for_unit("multi-user.target")
|
||||
client.succeed(
|
||||
"${test-helpers.rclone} ${test-helpers.check-sample}"
|
||||
)
|
||||
|
||||
${if builtins.isFunction test-helpers.extraTests then test-helpers.extraTests args else test-helpers.extraTests}
|
||||
'';
|
||||
};
|
||||
|
||||
genTests = version:
|
||||
let
|
||||
testBase.imports = [
|
||||
baseModule
|
||||
{
|
||||
nodes.nextcloud = { pkgs, ... }: {
|
||||
services.nextcloud.package = pkgs.${"nextcloud${toString version}"};
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
callNextcloudTest = path:
|
||||
let
|
||||
name = "${removeSuffix ".nix" (baseNameOf path)}${toString version}";
|
||||
in nameValuePair name (import path {
|
||||
inherit system pkgs testBase;
|
||||
name = "nextcloud-${name}";
|
||||
});
|
||||
in map callNextcloudTest [
|
||||
./basic.nix
|
||||
./with-mysql-and-memcached.nix
|
||||
./with-postgresql-and-redis.nix
|
||||
./with-objectstore.nix
|
||||
];
|
||||
in
|
||||
listToAttrs (concatMap genTests [ 27 28 29 ])
|
||||
|
||||
@@ -1,79 +1,37 @@
|
||||
args@{ pkgs, nextcloudVersion ? 22, ... }:
|
||||
{ pkgs, testBase, system, ... }:
|
||||
|
||||
(import ../make-test-python.nix ({ pkgs, ...}: let
|
||||
adminpass = "hunter2";
|
||||
adminuser = "root";
|
||||
in {
|
||||
with import ../../lib/testing-python.nix { inherit system pkgs; };
|
||||
runTest ({ config, ... }: {
|
||||
name = "nextcloud-with-mysql-and-memcached";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ eqyiel ];
|
||||
};
|
||||
|
||||
imports = [ testBase ];
|
||||
|
||||
nodes = {
|
||||
# The only thing the client needs to do is download a file.
|
||||
client = { ... }: {};
|
||||
|
||||
nextcloud = { config, pkgs, ... }: {
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
|
||||
services.nextcloud = {
|
||||
enable = true;
|
||||
hostName = "nextcloud";
|
||||
https = true;
|
||||
package = pkgs.${"nextcloud" + (toString nextcloudVersion)};
|
||||
caching = {
|
||||
apcu = true;
|
||||
redis = false;
|
||||
memcached = true;
|
||||
};
|
||||
database.createLocally = true;
|
||||
config = {
|
||||
dbtype = "mysql";
|
||||
# Don't inherit adminuser since "root" is supposed to be the default
|
||||
adminpassFile = "${pkgs.writeText "adminpass" adminpass}"; # Don't try this at home!
|
||||
};
|
||||
config.dbtype = "mysql";
|
||||
};
|
||||
|
||||
services.memcached.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = let
|
||||
test-helpers.init = let
|
||||
configureMemcached = pkgs.writeScript "configure-memcached" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
nextcloud-occ config:system:set memcached_servers 0 0 --value 127.0.0.1 --type string
|
||||
nextcloud-occ config:system:set memcached_servers 0 1 --value 11211 --type integer
|
||||
nextcloud-occ config:system:set memcache.local --value '\OC\Memcache\APCu' --type string
|
||||
nextcloud-occ config:system:set memcache.distributed --value '\OC\Memcache\Memcached' --type string
|
||||
'';
|
||||
withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
||||
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/dav/files/${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_USER="${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
|
||||
'';
|
||||
copySharedFile = pkgs.writeScript "copy-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
echo 'hi' | ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
|
||||
'';
|
||||
|
||||
diffSharedFile = pkgs.writeScript "diff-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
|
||||
'';
|
||||
in ''
|
||||
start_all()
|
||||
nextcloud.wait_for_unit("multi-user.target")
|
||||
nextcloud.succeed("${configureMemcached}")
|
||||
nextcloud.succeed("curl -sSf http://nextcloud/login")
|
||||
nextcloud.succeed(
|
||||
"${withRcloneEnv} ${copySharedFile}"
|
||||
)
|
||||
client.wait_for_unit("multi-user.target")
|
||||
client.succeed(
|
||||
"${withRcloneEnv} ${diffSharedFile}"
|
||||
)
|
||||
'';
|
||||
})) args
|
||||
})
|
||||
|
||||
96
nixos/tests/nextcloud/with-objectstore.nix
Normal file
96
nixos/tests/nextcloud/with-objectstore.nix
Normal file
@@ -0,0 +1,96 @@
|
||||
{ name, pkgs, testBase, system, ... }:
|
||||
|
||||
with import ../../lib/testing-python.nix { inherit system pkgs; };
|
||||
runTest ({ config, lib, ... }: let
|
||||
accessKey = "BKIKJAA5BMMU2RHO6IBB";
|
||||
secretKey = "V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12";
|
||||
|
||||
rootCredentialsFile = pkgs.writeText "minio-credentials-full" ''
|
||||
MINIO_ROOT_USER=${accessKey}
|
||||
MINIO_ROOT_PASSWORD=${secretKey}
|
||||
'';
|
||||
in {
|
||||
inherit name;
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ onny ma27 ];
|
||||
};
|
||||
|
||||
imports = [ testBase ];
|
||||
|
||||
nodes = {
|
||||
nextcloud = { config, pkgs, ... }: {
|
||||
networking.firewall.allowedTCPPorts = [ 9000 ];
|
||||
environment.systemPackages = [ pkgs.minio-client ];
|
||||
|
||||
services.nextcloud.config.objectstore.s3 = {
|
||||
enable = true;
|
||||
bucket = "nextcloud";
|
||||
autocreate = true;
|
||||
key = accessKey;
|
||||
secretFile = "${pkgs.writeText "secretKey" secretKey}";
|
||||
hostname = "nextcloud";
|
||||
useSsl = false;
|
||||
port = 9000;
|
||||
usePathStyle = true;
|
||||
region = "us-east-1";
|
||||
};
|
||||
|
||||
services.minio = {
|
||||
enable = true;
|
||||
listenAddress = "0.0.0.0:9000";
|
||||
consoleAddress = "0.0.0.0:9001";
|
||||
inherit rootCredentialsFile;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
test-helpers.init = ''
|
||||
nextcloud.wait_for_open_port(9000)
|
||||
'';
|
||||
|
||||
test-helpers.extraTests = { nodes, ... }: ''
|
||||
with subtest("File is not on the filesystem"):
|
||||
nextcloud.succeed("test ! -e ${nodes.nextcloud.services.nextcloud.home}/data/root/files/test-shared-file")
|
||||
|
||||
with subtest("Check if file is in S3"):
|
||||
nextcloud.succeed(
|
||||
"mc config host add minio http://localhost:9000 ${accessKey} ${secretKey} --api s3v4"
|
||||
)
|
||||
files = nextcloud.succeed('mc ls minio/nextcloud|sort').strip().split('\n')
|
||||
|
||||
# Cannot assert an exact number here, nc27 writes more stuff initially into S3.
|
||||
# For now let's assume it's always the most recently added file.
|
||||
assert len(files) > 0, f"""
|
||||
Expected to have at least one object in minio/nextcloud. But `mc ls` gave output:
|
||||
|
||||
'{files}'
|
||||
"""
|
||||
|
||||
import re
|
||||
ptrn = re.compile("^\[[A-Z0-9 :-]+\] +(?P<details>[A-Za-z0-9 :]+)$")
|
||||
match = ptrn.match(files[-1].strip())
|
||||
assert match, "Cannot match mc client output!"
|
||||
size, type_, file = tuple(match.group('details').split(' '))
|
||||
|
||||
assert size == "3B", f"""
|
||||
Expected size of uploaded file to be 3 bytes, got {size}
|
||||
"""
|
||||
|
||||
assert type_ == 'STANDARD', f"""
|
||||
Expected type of bucket entry to be a file, i.e. 'STANDARD'. Got {type_}
|
||||
"""
|
||||
|
||||
assert file.startswith('urn:oid'), """
|
||||
Expected filename to start with 'urn:oid', instead got '{file}.
|
||||
"""
|
||||
|
||||
with subtest("Test download from S3"):
|
||||
client.succeed(
|
||||
"env AWS_ACCESS_KEY_ID=${accessKey} AWS_SECRET_ACCESS_KEY=${secretKey} "
|
||||
+ f"${lib.getExe pkgs.awscli2} s3 cp s3://nextcloud/{file} test --endpoint-url http://nextcloud:9000 "
|
||||
+ "--region us-east-1"
|
||||
)
|
||||
|
||||
client.succeed("test hi = $(cat test)")
|
||||
'';
|
||||
})
|
||||
@@ -1,45 +1,30 @@
|
||||
args@{ pkgs, nextcloudVersion ? 22, ... }:
|
||||
{ name, pkgs, testBase, system, ... }:
|
||||
|
||||
(import ../make-test-python.nix ({ pkgs, ...}: let
|
||||
adminpass = "hunter2";
|
||||
adminuser = "custom-admin-username";
|
||||
in {
|
||||
name = "nextcloud-with-postgresql-and-redis";
|
||||
with import ../../lib/testing-python.nix { inherit system pkgs; };
|
||||
runTest ({ config, ... }: {
|
||||
inherit name;
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ eqyiel ];
|
||||
maintainers = [ eqyiel ma27 ];
|
||||
};
|
||||
|
||||
imports = [ testBase ];
|
||||
|
||||
nodes = {
|
||||
# The only thing the client needs to do is download a file.
|
||||
client = { ... }: {};
|
||||
|
||||
nextcloud = { config, pkgs, lib, ... }: {
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
|
||||
services.nextcloud = {
|
||||
enable = true;
|
||||
hostName = "nextcloud";
|
||||
package = pkgs.${"nextcloud" + (toString nextcloudVersion)};
|
||||
caching = {
|
||||
apcu = false;
|
||||
redis = true;
|
||||
memcached = false;
|
||||
};
|
||||
database.createLocally = true;
|
||||
config = {
|
||||
dbtype = "pgsql";
|
||||
inherit adminuser;
|
||||
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
||||
${adminpass}
|
||||
'');
|
||||
};
|
||||
config.dbtype = "pgsql";
|
||||
notify_push = {
|
||||
enable = true;
|
||||
logLevel = "debug";
|
||||
};
|
||||
extraAppsEnable = true;
|
||||
extraApps = {
|
||||
inherit (pkgs."nextcloud${lib.versions.major config.services.nextcloud.package.version}Packages".apps) notify_push notes;
|
||||
extraApps = with config.services.nextcloud.package.packages.apps; {
|
||||
inherit notify_push notes;
|
||||
};
|
||||
settings.trusted_proxies = [ "::1" ];
|
||||
};
|
||||
@@ -49,50 +34,27 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
testScript = let
|
||||
test-helpers.init = let
|
||||
configureRedis = pkgs.writeScript "configure-redis" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
nextcloud-occ config:system:set redis 'host' --value 'localhost' --type string
|
||||
nextcloud-occ config:system:set redis 'port' --value 6379 --type integer
|
||||
nextcloud-occ config:system:set memcache.local --value '\OC\Memcache\Redis' --type string
|
||||
nextcloud-occ config:system:set memcache.locking --value '\OC\Memcache\Redis' --type string
|
||||
'';
|
||||
withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
||||
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/dav/files/${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_USER="${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
|
||||
"''${@}"
|
||||
'';
|
||||
copySharedFile = pkgs.writeScript "copy-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
echo 'hi' | ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
|
||||
'';
|
||||
|
||||
diffSharedFile = pkgs.writeScript "diff-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
|
||||
'';
|
||||
in ''
|
||||
start_all()
|
||||
nextcloud.wait_for_unit("multi-user.target")
|
||||
nextcloud.succeed("${configureRedis}")
|
||||
nextcloud.succeed("curl -sSf http://nextcloud/login")
|
||||
nextcloud.succeed(
|
||||
"${withRcloneEnv} ${copySharedFile}"
|
||||
)
|
||||
client.wait_for_unit("multi-user.target")
|
||||
client.execute("${pkgs.lib.getExe pkgs.nextcloud-notify_push.passthru.test_client} http://nextcloud ${adminuser} ${adminpass} >&2 &")
|
||||
client.succeed(
|
||||
"${withRcloneEnv} ${diffSharedFile}"
|
||||
)
|
||||
nextcloud.wait_until_succeeds("journalctl -u nextcloud-notify_push | grep -q \"Sending ping to ${adminuser}\"")
|
||||
|
||||
# redis cache should not be empty
|
||||
nextcloud.fail('test "[]" = "$(redis-cli --json KEYS "*")"')
|
||||
|
||||
nextcloud.fail("curl -f http://nextcloud/nix-apps/notes/lib/AppInfo/Application.php")
|
||||
'';
|
||||
})) args
|
||||
|
||||
test-helpers.extraTests = ''
|
||||
with subtest("notify-push"):
|
||||
client.execute("${pkgs.lib.getExe pkgs.nextcloud-notify_push.passthru.test_client} http://nextcloud ${config.adminuser} ${config.adminpass} >&2 &")
|
||||
nextcloud.wait_until_succeeds("journalctl -u nextcloud-notify_push | grep -q \"Sending ping to ${config.adminuser}\"")
|
||||
|
||||
with subtest("Redis is used for caching"):
|
||||
# redis cache should not be empty
|
||||
nextcloud.fail('test "[]" = "$(redis-cli --json KEYS "*")"')
|
||||
|
||||
with subtest("No code is returned when requesting PHP files (regression test)"):
|
||||
nextcloud.fail("curl -f http://nextcloud/nix-apps/notes/lib/AppInfo/Application.php")
|
||||
'';
|
||||
})
|
||||
|
||||
@@ -2,24 +2,25 @@
|
||||
|
||||
let
|
||||
pname = "plexamp";
|
||||
version = "4.8.3";
|
||||
version = "4.10.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage";
|
||||
name="${pname}-${version}.AppImage";
|
||||
hash = "sha512-CrSXmRVatVSkMyB1QaNSL/tK60rQvT9JraRtYYLl0Fau3M1LJXK9yqvt77AjwIwIvi2Dm5SROG+c4rA1XtI4Yg==";
|
||||
name = "${pname}-${version}.AppImage";
|
||||
hash = "sha512-Y43W6aPnZEMnkBQwSHbT8PWjuhkfNxce79Y9cixEPnq4VybROHGb9s6ghV7kP81TSWkb9QruFhmXfuJRSkXxTw==";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
inherit pname version src;
|
||||
};
|
||||
in appimageTools.wrapType2 {
|
||||
in
|
||||
appimageTools.wrapType2 {
|
||||
inherit pname version src;
|
||||
|
||||
extraInstallCommands = ''
|
||||
install -m 444 -D ${appimageContents}/plexamp.desktop $out/share/applications/plexamp.desktop
|
||||
install -m 444 -D ${appimageContents}/plexamp.png \
|
||||
$out/share/icons/hicolor/512x512/apps/plexamp.png
|
||||
install -m 444 -D ${appimageContents}/plexamp.svg \
|
||||
$out/share/icons/hicolor/scalable/apps/plexamp.svg
|
||||
substituteInPlace $out/share/applications/${pname}.desktop \
|
||||
--replace 'Exec=AppRun' 'Exec=${pname}'
|
||||
'';
|
||||
@@ -29,9 +30,9 @@ in appimageTools.wrapType2 {
|
||||
meta = with lib; {
|
||||
description = "Beautiful Plex music player for audiophiles, curators, and hipsters";
|
||||
homepage = "https://plexamp.com/";
|
||||
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/53";
|
||||
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/73";
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ killercup synthetica ];
|
||||
maintainers = with maintainers; [ killercup redhawk synthetica ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
set -Eeuxo pipefail
|
||||
|
||||
cleanup() {
|
||||
rm -rf "$TMPDIR"
|
||||
rm -rf "$TMPDIR"
|
||||
}
|
||||
|
||||
trap cleanup EXIT
|
||||
@@ -42,9 +42,10 @@ if diff "$DEFAULT_NIX" "$WORKING_NIX"; then
|
||||
fi
|
||||
|
||||
# update sha hash (convenietly provided)
|
||||
sed -i "s@sha.* = .*;@sha512 = \"$SHA512\";@g" "$WORKING_NIX"
|
||||
sed -i "s@hash.* = .*;@hash = \"sha512-$SHA512\";@g" "$WORKING_NIX"
|
||||
|
||||
# update the changelog ("just" increment the number)
|
||||
# manually check that the changelog corresponds to our Plexamp version
|
||||
CHANGELOG_URL=$(rg --only-matching 'changelog = "(.+)";' --replace '$1' $WORKING_NIX)
|
||||
CHANGELOG_NUMBER=$(rg --only-matching '.*/([0-9]+)' --replace '$1' <<< $CHANGELOG_URL)
|
||||
NEXT_CHANGELOG=$(($CHANGELOG_NUMBER + 1))
|
||||
|
||||
@@ -457,15 +457,17 @@
|
||||
dependencies = with self; [ copilot-lua plenary-nvim ];
|
||||
};
|
||||
|
||||
copilot-vim = super.copilot-vim.overrideAttrs {
|
||||
copilot-vim = super.copilot-vim.overrideAttrs (old: {
|
||||
postInstall = ''
|
||||
substituteInPlace $out/autoload/copilot/client.vim \
|
||||
--replace " let node = get(g:, 'copilot_node_command', ''\'''\')" \
|
||||
" let node = get(g:, 'copilot_node_command', '${nodejs}/bin/node')"
|
||||
'';
|
||||
|
||||
meta.license = lib.licenses.unfree;
|
||||
};
|
||||
meta = old.meta // {
|
||||
license = lib.licenses.unfree;
|
||||
};
|
||||
});
|
||||
|
||||
coq_nvim = super.coq_nvim.overrideAttrs {
|
||||
passthru.python3Dependencies = ps:
|
||||
|
||||
@@ -484,6 +484,23 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
banacorn.agda-mode = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "banacorn";
|
||||
name = "agda-mode";
|
||||
version = "0.4.7";
|
||||
hash = "sha256-gNa3n16lP3ooBRvGaugTua4IXcIzpMk7jBYMJDQsY00=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/banacorn.agda-mode/changelog";
|
||||
description = "agda-mode on VS Code";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=banacorn.agda-mode";
|
||||
homepage = "https://github.com/banacorn/agda-mode-vscode";
|
||||
maintainers = with lib.maintainers; [ Anillc ];
|
||||
license = lib.licenses.mit;
|
||||
};
|
||||
};
|
||||
|
||||
batisteo.vscode-django = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "batisteo";
|
||||
@@ -655,6 +672,23 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
bierner.markdown-preview-github-styles = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "markdown-preview-github-styles";
|
||||
publisher = "bierner";
|
||||
version = "2.0.4";
|
||||
hash = "sha256-jJulxvjMNsqQqmsb5szQIAUuLWuHw824Caa0KArjUVw=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/bierner.markdown-preview-github-styles/changelog";
|
||||
description = "Changes VS Code's built-in markdown preview to match GitHub's styling";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=bierner.markdown-preview-github-styles";
|
||||
homepage = "https://github.com/mjbvz/vscode-github-markdown-preview-style";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.uncenter ];
|
||||
};
|
||||
};
|
||||
|
||||
biomejs.biome = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "biome";
|
||||
@@ -680,10 +714,17 @@ let
|
||||
mktplcRef = {
|
||||
name = "vscode-fish";
|
||||
publisher = "bmalehorn";
|
||||
version = "1.0.35";
|
||||
hash = "sha256-V51Qe6M1CMm9fLOSFEwqeZiC8tWCbVH0AzkLe7kR2vY=";
|
||||
version = "1.0.38";
|
||||
hash = "sha256-QEifCTlzYMX+5H6+k2o1lsQrhW3vxVpn+KFg/3WVVFo=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/bmalehorn.vscode-fish/changelog";
|
||||
description = "Fish syntax highlighting and formatting for VS Code";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=bmalehorn.vscode-fish";
|
||||
homepage = "https://github.com/bmalehorn/vscode-fish";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.uncenter ];
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
bmewburn.vscode-intelephense-client = buildVscodeMarketplaceExtension {
|
||||
@@ -1698,6 +1739,23 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
fabiospampinato.vscode-open-in-github = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "vscode-open-in-github";
|
||||
publisher = "fabiospampinato";
|
||||
version = "2.3.0";
|
||||
hash = "sha256-vrW6uZyeEJipGtfz7BEeeAwiwtBlfQLjC7jAP1v5GoE=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/fabiospampinato.vscode-open-in-github/changelog";
|
||||
description = "VS Code extension to open the current project or file in github.com";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=fabiospampinato.vscode-open-in-github";
|
||||
homepage = "https://github.com/fabiospampinato/vscode-open-in-github";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.uncenter ];
|
||||
};
|
||||
};
|
||||
|
||||
file-icons.file-icons = buildVscodeMarketplaceExtension {
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/file-icons.file-icons/changelog";
|
||||
@@ -2667,6 +2725,23 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
kravets.vscode-publint = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "vscode-publint";
|
||||
publisher = "Kravets";
|
||||
version = "0.0.1";
|
||||
hash = "sha256-6nG5Yqi8liumQ2K9ynV8mNXiXGaGo/cp4Cib1kqdp1c=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/Kravets.vscode-publint/changelog";
|
||||
description = "Lint packaging errors in VS Code with publint";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=Kravets.vscode-publint";
|
||||
homepage = "https://github.com/kravetsone/vscode-publint";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.uncenter ];
|
||||
};
|
||||
};
|
||||
|
||||
kubukoz.nickel-syntax = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "nickel-syntax";
|
||||
@@ -2872,6 +2947,23 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
mesonbuild.mesonbuild = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "mesonbuild";
|
||||
name = "mesonbuild";
|
||||
version = "1.24.0";
|
||||
hash = "sha256-n7c2CUiTIej2Y/QMGWpv6anuCDjqpo2W+hJylfvvMVE=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/mesonbuild.mesonbuild/changelog";
|
||||
description = "Meson language support for Visual Studio Code";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=mesonbuild.mesonbuild";
|
||||
homepage = "https://github.com/mesonbuild/vscode-meson";
|
||||
maintainers = with lib.maintainers; [ Anillc ];
|
||||
license = lib.licenses.asl20;
|
||||
};
|
||||
};
|
||||
|
||||
mgt19937.typst-preview = callPackage ./mgt19937.typst-preview { };
|
||||
|
||||
mhutchie.git-graph = buildVscodeMarketplaceExtension {
|
||||
@@ -3364,6 +3456,23 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
nefrob.vscode-just-syntax = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "vscode-just-syntax";
|
||||
publisher = "nefrob";
|
||||
version = "0.3.0";
|
||||
hash = "sha256-WBoqH9TNco9lyjOJfP54DynjmYZmPUY+YrZ1rQlC518=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/nefrob.vscode-just-syntax/changelog";
|
||||
description = "Justfile syntax support for Visual Studio Code";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=nefrob.vscode-just-syntax";
|
||||
homepage = "https://github.com/nefrob/vscode-just";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.uncenter ];
|
||||
};
|
||||
};
|
||||
|
||||
njpwerner.autodocstring = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "autodocstring";
|
||||
@@ -5046,6 +5155,22 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
zguolee.tabler-icons = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "tabler-icons";
|
||||
publisher = "zguolee";
|
||||
version = "0.3.4";
|
||||
hash = "sha256-0XvB9UXqKHbL/ejUfciSvFzZ3GacaQ7pq6hJqRaxq+8=";
|
||||
};
|
||||
meta = {
|
||||
description = "Tabler product icon theme for Visual Studio Code";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=zguolee.tabler-icons";
|
||||
homepage = "https://github.com/zguolee/vscode-tabler-icons";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.uncenter ];
|
||||
};
|
||||
};
|
||||
|
||||
zhuangtongfa.material-theme = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "material-theme";
|
||||
|
||||
@@ -15,11 +15,11 @@ let
|
||||
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
|
||||
|
||||
sha256 = {
|
||||
x86_64-linux = "1zmgvadhsnsbmqb559kvf66i7h6iq7vw99m7vdxcfmdl6c1pwyvb";
|
||||
x86_64-darwin = "061h423vay3d28d2015llz7pwlqcrjy0lmw47xgy3iy6hfadrra2";
|
||||
aarch64-linux = "0n288h6369bazykp6jyapi6yz0k7nivql6wz68fgkagfdyxzl1yb";
|
||||
aarch64-darwin = "13k9hvbzj8xyfi29g0x4nz80gmjq3s693zi5fi4lbf4bj7jmcamq";
|
||||
armv7l-linux = "19p6k1rgy83vs76hksjx5d4v32jq31r6aw5kzcc8gsq114xj9c2a";
|
||||
x86_64-linux = "1r76ikfikagg9v278pgiqhnjsv7pqn0xi372y1l0wsashlxl7kb0";
|
||||
x86_64-darwin = "156604xzazmb54p0rdkv5wy9livg0xz2jviycdizablmvsxybs57";
|
||||
aarch64-linux = "0cp120pcjpgf9qvmks9f8l2caxqlvnqvmxa7fh9mf83zpkdmnsnl";
|
||||
aarch64-darwin = "1k06648jx64irshs0v4qy6xlkd9mk514xf21dlfhvic4aj89kcx9";
|
||||
armv7l-linux = "0jy8hkbxh1969kskggg2y86cphly9l9gs7y4plj90jmlvlzjjjxm";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
sourceRoot = lib.optionalString (!stdenv.isDarwin) ".";
|
||||
@@ -29,7 +29,7 @@ in
|
||||
|
||||
# Please backport all compatible updates to the stable release.
|
||||
# This is important for the extension ecosystem.
|
||||
version = "1.90.0.24158";
|
||||
version = "1.90.1.24165";
|
||||
pname = "vscodium";
|
||||
|
||||
executableName = "codium";
|
||||
|
||||
@@ -55,20 +55,20 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "beetle-pce-libretro",
|
||||
"rev": "0eb4b423452da40dbf4393e09d4126c3090a1210",
|
||||
"hash": "sha256-PhhItDKvlvx3uBDx+xEUVr0sW2Y9HiTR/IvsnXVNAqo="
|
||||
"rev": "3d91a940b3a48254152a8789b79616ceefe4067f",
|
||||
"hash": "sha256-6zXl49Rns6wCZmcEUWkWqYeSH6W1+qs6Sb998pQ/+Lo="
|
||||
},
|
||||
"version": "unstable-2024-05-17"
|
||||
"version": "unstable-2024-06-14"
|
||||
},
|
||||
"beetle-pce-fast": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "beetle-pce-fast-libretro",
|
||||
"rev": "414149d335ce2a3284db6cdffbb8ed2ce42dbe5f",
|
||||
"hash": "sha256-sta71o4NJIPDZlQkAFLzx+XlHVA8MmUjuZ17MuCKhOY="
|
||||
"rev": "a653bbbdc5cf2bf960e614efdcf9446a9aa8cdf9",
|
||||
"hash": "sha256-ty4Uluo8D8x+jB7fOqI/AgpTxdttzpbeARiICd3oh9c="
|
||||
},
|
||||
"version": "unstable-2024-05-17"
|
||||
"version": "unstable-2024-06-14"
|
||||
},
|
||||
"beetle-pcfx": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -85,10 +85,10 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "beetle-psx-libretro",
|
||||
"rev": "b8e10a3039391db6e4fbdc96720d3428a2dbd039",
|
||||
"hash": "sha256-F38lUBhe9JR3dPwkLqhAAlvLtAeas8bnPuiK6eOpUuU="
|
||||
"rev": "6e881f9939dd9b33fb5f5587745524a0828c9ef4",
|
||||
"hash": "sha256-mFIqsybkpSF17HmrfReazYUqVLzuDGwCjzaV7BTLKJ8="
|
||||
},
|
||||
"version": "unstable-2024-06-07"
|
||||
"version": "unstable-2024-06-14"
|
||||
},
|
||||
"beetle-saturn": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -115,10 +115,10 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "beetle-supergrafx-libretro",
|
||||
"rev": "e3f68c1311d4684a5a59d3d1662d5c4f32662c02",
|
||||
"hash": "sha256-jTO2SDOefpB+cfahiPkReYID0pjP437h53hZElSLsdY="
|
||||
"rev": "29b2a6e12c13d623ad94dcb64e1cb341d93ff02d",
|
||||
"hash": "sha256-sbpCG3QsSn8NOjWC0snvsd7jZYClSbKI79QUnigQwzc="
|
||||
},
|
||||
"version": "unstable-2024-06-07"
|
||||
"version": "unstable-2024-06-14"
|
||||
},
|
||||
"beetle-vb": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -165,10 +165,10 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "bsnes-libretro",
|
||||
"rev": "44f6ce5dedb138ded8e59d71df18cae5b0655eba",
|
||||
"hash": "sha256-7iB2VQ3f8YVOV3C+Rkviaj7USoZdO/riDnT9kCdzc8k="
|
||||
"rev": "9131a4c705e18f7b96e7dbfcfe70b158d10afed1",
|
||||
"hash": "sha256-NotqQMBHV6E3LSXJHQ5FqIbq2OQbXx6xCbLYV9g12kQ="
|
||||
},
|
||||
"version": "unstable-2024-05-31"
|
||||
"version": "unstable-2024-06-16"
|
||||
},
|
||||
"bsnes-hd": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -297,21 +297,21 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "libretro-fceumm",
|
||||
"rev": "bc9d865f9427384e40084cb090d94d72d4970e78",
|
||||
"hash": "sha256-/g7gRNWDbW5LFZ+uBkIf5DMELas0/ilqbmUbvq8YSsE="
|
||||
"rev": "fe4a4f8a53cc7f91278f393710abb4f32c4e0a8f",
|
||||
"hash": "sha256-/rZoARZf3SfN8E0o0qm34FYCYscqeEcLg3eYSXenK8s="
|
||||
},
|
||||
"version": "unstable-2024-06-09"
|
||||
"version": "unstable-2024-06-15"
|
||||
},
|
||||
"flycast": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "flyinghead",
|
||||
"repo": "flycast",
|
||||
"rev": "4cd62781043cd9193c6c5ec04f6a8084375bed0d",
|
||||
"hash": "sha256-EKK9PNFHWm1Jakq0E6fIqmcDiiiOSgHEbixB3X/H77g=",
|
||||
"rev": "ca613db70d8897e06562fe089e3e9543b41526a0",
|
||||
"hash": "sha256-wYKHC+EvLnq+PnL1/hNcrhDyCY+4kaiSjIUKJ9SGPHc=",
|
||||
"fetchSubmodules": true
|
||||
},
|
||||
"version": "unstable-2024-06-08"
|
||||
"version": "unstable-2024-06-11"
|
||||
},
|
||||
"fmsx": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -338,30 +338,30 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "fuse-libretro",
|
||||
"rev": "847dbbd6f787823ac9a5dfacdd68ab181063374e",
|
||||
"hash": "sha256-jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM="
|
||||
"rev": "9fc41a5f153e1f2fa2dbcfdd215c7ec97d98a29c",
|
||||
"hash": "sha256-eEgPnSIpKC7s+4JoEHDGPlwYPa5Y8EpoxmNhyOIIcU8="
|
||||
},
|
||||
"version": "unstable-2023-06-23"
|
||||
"version": "unstable-2024-06-16"
|
||||
},
|
||||
"gambatte": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "gambatte-libretro",
|
||||
"rev": "e2031a4010463adcd00ce3f34acbbb6db2ad1266",
|
||||
"hash": "sha256-yFj9ZkvDliaTO43l0fjg8FwD17MxjV4wszY7AVjTiNY="
|
||||
"rev": "863002046a812758da6064daaf579fef1cec19a3",
|
||||
"hash": "sha256-7rkyMcaKDNOESNrmwYCKM71x3WM8eSN9LBX0xOQRhJ0="
|
||||
},
|
||||
"version": "unstable-2024-06-07"
|
||||
"version": "unstable-2024-06-14"
|
||||
},
|
||||
"genesis-plus-gx": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "Genesis-Plus-GX",
|
||||
"rev": "60955a01f601ef73c02b07581dd7d5aa3b6a4788",
|
||||
"hash": "sha256-h0T6i1kiN58TagFo5XHzXMLaEwkGGTyuZpyS1QGNrb8="
|
||||
"rev": "4e54d585d540d461ecc412c91ca4a79e2338f3b6",
|
||||
"hash": "sha256-7P6w6pXplOfpP7w+JztNd49FdKBPM8eQeSh93YAG0Y4="
|
||||
},
|
||||
"version": "unstable-2024-06-07"
|
||||
"version": "unstable-2024-06-14"
|
||||
},
|
||||
"gpsp": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -408,11 +408,11 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "mame",
|
||||
"rev": "4ee35952a8fdb1332e970fa14c3e79c8c968050c",
|
||||
"hash": "sha256-UIAMq8AIdLKX8SIF2V0+Vc6kHPJ0rmdx4BeqoSrCfFE=",
|
||||
"rev": "db65a583bd2da39514a544c58362a6ac170179ac",
|
||||
"hash": "sha256-FTsoLsx7IhyAw/pdaGAeNzysc7vZ3CcyXKWcBJ0pOb8=",
|
||||
"fetchSubmodules": true
|
||||
},
|
||||
"version": "unstable-2024-05-21"
|
||||
"version": "unstable-2024-06-13"
|
||||
},
|
||||
"mame2000": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -550,10 +550,10 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "neocd_libretro",
|
||||
"rev": "71ebe5044639b825e5bd1bd590fef3e918133b80",
|
||||
"hash": "sha256-YVxt3bJ54DD91VHkeQyYdo/BEq//lnBKd9Y42Vby3qc="
|
||||
"rev": "c5a266254ffbaa2730d2814195f60e7be153fc86",
|
||||
"hash": "sha256-MJhUYFNrtt2SSLun75OXKrT7nZzLBtyslqG9mziQuRk="
|
||||
},
|
||||
"version": "unstable-2024-02-01"
|
||||
"version": "unstable-2024-06-16"
|
||||
},
|
||||
"nestopia": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -611,10 +611,10 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "parallel-n64",
|
||||
"rev": "1b57f9199b1f8a4510f7f89f14afa9cabf9b3bdd",
|
||||
"hash": "sha256-L20RGav0FJfydOICCNhAMGxIuIvPABDtCs5tWzrh768="
|
||||
"rev": "330fa5efd306ad116c44faf6833a8108ed4144b0",
|
||||
"hash": "sha256-pltPoWfXFh9OhWnQ+XMhHVZCo6BCGr6jCDhiL5T7LNM="
|
||||
},
|
||||
"version": "unstable-2024-01-15"
|
||||
"version": "unstable-2024-06-10"
|
||||
},
|
||||
"pcsx2": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -631,43 +631,43 @@
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "pcsx_rearmed",
|
||||
"rev": "1f8c6be323aa8fad329e38682158197e822d27c1",
|
||||
"hash": "sha256-f1U7hmSywECmXwRi6vhAFjG971XsDXhsYzSAKMa2ZVY="
|
||||
"rev": "1cdeae2b66fc3ef486ec8016ed5fad437f1a4409",
|
||||
"hash": "sha256-Zw5CWDeAy3pUV4qXFIfs6kFlEaYhNhl+6pu5fOx34j0="
|
||||
},
|
||||
"version": "unstable-2024-05-30"
|
||||
"version": "unstable-2024-06-17"
|
||||
},
|
||||
"picodrive": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "libretro",
|
||||
"repo": "picodrive",
|
||||
"rev": "ad93670449a28825d4b2cebf2eeff72cf03377a9",
|
||||
"hash": "sha256-AGupXJVUkOt7XjXE1s5Y3SzZjZBAujaAAsR0CgxfKe0=",
|
||||
"rev": "535217f16bc2848ec70985c41e1d131709352641",
|
||||
"hash": "sha256-K96eN3Erw1G+vQa8pag72hrtgf+tttoNIMXdgCGNy6k=",
|
||||
"fetchSubmodules": true
|
||||
},
|
||||
"version": "unstable-2024-03-26"
|
||||
"version": "unstable-2024-06-15"
|
||||
},
|
||||
"play": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "jpd002",
|
||||
"repo": "Play-",
|
||||
"rev": "2f3d8252a2ba398078538abfe8a633b667a858a4",
|
||||
"hash": "sha256-Trr+xJWcWfQW5TnSTxqAsUK3HSMsoLaAkz7UIwp6L4c=",
|
||||
"rev": "a5753e582963e8555985abdfe6b5692bac52d701",
|
||||
"hash": "sha256-OabW7OYitDzMh2bbAokfM+HwMaLo2cY3/FB78/ouvrY=",
|
||||
"fetchSubmodules": true
|
||||
},
|
||||
"version": "unstable-2024-06-04"
|
||||
"version": "unstable-2024-06-10"
|
||||
},
|
||||
"ppsspp": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
"src": {
|
||||
"owner": "hrydgard",
|
||||
"repo": "ppsspp",
|
||||
"rev": "5dec3ca2db10943dcdf5e483cc8c28e0524d1a43",
|
||||
"hash": "sha256-B9/0uGpBrM+qndvO2BC9sQCNkSK3qR2fUtWx5Vx16xU=",
|
||||
"rev": "cfcca0ed13ca86eb6e1ee7bb4161aabee6c2af06",
|
||||
"hash": "sha256-K96Ajh/jXxILiKXBaTiNh6FwptPQQG39jGq45aQ7veY=",
|
||||
"fetchSubmodules": true
|
||||
},
|
||||
"version": "unstable-2024-06-09"
|
||||
"version": "unstable-2024-06-16"
|
||||
},
|
||||
"prboom": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -754,10 +754,10 @@
|
||||
"src": {
|
||||
"owner": "snes9xgit",
|
||||
"repo": "snes9x",
|
||||
"rev": "c7b77d4a763e8fa3ee2c4ef63b3974527056b7ad",
|
||||
"hash": "sha256-a9IKbuSrlzrhrRrLRFAnhHWBhaYIf58oRFYjWSqbNTU="
|
||||
"rev": "a9e64edf73f36fb1a4ac616b11131f6380d8e968",
|
||||
"hash": "sha256-3m2YTy1Y/ENhI4qmH3FQBZMEKNHsDJVZeOOLRrLj8lw="
|
||||
},
|
||||
"version": "unstable-2024-06-07"
|
||||
"version": "unstable-2024-06-13"
|
||||
},
|
||||
"snes9x2002": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
@@ -794,10 +794,10 @@
|
||||
"src": {
|
||||
"owner": "stella-emu",
|
||||
"repo": "stella",
|
||||
"rev": "1c2dceab2b74980effb8d6497ea64fc3bd6b0be3",
|
||||
"hash": "sha256-UeuSHHAZV798sSws32PhcBq9q2bGfX758mR+mIEnX+I="
|
||||
"rev": "b477cb56bc6fd8b6977dcee279f16de01348bdae",
|
||||
"hash": "sha256-jGyEah9eBEvNB4HewL60yXZvpHseeScYrHsRtzUtjN8="
|
||||
},
|
||||
"version": "unstable-2024-06-08"
|
||||
"version": "unstable-2024-06-15"
|
||||
},
|
||||
"stella2014": {
|
||||
"fetcher": "fetchFromGitHub",
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
, flann
|
||||
, gdal
|
||||
, gmp
|
||||
, LASzip
|
||||
, laszip
|
||||
, mpfr
|
||||
, pdal
|
||||
, pcl
|
||||
@@ -48,7 +48,7 @@ mkDerivation rec {
|
||||
flann
|
||||
gdal
|
||||
gmp
|
||||
LASzip
|
||||
laszip
|
||||
mpfr
|
||||
pdal
|
||||
pcl
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
buildDotnetModule rec {
|
||||
pname = "ArchiSteamFarm";
|
||||
# nixpkgs-update: no auto update
|
||||
version = "6.0.1.24";
|
||||
version = "6.0.3.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "JustArchiNET";
|
||||
repo = "ArchiSteamFarm";
|
||||
rev = version;
|
||||
hash = "sha256-IgsiL5YUeOWQ/WIaTfs0Kmv2XFori8ntGZhrx7xeMkg=";
|
||||
hash = "sha256-qYB94SJYCwcUrXdKtD+ZdiPRpwXg3rOHVmFWD+Y1ZXg=";
|
||||
};
|
||||
|
||||
dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
|
||||
@@ -26,15 +26,13 @@ buildDotnetModule rec {
|
||||
nugetDeps = ./deps.nix;
|
||||
|
||||
projectFile = "ArchiSteamFarm.sln";
|
||||
executables = [ "ArchiSteamFarm" ];
|
||||
executable = "ArchiSteamFarm";
|
||||
dotnetFlags = [
|
||||
"-p:PublishSingleFile=true"
|
||||
"-p:PublishTrimmed=true"
|
||||
"-p:UseAppHost=false"
|
||||
];
|
||||
dotnetInstallFlags = [
|
||||
"--framework=net8.0"
|
||||
];
|
||||
selfContainedBuild = true;
|
||||
|
||||
runtimeDeps = [ libkrb5 zlib openssl ];
|
||||
|
||||
@@ -58,11 +56,17 @@ buildDotnetModule rec {
|
||||
dotnet publish $1 -p:ContinuousIntegrationBuild=true -p:Deterministic=true \
|
||||
--output $out/lib/ArchiSteamFarm/plugins/$1 --configuration Release \
|
||||
-p:UseAppHost=false
|
||||
}
|
||||
}
|
||||
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.ItemsMatcher
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.MobileAuthenticator
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.SteamTokenDumper
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.ItemsMatcher
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.MobileAuthenticator
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.Monitoring
|
||||
buildPlugin ArchiSteamFarm.OfficialPlugins.SteamTokenDumper
|
||||
|
||||
chmod +x $out/lib/ArchiSteamFarm/ArchiSteamFarm.dll
|
||||
wrapDotnetProgram $out/lib/ArchiSteamFarm/ArchiSteamFarm.dll $out/bin/ArchiSteamFarm
|
||||
substituteInPlace $out/bin/ArchiSteamFarm \
|
||||
--replace-fail "exec " "exec dotnet "
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
|
||||
89
pkgs/applications/misc/ArchiSteamFarm/deps.nix
generated
89
pkgs/applications/misc/ArchiSteamFarm/deps.nix
generated
@@ -57,10 +57,14 @@
|
||||
(fetchNuGet { pname = "Humanizer.Core.zh-Hans"; version = "2.14.1"; sha256 = "0zn99311zfn602phxyskfjq9vly0w5712z6fly8r4q0h94qa8c85"; })
|
||||
(fetchNuGet { pname = "Humanizer.Core.zh-Hant"; version = "2.14.1"; sha256 = "0qxjnbdj645l5sd6y3100yyrq1jy5misswg6xcch06x8jv7zaw1p"; })
|
||||
(fetchNuGet { pname = "JetBrains.Annotations"; version = "2023.3.0"; sha256 = "0vp4mpn6gfckn8grzjm1jxlbqiq2fglm2rk9wq787adw7rxs8k7w"; })
|
||||
(fetchNuGet { pname = "Markdig.Signed"; version = "0.36.2"; sha256 = "02d658sjxd853lmqhhh13yhycm9nlmghl3p3fdn6iwmwhkly9qvy"; })
|
||||
(fetchNuGet { pname = "Microsoft.ApplicationInsights"; version = "2.21.0"; sha256 = "1q034jbqkxb8lddkd0ijp0wp0ymnnf3bg2mjpay027zv7jswnc4x"; })
|
||||
(fetchNuGet { pname = "Markdig.Signed"; version = "0.37.0"; sha256 = "0pcysg74pvhqs13087dh5r90xnixklmnz7bwv02304927mkv5345"; })
|
||||
(fetchNuGet { pname = "Microsoft.ApplicationInsights"; version = "2.22.0"; sha256 = "0h5qkhmazlvwvjmxxj9pp2404rmvk55yf6npwcmlskv9mgfkli4r"; })
|
||||
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "8.0.0"; sha256 = "05y1xb5fw8lzvb4si77a5qwfwfz1855crqbphrwky6x9llivbhkx"; })
|
||||
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "8.0.0"; sha256 = "18zdbcb2bn7wy1dp14z5jyqiiwr9rkad1lcb158r5ikjfq1rg5iw"; })
|
||||
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "8.0.0"; sha256 = "1nbxzmj6cnccylxis67c54c0ik38ma4rwdvgg6sxd6r04219maqm"; })
|
||||
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "8.0.0"; sha256 = "1wqkbjd1ywv9w397l7rsb89mijc5n0hv7jq9h09xfz6wn9qsp152"; })
|
||||
(fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "6.0.0"; sha256 = "15gqy2m14fdlvy1g59207h5kisznm355kbw010gy19vh47z8gpz3"; })
|
||||
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.8.0"; sha256 = "173wjadp3gan4x2jfjchngnc4ca4mb95h1sbb28jydfkfw0z1zvj"; })
|
||||
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.10.0"; sha256 = "0s0v7jmrq85n356xv7zixvwa4z94fszjcr5vll8x4im1a2lp00f9"; })
|
||||
(fetchNuGet { pname = "Microsoft.Extensions.ApiDescription.Server"; version = "6.0.5"; sha256 = "1pi2bm3cm0a7jzqzmfc2r7bpcdkmk3hhjfvb2c81j7wl7xdw3624"; })
|
||||
(fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "8.0.0"; sha256 = "080kab87qgq2kh0ijry5kfdiq9afyzb8s0k3jqi5zbbi540yq4zl"; })
|
||||
(fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "8.0.0"; sha256 = "1jlpa4ggl1gr5fs7fdcw04li3y3iy05w3klr9lrrlc7v8w76kq71"; })
|
||||
@@ -76,54 +80,60 @@
|
||||
(fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "8.0.0"; sha256 = "0p50qn6zhinzyhq9sy5svnmqqwhw2jajs2pbjh9sah504wjvhscz"; })
|
||||
(fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "8.0.0"; sha256 = "04nm8v5a3zp0ill7hjnwnja3s2676b4wffdri8hdk2341p7mp403"; })
|
||||
(fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "8.0.0"; sha256 = "0aldaz5aapngchgdr7dax9jw5wy7k7hmjgjpfgfv1wfif27jlkqm"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.Abstractions"; version = "7.5.0"; sha256 = "0nigij1vz1biw1sl64mflx68fgm34lmnvq47z2n5p0qs534kvkhb"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "7.5.0"; sha256 = "025ixbv7jq294n8yw4y1bbd92iz08q4jqnnzqp0s8lgi49sk9dad"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "7.5.0"; sha256 = "1qyyfxww980s7xzw048kc8iqzarzbaj11cb5lrsisv777ccipma5"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "7.5.0"; sha256 = "0ns56pws3zlwjk8mjyfr02zl3nnhzka76wabfabplfci62bgi3h0"; })
|
||||
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.8.0"; sha256 = "1syvl3g0hbrcgfi9rq6pld8s8hqqww4dflf1lxn59ccddyyx0gmv"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.Abstractions"; version = "7.6.0"; sha256 = "18g4j9n47387k4ym3kl2dzhhhs6fs5rq96757fc4lcdql2rpkmp0"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "7.6.0"; sha256 = "11znwbbg44hhz3ly6j6q81qz83yqf97jj5zhpldng5zq0h791srl"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "7.6.0"; sha256 = "1slkzygcn4abpqip4rmi73h9096ihjkkaiwgmkaiba9pidn9lzlx"; })
|
||||
(fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "7.6.0"; sha256 = "1blj1ayw9qpjpsnb4k95s03pdkin0032mxgznfaw1z1qhhiqdnsi"; })
|
||||
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.10.0"; sha256 = "13g8fwl09li8fc71nk13dgkb7gahd4qhamyg2xby7am63nlchhdf"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "8.0.0"; sha256 = "0gwqmkmr7jy3sjh9gha82amlry41gp8nwswy2iqfw54f28db63n7"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "8.0.0"; sha256 = "042cjvnwrrjs3mw5q8q5kinh0cwkks33i3n1vyifaid2jbr3wlc0"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "8.0.0"; sha256 = "06ndp4wh1cap01dql3nixka4g56bf6ipmqys7xaxvg4xisf79x8d"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "8.0.0"; sha256 = "1kh5bnaf6h9mr4swcalrp304625frjiw6mlz1052rxwzsdq98a96"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
|
||||
(fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.2.3"; sha256 = "07b19k89whj69j87afkz86gp9b3iybw8jqwvlgcn43m7fb2y99rr"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Extensions.Telemetry"; version = "1.0.2"; sha256 = "00psv2mvynd2bz8xnzvqvb32qr33glqxg4ni5j91b93k84yjy5ma"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Extensions.TrxReport.Abstractions"; version = "1.0.2"; sha256 = "09yn3hi9npgi8rs2vyfyzcl8vbfa1lqcl6lgpymw5d7lg0hc511w"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Extensions.VSTestBridge"; version = "1.0.2"; sha256 = "0c65fsc23xxw648xh83sjcmrn9hvs9q58l5lb36wflvaajbsjf2r"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Platform"; version = "1.0.2"; sha256 = "0bq46f4v2r4nzwly7g0dsakyc1lcql9nh85sp59d1fwzaknf1n94"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Platform.MSBuild"; version = "1.0.2"; sha256 = "1vjqrpqjx3z1irqgy0ckmkgyvrzqqqcikxs36q6gadyj643ra1c5"; })
|
||||
(fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.6.14"; sha256 = "1wr8crmjg4gznm3jqgz9s9p285vrwb8a6baqc6gz3b58rn4m88km"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Extensions.Telemetry"; version = "1.2.1"; sha256 = "1a6hyd3szjjpjkbr0ncfria0x2qijv3lwr4drhxm15xamfy23azw"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Extensions.TrxReport.Abstractions"; version = "1.2.1"; sha256 = "19309m0b9cjy1642m99ipjvr6gxq6qb008bam3l10m1mz8m81j31"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Extensions.VSTestBridge"; version = "1.2.1"; sha256 = "1bly8375zng21yjbfdi08c14lgapngv06p1dlzbryimxicqzxixx"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Platform"; version = "1.2.1"; sha256 = "0zlbqmvdb1vxnvmxh6lk65mz57c7mz6dqb1s8in0cfww8kxg058k"; })
|
||||
(fetchNuGet { pname = "Microsoft.Testing.Platform.MSBuild"; version = "1.2.1"; sha256 = "07674xnhc84h36pvzswx6ibjy0bgfi2bxhqm1zyq9fidmim0ch07"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.10.0"; sha256 = "07j69cw8r39533w4p39mnj00kahazz38760in3jfc45kmlcdb26x"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.5.0"; sha256 = "0qkjyf3ky6xpjg5is2sdsawm99ka7fzgid2bvpglwmmawqgm8gls"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.8.0"; sha256 = "0b0i7lmkrcfvim8i3l93gwqvkhhhfzd53fqfnygdqvkg6np0cg7m"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.8.0"; sha256 = "0f5jah93kjkvxwmhwb78lw11m9pkkq9fvf135hpymmmpxqbdh97q"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.10.0"; sha256 = "1bl471s7fx9jycr0cc8rylwf34mrvlg9qn1an6l86nisavfcyb7v"; })
|
||||
(fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "5.0.0"; sha256 = "102hvhq2gmlcbq8y2cb7hdr2dnmjzfp2k3asr1ycwrfacwyaak7n"; })
|
||||
(fetchNuGet { pname = "MSTest"; version = "3.2.2"; sha256 = "19pkywdlmgccv2ri52gbpb3pgci1ymb2ba5qhyp9j19vks6gf6cj"; })
|
||||
(fetchNuGet { pname = "MSTest.Analyzers"; version = "3.2.2"; sha256 = "1ap7imbqxmz2namgli796pxj91gyn01k6xxnllldpwwbxpd0ijgd"; })
|
||||
(fetchNuGet { pname = "MSTest.TestAdapter"; version = "3.2.2"; sha256 = "14nrxg1cd3lzaxw7zz8z91168sgnsf1xxnrpdy7wkd6ggk22hi19"; })
|
||||
(fetchNuGet { pname = "MSTest.TestFramework"; version = "3.2.2"; sha256 = "0igdrjr300bqz5lnibf9vl8pkaky1l27f889gza3a9xs83mpd06p"; })
|
||||
(fetchNuGet { pname = "MSTest"; version = "3.4.3"; sha256 = "070avma2zdxdpn23a9chgz9n1kglxh8nbb1g2ggzk3xxi5sdjj0n"; })
|
||||
(fetchNuGet { pname = "MSTest.Analyzers"; version = "3.4.3"; sha256 = "14a6rzh4cvaf9bw63qlxw242fbmk4agyx9qgl19swpciqcaq7pxi"; })
|
||||
(fetchNuGet { pname = "MSTest.TestAdapter"; version = "3.4.3"; sha256 = "0hsslndnfyb6shgkmgy10f1c9p6b47ry20zr2l1msagmkrk49s5q"; })
|
||||
(fetchNuGet { pname = "MSTest.TestFramework"; version = "3.4.3"; sha256 = "0hviglzfv16dd3aczny455sy1k0rikzd5w34smfpjyxc0wqx6xvp"; })
|
||||
(fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.1"; sha256 = "0fijg0w6iwap8gvzyjnndds0q4b8anwxxvik7y8vgq97dram4srb"; })
|
||||
(fetchNuGet { pname = "Nito.AsyncEx.Coordination"; version = "5.1.2"; sha256 = "0sxvmqnv8a94k3pq1w3lh1vgjb8l62h1qamxcjl3pkq634h2fwrl"; })
|
||||
(fetchNuGet { pname = "Nito.AsyncEx.Tasks"; version = "5.1.2"; sha256 = "11wp47kc69sjdxrbg5pgx0wlffqlp0x5kr54ggnz2v19kmjz362v"; })
|
||||
(fetchNuGet { pname = "Nito.Collections.Deque"; version = "1.1.1"; sha256 = "152564q3s0n5swfv5p5rx0ghn2sm0g2xsnbd7gv8vb9yfklv7yg8"; })
|
||||
(fetchNuGet { pname = "Nito.Disposables"; version = "2.2.1"; sha256 = "1hx5k8497j34kxxgh060bvij0vfnraw90dmm3h9bmamcdi8wp80l"; })
|
||||
(fetchNuGet { pname = "NLog"; version = "5.2.8"; sha256 = "1z3h20m5rjnizm1jbf5j0vpdc1f373rzzkg6478p1lxv5j385c12"; })
|
||||
(fetchNuGet { pname = "NLog.Extensions.Logging"; version = "5.3.8"; sha256 = "1qnz91099f51vk7f5g2ig0041maw5hcbyqllxvj5zj7zkp0qw9b8"; })
|
||||
(fetchNuGet { pname = "NLog.Web.AspNetCore"; version = "5.3.8"; sha256 = "05a6bzvdf63lbnn6sj3yfggxcgv96j91kdbcw0ac5hxl58df58r6"; })
|
||||
(fetchNuGet { pname = "NLog"; version = "5.3.2"; sha256 = "01qnzmwvc93yywhvy5g29fb8jnalfi82az7296nblyqjalhbzz3g"; })
|
||||
(fetchNuGet { pname = "NLog.Extensions.Logging"; version = "5.3.11"; sha256 = "0j276q0a14qk9nc3f03265jl5wp38bnm7dyyx0s4kxkyb3kx3z8c"; })
|
||||
(fetchNuGet { pname = "NLog.Web.AspNetCore"; version = "5.3.11"; sha256 = "17xvaj54liyk9zq0f80z1ai6wq4rgj6xy93znvsdcnldmin1icz9"; })
|
||||
(fetchNuGet { pname = "NuGet.Frameworks"; version = "5.11.0"; sha256 = "0wv26gq39hfqw9md32amr5771s73f5zn1z9vs4y77cgynxr73s4z"; })
|
||||
(fetchNuGet { pname = "NuGet.Frameworks"; version = "6.5.0"; sha256 = "0s37d1p4md0k6d4cy6sq36f2dgkd9qfbzapxhkvi8awwh0vrynhj"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry"; version = "1.8.0-rc.1"; sha256 = "0scpylqwqmp7lpmixci88v6zf7jzf3zrcbrhl30bd4p7r4alw2lp"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api"; version = "1.7.0"; sha256 = "099yivazj5078076xydssf38r71c5nk3n7hy0lr51p80gln1vdha"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api"; version = "1.8.0-rc.1"; sha256 = "0rnl9pkwbz2srkss3ay05jjrfkyzibxa6vx0hg7rzfpyjinhaycs"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api.ProviderBuilderExtensions"; version = "1.7.0"; sha256 = "1j7bxhpwpcrjr4am7s4mavjjpasikv4kp8glmxiw5x9zvc0x0ix7"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api.ProviderBuilderExtensions"; version = "1.8.0-rc.1"; sha256 = "18r7m4zjimkkwjqw8hd9xa85lnj1fy45xyd338fbpp9nm73j9r2g"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Exporter.Prometheus.AspNetCore"; version = "1.8.0-rc.1"; sha256 = "0fiz7qpzn64by4dlc5r9ha2qrp1j9w9lm6c7bzpvshzwz8ifamv7"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Extensions.Hosting"; version = "1.8.0-rc.1"; sha256 = "0p5sybp1b8fkccibhlmjlvdnhryscqh9f435c34bwp6vvllxf17z"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Instrumentation.AspNetCore"; version = "1.7.1"; sha256 = "19r12csxwdrvl5yx88mv68rzj2cy43004pwldy6q89v42sr01kyi"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Instrumentation.Http"; version = "1.7.1"; sha256 = "0mvrcz2mg3caf4lcwi1ai7i7ldb27p4y2qx9vckfjal203bps352"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Instrumentation.Runtime"; version = "1.7.0"; sha256 = "0klyd24akymj2hpjlnzmz7x9kggj4amhaqx1zh9nxjvlmmy64gxy"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry"; version = "1.7.0-rc.1"; sha256 = "0y16qp3xrypk48f27pfvccic47p9wpl4qx8mar4rf2b78ca21c9p"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry"; version = "1.8.1"; sha256 = "1slyjdzbiv179sq91bq6bhbqw20jmk6j9x1g5fhvnqsymfqmnmq2"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api"; version = "1.7.0-rc.1"; sha256 = "1i09vjjrimg0bwraamsjdqx886apscwj72skds3ysvc9c7n0hpl2"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api"; version = "1.8.0"; sha256 = "0s402mz4gz1chlg29159awawpi6ms4ln5gdds01y38wx6cia6lb9"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api"; version = "1.8.1"; sha256 = "0c2dvnnnizn5g50js336lkgfxh6klcdb0h8pppf68v3liwlhxly5"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api.ProviderBuilderExtensions"; version = "1.7.0-rc.1"; sha256 = "1ayy2q9cg6482ahvz3cx7a3cikjrnmr5kr7yk9qnbbwy0wfmb6gw"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api.ProviderBuilderExtensions"; version = "1.8.0"; sha256 = "1vhl02w068ynhpak0pyjn2xmrnisl9m73lmsckwkncrhinplw7hz"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Api.ProviderBuilderExtensions"; version = "1.8.1"; sha256 = "0lys1l0qsna2h82j2rbxi5fc8barrq43fs0lradr85r7sy3x91cg"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Exporter.Prometheus.AspNetCore"; version = "1.7.0-rc.1"; sha256 = "1777nbj78yppmqmwvv0bsl4l0vp8lfc5fpsdmknf6wl354f0z1f8"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Extensions.Hosting"; version = "1.8.1"; sha256 = "01vi9sqb2j25i6926c581w067nadf4q4hs0hkwjg8wpzhxz0n3xq"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Instrumentation.AspNetCore"; version = "1.8.1"; sha256 = "0s5kxqjhmwm2p2sblmmsavvmknqb8yr0b07ngq8hk0w8b48kyc0h"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Instrumentation.Http"; version = "1.8.1"; sha256 = "0p3mw08vi9ljf06239n8b1hfj0cqqb198qn89sf39mdjsy13ca95"; })
|
||||
(fetchNuGet { pname = "OpenTelemetry.Instrumentation.Runtime"; version = "1.8.1"; sha256 = "0j2i01378848nvib1krk948lp74x8ykgspka05g37a3s284p1nyd"; })
|
||||
(fetchNuGet { pname = "protobuf-net"; version = "3.2.30"; sha256 = "08bjdn8dbqpzn5c9fw89y5766irwplgyzhyxcrjzpywkwpj75r4i"; })
|
||||
(fetchNuGet { pname = "protobuf-net.Core"; version = "3.2.30"; sha256 = "01mgw4s0b2vxf55v6fa3n5l9jwk6bkl60aaqv7azl198wwslkjhq"; })
|
||||
(fetchNuGet { pname = "SteamKit2"; version = "3.0.0-alpha.1"; sha256 = "01lrbkbpfqdkhba9hsfg9fqyh1sa9r2cp54r2wlb83zfr3f5q8l8"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore"; version = "6.5.0"; sha256 = "0k61chpz5j59s1yax28vx0mppx20ff8vg8grwja112hfrzj1f45n"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.Annotations"; version = "6.5.0"; sha256 = "00n8s45xwbayj3p6x3awvs87vqvmzypny21nqc61m7a38d1asijv"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.Swagger"; version = "6.5.0"; sha256 = "1s6axf6fin8sss3bvzp0s039rxrx71vx4rl559miw12bz3lld8kc"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerGen"; version = "6.5.0"; sha256 = "0hq93gy5vyrigpdk9lhqwxglxwkbxa8ydllwcqs4bwfcsspzrs83"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerUI"; version = "6.5.0"; sha256 = "17hx7kc187higm0gk67dndng3n7932sn3fwyj48l45cvyr3025h7"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore"; version = "6.6.2"; sha256 = "0lq774iggpvsmykbrplvv2a5z2ylsslv5wynmvpnlznd4lvgxb4h"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.Annotations"; version = "6.6.2"; sha256 = "1snz71ws87kr8pz4c3zcla51mqbly015ib6b0y20xvkj25qx7gl8"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.Swagger"; version = "6.6.2"; sha256 = "0j93y0krn5fzvji0k7g4cxi22b7j8n3brxw4698pjq2pqqf2d8qy"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerGen"; version = "6.6.2"; sha256 = "00lar7246mncidflm15xz5b9hpni9bf8wj37dc0l2sj3hhv9nvwj"; })
|
||||
(fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerUI"; version = "6.6.2"; sha256 = "0w0h2cs8n5avczzm5plzmkvkc6xn0pj425f4400fk21h8ysvhg8h"; })
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "1.7.1"; sha256 = "1nh4nlxfc7lbnbl86wwk1a3jwl6myz5j6hvgh5sp4krim9901hsq"; })
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "7.0.0"; sha256 = "1n9122cy6v3qhsisc9lzwa1m1j62b8pi2678nsmnlyvfpk0zdagm"; })
|
||||
(fetchNuGet { pname = "System.Composition"; version = "8.0.0"; sha256 = "0y7rp5qwwvh430nr0r15zljw01gny8yvr0gg6w5cmsk3q7q7a3dc"; })
|
||||
@@ -141,5 +151,4 @@
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "8.0.0"; sha256 = "1ysjx3b5ips41s32zacf4vs7ig41906mxrsbmykdzi0hvdmjkgbx"; })
|
||||
(fetchNuGet { pname = "System.Security.Principal.Windows"; version = "5.0.0"; sha256 = "1mpk7xj76lxgz97a5yg93wi8lj0l8p157a5d50mmjy3gbz1904q8"; })
|
||||
(fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "8.0.0"; sha256 = "1lgdd78cik4qyvp2fggaa0kzxasw6kc9a6cjqw46siagrm0qnc3y"; })
|
||||
(fetchNuGet { pname = "zxcvbn-core"; version = "7.0.92"; sha256 = "1pbi0n3za8zsnkbvq19njy4h4hy12a6rv4rknf4a2m1kdhxb3cgx"; })
|
||||
]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "asf-ui";
|
||||
version = "f70253c96e76fff5c5537c7be57a57de4e273eb8";
|
||||
version = "78188871dfce90fb04096e9fd0b6ce2411312dae";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "JustArchiNET";
|
||||
@@ -10,10 +10,10 @@ buildNpmPackage rec {
|
||||
# updated by the update script
|
||||
# this is always the commit that should be used with asf-ui from the latest asf version
|
||||
rev = version;
|
||||
hash = "sha256-hw6M8O486vnWqdO4DqljOoGEevykpxhez3QL745VfIk=";
|
||||
hash = "sha256-NBxN3pQFiDsRYp2Ro0WwWdGzKVjPTKx4/xWQrMNuv0M=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-GpGVM9c5yaLHi77qpShm30/uObg1TdLFCIhmFvLEhaU=";
|
||||
npmDepsHash = "sha256-9pLbSOMfKwkWtzmKNmeKNrgdtzh3riWWJlrbuoDRUrw=";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -118,7 +118,7 @@ mkDerivation rec {
|
||||
homepage = "https://www.google.com/earth/";
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ friedelino shamilton ];
|
||||
maintainers = with maintainers; [ shamilton ];
|
||||
platforms = platforms.linux;
|
||||
knownVulnerabilities = [ "Includes vulnerable versions of bundled libraries: openssl, ffmpeg, gdal, and proj." ];
|
||||
};
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "tickrs";
|
||||
version = "0.14.9";
|
||||
version = "0.14.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tarkah";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-cN5GtU3bmsdJvfjVdWvWAshiU3Ged7L9pc8wid8GQwA=";
|
||||
hash = "sha256-6iMThVLIkFoNa7Z0MuyhUNGCwFtCfmG7jHvDfrEZE2I=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-ngDA085V3+2oBH13Fs+pJez2W2/i1pEKoWdqJ4/3Q0I=";
|
||||
cargoHash = "sha256-gfBmoN91xUcjBafxBoLP41Fl8FuH2taAu3P6sgJPNWI=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "tuckr";
|
||||
version = "0.8.0";
|
||||
version = "0.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "RaphGL";
|
||||
repo = "Tuckr";
|
||||
rev = version;
|
||||
hash = "sha256-S4mHNCyK7WGYRBckxQkwA3+eu7QhUyKkOZ/KqhMJf+s=";
|
||||
hash = "sha256-oQSuR0Zt1T8YU3O2Dq/qHl4ysVDl+3EVvp9r2mD3hRA=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-aUhiMJUKV+Da3WLUY9Jr3oDB8yqcUm0pP05yKaITjM0=";
|
||||
cargoHash = "sha256-ESDfUZsoqwBurXuwNIRSqxoDWnA2VpDZ9Q9GGaV8B4Y=";
|
||||
|
||||
doCheck = false; # test result: FAILED. 5 passed; 3 failed;
|
||||
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "argo-rollouts";
|
||||
version = "1.6.0";
|
||||
version = "1.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj";
|
||||
repo = "argo-rollouts";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WJ5vIfQQguwjInS5p+bUYorM90MUAbH8endV/nkgQ00=";
|
||||
sha256 = "sha256-b1oaLVwom06XUCjMF3/O/SdLt2s0MFuF+et6+MO2jBQ=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-vBSS1KMfloK5pvVc8nHE5B8PsVZTS/iA9GyrLaeR6ps=";
|
||||
vendorHash = "sha256-38BLPNc6en70+UxlldmrwtRTMRLh/fCPL6FtuA2ODGM=";
|
||||
|
||||
# Disable tests since some test fail because of missing test data
|
||||
doCheck = false;
|
||||
|
||||
@@ -34,16 +34,16 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "argo";
|
||||
version = "3.5.7";
|
||||
version = "3.5.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj";
|
||||
repo = "argo";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-OJkC+uqOuXA6NBpVxmQAFs+N99d4Zonh9dcZnuB26Ts=";
|
||||
hash = "sha256-BYUP/Gu+N8KK9mfjRAXupXqrwfZMZlYPxxuZCmUDFfE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-O7Lv5RLcqB4JbdXHKXFWkg/dvids8QH619urpeACuN8=";
|
||||
vendorHash = "sha256-pVOTeH6fq4Gqarjvi7w2wYJ3FSqV6yNZERmOmbVGxLM=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "cni";
|
||||
version = "1.2.0";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containernetworking";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-32rmfBjPtc9w+B8PIb8sFOIlzZ7PnS6XSZRNLreMVl4=";
|
||||
hash = "sha256-aS7THDTpfNQPw+70ZgFzvurpq/vMKE6xSxJ19ERbtOA=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-JWaQacekMQGT710U5UgiIpmEYgyUCh1uks5eSV5nhWc=";
|
||||
vendorHash = "sha256-5VsJ3Osm9w09t3x0dItC2iWwbPMf/IIBOSqUfcbQKK4=";
|
||||
|
||||
subPackages = [
|
||||
"./cnitool"
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "cni-plugins";
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containernetworking";
|
||||
repo = "plugins";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-gJp1w2H+hPSSu1Y4BY9Sa8lLnhpiZJu2Dz9OenYlQFo=";
|
||||
hash = "sha256-Veuv7DwwnSUnz2p5gemqQB9pr05nLLQ6gG4JvqFbZ/U=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
@@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubefirst";
|
||||
version = "2.4.9";
|
||||
version = "2.4.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubefirst";
|
||||
repo = "kubefirst";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-BuGE+SVLklToKnH7pptfuHqwddncUQq523RZtfmtkLg=";
|
||||
hash = "sha256-EgJ+ymddMsB37ygREwdF6qmGcgJKPz06//dwwa1pXd0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ZcZl4knlyKAwTsiyZvlkN5e2ox30B5aNzutI/2UEE9U=";
|
||||
vendorHash = "sha256-5UdKjxs0f8dHTzWvHpMbYSCcIqTU5aT5anNVk0O94tw=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubeshark";
|
||||
version = "52.3.62";
|
||||
version = "52.3.68";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubeshark";
|
||||
repo = "kubeshark";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-mYFjs/6aO7tzopOZij9rNoOu2a/UUQqpDg16gCoeR8w=";
|
||||
hash = "sha256-GDK+GR3MUYUgfY3cgaxWIYSE3uiEscp9DeeY36/zOYo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-0WRmAqslZj63m+kCFKIBgoRX47ZyRuU7ZihmF6wmZy4=";
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "temporal";
|
||||
version = "1.24.1";
|
||||
version = "1.24.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "temporalio";
|
||||
repo = "temporal";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GEmlmVTxQPoKsb9RtS6RcHY/0iDZsj3jG/Les2VPMAc=";
|
||||
hash = "sha256-hQkus8BZvtR2ObCJbtP2SZST9tRxuPjFwR+jKDYH8Bs=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-u9xQFTwVKEGRPhBwcBgexCQhlNO91yP4m4vchCdBt9E=";
|
||||
|
||||
@@ -7,14 +7,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "tftui";
|
||||
version = "0.13.3";
|
||||
version = "0.13.5";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "idoavrah";
|
||||
repo = "terraform-tui";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-ojmq5m2BRB2Jwvg4j4zc0/jtv4rg1OKJpQiUQoBn+s0=";
|
||||
hash = "sha256-xOlPuPVwfVT7jfBJPqZ5FbOs80HE0k2ZqcA+Jcxh9p4=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [
|
||||
|
||||
@@ -176,10 +176,10 @@ stdenv.mkDerivation {
|
||||
# Wrap feishu and vulcan
|
||||
# Feishu is the main executable, vulcan is the builtin browser
|
||||
for executable in $out/opt/bytedance/feishu/{feishu,vulcan/vulcan}; do
|
||||
# FIXME: Add back NIXOS_OZONE_WL support once upstream fixes the crash on native Wayland (see #318035)
|
||||
wrapProgram $executable \
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
|
||||
--prefix LD_LIBRARY_PATH : ${rpath}:$out/opt/bytedance/feishu:${addOpenGLRunpath.driverLink}/share \
|
||||
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
|
||||
${lib.optionalString (commandLineArgs!="") "--add-flags ${lib.escapeShellArg commandLineArgs}"}
|
||||
done
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildNpmPackage
|
||||
, fetchFromGitHub
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
buildNpmPackage rec {
|
||||
@@ -16,6 +17,10 @@ buildNpmPackage rec {
|
||||
|
||||
npmDepsHash = "sha256-md76I7W5QQvfbOmk5ODssMtJAVOj8nvaJ2PakEZ8WUA=";
|
||||
|
||||
passthru.tests = {
|
||||
inherit (nixosTests) flood;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Modern web UI for various torrent clients with a Node.js backend and React frontend";
|
||||
homepage = "https://flood.js.org";
|
||||
|
||||
@@ -44,6 +44,17 @@ let
|
||||
x86hash = "";
|
||||
x64suffix = "65";
|
||||
x86suffix = "";
|
||||
homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest12.html";
|
||||
};
|
||||
|
||||
"24.05.0" = {
|
||||
major = "24";
|
||||
minor = "5";
|
||||
patch = "0";
|
||||
x64hash = "sha256-pye2JOilSbp8PFCpVXFkrRW98E8klCqoisVSWjR38nE=";
|
||||
x86hash = "";
|
||||
x64suffix = "76";
|
||||
x86suffix = "";
|
||||
homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -15,11 +15,11 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ticktick";
|
||||
version = "2.0.10";
|
||||
version = "2.0.20";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://d2atcrkye2ik4e.cloudfront.net/download/linux/linux_deb_x64/${finalAttrs.pname}-${finalAttrs.version}-amd64.deb";
|
||||
hash = "sha256-wign7U1p4HX6/RwnMm2iVSNaYRhn8Ia6QQd5X6m3B0E=";
|
||||
hash = "sha256-5w50QMSMmkpuhSOqv3LjrcQQDwaD7pIdKUo+8YUgvpk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
{ lib, python2Packages, fetchFromGitHub }:
|
||||
|
||||
python2Packages.buildPythonPackage rec {
|
||||
pname = "poretools";
|
||||
version = "unstable-2016-07-10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = pname;
|
||||
owner = "arq5x";
|
||||
rev = "e426b1f09e86ac259a00c261c79df91510777407";
|
||||
sha256 = "0bglj833wxpp3cq430p1d3xp085ls221js2y90w7ir2x5ay8l7am";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ python2Packages.h5py python2Packages.matplotlib python2Packages.seaborn python2Packages.pandas ];
|
||||
|
||||
meta = {
|
||||
description = "Toolkit for working with nanopore sequencing data from Oxford Nanopore";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://poretools.readthedocs.io/en/latest/";
|
||||
maintainers = [ lib.maintainers.rybern ];
|
||||
broken = true; # Build error: h5py-3.9.0 not supported for interpreter python2.7
|
||||
};
|
||||
}
|
||||
@@ -43,13 +43,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openmolcas";
|
||||
version = "24.02";
|
||||
version = "24.06";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "Molcas";
|
||||
repo = "OpenMolcas";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-4Ek0cnaRfLEbj1Nj31rRp9b2sois4rIFTcpOUq9h2mw=";
|
||||
hash = "sha256-/y6vEvA1Zf+p7Z0WpcN4P5voLN8MmfbKz1FuthgVQp0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
{
|
||||
"kicad" = {
|
||||
kicadVersion = {
|
||||
version = "8.0.2";
|
||||
version = "8.0.3";
|
||||
src = {
|
||||
rev = "55a4d4f5e2f54be6ccf74a8919d04684c9df4c50";
|
||||
sha256 = "069ycii9zvdxwxd73afd6bp975r1555yvifi9zdb77qyvn0d9nr9";
|
||||
rev = "8ba5ba46af8502ea7a7d2a9754363167c2742399";
|
||||
sha256 = "0hafvcjjwylgcpgyyasmb2q210k82wvcswvgjvwwh76bwshwcpwa";
|
||||
};
|
||||
};
|
||||
libVersion = {
|
||||
version = "8.0.2";
|
||||
version = "8.0.3";
|
||||
libSources = {
|
||||
symbols.rev = "099ac0c8ac402a685fde00b1369e34a116e29661";
|
||||
symbols.sha256 = "0w333f89yw2m0zlpkg0k6hfwlj10snm8laihdjnsb22asyz4pbhn";
|
||||
templates.rev = "2e2da58e02707d327d59d4101c401a82dc9a26f6";
|
||||
templates.sha256 = "073a6cyvzzy0vmkj3ip4ziq7b7pcizs70nm5acw838dxghjfyv3v";
|
||||
footprints.rev = "e8c30550cde4945cbe1bf30cccf0b3c1e2bda6c6";
|
||||
footprints.sha256 = "10j8qjljc1fv8k4zp3zn0da33g57hn6pgrgmbgp18dsa539xvxcz";
|
||||
packages3d.rev = "249f7947587529026e1676cd70c8d7493a8d8162";
|
||||
packages3d.sha256 = "04gvfb54jhnww2qwrxc27wpyrvmjasdc4xhr0ridl7dglh4qcp35";
|
||||
symbols.rev = "2bc103c46a8daacbba2cded8b9f095b330ba928d";
|
||||
symbols.sha256 = "1za0spq09bbj7xwfwr1abmwjnqfd3zx0crayaz7915ja0ifi75hd";
|
||||
templates.rev = "0f57b59d365d1f8b8fdd0745e10beb035e88ba37";
|
||||
templates.sha256 = "03idwrk3vj9h2az8j8lqpbdbnfxdbkzh4db68kq3644yj3cnlcza";
|
||||
footprints.rev = "539ffd8c0898ad8c8c51c2ab85ba56bfd77271c7";
|
||||
footprints.sha256 = "0ik4hjl5m65wnpaymg58zbvsfvchhyq5x3psvj6005mgv2hrican";
|
||||
packages3d.rev = "3172a1cc0931c1734efad68623374d5277f8ab60";
|
||||
packages3d.sha256 = "1yjlg7cxwhlzcdbxjqyqamr140sz8gvzi63k2401mhdbh88c9kii";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ fetchFromGitHub, buildGoModule, lib, testers, gitmux }:
|
||||
{ fetchFromGitHub, buildGoModule, lib, testers, gitmux, git }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gitmux";
|
||||
@@ -13,9 +13,8 @@ buildGoModule rec {
|
||||
|
||||
vendorHash = "sha256-PHY020MIuLlC1LqNGyBJRNd7J+SzoHbNMPAil7CKP/M=";
|
||||
|
||||
# GitHub source does contain a regression test for the module
|
||||
# but it requires networking as it git clones a repo from github
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [ git ];
|
||||
doCheck = true;
|
||||
|
||||
ldflags = [ "-X main.version=${version}" ];
|
||||
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gource";
|
||||
version = "0.54";
|
||||
version = "0.55";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/acaudwell/Gource/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
|
||||
hash = "sha256-HcvO32XSz01p/gtjPlTCApJsCLgpvK0Lc+r54pzW+uU=";
|
||||
hash = "sha256-yCOSEtKLB1CNnkd2GZdoAmgWKPwl6z4E9mcRdwE8AUI=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -21,24 +21,21 @@
|
||||
, qtwebchannel
|
||||
, qtwebengine
|
||||
, qtx11extras
|
||||
, jellyfin-web
|
||||
, withDbus ? stdenv.isLinux
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "jellyfin-media-player";
|
||||
version = "1.10.1";
|
||||
version = "1.11.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jellyfin";
|
||||
repo = "jellyfin-media-player";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-l1jNrEUrDCc4R1CZ0b0Omjka6wTryjWqnEJbfCSJ0ZE=";
|
||||
sha256 = "sha256-Jsn4kWQzUaQI9MpbsLJr6JSJk9ZSnMEcrebQ2DYegSU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# fix the location of the jellyfin-web path
|
||||
./fix-web-path.patch
|
||||
# disable update notifications since the end user can't simply download the release artifacts to update
|
||||
./disable-update-notifications.patch
|
||||
];
|
||||
@@ -77,11 +74,6 @@ mkDerivation rec {
|
||||
"-DLINUX_X11POWER=ON"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# link the jellyfin-web files to be copied by cmake (see fix-web-path.patch)
|
||||
ln -s ${jellyfin-web}/share/jellyfin-web .
|
||||
'';
|
||||
|
||||
postInstall = lib.optionalString stdenv.isDarwin ''
|
||||
mkdir -p $out/bin $out/Applications
|
||||
mv "$out/Jellyfin Media Player.app" $out/Applications
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 5abca9b..d09176b 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -107,10 +107,8 @@ endif()
|
||||
set(RESOURCE_ROOT .)
|
||||
if(APPLE)
|
||||
set(RESOURCE_ROOT Resources)
|
||||
- if(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/../dist/)
|
||||
- add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DEST ${RESOURCE_ROOT}/web-client/desktop)
|
||||
- endif()
|
||||
- add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_SOURCE_DIR}/native/ DEST ${RESOURCE_ROOT}/web-client/extension)
|
||||
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../../jellyfin-web/ DESTINATION ${RESOURCE_ROOT}/web-client/desktop)
|
||||
+ install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${RESOURCE_ROOT}/web-client/extension)
|
||||
endif()
|
||||
|
||||
if(NOT APPLE)
|
||||
@@ -123,9 +121,7 @@ if(NOT APPLE)
|
||||
install(FILES ${loc}/qtwebengine_devtools_resources.pak DESTINATION resources)
|
||||
endif()
|
||||
endforeach()
|
||||
- if(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/../dist/)
|
||||
- install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/desktop)
|
||||
- endif()
|
||||
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../../jellyfin-web/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/desktop)
|
||||
install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/extension)
|
||||
endif()
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
}:
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "tart";
|
||||
version = "2.11.1";
|
||||
version = "2.12.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cirruslabs/tart/releases/download/${finalAttrs.version}/tart-arm64.tar.gz";
|
||||
hash = "sha256-LOU7nCJChXgYq10AeZVAMa/QSUD4AKUSLLUKUBrk4UA=";
|
||||
hash = "sha256-+33Z7M9Y8fWFfCBNJrXHljwoAn7p70+yvTmBwx1X68M=";
|
||||
};
|
||||
sourceRoot = ".";
|
||||
|
||||
|
||||
@@ -28,6 +28,11 @@ python3.pkgs.buildPythonApplication rec {
|
||||
url = "https://github.com/virt-manager/virt-manager/commit/83fcc5b2e8f2cede84564387756fe8971de72188.patch";
|
||||
hash = "sha256-yEk+md5EkwYpP27u3E+oTJ8thgtH2Uy1x3JIWPBhqeE=";
|
||||
})
|
||||
# fix crash with some cursor themes
|
||||
(fetchpatch {
|
||||
url = "https://github.com/virt-manager/virt-manager/commit/cc4a39ea94f42bc92765eb3bb56e2b7f9198be67.patch";
|
||||
hash = "sha256-dw6yrMaAOnTh8Z6xJQQKmYelOkOl6EBAOfJQU9vQ8Ws=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ast-grep";
|
||||
version = "0.22.6";
|
||||
version = "0.23.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ast-grep";
|
||||
repo = "ast-grep";
|
||||
rev = version;
|
||||
hash = "sha256-QE8bTFlKlaxUeYJoaZyiuv/7zk+Pi3s64Er5YNTUh7I=";
|
||||
hash = "sha256-QW3ZwALvfSTcvXuH/ploqUD1UJ5fGySIAc3N/TMlB4g=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-tTEZUGC4RHjnAK+fMNkVqgsngBSdVAtoZ5ij3VbzKb4=";
|
||||
cargoHash = "sha256-MUdHDP+1KQBXy2itOhW6pDuOTwIwXHy4oDfifDRdM94=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -5,16 +5,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "audion";
|
||||
version = "0.2.0";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "audiusGmbH";
|
||||
repo = "audion";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-j8sQCeHpxrpzyY75DypWI9z+JBWq7aaaXPnZh7ksRjc=";
|
||||
hash = "sha256-NtAzh7n5bJXMt73L+FJU3vuNoNgga3wYXdZ2TY8AjIA=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-/x2gjLz73uPY+ouQOxLN2ViET+V/s9jgkgw97yzVj24=";
|
||||
cargoHash = "sha256-0jPAidJu3f3exXkVCLowR1zHsZ3bctWu+O2mQmSwSpE=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Ping the host continuously and write results to a file";
|
||||
|
||||
51
pkgs/by-name/au/autotools-language-server/package.nix
Normal file
51
pkgs/by-name/au/autotools-language-server/package.nix
Normal file
@@ -0,0 +1,51 @@
|
||||
{ lib
|
||||
, python3
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "autotools-language-server";
|
||||
version = "0.0.19";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Freed-Wu";
|
||||
repo = "autotools-language-server";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-V0EOV1ZmeC+4svc2fqV6AIiL37dkrxUJAnjywMZcENw=";
|
||||
};
|
||||
patches = [
|
||||
# Right before the release, upstream decided to replace the
|
||||
# tree-sitter-languages dependency with tree-sitter-make, which is yanked
|
||||
# from some reason. Hopefully upstream will fix this dependency a bit
|
||||
# better in the next release. See also:
|
||||
# https://github.com/Freed-Wu/autotools-language-server/commit/f149843becfcfd6b2bb4a98eb1f3984c01d5fd33#r142659163
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Freed-Wu/autotools-language-server/commit/f149843becfcfd6b2bb4a98eb1f3984c01d5fd33.patch";
|
||||
hash = "sha256-TrzHbfR6GYAEqDIFiCqSX2+Qv4JeFJ5faiKJhNYojf0=";
|
||||
revert = true;
|
||||
})
|
||||
];
|
||||
|
||||
build-system = [
|
||||
python3.pkgs.setuptools-generate
|
||||
python3.pkgs.setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = with python3.pkgs; [
|
||||
tree-sitter-languages
|
||||
lsp-tree-sitter
|
||||
];
|
||||
nativeCheckInputs = [
|
||||
python3.pkgs.pytestCheckHook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Autotools language server, support configure.ac, Makefile.am, Makefile";
|
||||
homepage = "https://github.com/Freed-Wu/autotools-language-server";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ doronbehar ];
|
||||
mainProgram = "autotools-language-server";
|
||||
};
|
||||
}
|
||||
80
pkgs/by-name/ba/babeltrace/package.nix
Normal file
80
pkgs/by-name/ba/babeltrace/package.nix
Normal file
@@ -0,0 +1,80 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
gitUpdater,
|
||||
autoreconfHook,
|
||||
pkg-config,
|
||||
glib,
|
||||
libuuid,
|
||||
popt,
|
||||
elfutils,
|
||||
enablePython ? false,
|
||||
pythonPackages ? null,
|
||||
swig2,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "babeltrace";
|
||||
version = "1.5.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.efficios.com/files/babeltrace/${finalAttrs.pname}-${finalAttrs.version}.tar.bz2";
|
||||
sha256 = "Z7Q6qu9clR+nrxpVfPcgGhH+iYdrfCK6CgPLwxbbWpw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs =
|
||||
[
|
||||
# The pre-generated ./configure script uses an old autoconf version which
|
||||
# breaks cross-compilation (replaces references to malloc with rpl_malloc).
|
||||
# Re-generate with nixpkgs's autoconf. This requires glib to be present in
|
||||
# nativeBuildInputs for its m4 macros to be present.
|
||||
autoreconfHook
|
||||
glib
|
||||
pkg-config
|
||||
]
|
||||
++ lib.optionals enablePython [
|
||||
swig2
|
||||
pythonPackages.setuptools
|
||||
];
|
||||
buildInputs = [
|
||||
glib
|
||||
libuuid
|
||||
popt
|
||||
elfutils
|
||||
];
|
||||
|
||||
configureFlags =
|
||||
[
|
||||
# --enable-debug-info (default) requires the configure script to run host
|
||||
# executables to determine the elfutils library version, which cannot be done
|
||||
# while cross compiling.
|
||||
(lib.enableFeature (stdenv.hostPlatform == stdenv.buildPlatform) "debug-info")
|
||||
]
|
||||
++ lib.optionals enablePython [
|
||||
# Using (lib.enableFeature enablePython "python-bindings") makes the
|
||||
# configure script look for python dependencies even when
|
||||
# enablePython==false. Adding the configure flag conditionally seems to
|
||||
# solve this.
|
||||
"--enable-python-bindings"
|
||||
];
|
||||
#
|
||||
|
||||
passthru.updateScript = gitUpdater {
|
||||
url = "https://git.efficios.com/babeltrace.git";
|
||||
rev-prefix = "v";
|
||||
# Versions 2.x are packaged independently as babeltrace2
|
||||
ignoredVersions = "^[^1]";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Command-line tool and library to read and convert LTTng tracefiles";
|
||||
homepage = "https://www.efficios.com/babeltrace";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [
|
||||
bjornfor
|
||||
wentasah
|
||||
];
|
||||
};
|
||||
})
|
||||
101
pkgs/by-name/ba/babeltrace2/package.nix
Normal file
101
pkgs/by-name/ba/babeltrace2/package.nix
Normal file
@@ -0,0 +1,101 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
autoreconfHook,
|
||||
pkg-config,
|
||||
glib,
|
||||
elfutils,
|
||||
bison,
|
||||
flex,
|
||||
asciidoc,
|
||||
xmlto,
|
||||
docbook_xml_dtd_45,
|
||||
docbook_xsl,
|
||||
enablePython ? false,
|
||||
python ? null,
|
||||
pythonPackages ? null,
|
||||
swig,
|
||||
ensureNewerSourcesForZipFilesHook,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "babeltrace2";
|
||||
version = "2.0.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "efficios";
|
||||
repo = "babeltrace";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-L4YTqPxvWynUBnmAQnlJ2RNbEv9MhBxQOsqbWix8ZwU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Patches needed for Python 3.12
|
||||
(fetchpatch {
|
||||
# python: Use standalone 'sysconfig' module
|
||||
url = "https://github.com/efficios/babeltrace/commit/452480eb6820df9973d50431a479ca547815ae08.patch";
|
||||
hash = "sha256-YgUKHJzdliNUsTY29E0xxcUjqVWn4EvxyTs0B+O+jrI=";
|
||||
})
|
||||
(fetchpatch {
|
||||
# python: replace distutils with setuptools
|
||||
url = "https://github.com/efficios/babeltrace/commit/6ec97181a525a3cd64cedbcd0df905ed9e84ba03.patch";
|
||||
hash = "sha256-1hlEkPcRUpf2+iEXqHXcCDOaLTg+eaVcahqZlA8m5QY=";
|
||||
})
|
||||
(fetchpatch {
|
||||
# fix: python: monkey patch the proper sysconfig implementation
|
||||
url = "https://github.com/efficios/babeltrace/commit/927263e4ea62877af7240cfdb1514ae949dbfc2e.patch";
|
||||
hash = "sha256-HNRQ7uw26FUKCQ/my6//OL2xsHdOGlQUq5zIKtg9OGw=";
|
||||
})
|
||||
];
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"man"
|
||||
"dev"
|
||||
];
|
||||
|
||||
nativeBuildInputs =
|
||||
[
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
glib
|
||||
bison
|
||||
flex
|
||||
asciidoc
|
||||
xmlto
|
||||
docbook_xml_dtd_45
|
||||
docbook_xsl
|
||||
]
|
||||
++ lib.optionals enablePython [
|
||||
swig
|
||||
pythonPackages.setuptools
|
||||
ensureNewerSourcesForZipFilesHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
elfutils
|
||||
] ++ lib.optional enablePython python;
|
||||
|
||||
configureFlags = [
|
||||
(lib.enableFeature enablePython "python-bindings")
|
||||
(lib.enableFeature enablePython "python-plugins")
|
||||
(lib.enableFeature (stdenv.hostPlatform == stdenv.buildPlatform) "debug-info")
|
||||
];
|
||||
|
||||
# For cross-compilation of Python bindings
|
||||
makeFlags = [ "CFLAGS=-Wno-error=stringop-truncation -Wno-error=null-dereference" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "Babeltrace /ˈbæbəltreɪs/ is an open-source trace manipulation toolkit";
|
||||
homepage = "https://babeltrace.org";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ wentasah ];
|
||||
mainProgram = "babeltrace2";
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
23
pkgs/by-name/ca/catppuccin-whiskers/package.nix
Normal file
23
pkgs/by-name/ca/catppuccin-whiskers/package.nix
Normal file
@@ -0,0 +1,23 @@
|
||||
{ lib, fetchFromGitHub, rustPlatform }:
|
||||
let version = "2.4.0";
|
||||
in rustPlatform.buildRustPackage {
|
||||
pname = "catppuccin-whiskers";
|
||||
inherit version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "catppuccin";
|
||||
repo = "whiskers";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-rbPr5eSs99nS70J785SWO7tVBdiX/S7XUNHuo3aOQU4=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-T7dreELSHfJizfbJEvvgkOmkMwlOETZVUdLwRFJOJEo=";
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/catppuccin/whiskers";
|
||||
description = "A templating tool to simplify the creation of Catppuccin ports";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ Name ];
|
||||
mainProgram = "whiskers";
|
||||
};
|
||||
}
|
||||
@@ -1,34 +1,37 @@
|
||||
{ lib, stdenv, fetchFromGitHub
|
||||
, addOpenGLRunpath
|
||||
, wrapGAppsHook3
|
||||
, cmake
|
||||
, glslang
|
||||
, nasm
|
||||
, pkg-config
|
||||
|
||||
, SDL2
|
||||
, boost
|
||||
, cubeb
|
||||
, curl
|
||||
, fmt_9
|
||||
, glm
|
||||
, gtk3
|
||||
, hidapi
|
||||
, imgui
|
||||
, libpng
|
||||
, libusb1
|
||||
, libzip
|
||||
, libXrender
|
||||
, pugixml
|
||||
, rapidjson
|
||||
, vulkan-headers
|
||||
, wayland
|
||||
, wxGTK32
|
||||
, zarchive
|
||||
, gamemode
|
||||
, vulkan-loader
|
||||
|
||||
, nix-update-script
|
||||
{
|
||||
lib,
|
||||
SDL2,
|
||||
addOpenGLRunpath,
|
||||
boost,
|
||||
cmake,
|
||||
cubeb,
|
||||
curl,
|
||||
fetchFromGitHub,
|
||||
fmt_9,
|
||||
gamemode,
|
||||
glm,
|
||||
glslang,
|
||||
gtk3,
|
||||
hidapi,
|
||||
imgui,
|
||||
libXrender,
|
||||
libpng,
|
||||
libusb1,
|
||||
libzip,
|
||||
nasm,
|
||||
ninja,
|
||||
nix-update-script,
|
||||
pkg-config,
|
||||
pugixml,
|
||||
rapidjson,
|
||||
stdenv,
|
||||
testers,
|
||||
vulkan-headers,
|
||||
vulkan-loader,
|
||||
wayland,
|
||||
wrapGAppsHook3,
|
||||
wxGTK32,
|
||||
zarchive,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -43,31 +46,32 @@ let
|
||||
sha256 = "sha256-gf47uLeNiXQic43buB5ZnMqiotlUfIyAsP+3H7yJuFg=";
|
||||
};
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "cemu";
|
||||
version = "2.0-85";
|
||||
version = "2.0-86";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cemu-project";
|
||||
repo = "Cemu";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-uMVbKJhdHLLKsJnj7YFIG+S5pm7rSZfBSWebhTP01Y8=";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-AS5Qo4J0U1MeTYWl4jiJMi879bhBuioU1BikxGKtUrE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# glslangTargets want SPIRV-Tools-opt to be defined:
|
||||
# > The following imported targets are referenced, but are missing:
|
||||
# > SPIRV-Tools-opt
|
||||
./cmakelists.patch
|
||||
./0000-spirv-tools-opt-cmakelists.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
SDL2
|
||||
addOpenGLRunpath
|
||||
wrapGAppsHook3
|
||||
cmake
|
||||
glslang
|
||||
nasm
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
@@ -94,24 +98,26 @@ in stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_C_FLAGS_RELEASE=-DNDEBUG"
|
||||
"-DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG"
|
||||
"-DENABLE_VCPKG=OFF"
|
||||
"-DENABLE_FERAL_GAMEMODE=ON"
|
||||
(lib.cmakeFeature "CMAKE_C_FLAGS_RELEASE" "-DNDEBUG")
|
||||
(lib.cmakeFeature "CMAKE_CXX_FLAGS_RELEASE" "-DNDEBUG")
|
||||
(lib.cmakeBool "ENABLE_VCPKG" false)
|
||||
(lib.cmakeBool "ENABLE_FERAL_GAMEMODE" true)
|
||||
|
||||
# PORTABLE:
|
||||
# "All data created and maintained by Cemu will be in the directory where the executable file is located"
|
||||
"-DPORTABLE=OFF"
|
||||
# PORTABLE: "All data created and maintained by Cemu will be in
|
||||
# the directory where the executable file is located"
|
||||
(lib.cmakeBool "PORTABLE" false)
|
||||
];
|
||||
|
||||
preConfigure = with lib; let
|
||||
tag = last (splitString "-" version);
|
||||
strictDeps = true;
|
||||
|
||||
preConfigure = let
|
||||
tag = lib.last (lib.splitString "-" finalAttrs.version);
|
||||
in ''
|
||||
rm -rf dependencies/imgui
|
||||
# cemu expects imgui source code, not just header files
|
||||
ln -s ${imgui'.src} dependencies/imgui
|
||||
substituteInPlace src/Common/version.h --replace " (experimental)" "-${tag} (experimental)"
|
||||
substituteInPlace dependencies/gamemode/lib/gamemode_client.h --replace "libgamemode.so.0" "${gamemode.lib}/lib/libgamemode.so.0"
|
||||
substituteInPlace src/Common/version.h --replace-fail " (experimental)" "-${tag} (experimental)"
|
||||
substituteInPlace dependencies/gamemode/lib/gamemode_client.h --replace-fail "libgamemode.so.0" "${gamemode.lib}/lib/libgamemode.so.0"
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
@@ -138,14 +144,21 @@ in stdenv.mkDerivation rec {
|
||||
)
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "Cemu is a Wii U emulator";
|
||||
homepage = "https://cemu.info";
|
||||
license = licenses.mpl20;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ zhaofengli baduhai ];
|
||||
mainProgram = "cemu";
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests = {
|
||||
version = testers.testVersion {
|
||||
package = finalAttrs.finalPackage;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
meta = {
|
||||
description = "Software to emulate Wii U games and applications on PC";
|
||||
homepage = "https://cemu.info";
|
||||
license = lib.licenses.mpl20;
|
||||
mainProgram = "cemu";
|
||||
maintainers = with lib.maintainers; [ zhaofengli baduhai AndersonTorres ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
})
|
||||
@@ -2,14 +2,14 @@
|
||||
, xcbutilcursor, xcbutilkeysyms, xcbutil, libXrandr, libXinerama, libXcursor
|
||||
, alsa-lib, libjack2, lv2, gcc-unwrapped }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ChowCentaur";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "chow-centaur";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jatinchowdhury18";
|
||||
repo = "KlonCentaur";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "0mrzlf4a6f25xd7z9xanpyq7ybb4al01dzpjsgi0jkmlmadyhc4h";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@@ -50,4 +50,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ magnetophon ];
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -35,14 +35,14 @@
|
||||
, webkitgtk
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ChowKick";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "chow-kick";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Chowdhury-DSP";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
repo = "ChowKick";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "0amnp0p7ckbbr9dcbdnld1ryv46kvza2dj8m6hzmi7c1s4df8x5q";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@@ -91,9 +91,9 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/lv2 $out/lib/vst3 $out/bin
|
||||
cp -r ChowKick_artefacts/Release/LV2//${pname}.lv2 $out/lib/lv2
|
||||
cp -r ChowKick_artefacts/Release/VST3/${pname}.vst3 $out/lib/vst3
|
||||
cp ChowKick_artefacts/Release/Standalone/${pname} $out/bin
|
||||
cp -r ChowKick_artefacts/Release/LV2/ChowKick.lv2 $out/lib/lv2
|
||||
cp -r ChowKick_artefacts/Release/VST3/ChowKick.vst3 $out/lib/vst3
|
||||
cp ChowKick_artefacts/Release/Standalone/ChowKick $out/bin
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
@@ -104,4 +104,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "ChowKick";
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -4,14 +4,14 @@
|
||||
, libsepol, libsysprof-capture, libthai, libxkbcommon, pcre, pkg-config
|
||||
, python3, sqlite, stdenv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ChowPhaser";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "chow-phaser";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jatinchowdhury18";
|
||||
repo = "ChowPhaser";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-9wo7ZFMruG3QNvlpILSvrFh/Sx6J1qnlWc8+aQyS4tQ=";
|
||||
};
|
||||
@@ -70,7 +70,8 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/jatinchowdhury18/ChowPhaser";
|
||||
description = "Phaser effect based loosely on the Schulte Compact Phasing 'A'";
|
||||
license = with licenses; [ bsd3 ];
|
||||
mainProgram = "ChowPhaserStereo";
|
||||
maintainers = with maintainers; [ magnetophon ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -39,14 +39,14 @@ let
|
||||
# See here: https://forum.juce.com/t/build-fails-on-fedora-wrong-c-version/50902/2
|
||||
stdenv = gcc11Stdenv;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "CHOWTapeModel";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "chow-tape-model";
|
||||
version = "2.11.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jatinchowdhury18";
|
||||
repo = "AnalogTapeModel";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-WriHi68Y6hAsrwE+74JtVlAKUR9lfTczj6UK9h2FOGM=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/lv2 $out/lib/vst3 $out/lib/clap $out/bin $out/share/doc/CHOWTapeModel/
|
||||
cd CHOWTapeModel_artefacts/${cmakeBuildType}
|
||||
cd CHOWTapeModel_artefacts/${finalAttrs.cmakeBuildType}
|
||||
cp -r LV2/CHOWTapeModel.lv2 $out/lib/lv2
|
||||
cp -r VST3/CHOWTapeModel.vst3 $out/lib/vst3
|
||||
cp -r CLAP/CHOWTapeModel.clap $out/lib/clap
|
||||
@@ -129,4 +129,4 @@ stdenv.mkDerivation rec {
|
||||
broken = stdenv.isAarch64; # since 2021-12-27 on hydra (update to 2.10): https://hydra.nixos.org/build/162558991
|
||||
mainProgram = "CHOWTapeModel";
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "consul";
|
||||
version = "1.18.2";
|
||||
version = "1.19.0";
|
||||
|
||||
# Note: Currently only release tags are supported, because they have the Consul UI
|
||||
# vendored. See
|
||||
@@ -22,7 +22,7 @@ buildGoModule rec {
|
||||
owner = "hashicorp";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-9feeWsCAZKip+AYUJTCcqFOTfxsUFMzTRqHjo/Pptho=";
|
||||
hash = "sha256-GO2BfdozsAo1r4iSyQdAEG8Tm6OkJhSUrH3bZ9lWuO8=";
|
||||
};
|
||||
|
||||
# This corresponds to paths with package main - normally unneeded but consul
|
||||
@@ -32,7 +32,7 @@ buildGoModule rec {
|
||||
"connect/certgen"
|
||||
];
|
||||
|
||||
vendorHash = "sha256-bBc3qgPUOmR8c/sFyiskePKLKjHTQcWVTLY6esFIRTc=";
|
||||
vendorHash = "sha256-h3eTCj/0FPiY/Dj4cMj9VqKBs28ArnTPjRIC3LT06j0=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
||||
10
pkgs/by-name/cy/cyme/Cargo.lock
generated
10
pkgs/by-name/cy/cyme/Cargo.lock
generated
@@ -492,8 +492,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "libusb1-sys"
|
||||
version = "0.6.4"
|
||||
source = "git+https://github.com/a1ien/rusb.git#c38563efeb7733f0f8b5ac01703fd2ad1d84fea2"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "da050ade7ac4ff1ba5379af847a10a10a8e284181e060105bf8d86960ce9ce0f"
|
||||
dependencies = [
|
||||
"cc",
|
||||
"libc",
|
||||
@@ -697,8 +698,9 @@ checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
|
||||
|
||||
[[package]]
|
||||
name = "rusb"
|
||||
version = "0.9.3"
|
||||
source = "git+https://github.com/a1ien/rusb.git#c38563efeb7733f0f8b5ac01703fd2ad1d84fea2"
|
||||
version = "0.9.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ab9f9ff05b63a786553a4c02943b74b34a988448671001e9a27e2f0565cc05a4"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"libusb1-sys",
|
||||
|
||||
@@ -14,20 +14,19 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cyme";
|
||||
version = "1.6.0";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tuna-f1sh";
|
||||
repo = "cyme";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-97sxK2zhUKBS238F9mNk8a2VbTVpvbDlN1yDas4Fls4=";
|
||||
hash = "sha256-HIOrdVChTfYX8AKqytWU+EudFDiqoVELb+yL3jsPQwM=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"libudev-sys-0.1.4" = "sha256-7dUqPH8bQ/QSBIppxQbymwQ44Bvi1b6N2AMUylbyKK8=";
|
||||
"libusb1-sys-0.6.4" = "sha256-Y3K3aEZnpLud/g4Tx+1HDEkNRKi5s4Fo0QSWya/L+L4=";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ (stdenv.cc.cc.libgcc or null) ];
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook ];
|
||||
nativeBuildInputs = lib.optional stdenv.isLinux autoPatchelfHook;
|
||||
|
||||
installPhase =
|
||||
let
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildNpmPackage
|
||||
, fetchFromGitHub
|
||||
{
|
||||
lib,
|
||||
buildNpmPackage,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
buildNpmPackage rec {
|
||||
@@ -24,6 +25,9 @@ buildNpmPackage rec {
|
||||
homepage = "https://emacs-eask.github.io/";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "eask";
|
||||
maintainers = with lib.maintainers; [ jcs090218 ];
|
||||
maintainers = with lib.maintainers; [
|
||||
jcs090218
|
||||
piotrkwiecinski
|
||||
];
|
||||
};
|
||||
}
|
||||
62
pkgs/by-name/es/escambo/package.nix
Normal file
62
pkgs/by-name/es/escambo/package.nix
Normal file
@@ -0,0 +1,62 @@
|
||||
{
|
||||
lib,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
gobject-introspection,
|
||||
blueprint-compiler,
|
||||
wrapGAppsHook4,
|
||||
desktop-file-utils,
|
||||
libadwaita,
|
||||
gtksourceview5,
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "escambo";
|
||||
version = "0.1.2";
|
||||
pyproject = false; # built with meson
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CleoMenezesJr";
|
||||
repo = "escambo";
|
||||
rev = version;
|
||||
hash = "sha256-jMlix8nlCaVLZEhqzb6LRNrD3DUZMTIjqrRKo6nFbQA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
gobject-introspection
|
||||
blueprint-compiler
|
||||
wrapGAppsHook4
|
||||
desktop-file-utils
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libadwaita
|
||||
gtksourceview5
|
||||
];
|
||||
|
||||
dependencies = with python3Packages; [
|
||||
pygobject3
|
||||
requests
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
preFixup = ''
|
||||
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "HTTP-based APIs test application for GNOME";
|
||||
homepage = "https://github.com/CleoMenezesJr/escambo";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "escambo";
|
||||
maintainers = with lib.maintainers; [ aleksana ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -5,10 +5,10 @@
|
||||
|
||||
let
|
||||
pname = "fflogs";
|
||||
version = "8.5.12";
|
||||
version = "8.5.16";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/RPGLogs/Uploaders-fflogs/releases/download/v${version}/fflogs-v${version}.AppImage";
|
||||
hash = "sha256-mlqQm9o001+pSMfMbOwa+gKcIIC6SBg7Rott9+XkB2E=";
|
||||
hash = "sha256-eUXri4aVMnZtXzCDL3NZTdCR7y0VD5kG4D9YfXQVuzo=";
|
||||
};
|
||||
extracted = appimageTools.extractType2 { inherit pname version src; };
|
||||
in
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "files-cli";
|
||||
version = "2.13.65";
|
||||
version = "2.13.72";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "files-cli";
|
||||
owner = "files-com";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-SUxITjWgUQcF7G6w5PZUpjvBH3tGhK/A1sOVg6SEfTU=";
|
||||
hash = "sha256-u5hAUGGaMpUub4WL8CGEzbnfXPRouaGbb8SQ6ep3X3Q=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-QVQi60j0XR1OApLG/WPq9aAP4P/2hYCbTLL/3sHAisw=";
|
||||
vendorHash = "sha256-y4XZeugjqy6ydAq6KQ8iIgMgE6iHAEqzzi2A+N1LB3M=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -1,24 +1,27 @@
|
||||
{ lib, stdenvNoCC, fetchzip }:
|
||||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchzip
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "fira-mono";
|
||||
version = "4.202";
|
||||
version = "3.2";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/mozilla/Fira/archive/${version}.zip";
|
||||
hash = "sha256-HLReqgL0PXF5vOpwLN0GiRwnzkjGkEVEyOEV2Z4R0oQ=";
|
||||
url = "https://bboxtype.com/downloads/Fira/Fira_Mono_${lib.replaceStrings ["."] ["_"] version}.zip";
|
||||
hash = "sha256-Ukc+K2sdSz+vUQFD8mmwJHZQ3N68oM4fk6YzGLwzAfQ=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm644 otf/FiraMono*.otf -t $out/share/fonts/opentype
|
||||
install -Dm644 Fonts/FiraMono_OTF*/*.otf -t $out/share/fonts/opentype
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://mozilla.github.io/Fira/";
|
||||
homepage = "https://bboxtype.com/fira/";
|
||||
description = "Monospace font for Firefox OS";
|
||||
longDescription = ''
|
||||
Fira Mono is a monospace font designed by Erik Spiekermann,
|
||||
|
||||
@@ -1,22 +1,28 @@
|
||||
{ lib
|
||||
, stdenvNoCC
|
||||
, fira-mono
|
||||
, fetchzip
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "fira-sans";
|
||||
inherit (fira-mono) version src;
|
||||
version = "4.301";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://bboxtype.com/downloads/Fira/Download_Folder_FiraSans_${lib.replaceStrings ["."] [""] version}.zip";
|
||||
hash = "sha256-WBt3oqPK7ACqMhilYkyFx9Ek2ugwdCDFZN+8HLRnGRs";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install --mode=-x -Dt $out/share/fonts/opentype otf/FiraSans*.otf
|
||||
install --mode=-x -Dt $out/share/fonts/opentype Download_Folder_FiraSans*/Fonts/Fira_Sans_OTF*/*/*/*.otf
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://mozilla.github.io/Fira/";
|
||||
homepage = "https://bboxtype.com/fira/";
|
||||
description = "Sans-serif font for Firefox OS";
|
||||
longDescription = ''
|
||||
Fira Sans is a sans-serif font designed by Erik Spiekermann,
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
symlinkJoin rec {
|
||||
pname = "fira";
|
||||
inherit (fira-mono) version;
|
||||
inherit (fira-sans) version;
|
||||
name = "${pname}-${version}";
|
||||
|
||||
paths = [
|
||||
@@ -16,7 +16,7 @@ symlinkJoin rec {
|
||||
|
||||
meta = {
|
||||
description = "Fira font family including Fira Sans and Fira Mono";
|
||||
homepage = "https://mozilla.github.io/Fira/";
|
||||
homepage = "https://bboxtype.com/fira/";
|
||||
license = lib.licenses.ofl;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
|
||||
@@ -2,71 +2,55 @@
|
||||
, 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
|
||||
, glib-networking
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "geopard";
|
||||
version = "1.4.0";
|
||||
version = "1.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ranfdev";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-elHxtFEGkdhEPHxuJtcMYwWnvo6vDaHiOyN51EOzym0=";
|
||||
repo = "geopard";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-QHqhjoiKiwTBDMDhb7Agqe0/o2LyLDs2kl/HC4UfayY=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit pname version src;
|
||||
hash = "sha256-80YujPjcmAxH1gITT4OJk8w4m8Z/pAYtBUpCPQOKe3E=";
|
||||
hash = "sha256-AmGwsSRrZK+oSnkn9Xzmia/Kbkw19v0nb1kFJtymqOs=";
|
||||
};
|
||||
|
||||
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
|
||||
glib-networking
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/ranfdev/Geopard";
|
||||
description = "Colorful, adaptive gemini browser";
|
||||
maintainers = with maintainers; [ jfvillablanca ];
|
||||
maintainers = with maintainers; [ jfvillablanca aleksana ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "geopard";
|
||||
|
||||
@@ -5,14 +5,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "getmail6";
|
||||
version = "6.19.00";
|
||||
version = "6.19.01";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "getmail6";
|
||||
repo = "getmail6";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-cAho0fAvxUoxKrvS7XJaKYGEGgtA8Xl6dOEtVtUvK10=";
|
||||
hash = "sha256-Q3FQmliWQ8BB/U4RWw1z5I721jw8LGRLPjI9eKELd0g=";
|
||||
};
|
||||
|
||||
build-system = with python3.pkgs; [
|
||||
|
||||
40
pkgs/by-name/gl/glock/package.nix
Normal file
40
pkgs/by-name/gl/glock/package.nix
Normal file
@@ -0,0 +1,40 @@
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
buildGoModule {
|
||||
pname = "glock";
|
||||
version = "0-unstable-2021-03-19";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "robfig";
|
||||
repo = "glock";
|
||||
rev = "0ac7e52a4c8a9a7039a72b3c6a10e8be59bc6599";
|
||||
hash = "sha256-EDaLk83u1gRcvEjrfBrLZBQZ5unyD9LQA2TccOawXII=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Migrate to Go modules
|
||||
(fetchpatch {
|
||||
url = "https://github.com/robfig/glock/commit/943afe5e26dd64ebad5ca17613ae3700c53fb25d.patch";
|
||||
hash = "sha256-nk+5uHlCv7Hxbo0Axvi15nJVzEcb++gOJpF3w06yQsk=";
|
||||
})
|
||||
];
|
||||
|
||||
vendorHash = "sha256-v3lfb+CXbTxzObDpubufD3Q1h6IhULcC/6spA6StfGw=";
|
||||
|
||||
checkFlags = [ "-skip=^TestSave$" ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/robfig/glock";
|
||||
description = "Command-line tool to lock Go dependencies to specific revisions";
|
||||
mainProgram = "glock";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
luftmensch-luftmensch
|
||||
rushmorem
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -41,8 +41,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# Reference: src/Makefile, directive gmic_stdlib_community.h
|
||||
gmic_stdlib = fetchurl {
|
||||
name = "gmic_stdlib_community.h";
|
||||
url = "http://gmic.eu/gmic_stdlib_community${lib.replaceStrings ["."] [""] finalAttrs.version}.h";
|
||||
hash = "sha256-wq8yQ0pxEGH3sOmwmgQfRVluHAC4JBYgs2mto1PNLP4=";
|
||||
url = "https://gmic.eu/gmic_stdlib_community${lib.replaceStrings ["."] [""] finalAttrs.version}.h";
|
||||
hash = "sha256-LoqK8ADwzPpxhy2GvaxVjGyYEHAbhspyoIXuBXCLRtQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gmid";
|
||||
version = "2.0.4";
|
||||
version = "2.0.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "omar-polo";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-ioyQS5jjOICAWtZG8no+WUmLybEVLvum6TFFFdnMdfY=";
|
||||
hash = "sha256-xuA5yLtRu9GDrSr7FBlAwEjCjFVRmnOuBM62AHOHDhc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ bison ];
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "goofcord";
|
||||
version = "1.4.2";
|
||||
version = "1.4.3";
|
||||
|
||||
src =
|
||||
let
|
||||
@@ -48,11 +48,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
{
|
||||
x86_64-linux = fetchurl {
|
||||
url = "${base}/v${finalAttrs.version}/GoofCord-${finalAttrs.version}-linux-amd64.deb";
|
||||
hash = "sha256-fUP/se3hOhs+aAoew25YhRyxnodYPrgqN68RIg1A1Kw=";
|
||||
hash = "sha256-XO/T5O6+hJ6QT8MCVorrdXPZZlrywa6u0UKPk9WIQBE=";
|
||||
};
|
||||
aarch64-linux = fetchurl {
|
||||
url = "${base}/v${finalAttrs.version}/GoofCord-${finalAttrs.version}-linux-arm64.deb";
|
||||
hash = "sha256-hVpXmBSIgoON683f/sRtmpHwqxcO6IrFCCRPZjsUqjw=";
|
||||
hash = "sha256-4mJ3kDQ+eh9LnyzxyNYvd2hMmgiJtBMXKup7ILlHk0Y=";
|
||||
};
|
||||
}
|
||||
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "graphite-cli";
|
||||
version = "1.3.6";
|
||||
version = "1.3.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/@withgraphite/graphite-cli/-/graphite-cli-${version}.tgz";
|
||||
hash = "sha256-rD/YWFRHzoM9Gsd9tnCF56RChckaeWGFphYgHa0UvUU=";
|
||||
hash = "sha256-FJaDSg+scrmqYkCGCrb+yT8TtKT09xu6BS5AjTlfhzo=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-WyV0f5thWG7hg7Vm1UUIlcFCgP83HfXQFBUVHcQdjRo=";
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "halo";
|
||||
version = "2.16.2";
|
||||
version = "2.16.3";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/halo-dev/halo/releases/download/v${version}/${pname}-${version}.jar";
|
||||
hash = "sha256-bHMcJvM+ZBjiGUAZzjnEupWW9L8viE/Ix8IK2y4KDoA=";
|
||||
hash = "sha256-sl2b9zKugnCEMHyvEqBWZPidoANth5gRfh34NAaqg7A=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "havn";
|
||||
version = "0.1.11";
|
||||
version = "0.1.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mrjackwills";
|
||||
repo = "havn";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-iotSSKId2y3Y7Dh8iSW1/y3xDbXHHPl6RQ3uA/+JdE8=";
|
||||
hash = "sha256-BCg572435CdQMOldm3Ao4D+sDxbXUlDxMWmxa+aqTY0=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-Tec1YeP1zwE8nurQOYxa9hzGBy3uxkjDUFlh0BppUTo=";
|
||||
cargoHash = "sha256-JaAlWiaOUoXSV6O4wmU7zCR5h5olO2zkB5WEGk2/ZdE=";
|
||||
|
||||
checkFlags = [
|
||||
# Skip tests that require network access
|
||||
|
||||
@@ -1,28 +1,32 @@
|
||||
{ buildPackages
|
||||
, fetchzip
|
||||
, javaOpts ? "-XX:+UseZGC"
|
||||
, jdk
|
||||
, jre_headless
|
||||
, lib
|
||||
, makeWrapper
|
||||
, stdenvNoCC
|
||||
,
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchzip,
|
||||
jdk,
|
||||
makeWrapper,
|
||||
buildPackages,
|
||||
jre_headless,
|
||||
javaOpts ? "-XX:+UseZGC",
|
||||
}:
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "HentaiAtHome";
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "hentai-at-home";
|
||||
version = "1.6.3";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://repo.e-hentai.org/hath/HentaiAtHome_${version}_src.zip";
|
||||
url = "https://repo.e-hentai.org/hath/HentaiAtHome_${finalAttrs.version}_src.zip";
|
||||
hash = "sha512-kBB5mn9MwpkZ0z+Fl5ABs4YWBkXkMRcADYSAPkeifyhbYQQPOnijXKYZCkzE4UB3uQ1j6Kj6WnpO/4jquYEiOQ==";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ jdk makeWrapper ];
|
||||
nativeBuildInputs = [
|
||||
jdk
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
LANG = "en_US.UTF-8";
|
||||
LOCALE_ARCHIVE = lib.optionalString (stdenvNoCC.buildPlatform.libc == "glibc")
|
||||
"${buildPackages.glibcLocales}/lib/locale/locale-archive";
|
||||
LOCALE_ARCHIVE = lib.optionalString (
|
||||
stdenvNoCC.buildPlatform.libc == "glibc"
|
||||
) "${buildPackages.glibcLocales}/lib/locale/locale-archive";
|
||||
|
||||
buildPhase = ''
|
||||
make all
|
||||
@@ -48,10 +52,10 @@ stdenvNoCC.mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://ehwiki.org/wiki/Hentai@Home";
|
||||
description =
|
||||
"Hentai@Home is an open-source P2P gallery distribution system which reduces the load on the E-Hentai Galleries";
|
||||
description = "Open-source P2P gallery distribution system which reduces the load on the E-Hentai Galleries";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ terrorjack ];
|
||||
mainProgram = "HentaiAtHome";
|
||||
platforms = jdk.meta.platforms;
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -5,16 +5,16 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "impala";
|
||||
version = "0.1.1";
|
||||
version = "0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pythops";
|
||||
repo = "impala";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-r/aWzSn/Dci69oS/yopG6Ro34U8hniHVanctyM7RvDw=";
|
||||
hash = "sha256-7UMHkm3AtPqUILrsUnM0SbZT4Sq55dEElMN0KonjwtE=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-IV1ftsRyM0CUlQMVmLip1FiqnouT5TsKASpF/KLARqY=";
|
||||
cargoHash = "sha256-CtEirsSQAg2Fv44YoKKmSjQs85++QWFRcWoA4VrBbgU=";
|
||||
|
||||
meta = {
|
||||
description = "TUI for managing wifi";
|
||||
|
||||
58
pkgs/by-name/ip/iplookup-gtk/package.nix
Normal file
58
pkgs/by-name/ip/iplookup-gtk/package.nix
Normal file
@@ -0,0 +1,58 @@
|
||||
{
|
||||
lib,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
gobject-introspection,
|
||||
wrapGAppsHook4,
|
||||
desktop-file-utils,
|
||||
libadwaita,
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonPackage rec {
|
||||
pname = "iplookup-gtk";
|
||||
version = "0.3.4";
|
||||
pyproject = false; # Built with meson
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Bytezz";
|
||||
repo = "IPLookup-gtk";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-NqFE6vRdLpnlCzGAUE4iOfLmTnUgX3CHtoXfsbT3zm4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
gobject-introspection
|
||||
wrapGAppsHook4
|
||||
desktop-file-utils
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libadwaita
|
||||
];
|
||||
|
||||
dependencies = with python3Packages; [
|
||||
pygobject3
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
preFixup = ''
|
||||
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Find info about an IP address";
|
||||
homepage = "https://github.com/Bytezz/IPLookup-gtk";
|
||||
changelog = "https://github.com/Bytezz/IPLookup-gtk/releases/tag/${src.rev}";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "iplookup";
|
||||
maintainers = with lib.maintainers; [ aleksana ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -36,12 +36,10 @@ buildDotnetModule rec {
|
||||
dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
|
||||
dotnetBuildFlags = [ "--no-self-contained" ];
|
||||
|
||||
preInstall = ''
|
||||
makeWrapperArgs+=(
|
||||
--add-flags "--ffmpeg ${jellyfin-ffmpeg}/bin/ffmpeg"
|
||||
--add-flags "--webdir ${jellyfin-web}/share/jellyfin-web"
|
||||
)
|
||||
'';
|
||||
makeWrapperArgs = [
|
||||
"--add-flags" "--ffmpeg=${jellyfin-ffmpeg}/bin/ffmpeg"
|
||||
"--add-flags" "--webdir=${jellyfin-web}/share/jellyfin-web"
|
||||
];
|
||||
|
||||
passthru.tests = {
|
||||
smoke-test = nixosTests.jellyfin;
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "3.4.3";
|
||||
pname = "LASzip";
|
||||
pname = "laszip";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "LASzip";
|
||||
@@ -1,13 +1,13 @@
|
||||
{ lib, stdenv, fetchFromGitHub, cmake }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "2.2.0";
|
||||
pname = "LASzip";
|
||||
pname = "laszip";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "LASzip";
|
||||
repo = "LASzip";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-TXzse4oLjNX5R2xDR721iV+gW/rP5z3Zciv4OgxfeqA=";
|
||||
};
|
||||
|
||||
@@ -20,4 +20,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [ maintainers.michelk ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user