Compare commits
19 Commits
main
...
nixos-25.1
| Author | SHA1 | Date |
|---|---|---|
|
|
6ff53a02b8 | |
|
|
b81369662c | |
|
|
13e67681de | |
|
|
8511ccaa4f | |
|
|
2028d946a5 | |
|
|
7e52eb4d52 | |
|
|
1319b12cb7 | |
|
|
74ba7dba3e | |
|
|
0f55b27419 | |
|
|
ae47a36f7f | |
|
|
82ac27dea3 | |
|
|
875a804500 | |
|
|
90f79781c7 | |
|
|
6310c4ca22 | |
|
|
96a1cf5c55 | |
|
|
b38957ff39 | |
|
|
722df1c375 | |
|
|
94247ca614 | |
|
|
6ba1a991dd |
|
|
@ -43,8 +43,8 @@ for flake usage, add this repo as an input and don't input nixpkgs at all, since
|
||||||
```nix
|
```nix
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
# for nixos-25.05
|
# for nixos-25.11
|
||||||
dragnpkgs.url = "git+https://git.lain.faith/haskal/dragnpkgs.git?ref=nixos-25.05";
|
dragnpkgs.url = "git+https://git.lain.faith/haskal/dragnpkgs.git?ref=nixos-25.11";
|
||||||
|
|
||||||
# for nixos-unstable
|
# for nixos-unstable
|
||||||
dragnpkgs.url = "git+https://git.lain.faith/haskal/dragnpkgs.git?ref=main";
|
dragnpkgs.url = "git+https://git.lain.faith/haskal/dragnpkgs.git?ref=main";
|
||||||
|
|
|
||||||
22
flake.lock
22
flake.lock
|
|
@ -1,37 +1,23 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"lix-module": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1756125859,
|
|
||||||
"narHash": "sha256-6a+PWILmqHCs9B5eIBLg6HSZ8jYweZpgOWO8FlyVwYI=",
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-2.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-2.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763283776,
|
"lastModified": 1767480499,
|
||||||
"narHash": "sha256-Y7TDFPK4GlqrKrivOcsHG8xSGqQx3A6c+i7novT85Uk=",
|
"narHash": "sha256-8IQQUorUGiSmFaPnLSo2+T+rjHtiNWc+OAzeHck7N48=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "50a96edd8d0db6cc8db57dab6bb6d6ee1f3dc49a",
|
"rev": "30a3c519afcf3f99e2c6df3b359aec5692054d92",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-25.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"lix-module": "lix-module",
|
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
23
flake.nix
23
flake.nix
|
|
@ -2,19 +2,14 @@
|
||||||
description = "dragnpkgs together with nixpkgs and lix";
|
description = "dragnpkgs together with nixpkgs and lix";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
|
||||||
|
|
||||||
lix-module = {
|
|
||||||
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-2.tar.gz";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, lix-module }:
|
outputs = { self, nixpkgs }:
|
||||||
let
|
let
|
||||||
overlays = [
|
overlays = [
|
||||||
(import ./overlay.nix)
|
(import ./overlay.nix)
|
||||||
(import "${lix-module}/overlay.nix" { lix = null; })
|
(import ./lix-overlay.nix)
|
||||||
];
|
];
|
||||||
forAllSystems = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed;
|
forAllSystems = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed;
|
||||||
libVersionInfoOverlay = import "${nixpkgs}/lib/flake-version-info.nix" nixpkgs;
|
libVersionInfoOverlay = import "${nixpkgs}/lib/flake-version-info.nix" nixpkgs;
|
||||||
|
|
@ -28,18 +23,18 @@
|
||||||
# self reference in the registry to be downloadable by URL in case it makes it into a
|
# self reference in the registry to be downloadable by URL in case it makes it into a
|
||||||
# flake.lock
|
# flake.lock
|
||||||
meta.registry-entry = {
|
meta.registry-entry = {
|
||||||
from = { id = "dragnpkgs-unstable"; type = "indirect"; };
|
from = { id = "dragnpkgs"; type = "indirect"; };
|
||||||
to = {
|
to = {
|
||||||
type = "git";
|
type = "git";
|
||||||
url = "https://git.lain.faith/haskal/dragnpkgs.git";
|
url = "https://git.lain.faith/haskal/dragnpkgs.git";
|
||||||
ref = "main";
|
ref = "nixos-25.11";
|
||||||
} // self.lib.filterAttrs
|
} // self.lib.filterAttrs
|
||||||
(n: _: n == "lastModified" || n == "rev" || n == "revCount" || n == "narHash")
|
(n: _: n == "lastModified" || n == "rev" || n == "revCount" || n == "narHash")
|
||||||
self;
|
self;
|
||||||
};
|
};
|
||||||
|
|
||||||
# the nix path entry for self
|
# the nix path entry for self
|
||||||
meta.path-entry = "dragnpkgs-unstable=flake:dragnpkgs-unstable";
|
meta.path-entry = "dragnpkgs=flake:dragnpkgs";
|
||||||
|
|
||||||
lib = (lib-base.extend (import ./lib/overlay.nix)).extend (final: prev: {
|
lib = (lib-base.extend (import ./lib/overlay.nix)).extend (final: prev: {
|
||||||
# initializes regular upstream nixpkgs with the given arguments
|
# initializes regular upstream nixpkgs with the given arguments
|
||||||
|
|
@ -154,17 +149,17 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config.nix.registry.dragnpkgs-unstable =
|
config.nix.registry.dragnpkgs =
|
||||||
lib.mkIf config.dragnpkgs.setFlakeRegistry self.meta.registry-entry;
|
lib.mkIf config.dragnpkgs.setFlakeRegistry self.meta.registry-entry;
|
||||||
|
|
||||||
config.nix.registry.nixpkgs = lib.mkIf config.dragnpkgs.setNixpkgsFlakeAlias {
|
config.nix.registry.nixpkgs = lib.mkIf config.dragnpkgs.setNixpkgsFlakeAlias {
|
||||||
from = { id = "nixpkgs"; type = "indirect"; };
|
from = { id = "nixpkgs"; type = "indirect"; };
|
||||||
to = { id = "dragnpkgs-unstable"; type = "indirect"; };
|
to = { id = "dragnpkgs"; type = "indirect"; };
|
||||||
};
|
};
|
||||||
|
|
||||||
config.nix.registry.templates = lib.mkIf config.dragnpkgs.setTemplatesFlakeAlias {
|
config.nix.registry.templates = lib.mkIf config.dragnpkgs.setTemplatesFlakeAlias {
|
||||||
from = { id = "templates"; type = "indirect"; };
|
from = { id = "templates"; type = "indirect"; };
|
||||||
to = { id = "dragnpkgs-unstable"; type = "indirect"; };
|
to = { id = "dragnpkgs"; type = "indirect"; };
|
||||||
};
|
};
|
||||||
|
|
||||||
config.nix.nixPath = lib.mkIf config.dragnpkgs.setNixPath [
|
config.nix.nixPath = lib.mkIf config.dragnpkgs.setNixPath [
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, stdenvNoCC, system, cacert, depotdownloader }:
|
{ lib, stdenv, cacert, depotdownloader }:
|
||||||
let
|
let
|
||||||
checkDepot = depot: with builtins;
|
checkDepot = depot: with builtins;
|
||||||
hasAttr "depotId" depot && hasAttr "manifestId" depot;
|
hasAttr "depotId" depot && hasAttr "manifestId" depot;
|
||||||
|
|
@ -18,7 +18,7 @@ else if ! builtins.all checkDepot additionalDepots then
|
||||||
else
|
else
|
||||||
let
|
let
|
||||||
depotOs =
|
depotOs =
|
||||||
if system == "x86_64-linux" then
|
if stdenv.hostPlatform.system == "x86_64-linux" then
|
||||||
"linux"
|
"linux"
|
||||||
else
|
else
|
||||||
throw "fetchFromSteam does not currently support systems other than x86_64-linux";
|
throw "fetchFromSteam does not currently support systems other than x86_64-linux";
|
||||||
|
|
@ -26,7 +26,7 @@ let
|
||||||
"-app ${appId} -depot ${depot.depotId} -manifest ${depot.manifestId} -os ${depotOs}"
|
"-app ${appId} -depot ${depot.depotId} -manifest ${depot.manifestId} -os ${depotOs}"
|
||||||
+ (lib.optionalString (builtins.hasAttr "beta" depot) " -beta ${depot.beta}");
|
+ (lib.optionalString (builtins.hasAttr "beta" depot) " -beta ${depot.beta}");
|
||||||
depotArgs = builtins.map makeDepotArg [ depot ] ++ additionalDepots;
|
depotArgs = builtins.map makeDepotArg [ depot ] ++ additionalDepots;
|
||||||
in stdenvNoCC.mkDerivation {
|
in stdenv.mkDerivation {
|
||||||
name = "steam-depot-${appId}" + (lib.optionalString (name != null) "-${name}");
|
name = "steam-depot-${appId}" + (lib.optionalString (name != null) "-${name}");
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,98 @@
|
||||||
|
# This file is adapted from <https://git.lix.systems/lix-project/nixos-module>
|
||||||
|
# and distributed under the terms of the MIT license found at
|
||||||
|
# <https://git.lix.systems/lix-project/nixos-module/src/branch/main/LICENSE>
|
||||||
|
final: prev:
|
||||||
|
let
|
||||||
|
# These packages should receive CppNix since they may link to it or otherwise
|
||||||
|
# cause problems (or even just silly mass-rebuilds) if we give them Lix
|
||||||
|
overridelist_upstream = [
|
||||||
|
"attic-client"
|
||||||
|
"devenv"
|
||||||
|
"nix-du"
|
||||||
|
"nix-init"
|
||||||
|
"nix-prefetch-git"
|
||||||
|
"nixd"
|
||||||
|
"nixos-option"
|
||||||
|
"nixt"
|
||||||
|
"nurl"
|
||||||
|
"prefetch-yarn-deps" # force these onto upstream so we are not regularly rebuilding electron
|
||||||
|
];
|
||||||
|
|
||||||
|
inherit (prev) lib;
|
||||||
|
|
||||||
|
csi = builtins.fromJSON ''"\u001b"'';
|
||||||
|
orange = "${csi}[35;1m";
|
||||||
|
normal = "${csi}[0m";
|
||||||
|
warning = ''
|
||||||
|
${orange}warning${normal}: You have the lix overlay included into a nixpkgs import twice,
|
||||||
|
perhaps due to the NixOS module being included twice, or because of using
|
||||||
|
pkgs.nixos and also including it in imports, or perhaps some unknown
|
||||||
|
machinations of a complicated flake library.
|
||||||
|
This is completely harmless since we have no-op'd the second one if you are
|
||||||
|
seeing this message, but it would be a small style improvement to fix
|
||||||
|
it :)
|
||||||
|
P.S. If you had some hack to fix nixos-option build failures in your
|
||||||
|
configuration, that was caused by including an older version of the lix
|
||||||
|
overlay twice, which is now mitigated if you see this message, so you can
|
||||||
|
delete that.
|
||||||
|
P.P.S. This Lix has super catgirl powers.
|
||||||
|
'';
|
||||||
|
|
||||||
|
maybeWarnDuplicate = x: if final.lix-overlay-present > 1 then builtins.trace warning x else x;
|
||||||
|
|
||||||
|
# TODO: latest
|
||||||
|
lixPackageToUse = prev.lixPackageSets.lix_2_93.lix;
|
||||||
|
|
||||||
|
# It is not enough to *just* throw whatever the default nix version is at
|
||||||
|
# anything in the "don't give lix" list, we have to *also* ensure that we
|
||||||
|
# give whatever upstream version as specified in the callPackage invocation.
|
||||||
|
#
|
||||||
|
# Unfortunately I don't think there is any actual way to directly query that,
|
||||||
|
# so we instead do something extremely evil and guess which version it
|
||||||
|
# probably was. This code is not generalizable to arbitrary derivations, so
|
||||||
|
# it will hopefully not make us cry, at least.
|
||||||
|
useCppNixOverlay =
|
||||||
|
lib.genAttrs overridelist_upstream (
|
||||||
|
name:
|
||||||
|
if (lib.functionArgs prev.${name}.override ? "nix") then
|
||||||
|
let
|
||||||
|
# Get the two common inputs of a derivation/package.
|
||||||
|
inputs = prev.${name}.buildInputs ++ prev.${name}.nativeBuildInputs;
|
||||||
|
nixDependency = lib.findFirst
|
||||||
|
(drv: (drv.pname or "") == "nix")
|
||||||
|
final.nixVersions.stable_upstream # default to stable nix if nix is not an input
|
||||||
|
inputs;
|
||||||
|
nixMajor = lib.versions.major (nixDependency.version or "");
|
||||||
|
nixMinor = lib.versions.minor (nixDependency.version or "");
|
||||||
|
nixAttr = "nix_${nixMajor}_${nixMinor}";
|
||||||
|
finalNix = final.nixVersions.${nixAttr};
|
||||||
|
in
|
||||||
|
prev.${name}.override {
|
||||||
|
nix = finalNix;
|
||||||
|
}
|
||||||
|
else prev.${name}
|
||||||
|
);
|
||||||
|
|
||||||
|
overlay = useCppNixOverlay // {
|
||||||
|
lix-overlay-present = 1;
|
||||||
|
|
||||||
|
lix = maybeWarnDuplicate lixPackageToUse;
|
||||||
|
|
||||||
|
nixForLinking = final.nixVersions.stable_upstream; # make sure that nixVersions.stable isn't messed with.
|
||||||
|
|
||||||
|
nixVersions = prev.nixVersions // {
|
||||||
|
stable = final.lix;
|
||||||
|
stable_upstream = prev.nixVersions.stable;
|
||||||
|
};
|
||||||
|
|
||||||
|
nix-eval-jobs =
|
||||||
|
# TODO: latest
|
||||||
|
prev.lixPackageSets.lix_2_93.nix-eval-jobs;
|
||||||
|
|
||||||
|
nix-doc = prev.nix-doc.override { withPlugin = false; };
|
||||||
|
};
|
||||||
|
in
|
||||||
|
# Make the overlay idempotent, since flakes passing nixos modules around by
|
||||||
|
# value and many other things make it way too easy to include the overlay
|
||||||
|
# twice
|
||||||
|
if (prev ? lix-overlay-present) then { lix-overlay-present = 2; } else overlay
|
||||||
30
overlay.nix
30
overlay.nix
|
|
@ -36,7 +36,7 @@ final: prev: {
|
||||||
patdiff-bin = ofinal.callPackage ./pkgs/ocaml/patdiff-bin {};
|
patdiff-bin = ofinal.callPackage ./pkgs/ocaml/patdiff-bin {};
|
||||||
});
|
});
|
||||||
|
|
||||||
python312 = prev.python312.override {
|
python313 = prev.python313.override {
|
||||||
packageOverrides = pfinal: pprev: {
|
packageOverrides = pfinal: pprev: {
|
||||||
feedvalidator = pfinal.callPackage ./pkgs/python/feedvalidator {};
|
feedvalidator = pfinal.callPackage ./pkgs/python/feedvalidator {};
|
||||||
megacom = pfinal.callPackage ./pkgs/python/megacom {};
|
megacom = pfinal.callPackage ./pkgs/python/megacom {};
|
||||||
|
|
@ -44,13 +44,18 @@ final: prev: {
|
||||||
};
|
};
|
||||||
|
|
||||||
# add to top level because it has a binary
|
# add to top level because it has a binary
|
||||||
feedvalidator = final.python312Packages.feedvalidator;
|
feedvalidator = final.python313Packages.feedvalidator;
|
||||||
megacom = final.python312Packages.megacom;
|
megacom = final.python313Packages.megacom;
|
||||||
|
|
||||||
python311 = prev.python311.override {
|
python311 = prev.python311.override {
|
||||||
packageOverrides = pfinal: pprev: {
|
packageOverrides = pfinal: pprev: {
|
||||||
|
# TODO: untested and weirdly requires manual build of qtwebengine
|
||||||
libbs = pfinal.callPackage ./pkgs/reverse-engineering/binsync/libbs.nix {};
|
libbs = pfinal.callPackage ./pkgs/reverse-engineering/binsync/libbs.nix {};
|
||||||
binsync = pfinal.callPackage ./pkgs/reverse-engineering/binsync/binsync.nix {};
|
binsync = pfinal.callPackage ./pkgs/reverse-engineering/binsync/binsync.nix {};
|
||||||
|
|
||||||
|
pyside6 = pprev.pyside6.overrideAttrs (afinal: aprev: {
|
||||||
|
buildInputs = final.lib.filter (x: x.pname != "qtwebengine" && x.pname != "qtwebview") aprev.buildInputs;
|
||||||
|
});
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -78,6 +83,12 @@ final: prev: {
|
||||||
|
|
||||||
texliveDragonPackages = {
|
texliveDragonPackages = {
|
||||||
moloch = prev.callPackage ./pkgs/tex/moloch {};
|
moloch = prev.callPackage ./pkgs/tex/moloch {};
|
||||||
|
|
||||||
|
scheme = final.texliveMedium.withPackages (ps: [
|
||||||
|
ps.fontawesome5
|
||||||
|
ps.standalone
|
||||||
|
final.texliveDragonPackages.moloch
|
||||||
|
]);
|
||||||
};
|
};
|
||||||
|
|
||||||
racket-minimal = final.callPackage ./pkgs/racket/racket/minimal.nix {};
|
racket-minimal = final.callPackage ./pkgs/racket/racket/minimal.nix {};
|
||||||
|
|
@ -96,4 +107,17 @@ final: prev: {
|
||||||
|
|
||||||
makeRacketEnv = self.callPackage ./pkgs/racket/make-racket-env.nix {};
|
makeRacketEnv = self.callPackage ./pkgs/racket/make-racket-env.nix {};
|
||||||
} // (byName self));
|
} // (byName self));
|
||||||
|
|
||||||
|
strawberry = prev.strawberry.overrideAttrs (afinal: aprev: {
|
||||||
|
version = "1.2.16";
|
||||||
|
src = final.fetchFromGitHub {
|
||||||
|
owner = "jonaski";
|
||||||
|
repo = "strawberry";
|
||||||
|
rev = afinal.version;
|
||||||
|
hash = "sha256-4V/geww/M0FD3McBuz8MgkwdXA7j+d71SJn5Q4AZrvU=";
|
||||||
|
};
|
||||||
|
patches = [
|
||||||
|
./pkgs/strawberry/0001-make-the-minimum-scrobble-length-shorter.patch
|
||||||
|
];
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -52,10 +52,10 @@ in stdenvNoCC.mkDerivation rec {
|
||||||
chmod +x $out/bin/outer-wilds-text-adventure
|
chmod +x $out/bin/outer-wilds-text-adventure
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Outer Wilds: A Thrilling Graphical Text Adventure";
|
description = "Outer Wilds: A Thrilling Graphical Text Adventure";
|
||||||
homepage = "https://www.mobiusdigitalgames.com/outer-wilds-text-adventure.html";
|
homepage = "https://www.mobiusdigitalgames.com/outer-wilds-text-adventure.html";
|
||||||
license = licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,24 +7,24 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
appId = "1690800";
|
appId = "1690800";
|
||||||
buildId = "19876517";
|
buildId = "21237536";
|
||||||
steamworks_sdk = fetchFromSteam {
|
steamworks_sdk = fetchFromSteam {
|
||||||
name = "steamworks-sdk";
|
name = "steamworks-sdk";
|
||||||
inherit appId;
|
inherit appId;
|
||||||
depot = {
|
depot = {
|
||||||
depotId = "1006";
|
depotId = "1006";
|
||||||
manifestId = "5587033981095108078";
|
manifestId = "6403079453713498174";
|
||||||
};
|
};
|
||||||
hash = "sha256-CjrVpq5ztL6wTWIa63a/4xHM35DzgDR/O6qVf1YV5xw=";
|
hash = "sha256-q1A2ooLzKojf3kj5VCFSLngFv6522rXd5nApBQFDrHA=";
|
||||||
};
|
};
|
||||||
server_dist = fetchFromSteam {
|
server_dist = fetchFromSteam {
|
||||||
name = "satisfactory-dedicated-server";
|
name = "satisfactory-dedicated-server";
|
||||||
inherit appId;
|
inherit appId;
|
||||||
depot = {
|
depot = {
|
||||||
depotId = "1690802";
|
depotId = "1690802";
|
||||||
manifestId = "7620210706575413121";
|
manifestId = "6002578218905311874";
|
||||||
};
|
};
|
||||||
hash = "sha256-jQbtHSBFCDcdycrDjIJBY4DGV7EgITvwv3k3+htZ7io=";
|
hash = "sha256-OSS0tviycIOO9kvJzVHvnseYw0+gVLZOkLHyuXZSHvM=";
|
||||||
};
|
};
|
||||||
in stdenv.mkDerivation {
|
in stdenv.mkDerivation {
|
||||||
pname = "satisfactory-dedicated-server";
|
pname = "satisfactory-dedicated-server";
|
||||||
|
|
@ -69,11 +69,11 @@ in stdenv.mkDerivation {
|
||||||
$out/opt/Engine/Binaries/Linux/FactoryServer-Linux-Shipping
|
$out/opt/Engine/Binaries/Linux/FactoryServer-Linux-Shipping
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Satisfactory Dedicated Server";
|
description = "Satisfactory Dedicated Server";
|
||||||
homepage = "https://www.satisfactorygame.com/";
|
homepage = "https://www.satisfactorygame.com/";
|
||||||
license = licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
sourceProvenance = [ sourceTypes.binaryNativeCode ];
|
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,8 @@ let feedvalidator_src = stdenvNoCC.mkDerivation {
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "w3c";
|
owner = "w3c";
|
||||||
repo = "feedvalidator";
|
repo = "feedvalidator";
|
||||||
rev = "1bbf6d9c68ef074b824c452fbc5d1f7817e6adae";
|
rev = "96fbf7e918293da0e3dfd06b2dece14da65ba2aa";
|
||||||
sha256 = "sha256-sHc6cgjSNcd0BcYYeybGPayQNV8SK9GjUglWg9iOQko=";
|
sha256 = "sha256-aNRtW+YnLKPdVURKxDd/QR+/Vfp93TmGnm8hf8Q5Gz0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,15 @@
|
||||||
fetchPypi,
|
fetchPypi,
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
|
|
||||||
|
setuptools,
|
||||||
pyserial,
|
pyserial,
|
||||||
pyserial-asyncio,
|
pyserial-asyncio,
|
||||||
}: buildPythonPackage rec {
|
}: buildPythonPackage rec {
|
||||||
pname = "megacom";
|
pname = "megacom";
|
||||||
version = "0.1.2";
|
version = "0.1.2";
|
||||||
|
pyproject = true;
|
||||||
|
build-system = [ setuptools ];
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-q2sU37uTX98RJDF0WFt7vzqtfLk3u25COCdKt34/Z70=";
|
sha256 = "sha256-q2sU37uTX98RJDF0WFt7vzqtfLk3u25COCdKt34/Z70=";
|
||||||
|
|
|
||||||
|
|
@ -1,51 +1,45 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
fetchFromGitHub,
|
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
|
fetchFromGitHub,
|
||||||
setuptools,
|
|
||||||
|
|
||||||
libbs,
|
|
||||||
|
|
||||||
filelock,
|
filelock,
|
||||||
gitpython,
|
gitpython,
|
||||||
|
libbs,
|
||||||
prompt-toolkit,
|
prompt-toolkit,
|
||||||
pycparser,
|
pycparser,
|
||||||
|
pyside6,
|
||||||
|
pytest-qt,
|
||||||
|
pytestCheckHook,
|
||||||
|
setuptools,
|
||||||
sortedcontainers,
|
sortedcontainers,
|
||||||
toml,
|
toml,
|
||||||
tqdm,
|
tqdm,
|
||||||
ply,
|
|
||||||
wordfreq,
|
wordfreq,
|
||||||
|
}:
|
||||||
|
|
||||||
pyside6,
|
buildPythonPackage rec {
|
||||||
|
|
||||||
pytestCheckHook,
|
|
||||||
pytest-qt,
|
|
||||||
}: buildPythonPackage rec {
|
|
||||||
pname = "binsync";
|
pname = "binsync";
|
||||||
version = "5.7.10+dev";
|
version = "5.8.0+dev";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "binsync";
|
owner = "binsync";
|
||||||
repo = "binsync";
|
repo = "binsync";
|
||||||
rev = "e67da5ab9cddc2743f7462c9543ba7100e25eeb5";
|
rev = "9fdf3b28e78abd6a9665e52b713d8f480e78a78a";
|
||||||
hash = "sha256-QDOfbo2yjfjLsLILMhl/ckKwXDusXfE8+YmFpW5djN0=";
|
hash = "sha256-IXr3IzQfj50J7b+OqIl5IhWS1KKXWiNd7vEJX+TOxsA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = [ setuptools ];
|
build-system = [ setuptools ];
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
libbs
|
|
||||||
|
|
||||||
filelock
|
filelock
|
||||||
gitpython
|
gitpython
|
||||||
|
libbs
|
||||||
prompt-toolkit
|
prompt-toolkit
|
||||||
pycparser
|
pycparser
|
||||||
sortedcontainers
|
sortedcontainers
|
||||||
toml
|
toml
|
||||||
tqdm
|
tqdm
|
||||||
ply
|
|
||||||
wordfreq
|
wordfreq
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
@ -60,8 +54,10 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
disabledTestPaths = [
|
disabledTestPaths = [
|
||||||
# Test tries to import angrmanagement
|
# Test tries to import angr-management
|
||||||
"tests/test_angr_gui.py"
|
"tests/test_angr_gui.py"
|
||||||
|
# needs flask
|
||||||
|
"tests/test_auxiliary_server.py"
|
||||||
];
|
];
|
||||||
|
|
||||||
pythonImportsCheck = [ "binsync" ];
|
pythonImportsCheck = [ "binsync" ];
|
||||||
|
|
@ -71,5 +67,6 @@
|
||||||
homepage = "https://github.com/binsync/binsync";
|
homepage = "https://github.com/binsync/binsync";
|
||||||
changelog = "https://github.com/binsync/binsync/releases/tag/${src.tag}";
|
changelog = "https://github.com/binsync/binsync/releases/tag/${src.tag}";
|
||||||
license = lib.licenses.bsd2;
|
license = lib.licenses.bsd2;
|
||||||
|
maintainers = with lib.maintainers; [ scoder12 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,35 +1,43 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
fetchFromGitHub,
|
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
|
fetchFromGitHub,
|
||||||
setuptools,
|
|
||||||
|
|
||||||
filelock,
|
filelock,
|
||||||
ghidra-bridge,
|
ghidra-bridge,
|
||||||
jfx-bridge,
|
jfx-bridge,
|
||||||
networkx,
|
networkx,
|
||||||
platformdirs,
|
platformdirs,
|
||||||
|
ply,
|
||||||
prompt-toolkit,
|
prompt-toolkit,
|
||||||
psutil,
|
psutil,
|
||||||
pycparser,
|
pycparser,
|
||||||
pyhidra,
|
pyhidra,
|
||||||
|
pytestCheckHook,
|
||||||
|
setuptools,
|
||||||
toml,
|
toml,
|
||||||
tqdm,
|
tqdm,
|
||||||
ply,
|
|
||||||
|
|
||||||
pytestCheckHook,
|
|
||||||
writableTmpDirAsHomeHook,
|
writableTmpDirAsHomeHook,
|
||||||
}: buildPythonPackage rec {
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
# Binary files from https://github.com/binsync/bs-artifacts (only used for testing and only here)
|
||||||
|
binaries = fetchFromGitHub {
|
||||||
|
owner = "binsync";
|
||||||
|
repo = "bs-artifacts";
|
||||||
|
rev = "514c2d6ef1875435c9d137bb5d99b6fc74063817";
|
||||||
|
hash = "sha256-P7+BTJgdC9W8cC/7xQduFYllF+0ds1dSlm59/BFvZ2g=";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
buildPythonPackage rec {
|
||||||
pname = "libbs";
|
pname = "libbs";
|
||||||
version = "2.16.4+dev";
|
version = "2.16.5+dev";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "binsync";
|
owner = "binsync";
|
||||||
repo = "libbs";
|
repo = "libbs";
|
||||||
rev = "0ce5c351cc81c1a0120f763aeba584fdb9dc2820";
|
rev = "8955ad96ba94e2164c3daf5c0a942b256ec93126";
|
||||||
hash = "sha256-if27Tg5S0Esrw9xHi6nr+kDIw4OTz7yZ2256/4Kbkeo=";
|
hash = "sha256-mFNieYFZYskOpYdwr4Vpbs8lLct0nehsYTXzlvS/pas=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = [ setuptools ];
|
build-system = [ setuptools ];
|
||||||
|
|
@ -40,13 +48,13 @@
|
||||||
jfx-bridge
|
jfx-bridge
|
||||||
networkx
|
networkx
|
||||||
platformdirs
|
platformdirs
|
||||||
|
ply
|
||||||
prompt-toolkit
|
prompt-toolkit
|
||||||
psutil
|
psutil
|
||||||
pycparser
|
pycparser
|
||||||
pyhidra
|
pyhidra
|
||||||
toml
|
toml
|
||||||
tqdm
|
tqdm
|
||||||
ply
|
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
|
|
@ -54,6 +62,14 @@
|
||||||
writableTmpDirAsHomeHook
|
writableTmpDirAsHomeHook
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Place test binaries in place
|
||||||
|
preCheck = ''
|
||||||
|
export HOME=$TMPDIR
|
||||||
|
mkdir -p $HOME/bs-artifacts/binaries
|
||||||
|
cp -r ${binaries} $HOME/bs-artifacts/binaries
|
||||||
|
export TEST_BINARIES_DIR=$HOME/bs-artifacts/binaries
|
||||||
|
'';
|
||||||
|
|
||||||
pythonImportsCheck = [ "libbs" ];
|
pythonImportsCheck = [ "libbs" ];
|
||||||
|
|
||||||
disabledTests = [
|
disabledTests = [
|
||||||
|
|
@ -62,16 +78,11 @@
|
||||||
"TestHeadlessInterfaces"
|
"TestHeadlessInterfaces"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
disabledTestPaths = [
|
|
||||||
"tests/test_decompilers.py"
|
|
||||||
"tests/test_remote_ghidra.py"
|
|
||||||
];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Library for writing plugins in any decompiler: includes API lifting, common data formatting, and GUI abstraction";
|
description = "Library for writing plugins in any decompiler: includes API lifting, common data formatting, and GUI abstraction";
|
||||||
homepage = "https://github.com/binsync/libbs";
|
homepage = "https://github.com/binsync/libbs";
|
||||||
changelog = "https://github.com/binsync/libbs/releases/tag/${src.tag}";
|
changelog = "https://github.com/binsync/libbs/releases/tag/${src.tag}";
|
||||||
license = lib.licenses.bsd2;
|
license = lib.licenses.bsd2;
|
||||||
|
maintainers = with lib.maintainers; [ scoder12 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -253,7 +253,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
withExtensions = callPackage ./with-extensions.nix { ghidra = finalAttrs.finalPackage; };
|
withExtensions = callPackage ./with-extensions.nix { ghidra = finalAttrs.finalPackage; };
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
changelog = "https://htmlpreview.github.io/?https://github.com/NationalSecurityAgency/ghidra/blob/Ghidra_${finalAttrs.version}_build/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.html";
|
changelog = "https://htmlpreview.github.io/?https://github.com/NationalSecurityAgency/ghidra/blob/Ghidra_${finalAttrs.version}_build/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.html";
|
||||||
description = "Software reverse engineering (SRE) suite of tools";
|
description = "Software reverse engineering (SRE) suite of tools";
|
||||||
mainProgram = "ghidra";
|
mainProgram = "ghidra";
|
||||||
|
|
@ -264,12 +264,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
"x86_64-darwin"
|
"x86_64-darwin"
|
||||||
"aarch64-darwin"
|
"aarch64-darwin"
|
||||||
];
|
];
|
||||||
sourceProvenance = with sourceTypes; [
|
sourceProvenance = with lib.sourceTypes; [
|
||||||
fromSource
|
fromSource
|
||||||
binaryBytecode # deps
|
binaryBytecode # deps
|
||||||
];
|
];
|
||||||
license = licenses.asl20;
|
license = lib.licenses.asl20;
|
||||||
maintainers = with maintainers; [
|
maintainers = with lib.maintainers; [
|
||||||
roblabla
|
roblabla
|
||||||
vringar
|
vringar
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -26,10 +26,10 @@ buildGhidraScripts {
|
||||||
substituteInPlace YaraSearch.py --replace-fail '"yara "' '"${yara}/bin/yara "'
|
substituteInPlace YaraSearch.py --replace-fail '"yara "' '"${yara}/bin/yara "'
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Scripts for the Ghidra software reverse engineering suite";
|
description = "Scripts for the Ghidra software reverse engineering suite";
|
||||||
homepage = "https://github.com/ghidraninja/ghidra_scripts";
|
homepage = "https://github.com/ghidraninja/ghidra_scripts";
|
||||||
license = with licenses; [
|
license = with lib.licenses; [
|
||||||
gpl3Only
|
gpl3Only
|
||||||
gpl2Only
|
gpl2Only
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -61,10 +61,10 @@ buildGhidraExtension {
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Leverage the binutils disassembler capabilities for various processors";
|
description = "Leverage the binutils disassembler capabilities for various processors";
|
||||||
homepage = "https://ghidra-sre.org/";
|
homepage = "https://ghidra-sre.org/";
|
||||||
downloadPage = "https://github.com/NationalSecurityAgency/ghidra/tree/master/GPL/GnuDisassembler";
|
downloadPage = "https://github.com/NationalSecurityAgency/ghidra/tree/master/GPL/GnuDisassembler";
|
||||||
license = licenses.gpl2Only;
|
license = lib.licenses.gpl2Only;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -23,11 +23,11 @@ buildGhidraExtension {
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
inherit (ghidra.meta) homepage license;
|
inherit (ghidra.meta) homepage license;
|
||||||
description = "Finds functions using ML";
|
description = "Finds functions using ML";
|
||||||
downloadPage = "https://github.com/NationalSecurityAgency/ghidra/tree/master/Ghidra/Extensions/MachineLearning";
|
downloadPage = "https://github.com/NationalSecurityAgency/ghidra/tree/master/Ghidra/Extensions/MachineLearning";
|
||||||
sourceProvenance = with sourceTypes; [
|
sourceProvenance = with lib.sourceTypes; [
|
||||||
fromSource
|
fromSource
|
||||||
binaryBytecode # deps
|
binaryBytecode # deps
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -34,9 +34,9 @@ buildGhidraExtension {
|
||||||
rm dist/ghidra*
|
rm dist/ghidra*
|
||||||
mv dist/safe.zip dist/$correct_version
|
mv dist/safe.zip dist/$correct_version
|
||||||
'';
|
'';
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Reverse-Engineering Tools SYNChronization. Allows syncing between a debugging session and Ghidra";
|
description = "Reverse-Engineering Tools SYNChronization. Allows syncing between a debugging session and Ghidra";
|
||||||
homepage = "https://github.com/bootleg/ret-sync";
|
homepage = "https://github.com/bootleg/ret-sync";
|
||||||
license = licenses.gpl3Only;
|
license = lib.licenses.gpl3Only;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ buildGhidraExtension {
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
inherit (ghidra.meta) homepage license;
|
inherit (ghidra.meta) homepage license;
|
||||||
description = "Sleigh language development tools including external disassembler capabilities";
|
description = "Sleigh language development tools including external disassembler capabilities";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
|
@ -33,7 +33,7 @@ buildGhidraExtension {
|
||||||
The GnuDisassembler extension may be also be required as a disassembly provider.
|
The GnuDisassembler extension may be also be required as a disassembly provider.
|
||||||
'';
|
'';
|
||||||
downloadPage = "https://github.com/NationalSecurityAgency/ghidra/tree/master/Ghidra/Extensions/SleighDevTools";
|
downloadPage = "https://github.com/NationalSecurityAgency/ghidra/tree/master/Ghidra/Extensions/SleighDevTools";
|
||||||
sourceProvenance = with sourceTypes; [
|
sourceProvenance = with lib.sourceTypes; [
|
||||||
fromSource
|
fromSource
|
||||||
binaryBytecode # deps
|
binaryBytecode # deps
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -173,12 +173,12 @@ in stdenv.mkDerivation (self: {
|
||||||
inherit pythonEnv;
|
inherit pythonEnv;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "A powerful disassembler, decompiler and a versatile debugger.";
|
description = "A powerful disassembler, decompiler and a versatile debugger.";
|
||||||
homepage = "https://hex-rays.com/ida-pro";
|
homepage = "https://hex-rays.com/ida-pro";
|
||||||
mainProgram = "ida";
|
mainProgram = "ida";
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||||
license = lib.licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,493 @@
|
||||||
|
From 208a9c9b5d771c92df79cf32aabb5a1315dec56b Mon Sep 17 00:00:00 2001
|
||||||
|
From: xenia <xenia@awoo.systems>
|
||||||
|
Date: Wed, 24 Dec 2025 16:25:47 -0500
|
||||||
|
Subject: [PATCH] make the minimum scrobble length shorter
|
||||||
|
|
||||||
|
---
|
||||||
|
src/playlist/playlist.cpp | 2 +-
|
||||||
|
src/settings/scrobblersettingspage.ui | 2 +-
|
||||||
|
src/translations/strawberry_ca_ES.ts | 4 ++--
|
||||||
|
src/translations/strawberry_cs_CZ.ts | 4 ++--
|
||||||
|
src/translations/strawberry_de_DE.ts | 2 +-
|
||||||
|
src/translations/strawberry_el_CY.ts | 4 ++--
|
||||||
|
src/translations/strawberry_el_GR.ts | 4 ++--
|
||||||
|
src/translations/strawberry_en_US.ts | 2 +-
|
||||||
|
src/translations/strawberry_es_AR.ts | 2 +-
|
||||||
|
src/translations/strawberry_es_ES.ts | 2 +-
|
||||||
|
src/translations/strawberry_es_MX.ts | 2 +-
|
||||||
|
src/translations/strawberry_et_EE.ts | 2 +-
|
||||||
|
src/translations/strawberry_fi_FI.ts | 4 ++--
|
||||||
|
src/translations/strawberry_fr_BE.ts | 2 +-
|
||||||
|
src/translations/strawberry_fr_FR.ts | 2 +-
|
||||||
|
src/translations/strawberry_hu_HU.ts | 2 +-
|
||||||
|
src/translations/strawberry_id_ID.ts | 2 +-
|
||||||
|
src/translations/strawberry_is_IS.ts | 2 +-
|
||||||
|
src/translations/strawberry_it_IT.ts | 2 +-
|
||||||
|
src/translations/strawberry_ja_JP.ts | 2 +-
|
||||||
|
src/translations/strawberry_ko_KR.ts | 2 +-
|
||||||
|
src/translations/strawberry_nb_NO.ts | 2 +-
|
||||||
|
src/translations/strawberry_nl_NL.ts | 4 ++--
|
||||||
|
src/translations/strawberry_pl_PL.ts | 2 +-
|
||||||
|
src/translations/strawberry_pt_BR.ts | 4 ++--
|
||||||
|
src/translations/strawberry_ru_RU.ts | 2 +-
|
||||||
|
src/translations/strawberry_sv_SE.ts | 2 +-
|
||||||
|
src/translations/strawberry_tr_CY.ts | 4 ++--
|
||||||
|
src/translations/strawberry_tr_TR.ts | 4 ++--
|
||||||
|
src/translations/strawberry_uk_UA.ts | 2 +-
|
||||||
|
src/translations/strawberry_vi_VN.ts | 2 +-
|
||||||
|
src/translations/strawberry_zh_CN.ts | 2 +-
|
||||||
|
src/translations/strawberry_zh_TW.ts | 4 ++--
|
||||||
|
33 files changed, 43 insertions(+), 43 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/playlist/playlist.cpp b/src/playlist/playlist.cpp
|
||||||
|
index 5b95d2bd..c823f7df 100644
|
||||||
|
--- a/src/playlist/playlist.cpp
|
||||||
|
+++ b/src/playlist/playlist.cpp
|
||||||
|
@@ -117,7 +117,7 @@ constexpr QRgb kInvalidSongColor = qRgb(0xC0, 0xC0, 0xC0);
|
||||||
|
constexpr int kDynamicHistoryPriority = 100;
|
||||||
|
constexpr QRgb kDynamicHistoryColor = qRgb(0x80, 0x80, 0x80);
|
||||||
|
|
||||||
|
-constexpr qint64 kMinScrobblePointNsecs = 31LL * kNsecPerSec;
|
||||||
|
+constexpr qint64 kMinScrobblePointNsecs = 16LL * kNsecPerSec;
|
||||||
|
constexpr qint64 kMaxScrobblePointNsecs = 240LL * kNsecPerSec;
|
||||||
|
|
||||||
|
constexpr int kMaxPlayedIndexes = 100;
|
||||||
|
diff --git a/src/settings/scrobblersettingspage.ui b/src/settings/scrobblersettingspage.ui
|
||||||
|
index 0b0606c4..3848c743 100644
|
||||||
|
--- a/src/settings/scrobblersettingspage.ui
|
||||||
|
+++ b/src/settings/scrobblersettingspage.ui
|
||||||
|
@@ -30,7 +30,7 @@
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_scrobble_info">
|
||||||
|
<property name="text">
|
||||||
|
- <string>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</string>
|
||||||
|
+ <string>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</string>
|
||||||
|
</property>
|
||||||
|
<property name="wordWrap">
|
||||||
|
<bool>true</bool>
|
||||||
|
diff --git a/src/translations/strawberry_ca_ES.ts b/src/translations/strawberry_ca_ES.ts
|
||||||
|
index 08fa29d0..672687e1 100644
|
||||||
|
--- a/src/translations/strawberry_ca_ES.ts
|
||||||
|
+++ b/src/translations/strawberry_ca_ES.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Esteu segur que voleu continuar?</translation>
|
||||||
|
<translation type="unfinished">Enable</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_cs_CZ.ts b/src/translations/strawberry_cs_CZ.ts
|
||||||
|
index 3a31995c..fb88f8ca 100644
|
||||||
|
--- a/src/translations/strawberry_cs_CZ.ts
|
||||||
|
+++ b/src/translations/strawberry_cs_CZ.ts
|
||||||
|
@@ -5712,8 +5712,8 @@ Opravdu chcete pokračovat?</translation>
|
||||||
|
<translation>Povolit</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_de_DE.ts b/src/translations/strawberry_de_DE.ts
|
||||||
|
index 3254eafa..221cd984 100644
|
||||||
|
--- a/src/translations/strawberry_de_DE.ts
|
||||||
|
+++ b/src/translations/strawberry_de_DE.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Möchten Sie wirklich fortfahren?</translation>
|
||||||
|
<translation>Aktivieren</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Lieder werden gescrobbelt, wenn sie gültige Metadaten haben und länger als 30 Sekunden sind, mindestens die Hälfte ihrer Dauer oder 4 Minuten (je nachdem, was früher eintritt) abgespielt wurden.</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_el_CY.ts b/src/translations/strawberry_el_CY.ts
|
||||||
|
index 436137b1..7f6130bb 100644
|
||||||
|
--- a/src/translations/strawberry_el_CY.ts
|
||||||
|
+++ b/src/translations/strawberry_el_CY.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Are you sure you want to continue?</translation>
|
||||||
|
<translation type="unfinished">Enable</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_el_GR.ts b/src/translations/strawberry_el_GR.ts
|
||||||
|
index c825f932..a966220c 100644
|
||||||
|
--- a/src/translations/strawberry_el_GR.ts
|
||||||
|
+++ b/src/translations/strawberry_el_GR.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Ενεργοποίηση</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_en_US.ts b/src/translations/strawberry_en_US.ts
|
||||||
|
index 8e08cc97..a1c387e8 100644
|
||||||
|
--- a/src/translations/strawberry_en_US.ts
|
||||||
|
+++ b/src/translations/strawberry_en_US.ts
|
||||||
|
@@ -5698,7 +5698,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_es_AR.ts b/src/translations/strawberry_es_AR.ts
|
||||||
|
index 3ee6ea55..5f4dc1f5 100644
|
||||||
|
--- a/src/translations/strawberry_es_AR.ts
|
||||||
|
+++ b/src/translations/strawberry_es_AR.ts
|
||||||
|
@@ -5701,7 +5701,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Activar</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>La reproducción de una canción es registrada solo si dispone de metadatos válidos, dura más de 30 segundos y se ha reproducido al menos durante la mitad de su duración o 4 minutos (lo que ocurra primero).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_es_ES.ts b/src/translations/strawberry_es_ES.ts
|
||||||
|
index 66e7881a..e766f973 100644
|
||||||
|
--- a/src/translations/strawberry_es_ES.ts
|
||||||
|
+++ b/src/translations/strawberry_es_ES.ts
|
||||||
|
@@ -5701,7 +5701,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Activar</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>La reproducción de un tema se registra solo si dispone de metadatos válidos, dura más de 30 segundos y se ha reproducido al menos durante la mitad de su duración o 4 minutos (lo que ocurra primero).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_es_MX.ts b/src/translations/strawberry_es_MX.ts
|
||||||
|
index 15128cb0..0a670041 100644
|
||||||
|
--- a/src/translations/strawberry_es_MX.ts
|
||||||
|
+++ b/src/translations/strawberry_es_MX.ts
|
||||||
|
@@ -5701,7 +5701,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Activar</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>La reproducción de una canción es registrada solo si dispone de metadatos válidos, dura más de 30 segundos y se ha reproducido al menos durante la mitad de su duración o 4 minutos (lo que ocurra primero).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_et_EE.ts b/src/translations/strawberry_et_EE.ts
|
||||||
|
index db45d2b5..29709722 100644
|
||||||
|
--- a/src/translations/strawberry_et_EE.ts
|
||||||
|
+++ b/src/translations/strawberry_et_EE.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Kas soovid jätkata?</translation>
|
||||||
|
<translation>Luba</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Lood kraasitakse, kui neil on kehtivad metaandmed ja need on pikemad kui 30 sekundit, neid on esitatud vähemalt pool kestusest või 4 minutit (olenevalt sellest, kumb saabub varem).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_fi_FI.ts b/src/translations/strawberry_fi_FI.ts
|
||||||
|
index d9480396..74127dc2 100644
|
||||||
|
--- a/src/translations/strawberry_fi_FI.ts
|
||||||
|
+++ b/src/translations/strawberry_fi_FI.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Haluatko varmasti jatkaa?</translation>
|
||||||
|
<translation>Ota käyttöön</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_fr_BE.ts b/src/translations/strawberry_fr_BE.ts
|
||||||
|
index 2e4db5af..9ddfb22b 100644
|
||||||
|
--- a/src/translations/strawberry_fr_BE.ts
|
||||||
|
+++ b/src/translations/strawberry_fr_BE.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Activer</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Les musiques sont scrobblées si leurs métadonnées sont valides et n'ont pas plus de 30 secondes, ont été jouées pour un minimum de leur moitiés de leur longueur ou plus de 4 minutes (la première des conditions qui est vérifiée).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_fr_FR.ts b/src/translations/strawberry_fr_FR.ts
|
||||||
|
index efc76390..d8342595 100644
|
||||||
|
--- a/src/translations/strawberry_fr_FR.ts
|
||||||
|
+++ b/src/translations/strawberry_fr_FR.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Activer</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Les musiques sont scrobblées si leurs métadonnées sont valides et n'ont pas plus de 30 secondes, ont été jouées pour un minimum de leur moitiés de leur longueur ou plus de 4 minutes (la première des conditions qui est vérifiée).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_hu_HU.ts b/src/translations/strawberry_hu_HU.ts
|
||||||
|
index 25225a06..f2050f6d 100644
|
||||||
|
--- a/src/translations/strawberry_hu_HU.ts
|
||||||
|
+++ b/src/translations/strawberry_hu_HU.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Biztos, hogy folytatja?</translation>
|
||||||
|
<translation>Engedélyezés</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>A számok akkor lesznek scrobble-ozva, ha érvényes metaadataik vannak, 30
|
||||||
|
másodpercnél hosszabbak, illetve legalább a felükig vagy 4 percig vannak lejátszva (amelyik korábban teljesül).</translation>
|
||||||
|
</message>
|
||||||
|
diff --git a/src/translations/strawberry_id_ID.ts b/src/translations/strawberry_id_ID.ts
|
||||||
|
index 02371af3..1a82f28a 100644
|
||||||
|
--- a/src/translations/strawberry_id_ID.ts
|
||||||
|
+++ b/src/translations/strawberry_id_ID.ts
|
||||||
|
@@ -5697,7 +5697,7 @@ Apakah Anda yakin ingin melanjutkan?</translation>
|
||||||
|
<translation>Fungsikan</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Lagu akan di-scrobble jika memiliki metadata yang benar dan lebih panjang dari 30 detik, sudah berputar setidaknya setengah dari durasinya atau 4 menit (yang mana terdahulu terjadi).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_is_IS.ts b/src/translations/strawberry_is_IS.ts
|
||||||
|
index 0223dac1..f7ce4bd6 100644
|
||||||
|
--- a/src/translations/strawberry_is_IS.ts
|
||||||
|
+++ b/src/translations/strawberry_is_IS.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Ertu viss um að þú viljir halda áfram?</translation>
|
||||||
|
<translation>Virkja</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Skráðar eru hlustunarvenjur laga (scrobbling) ef þau eru með gild lýsigögn og eru lengri en 30 sekúndur, hafa verið spiluð að minnsta kosti til hálfs eða í 4 mínútur (hvort sem fyrr gerist).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_it_IT.ts b/src/translations/strawberry_it_IT.ts
|
||||||
|
index 57a0d812..683a388c 100644
|
||||||
|
--- a/src/translations/strawberry_it_IT.ts
|
||||||
|
+++ b/src/translations/strawberry_it_IT.ts
|
||||||
|
@@ -5710,7 +5710,7 @@ Non possiamo aiutarti a procurarteli.</translation>
|
||||||
|
<translation>Abilita</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>I brani vengono inviate per lo scrobble se hanno dei metadata validi, durano più di 30 secondi e sono state riprodotti per almeno la metà della loro lunghezza totale o per 4 minuti (qualsiasi dei quali avvenga prima)</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_ja_JP.ts b/src/translations/strawberry_ja_JP.ts
|
||||||
|
index 8573ff85..f307e194 100644
|
||||||
|
--- a/src/translations/strawberry_ja_JP.ts
|
||||||
|
+++ b/src/translations/strawberry_ja_JP.ts
|
||||||
|
@@ -5697,7 +5697,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>有効</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>有効なメタデータで30秒以上ある曲で、再生時間が少なくとも半分または4分間(どちらか早い方)になると、曲は Scrobble されます。</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_ko_KR.ts b/src/translations/strawberry_ko_KR.ts
|
||||||
|
index 1dae09d4..b83c151a 100644
|
||||||
|
--- a/src/translations/strawberry_ko_KR.ts
|
||||||
|
+++ b/src/translations/strawberry_ko_KR.ts
|
||||||
|
@@ -5697,7 +5697,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>활성화</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>곡에 올바른 메타데이터가 있고, 재생 시간이 30초보다 길고, 재생 시간의 절반 이상 재생(최대 4분)되었을 때 스크로블 기록에 추가됩니다.</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_nb_NO.ts b/src/translations/strawberry_nb_NO.ts
|
||||||
|
index f73e8b43..dcb93fb6 100644
|
||||||
|
--- a/src/translations/strawberry_nb_NO.ts
|
||||||
|
+++ b/src/translations/strawberry_nb_NO.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Er du sikker?</translation>
|
||||||
|
<translation>Aktiver</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Sanger blir scrobblet når de har gyldig metadata, er lengre enn 30 seconds, og har blitt spilt for minst halve tiden, eller 30 sekunder (det som skjer tidligst).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_nl_NL.ts b/src/translations/strawberry_nl_NL.ts
|
||||||
|
index e24a97ee..df12582e 100644
|
||||||
|
--- a/src/translations/strawberry_nl_NL.ts
|
||||||
|
+++ b/src/translations/strawberry_nl_NL.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Weet je zeker dat je verder wilt gaan?</translation>
|
||||||
|
<translation>Ingeschakeld</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_pl_PL.ts b/src/translations/strawberry_pl_PL.ts
|
||||||
|
index 06196ef2..acfb3949 100644
|
||||||
|
--- a/src/translations/strawberry_pl_PL.ts
|
||||||
|
+++ b/src/translations/strawberry_pl_PL.ts
|
||||||
|
@@ -5714,7 +5714,7 @@ Na pewno chcesz usunąć?</translation>
|
||||||
|
<translation>Włącz</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Utwory są scrobblowane, jeśli mają poprawne metadane, są dłuższe niż 30 sekund oraz były odtwarzane przez przynajmniej połowę swojej długości lub przez 4 minuty.</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_pt_BR.ts b/src/translations/strawberry_pt_BR.ts
|
||||||
|
index ca786c8a..742df605 100644
|
||||||
|
--- a/src/translations/strawberry_pt_BR.ts
|
||||||
|
+++ b/src/translations/strawberry_pt_BR.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Deseja continuar?</translation>
|
||||||
|
<translation>Habilitar</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_ru_RU.ts b/src/translations/strawberry_ru_RU.ts
|
||||||
|
index 7e0af15b..79c0e52e 100644
|
||||||
|
--- a/src/translations/strawberry_ru_RU.ts
|
||||||
|
+++ b/src/translations/strawberry_ru_RU.ts
|
||||||
|
@@ -5712,7 +5712,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Включить</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Песни скробблятся, если они содержат допустимые метаданные, длятся более 30 секунд и воспроизводятся не менее половины своей длительности или в течение 4 минут (в зависимости от того, что произойдёт раньше).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_sv_SE.ts b/src/translations/strawberry_sv_SE.ts
|
||||||
|
index d255a6aa..9fc5b773 100644
|
||||||
|
--- a/src/translations/strawberry_sv_SE.ts
|
||||||
|
+++ b/src/translations/strawberry_sv_SE.ts
|
||||||
|
@@ -5702,7 +5702,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Aktivera</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Låtar skrobblas om de har giltiga metadata och är längre än 30 sekunder, har spelats under minst halva dess varaktighet eller i 4 minuter (beroende på vilket som inträffar först).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_tr_CY.ts b/src/translations/strawberry_tr_CY.ts
|
||||||
|
index 18153843..d2213129 100644
|
||||||
|
--- a/src/translations/strawberry_tr_CY.ts
|
||||||
|
+++ b/src/translations/strawberry_tr_CY.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Are you sure you want to continue?</translation>
|
||||||
|
<translation type="unfinished">Enable</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_tr_TR.ts b/src/translations/strawberry_tr_TR.ts
|
||||||
|
index 2a9ffa1a..0a0ec467 100644
|
||||||
|
--- a/src/translations/strawberry_tr_TR.ts
|
||||||
|
+++ b/src/translations/strawberry_tr_TR.ts
|
||||||
|
@@ -5702,8 +5702,8 @@ Devam etmek istediğinizden emin misiniz?</translation>
|
||||||
|
<translation>Etkinleştir</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
diff --git a/src/translations/strawberry_uk_UA.ts b/src/translations/strawberry_uk_UA.ts
|
||||||
|
index 6f93fa33..a72361ff 100644
|
||||||
|
--- a/src/translations/strawberry_uk_UA.ts
|
||||||
|
+++ b/src/translations/strawberry_uk_UA.ts
|
||||||
|
@@ -5712,7 +5712,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>Увімкнути</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Композиції скроблюються, якщо вони мають дійсні метадані, мають тривалість більше 30 секунд та відтворюються щонайменше половину тривалості або 4 хвилини (залежно від того, що станеться раніше).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_vi_VN.ts b/src/translations/strawberry_vi_VN.ts
|
||||||
|
index 4a6c0602..d16c1116 100644
|
||||||
|
--- a/src/translations/strawberry_vi_VN.ts
|
||||||
|
+++ b/src/translations/strawberry_vi_VN.ts
|
||||||
|
@@ -5697,7 +5697,7 @@ Bạn có chắc chắn muốn tiếp tục không?</translation>
|
||||||
|
<translation>Bật</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>Các bài sẽ được scrobble nếu có siêu dữ liệu hợp lệ và dài hơn 30 giây, đã phát ít nhất một nửa thời lượng hoặc 4 phút (cái nào xảy ra trước).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_zh_CN.ts b/src/translations/strawberry_zh_CN.ts
|
||||||
|
index dac45b7e..16d97460 100644
|
||||||
|
--- a/src/translations/strawberry_zh_CN.ts
|
||||||
|
+++ b/src/translations/strawberry_zh_CN.ts
|
||||||
|
@@ -5697,7 +5697,7 @@ Are you sure you want to continue?</source>
|
||||||
|
<translation>启用</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
<translation>如果歌曲具有有效的元数据并且长度超过 30 秒,播放时间至少为其持续时间的一半或 4 分钟(以先发生者为准),则会被记录。</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
diff --git a/src/translations/strawberry_zh_TW.ts b/src/translations/strawberry_zh_TW.ts
|
||||||
|
index e585c084..673fe142 100644
|
||||||
|
--- a/src/translations/strawberry_zh_TW.ts
|
||||||
|
+++ b/src/translations/strawberry_zh_TW.ts
|
||||||
|
@@ -5698,8 +5698,8 @@ Are you sure you want to continue?</translation>
|
||||||
|
<translation type="unfinished">Enable</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
- <source>Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
- <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 30 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
+ <source>Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</source>
|
||||||
|
+ <translation type="unfinished">Songs are scrobbled if they have valid metadata and are longer than 15 seconds, have been playing for at least half its duration or for 4 minutes (whichever occurs earlier).</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Show scrobble button</source>
|
||||||
|
--
|
||||||
|
2.51.2
|
||||||
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
fetchFromGitea,
|
fetchFromGitea,
|
||||||
writeShellScript,
|
writeShellScript,
|
||||||
writableTmpDirAsHomeHook,
|
writableTmpDirAsHomeHook,
|
||||||
|
|
@ -91,4 +92,16 @@ in stdenvNoCC.mkDerivation rec {
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A LaTeX Beamer theme, forked from the metropolis theme (with dragon patches) ";
|
||||||
|
longDescription = ''
|
||||||
|
This package cannot be installed or used directly. Please use `texlive.withPackages (ps: [ ps.${lib.strings.escapeNixIdentifier pname} ])`.
|
||||||
|
'';
|
||||||
|
homepage = "https://git.lain.faith/haskal/moloch-dragon";
|
||||||
|
outputsToInstall = [ ];
|
||||||
|
priority = 10;
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
license = lib.licenses.cc-by-sa-40;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,13 +7,17 @@ rec {
|
||||||
dragnpkgs-unstable = getFlake "dragnpkgs-unstable";
|
dragnpkgs-unstable = getFlake "dragnpkgs-unstable";
|
||||||
pkgs = dragnpkgs.legacyPackages.${currentSystem};
|
pkgs = dragnpkgs.legacyPackages.${currentSystem};
|
||||||
pkgs-unstable = dragnpkgs-unstable.legacyPackages.${currentSystem};
|
pkgs-unstable = dragnpkgs-unstable.legacyPackages.${currentSystem};
|
||||||
inherit (pkgs) lib;
|
lib =
|
||||||
|
if prev ? lib then
|
||||||
f = getFlake "git+file:${builtins.getEnv "PWD"}";
|
prev.lib
|
||||||
fp =
|
|
||||||
if (builtins.hasAttr "legacyPackages" f) then
|
|
||||||
f.legacyPackages.${currentSystem}
|
|
||||||
else
|
else
|
||||||
f.packages.${currentSystem};
|
pkgs.lib;
|
||||||
fs = f.devShells.${currentSystem};
|
|
||||||
|
fp =
|
||||||
|
if final ? legacyPackages then
|
||||||
|
final.legacyPackages.${currentSystem}
|
||||||
|
else
|
||||||
|
final.packages.${currentSystem};
|
||||||
|
flp = final.legacyPackages.${currentSystem};
|
||||||
|
fs = final.devShells.${currentSystem};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,20 +3,19 @@
|
||||||
|
|
||||||
outputs = { self, dragnpkgs } @ inputs: dragnpkgs.lib.mkFlake {
|
outputs = { self, dragnpkgs } @ inputs: dragnpkgs.lib.mkFlake {
|
||||||
# Define a texlive environment to use
|
# Define a texlive environment to use
|
||||||
packages.texlive-custom = { texliveMedium, texliveDragonPackages }:
|
packages.texlive-custom = { texliveDragonPackages }:
|
||||||
texliveMedium.withPackages (ps: with ps; [
|
texliveDragonPackages.scheme.withPackages (ps: with ps; [
|
||||||
fontawesome5
|
# add more texlive dependencies here
|
||||||
texliveDragonPackages.moloch
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
# Package definition for building the PDF
|
# Package definition for building the PDF
|
||||||
packages.default = { system, stdenvNoCC }: stdenvNoCC.mkDerivation rec {
|
packages.default = { stdenv }: stdenv.mkDerivation rec {
|
||||||
pname = "my-beamer-presentation";
|
pname = "my-beamer-presentation";
|
||||||
|
|
||||||
name = "${pname}.pdf";
|
name = "${pname}.pdf";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
self.packages.${system}.texlive-custom
|
self.packages.${stdenv.hostPlatform.system}.texlive-custom
|
||||||
];
|
];
|
||||||
|
|
||||||
src = self;
|
src = self;
|
||||||
|
|
@ -31,16 +30,16 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# Runnable package (ie `nix run`) to start the presentation
|
# Runnable package (ie `nix run`) to start the presentation
|
||||||
apps.default = { lib, system, writeShellScript, pympress }: {
|
apps.default = { lib, stdenv, writeShellScript, pympress }: {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${writeShellScript "start-presentation" ''
|
program = "${writeShellScript "start-presentation" ''
|
||||||
exec ${lib.getExe pympress} ${self.packages.${system}.default}
|
exec ${lib.getExe pympress} ${self.packages.${stdenv.hostPlatform.system}.default}
|
||||||
''}";
|
''}";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Devshell definition to expose the texlive environment to eg nvim
|
# Devshell definition to expose the texlive environment to eg nvim
|
||||||
devShells.default = { mkShell, system }: mkShell {
|
devShells.default = { mkShell, stdenv }: mkShell {
|
||||||
packages = [ self.packages.${system}.texlive-custom ];
|
packages = [ self.packages.${stdenv.hostPlatform.system}.texlive-custom ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue