Merge master into haskell-updates
This commit is contained in:
@@ -195,7 +195,7 @@ maintenance work for `haskellPackages` is required. Besides that, it is not
|
||||
possible to get the dependencies of a legacy project from nixpkgs or to use a
|
||||
specific stack solver for compiling a project.
|
||||
|
||||
Even though we couldn‘t use them directly in nixpkgs, it would be desirable
|
||||
Even though we couldn’t use them directly in nixpkgs, it would be desirable
|
||||
to have tooling to generate working Nix package sets from build plans generated
|
||||
by `cabal-install` or a specific Stackage snapshot via import-from-derivation.
|
||||
Sadly we currently don’t have tooling for this. For this you might be
|
||||
@@ -538,7 +538,7 @@ via [`shellFor`](#haskell-shellFor).
|
||||
When using `cabal-install` for dependency resolution you need to be a bit
|
||||
careful to achieve build purity. `cabal-install` will find and use all
|
||||
dependencies installed from the packages `env` via Nix, but it will also
|
||||
consult Hackage to potentially download and compile dependencies if it can‘t
|
||||
consult Hackage to potentially download and compile dependencies if it can’t
|
||||
find a valid build plan locally. To prevent this you can either never run
|
||||
`cabal update`, remove the cabal database from your `~/.cabal` folder or run
|
||||
`cabal` with `--offline`. Note though, that for some usecases `cabal2nix` needs
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
<xi:include href="r.section.xml" />
|
||||
<xi:include href="ruby.section.xml" />
|
||||
<xi:include href="rust.section.xml" />
|
||||
<xi:include href="swift.section.xml" />
|
||||
<xi:include href="texlive.section.xml" />
|
||||
<xi:include href="titanium.section.xml" />
|
||||
<xi:include href="vim.section.xml" />
|
||||
|
||||
@@ -4,6 +4,48 @@
|
||||
|
||||
Nixpkgs provides a couple of facilities for working with this tool.
|
||||
|
||||
- A [setup hook](#setup-hook-pkg-config) bundled with in the `pkg-config` package, to bring a derivation's declared build inputs into the environment.
|
||||
- The [`validatePkgConfig` setup hook](https://nixos.org/manual/nixpkgs/stable/#validatepkgconfig), for packages that provide pkg-config modules.
|
||||
- The `defaultPkgConfigPackages` package set: a set of aliases, named after the modules they provide. This is meant to be used by language-to-nix integrations. Hand-written packages should use the normal Nixpkgs attribute name instead.
|
||||
## Writing packages providing pkg-config modules
|
||||
|
||||
Packages should set `meta.pkgConfigProvides` with the list of package config modules they provide.
|
||||
They should also use `testers.testMetaPkgConfig` to check that the final built package matches that list.
|
||||
Additionally, the [`validatePkgConfig` setup hook](https://nixos.org/manual/nixpkgs/stable/#validatepkgconfig), will do extra checks on to-be-installed pkg-config modules.
|
||||
|
||||
A good example of all these things is zlib:
|
||||
|
||||
```
|
||||
{ pkg-config, testers, ... }:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
...
|
||||
|
||||
nativeBuildInputs = [ pkg-config validatePkgConfig ];
|
||||
|
||||
passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||
|
||||
meta = {
|
||||
...
|
||||
pkgConfigModules = [ "zlib" ];
|
||||
};
|
||||
})
|
||||
```
|
||||
|
||||
## Accessing packages via pkg-config module name
|
||||
|
||||
### Within Nixpkgs
|
||||
|
||||
A [setup hook](#setup-hook-pkg-config) is bundled in the `pkg-config` package to bring a derivation's declared build inputs into the environment.
|
||||
This will populate environment variables like `PKG_CONFIG_PATH`, `PKG_CONFIG_PATH_FOR_BUILD`, and `PKG_CONFIG_PATH_HOST` based on:
|
||||
|
||||
- how `pkg-config` itself is depended upon
|
||||
|
||||
- how other dependencies are depended upon
|
||||
|
||||
For more details see the section on [specifying dependencies in general](#ssec-stdenv-dependencies).
|
||||
|
||||
Normal pkg-config commands to look up dependencies by name will then work with those environment variables defined by the hook.
|
||||
|
||||
### Externally
|
||||
|
||||
The `defaultPkgConfigPackages` package set is a set of aliases, named after the modules they provide.
|
||||
This is meant to be used by language-to-nix integrations.
|
||||
Hand-written packages should use the normal Nixpkgs attribute name instead.
|
||||
|
||||
@@ -0,0 +1,176 @@
|
||||
# Swift {#swift}
|
||||
|
||||
The Swift compiler is provided by the `swift` package:
|
||||
|
||||
```sh
|
||||
# Compile and link a simple executable.
|
||||
nix-shell -p swift --run 'swiftc -' <<< 'print("Hello world!")'
|
||||
# Run it!
|
||||
./main
|
||||
```
|
||||
|
||||
The `swift` package also provides the `swift` command, with some caveats:
|
||||
|
||||
- Swift Package Manager (SwiftPM) is packaged separately as `swiftpm`. If you
|
||||
need functionality like `swift build`, `swift run`, `swift test`, you must
|
||||
also add the `swiftpm` package to your closure.
|
||||
- On Darwin, the `swift repl` command requires an Xcode installation. This is
|
||||
because it uses the system LLDB debugserver, which has special entitlements.
|
||||
|
||||
## Module search paths {#ssec-swift-module-search-paths}
|
||||
|
||||
Like other toolchains in Nixpkgs, the Swift compiler executables are wrapped
|
||||
to help Swift find your application's dependencies in the Nix store. These
|
||||
wrappers scan the `buildInputs` of your package derivation for specific
|
||||
directories where Swift modules are placed by convention, and automatically
|
||||
add those directories to the Swift compiler search paths.
|
||||
|
||||
Swift follows different conventions depending on the platform. The wrappers
|
||||
look for the following directories:
|
||||
|
||||
- On Darwin platforms: `lib/swift/macosx`
|
||||
(If not targeting macOS, replace `macosx` with the Xcode platform name.)
|
||||
- On other platforms: `lib/swift/linux/x86_64`
|
||||
(Where `linux` and `x86_64` are from lowercase `uname -sm`.)
|
||||
- For convenience, Nixpkgs also adds simply `lib/swift` to the search path.
|
||||
This can save a bit of work packaging Swift modules, because many Nix builds
|
||||
will produce output for just one target any way.
|
||||
|
||||
## Core libraries {#ssec-swift-core-libraries}
|
||||
|
||||
In addition to the standard library, the Swift toolchain contains some
|
||||
additional 'core libraries' that, on Apple platforms, are normally distributed
|
||||
as part of the OS or Xcode. These are packaged separately in Nixpkgs, and can
|
||||
be found (for use in `buildInputs`) as:
|
||||
|
||||
- `swiftPackages.Dispatch`
|
||||
- `swiftPackages.Foundation`
|
||||
- `swiftPackages.XCTest`
|
||||
|
||||
## Packaging with SwiftPM {#ssec-swift-packaging-with-swiftpm}
|
||||
|
||||
Nixpkgs includes a small helper `swiftpm2nix` that can fetch your SwiftPM
|
||||
dependencies for you, when you need to write a Nix expression to package your
|
||||
application.
|
||||
|
||||
The first step is to run the generator:
|
||||
|
||||
```sh
|
||||
cd /path/to/my/project
|
||||
# Enter a Nix shell with the required tools.
|
||||
nix-shell -p swift swiftpm swiftpm2nix
|
||||
# First, make sure the workspace is up-to-date.
|
||||
swift package resolve
|
||||
# Now generate the Nix code.
|
||||
swiftpm2nix
|
||||
```
|
||||
|
||||
This produces some files in a directory `nix`, which will be part of your Nix
|
||||
expression. The next step is to write that expression:
|
||||
|
||||
```nix
|
||||
{ stdenv, swift, swiftpm, swiftpm2nix, fetchFromGitHub }:
|
||||
|
||||
let
|
||||
# Pass the generated files to the helper.
|
||||
generated = swiftpm2nix.helpers ./nix;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "myproject";
|
||||
version = "0.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nixos";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
|
||||
};
|
||||
|
||||
# Including SwiftPM as a nativeBuildInput provides a buildPhase for you.
|
||||
# This by default performs a release build using SwiftPM, essentially:
|
||||
# swift build -c release
|
||||
nativeBuildInputs = [ swift swiftpm ];
|
||||
|
||||
# The helper provides a configure snippet that will prepare all dependencies
|
||||
# in the correct place, where SwiftPM expects them.
|
||||
configurePhase = generated.configure;
|
||||
|
||||
installPhase = ''
|
||||
# This is a special function that invokes swiftpm to find the location
|
||||
# of the binaries it produced.
|
||||
binPath="$(swiftpmBinPath)"
|
||||
# Now perform any installation steps.
|
||||
mkdir -p $out/bin
|
||||
cp $binPath/myproject $out/bin/
|
||||
'';
|
||||
}
|
||||
```
|
||||
|
||||
### Custom build flags {#ssec-swiftpm-custom-build-flags}
|
||||
|
||||
If you'd like to build a different configuration than `release`:
|
||||
|
||||
```nix
|
||||
swiftpmBuildConfig = "debug";
|
||||
```
|
||||
|
||||
It is also possible to provide additional flags to `swift build`:
|
||||
|
||||
```nix
|
||||
swiftpmFlags = [ "--disable-dead-strip" ];
|
||||
```
|
||||
|
||||
The default `buildPhase` already passes `-j` for parallel building.
|
||||
|
||||
If these two customization options are insufficient, simply provide your own
|
||||
`buildPhase` that invokes `swift build`.
|
||||
|
||||
### Running tests {#ssec-swiftpm-running-tests}
|
||||
|
||||
Including `swiftpm` in your `nativeBuildInputs` also provides a default
|
||||
`checkPhase`, but it must be enabled with:
|
||||
|
||||
```nix
|
||||
doCheck = true;
|
||||
```
|
||||
|
||||
This essentially runs: `swift test -c release`
|
||||
|
||||
### Patching dependencies {#ssec-swiftpm-patching-dependencies}
|
||||
|
||||
In some cases, it may be necessary to patch a SwiftPM dependency. SwiftPM
|
||||
dependencies are located in `.build/checkouts`, but the `swiftpm2nix` helper
|
||||
provides these as symlinks to read-only `/nix/store` paths. In order to patch
|
||||
them, we need to make them writable.
|
||||
|
||||
A special function `swiftpmMakeMutable` is available to replace the symlink
|
||||
with a writable copy:
|
||||
|
||||
```
|
||||
configurePhase = generated.configure ++ ''
|
||||
# Replace the dependency symlink with a writable copy.
|
||||
swiftpmMakeMutable swift-crypto
|
||||
# Now apply a patch.
|
||||
patch -p1 -d .build/checkouts/swift-crypto -i ${./some-fix.patch}
|
||||
'';
|
||||
```
|
||||
|
||||
## Considerations for custom build tools {#ssec-swift-considerations-for-custom-build-tools}
|
||||
|
||||
### Linking the standard library {#ssec-swift-linking-the-standard-library}
|
||||
|
||||
The `swift` package has a separate `lib` output containing just the Swift
|
||||
standard library, to prevent Swift applications needing a dependency on the
|
||||
full Swift compiler at run-time. Linking with the Nixpkgs Swift toolchain
|
||||
already ensures binaries correctly reference the `lib` output.
|
||||
|
||||
Sometimes, Swift is used only to compile part of a mixed codebase, and the
|
||||
link step is manual. Custom build tools often locate the standard library
|
||||
relative to the `swift` compiler executable, and while the result will work,
|
||||
when this path ends up in the binary, it will have the Swift compiler as an
|
||||
unintended dependency.
|
||||
|
||||
In this case, you should investigate how your build process discovers the
|
||||
standard library, and override the path. The correct path will be something
|
||||
like: `"${swift.swift.lib}/${swift.swiftModuleSubdir}"`
|
||||
@@ -114,6 +114,16 @@ in mkLicense lset) ({
|
||||
fullName = "Bitstream Vera Font License";
|
||||
};
|
||||
|
||||
bitTorrent10 = {
|
||||
spdxId = "BitTorrent-1.0";
|
||||
fullName = " BitTorrent Open Source License v1.0";
|
||||
};
|
||||
|
||||
bitTorrent11 = {
|
||||
spdxId = "BitTorrent-1.1";
|
||||
fullName = " BitTorrent Open Source License v1.1";
|
||||
};
|
||||
|
||||
bola11 = {
|
||||
url = "https://blitiri.com.ar/p/bola/";
|
||||
fullName = "Buena Onda License Agreement 1.1";
|
||||
|
||||
@@ -10008,6 +10008,12 @@
|
||||
githubId = 3073833;
|
||||
name = "Massimo Redaelli";
|
||||
};
|
||||
mrityunjaygr8 = {
|
||||
email = "mrityunjaysaxena1996@gmail.com";
|
||||
github = "mrityunjaygr8";
|
||||
name = "Mrityunjay Saxena";
|
||||
githubId = 14573967;
|
||||
};
|
||||
mrkkrp = {
|
||||
email = "markkarpov92@gmail.com";
|
||||
github = "mrkkrp";
|
||||
@@ -13347,6 +13353,12 @@
|
||||
githubId = 16765155;
|
||||
name = "Shardul Baral";
|
||||
};
|
||||
sharzy = {
|
||||
email = "me@sharzy.in";
|
||||
github = "SharzyL";
|
||||
githubId = 46294732;
|
||||
name = "Sharzy";
|
||||
};
|
||||
shawndellysse = {
|
||||
email = "sdellysse@gmail.com";
|
||||
github = "sdellysse";
|
||||
@@ -13672,6 +13684,12 @@
|
||||
githubId = 57048005;
|
||||
name = "snicket2100";
|
||||
};
|
||||
sno2wman = {
|
||||
name = "SnO2WMaN";
|
||||
email = "me@sno2wman.net";
|
||||
github = "sno2wman";
|
||||
githubId = 15155608;
|
||||
};
|
||||
snpschaaf = {
|
||||
email = "philipe.schaaf@secunet.com";
|
||||
name = "Philippe Schaaf";
|
||||
@@ -15291,6 +15309,12 @@
|
||||
githubId = 27813;
|
||||
name = "Vincent Breitmoser";
|
||||
};
|
||||
vamega = {
|
||||
email = "github@madiathv.com";
|
||||
github = "vamega";
|
||||
githubId = 223408;
|
||||
name = "Varun Madiath";
|
||||
};
|
||||
vandenoever = {
|
||||
email = "jos@vandenoever.info";
|
||||
github = "vandenoever";
|
||||
|
||||
@@ -152,6 +152,15 @@
|
||||
are met, or not met.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/parvardegr/sharing">sharing</link>,
|
||||
a command-line tool to share directories and files from the
|
||||
CLI to iOS and Android devices without the need of an extra
|
||||
client app. Available as
|
||||
<link linkend="opt-programs.sharing.enable">programs.sharing</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section xml:id="sec-release-23.05-incompatibilities">
|
||||
@@ -412,6 +421,16 @@
|
||||
attribute name.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Nebula now runs as a system user and group created for each
|
||||
nebula network, using the <literal>CAP_NET_ADMIN</literal>
|
||||
ambient capability on launch rather than starting as root.
|
||||
Ensure that any files each Nebula instance needs to access are
|
||||
owned by the correct user and group, by default
|
||||
<literal>nebula-${networkName}</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
In <literal>mastodon</literal> it is now necessary to specify
|
||||
@@ -503,19 +522,72 @@
|
||||
<para>
|
||||
A few openssh options have been moved from extraConfig to the
|
||||
new freeform option <literal>settings</literal> and renamed as
|
||||
follow:
|
||||
<literal>services.openssh.kbdInteractiveAuthentication</literal>
|
||||
to
|
||||
<literal>services.openssh.settings.KbdInteractiveAuthentication</literal>,
|
||||
<literal>services.openssh.passwordAuthentication</literal> to
|
||||
<literal>services.openssh.settings.PasswordAuthentication</literal>,
|
||||
<literal>services.openssh.useDns</literal> to
|
||||
<literal>services.openssh.settings.UseDns</literal>,
|
||||
<literal>services.openssh.permitRootLogin</literal> to
|
||||
<literal>services.openssh.settings.PermitRootLogin</literal>,
|
||||
<literal>services.openssh.logLevel</literal> to
|
||||
<literal>services.openssh.settings.LogLevel</literal>.
|
||||
follows:
|
||||
</para>
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.forwardX11</literal> to
|
||||
<literal>services.openssh.settings.X11Forwarding</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.kbdInteractiveAuthentication</literal>
|
||||
->
|
||||
<literal>services.openssh.settings.KbdInteractiveAuthentication</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.passwordAuthentication</literal>
|
||||
to
|
||||
<literal>services.openssh.settings.PasswordAuthentication</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.useDns</literal> to
|
||||
<literal>services.openssh.settings.UseDns</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.permitRootLogin</literal> to
|
||||
<literal>services.openssh.settings.PermitRootLogin</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.logLevel</literal> to
|
||||
<literal>services.openssh.settings.LogLevel</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.kexAlgorithms</literal> to
|
||||
<literal>services.openssh.settings.KexAlgorithms</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.macs</literal> to
|
||||
<literal>services.openssh.settings.Macs</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.cyphers</literal> to
|
||||
<literal>services.openssh.settings.Cyphers</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>services.openssh.gatewayPorts</literal> to
|
||||
<literal>services.openssh.settings.GatewayPorts</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
@@ -794,6 +866,18 @@
|
||||
<link xlink:href="options.html#opt-system.stateVersion">system.stateVersion</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Nebula now supports the
|
||||
<literal>services.nebula.networks.<name>.isRelay</literal>
|
||||
and
|
||||
<literal>services.nebula.networks.<name>.relays</literal>
|
||||
configuration options for setting up or allowing traffic
|
||||
relaying. See the
|
||||
<link xlink:href="https://www.defined.net/blog/announcing-relay-support-in-nebula/">announcement</link>
|
||||
for more details about relays.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>hip</literal> has been separated into
|
||||
@@ -830,6 +914,14 @@
|
||||
(<link linkend="opt-services.fwupd.daemonSettings"><literal>services.fwupd.daemonSettings</literal></link>).
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>zramSwap</literal> is now implemented with
|
||||
<literal>zram-generator</literal>, and the option
|
||||
<literal>zramSwap.numDevices</literal> for using ZRAM devices
|
||||
as general purpose ephemeral block devices has been removed.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>unifi-poller</literal> package and corresponding
|
||||
@@ -878,6 +970,13 @@
|
||||
been fixed to allow more than one plugin in the path.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The option
|
||||
<literal>services.prometheus.exporters.pihole.interval</literal>
|
||||
does not exist anymore and has been removed.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
@@ -48,6 +48,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [autosuspend](https://github.com/languitar/autosuspend), a python daemon that suspends a system if certain conditions are met, or not met.
|
||||
|
||||
- [sharing](https://github.com/parvardegr/sharing), a command-line tool to share directories and files from the CLI to iOS and Android devices without the need of an extra client app. Available as [programs.sharing](#opt-programs.sharing.enable).
|
||||
|
||||
## Backward Incompatibilities {#sec-release-23.05-incompatibilities}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
@@ -99,6 +101,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- The [services.wordpress.sites.<name>.plugins](#opt-services.wordpress.sites._name_.plugins) and [services.wordpress.sites.<name>.themes](#opt-services.wordpress.sites._name_.themes) options have been converted from sets to attribute sets to allow for consumers to specify explicit install paths via attribute name.
|
||||
|
||||
- Nebula now runs as a system user and group created for each nebula network, using the `CAP_NET_ADMIN` ambient capability on launch rather than starting as root. Ensure that any files each Nebula instance needs to access are owned by the correct user and group, by default `nebula-${networkName}`.
|
||||
|
||||
- In `mastodon` it is now necessary to specify location of file with `PostgreSQL` database password. In `services.mastodon.database.passwordFile` parameter default value `/var/lib/mastodon/secrets/db-password` has been changed to `null`.
|
||||
|
||||
- The `--target-host` and `--build-host` options of `nixos-rebuild` no longer treat the `localhost` value specially – to build on/deploy to local machine, omit the relevant flag.
|
||||
@@ -124,7 +128,17 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- The module `usbmuxd` now has the ability to change the package used by the daemon. In case you're experiencing issues with `usbmuxd` you can try an alternative program like `usbmuxd2`. Available as [services.usbmuxd.package](#opt-services.usbmuxd.package)
|
||||
|
||||
- A few openssh options have been moved from extraConfig to the new freeform option `settings` and renamed as follow: `services.openssh.kbdInteractiveAuthentication` to `services.openssh.settings.KbdInteractiveAuthentication`, `services.openssh.passwordAuthentication` to `services.openssh.settings.PasswordAuthentication`, `services.openssh.useDns` to `services.openssh.settings.UseDns`, `services.openssh.permitRootLogin` to `services.openssh.settings.PermitRootLogin`, `services.openssh.logLevel` to `services.openssh.settings.LogLevel`.
|
||||
- A few openssh options have been moved from extraConfig to the new freeform option `settings` and renamed as follows:
|
||||
- `services.openssh.forwardX11` to `services.openssh.settings.X11Forwarding`
|
||||
- `services.openssh.kbdInteractiveAuthentication` -> `services.openssh.settings.KbdInteractiveAuthentication`
|
||||
- `services.openssh.passwordAuthentication` to `services.openssh.settings.PasswordAuthentication`
|
||||
- `services.openssh.useDns` to `services.openssh.settings.UseDns`
|
||||
- `services.openssh.permitRootLogin` to `services.openssh.settings.PermitRootLogin`
|
||||
- `services.openssh.logLevel` to `services.openssh.settings.LogLevel`
|
||||
- `services.openssh.kexAlgorithms` to `services.openssh.settings.KexAlgorithms`
|
||||
- `services.openssh.macs` to `services.openssh.settings.Macs`
|
||||
- `services.openssh.cyphers` to `services.openssh.settings.Cyphers`
|
||||
- `services.openssh.gatewayPorts` to `services.openssh.settings.GatewayPorts`
|
||||
|
||||
- `services.mastodon` gained a tootctl wrapped named `mastodon-tootctl` similar to `nextcloud-occ` which can be executed from any user and switches to the configured mastodon user with sudo and sources the environment variables.
|
||||
|
||||
@@ -197,6 +211,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [Garage](https://garagehq.deuxfleurs.fr/) version is based on [system.stateVersion](options.html#opt-system.stateVersion), existing installations will keep using version 0.7. New installations will use version 0.8. In order to upgrade a Garage cluster, please follow [upstream instructions](https://garagehq.deuxfleurs.fr/documentation/cookbook/upgrading/) and force [services.garage.package](options.html#opt-services.garage.package) or upgrade accordingly [system.stateVersion](options.html#opt-system.stateVersion).
|
||||
|
||||
- Nebula now supports the `services.nebula.networks.<name>.isRelay` and `services.nebula.networks.<name>.relays` configuration options for setting up or allowing traffic relaying. See the [announcement](https://www.defined.net/blog/announcing-relay-support-in-nebula/) for more details about relays.
|
||||
|
||||
- `hip` has been separated into `hip`, `hip-common` and `hipcc`.
|
||||
|
||||
- `services.nginx.recommendedProxySettings` now removes the `Connection` header preventing clients from closing backend connections.
|
||||
@@ -207,6 +223,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- The `services.fwupd` module now allows arbitrary daemon settings to be configured in a structured manner ([`services.fwupd.daemonSettings`](#opt-services.fwupd.daemonSettings)).
|
||||
|
||||
- The `zramSwap` is now implemented with `zram-generator`, and the option `zramSwap.numDevices` for using ZRAM devices as general purpose ephemeral block devices has been removed.
|
||||
|
||||
- The `unifi-poller` package and corresponding NixOS module have been renamed to `unpoller` to match upstream.
|
||||
|
||||
- The new option `services.tailscale.useRoutingFeatures` controls various settings for using Tailscale features like exit nodes and subnet routers. If you wish to use your machine as an exit node, you can set this setting to `server`, otherwise if you wish to use an exit node you can set this setting to `client`. The strict RPF warning has been removed as the RPF will be loosened automatically based on the value of this setting.
|
||||
@@ -218,3 +236,5 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
- `nixos-version` now accepts `--configuration-revision` to display more information about the current generation revision
|
||||
|
||||
- The option `services.nomad.extraSettingsPlugins` has been fixed to allow more than one plugin in the path.
|
||||
|
||||
- The option `services.prometheus.exporters.pihole.interval` does not exist anymore and has been removed.
|
||||
|
||||
@@ -89,7 +89,7 @@ with lib;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# on your system were taken. It’s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
|
||||
@@ -46,8 +46,10 @@ with lib;
|
||||
libextractor = super.libextractor.override { gtkSupport = false; };
|
||||
libva = super.libva-minimal;
|
||||
limesuite = super.limesuite.override { withGui = false; };
|
||||
mc = super.mc.override { x11Support = false; };
|
||||
mpv-unwrapped = super.mpv-unwrapped.override { sdl2Support = false; x11Support = false; };
|
||||
msmtp = super.msmtp.override { withKeyring = false; };
|
||||
neofetch = super.neofetch.override { x11Support = false; };
|
||||
networkmanager-fortisslvpn = super.networkmanager-fortisslvpn.override { withGnome = false; };
|
||||
networkmanager-iodine = super.networkmanager-iodine.override { withGnome = false; };
|
||||
networkmanager-l2tp = super.networkmanager-l2tp.override { withGnome = false; };
|
||||
|
||||
+38
-122
@@ -1,45 +1,27 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.zramSwap;
|
||||
|
||||
# don't set swapDevices as mkDefault, so we can detect user had read our warning
|
||||
# (see below) and made an action (or not)
|
||||
devicesCount = if cfg.swapDevices != null then cfg.swapDevices else cfg.numDevices;
|
||||
|
||||
devices = map (nr: "zram${toString nr}") (range 0 (devicesCount - 1));
|
||||
|
||||
modprobe = "${pkgs.kmod}/bin/modprobe";
|
||||
|
||||
warnings =
|
||||
assert cfg.swapDevices != null -> cfg.numDevices >= cfg.swapDevices;
|
||||
flatten [
|
||||
(optional (cfg.numDevices > 1 && cfg.swapDevices == null) ''
|
||||
Using several small zram devices as swap is no better than using one large.
|
||||
Set either zramSwap.numDevices = 1 or explicitly set zramSwap.swapDevices.
|
||||
|
||||
Previously multiple zram devices were used to enable multithreaded
|
||||
compression. Linux supports multithreaded compression for 1 device
|
||||
since 3.15. See https://lkml.org/lkml/2014/2/28/404 for details.
|
||||
'')
|
||||
];
|
||||
devices = map (nr: "zram${toString nr}") (lib.range 0 (cfg.swapDevices - 1));
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
imports = [
|
||||
(lib.mkRemovedOptionModule [ "zramSwap" "numDevices" ] "Using ZRAM devices as general purpose ephemeral block devices is no longer supported")
|
||||
];
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
zramSwap = {
|
||||
|
||||
enable = mkOption {
|
||||
enable = lib.mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
type = lib.types.bool;
|
||||
description = lib.mdDoc ''
|
||||
Enable in-memory compressed devices and swap space provided by the zram
|
||||
kernel module.
|
||||
@@ -49,29 +31,18 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
numDevices = mkOption {
|
||||
default = 1;
|
||||
type = types.int;
|
||||
description = lib.mdDoc ''
|
||||
Number of zram devices to create. See also
|
||||
`zramSwap.swapDevices`
|
||||
'';
|
||||
};
|
||||
|
||||
swapDevices = mkOption {
|
||||
default = null;
|
||||
swapDevices = lib.mkOption {
|
||||
default = 0;
|
||||
example = 1;
|
||||
type = with types; nullOr int;
|
||||
type = lib.types.int;
|
||||
description = lib.mdDoc ''
|
||||
Number of zram devices to be used as swap. Must be
|
||||
`<= zramSwap.numDevices`.
|
||||
Default is same as `zramSwap.numDevices`, recommended is 1.
|
||||
Number of zram devices to be used as swap, recommended is 1.
|
||||
'';
|
||||
};
|
||||
|
||||
memoryPercent = mkOption {
|
||||
memoryPercent = lib.mkOption {
|
||||
default = 50;
|
||||
type = types.int;
|
||||
type = lib.types.int;
|
||||
description = lib.mdDoc ''
|
||||
Maximum total amount of memory that can be stored in the zram swap devices
|
||||
(as a percentage of your total memory). Defaults to 1/2 of your total
|
||||
@@ -80,9 +51,9 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
memoryMax = mkOption {
|
||||
memoryMax = lib.mkOption {
|
||||
default = null;
|
||||
type = with types; nullOr int;
|
||||
type = with lib.types; nullOr int;
|
||||
description = lib.mdDoc ''
|
||||
Maximum total amount of memory (in bytes) that can be stored in the zram
|
||||
swap devices.
|
||||
@@ -90,9 +61,9 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
priority = mkOption {
|
||||
priority = lib.mkOption {
|
||||
default = 5;
|
||||
type = types.int;
|
||||
type = lib.types.int;
|
||||
description = lib.mdDoc ''
|
||||
Priority of the zram swap devices. It should be a number higher than
|
||||
the priority of your disk-based swap devices (so that the system will
|
||||
@@ -100,10 +71,10 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
algorithm = mkOption {
|
||||
algorithm = lib.mkOption {
|
||||
default = "zstd";
|
||||
example = "lz4";
|
||||
type = with types; either (enum [ "lzo" "lz4" "zstd" ]) str;
|
||||
type = with lib.types; either (enum [ "lzo" "lz4" "zstd" ]) str;
|
||||
description = lib.mdDoc ''
|
||||
Compression algorithm. `lzo` has good compression,
|
||||
but is slow. `lz4` has bad compression, but is fast.
|
||||
@@ -116,9 +87,7 @@ in
|
||||
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
inherit warnings;
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
system.requiredKernelConfig = with config.lib.kernelConfig; [
|
||||
(isModule "ZRAM")
|
||||
@@ -128,78 +97,25 @@ in
|
||||
# once in stage 2 boot, and again when the zram-reloader service starts.
|
||||
# boot.kernelModules = [ "zram" ];
|
||||
|
||||
boot.extraModprobeConfig = ''
|
||||
options zram num_devices=${toString cfg.numDevices}
|
||||
'';
|
||||
systemd.packages = [ pkgs.zram-generator ];
|
||||
systemd.services."systemd-zram-setup@".path = [ pkgs.util-linux ]; # for mkswap
|
||||
|
||||
boot.kernelParams = ["zram.num_devices=${toString cfg.numDevices}"];
|
||||
|
||||
services.udev.extraRules = ''
|
||||
KERNEL=="zram[0-9]*", ENV{SYSTEMD_WANTS}="zram-init-%k.service", TAG+="systemd"
|
||||
'';
|
||||
|
||||
systemd.services =
|
||||
let
|
||||
createZramInitService = dev:
|
||||
nameValuePair "zram-init-${dev}" {
|
||||
description = "Init swap on zram-based device ${dev}";
|
||||
after = [ "dev-${dev}.device" "zram-reloader.service" ];
|
||||
requires = [ "dev-${dev}.device" "zram-reloader.service" ];
|
||||
before = [ "dev-${dev}.swap" ];
|
||||
requiredBy = [ "dev-${dev}.swap" ];
|
||||
unitConfig.DefaultDependencies = false; # needed to prevent a cycle
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
ExecStop = "${pkgs.runtimeShell} -c 'echo 1 > /sys/class/block/${dev}/reset'";
|
||||
};
|
||||
script = ''
|
||||
set -euo pipefail
|
||||
|
||||
# Calculate memory to use for zram
|
||||
mem=$(${pkgs.gawk}/bin/awk '/MemTotal: / {
|
||||
value=int($2*${toString cfg.memoryPercent}/100.0/${toString devicesCount}*1024);
|
||||
${lib.optionalString (cfg.memoryMax != null) ''
|
||||
memory_max=int(${toString cfg.memoryMax}/${toString devicesCount});
|
||||
if (value > memory_max) { value = memory_max }
|
||||
''}
|
||||
print value
|
||||
}' /proc/meminfo)
|
||||
|
||||
${pkgs.util-linux}/sbin/zramctl --size $mem --algorithm ${cfg.algorithm} /dev/${dev}
|
||||
${pkgs.util-linux}/sbin/mkswap /dev/${dev}
|
||||
'';
|
||||
restartIfChanged = false;
|
||||
};
|
||||
in listToAttrs ((map createZramInitService devices) ++ [(nameValuePair "zram-reloader"
|
||||
{
|
||||
description = "Reload zram kernel module when number of devices changes";
|
||||
wants = [ "systemd-udevd.service" ];
|
||||
after = [ "systemd-udevd.service" ];
|
||||
unitConfig.DefaultDependencies = false; # needed to prevent a cycle
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
ExecStartPre = "-${modprobe} -r zram";
|
||||
ExecStart = "-${modprobe} zram";
|
||||
ExecStop = "-${modprobe} -r zram";
|
||||
};
|
||||
restartTriggers = [
|
||||
cfg.numDevices
|
||||
cfg.algorithm
|
||||
cfg.memoryPercent
|
||||
];
|
||||
restartIfChanged = true;
|
||||
})]);
|
||||
|
||||
swapDevices =
|
||||
let
|
||||
useZramSwap = dev:
|
||||
{
|
||||
device = "/dev/${dev}";
|
||||
priority = cfg.priority;
|
||||
};
|
||||
in map useZramSwap devices;
|
||||
environment.etc."systemd/zram-generator.conf".source =
|
||||
(pkgs.formats.ini { }).generate "zram-generator.conf" (lib.listToAttrs
|
||||
(builtins.map
|
||||
(dev: {
|
||||
name = dev;
|
||||
value =
|
||||
let
|
||||
size = "${toString cfg.memoryPercent} / 100 * ram";
|
||||
in
|
||||
{
|
||||
zram-size = if cfg.memoryMax != null then "min(${size}, ${toString cfg.memoryMax} / 1024 / 1024)" else size;
|
||||
compression-algorithm = cfg.algorithm;
|
||||
swap-priority = cfg.priority;
|
||||
};
|
||||
})
|
||||
devices));
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -217,7 +217,7 @@ in
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# on your system were taken. It’s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
|
||||
@@ -130,7 +130,7 @@ in
|
||||
to be compatible. The effect is that NixOS will use
|
||||
defaults corresponding to the specified release (such as using
|
||||
an older version of PostgreSQL).
|
||||
It‘s perfectly fine and recommended to leave this value at the
|
||||
It’s perfectly fine and recommended to leave this value at the
|
||||
release version of the first install of this system.
|
||||
Changing this option will not upgrade your system. In fact it
|
||||
is meant to stay constant exactly when you upgrade your system.
|
||||
|
||||
@@ -223,6 +223,7 @@
|
||||
./programs/seahorse.nix
|
||||
./programs/sedutil.nix
|
||||
./programs/shadow.nix
|
||||
./programs/sharing.nix
|
||||
./programs/singularity.nix
|
||||
./programs/skim.nix
|
||||
./programs/slock.nix
|
||||
@@ -697,6 +698,7 @@
|
||||
./services/monitoring/arbtt.nix
|
||||
./services/monitoring/bosun.nix
|
||||
./services/monitoring/cadvisor.nix
|
||||
./services/monitoring/cockpit.nix
|
||||
./services/monitoring/collectd.nix
|
||||
./services/monitoring/das_watchdog.nix
|
||||
./services/monitoring/datadog-agent.nix
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
with lib;
|
||||
{
|
||||
options.programs.sharing = {
|
||||
enable = mkEnableOption (lib.mdDoc ''
|
||||
sharing, a CLI tool for sharing files.
|
||||
|
||||
Note that it will opens the 7478 port for TCP in the firewall, which is needed for it to function properly
|
||||
'');
|
||||
};
|
||||
config =
|
||||
let
|
||||
cfg = config.programs.sharing;
|
||||
in
|
||||
mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.sharing ];
|
||||
networking.firewall.allowedTCPPorts = [ 7478 ];
|
||||
};
|
||||
}
|
||||
@@ -282,7 +282,7 @@ in
|
||||
config = {
|
||||
|
||||
programs.ssh.setXAuthLocation =
|
||||
mkDefault (config.services.xserver.enable || config.programs.ssh.forwardX11 || config.services.openssh.forwardX11);
|
||||
mkDefault (config.services.xserver.enable || config.programs.ssh.forwardX11 || config.services.openssh.settings.X11Forwarding);
|
||||
|
||||
assertions =
|
||||
[ { assertion = cfg.forwardX11 -> cfg.setXAuthLocation;
|
||||
|
||||
@@ -383,7 +383,7 @@ in
|
||||
"d /var/spool/slurmd 755 root root -"
|
||||
];
|
||||
|
||||
services.openssh.forwardX11 = mkIf cfg.client.enable (mkDefault true);
|
||||
services.openssh.settings.X11Forwarding = mkIf cfg.client.enable (mkDefault true);
|
||||
|
||||
systemd.services.slurmctld = mkIf (cfg.server.enable) {
|
||||
path = with pkgs; [ wrappedSlurm munge coreutils ]
|
||||
|
||||
@@ -0,0 +1,231 @@
|
||||
{ pkgs, config, lib, ... }:
|
||||
|
||||
let
|
||||
cfg = config.services.cockpit;
|
||||
inherit (lib) types mkEnableOption mkOption mkIf mdDoc literalMD mkPackageOptionMD;
|
||||
settingsFormat = pkgs.formats.ini {};
|
||||
in {
|
||||
options = {
|
||||
services.cockpit = {
|
||||
enable = mkEnableOption (mdDoc "Cockpit");
|
||||
|
||||
package = mkPackageOptionMD pkgs "Cockpit" {
|
||||
default = [ "cockpit" ];
|
||||
};
|
||||
|
||||
settings = lib.mkOption {
|
||||
type = settingsFormat.type;
|
||||
|
||||
default = {};
|
||||
|
||||
description = mdDoc ''
|
||||
Settings for cockpit that will be saved in /etc/cockpit/cockpit.conf.
|
||||
|
||||
See the [documentation](https://cockpit-project.org/guide/latest/cockpit.conf.5.html), that is also available with `man cockpit.conf.5` for details.
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
description = mdDoc "Port where cockpit will listen.";
|
||||
type = types.port;
|
||||
default = 9090;
|
||||
};
|
||||
|
||||
openFirewall = mkOption {
|
||||
description = mdDoc "Open port for cockpit.";
|
||||
type = types.bool;
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
# expose cockpit-bridge system-wide
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
# allow cockpit to find its plugins
|
||||
environment.pathsToLink = [ "/share/cockpit" ];
|
||||
|
||||
# generate cockpit settings
|
||||
environment.etc."cockpit/cockpit.conf".source = settingsFormat.generate "cockpit.conf" cfg.settings;
|
||||
|
||||
security.pam.services.cockpit = {};
|
||||
|
||||
networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ];
|
||||
|
||||
# units are in reverse sort order if you ls $out/lib/systemd/system
|
||||
# all these units are basically verbatim translated from upstream
|
||||
|
||||
# Translation from $out/lib/systemd/system/systemd-cockpithttps.slice
|
||||
systemd.slices.system-cockpithttps = {
|
||||
description = "Resource limits for all cockpit-ws-https@.service instances";
|
||||
sliceConfig = {
|
||||
TasksMax = 200;
|
||||
MemoryHigh = "75%";
|
||||
MemoryMax = "90%";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-wsinstance-https@.socket
|
||||
systemd.sockets."cockpit-wsinstance-https@" = {
|
||||
unitConfig = {
|
||||
Description = "Socket for Cockpit Web Service https instance %I";
|
||||
BindsTo = [ "cockpit.service" "cockpit-wsinstance-https@%i.service" ];
|
||||
# clean up the socket after the service exits, to prevent fd leak
|
||||
# this also effectively prevents a DoS by starting arbitrarily many sockets, as
|
||||
# the services are resource-limited by system-cockpithttps.slice
|
||||
Documentation = "man:cockpit-ws(8)";
|
||||
};
|
||||
socketConfig = {
|
||||
ListenStream = "/run/cockpit/wsinstance/https@%i.sock";
|
||||
SocketUser = "root";
|
||||
SocketMode = "0600";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-wsinstance-https@.service
|
||||
systemd.services."cockpit-wsinstance-https@" = {
|
||||
description = "Cockpit Web Service https instance %I";
|
||||
bindsTo = [ "cockpit.service"];
|
||||
path = [ cfg.package ];
|
||||
documentation = [ "man:cockpit-ws(8)" ];
|
||||
serviceConfig = {
|
||||
Slice = "system-cockpithttps.slice";
|
||||
ExecStart = "${cfg.package}/libexec/cockpit-ws --for-tls-proxy --port=0";
|
||||
User = "root";
|
||||
Group = "";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-wsinstance-http.socket
|
||||
systemd.sockets.cockpit-wsinstance-http = {
|
||||
unitConfig = {
|
||||
Description = "Socket for Cockpit Web Service http instance";
|
||||
BindsTo = "cockpit.service";
|
||||
Documentation = "man:cockpit-ws(8)";
|
||||
};
|
||||
socketConfig = {
|
||||
ListenStream = "/run/cockpit/wsinstance/http.sock";
|
||||
SocketUser = "root";
|
||||
SocketMode = "0600";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-wsinstance-https-factory.socket
|
||||
systemd.sockets.cockpit-wsinstance-https-factory = {
|
||||
unitConfig = {
|
||||
Description = "Socket for Cockpit Web Service https instance factory";
|
||||
BindsTo = "cockpit.service";
|
||||
Documentation = "man:cockpit-ws(8)";
|
||||
};
|
||||
socketConfig = {
|
||||
ListenStream = "/run/cockpit/wsinstance/https-factory.sock";
|
||||
Accept = true;
|
||||
SocketUser = "root";
|
||||
SocketMode = "0600";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-wsinstance-https-factory@.service
|
||||
systemd.services."cockpit-wsinstance-https-factory@" = {
|
||||
description = "Cockpit Web Service https instance factory";
|
||||
documentation = [ "man:cockpit-ws(8)" ];
|
||||
path = [ cfg.package ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/libexec/cockpit-wsinstance-factory";
|
||||
User = "root";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-wsinstance-http.service
|
||||
systemd.services."cockpit-wsinstance-http" = {
|
||||
description = "Cockpit Web Service http instance";
|
||||
bindsTo = [ "cockpit.service" ];
|
||||
path = [ cfg.package ];
|
||||
documentation = [ "man:cockpit-ws(8)" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/libexec/cockpit-ws --no-tls --port=0";
|
||||
User = "root";
|
||||
Group = "";
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit.socket
|
||||
systemd.sockets."cockpit" = {
|
||||
unitConfig = {
|
||||
Description = "Cockpit Web Service Socket";
|
||||
Documentation = "man:cockpit-ws(8)";
|
||||
Wants = "cockpit-motd.service";
|
||||
};
|
||||
socketConfig = {
|
||||
ListenStream = cfg.port;
|
||||
ExecStartPost = [
|
||||
"-${cfg.package}/share/cockpit/motd/update-motd \"\" localhost"
|
||||
"-${pkgs.coreutils}/bin/ln -snf active.motd /run/cockpit/motd"
|
||||
];
|
||||
ExecStopPost = "-${pkgs.coreutils}/bin/ln -snf inactive.motd /run/cockpit/motd";
|
||||
};
|
||||
wantedBy = [ "sockets.target" ];
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit.service
|
||||
systemd.services."cockpit" = {
|
||||
description = "Cockpit Web Service";
|
||||
documentation = [ "man:cockpit-ws(8)" ];
|
||||
restartIfChanged = true;
|
||||
path = with pkgs; [ coreutils cfg.package ];
|
||||
requires = [ "cockpit.socket" "cockpit-wsinstance-http.socket" "cockpit-wsinstance-https-factory.socket" ];
|
||||
after = [ "cockpit-wsinstance-http.socket" "cockpit-wsinstance-https-factory.socket" ];
|
||||
environment = {
|
||||
G_MESSAGES_DEBUG = "cockpit-ws,cockpit-bridge";
|
||||
};
|
||||
serviceConfig = {
|
||||
RuntimeDirectory="cockpit/tls";
|
||||
ExecStartPre = [
|
||||
# cockpit-tls runs in a more constrained environment, these + means that these commands
|
||||
# will run with full privilege instead of inside that constrained environment
|
||||
# See https://www.freedesktop.org/software/systemd/man/systemd.service.html#ExecStart= for details
|
||||
"+${cfg.package}/libexec/cockpit-certificate-ensure --for-cockpit-tls"
|
||||
];
|
||||
ExecStart = "${cfg.package}/libexec/cockpit-tls";
|
||||
User = "root";
|
||||
Group = "";
|
||||
NoNewPrivileges = true;
|
||||
ProtectSystem = "strict";
|
||||
ProtectHome = true;
|
||||
PrivateTmp = true;
|
||||
PrivateDevices = true;
|
||||
ProtectKernelTunables = true;
|
||||
RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
|
||||
MemoryDenyWriteExecute = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Translation from $out/lib/systemd/system/cockpit-motd.service
|
||||
# This part basically implements a motd state machine:
|
||||
# - If cockpit.socket is enabled then /run/cockpit/motd points to /run/cockpit/active.motd
|
||||
# - If cockpit.socket is disabled then /run/cockpit/motd points to /run/cockpit/inactive.motd
|
||||
# - As cockpit.socket is disabled by default, /run/cockpit/motd points to /run/cockpit/inactive.motd
|
||||
# /run/cockpit/active.motd is generated dynamically by cockpit-motd.service
|
||||
systemd.services."cockpit-motd" = {
|
||||
path = with pkgs; [ nettools ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${cfg.package}/share/cockpit/motd/update-motd";
|
||||
};
|
||||
description = "Cockpit motd updater service";
|
||||
documentation = [ "man:cockpit-ws(8)" ];
|
||||
wants = [ "network.target" ];
|
||||
after = [ "network.target" "cockpit.socket" ];
|
||||
};
|
||||
|
||||
systemd.tmpfiles.rules = [ # From $out/lib/tmpfiles.d/cockpit-tmpfiles.conf
|
||||
"C /run/cockpit/inactive.motd 0640 root root - ${cfg.package}/share/cockpit/motd/inactive.motd"
|
||||
"f /run/cockpit/active.motd 0640 root root -"
|
||||
"L+ /run/cockpit/motd - - - - inactive.motd"
|
||||
"d /etc/cockpit/ws-certs.d 0600 root root 0"
|
||||
];
|
||||
};
|
||||
|
||||
meta.maintainers = pkgs.cockpit.meta.maintainers;
|
||||
}
|
||||
@@ -6,6 +6,11 @@ let
|
||||
cfg = config.services.prometheus.exporters.pihole;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
(mkRemovedOptionModule [ "interval"] "This option has been removed.")
|
||||
({ options.warnings = options.warnings; options.assertions = options.assertions; })
|
||||
];
|
||||
|
||||
port = 9617;
|
||||
extraOpts = {
|
||||
apiToken = mkOption {
|
||||
@@ -13,15 +18,7 @@ in
|
||||
default = "";
|
||||
example = "580a770cb40511eb85290242ac130003580a770cb40511eb85290242ac130003";
|
||||
description = lib.mdDoc ''
|
||||
pi-hole API token which can be used instead of a password
|
||||
'';
|
||||
};
|
||||
interval = mkOption {
|
||||
type = types.str;
|
||||
default = "10s";
|
||||
example = "30s";
|
||||
description = lib.mdDoc ''
|
||||
How often to scrape new data
|
||||
Pi-Hole API token which can be used instead of a password
|
||||
'';
|
||||
};
|
||||
password = mkOption {
|
||||
@@ -29,7 +26,7 @@ in
|
||||
default = "";
|
||||
example = "password";
|
||||
description = lib.mdDoc ''
|
||||
The password to login into pihole. An api token can be used instead.
|
||||
The password to login into Pi-Hole. An api token can be used instead.
|
||||
'';
|
||||
};
|
||||
piholeHostname = mkOption {
|
||||
@@ -37,7 +34,7 @@ in
|
||||
default = "pihole";
|
||||
example = "127.0.0.1";
|
||||
description = lib.mdDoc ''
|
||||
Hostname or address where to find the pihole webinterface
|
||||
Hostname or address where to find the Pi-Hole webinterface
|
||||
'';
|
||||
};
|
||||
piholePort = mkOption {
|
||||
@@ -45,7 +42,7 @@ in
|
||||
default = 80;
|
||||
example = 443;
|
||||
description = lib.mdDoc ''
|
||||
The port pihole webinterface is reachable on
|
||||
The port Pi-Hole webinterface is reachable on
|
||||
'';
|
||||
};
|
||||
protocol = mkOption {
|
||||
@@ -53,21 +50,28 @@ in
|
||||
default = "http";
|
||||
example = "https";
|
||||
description = lib.mdDoc ''
|
||||
The protocol which is used to connect to pihole
|
||||
The protocol which is used to connect to Pi-Hole
|
||||
'';
|
||||
};
|
||||
timeout = mkOption {
|
||||
type = types.str;
|
||||
default = "5s";
|
||||
description = lib.mdDoc ''
|
||||
Controls the timeout to connect to a Pi-Hole instance
|
||||
'';
|
||||
};
|
||||
};
|
||||
serviceOpts = {
|
||||
serviceConfig = {
|
||||
ExecStart = ''
|
||||
${pkgs.bash}/bin/bash -c "${pkgs.prometheus-pihole-exporter}/bin/pihole-exporter \
|
||||
-interval ${cfg.interval} \
|
||||
${pkgs.prometheus-pihole-exporter}/bin/pihole-exporter \
|
||||
${optionalString (cfg.apiToken != "") "-pihole_api_token ${cfg.apiToken}"} \
|
||||
-pihole_hostname ${cfg.piholeHostname} \
|
||||
${optionalString (cfg.password != "") "-pihole_password ${cfg.password}"} \
|
||||
-pihole_port ${toString cfg.piholePort} \
|
||||
-pihole_protocol ${cfg.protocol} \
|
||||
-port ${toString cfg.port}"
|
||||
-port ${toString cfg.port} \
|
||||
-timeout ${cfg.timeout}
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
@@ -68,6 +68,12 @@ in
|
||||
description = lib.mdDoc "Whether this node is a lighthouse.";
|
||||
};
|
||||
|
||||
isRelay = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Whether this node is a relay.";
|
||||
};
|
||||
|
||||
lighthouses = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
@@ -78,6 +84,15 @@ in
|
||||
example = [ "192.168.100.1" ];
|
||||
};
|
||||
|
||||
relays = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
description = lib.mdDoc ''
|
||||
List of IPs of relays that this node should allow traffic from.
|
||||
'';
|
||||
example = [ "192.168.100.1" ];
|
||||
};
|
||||
|
||||
listen.host = mkOption {
|
||||
type = types.str;
|
||||
default = "0.0.0.0";
|
||||
@@ -157,6 +172,11 @@ in
|
||||
am_lighthouse = netCfg.isLighthouse;
|
||||
hosts = netCfg.lighthouses;
|
||||
};
|
||||
relay = {
|
||||
am_relay = netCfg.isRelay;
|
||||
relays = netCfg.relays;
|
||||
use_relays = true;
|
||||
};
|
||||
listen = {
|
||||
host = netCfg.listen.host;
|
||||
port = netCfg.listen.port;
|
||||
@@ -173,25 +193,41 @@ in
|
||||
configFile = format.generate "nebula-config-${netName}.yml" settings;
|
||||
in
|
||||
{
|
||||
# Create systemd service for Nebula.
|
||||
# Create the systemd service for Nebula.
|
||||
"nebula@${netName}" = {
|
||||
description = "Nebula VPN service for ${netName}";
|
||||
wants = [ "basic.target" ];
|
||||
after = [ "basic.target" "network.target" ];
|
||||
before = [ "sshd.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = mkMerge [
|
||||
{
|
||||
Type = "simple";
|
||||
Restart = "always";
|
||||
ExecStart = "${netCfg.package}/bin/nebula -config ${configFile}";
|
||||
}
|
||||
# The service needs to launch as root to access the tun device, if it's enabled.
|
||||
(mkIf netCfg.tun.disable {
|
||||
User = networkId;
|
||||
Group = networkId;
|
||||
})
|
||||
];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
Restart = "always";
|
||||
ExecStart = "${netCfg.package}/bin/nebula -config ${configFile}";
|
||||
UMask = "0027";
|
||||
CapabilityBoundingSet = "CAP_NET_ADMIN";
|
||||
AmbientCapabilities = "CAP_NET_ADMIN";
|
||||
LockPersonality = true;
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = false; # needs access to /dev/net/tun (below)
|
||||
DeviceAllow = "/dev/net/tun rw";
|
||||
DevicePolicy = "closed";
|
||||
PrivateTmp = true;
|
||||
PrivateUsers = false; # CapabilityBoundingSet needs to apply to the host namespace
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
ProtectSystem = "strict";
|
||||
RestrictNamespaces = true;
|
||||
RestrictSUIDSGID = true;
|
||||
User = networkId;
|
||||
Group = networkId;
|
||||
};
|
||||
unitConfig.StartLimitIntervalSec = 0; # ensure Restart=always is always honoured (networks can go down for arbitrarily long)
|
||||
};
|
||||
}) enabledNetworks);
|
||||
@@ -202,7 +238,7 @@ in
|
||||
|
||||
# Create the service users and groups.
|
||||
users.users = mkMerge (mapAttrsToList (netName: netCfg:
|
||||
mkIf netCfg.tun.disable {
|
||||
{
|
||||
${nameToId netName} = {
|
||||
group = nameToId netName;
|
||||
description = "Nebula service user for network ${netName}";
|
||||
@@ -210,9 +246,8 @@ in
|
||||
};
|
||||
}) enabledNetworks);
|
||||
|
||||
users.groups = mkMerge (mapAttrsToList (netName: netCfg:
|
||||
mkIf netCfg.tun.disable {
|
||||
${nameToId netName} = {};
|
||||
}) enabledNetworks);
|
||||
users.groups = mkMerge (mapAttrsToList (netName: netCfg: {
|
||||
${nameToId netName} = {};
|
||||
}) enabledNetworks);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -57,7 +57,8 @@ let
|
||||
''}"}
|
||||
'';
|
||||
|
||||
in {
|
||||
in
|
||||
{
|
||||
description = "OpenVPN instance ‘${name}’";
|
||||
|
||||
wantedBy = optional cfg.autoStart "multi-user.target";
|
||||
@@ -70,6 +71,16 @@ let
|
||||
serviceConfig.Type = "notify";
|
||||
};
|
||||
|
||||
restartService = optionalAttrs cfg.restartAfterSleep {
|
||||
openvpn-restart = {
|
||||
wantedBy = [ "sleep.target" ];
|
||||
path = [ pkgs.procps ];
|
||||
script = "pkill --signal SIGHUP --exact openvpn";
|
||||
#SIGHUP makes openvpn process to self-exit and then it got restarted by systemd because of Restart=always
|
||||
description = "Sends a signal to OpenVPN process to trigger a restart after return from sleep";
|
||||
};
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@@ -82,7 +93,7 @@ in
|
||||
options = {
|
||||
|
||||
services.openvpn.servers = mkOption {
|
||||
default = {};
|
||||
default = { };
|
||||
|
||||
example = literalExpression ''
|
||||
{
|
||||
@@ -201,14 +212,21 @@ in
|
||||
|
||||
};
|
||||
|
||||
services.openvpn.restartAfterSleep = mkOption {
|
||||
default = true;
|
||||
type = types.bool;
|
||||
description = lib.mdDoc "Whether OpenVPN client should be restarted after sleep.";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf (cfg.servers != {}) {
|
||||
config = mkIf (cfg.servers != { }) {
|
||||
|
||||
systemd.services = listToAttrs (mapAttrsFlatten (name: value: nameValuePair "openvpn-${name}" (makeOpenVPNJob value name)) cfg.servers);
|
||||
systemd.services = (listToAttrs (mapAttrsFlatten (name: value: nameValuePair "openvpn-${name}" (makeOpenVPNJob value name)) cfg.servers))
|
||||
// restartService;
|
||||
|
||||
environment.systemPackages = [ openvpn ];
|
||||
|
||||
|
||||
@@ -13,11 +13,12 @@ let
|
||||
else pkgs.buildPackages.openssh;
|
||||
|
||||
# reports boolean as yes / no
|
||||
mkValueStringSshd = v:
|
||||
mkValueStringSshd = with lib; v:
|
||||
if isInt v then toString v
|
||||
else if isString v then v
|
||||
else if true == v then "yes"
|
||||
else if false == v then "no"
|
||||
else if isList v then concatStringsSep "," v
|
||||
else throw "unsupported type ${typeOf v}: ${(lib.generators.toPretty {}) v}";
|
||||
|
||||
# dont use the "=" operator
|
||||
@@ -104,6 +105,11 @@ in
|
||||
(mkRenamedOptionModule [ "services" "openssh" "useDns" ] [ "services" "openssh" "settings" "UseDns" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "permitRootLogin" ] [ "services" "openssh" "settings" "PermitRootLogin" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "logLevel" ] [ "services" "openssh" "settings" "LogLevel" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "macs" ] [ "services" "openssh" "settings" "Macs" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "cyphers" ] [ "services" "openssh" "settings" "Cyphers" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "kexAlgorithms" ] [ "services" "openssh" "settings" "KexAlgorithms" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "gatewayPorts" ] [ "services" "openssh" "settings" "GatewayPorts" ])
|
||||
(mkRenamedOptionModule [ "services" "openssh" "forwardX11" ] [ "services" "openssh" "settings" "X11Forwarding" ])
|
||||
];
|
||||
|
||||
###### interface
|
||||
@@ -131,14 +137,6 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
forwardX11 = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Whether to allow X11 connections to be forwarded.
|
||||
'';
|
||||
};
|
||||
|
||||
allowSFTP = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
@@ -167,16 +165,6 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
gatewayPorts = mkOption {
|
||||
type = types.str;
|
||||
default = "no";
|
||||
description = lib.mdDoc ''
|
||||
Specifies whether remote hosts are allowed to connect to
|
||||
ports forwarded for the client. See
|
||||
{manpage}`sshd_config(5)`.
|
||||
'';
|
||||
};
|
||||
|
||||
ports = mkOption {
|
||||
type = types.listOf types.port;
|
||||
default = [22];
|
||||
@@ -286,63 +274,6 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
kexAlgorithms = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [
|
||||
"sntrup761x25519-sha512@openssh.com"
|
||||
"curve25519-sha256"
|
||||
"curve25519-sha256@libssh.org"
|
||||
"diffie-hellman-group-exchange-sha256"
|
||||
];
|
||||
description = lib.mdDoc ''
|
||||
Allowed key exchange algorithms
|
||||
|
||||
Uses the lower bound recommended in both
|
||||
<https://stribika.github.io/2015/01/04/secure-secure-shell.html>
|
||||
and
|
||||
<https://infosec.mozilla.org/guidelines/openssh#modern-openssh-67>
|
||||
'';
|
||||
};
|
||||
|
||||
ciphers = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [
|
||||
"chacha20-poly1305@openssh.com"
|
||||
"aes256-gcm@openssh.com"
|
||||
"aes128-gcm@openssh.com"
|
||||
"aes256-ctr"
|
||||
"aes192-ctr"
|
||||
"aes128-ctr"
|
||||
];
|
||||
description = lib.mdDoc ''
|
||||
Allowed ciphers
|
||||
|
||||
Defaults to recommended settings from both
|
||||
<https://stribika.github.io/2015/01/04/secure-secure-shell.html>
|
||||
and
|
||||
<https://infosec.mozilla.org/guidelines/openssh#modern-openssh-67>
|
||||
'';
|
||||
};
|
||||
|
||||
macs = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [
|
||||
"hmac-sha2-512-etm@openssh.com"
|
||||
"hmac-sha2-256-etm@openssh.com"
|
||||
"umac-128-etm@openssh.com"
|
||||
"hmac-sha2-512"
|
||||
"hmac-sha2-256"
|
||||
"umac-128@openssh.com"
|
||||
];
|
||||
description = lib.mdDoc ''
|
||||
Allowed MACs
|
||||
|
||||
Defaults to recommended settings from both
|
||||
<https://stribika.github.io/2015/01/04/secure-secure-shell.html>
|
||||
and
|
||||
<https://infosec.mozilla.org/guidelines/openssh#modern-openssh-67>
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
settings = mkOption {
|
||||
@@ -374,7 +305,13 @@ in
|
||||
~/.ssh/authorized_keys from and sshd_config Match Host directives.
|
||||
'';
|
||||
};
|
||||
|
||||
X11Forwarding = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Whether to allow X11 connections to be forwarded.
|
||||
'';
|
||||
};
|
||||
PasswordAuthentication = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
@@ -396,6 +333,70 @@ in
|
||||
Specifies whether keyboard-interactive authentication is allowed.
|
||||
'';
|
||||
};
|
||||
GatewayPorts = mkOption {
|
||||
type = types.str;
|
||||
default = "no";
|
||||
description = lib.mdDoc ''
|
||||
Specifies whether remote hosts are allowed to connect to
|
||||
ports forwarded for the client. See
|
||||
{manpage}`sshd_config(5)`.
|
||||
'';
|
||||
};
|
||||
KexAlgorithms = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [
|
||||
"sntrup761x25519-sha512@openssh.com"
|
||||
"curve25519-sha256"
|
||||
"curve25519-sha256@libssh.org"
|
||||
"diffie-hellman-group-exchange-sha256"
|
||||
];
|
||||
description = lib.mdDoc ''
|
||||
Allowed key exchange algorithms
|
||||
|
||||
Uses the lower bound recommended in both
|
||||
<https://stribika.github.io/2015/01/04/secure-secure-shell.html>
|
||||
and
|
||||
<https://infosec.mozilla.org/guidelines/openssh#modern-openssh-67>
|
||||
'';
|
||||
};
|
||||
Macs = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [
|
||||
"hmac-sha2-512-etm@openssh.com"
|
||||
"hmac-sha2-256-etm@openssh.com"
|
||||
"umac-128-etm@openssh.com"
|
||||
"hmac-sha2-512"
|
||||
"hmac-sha2-256"
|
||||
"umac-128@openssh.com"
|
||||
];
|
||||
description = lib.mdDoc ''
|
||||
Allowed MACs
|
||||
|
||||
Defaults to recommended settings from both
|
||||
<https://stribika.github.io/2015/01/04/secure-secure-shell.html>
|
||||
and
|
||||
<https://infosec.mozilla.org/guidelines/openssh#modern-openssh-67>
|
||||
'';
|
||||
};
|
||||
Ciphers = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [
|
||||
"chacha20-poly1305@openssh.com"
|
||||
"aes256-gcm@openssh.com"
|
||||
"aes128-gcm@openssh.com"
|
||||
"aes256-ctr"
|
||||
"aes192-ctr"
|
||||
"aes128-ctr"
|
||||
];
|
||||
description = lib.mdDoc ''
|
||||
Allowed ciphers
|
||||
|
||||
Defaults to recommended settings from both
|
||||
<https://stribika.github.io/2015/01/04/secure-secure-shell.html>
|
||||
and
|
||||
<https://infosec.mozilla.org/guidelines/openssh#modern-openssh-67>
|
||||
'';
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
@@ -555,17 +556,10 @@ in
|
||||
${optionalString cfgc.setXAuthLocation ''
|
||||
XAuthLocation ${pkgs.xorg.xauth}/bin/xauth
|
||||
''}
|
||||
|
||||
X11Forwarding ${if cfg.forwardX11 then "yes" else "no"}
|
||||
|
||||
${optionalString cfg.allowSFTP ''
|
||||
Subsystem sftp ${cfg.sftpServerExecutable} ${concatStringsSep " " cfg.sftpFlags}
|
||||
''}
|
||||
|
||||
GatewayPorts ${cfg.gatewayPorts}
|
||||
|
||||
PrintMotd no # handled by pam_motd
|
||||
|
||||
AuthorizedKeysFile ${toString cfg.authorizedKeysFiles}
|
||||
${optionalString (cfg.authorizedKeysCommand != "none") ''
|
||||
AuthorizedKeysCommand ${cfg.authorizedKeysCommand}
|
||||
@@ -575,13 +569,9 @@ in
|
||||
${flip concatMapStrings cfg.hostKeys (k: ''
|
||||
HostKey ${k.path}
|
||||
'')}
|
||||
|
||||
KexAlgorithms ${concatStringsSep "," cfg.kexAlgorithms}
|
||||
Ciphers ${concatStringsSep "," cfg.ciphers}
|
||||
MACs ${concatStringsSep "," cfg.macs}
|
||||
'';
|
||||
|
||||
assertions = [{ assertion = if cfg.forwardX11 then cfgc.setXAuthLocation else true;
|
||||
assertions = [{ assertion = if cfg.settings.X11Forwarding then cfgc.setXAuthLocation else true;
|
||||
message = "cannot enable X11 forwarding without setting xauth location";}]
|
||||
++ forEach cfg.listenAddresses ({ addr, ... }: {
|
||||
assertion = addr != null;
|
||||
|
||||
@@ -115,7 +115,7 @@ in
|
||||
MEILI_HTTP_ADDR = "${cfg.listenAddress}:${toString cfg.listenPort}";
|
||||
MEILI_NO_ANALYTICS = toString cfg.noAnalytics;
|
||||
MEILI_ENV = cfg.environment;
|
||||
MEILI_DUMPS_DIR = "/var/lib/meilisearch/dumps";
|
||||
MEILI_DUMP_DIR = "/var/lib/meilisearch/dumps";
|
||||
MEILI_LOG_LEVEL = cfg.logLevel;
|
||||
MEILI_MAX_INDEX_SIZE = cfg.maxIndexSize;
|
||||
};
|
||||
|
||||
@@ -6,7 +6,7 @@ let
|
||||
cfg = config.services.privacyidea;
|
||||
opt = options.services.privacyidea;
|
||||
|
||||
uwsgi = pkgs.uwsgi.override { plugins = [ "python3" ]; python3 = pkgs.python39; };
|
||||
uwsgi = pkgs.uwsgi.override { plugins = [ "python3" ]; python3 = pkgs.python310; };
|
||||
python = uwsgi.python3;
|
||||
penv = python.withPackages (const [ pkgs.privacyidea ]);
|
||||
logCfg = pkgs.writeText "privacyidea-log.cfg" ''
|
||||
@@ -41,7 +41,7 @@ let
|
||||
|
||||
piCfgFile = pkgs.writeText "privacyidea.cfg" ''
|
||||
SUPERUSER_REALM = [ '${concatStringsSep "', '" cfg.superuserRealm}' ]
|
||||
SQLALCHEMY_DATABASE_URI = 'postgresql:///privacyidea'
|
||||
SQLALCHEMY_DATABASE_URI = 'postgresql+psycopg2:///privacyidea'
|
||||
SECRET_KEY = '${cfg.secretKey}'
|
||||
PI_PEPPER = '${cfg.pepper}'
|
||||
PI_ENCFILE = '${cfg.encFile}'
|
||||
|
||||
@@ -203,7 +203,8 @@ let
|
||||
proxy_send_timeout ${cfg.proxyTimeout};
|
||||
proxy_read_timeout ${cfg.proxyTimeout};
|
||||
proxy_http_version 1.1;
|
||||
# don't let clients close the keep-alive connection to upstream
|
||||
# don't let clients close the keep-alive connection to upstream. See the nginx blog for details:
|
||||
# https://www.nginx.com/blog/avoiding-top-10-nginx-configuration-mistakes/#no-keepalives
|
||||
proxy_set_header "Connection" "";
|
||||
include ${recommendedProxyConfig};
|
||||
''}
|
||||
|
||||
@@ -134,6 +134,7 @@ in {
|
||||
cloud-init-hostname = handleTest ./cloud-init-hostname.nix {};
|
||||
cloudlog = handleTest ./cloudlog.nix {};
|
||||
cntr = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cntr.nix {};
|
||||
cockpit = handleTest ./cockpit.nix {};
|
||||
cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {};
|
||||
collectd = handleTest ./collectd.nix {};
|
||||
connman = handleTest ./connman.nix {};
|
||||
|
||||
@@ -0,0 +1,135 @@
|
||||
import ./make-test-python.nix (
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
user = "alice"; # from ./common/user-account.nix
|
||||
password = "foobar"; # from ./common/user-account.nix
|
||||
in {
|
||||
name = "cockpit";
|
||||
meta = {
|
||||
maintainers = with lib.maintainers; [ lucasew ];
|
||||
};
|
||||
nodes = {
|
||||
server = { config, ... }: {
|
||||
imports = [ ./common/user-account.nix ];
|
||||
security.polkit.enable = true;
|
||||
users.users.${user} = {
|
||||
extraGroups = [ "wheel" ];
|
||||
};
|
||||
services.cockpit = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
settings = {
|
||||
WebService = {
|
||||
Origins = "https://server:9090";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
client = { config, ... }: {
|
||||
imports = [ ./common/user-account.nix ];
|
||||
environment.systemPackages = let
|
||||
seleniumScript = pkgs.writers.writePython3Bin "selenium-script" {
|
||||
libraries = with pkgs.python3Packages; [ selenium ];
|
||||
} ''
|
||||
from selenium import webdriver
|
||||
from selenium.webdriver.common.by import By
|
||||
from selenium.webdriver.firefox.options import Options
|
||||
from selenium.webdriver.support.ui import WebDriverWait
|
||||
from selenium.webdriver.support import expected_conditions as EC
|
||||
from time import sleep
|
||||
|
||||
|
||||
def log(msg):
|
||||
from sys import stderr
|
||||
print(f"[*] {msg}", file=stderr)
|
||||
|
||||
|
||||
log("Initializing")
|
||||
|
||||
options = Options()
|
||||
options.add_argument("--headless")
|
||||
|
||||
driver = webdriver.Firefox(options=options)
|
||||
|
||||
driver.implicitly_wait(10)
|
||||
|
||||
log("Opening homepage")
|
||||
driver.get("https://server:9090")
|
||||
|
||||
wait = WebDriverWait(driver, 60)
|
||||
|
||||
|
||||
def wait_elem(by, query):
|
||||
wait.until(EC.presence_of_element_located((by, query)))
|
||||
|
||||
|
||||
def wait_title_contains(title):
|
||||
wait.until(EC.title_contains(title))
|
||||
|
||||
|
||||
def find_element(by, query):
|
||||
return driver.find_element(by, query)
|
||||
|
||||
|
||||
def set_value(elem, value):
|
||||
script = 'arguments[0].value = arguments[1]'
|
||||
return driver.execute_script(script, elem, value)
|
||||
|
||||
|
||||
log("Waiting for the homepage to load")
|
||||
|
||||
# cockpit sets initial title as hostname
|
||||
wait_title_contains("server")
|
||||
wait_elem(By.CSS_SELECTOR, 'input#login-user-input')
|
||||
|
||||
log("Homepage loaded!")
|
||||
|
||||
log("Filling out username")
|
||||
login_input = find_element(By.CSS_SELECTOR, 'input#login-user-input')
|
||||
set_value(login_input, "${user}")
|
||||
|
||||
log("Filling out password")
|
||||
password_input = find_element(By.CSS_SELECTOR, 'input#login-password-input')
|
||||
set_value(password_input, "${password}")
|
||||
|
||||
log("Submiting credentials for login")
|
||||
driver.find_element(By.CSS_SELECTOR, 'button#login-button').click()
|
||||
|
||||
# driver.implicitly_wait(1)
|
||||
# driver.get("https://server:9090/system")
|
||||
|
||||
log("Waiting dashboard to load")
|
||||
wait_title_contains("${user}@server")
|
||||
|
||||
log("Waiting for the frontend to initalize")
|
||||
sleep(1)
|
||||
|
||||
log("Looking for that banner that tells about limited access")
|
||||
container_iframe = find_element(By.CSS_SELECTOR, 'iframe.container-frame')
|
||||
driver.switch_to.frame(container_iframe)
|
||||
|
||||
assert "Web console is running in limited access mode" in driver.page_source
|
||||
|
||||
driver.close()
|
||||
'';
|
||||
in with pkgs; [ firefox-unwrapped geckodriver seleniumScript ];
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
server.wait_for_open_port(9090)
|
||||
server.wait_for_unit("network.target")
|
||||
server.wait_for_unit("multi-user.target")
|
||||
server.systemctl("start", "polkit")
|
||||
|
||||
client.wait_for_unit("multi-user.target")
|
||||
|
||||
client.succeed("curl -k https://server:9090 -o /dev/stderr")
|
||||
print(client.succeed("whoami"))
|
||||
client.succeed('PYTHONUNBUFFERED=1 selenium-script')
|
||||
'';
|
||||
}
|
||||
)
|
||||
@@ -23,7 +23,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
|
||||
|
||||
testScript = ''
|
||||
from subprocess import run
|
||||
machine.wait_for_unit("cups.service")
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
for name in ("opt", "noopt"):
|
||||
text = f"test text {name}".upper()
|
||||
machine.wait_until_succeeds(f"lpstat -v {name}")
|
||||
|
||||
+143
-58
@@ -10,6 +10,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: let
|
||||
environment.systemPackages = [ pkgs.nebula ];
|
||||
users.users.root.openssh.authorizedKeys.keys = [ snakeOilPublicKey ];
|
||||
services.openssh.enable = true;
|
||||
networking.interfaces.eth1.useDHCP = false;
|
||||
|
||||
services.nebula.networks.smoke = {
|
||||
# Note that these paths won't exist when the machine is first booted.
|
||||
@@ -30,13 +31,14 @@ in
|
||||
|
||||
lighthouse = { ... } @ args:
|
||||
makeNebulaNode args "lighthouse" {
|
||||
networking.interfaces.eth1.ipv4.addresses = [{
|
||||
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [{
|
||||
address = "192.168.1.1";
|
||||
prefixLength = 24;
|
||||
}];
|
||||
|
||||
services.nebula.networks.smoke = {
|
||||
isLighthouse = true;
|
||||
isRelay = true;
|
||||
firewall = {
|
||||
outbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
inbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
@@ -44,9 +46,9 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
node2 = { ... } @ args:
|
||||
makeNebulaNode args "node2" {
|
||||
networking.interfaces.eth1.ipv4.addresses = [{
|
||||
allowAny = { ... } @ args:
|
||||
makeNebulaNode args "allowAny" {
|
||||
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [{
|
||||
address = "192.168.1.2";
|
||||
prefixLength = 24;
|
||||
}];
|
||||
@@ -55,6 +57,7 @@ in
|
||||
staticHostMap = { "10.0.100.1" = [ "192.168.1.1:4242" ]; };
|
||||
isLighthouse = false;
|
||||
lighthouses = [ "10.0.100.1" ];
|
||||
relays = [ "10.0.100.1" ];
|
||||
firewall = {
|
||||
outbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
inbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
@@ -62,9 +65,9 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
node3 = { ... } @ args:
|
||||
makeNebulaNode args "node3" {
|
||||
networking.interfaces.eth1.ipv4.addresses = [{
|
||||
allowFromLighthouse = { ... } @ args:
|
||||
makeNebulaNode args "allowFromLighthouse" {
|
||||
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [{
|
||||
address = "192.168.1.3";
|
||||
prefixLength = 24;
|
||||
}];
|
||||
@@ -73,6 +76,7 @@ in
|
||||
staticHostMap = { "10.0.100.1" = [ "192.168.1.1:4242" ]; };
|
||||
isLighthouse = false;
|
||||
lighthouses = [ "10.0.100.1" ];
|
||||
relays = [ "10.0.100.1" ];
|
||||
firewall = {
|
||||
outbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
inbound = [ { port = "any"; proto = "any"; host = "lighthouse"; } ];
|
||||
@@ -80,9 +84,9 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
node4 = { ... } @ args:
|
||||
makeNebulaNode args "node4" {
|
||||
networking.interfaces.eth1.ipv4.addresses = [{
|
||||
allowToLighthouse = { ... } @ args:
|
||||
makeNebulaNode args "allowToLighthouse" {
|
||||
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [{
|
||||
address = "192.168.1.4";
|
||||
prefixLength = 24;
|
||||
}];
|
||||
@@ -92,6 +96,7 @@ in
|
||||
staticHostMap = { "10.0.100.1" = [ "192.168.1.1:4242" ]; };
|
||||
isLighthouse = false;
|
||||
lighthouses = [ "10.0.100.1" ];
|
||||
relays = [ "10.0.100.1" ];
|
||||
firewall = {
|
||||
outbound = [ { port = "any"; proto = "any"; host = "lighthouse"; } ];
|
||||
inbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
@@ -99,9 +104,9 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
node5 = { ... } @ args:
|
||||
makeNebulaNode args "node5" {
|
||||
networking.interfaces.eth1.ipv4.addresses = [{
|
||||
disabled = { ... } @ args:
|
||||
makeNebulaNode args "disabled" {
|
||||
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [{
|
||||
address = "192.168.1.5";
|
||||
prefixLength = 24;
|
||||
}];
|
||||
@@ -111,6 +116,7 @@ in
|
||||
staticHostMap = { "10.0.100.1" = [ "192.168.1.1:4242" ]; };
|
||||
isLighthouse = false;
|
||||
lighthouses = [ "10.0.100.1" ];
|
||||
relays = [ "10.0.100.1" ];
|
||||
firewall = {
|
||||
outbound = [ { port = "any"; proto = "any"; host = "lighthouse"; } ];
|
||||
inbound = [ { port = "any"; proto = "any"; host = "any"; } ];
|
||||
@@ -123,12 +129,14 @@ in
|
||||
testScript = let
|
||||
|
||||
setUpPrivateKey = name: ''
|
||||
${name}.succeed(
|
||||
"mkdir -p /root/.ssh",
|
||||
"chown 700 /root/.ssh",
|
||||
"cat '${snakeOilPrivateKey}' > /root/.ssh/id_snakeoil",
|
||||
"chown 600 /root/.ssh/id_snakeoil",
|
||||
)
|
||||
${name}.start()
|
||||
${name}.succeed(
|
||||
"mkdir -p /root/.ssh",
|
||||
"chown 700 /root/.ssh",
|
||||
"cat '${snakeOilPrivateKey}' > /root/.ssh/id_snakeoil",
|
||||
"chown 600 /root/.ssh/id_snakeoil",
|
||||
"mkdir -p /root"
|
||||
)
|
||||
'';
|
||||
|
||||
# From what I can tell, StrictHostKeyChecking=no is necessary for ssh to work between machines.
|
||||
@@ -146,26 +154,48 @@ in
|
||||
${name}.succeed(
|
||||
"mkdir -p /etc/nebula",
|
||||
"nebula-cert keygen -out-key /etc/nebula/${name}.key -out-pub /etc/nebula/${name}.pub",
|
||||
"scp ${sshOpts} /etc/nebula/${name}.pub 192.168.1.1:/tmp/${name}.pub",
|
||||
"scp ${sshOpts} /etc/nebula/${name}.pub root@192.168.1.1:/root/${name}.pub",
|
||||
)
|
||||
lighthouse.succeed(
|
||||
'nebula-cert sign -ca-crt /etc/nebula/ca.crt -ca-key /etc/nebula/ca.key -name "${name}" -groups "${name}" -ip "${ip}" -in-pub /tmp/${name}.pub -out-crt /tmp/${name}.crt',
|
||||
'nebula-cert sign -ca-crt /etc/nebula/ca.crt -ca-key /etc/nebula/ca.key -name "${name}" -groups "${name}" -ip "${ip}" -in-pub /root/${name}.pub -out-crt /root/${name}.crt'
|
||||
)
|
||||
${name}.succeed(
|
||||
"scp ${sshOpts} 192.168.1.1:/tmp/${name}.crt /etc/nebula/${name}.crt",
|
||||
"scp ${sshOpts} 192.168.1.1:/etc/nebula/ca.crt /etc/nebula/ca.crt",
|
||||
"scp ${sshOpts} root@192.168.1.1:/root/${name}.crt /etc/nebula/${name}.crt",
|
||||
"scp ${sshOpts} root@192.168.1.1:/etc/nebula/ca.crt /etc/nebula/ca.crt",
|
||||
'(id nebula-smoke >/dev/null && chown -R nebula-smoke:nebula-smoke /etc/nebula) || true'
|
||||
)
|
||||
'';
|
||||
|
||||
in ''
|
||||
start_all()
|
||||
getPublicIp = node: ''
|
||||
${node}.succeed("ip --brief addr show eth1 | awk '{print $3}' | tail -n1 | cut -d/ -f1").strip()
|
||||
'';
|
||||
|
||||
# Never do this for anything security critical! (Thankfully it's just a test.)
|
||||
# Restart Nebula right after the mutual block and/or restore so the state is fresh.
|
||||
blockTrafficBetween = nodeA: nodeB: ''
|
||||
node_a = ${getPublicIp nodeA}
|
||||
node_b = ${getPublicIp nodeB}
|
||||
${nodeA}.succeed("iptables -I INPUT -s " + node_b + " -j DROP")
|
||||
${nodeB}.succeed("iptables -I INPUT -s " + node_a + " -j DROP")
|
||||
${nodeA}.systemctl("restart nebula@smoke.service")
|
||||
${nodeB}.systemctl("restart nebula@smoke.service")
|
||||
'';
|
||||
allowTrafficBetween = nodeA: nodeB: ''
|
||||
node_a = ${getPublicIp nodeA}
|
||||
node_b = ${getPublicIp nodeB}
|
||||
${nodeA}.succeed("iptables -D INPUT -s " + node_b + " -j DROP")
|
||||
${nodeB}.succeed("iptables -D INPUT -s " + node_a + " -j DROP")
|
||||
${nodeA}.systemctl("restart nebula@smoke.service")
|
||||
${nodeB}.systemctl("restart nebula@smoke.service")
|
||||
'';
|
||||
in ''
|
||||
# Create the certificate and sign the lighthouse's keys.
|
||||
${setUpPrivateKey "lighthouse"}
|
||||
lighthouse.succeed(
|
||||
"mkdir -p /etc/nebula",
|
||||
'nebula-cert ca -name "Smoke Test" -out-crt /etc/nebula/ca.crt -out-key /etc/nebula/ca.key',
|
||||
'nebula-cert sign -ca-crt /etc/nebula/ca.crt -ca-key /etc/nebula/ca.key -name "lighthouse" -groups "lighthouse" -ip "10.0.100.1/24" -out-crt /etc/nebula/lighthouse.crt -out-key /etc/nebula/lighthouse.key',
|
||||
'chown -R nebula-smoke:nebula-smoke /etc/nebula'
|
||||
)
|
||||
|
||||
# Reboot the lighthouse and verify that the nebula service comes up on boot.
|
||||
@@ -175,49 +205,104 @@ in
|
||||
lighthouse.wait_for_unit("nebula@smoke.service")
|
||||
lighthouse.succeed("ping -c5 10.0.100.1")
|
||||
|
||||
# Create keys for node2's nebula service and test that it comes up.
|
||||
${setUpPrivateKey "node2"}
|
||||
${signKeysFor "node2" "10.0.100.2/24"}
|
||||
${restartAndCheckNebula "node2" "10.0.100.2"}
|
||||
# Create keys for allowAny's nebula service and test that it comes up.
|
||||
${setUpPrivateKey "allowAny"}
|
||||
${signKeysFor "allowAny" "10.0.100.2/24"}
|
||||
${restartAndCheckNebula "allowAny" "10.0.100.2"}
|
||||
|
||||
# Create keys for node3's nebula service and test that it comes up.
|
||||
${setUpPrivateKey "node3"}
|
||||
${signKeysFor "node3" "10.0.100.3/24"}
|
||||
${restartAndCheckNebula "node3" "10.0.100.3"}
|
||||
# Create keys for allowFromLighthouse's nebula service and test that it comes up.
|
||||
${setUpPrivateKey "allowFromLighthouse"}
|
||||
${signKeysFor "allowFromLighthouse" "10.0.100.3/24"}
|
||||
${restartAndCheckNebula "allowFromLighthouse" "10.0.100.3"}
|
||||
|
||||
# Create keys for node4's nebula service and test that it comes up.
|
||||
${setUpPrivateKey "node4"}
|
||||
${signKeysFor "node4" "10.0.100.4/24"}
|
||||
${restartAndCheckNebula "node4" "10.0.100.4"}
|
||||
# Create keys for allowToLighthouse's nebula service and test that it comes up.
|
||||
${setUpPrivateKey "allowToLighthouse"}
|
||||
${signKeysFor "allowToLighthouse" "10.0.100.4/24"}
|
||||
${restartAndCheckNebula "allowToLighthouse" "10.0.100.4"}
|
||||
|
||||
# Create keys for node4's nebula service and test that it does not come up.
|
||||
${setUpPrivateKey "node5"}
|
||||
${signKeysFor "node5" "10.0.100.5/24"}
|
||||
node5.fail("systemctl status nebula@smoke.service")
|
||||
node5.fail("ping -c5 10.0.100.5")
|
||||
# Create keys for disabled's nebula service and test that it does not come up.
|
||||
${setUpPrivateKey "disabled"}
|
||||
${signKeysFor "disabled" "10.0.100.5/24"}
|
||||
disabled.fail("systemctl status nebula@smoke.service")
|
||||
disabled.fail("ping -c5 10.0.100.5")
|
||||
|
||||
# The lighthouse can ping node2 and node3 but not node5
|
||||
# The lighthouse can ping allowAny and allowFromLighthouse but not disabled
|
||||
lighthouse.succeed("ping -c3 10.0.100.2")
|
||||
lighthouse.succeed("ping -c3 10.0.100.3")
|
||||
lighthouse.fail("ping -c3 10.0.100.5")
|
||||
|
||||
# node2 can ping the lighthouse, but not node3 because of its inbound firewall
|
||||
node2.succeed("ping -c3 10.0.100.1")
|
||||
node2.fail("ping -c3 10.0.100.3")
|
||||
# allowAny can ping the lighthouse, but not allowFromLighthouse because of its inbound firewall
|
||||
allowAny.succeed("ping -c3 10.0.100.1")
|
||||
allowAny.fail("ping -c3 10.0.100.3")
|
||||
|
||||
# node3 can ping the lighthouse and node2
|
||||
node3.succeed("ping -c3 10.0.100.1")
|
||||
node3.succeed("ping -c3 10.0.100.2")
|
||||
# allowFromLighthouse can ping the lighthouse and allowAny
|
||||
allowFromLighthouse.succeed("ping -c3 10.0.100.1")
|
||||
allowFromLighthouse.succeed("ping -c3 10.0.100.2")
|
||||
|
||||
# node4 can ping the lighthouse but not node2 or node3
|
||||
node4.succeed("ping -c3 10.0.100.1")
|
||||
node4.fail("ping -c3 10.0.100.2")
|
||||
node4.fail("ping -c3 10.0.100.3")
|
||||
# block allowFromLighthouse <-> allowAny, and allowFromLighthouse -> allowAny should still work.
|
||||
${blockTrafficBetween "allowFromLighthouse" "allowAny"}
|
||||
allowFromLighthouse.succeed("ping -c10 10.0.100.2")
|
||||
${allowTrafficBetween "allowFromLighthouse" "allowAny"}
|
||||
allowFromLighthouse.succeed("ping -c10 10.0.100.2")
|
||||
|
||||
# node2 can ping node3 now that node3 pinged it first
|
||||
node2.succeed("ping -c3 10.0.100.3")
|
||||
# node4 can ping node2 if node2 pings it first
|
||||
node2.succeed("ping -c3 10.0.100.4")
|
||||
node4.succeed("ping -c3 10.0.100.2")
|
||||
# allowToLighthouse can ping the lighthouse but not allowAny or allowFromLighthouse
|
||||
allowToLighthouse.succeed("ping -c3 10.0.100.1")
|
||||
allowToLighthouse.fail("ping -c3 10.0.100.2")
|
||||
allowToLighthouse.fail("ping -c3 10.0.100.3")
|
||||
|
||||
# allowAny can ping allowFromLighthouse now that allowFromLighthouse pinged it first
|
||||
allowAny.succeed("ping -c3 10.0.100.3")
|
||||
|
||||
# block allowAny <-> allowFromLighthouse, and allowAny -> allowFromLighthouse should still work.
|
||||
${blockTrafficBetween "allowAny" "allowFromLighthouse"}
|
||||
allowFromLighthouse.succeed("ping -c10 10.0.100.2")
|
||||
allowAny.succeed("ping -c10 10.0.100.3")
|
||||
${allowTrafficBetween "allowAny" "allowFromLighthouse"}
|
||||
allowFromLighthouse.succeed("ping -c10 10.0.100.2")
|
||||
allowAny.succeed("ping -c10 10.0.100.3")
|
||||
|
||||
# allowToLighthouse can ping allowAny if allowAny pings it first
|
||||
allowAny.succeed("ping -c3 10.0.100.4")
|
||||
allowToLighthouse.succeed("ping -c3 10.0.100.2")
|
||||
|
||||
# block allowToLighthouse <-> allowAny, and allowAny <-> allowToLighthouse should still work.
|
||||
${blockTrafficBetween "allowAny" "allowToLighthouse"}
|
||||
allowAny.succeed("ping -c10 10.0.100.4")
|
||||
allowToLighthouse.succeed("ping -c10 10.0.100.2")
|
||||
${allowTrafficBetween "allowAny" "allowToLighthouse"}
|
||||
allowAny.succeed("ping -c10 10.0.100.4")
|
||||
allowToLighthouse.succeed("ping -c10 10.0.100.2")
|
||||
|
||||
# block lighthouse <-> allowFromLighthouse and allowAny <-> allowFromLighthouse; allowFromLighthouse won't get to allowAny
|
||||
${blockTrafficBetween "allowFromLighthouse" "lighthouse"}
|
||||
${blockTrafficBetween "allowFromLighthouse" "allowAny"}
|
||||
allowFromLighthouse.fail("ping -c3 10.0.100.2")
|
||||
${allowTrafficBetween "allowFromLighthouse" "lighthouse"}
|
||||
${allowTrafficBetween "allowFromLighthouse" "allowAny"}
|
||||
allowFromLighthouse.succeed("ping -c3 10.0.100.2")
|
||||
|
||||
# block lighthouse <-> allowAny, allowAny <-> allowFromLighthouse, and allowAny <-> allowToLighthouse; it won't get to allowFromLighthouse or allowToLighthouse
|
||||
${blockTrafficBetween "allowAny" "lighthouse"}
|
||||
${blockTrafficBetween "allowAny" "allowFromLighthouse"}
|
||||
${blockTrafficBetween "allowAny" "allowToLighthouse"}
|
||||
allowFromLighthouse.fail("ping -c3 10.0.100.2")
|
||||
allowAny.fail("ping -c3 10.0.100.3")
|
||||
allowAny.fail("ping -c3 10.0.100.4")
|
||||
${allowTrafficBetween "allowAny" "lighthouse"}
|
||||
${allowTrafficBetween "allowAny" "allowFromLighthouse"}
|
||||
${allowTrafficBetween "allowAny" "allowToLighthouse"}
|
||||
allowFromLighthouse.succeed("ping -c3 10.0.100.2")
|
||||
allowAny.succeed("ping -c3 10.0.100.3")
|
||||
allowAny.succeed("ping -c3 10.0.100.4")
|
||||
|
||||
# block lighthouse <-> allowToLighthouse and allowToLighthouse <-> allowAny; it won't get to allowAny
|
||||
${blockTrafficBetween "allowToLighthouse" "lighthouse"}
|
||||
${blockTrafficBetween "allowToLighthouse" "allowAny"}
|
||||
allowAny.fail("ping -c3 10.0.100.4")
|
||||
allowToLighthouse.fail("ping -c3 10.0.100.2")
|
||||
${allowTrafficBetween "allowToLighthouse" "lighthouse"}
|
||||
${allowTrafficBetween "allowToLighthouse" "allowAny"}
|
||||
allowAny.succeed("ping -c3 10.0.100.4")
|
||||
allowToLighthouse.succeed("ping -c3 10.0.100.2")
|
||||
'';
|
||||
})
|
||||
|
||||
+112
-106
@@ -1,6 +1,6 @@
|
||||
import ./make-test-python.nix ({ pkgs, lib, buildDeps ? [ ], pythonEnv ? [ ], ... }:
|
||||
|
||||
/*
|
||||
/*
|
||||
This test suite replaces the typical pytestCheckHook function in python
|
||||
packages. Pgadmin4 test suite needs a running and configured postgresql
|
||||
server. This is why this test exists.
|
||||
@@ -17,117 +17,123 @@ import ./make-test-python.nix ({ pkgs, lib, buildDeps ? [ ], pythonEnv ? [ ], ..
|
||||
|
||||
*/
|
||||
|
||||
let
|
||||
pgadmin4SrcDir = "/pgadmin";
|
||||
pgadmin4Dir = "/var/lib/pgadmin";
|
||||
pgadmin4LogDir = "/var/log/pgadmin";
|
||||
let
|
||||
pgadmin4SrcDir = "/pgadmin";
|
||||
pgadmin4Dir = "/var/lib/pgadmin";
|
||||
pgadmin4LogDir = "/var/log/pgadmin";
|
||||
|
||||
in
|
||||
{
|
||||
name = "pgadmin4";
|
||||
meta.maintainers = with lib.maintainers; [ gador ];
|
||||
in
|
||||
{
|
||||
name = "pgadmin4";
|
||||
meta.maintainers = with lib.maintainers; [ gador ];
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
imports = [ ./common/x11.nix ];
|
||||
# needed because pgadmin 6.8 will fail, if those dependencies get updated
|
||||
nixpkgs.overlays = [
|
||||
(self: super: {
|
||||
pythonPackages = pythonEnv;
|
||||
})
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
imports = [ ./common/x11.nix ];
|
||||
# needed because pgadmin 6.8 will fail, if those dependencies get updated
|
||||
nixpkgs.overlays = [
|
||||
(self: super: {
|
||||
pythonPackages = pythonEnv;
|
||||
})
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
pgadmin4
|
||||
postgresql
|
||||
chromedriver
|
||||
chromium
|
||||
# include the same packages as in pgadmin minus speaklater3
|
||||
(python3.withPackages
|
||||
(ps: buildDeps ++
|
||||
[
|
||||
# test suite package requirements
|
||||
pythonPackages.testscenarios
|
||||
pythonPackages.selenium
|
||||
])
|
||||
)
|
||||
];
|
||||
services.postgresql = {
|
||||
enable = true;
|
||||
authentication = ''
|
||||
host all all localhost trust
|
||||
'';
|
||||
ensureUsers = [
|
||||
{
|
||||
name = "postgres";
|
||||
ensurePermissions = {
|
||||
"DATABASE \"postgres\"" = "ALL PRIVILEGES";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
pgadmin4
|
||||
postgresql
|
||||
chromedriver
|
||||
chromium
|
||||
# include the same packages as in pgadmin minus speaklater3
|
||||
(python3.withPackages
|
||||
(ps: buildDeps ++
|
||||
[
|
||||
# test suite package requirements
|
||||
pythonPackages.testscenarios
|
||||
pythonPackages.selenium
|
||||
])
|
||||
)
|
||||
];
|
||||
services.postgresql = {
|
||||
enable = true;
|
||||
authentication = ''
|
||||
host all all localhost trust
|
||||
'';
|
||||
ensureUsers = [
|
||||
{
|
||||
name = "postgres";
|
||||
ensurePermissions = {
|
||||
"DATABASE \"postgres\"" = "ALL PRIVILEGES";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("postgresql")
|
||||
testScript = ''
|
||||
machine.wait_for_unit("postgresql")
|
||||
|
||||
# pgadmin4 needs its data and log directories
|
||||
# pgadmin4 needs its data and log directories
|
||||
machine.succeed(
|
||||
"mkdir -p ${pgadmin4Dir} \
|
||||
&& mkdir -p ${pgadmin4LogDir} \
|
||||
&& mkdir -p ${pgadmin4SrcDir}"
|
||||
)
|
||||
|
||||
machine.succeed(
|
||||
"tar xvzf ${pkgs.pgadmin4.src} -C ${pgadmin4SrcDir}"
|
||||
)
|
||||
|
||||
machine.wait_for_file("${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/README.md")
|
||||
|
||||
# set paths and config for tests
|
||||
# also ensure Server Mode is set to false, which will automatically exclude some unnecessary tests.
|
||||
# see https://github.com/pgadmin-org/pgadmin4/blob/fd1c26408bbf154fa455a49ee5c12895933833a3/web/regression/runtests.py#L217-L226
|
||||
machine.succeed(
|
||||
"cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version} \
|
||||
&& cp -v web/regression/test_config.json.in web/regression/test_config.json \
|
||||
&& sed -i 's|PostgreSQL 9.4|PostgreSQL|' web/regression/test_config.json \
|
||||
&& sed -i 's|/opt/PostgreSQL/9.4/bin/|${pkgs.postgresql}/bin|' web/regression/test_config.json \
|
||||
&& sed -i 's|\"headless_chrome\": false|\"headless_chrome\": true|' web/regression/test_config.json \
|
||||
&& sed -i 's|builtins.SERVER_MODE = None|builtins.SERVER_MODE = False|' web/regression/runtests.py"
|
||||
)
|
||||
|
||||
# adapt chrome config to run within a sandbox without GUI
|
||||
# see https://stackoverflow.com/questions/50642308/webdriverexception-unknown-error-devtoolsactiveport-file-doesnt-exist-while-t#50642913
|
||||
# add chrome binary path. use spaces to satisfy python indention (tabs throw an error)
|
||||
machine.succeed(
|
||||
"cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version} \
|
||||
&& sed -i '\|options.add_argument(\"--disable-infobars\")|a \ \ \ \ \ \ \ \ options.binary_location = \"${pkgs.chromium}/bin/chromium\"' web/regression/runtests.py \
|
||||
&& sed -i '\|options.add_argument(\"--no-sandbox\")|a \ \ \ \ \ \ \ \ options.add_argument(\"--headless\")' web/regression/runtests.py \
|
||||
&& sed -i '\|options.add_argument(\"--disable-infobars\")|a \ \ \ \ \ \ \ \ options.add_argument(\"--disable-dev-shm-usage\")' web/regression/runtests.py \
|
||||
&& sed -i 's|(chrome_options=options)|(executable_path=\"${pkgs.chromedriver}/bin/chromedriver\", chrome_options=options)|' web/regression/runtests.py \
|
||||
&& sed -i 's|driver_local.maximize_window()||' web/regression/runtests.py"
|
||||
)
|
||||
|
||||
# don't bother to test kerberos authentication
|
||||
excluded_tests = [ "browser.tests.test_kerberos_with_mocking",
|
||||
]
|
||||
|
||||
with subtest("run browser test"):
|
||||
machine.succeed(
|
||||
'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
|
||||
&& python regression/runtests.py \
|
||||
--pkg browser \
|
||||
--exclude ' + ','.join(excluded_tests)
|
||||
)
|
||||
|
||||
with subtest("run resql test"):
|
||||
machine.succeed(
|
||||
"mkdir -p ${pgadmin4Dir} \
|
||||
&& mkdir -p ${pgadmin4LogDir} \
|
||||
&& mkdir -p ${pgadmin4SrcDir}"
|
||||
'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
|
||||
&& python regression/runtests.py --pkg resql'
|
||||
)
|
||||
|
||||
machine.succeed(
|
||||
"tar xvzf ${pkgs.pgadmin4.src} -C ${pgadmin4SrcDir}"
|
||||
)
|
||||
|
||||
machine.wait_for_file("${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/README.md")
|
||||
|
||||
# set paths and config for tests
|
||||
machine.succeed(
|
||||
"cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version} \
|
||||
&& cp -v web/regression/test_config.json.in web/regression/test_config.json \
|
||||
&& sed -i 's|PostgreSQL 9.4|PostgreSQL|' web/regression/test_config.json \
|
||||
&& sed -i 's|/opt/PostgreSQL/9.4/bin/|${pkgs.postgresql}/bin|' web/regression/test_config.json \
|
||||
&& sed -i 's|\"headless_chrome\": false|\"headless_chrome\": true|' web/regression/test_config.json"
|
||||
)
|
||||
|
||||
# adapt chrome config to run within a sandbox without GUI
|
||||
# see https://stackoverflow.com/questions/50642308/webdriverexception-unknown-error-devtoolsactiveport-file-doesnt-exist-while-t#50642913
|
||||
# add chrome binary path. use spaces to satisfy python indention (tabs throw an error)
|
||||
# this works for selenium 3 (currently used), but will need to be updated
|
||||
# to work with "from selenium.webdriver.chrome.service import Service" in selenium 4
|
||||
machine.succeed(
|
||||
"cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version} \
|
||||
&& sed -i '\|options.add_argument(\"--disable-infobars\")|a \ \ \ \ \ \ \ \ options.binary_location = \"${pkgs.chromium}/bin/chromium\"' web/regression/runtests.py \
|
||||
&& sed -i '\|options.add_argument(\"--no-sandbox\")|a \ \ \ \ \ \ \ \ options.add_argument(\"--headless\")' web/regression/runtests.py \
|
||||
&& sed -i '\|options.add_argument(\"--disable-infobars\")|a \ \ \ \ \ \ \ \ options.add_argument(\"--disable-dev-shm-usage\")' web/regression/runtests.py \
|
||||
&& sed -i 's|(chrome_options=options)|(executable_path=\"${pkgs.chromedriver}/bin/chromedriver\", chrome_options=options)|' web/regression/runtests.py \
|
||||
&& sed -i 's|driver_local.maximize_window()||' web/regression/runtests.py"
|
||||
)
|
||||
|
||||
# Don't bother to test LDAP or kerberos authentication
|
||||
with subtest("run browser test"):
|
||||
machine.succeed(
|
||||
'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
|
||||
&& python regression/runtests.py \
|
||||
--pkg browser \
|
||||
--exclude browser.tests.test_ldap_login.LDAPLoginTestCase,browser.tests.test_ldap_login,browser.tests.test_kerberos_with_mocking'
|
||||
)
|
||||
|
||||
# fontconfig is necessary for chromium to run
|
||||
# https://github.com/NixOS/nixpkgs/issues/136207
|
||||
with subtest("run feature test"):
|
||||
machine.succeed(
|
||||
'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
|
||||
&& export FONTCONFIG_FILE=${pkgs.makeFontsConf { fontDirectories = [];}} \
|
||||
&& python regression/runtests.py --pkg feature_tests'
|
||||
)
|
||||
|
||||
with subtest("run resql test"):
|
||||
machine.succeed(
|
||||
'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
|
||||
&& python regression/runtests.py --pkg resql'
|
||||
)
|
||||
'';
|
||||
})
|
||||
# fontconfig is necessary for chromium to run
|
||||
# https://github.com/NixOS/nixpkgs/issues/136207
|
||||
# also, the feature_tests require Server Mode = True
|
||||
with subtest("run feature test"):
|
||||
machine.succeed(
|
||||
'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
|
||||
&& export FONTCONFIG_FILE=${pkgs.makeFontsConf { fontDirectories = [];}} \
|
||||
&& sed -i \'s|builtins.SERVER_MODE = False|builtins.SERVER_MODE = True|\' regression/runtests.py \
|
||||
&& python regression/runtests.py --pkg feature_tests'
|
||||
)
|
||||
'';
|
||||
})
|
||||
|
||||
@@ -149,7 +149,6 @@ import ../make-test-python.nix (
|
||||
docker.succeed(su_cmd("docker version"))
|
||||
|
||||
with subtest("Run container via docker cli"):
|
||||
docker.succeed("docker network create default")
|
||||
docker.succeed("tar cv --files-from /dev/null | podman import - scratchimg")
|
||||
docker.succeed(
|
||||
"docker run -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin localhost/scratchimg /bin/sleep 10"
|
||||
@@ -158,7 +157,6 @@ import ../make-test-python.nix (
|
||||
docker.succeed("podman ps | grep sleeping")
|
||||
docker.succeed("docker stop sleeping")
|
||||
docker.succeed("docker rm sleeping")
|
||||
docker.succeed("docker network rm default")
|
||||
|
||||
with subtest("A podman non-member can not use the docker cli"):
|
||||
docker.fail(su_cmd("docker version", user="mallory"))
|
||||
|
||||
@@ -113,9 +113,6 @@ import ../make-test-python.nix (
|
||||
podman.wait_for_unit("sockets.target")
|
||||
podman.wait_for_unit("ghostunnel-server-podman-socket.service")
|
||||
|
||||
with subtest("Create default network"):
|
||||
podman.succeed("docker network create default")
|
||||
|
||||
with subtest("Root docker cli also works"):
|
||||
podman.succeed("docker version")
|
||||
|
||||
|
||||
@@ -1,18 +1,24 @@
|
||||
import ./make-test-python.nix {
|
||||
name = "zram-generator";
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
environment.etc."systemd/zram-generator.conf".text = ''
|
||||
[zram0]
|
||||
zram-size = ram / 2
|
||||
'';
|
||||
systemd.packages = [ pkgs.zram-generator ];
|
||||
systemd.services."systemd-zram-setup@".path = [ pkgs.util-linux ]; # for mkswap
|
||||
nodes.machine = { ... }: {
|
||||
zramSwap = {
|
||||
enable = true;
|
||||
priority = 10;
|
||||
algorithm = "lz4";
|
||||
swapDevices = 2;
|
||||
memoryPercent = 30;
|
||||
memoryMax = 10 * 1024 * 1024;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("systemd-zram-setup@zram0.service")
|
||||
assert "zram0" in machine.succeed("zramctl -n")
|
||||
assert "zram0" in machine.succeed("swapon --show --noheadings")
|
||||
machine.wait_for_unit("systemd-zram-setup@zram1.service")
|
||||
zram = machine.succeed("zramctl --noheadings --raw")
|
||||
swap = machine.succeed("swapon --show --noheadings")
|
||||
for i in range(2):
|
||||
assert f"/dev/zram{i} lz4 10M" in zram
|
||||
assert f"/dev/zram{i} partition 10M" in swap
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
, karchive, kcmutils, kconfig, kdnssd, kguiaddons, kinit, kirigami2, knewstuff, knotifyconfig, ktexteditor, kwindowsystem
|
||||
, fftw, phonon, plasma-framework, threadweaver, breeze-icons
|
||||
, curl, ffmpeg, gdk-pixbuf, libaio, liblastfm, libmtp, loudmouth, lzo, lz4, mariadb-embedded, pcre, snappy, taglib, taglib_extras
|
||||
, pmdk, numactl
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
|
||||
@@ -28,13 +28,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "musikcube";
|
||||
version = "0.99.4";
|
||||
version = "0.99.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "clangen";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-GAO3CKtlZF8Ol4K+40lD8n2RtewiHj3f59d5RIatNws=";
|
||||
sha256 = "sha256-SbWL36GRIJPSvxZyj6sebJxTkSPsUcsKyC3TmcIq2O0";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
|
||||
let
|
||||
pname = "plexamp";
|
||||
version = "4.6.1";
|
||||
version = "4.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage";
|
||||
name="${pname}-${version}.AppImage";
|
||||
sha512 = "9wkhSDn7kvj6pqCawTJDBO8HfYe8eEYtAR1Bi9/fxiOBXRYUUHEZzSGLF9QoTVYMuGGHeX35c+QvnA2VsdsWCw==";
|
||||
sha512 = "xGmE/ikL3ez0WTJKiOIcB5QtI7Ta9wq1Qedy9albWVpCS04FTnxQH5S0esTXw6j+iDTD8Lc2JbOhw8tYo/zRXg==";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
@@ -33,7 +33,7 @@ in appimageTools.wrapType2 {
|
||||
meta = with lib; {
|
||||
description = "A beautiful Plex music player for audiophiles, curators, and hipsters";
|
||||
homepage = "https://plexamp.com/";
|
||||
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/48";
|
||||
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/49";
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ killercup synthetica ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
|
||||
@@ -35,13 +35,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "neovim-unwrapped";
|
||||
version = "0.8.2";
|
||||
version = "0.8.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "neovim";
|
||||
repo = "neovim";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-eqiH/K8w0FZNHLBBMjiTSQjNQyONqcx3X+d85gPnFJg=";
|
||||
hash = "sha256-ItJ8aX/WUfcAovxRsXXyWKBAI92hFloYIZiv7viPIdQ=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"version": "3.142.1",
|
||||
"version": "3.144.3",
|
||||
"appimage": {
|
||||
"x86_64-linux": {
|
||||
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.142.1/standard-notes-3.142.1-linux-x86_64.AppImage",
|
||||
"hash": "sha512-tf6vk108RMnxk7ZCFIAbWnlTvQqCkU6NtG+JCmMK/oR+/N3T5TDaHyufNJ9yVIh9pZrmaKMHjDUdCUgGc7lIRA=="
|
||||
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.144.3/standard-notes-3.144.3-linux-x86_64.AppImage",
|
||||
"hash": "sha512-NHuabqi8pjCnSI6EwhPLgWjyytW/ZnGvGCjb/hXscRVcJgJiQZ7FNZnnepFtZ3c0z0F4bM6AYcH+eWmt0ySgXw=="
|
||||
},
|
||||
"aarch64-linux": {
|
||||
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.142.1/standard-notes-3.142.1-linux-arm64.AppImage",
|
||||
"hash": "sha512-wQYeWUDLbthgcWPWcz5TbqR1rk3OkdISr/SsdbbrLIyroAaXppg+7FA/FbPW7wlrksiMKowJ/hAPQz1NIxSRZg=="
|
||||
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.144.3/standard-notes-3.144.3-linux-arm64.AppImage",
|
||||
"hash": "sha512-EaCq/0IgrSPWCkWtOBzMISfuajgGZKborPO4SoWi2QgMmwZXgLc/RBCVzVBT9C2EQLmc506IVrjOdAzkuQM5TQ=="
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1198,7 +1198,7 @@ self: super: {
|
||||
hexokinase = buildGoModule {
|
||||
name = "hexokinase";
|
||||
src = old.src + "/hexokinase";
|
||||
vendorSha256 = "pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=";
|
||||
vendorSha256 = null;
|
||||
};
|
||||
in
|
||||
''
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
, gpm
|
||||
, file
|
||||
, e2fsprogs
|
||||
, libX11
|
||||
, libICE
|
||||
, perl
|
||||
, zip
|
||||
@@ -17,6 +16,7 @@
|
||||
, openssl
|
||||
, coreutils
|
||||
, autoSignDarwinBinariesHook
|
||||
, x11Support ? true, libX11
|
||||
|
||||
# updater only
|
||||
, writeScript
|
||||
@@ -43,12 +43,12 @@ stdenv.mkDerivation rec {
|
||||
gettext
|
||||
glib
|
||||
libICE
|
||||
libX11
|
||||
libssh2
|
||||
openssl
|
||||
slang
|
||||
zip
|
||||
] ++ lib.optionals (!stdenv.isDarwin) [ e2fsprogs gpm ];
|
||||
] ++ lib.optional x11Support [ libX11 ]
|
||||
++ lib.optionals (!stdenv.isDarwin) [ e2fsprogs gpm ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -66,12 +66,9 @@ stdenv.mkDerivation rec {
|
||||
postPatch = ''
|
||||
substituteInPlace src/filemanager/ext.c \
|
||||
--replace /bin/rm ${coreutils}/bin/rm
|
||||
|
||||
substituteInPlace misc/ext.d/misc.sh.in \
|
||||
--replace /bin/cat ${coreutils}/bin/cat
|
||||
'';
|
||||
|
||||
postFixup = lib.optionalString (!stdenv.isDarwin) ''
|
||||
postFixup = lib.optionalString ((!stdenv.isDarwin) && x11Support) ''
|
||||
# libX11.so is loaded dynamically so autopatch doesn't detect it
|
||||
patchelf \
|
||||
--add-needed ${libX11}/lib/libX11.so \
|
||||
|
||||
@@ -42,7 +42,8 @@ stdenv.mkDerivation rec {
|
||||
# Relative paths.
|
||||
"BINDIR=/bin"
|
||||
"PERLDIR=/share/perl5"
|
||||
"MODSDIR=/lib/"
|
||||
"MODSDIR=/nonexistent" # AMC will test for that dir before
|
||||
# defaulting to the "portable" strategy, so this test *must* fail.
|
||||
"TEXDIR=/tex/latex/" # what texlive.combine expects
|
||||
"TEXDOCDIR=/share/doc/texmf/" # TODO where to put this?
|
||||
"MAN1DIR=/share/man/man1"
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "iptsd";
|
||||
version = "1.0.0";
|
||||
version = "1.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linux-surface";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-fd/WZXRvJb6XCATNmPj2xi1UseoZqBT9IN21iwxHGLs=";
|
||||
hash = "sha256-B5d1OjrRB164BYtFzZoZ3I4elZSKpHg0PCBiwXPnqLs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -45,8 +45,10 @@ stdenv.mkDerivation rec {
|
||||
# Original installs udev rules and service config into global paths
|
||||
postPatch = ''
|
||||
substituteInPlace etc/meson.build \
|
||||
--replace "install_dir: unitdir" "install_dir: datadir" \
|
||||
--replace "install_dir: rulesdir" "install_dir: datadir" \
|
||||
--replace "install_dir: unitdir" "install_dir: '$out/etc/systemd/system'" \
|
||||
--replace "install_dir: rulesdir" "install_dir: '$out/etc/udev/rules.d'"
|
||||
substituteInPlace etc/udev/50-ipts.rules \
|
||||
--replace "/bin/systemd-escape" "${systemd}/bin/systemd-escape"
|
||||
'';
|
||||
|
||||
mesonFlags = [
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
{ lib, stdenv, makeDesktopItem, fetchurl, jdk11, wrapGAppsHook, glib }:
|
||||
{ lib, stdenv, makeDesktopItem, fetchurl, jdk19, wrapGAppsHook, glib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pdfsam-basic";
|
||||
version = "4.3.4";
|
||||
version = "5.0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/torakiki/pdfsam/releases/download/v${version}/pdfsam_${version}-1_amd64.deb";
|
||||
sha256 = "sha256-DYCiK5DgWTu1cm4TRsGDCB3LzVCGVkVzSlG3Jeo2WVI=";
|
||||
hash = "sha256-+nBLmbu1aRnfWYNhTBUJdRmdlud8FK7LZFvDNFDrhiI=";
|
||||
};
|
||||
|
||||
unpackPhase = ''
|
||||
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ glib ];
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(--set JAVA_HOME "${jdk11}" --set PDFSAM_JAVA_PATH "${jdk11}")
|
||||
gappsWrapperArgs+=(--set JAVA_HOME "${jdk19}" --set PDFSAM_JAVA_PATH "${jdk19}")
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
@@ -40,14 +40,14 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/torakiki/pdfsam";
|
||||
description = "Multi-platform software designed to extract pages, split, merge, mix and rotate PDF files";
|
||||
sourceProvenance = with sourceTypes; [
|
||||
binaryBytecode
|
||||
binaryNativeCode
|
||||
];
|
||||
license = licenses.agpl3;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ _1000101 ];
|
||||
homepage = "https://github.com/torakiki/pdfsam";
|
||||
description = "Multi-platform software designed to extract pages, split, merge, mix and rotate PDF files";
|
||||
sourceProvenance = with sourceTypes; [
|
||||
binaryBytecode
|
||||
binaryNativeCode
|
||||
];
|
||||
license = licenses.agpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ _1000101 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
{ lib, fetchFromGitHub, cacert, openssl, nixosTests
|
||||
, python39, fetchpatch
|
||||
, python310, fetchpatch
|
||||
}:
|
||||
|
||||
let
|
||||
python3' = python39.override {
|
||||
dropDevOutput = { outputs, ... }: {
|
||||
outputs = lib.filter (x: x != "doc") outputs;
|
||||
};
|
||||
|
||||
python3' = python310.override {
|
||||
packageOverrides = self: super: {
|
||||
sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "1.3.24";
|
||||
@@ -25,6 +29,15 @@ let
|
||||
sha256 = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38";
|
||||
};
|
||||
});
|
||||
flask-sqlalchemy = super.flask-sqlalchemy.overridePythonAttrs (old: rec {
|
||||
version = "2.5.1";
|
||||
format = "setuptools";
|
||||
src = self.fetchPypi {
|
||||
pname = "Flask-SQLAlchemy";
|
||||
inherit version;
|
||||
hash = "sha256:2bda44b43e7cacb15d4e05ff3cc1f8bc97936cc464623424102bfc2c35e95912";
|
||||
};
|
||||
});
|
||||
# Taken from by https://github.com/NixOS/nixpkgs/pull/173090/commits/d2c0c7eb4cc91beb0a1adbaf13abc0a526a21708
|
||||
werkzeug = super.werkzeug.overridePythonAttrs (old: rec {
|
||||
version = "1.0.1";
|
||||
@@ -44,6 +57,19 @@ let
|
||||
inherit version;
|
||||
sha256 = "sha256-ptWEM94K6AA0fKsfowQ867q+i6qdKeZo8cdoy4ejM8Y=";
|
||||
};
|
||||
patches = [
|
||||
# python 3.10 compat fixes. In later upstream releases, but these
|
||||
# are not compatible with flask 1 which we need here :(
|
||||
(fetchpatch {
|
||||
url = "https://github.com/thmo/jinja/commit/1efb4cc918b4f3d097c376596da101de9f76585a.patch";
|
||||
sha256 = "sha256-GFaSvYxgzOEFmnnDIfcf0ImScNTh1lR4lxt2Uz1DYdU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://github.com/mkrizek/jinja/commit/bd8bad37d1c0e2d8995a44fd88e234f5340afec5.patch";
|
||||
sha256 = "sha256-Uow+gaO+/dH6zavC0X/SsuMAfhTLRWpamVlL87DXDRA=";
|
||||
excludes = [ "CHANGES.rst" ];
|
||||
})
|
||||
];
|
||||
});
|
||||
# Required by jinja2-2.11.3
|
||||
markupsafe = super.markupsafe.overridePythonAttrs (old: rec {
|
||||
@@ -84,18 +110,62 @@ let
|
||||
nativeCheckInputs = [];
|
||||
doCheck = false;
|
||||
});
|
||||
# Requires pytest-httpserver as checkInput now which requires Werkzeug>=2 which is not
|
||||
# supported by current privacyIDEA.
|
||||
responses = super.responses.overridePythonAttrs (lib.const {
|
||||
doCheck = false;
|
||||
});
|
||||
flask-babel = (super.flask-babel.override {
|
||||
sphinxHook = null;
|
||||
furo = null;
|
||||
}).overridePythonAttrs (old: (dropDevOutput old) // rec {
|
||||
pname = "Flask-Babel";
|
||||
version = "2.0.0";
|
||||
format = "setuptools";
|
||||
src = self.fetchPypi {
|
||||
inherit pname;
|
||||
inherit version;
|
||||
hash = "sha256:f9faf45cdb2e1a32ea2ec14403587d4295108f35017a7821a2b1acb8cfd9257d";
|
||||
};
|
||||
});
|
||||
psycopg2 = (super.psycopg2.override {
|
||||
sphinxHook = null;
|
||||
sphinx-better-theme = null;
|
||||
}).overridePythonAttrs dropDevOutput;
|
||||
hypothesis = super.hypothesis.override {
|
||||
enableDocumentation = false;
|
||||
};
|
||||
pyjwt = (super.pyjwt.override {
|
||||
sphinxHook = null;
|
||||
sphinx-rtd-theme = null;
|
||||
}).overridePythonAttrs (old: (dropDevOutput old) // { format = "setuptools"; });
|
||||
beautifulsoup4 = (super.beautifulsoup4.override {
|
||||
sphinxHook = null;
|
||||
}).overridePythonAttrs dropDevOutput;
|
||||
pydash = (super.pydash.override {
|
||||
sphinx-rtd-theme = null;
|
||||
}).overridePythonAttrs (old: rec {
|
||||
version = "5.1.0";
|
||||
src = self.fetchPypi {
|
||||
inherit (old) pname;
|
||||
inherit version;
|
||||
hash = "sha256-GysFCsG64EnNB/WSCxT6u+UmOPSF2a2h6xFanuv/aDU=";
|
||||
};
|
||||
format = "setuptools";
|
||||
doCheck = false;
|
||||
});
|
||||
};
|
||||
};
|
||||
in
|
||||
python3'.pkgs.buildPythonPackage rec {
|
||||
pname = "privacyIDEA";
|
||||
version = "3.7.4";
|
||||
version = "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-QoVL6WJjX6+sN5S/iqV3kcfQ5fWTXkTnf6NpZcw3bGo=";
|
||||
sha256 = "sha256-FCvuWXon8c9LnX1FnCxcSTfBR5/6zijD6ld0iAEVFkU=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@@ -104,17 +174,7 @@ python3'.pkgs.buildPythonPackage rec {
|
||||
defusedxml croniter flask_migrate pyjwt configobj sqlsoup pillow
|
||||
python-gnupg passlib pyopenssl beautifulsoup4 smpplib flask-babel
|
||||
ldap3 huey pyyaml qrcode oauth2client requests lxml cbor2 psycopg2
|
||||
pydash ecdsa google-auth importlib-metadata argon2-cffi bcrypt
|
||||
];
|
||||
|
||||
patches = [
|
||||
# Apply https://github.com/privacyidea/privacyidea/pull/3304, fixes
|
||||
# `Exceeds the limit (4300) for integer string conversion` in the tests,
|
||||
# see https://hydra.nixos.org/build/192932057
|
||||
(fetchpatch {
|
||||
url = "https://github.com/privacyidea/privacyidea/commit/0e28f36c0b3291a361669f4a3a77c294f4564475.patch";
|
||||
sha256 = "sha256-QqcO8bkt+I2JKce/xk2ZhzEaLZ3E4uZ4x5W9Kk0pMQQ=";
|
||||
})
|
||||
pydash ecdsa google-auth importlib-metadata argon2-cffi bcrypt segno
|
||||
];
|
||||
|
||||
passthru.tests = { inherit (nixosTests) privacyidea; };
|
||||
@@ -128,6 +188,7 @@ python3'.pkgs.buildPythonPackage rec {
|
||||
|
||||
# Tries to connect to `fcm.googleapis.com`.
|
||||
"test_02_api_push_poll"
|
||||
"test_04_decline_auth_request"
|
||||
|
||||
# Timezone info not available in build sandbox
|
||||
"test_14_convert_timestamp_to_utc"
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "toot";
|
||||
version = "0.33.1";
|
||||
version = "0.34.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ihabunek";
|
||||
repo = "toot";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-qZk42zGHWpeN5rZPFw7xAmDIvhPzqTePU3If+p/L98c=";
|
||||
sha256 = "sha256-UQR3BaBcnD2o7QJEBQmdZdtVaTo9R5vSHiUxywy1OaY=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = with python3Packages; [ pytest ];
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitLab
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, gtk4
|
||||
, libadwaita
|
||||
@@ -13,16 +13,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "watchmate";
|
||||
version = "0.3.0";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
src = fetchFromGitHub {
|
||||
owner = "azymohliad";
|
||||
repo = "watchmate";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-HyH+9KMbdiJSmjo2NsAvz8rN3JhYKz1nNqfuZufKjQA=";
|
||||
hash = "sha256-WRoAQDOsCi9VbshGzdw+qrVFKQhOQwPgxOfWXYJ3nhg=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-HvuxKPIVwVrcsTKgPwNosF/ar8QL9Jlldq7SBe2nh6o=";
|
||||
cargoHash = "sha256-pEXC5IVcMhqYM+bGyTh/vaSS9LxYE2YbtIaPplc4Al8=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
@@ -46,7 +46,8 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
meta = with lib; {
|
||||
description = "PineTime smart watch companion app for Linux phone and desktop";
|
||||
homepage = "https://gitlab.com/azymohliad/watchmate";
|
||||
homepage = "https://github.com/azymohliad/watchmate";
|
||||
changelog = "https://github.com/azymohliad/watchmate/raw/v${version}/CHANGELOG.md";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ chuangzhu ];
|
||||
platforms = platforms.linux;
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xchm";
|
||||
version = "1.33";
|
||||
version = "1.35";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rzvncj";
|
||||
repo = "xCHM";
|
||||
rev = version;
|
||||
sha256 = "sha256-8HQaXxZQwfBaWc22GivKri1vZEnZ23anSfriCvmLHHw=";
|
||||
sha256 = "sha256-ZJvlllhF7KPz+v6KEVPyJjiz+4LHM2Br/oqI54a2Ews=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
, libva
|
||||
, libdrm, wayland, libxkbcommon # Ozone
|
||||
, curl
|
||||
, libffi
|
||||
, libepoxy
|
||||
# postPatch:
|
||||
, glibc # gconv + locale
|
||||
@@ -151,7 +152,8 @@ let
|
||||
libepoxy
|
||||
] ++ lib.optional systemdSupport systemd
|
||||
++ lib.optionals cupsSupport [ libgcrypt cups ]
|
||||
++ lib.optional pulseSupport libpulseaudio;
|
||||
++ lib.optional pulseSupport libpulseaudio
|
||||
++ lib.optional (chromiumVersionAtLeast "110") libffi;
|
||||
|
||||
patches = [
|
||||
# Optional patch to use SOURCE_DATE_EPOCH in compute_build_timestamp.py (should be upstreamed):
|
||||
@@ -299,6 +301,10 @@ let
|
||||
use_system_libwayland = true;
|
||||
# The default value is hardcoded instead of using pkg-config:
|
||||
system_wayland_scanner_path = "${wayland.bin}/bin/wayland-scanner";
|
||||
} // lib.optionalAttrs (chromiumVersionAtLeast "110") {
|
||||
# To fix the build as we don't provide libffi_pic.a
|
||||
# (ld.lld: error: unable to find library -l:libffi_pic.a):
|
||||
use_system_libffi = true;
|
||||
} // lib.optionalAttrs proprietaryCodecs {
|
||||
# enable support for the H.264 codec
|
||||
proprietary_codecs = true;
|
||||
|
||||
@@ -19,9 +19,9 @@
|
||||
}
|
||||
},
|
||||
"beta": {
|
||||
"version": "110.0.5481.52",
|
||||
"sha256": "09khb67xl1b2caw0j9lmv6a9iyms9sprn2r7wsgqzjn9dzd9wwcq",
|
||||
"sha256bin64": "0dv9fxwqn50hl06y7zfqby8hd9lwqwk2q3856fygbn82qppkbl4r",
|
||||
"version": "110.0.5481.77",
|
||||
"sha256": "1kl1k29sr5qw8pg7shvizw4b37fxjlgah56p57kq641iqhnsnj73",
|
||||
"sha256bin64": "0wnzgvwbpmb5ja4ba5mjk4bk0aaxzbw4zi509vw96q6mbqmr4iwr",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2022-12-12",
|
||||
@@ -32,9 +32,9 @@
|
||||
}
|
||||
},
|
||||
"dev": {
|
||||
"version": "111.0.5562.0",
|
||||
"sha256": "0aviz1cjm00lya530n0wyqn85d3idzn3bbp8065ygvfawqcf163j",
|
||||
"sha256bin64": "0azkcvbl645c9ph4vn4502qbgfcb7zbs4ycy3q73nj5al642absm",
|
||||
"version": "111.0.5563.8",
|
||||
"sha256": "0gflrk5i6dr5vrywhxab73044gryxj49px59blgl6nyphw7swpwy",
|
||||
"sha256bin64": "1dgfjz9pnziy1zymk7g15i5zdb002g77q8kqhkwgi4m0fndknpmj",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2022-12-12",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -17,13 +17,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lagrange";
|
||||
version = "1.14.2";
|
||||
version = "1.15.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "skyjake";
|
||||
repo = "lagrange";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-9onjQ7fRLlL5/1vMtNHjBBcB7Fyk1ERaHg5IwtwbJQg=";
|
||||
hash = "sha256-NUgDaBRcgYGLKJhSJLT17VZj/mU0w6ySahIYnud5M6Y=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config zip ];
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"packageVersion": "109.0-1",
|
||||
"packageVersion": "109.0.1-2",
|
||||
"source": {
|
||||
"rev": "109.0-1",
|
||||
"sha256": "18nd0shx1r2y2gn42sa2jlckcymmnx3fkm4fp58c80gcppslh1fs"
|
||||
"rev": "109.0.1-2",
|
||||
"sha256": "1b5572i7aqad0pmjw88d3mhmhhhacp505z0d9l4l89r7gadssbwb"
|
||||
},
|
||||
"firefox": {
|
||||
"version": "109.0",
|
||||
"sha512": "9e2b6e20353e414da3d2eb9dcd3d77757664a98a4438a8e84f19a1c7c203e40136b08bf96a458fac05ddc627347217d32f1f6337980c5ca918874993657a58e7"
|
||||
"version": "109.0.1",
|
||||
"sha512": "58b21449a16a794152888f50e7fe9488c28739a7e067729acdc1de9f2e8384e6316cffdfe89f690f0d211189668d940825b4f8a26b8100468ae120772df99d72"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,17 @@
|
||||
{ mkYarnPackage, fetchFromGitHub, electron, makeWrapper, makeDesktopItem, lib }:
|
||||
|
||||
let
|
||||
srcInfo = builtins.fromJSON (builtins.readFile ./pin.json);
|
||||
in
|
||||
mkYarnPackage rec {
|
||||
pname = "vieb";
|
||||
version = "9.5.0";
|
||||
inherit (srcInfo) version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Jelmerro";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-SWHjzrEvRlTn4HJnT81Le4KsFDypN3QH3F/z7zZ8p3E=";
|
||||
inherit (srcInfo) sha256;
|
||||
};
|
||||
|
||||
packageJSON = ./package.json;
|
||||
@@ -52,11 +55,13 @@ mkYarnPackage rec {
|
||||
|
||||
distPhase = ":"; # disable useless $out/tarballs directory
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://vieb.dev/";
|
||||
changelog = "https://github.com/Jelmerro/Vieb/releases/tag/${version}";
|
||||
description = "Vim Inspired Electron Browser";
|
||||
maintainers = with maintainers; [ gebner fortuneteller2k ];
|
||||
maintainers = with maintainers; [ gebner fortuneteller2k tejing ];
|
||||
platforms = platforms.unix;
|
||||
license = licenses.gpl3Plus;
|
||||
};
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "vieb",
|
||||
"productName": "Vieb",
|
||||
"version": "9.5.0",
|
||||
"version": "9.5.1",
|
||||
"description": "Vim Inspired Electron Browser",
|
||||
"main": "app/index.js",
|
||||
"scripts": {
|
||||
@@ -25,9 +25,9 @@
|
||||
"funding": "https://github.com/sponsors/Jelmerro/",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"devDependencies": {
|
||||
"electron": "22.0.0",
|
||||
"electron-builder": "24.0.0-alpha.7",
|
||||
"eslint": "8.29.0",
|
||||
"electron": "22.0.3",
|
||||
"electron-builder": "24.0.0-alpha.10",
|
||||
"eslint": "8.32.0",
|
||||
"eslint-plugin-sort-keys": "2.3.5",
|
||||
"jest": "29.3.1",
|
||||
"jest-environment-jsdom": "29.3.1",
|
||||
@@ -37,13 +37,13 @@
|
||||
"webpack-node-externals": "3.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@cliqz/adblocker-electron": "1.25.1",
|
||||
"@cliqz/adblocker-electron-preload": "1.25.1",
|
||||
"@cliqz/adblocker-electron": "1.25.2",
|
||||
"@cliqz/adblocker-electron-preload": "1.25.2",
|
||||
"@mozilla/readability": "0.4.2",
|
||||
"darkreader": "4.9.58",
|
||||
"highlight.js": "11.7.0",
|
||||
"jsdom": "20.0.3",
|
||||
"marked": "4.2.4",
|
||||
"jsdom": "21.0.0",
|
||||
"marked": "4.2.12",
|
||||
"picomatch": "2.3.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"version": "9.5.1",
|
||||
"sha256": "dUHjhJt0MarRNmDxs989aBTprjt+DUoYd3U05ELc0Tw="
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p bash wget jq yarn yarn2nix nix-prefetch-github
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
|
||||
if [ "$#" -gt 1 ] || [[ "${1:-}" == -* ]]; then
|
||||
echo "Regenerates packaging data for the vieb package."
|
||||
echo "Usage: $0 [git release tag]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
version="${1:-}"
|
||||
|
||||
if [ -z "$version" ]; then
|
||||
version="$(wget -O- "https://api.github.com/repos/Jelmerro/Vieb/releases?per_page=1" | jq -r '.[0].tag_name')"
|
||||
fi
|
||||
|
||||
SRC="https://raw.githubusercontent.com/Jelmerro/Vieb/$version"
|
||||
|
||||
tmpdir="$(mktemp -d --tmpdir update-vieb-XXXXXX)"
|
||||
pushd "$tmpdir"
|
||||
|
||||
wget "$SRC/package-lock.json"
|
||||
wget "$SRC/package.json"
|
||||
yarn import
|
||||
yarn2nix >yarn.nix
|
||||
|
||||
popd
|
||||
cp -ft . "$tmpdir/"{package.json,yarn.lock,yarn.nix}
|
||||
rm -rf "$tmpdir"
|
||||
|
||||
src_hash=$(nix-prefetch-github Jelmerro Vieb --rev "${version}" | jq -r .sha256)
|
||||
|
||||
cat > pin.json << EOF
|
||||
{
|
||||
"version": "$version",
|
||||
"sha256": "$src_hash"
|
||||
}
|
||||
EOF
|
||||
@@ -23,29 +23,29 @@
|
||||
"@babel/highlight" "^7.18.6"
|
||||
|
||||
"@babel/compat-data@^7.20.5":
|
||||
version "7.20.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.5.tgz#86f172690b093373a933223b4745deeb6049e733"
|
||||
integrity sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==
|
||||
version "7.20.10"
|
||||
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec"
|
||||
integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==
|
||||
|
||||
"@babel/core@^7.11.6", "@babel/core@^7.12.3":
|
||||
version "7.20.7"
|
||||
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.7.tgz#37072f951bd4d28315445f66e0ec9f6ae0c8c35f"
|
||||
integrity sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==
|
||||
version "7.20.12"
|
||||
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d"
|
||||
integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==
|
||||
dependencies:
|
||||
"@ampproject/remapping" "^2.1.0"
|
||||
"@babel/code-frame" "^7.18.6"
|
||||
"@babel/generator" "^7.20.7"
|
||||
"@babel/helper-compilation-targets" "^7.20.7"
|
||||
"@babel/helper-module-transforms" "^7.20.7"
|
||||
"@babel/helper-module-transforms" "^7.20.11"
|
||||
"@babel/helpers" "^7.20.7"
|
||||
"@babel/parser" "^7.20.7"
|
||||
"@babel/template" "^7.20.7"
|
||||
"@babel/traverse" "^7.20.7"
|
||||
"@babel/traverse" "^7.20.12"
|
||||
"@babel/types" "^7.20.7"
|
||||
convert-source-map "^1.7.0"
|
||||
debug "^4.1.0"
|
||||
gensync "^1.0.0-beta.2"
|
||||
json5 "^2.2.1"
|
||||
json5 "^2.2.2"
|
||||
semver "^6.3.0"
|
||||
|
||||
"@babel/generator@^7.20.7", "@babel/generator@^7.7.2":
|
||||
@@ -95,10 +95,10 @@
|
||||
dependencies:
|
||||
"@babel/types" "^7.18.6"
|
||||
|
||||
"@babel/helper-module-transforms@^7.20.7":
|
||||
version "7.20.7"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.7.tgz#7a6c9a1155bef55e914af574153069c9d9470c43"
|
||||
integrity sha512-FNdu7r67fqMUSVuQpFQGE6BPdhJIhitoxhGzDbAXNcA07uoVG37fOiMk3OSV8rEICuyG6t8LGkd9EE64qIEoIA==
|
||||
"@babel/helper-module-transforms@^7.20.11":
|
||||
version "7.20.11"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0"
|
||||
integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==
|
||||
dependencies:
|
||||
"@babel/helper-environment-visitor" "^7.18.9"
|
||||
"@babel/helper-module-imports" "^7.18.6"
|
||||
@@ -106,7 +106,7 @@
|
||||
"@babel/helper-split-export-declaration" "^7.18.6"
|
||||
"@babel/helper-validator-identifier" "^7.19.1"
|
||||
"@babel/template" "^7.20.7"
|
||||
"@babel/traverse" "^7.20.7"
|
||||
"@babel/traverse" "^7.20.10"
|
||||
"@babel/types" "^7.20.7"
|
||||
|
||||
"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0":
|
||||
@@ -273,10 +273,10 @@
|
||||
"@babel/parser" "^7.20.7"
|
||||
"@babel/types" "^7.20.7"
|
||||
|
||||
"@babel/traverse@^7.20.7", "@babel/traverse@^7.7.2":
|
||||
version "7.20.7"
|
||||
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.7.tgz#114f992fa989a390896ea72db5220780edab509c"
|
||||
integrity sha512-xueOL5+ZKX2dJbg8z8o4f4uTRTqGDRjilva9D1hiRlayJbTY8jBRL+Ph67IeRTIE439/VifHk+Z4g0SwRtQE0A==
|
||||
"@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.7", "@babel/traverse@^7.7.2":
|
||||
version "7.20.12"
|
||||
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.12.tgz#7f0f787b3a67ca4475adef1f56cb94f6abd4a4b5"
|
||||
integrity sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ==
|
||||
dependencies:
|
||||
"@babel/code-frame" "^7.18.6"
|
||||
"@babel/generator" "^7.20.7"
|
||||
@@ -303,45 +303,45 @@
|
||||
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
|
||||
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
||||
|
||||
"@cliqz/adblocker-content@^1.25.1":
|
||||
version "1.25.1"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.25.1.tgz#da81e7838e288a6f0fdb8a97a0df8169accb74a1"
|
||||
integrity sha512-7gl2VdNPBfj7aPoq34B5miwGcnda/7LCr+BqnpcSOjdLV6jjT2FrNSAKGFvcH23q0HM1IFhYDV6ydTgsdWFCnA==
|
||||
"@cliqz/adblocker-content@^1.25.2":
|
||||
version "1.25.2"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.25.2.tgz#8835d7307c7829e85a2e38e7e3bfd161024ae4d7"
|
||||
integrity sha512-Br177fKm/J3yc71m6cLA1OercmfGnZ5avprM/hB1bqZlN7Nt7qjISdZih90jTZ2ljyBVItDoVXOPf4ENlpn0qQ==
|
||||
dependencies:
|
||||
"@cliqz/adblocker-extended-selectors" "^1.25.1"
|
||||
"@cliqz/adblocker-extended-selectors" "^1.25.2"
|
||||
|
||||
"@cliqz/adblocker-electron-preload@1.25.1", "@cliqz/adblocker-electron-preload@^1.25.1":
|
||||
version "1.25.1"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.25.1.tgz#83bd59d8e94436c451af3525d9902fa5fa1be3ab"
|
||||
integrity sha512-edNVEqGrXqe/Qwi0D9/V8xmtyeJlhNPaelXilYa1ne7jG/OT7pee+7Vi4BWezl0NQ77WF3/mY9Bj4eJkEO0uiQ==
|
||||
"@cliqz/adblocker-electron-preload@1.25.2", "@cliqz/adblocker-electron-preload@^1.25.2":
|
||||
version "1.25.2"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.25.2.tgz#67263683cce7cd036dbc0c37761c4f5eed6508ad"
|
||||
integrity sha512-d2W5/ZSLZtHTgzqdW3gEAoCHJU1o4FYuAEVjB6L7cmV9S0UZRfTBL3wTtO/gzt/wo1LMk4MFAxOqC+riNj6x1g==
|
||||
dependencies:
|
||||
"@cliqz/adblocker-content" "^1.25.1"
|
||||
"@cliqz/adblocker-content" "^1.25.2"
|
||||
|
||||
"@cliqz/adblocker-electron@1.25.1":
|
||||
version "1.25.1"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.25.1.tgz#44d9034e35c78938a772b10f8096df55a4accc41"
|
||||
integrity sha512-CKStwRTR2L78EjgmuUpLKkV9s/uVnwQNGr7I/hyMkEROXbGdrN7P5LhwO+kkewccZ+3JtE509PBmZAp0EP71dw==
|
||||
"@cliqz/adblocker-electron@1.25.2":
|
||||
version "1.25.2"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.25.2.tgz#1b0ec106cc395f5826d97fcfe8fbe4c333d39695"
|
||||
integrity sha512-GdYrEfhdIALm8Ue07+YONBArlQLuXHryO8UojMcEjDKYC3zp0OOl4ifi/92XpwVXdXSfX0jTavqC7ExLzRHzgQ==
|
||||
dependencies:
|
||||
"@cliqz/adblocker" "^1.25.1"
|
||||
"@cliqz/adblocker-electron-preload" "^1.25.1"
|
||||
"@cliqz/adblocker" "^1.25.2"
|
||||
"@cliqz/adblocker-electron-preload" "^1.25.2"
|
||||
tldts-experimental "^5.6.21"
|
||||
|
||||
"@cliqz/adblocker-extended-selectors@^1.25.1":
|
||||
version "1.25.1"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.25.1.tgz#cfac0080952311399805fe153cd9e7e1331b3c6d"
|
||||
integrity sha512-4MdMe/YfIok5d8WYVcLR3Ak7vGrmeUV47frgmXEe945luY93vwlzk1NiLYW1JM5Gdm+VePweoS9cJ1/QUTmv+Q==
|
||||
"@cliqz/adblocker-extended-selectors@^1.25.2":
|
||||
version "1.25.2"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.25.2.tgz#77256c148b1f0a6792c1adad9e8b246cde65b37d"
|
||||
integrity sha512-acHxeUoR9TwHbgTKLrNt/ZLRxO4M+DkaNheRp86Kd2lfpn/qbN3yAH2k2mTJ/E0rWV5do9m8QRMR1mtB1yNuhQ==
|
||||
|
||||
"@cliqz/adblocker@^1.25.1":
|
||||
version "1.25.1"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.25.1.tgz#4d3e8894ce48ad0d0f8b26a4a1003f0676b7f734"
|
||||
integrity sha512-1C1/ELI94/XewdUj/o1+Q4ziOigMvTZQA05UERfDoKqpJ+0cbrEF/UImrzpX7n+kYsR7xTJvmf+iNM3zS0tfsg==
|
||||
"@cliqz/adblocker@^1.25.2":
|
||||
version "1.25.2"
|
||||
resolved "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.25.2.tgz#f2bd7c48afa650f887ac59a9950bfb220ea8cc52"
|
||||
integrity sha512-wEgj1ppkrC1JjZyeGQx0Sxfvot9Dt8fuea7vckx07zDdEfvm5ML5WIXyxT8KvEhGB8VuM+KGJpUk05lFUpromw==
|
||||
dependencies:
|
||||
"@cliqz/adblocker-content" "^1.25.1"
|
||||
"@cliqz/adblocker-extended-selectors" "^1.25.1"
|
||||
"@cliqz/adblocker-content" "^1.25.2"
|
||||
"@cliqz/adblocker-extended-selectors" "^1.25.2"
|
||||
"@remusao/guess-url-type" "^1.1.2"
|
||||
"@remusao/small" "^1.1.2"
|
||||
"@remusao/smaz" "^1.7.1"
|
||||
"@types/chrome" "^0.0.197"
|
||||
"@types/chrome" "^0.0.206"
|
||||
"@types/firefox-webext-browser" "^94.0.0"
|
||||
tldts-experimental "^5.6.21"
|
||||
|
||||
@@ -359,9 +359,9 @@
|
||||
integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==
|
||||
|
||||
"@electron/asar@^3.2.1":
|
||||
version "3.2.2"
|
||||
resolved "https://registry.yarnpkg.com/@electron/asar/-/asar-3.2.2.tgz#f6ae4eb4343ad00b994c40db3f09f71f968ff9c0"
|
||||
integrity sha512-32fMU68x8a6zvxtC1IC/BhPDKTh8rQjdmwEplj3CDpnkcwBzZVN9v/8cK0LJqQ0FOQQVZW8BWZ1S6UU53TYR4w==
|
||||
version "3.2.3"
|
||||
resolved "https://registry.yarnpkg.com/@electron/asar/-/asar-3.2.3.tgz#f598db50061ae5f90ad651f0255366b4e818000e"
|
||||
integrity sha512-wmOfE6szYyqZhRIiLH+eyZEp+bGcJI0OD/SCvSUrfBE0jvauyGYO2ZhpWxmNCcDojKu5DYrsVqT5BOCZZ01XIg==
|
||||
dependencies:
|
||||
chromium-pickle-js "^0.2.0"
|
||||
commander "^5.0.0"
|
||||
@@ -438,10 +438,10 @@
|
||||
minimatch "^3.0.4"
|
||||
plist "^3.0.4"
|
||||
|
||||
"@eslint/eslintrc@^1.3.3":
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.0.tgz#8ec64e0df3e7a1971ee1ff5158da87389f167a63"
|
||||
integrity sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==
|
||||
"@eslint/eslintrc@^1.4.1":
|
||||
version "1.4.1"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz#af58772019a2d271b7e2d4c23ff4ddcba3ccfb3e"
|
||||
integrity sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==
|
||||
dependencies:
|
||||
ajv "^6.12.4"
|
||||
debug "^4.3.2"
|
||||
@@ -458,7 +458,7 @@
|
||||
resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6"
|
||||
integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==
|
||||
|
||||
"@humanwhocodes/config-array@^0.11.6":
|
||||
"@humanwhocodes/config-array@^0.11.8":
|
||||
version "0.11.8"
|
||||
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9"
|
||||
integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==
|
||||
@@ -871,12 +871,12 @@
|
||||
integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==
|
||||
|
||||
"@types/babel__core@^7.1.14":
|
||||
version "7.1.20"
|
||||
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.20.tgz#e168cdd612c92a2d335029ed62ac94c95b362359"
|
||||
integrity sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==
|
||||
version "7.20.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891"
|
||||
integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.1.0"
|
||||
"@babel/types" "^7.0.0"
|
||||
"@babel/parser" "^7.20.7"
|
||||
"@babel/types" "^7.20.7"
|
||||
"@types/babel__generator" "*"
|
||||
"@types/babel__template" "*"
|
||||
"@types/babel__traverse" "*"
|
||||
@@ -913,10 +913,10 @@
|
||||
"@types/node" "*"
|
||||
"@types/responselike" "^1.0.0"
|
||||
|
||||
"@types/chrome@^0.0.197":
|
||||
version "0.0.197"
|
||||
resolved "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.197.tgz#c1b50cdb72ee40f9bc1411506031a9f8a925ab35"
|
||||
integrity sha512-m1NfS5bOjaypyqQfaX6CxmJodZVcvj5+Mt/K94EBHkflYjPNmXHAzbxfifdLMa0YM3PDyOxohoTS5ug/e6p5jA==
|
||||
"@types/chrome@^0.0.206":
|
||||
version "0.0.206"
|
||||
resolved "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.206.tgz#ad1fd9799f368b5993d7c240492d4adaf5efbd8c"
|
||||
integrity sha512-fQnTFjghPB9S4UzbfublUB6KmsBkvvJeGXGaaoD5Qu+ZxrDUfgJnKN5egLSzDcGAH5YxQubDgbCdNwwUGewQHg==
|
||||
dependencies:
|
||||
"@types/filesystem" "*"
|
||||
"@types/har-format" "*"
|
||||
@@ -944,12 +944,7 @@
|
||||
"@types/estree" "*"
|
||||
"@types/json-schema" "*"
|
||||
|
||||
"@types/estree@*":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2"
|
||||
integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==
|
||||
|
||||
"@types/estree@^0.0.51":
|
||||
"@types/estree@*", "@types/estree@^0.0.51":
|
||||
version "0.0.51"
|
||||
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40"
|
||||
integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==
|
||||
@@ -987,9 +982,9 @@
|
||||
"@types/node" "*"
|
||||
|
||||
"@types/graceful-fs@^4.1.3":
|
||||
version "4.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15"
|
||||
integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==
|
||||
version "4.1.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae"
|
||||
integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
@@ -1053,15 +1048,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz#31b7ca6407128a3d2bbc27fe2d21b345397f6197"
|
||||
integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==
|
||||
|
||||
"@types/node@*":
|
||||
version "18.11.17"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.17.tgz#5c009e1d9c38f4a2a9d45c0b0c493fe6cdb4bcb5"
|
||||
integrity sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==
|
||||
|
||||
"@types/node@^16.11.26":
|
||||
version "16.18.10"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.10.tgz#d7415ef18c94f8d4e4a82ebcc8b8999f965d8920"
|
||||
integrity sha512-XU1+v7h81p7145ddPfjv7jtWvkSilpcnON3mQ+bDi9Yuf7OI56efOglXRyXWgQ57xH3fEQgh7WOJMncRHVew5w==
|
||||
"@types/node@*", "@types/node@^16.11.26":
|
||||
version "16.18.11"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.11.tgz#cbb15c12ca7c16c85a72b6bdc4d4b01151bb3cae"
|
||||
integrity sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==
|
||||
|
||||
"@types/plist@^3.0.1":
|
||||
version "3.0.2"
|
||||
@@ -1104,9 +1094,9 @@
|
||||
integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
|
||||
|
||||
"@types/yargs@^17.0.16", "@types/yargs@^17.0.8":
|
||||
version "17.0.17"
|
||||
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.17.tgz#5672e5621f8e0fca13f433a8017aae4b7a2a03e7"
|
||||
integrity sha512-72bWxFKTK6uwWJAVT+3rF6Jo6RTojiJ27FQo8Rf60AL+VZbzoVPnMFhKsUnbjR8A3BTCYQ7Mv3hnl8T0A+CX9g==
|
||||
version "17.0.20"
|
||||
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.20.tgz#107f0fcc13bd4a524e352b41c49fe88aab5c54d5"
|
||||
integrity sha512-eknWrTHofQuPk2iuqDm1waA7V6xPlbgBoaaXEgYkClhLOnB0TtbW+srJaOToAgawPxPlHQzwypFA2bhZaUGP5A==
|
||||
dependencies:
|
||||
"@types/yargs-parser" "*"
|
||||
|
||||
@@ -1384,10 +1374,10 @@ app-builder-bin@4.0.0:
|
||||
resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz#1df8e654bd1395e4a319d82545c98667d7eed2f0"
|
||||
integrity sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA==
|
||||
|
||||
app-builder-lib@24.0.0-alpha.7:
|
||||
version "24.0.0-alpha.7"
|
||||
resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-24.0.0-alpha.7.tgz#fe798994f89cfa7f8e6ebfce8e73a816ba32ae16"
|
||||
integrity sha512-kEzDjym0AV9pO4SX8+RaJX9fmxrrKlDzHxqAN7cxSgDM8BUneMJqeWtf9+Hqv6PMXAvpnRsrSHtNaYgDkhQdFA==
|
||||
app-builder-lib@24.0.0-alpha.10:
|
||||
version "24.0.0-alpha.10"
|
||||
resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-24.0.0-alpha.10.tgz#244803adf93a6279dab09bc8d278c06ebc4f91b4"
|
||||
integrity sha512-gKrBTbzEChV61mnr9RCjwv8XWUwfdrgj3AAPnQTNEpbGWwgHOuwtBjjYbUHdCm5QXnlGxHBsB1ODmvkPUOL4cg==
|
||||
dependencies:
|
||||
"7zip-bin" "~5.1.1"
|
||||
"@develar/schema-utils" "~2.6.5"
|
||||
@@ -1398,12 +1388,12 @@ app-builder-lib@24.0.0-alpha.7:
|
||||
"@malept/flatpak-bundler" "^0.4.0"
|
||||
async-exit-hook "^2.0.1"
|
||||
bluebird-lst "^1.0.9"
|
||||
builder-util "24.0.0-alpha.6"
|
||||
builder-util-runtime "9.1.2-alpha.1"
|
||||
builder-util "24.0.0-alpha.8"
|
||||
builder-util-runtime "9.2.0-alpha.2"
|
||||
chromium-pickle-js "^0.2.0"
|
||||
debug "^4.3.4"
|
||||
ejs "^3.1.8"
|
||||
electron-publish "24.0.0-alpha.6"
|
||||
electron-publish "24.0.0-alpha.8"
|
||||
form-data "^4.0.0"
|
||||
fs-extra "^10.1.0"
|
||||
hosted-git-info "^4.1.0"
|
||||
@@ -1631,25 +1621,25 @@ buffer@^5.1.0, buffer@^5.5.0:
|
||||
base64-js "^1.3.1"
|
||||
ieee754 "^1.1.13"
|
||||
|
||||
builder-util-runtime@9.1.2-alpha.1:
|
||||
version "9.1.2-alpha.1"
|
||||
resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.1.2-alpha.1.tgz#378bf1194325a9b362ccd2c32c8af46ee95f7c94"
|
||||
integrity sha512-4sbKIB0N9J/pvixX9HYUyRtMZT+cN+bgPJ5NqejyqSPxFzj7IFe1A9K14l5nnfpMVxzUSZVQMerniDeGszZ9OA==
|
||||
builder-util-runtime@9.2.0-alpha.2:
|
||||
version "9.2.0-alpha.2"
|
||||
resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.2.0-alpha.2.tgz#771a2787b247a15297377de23a916e9fc91050e6"
|
||||
integrity sha512-MFuU0OSYQ4TIa5uMmVis3aJd7i5buaC9qrb0GjGNPD/GVwQ2LqydquqlKSBlptCib6bjSnL15dHsTbD2xWlVqQ==
|
||||
dependencies:
|
||||
debug "^4.3.4"
|
||||
sax "^1.2.4"
|
||||
|
||||
builder-util@24.0.0-alpha.6:
|
||||
version "24.0.0-alpha.6"
|
||||
resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-24.0.0-alpha.6.tgz#777977507a6f83eb55d2ffbc560f597b5b47269b"
|
||||
integrity sha512-vSnVMyuZK0RArELPk1dLUdcunZ2Gj0mpAFat73yD5djiihNosXIpIbSO/OFTi2/MV0urlH0giU4DOs9EXaCKtA==
|
||||
builder-util@24.0.0-alpha.8:
|
||||
version "24.0.0-alpha.8"
|
||||
resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-24.0.0-alpha.8.tgz#501de9052228ca8f87d43b53c01009dd069ad466"
|
||||
integrity sha512-18NtwmgSweocvAV1hp3UMhG67n5NzFcZ1UBb7L38oWchfPfgus4N+aIkVuOYwWG8FvUFcbkm6KT59NVLC2lFqg==
|
||||
dependencies:
|
||||
"7zip-bin" "~5.1.1"
|
||||
"@types/debug" "^4.1.6"
|
||||
"@types/fs-extra" "^9.0.11"
|
||||
app-builder-bin "4.0.0"
|
||||
bluebird-lst "^1.0.9"
|
||||
builder-util-runtime "9.1.2-alpha.1"
|
||||
builder-util-runtime "9.2.0-alpha.2"
|
||||
chalk "^4.1.2"
|
||||
cross-spawn "^7.0.3"
|
||||
debug "^4.3.4"
|
||||
@@ -1720,9 +1710,9 @@ camelcase@^6.2.0:
|
||||
integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
|
||||
|
||||
caniuse-lite@^1.0.30001400:
|
||||
version "1.0.30001441"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz#987437b266260b640a23cd18fbddb509d7f69f3e"
|
||||
integrity sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==
|
||||
version "1.0.30001446"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz#6d4ba828ab19f49f9bcd14a8430d30feebf1e0c5"
|
||||
integrity sha512-fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==
|
||||
|
||||
chalk@^2.0.0:
|
||||
version "2.4.2"
|
||||
@@ -1762,9 +1752,9 @@ chromium-pickle-js@^0.2.0:
|
||||
integrity sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==
|
||||
|
||||
ci-info@^3.2.0:
|
||||
version "3.7.0"
|
||||
resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.0.tgz#6d01b3696c59915b6ce057e4aa4adfc2fa25f5ef"
|
||||
integrity sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==
|
||||
version "3.7.1"
|
||||
resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.1.tgz#708a6cdae38915d597afdf3b145f2f8e1ff55f3f"
|
||||
integrity sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==
|
||||
|
||||
cjs-module-lexer@^1.0.0:
|
||||
version "1.2.2"
|
||||
@@ -1888,9 +1878,9 @@ commander@^5.0.0:
|
||||
integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==
|
||||
|
||||
commander@^9.4.1:
|
||||
version "9.4.1"
|
||||
resolved "https://registry.yarnpkg.com/commander/-/commander-9.4.1.tgz#d1dd8f2ce6faf93147295c0df13c7c21141cfbdd"
|
||||
integrity sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==
|
||||
version "9.5.0"
|
||||
resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30"
|
||||
integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==
|
||||
|
||||
compare-version@^0.1.2:
|
||||
version "0.1.2"
|
||||
@@ -2074,14 +2064,14 @@ dir-compare@^3.0.0:
|
||||
buffer-equal "^1.0.0"
|
||||
minimatch "^3.0.4"
|
||||
|
||||
dmg-builder@24.0.0-alpha.7:
|
||||
version "24.0.0-alpha.7"
|
||||
resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-24.0.0-alpha.7.tgz#03f701547e7e5bf09c2cee3546a87685844efe70"
|
||||
integrity sha512-5aQvKHvUb3vBjwwRRaYee9kvqKt+LKWFuOh4E750hClRIaYHQBOCxN2Ws0QVUxwZ22kBP+RQ0LS1tfesBGLPsw==
|
||||
dmg-builder@24.0.0-alpha.10:
|
||||
version "24.0.0-alpha.10"
|
||||
resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-24.0.0-alpha.10.tgz#74b3e03c220486ad8a04ad9b8aac6ca6074ceef3"
|
||||
integrity sha512-kOGq/9Qa0LDndMvG3MYv9oGCIPEwKTdCEIu4y3FtjB7VELvpjC/OoDphxRxLyVFzgb1tMDiAl7GoYIFYC5dkOg==
|
||||
dependencies:
|
||||
app-builder-lib "24.0.0-alpha.7"
|
||||
builder-util "24.0.0-alpha.6"
|
||||
builder-util-runtime "9.1.2-alpha.1"
|
||||
app-builder-lib "24.0.0-alpha.10"
|
||||
builder-util "24.0.0-alpha.8"
|
||||
builder-util-runtime "9.2.0-alpha.2"
|
||||
fs-extra "^10.1.0"
|
||||
iconv-lite "^0.6.2"
|
||||
js-yaml "^4.1.0"
|
||||
@@ -2133,17 +2123,17 @@ ejs@^3.1.8:
|
||||
dependencies:
|
||||
jake "^10.8.5"
|
||||
|
||||
electron-builder@24.0.0-alpha.7:
|
||||
version "24.0.0-alpha.7"
|
||||
resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-24.0.0-alpha.7.tgz#1c897b334d3fdaac57365a81cdb899fcca7aa697"
|
||||
integrity sha512-havD3dI5q9C4eWr+mJg82dKS81kYhcDUgBnRU90wxRdjT8R+cxqJxtgk/poJbMJi/qURza9wedAkgQbk48QQLQ==
|
||||
electron-builder@24.0.0-alpha.10:
|
||||
version "24.0.0-alpha.10"
|
||||
resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-24.0.0-alpha.10.tgz#1713da06493bffd02e76a6809b1e7147e0a4339c"
|
||||
integrity sha512-10HkSuAV2HYW/KrL2AjhLtToFceACq73qAofg87vv4+kSe06dTHeiWCfYxEomFukYd0Vxu5Mvnfg+E4M0qGQrA==
|
||||
dependencies:
|
||||
"@types/yargs" "^17.0.16"
|
||||
app-builder-lib "24.0.0-alpha.7"
|
||||
builder-util "24.0.0-alpha.6"
|
||||
builder-util-runtime "9.1.2-alpha.1"
|
||||
app-builder-lib "24.0.0-alpha.10"
|
||||
builder-util "24.0.0-alpha.8"
|
||||
builder-util-runtime "9.2.0-alpha.2"
|
||||
chalk "^4.1.2"
|
||||
dmg-builder "24.0.0-alpha.7"
|
||||
dmg-builder "24.0.0-alpha.10"
|
||||
fs-extra "^10.1.0"
|
||||
is-ci "^3.0.0"
|
||||
lazy-val "^1.0.5"
|
||||
@@ -2151,14 +2141,14 @@ electron-builder@24.0.0-alpha.7:
|
||||
simple-update-notifier "^1.1.0"
|
||||
yargs "^17.6.2"
|
||||
|
||||
electron-publish@24.0.0-alpha.6:
|
||||
version "24.0.0-alpha.6"
|
||||
resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-24.0.0-alpha.6.tgz#df6edd7b95eec038b4f287968b9c9af6aaa74cd6"
|
||||
integrity sha512-ppRriKQuLGK8eZrCveQrf1zB+fV6qcTck6cq4NEC61KyvtQlUdvDV4yGRVmkOO28CYRmhq9w093T93Qc6k/TeQ==
|
||||
electron-publish@24.0.0-alpha.8:
|
||||
version "24.0.0-alpha.8"
|
||||
resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-24.0.0-alpha.8.tgz#d2326a33938ddc73bab83f149dbd9bab67b85804"
|
||||
integrity sha512-DTu/Waa8UVTbuFXWzSn+Wp7IKJC21sx64eM0mY4b7FESa/6BXQnIiFgaC6DU4b8TLofhFQ1uVgp6g1sFWi9fAQ==
|
||||
dependencies:
|
||||
"@types/fs-extra" "^9.0.11"
|
||||
builder-util "24.0.0-alpha.6"
|
||||
builder-util-runtime "9.1.2-alpha.1"
|
||||
builder-util "24.0.0-alpha.8"
|
||||
builder-util-runtime "9.2.0-alpha.2"
|
||||
chalk "^4.1.2"
|
||||
fs-extra "^10.1.0"
|
||||
lazy-val "^1.0.5"
|
||||
@@ -2169,10 +2159,10 @@ electron-to-chromium@^1.4.251:
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592"
|
||||
integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==
|
||||
|
||||
electron@22.0.0:
|
||||
version "22.0.0"
|
||||
resolved "https://registry.yarnpkg.com/electron/-/electron-22.0.0.tgz#ef84ab9cf23aa3f8c2f42a1e8e000ad7fd941058"
|
||||
integrity sha512-cgRc4wjyM+81A0E8UGv1HNJjL1HBI5cWNh/DUIjzYvoUuiEM0SS0hAH/zaFQ18xOz2ced6Yih8SybpOiOYJhdg==
|
||||
electron@22.0.3:
|
||||
version "22.0.3"
|
||||
resolved "https://registry.yarnpkg.com/electron/-/electron-22.0.3.tgz#44806cd053ea2ed35bffefd92143d3fc69d7337d"
|
||||
integrity sha512-eETrJTINTzlXgQrnJSrKiF2Xdt5EHpxZ6Kk+WUjFCE0zUztdVm+hrngUecqhj8TPFlYScTANzPwRwUIjOChl+g==
|
||||
dependencies:
|
||||
"@electron/get" "^2.0.0"
|
||||
"@types/node" "^16.11.26"
|
||||
@@ -2319,13 +2309,13 @@ eslint-visitor-keys@^3.3.0:
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
|
||||
integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
|
||||
|
||||
eslint@8.29.0:
|
||||
version "8.29.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.29.0.tgz#d74a88a20fb44d59c51851625bc4ee8d0ec43f87"
|
||||
integrity sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==
|
||||
eslint@8.32.0:
|
||||
version "8.32.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.32.0.tgz#d9690056bb6f1a302bd991e7090f5b68fbaea861"
|
||||
integrity sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==
|
||||
dependencies:
|
||||
"@eslint/eslintrc" "^1.3.3"
|
||||
"@humanwhocodes/config-array" "^0.11.6"
|
||||
"@eslint/eslintrc" "^1.4.1"
|
||||
"@humanwhocodes/config-array" "^0.11.8"
|
||||
"@humanwhocodes/module-importer" "^1.0.1"
|
||||
"@nodelib/fs.walk" "^1.2.8"
|
||||
ajv "^6.10.0"
|
||||
@@ -2344,7 +2334,7 @@ eslint@8.29.0:
|
||||
file-entry-cache "^6.0.1"
|
||||
find-up "^5.0.0"
|
||||
glob-parent "^6.0.2"
|
||||
globals "^13.15.0"
|
||||
globals "^13.19.0"
|
||||
grapheme-splitter "^1.0.4"
|
||||
ignore "^5.2.0"
|
||||
import-fresh "^3.0.0"
|
||||
@@ -2480,9 +2470,9 @@ fastest-levenshtein@^1.0.12:
|
||||
integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==
|
||||
|
||||
fastq@^1.6.0:
|
||||
version "1.14.0"
|
||||
resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.14.0.tgz#107f69d7295b11e0fccc264e1fc6389f623731ce"
|
||||
integrity sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==
|
||||
version "1.15.0"
|
||||
resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a"
|
||||
integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==
|
||||
dependencies:
|
||||
reusify "^1.0.4"
|
||||
|
||||
@@ -2634,9 +2624,9 @@ get-caller-file@^2.0.5:
|
||||
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
|
||||
|
||||
get-intrinsic@^1.1.1:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385"
|
||||
integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f"
|
||||
integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==
|
||||
dependencies:
|
||||
function-bind "^1.1.1"
|
||||
has "^1.0.3"
|
||||
@@ -2684,9 +2674,9 @@ glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
glob@^8.0.1:
|
||||
version "8.0.3"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e"
|
||||
integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==
|
||||
version "8.1.0"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e"
|
||||
integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
|
||||
dependencies:
|
||||
fs.realpath "^1.0.0"
|
||||
inflight "^1.0.4"
|
||||
@@ -2711,7 +2701,7 @@ globals@^11.1.0:
|
||||
resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
|
||||
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
|
||||
|
||||
globals@^13.15.0, globals@^13.19.0:
|
||||
globals@^13.19.0:
|
||||
version "13.19.0"
|
||||
resolved "https://registry.yarnpkg.com/globals/-/globals-13.19.0.tgz#7a42de8e6ad4f7242fbcca27ea5b23aca367b5c8"
|
||||
integrity sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==
|
||||
@@ -3471,9 +3461,9 @@ jest@29.3.1:
|
||||
jest-cli "^29.3.1"
|
||||
|
||||
js-sdsl@^4.1.4:
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.2.0.tgz#278e98b7bea589b8baaf048c20aeb19eb7ad09d0"
|
||||
integrity sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==
|
||||
version "4.3.0"
|
||||
resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.3.0.tgz#aeefe32a451f7af88425b11fdb5f58c90ae1d711"
|
||||
integrity sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==
|
||||
|
||||
js-tokens@^4.0.0:
|
||||
version "4.0.0"
|
||||
@@ -3495,7 +3485,39 @@ js-yaml@^4.1.0:
|
||||
dependencies:
|
||||
argparse "^2.0.1"
|
||||
|
||||
jsdom@20.0.3, jsdom@^20.0.0:
|
||||
jsdom@21.0.0:
|
||||
version "21.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-21.0.0.tgz#33e22f2fc44286e50ac853c7b7656c8864a4ea45"
|
||||
integrity sha512-AIw+3ZakSUtDYvhwPwWHiZsUi3zHugpMEKlNPaurviseYoBqo0zBd3zqoUi3LPCNtPFlEP8FiW9MqCZdjb2IYA==
|
||||
dependencies:
|
||||
abab "^2.0.6"
|
||||
acorn "^8.8.1"
|
||||
acorn-globals "^7.0.0"
|
||||
cssom "^0.5.0"
|
||||
cssstyle "^2.3.0"
|
||||
data-urls "^3.0.2"
|
||||
decimal.js "^10.4.2"
|
||||
domexception "^4.0.0"
|
||||
escodegen "^2.0.0"
|
||||
form-data "^4.0.0"
|
||||
html-encoding-sniffer "^3.0.0"
|
||||
http-proxy-agent "^5.0.0"
|
||||
https-proxy-agent "^5.0.1"
|
||||
is-potential-custom-element-name "^1.0.1"
|
||||
nwsapi "^2.2.2"
|
||||
parse5 "^7.1.1"
|
||||
saxes "^6.0.0"
|
||||
symbol-tree "^3.2.4"
|
||||
tough-cookie "^4.1.2"
|
||||
w3c-xmlserializer "^4.0.0"
|
||||
webidl-conversions "^7.0.0"
|
||||
whatwg-encoding "^2.0.0"
|
||||
whatwg-mimetype "^3.0.0"
|
||||
whatwg-url "^11.0.0"
|
||||
ws "^8.11.0"
|
||||
xml-name-validator "^4.0.0"
|
||||
|
||||
jsdom@^20.0.0:
|
||||
version "20.0.3"
|
||||
resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db"
|
||||
integrity sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==
|
||||
@@ -3557,10 +3579,10 @@ json-stringify-safe@^5.0.1:
|
||||
resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
|
||||
integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==
|
||||
|
||||
json5@^2.2.0, json5@^2.2.1:
|
||||
version "2.2.2"
|
||||
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.2.tgz#64471c5bdcc564c18f7c1d4df2e2297f2457c5ab"
|
||||
integrity sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==
|
||||
json5@^2.2.0, json5@^2.2.2:
|
||||
version "2.2.3"
|
||||
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
|
||||
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
|
||||
|
||||
jsonfile@^4.0.0:
|
||||
version "4.0.0"
|
||||
@@ -3732,10 +3754,10 @@ makeerror@1.0.12:
|
||||
dependencies:
|
||||
tmpl "1.0.5"
|
||||
|
||||
marked@4.2.4:
|
||||
version "4.2.4"
|
||||
resolved "https://registry.yarnpkg.com/marked/-/marked-4.2.4.tgz#5a4ce6c7a1ae0c952601fce46376ee4cf1797e1c"
|
||||
integrity sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==
|
||||
marked@4.2.12:
|
||||
version "4.2.12"
|
||||
resolved "https://registry.yarnpkg.com/marked/-/marked-4.2.12.tgz#d69a64e21d71b06250da995dcd065c11083bebb5"
|
||||
integrity sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==
|
||||
|
||||
matcher@^3.0.0:
|
||||
version "3.0.0"
|
||||
@@ -3797,9 +3819,9 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
|
||||
brace-expansion "^1.1.7"
|
||||
|
||||
minimatch@^5.0.1, minimatch@^5.1.1:
|
||||
version "5.1.2"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.2.tgz#0939d7d6f0898acbd1508abe534d1929368a8fff"
|
||||
integrity sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==
|
||||
version "5.1.6"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96"
|
||||
integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==
|
||||
dependencies:
|
||||
brace-expansion "^2.0.1"
|
||||
|
||||
@@ -3874,16 +3896,11 @@ mkdirp@^1.0.3, mkdirp@^1.0.4:
|
||||
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
|
||||
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
|
||||
|
||||
ms@2.1.2:
|
||||
ms@2.1.2, ms@^2.0.0:
|
||||
version "2.1.2"
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
|
||||
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
|
||||
|
||||
ms@^2.0.0:
|
||||
version "2.1.3"
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
|
||||
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
|
||||
|
||||
natural-compare@1.4.0, natural-compare@^1.4.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
|
||||
@@ -3900,9 +3917,9 @@ neo-async@^2.6.2:
|
||||
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
|
||||
|
||||
node-abi@^3.0.0:
|
||||
version "3.30.0"
|
||||
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.30.0.tgz#d84687ad5d24ca81cdfa912a36f2c5c19b137359"
|
||||
integrity sha512-qWO5l3SCqbwQavymOmtTVuCWZE23++S+rxyoHjXqUmPyzRcaoI4lA2gO55/drddGnedAyjA7sk76SfQ5lfUMnw==
|
||||
version "3.31.0"
|
||||
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.31.0.tgz#dfb2ea3d01188eb80859f69bb4a4354090c1b355"
|
||||
integrity sha512-eSKV6s+APenqVh8ubJyiu/YhZgxQpGP66ntzUb3lY1xB9ukSRaGnx0AIxI+IM+1+IVYC1oWobgG5L3Lt9ARykQ==
|
||||
dependencies:
|
||||
semver "^7.3.5"
|
||||
|
||||
@@ -3924,9 +3941,9 @@ node-api-version@^0.1.4:
|
||||
semver "^7.3.5"
|
||||
|
||||
node-gyp-build@^4.2.1:
|
||||
version "4.5.0"
|
||||
resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40"
|
||||
integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==
|
||||
version "4.6.0"
|
||||
resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.0.tgz#0c52e4cbf54bbd28b709820ef7b6a3c2d6209055"
|
||||
integrity sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==
|
||||
|
||||
node-gyp@^9.0.0:
|
||||
version "9.3.1"
|
||||
@@ -4234,9 +4251,9 @@ pump@^3.0.0:
|
||||
once "^1.3.1"
|
||||
|
||||
punycode@^2.1.0, punycode@^2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
|
||||
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
|
||||
version "2.3.0"
|
||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
|
||||
integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
|
||||
|
||||
querystringify@^2.1.1:
|
||||
version "2.2.0"
|
||||
@@ -4331,9 +4348,9 @@ resolve-from@^5.0.0:
|
||||
integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
|
||||
|
||||
resolve.exports@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9"
|
||||
integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999"
|
||||
integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==
|
||||
|
||||
resolve@^1.20.0:
|
||||
version "1.22.1"
|
||||
@@ -4463,9 +4480,9 @@ serialize-error@^7.0.1:
|
||||
type-fest "^0.13.1"
|
||||
|
||||
serialize-javascript@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"
|
||||
integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==
|
||||
version "6.0.1"
|
||||
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c"
|
||||
integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==
|
||||
dependencies:
|
||||
randombytes "^2.1.0"
|
||||
|
||||
@@ -4740,17 +4757,17 @@ text-table@^0.2.0:
|
||||
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
|
||||
integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
|
||||
|
||||
tldts-core@^5.7.103:
|
||||
version "5.7.103"
|
||||
resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.103.tgz#462fd4b60704ddca9b71bd17c2c59504e6985ca5"
|
||||
integrity sha512-MdSolgnhJwr2SH6a+5KFAYB8znpYdRLoOFTJmrWslsec9Ne/V3DBrw+BbS1YYQJKGTin6U02Y9CSYxnOpg3vwg==
|
||||
tldts-core@^5.7.104:
|
||||
version "5.7.104"
|
||||
resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.104.tgz#4313a9663e4085332750a5fb04bfa0b0d91b826d"
|
||||
integrity sha512-8vhSgc2nzPNT0J7XyCqcOtQ6+ySBn+gsPmj5h95YytIZ7L2Xl40paUmj0T6Uko42HegHGQxXieunHIQuABWSmQ==
|
||||
|
||||
tldts-experimental@^5.6.21:
|
||||
version "5.7.103"
|
||||
resolved "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.103.tgz#a0b15a05c2cec7f0d4935de18dc9ad3fcbe0276f"
|
||||
integrity sha512-oo9QI0TjXdrlZnDSJMazRJe+nnd0OwXgzRmHcsnyp4k6UxmmlaWEA1iq3RY3EDSKwYEJ+lDnwQeAaGRleU/LEQ==
|
||||
version "5.7.104"
|
||||
resolved "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.104.tgz#f23e526240f674039857b653361f5da549dae758"
|
||||
integrity sha512-GSFlkgTW0csMjbCCbjd4cnkV6MbUVVxE27S8CS+gN44QZzcygepDSKVyQ81hkwMZrLwDDrOmWEAEhNVJJ6JSBA==
|
||||
dependencies:
|
||||
tldts-core "^5.7.103"
|
||||
tldts-core "^5.7.104"
|
||||
|
||||
tmp-promise@^3.0.2:
|
||||
version "3.0.3"
|
||||
@@ -5094,9 +5111,9 @@ write-file-atomic@^4.0.1:
|
||||
signal-exit "^3.0.7"
|
||||
|
||||
ws@^8.11.0:
|
||||
version "8.11.0"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143"
|
||||
integrity sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==
|
||||
version "8.12.0"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8"
|
||||
integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==
|
||||
|
||||
xml-name-validator@^4.0.0:
|
||||
version "4.0.0"
|
||||
|
||||
@@ -26,19 +26,19 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_babel_compat_data___compat_data_7.20.5.tgz";
|
||||
name = "_babel_compat_data___compat_data_7.20.10.tgz";
|
||||
path = fetchurl {
|
||||
name = "_babel_compat_data___compat_data_7.20.5.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.5.tgz";
|
||||
sha512 = "KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==";
|
||||
name = "_babel_compat_data___compat_data_7.20.10.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz";
|
||||
sha512 = "sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_babel_core___core_7.20.7.tgz";
|
||||
name = "_babel_core___core_7.20.12.tgz";
|
||||
path = fetchurl {
|
||||
name = "_babel_core___core_7.20.7.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/core/-/core-7.20.7.tgz";
|
||||
sha512 = "t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==";
|
||||
name = "_babel_core___core_7.20.12.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz";
|
||||
sha512 = "XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -90,11 +90,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_babel_helper_module_transforms___helper_module_transforms_7.20.7.tgz";
|
||||
name = "_babel_helper_module_transforms___helper_module_transforms_7.20.11.tgz";
|
||||
path = fetchurl {
|
||||
name = "_babel_helper_module_transforms___helper_module_transforms_7.20.7.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.7.tgz";
|
||||
sha512 = "FNdu7r67fqMUSVuQpFQGE6BPdhJIhitoxhGzDbAXNcA07uoVG37fOiMk3OSV8rEICuyG6t8LGkd9EE64qIEoIA==";
|
||||
name = "_babel_helper_module_transforms___helper_module_transforms_7.20.11.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz";
|
||||
sha512 = "uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -290,11 +290,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_babel_traverse___traverse_7.20.7.tgz";
|
||||
name = "_babel_traverse___traverse_7.20.12.tgz";
|
||||
path = fetchurl {
|
||||
name = "_babel_traverse___traverse_7.20.7.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.7.tgz";
|
||||
sha512 = "xueOL5+ZKX2dJbg8z8o4f4uTRTqGDRjilva9D1hiRlayJbTY8jBRL+Ph67IeRTIE439/VifHk+Z4g0SwRtQE0A==";
|
||||
name = "_babel_traverse___traverse_7.20.12.tgz";
|
||||
url = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.12.tgz";
|
||||
sha512 = "MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -314,43 +314,43 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_cliqz_adblocker_content___adblocker_content_1.25.1.tgz";
|
||||
name = "_cliqz_adblocker_content___adblocker_content_1.25.2.tgz";
|
||||
path = fetchurl {
|
||||
name = "_cliqz_adblocker_content___adblocker_content_1.25.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.25.1.tgz";
|
||||
sha512 = "7gl2VdNPBfj7aPoq34B5miwGcnda/7LCr+BqnpcSOjdLV6jjT2FrNSAKGFvcH23q0HM1IFhYDV6ydTgsdWFCnA==";
|
||||
name = "_cliqz_adblocker_content___adblocker_content_1.25.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.25.2.tgz";
|
||||
sha512 = "Br177fKm/J3yc71m6cLA1OercmfGnZ5avprM/hB1bqZlN7Nt7qjISdZih90jTZ2ljyBVItDoVXOPf4ENlpn0qQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.25.1.tgz";
|
||||
name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.25.2.tgz";
|
||||
path = fetchurl {
|
||||
name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.25.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.25.1.tgz";
|
||||
sha512 = "edNVEqGrXqe/Qwi0D9/V8xmtyeJlhNPaelXilYa1ne7jG/OT7pee+7Vi4BWezl0NQ77WF3/mY9Bj4eJkEO0uiQ==";
|
||||
name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.25.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.25.2.tgz";
|
||||
sha512 = "d2W5/ZSLZtHTgzqdW3gEAoCHJU1o4FYuAEVjB6L7cmV9S0UZRfTBL3wTtO/gzt/wo1LMk4MFAxOqC+riNj6x1g==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_cliqz_adblocker_electron___adblocker_electron_1.25.1.tgz";
|
||||
name = "_cliqz_adblocker_electron___adblocker_electron_1.25.2.tgz";
|
||||
path = fetchurl {
|
||||
name = "_cliqz_adblocker_electron___adblocker_electron_1.25.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.25.1.tgz";
|
||||
sha512 = "CKStwRTR2L78EjgmuUpLKkV9s/uVnwQNGr7I/hyMkEROXbGdrN7P5LhwO+kkewccZ+3JtE509PBmZAp0EP71dw==";
|
||||
name = "_cliqz_adblocker_electron___adblocker_electron_1.25.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.25.2.tgz";
|
||||
sha512 = "GdYrEfhdIALm8Ue07+YONBArlQLuXHryO8UojMcEjDKYC3zp0OOl4ifi/92XpwVXdXSfX0jTavqC7ExLzRHzgQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.25.1.tgz";
|
||||
name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.25.2.tgz";
|
||||
path = fetchurl {
|
||||
name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.25.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.25.1.tgz";
|
||||
sha512 = "4MdMe/YfIok5d8WYVcLR3Ak7vGrmeUV47frgmXEe945luY93vwlzk1NiLYW1JM5Gdm+VePweoS9cJ1/QUTmv+Q==";
|
||||
name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.25.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.25.2.tgz";
|
||||
sha512 = "acHxeUoR9TwHbgTKLrNt/ZLRxO4M+DkaNheRp86Kd2lfpn/qbN3yAH2k2mTJ/E0rWV5do9m8QRMR1mtB1yNuhQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_cliqz_adblocker___adblocker_1.25.1.tgz";
|
||||
name = "_cliqz_adblocker___adblocker_1.25.2.tgz";
|
||||
path = fetchurl {
|
||||
name = "_cliqz_adblocker___adblocker_1.25.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.25.1.tgz";
|
||||
sha512 = "1C1/ELI94/XewdUj/o1+Q4ziOigMvTZQA05UERfDoKqpJ+0cbrEF/UImrzpX7n+kYsR7xTJvmf+iNM3zS0tfsg==";
|
||||
name = "_cliqz_adblocker___adblocker_1.25.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.25.2.tgz";
|
||||
sha512 = "wEgj1ppkrC1JjZyeGQx0Sxfvot9Dt8fuea7vckx07zDdEfvm5ML5WIXyxT8KvEhGB8VuM+KGJpUk05lFUpromw==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -370,11 +370,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_electron_asar___asar_3.2.2.tgz";
|
||||
name = "_electron_asar___asar_3.2.3.tgz";
|
||||
path = fetchurl {
|
||||
name = "_electron_asar___asar_3.2.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/@electron/asar/-/asar-3.2.2.tgz";
|
||||
sha512 = "32fMU68x8a6zvxtC1IC/BhPDKTh8rQjdmwEplj3CDpnkcwBzZVN9v/8cK0LJqQ0FOQQVZW8BWZ1S6UU53TYR4w==";
|
||||
name = "_electron_asar___asar_3.2.3.tgz";
|
||||
url = "https://registry.yarnpkg.com/@electron/asar/-/asar-3.2.3.tgz";
|
||||
sha512 = "wmOfE6szYyqZhRIiLH+eyZEp+bGcJI0OD/SCvSUrfBE0jvauyGYO2ZhpWxmNCcDojKu5DYrsVqT5BOCZZ01XIg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -418,11 +418,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_eslint_eslintrc___eslintrc_1.4.0.tgz";
|
||||
name = "_eslint_eslintrc___eslintrc_1.4.1.tgz";
|
||||
path = fetchurl {
|
||||
name = "_eslint_eslintrc___eslintrc_1.4.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.0.tgz";
|
||||
sha512 = "7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==";
|
||||
name = "_eslint_eslintrc___eslintrc_1.4.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz";
|
||||
sha512 = "XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -810,11 +810,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_babel__core___babel__core_7.1.20.tgz";
|
||||
name = "_types_babel__core___babel__core_7.20.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_babel__core___babel__core_7.1.20.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.20.tgz";
|
||||
sha512 = "PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==";
|
||||
name = "_types_babel__core___babel__core_7.20.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz";
|
||||
sha512 = "+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -850,11 +850,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_chrome___chrome_0.0.197.tgz";
|
||||
name = "_types_chrome___chrome_0.0.206.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_chrome___chrome_0.0.197.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.197.tgz";
|
||||
sha512 = "m1NfS5bOjaypyqQfaX6CxmJodZVcvj5+Mt/K94EBHkflYjPNmXHAzbxfifdLMa0YM3PDyOxohoTS5ug/e6p5jA==";
|
||||
name = "_types_chrome___chrome_0.0.206.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.206.tgz";
|
||||
sha512 = "fQnTFjghPB9S4UzbfublUB6KmsBkvvJeGXGaaoD5Qu+ZxrDUfgJnKN5egLSzDcGAH5YxQubDgbCdNwwUGewQHg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -881,14 +881,6 @@
|
||||
sha512 = "Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_estree___estree_1.0.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_estree___estree_1.0.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz";
|
||||
sha512 = "WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_estree___estree_0.0.51.tgz";
|
||||
path = fetchurl {
|
||||
@@ -938,11 +930,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_graceful_fs___graceful_fs_4.1.5.tgz";
|
||||
name = "_types_graceful_fs___graceful_fs_4.1.6.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_graceful_fs___graceful_fs_4.1.5.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz";
|
||||
sha512 = "anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==";
|
||||
name = "_types_graceful_fs___graceful_fs_4.1.6.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz";
|
||||
sha512 = "Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1026,19 +1018,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_node___node_18.11.17.tgz";
|
||||
name = "_types_node___node_16.18.11.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_node___node_18.11.17.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/node/-/node-18.11.17.tgz";
|
||||
sha512 = "HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_node___node_16.18.10.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_node___node_16.18.10.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/node/-/node-16.18.10.tgz";
|
||||
sha512 = "XU1+v7h81p7145ddPfjv7jtWvkSilpcnON3mQ+bDi9Yuf7OI56efOglXRyXWgQ57xH3fEQgh7WOJMncRHVew5w==";
|
||||
name = "_types_node___node_16.18.11.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/node/-/node-16.18.11.tgz";
|
||||
sha512 = "3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1098,11 +1082,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "_types_yargs___yargs_17.0.17.tgz";
|
||||
name = "_types_yargs___yargs_17.0.20.tgz";
|
||||
path = fetchurl {
|
||||
name = "_types_yargs___yargs_17.0.17.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.17.tgz";
|
||||
sha512 = "72bWxFKTK6uwWJAVT+3rF6Jo6RTojiJ27FQo8Rf60AL+VZbzoVPnMFhKsUnbjR8A3BTCYQ7Mv3hnl8T0A+CX9g==";
|
||||
name = "_types_yargs___yargs_17.0.20.tgz";
|
||||
url = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.20.tgz";
|
||||
sha512 = "eknWrTHofQuPk2iuqDm1waA7V6xPlbgBoaaXEgYkClhLOnB0TtbW+srJaOToAgawPxPlHQzwypFA2bhZaUGP5A==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1426,11 +1410,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "app_builder_lib___app_builder_lib_24.0.0_alpha.7.tgz";
|
||||
name = "app_builder_lib___app_builder_lib_24.0.0_alpha.10.tgz";
|
||||
path = fetchurl {
|
||||
name = "app_builder_lib___app_builder_lib_24.0.0_alpha.7.tgz";
|
||||
url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-24.0.0-alpha.7.tgz";
|
||||
sha512 = "kEzDjym0AV9pO4SX8+RaJX9fmxrrKlDzHxqAN7cxSgDM8BUneMJqeWtf9+Hqv6PMXAvpnRsrSHtNaYgDkhQdFA==";
|
||||
name = "app_builder_lib___app_builder_lib_24.0.0_alpha.10.tgz";
|
||||
url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-24.0.0-alpha.10.tgz";
|
||||
sha512 = "gKrBTbzEChV61mnr9RCjwv8XWUwfdrgj3AAPnQTNEpbGWwgHOuwtBjjYbUHdCm5QXnlGxHBsB1ODmvkPUOL4cg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1674,19 +1658,19 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "builder_util_runtime___builder_util_runtime_9.1.2_alpha.1.tgz";
|
||||
name = "builder_util_runtime___builder_util_runtime_9.2.0_alpha.2.tgz";
|
||||
path = fetchurl {
|
||||
name = "builder_util_runtime___builder_util_runtime_9.1.2_alpha.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.1.2-alpha.1.tgz";
|
||||
sha512 = "4sbKIB0N9J/pvixX9HYUyRtMZT+cN+bgPJ5NqejyqSPxFzj7IFe1A9K14l5nnfpMVxzUSZVQMerniDeGszZ9OA==";
|
||||
name = "builder_util_runtime___builder_util_runtime_9.2.0_alpha.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.2.0-alpha.2.tgz";
|
||||
sha512 = "MFuU0OSYQ4TIa5uMmVis3aJd7i5buaC9qrb0GjGNPD/GVwQ2LqydquqlKSBlptCib6bjSnL15dHsTbD2xWlVqQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "builder_util___builder_util_24.0.0_alpha.6.tgz";
|
||||
name = "builder_util___builder_util_24.0.0_alpha.8.tgz";
|
||||
path = fetchurl {
|
||||
name = "builder_util___builder_util_24.0.0_alpha.6.tgz";
|
||||
url = "https://registry.yarnpkg.com/builder-util/-/builder-util-24.0.0-alpha.6.tgz";
|
||||
sha512 = "vSnVMyuZK0RArELPk1dLUdcunZ2Gj0mpAFat73yD5djiihNosXIpIbSO/OFTi2/MV0urlH0giU4DOs9EXaCKtA==";
|
||||
name = "builder_util___builder_util_24.0.0_alpha.8.tgz";
|
||||
url = "https://registry.yarnpkg.com/builder-util/-/builder-util-24.0.0-alpha.8.tgz";
|
||||
sha512 = "18NtwmgSweocvAV1hp3UMhG67n5NzFcZ1UBb7L38oWchfPfgus4N+aIkVuOYwWG8FvUFcbkm6KT59NVLC2lFqg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1738,11 +1722,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "caniuse_lite___caniuse_lite_1.0.30001441.tgz";
|
||||
name = "caniuse_lite___caniuse_lite_1.0.30001446.tgz";
|
||||
path = fetchurl {
|
||||
name = "caniuse_lite___caniuse_lite_1.0.30001441.tgz";
|
||||
url = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz";
|
||||
sha512 = "OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==";
|
||||
name = "caniuse_lite___caniuse_lite_1.0.30001446.tgz";
|
||||
url = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz";
|
||||
sha512 = "fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1794,11 +1778,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "ci_info___ci_info_3.7.0.tgz";
|
||||
name = "ci_info___ci_info_3.7.1.tgz";
|
||||
path = fetchurl {
|
||||
name = "ci_info___ci_info_3.7.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.0.tgz";
|
||||
sha512 = "2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==";
|
||||
name = "ci_info___ci_info_3.7.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.1.tgz";
|
||||
sha512 = "4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -1962,11 +1946,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "commander___commander_9.4.1.tgz";
|
||||
name = "commander___commander_9.5.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "commander___commander_9.4.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/commander/-/commander-9.4.1.tgz";
|
||||
sha512 = "5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==";
|
||||
name = "commander___commander_9.5.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz";
|
||||
sha512 = "KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2218,11 +2202,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "dmg_builder___dmg_builder_24.0.0_alpha.7.tgz";
|
||||
name = "dmg_builder___dmg_builder_24.0.0_alpha.10.tgz";
|
||||
path = fetchurl {
|
||||
name = "dmg_builder___dmg_builder_24.0.0_alpha.7.tgz";
|
||||
url = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-24.0.0-alpha.7.tgz";
|
||||
sha512 = "5aQvKHvUb3vBjwwRRaYee9kvqKt+LKWFuOh4E750hClRIaYHQBOCxN2Ws0QVUxwZ22kBP+RQ0LS1tfesBGLPsw==";
|
||||
name = "dmg_builder___dmg_builder_24.0.0_alpha.10.tgz";
|
||||
url = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-24.0.0-alpha.10.tgz";
|
||||
sha512 = "kOGq/9Qa0LDndMvG3MYv9oGCIPEwKTdCEIu4y3FtjB7VELvpjC/OoDphxRxLyVFzgb1tMDiAl7GoYIFYC5dkOg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2274,19 +2258,19 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "electron_builder___electron_builder_24.0.0_alpha.7.tgz";
|
||||
name = "electron_builder___electron_builder_24.0.0_alpha.10.tgz";
|
||||
path = fetchurl {
|
||||
name = "electron_builder___electron_builder_24.0.0_alpha.7.tgz";
|
||||
url = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-24.0.0-alpha.7.tgz";
|
||||
sha512 = "havD3dI5q9C4eWr+mJg82dKS81kYhcDUgBnRU90wxRdjT8R+cxqJxtgk/poJbMJi/qURza9wedAkgQbk48QQLQ==";
|
||||
name = "electron_builder___electron_builder_24.0.0_alpha.10.tgz";
|
||||
url = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-24.0.0-alpha.10.tgz";
|
||||
sha512 = "10HkSuAV2HYW/KrL2AjhLtToFceACq73qAofg87vv4+kSe06dTHeiWCfYxEomFukYd0Vxu5Mvnfg+E4M0qGQrA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "electron_publish___electron_publish_24.0.0_alpha.6.tgz";
|
||||
name = "electron_publish___electron_publish_24.0.0_alpha.8.tgz";
|
||||
path = fetchurl {
|
||||
name = "electron_publish___electron_publish_24.0.0_alpha.6.tgz";
|
||||
url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-24.0.0-alpha.6.tgz";
|
||||
sha512 = "ppRriKQuLGK8eZrCveQrf1zB+fV6qcTck6cq4NEC61KyvtQlUdvDV4yGRVmkOO28CYRmhq9w093T93Qc6k/TeQ==";
|
||||
name = "electron_publish___electron_publish_24.0.0_alpha.8.tgz";
|
||||
url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-24.0.0-alpha.8.tgz";
|
||||
sha512 = "DTu/Waa8UVTbuFXWzSn+Wp7IKJC21sx64eM0mY4b7FESa/6BXQnIiFgaC6DU4b8TLofhFQ1uVgp6g1sFWi9fAQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2298,11 +2282,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "electron___electron_22.0.0.tgz";
|
||||
name = "electron___electron_22.0.3.tgz";
|
||||
path = fetchurl {
|
||||
name = "electron___electron_22.0.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/electron/-/electron-22.0.0.tgz";
|
||||
sha512 = "cgRc4wjyM+81A0E8UGv1HNJjL1HBI5cWNh/DUIjzYvoUuiEM0SS0hAH/zaFQ18xOz2ced6Yih8SybpOiOYJhdg==";
|
||||
name = "electron___electron_22.0.3.tgz";
|
||||
url = "https://registry.yarnpkg.com/electron/-/electron-22.0.3.tgz";
|
||||
sha512 = "eETrJTINTzlXgQrnJSrKiF2Xdt5EHpxZ6Kk+WUjFCE0zUztdVm+hrngUecqhj8TPFlYScTANzPwRwUIjOChl+g==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2490,11 +2474,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "eslint___eslint_8.29.0.tgz";
|
||||
name = "eslint___eslint_8.32.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "eslint___eslint_8.29.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/eslint/-/eslint-8.29.0.tgz";
|
||||
sha512 = "isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==";
|
||||
name = "eslint___eslint_8.32.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/eslint/-/eslint-8.32.0.tgz";
|
||||
sha512 = "nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2634,11 +2618,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "fastq___fastq_1.14.0.tgz";
|
||||
name = "fastq___fastq_1.15.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "fastq___fastq_1.14.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/fastq/-/fastq-1.14.0.tgz";
|
||||
sha512 = "eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==";
|
||||
name = "fastq___fastq_1.15.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz";
|
||||
sha512 = "wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2802,11 +2786,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "get_intrinsic___get_intrinsic_1.1.3.tgz";
|
||||
name = "get_intrinsic___get_intrinsic_1.2.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "get_intrinsic___get_intrinsic_1.1.3.tgz";
|
||||
url = "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz";
|
||||
sha512 = "QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==";
|
||||
name = "get_intrinsic___get_intrinsic_1.2.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz";
|
||||
sha512 = "L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -2858,11 +2842,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "glob___glob_8.0.3.tgz";
|
||||
name = "glob___glob_8.1.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "glob___glob_8.0.3.tgz";
|
||||
url = "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz";
|
||||
sha512 = "ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==";
|
||||
name = "glob___glob_8.1.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz";
|
||||
sha512 = "r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -3578,11 +3562,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "js_sdsl___js_sdsl_4.2.0.tgz";
|
||||
name = "js_sdsl___js_sdsl_4.3.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "js_sdsl___js_sdsl_4.2.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.2.0.tgz";
|
||||
sha512 = "dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==";
|
||||
name = "js_sdsl___js_sdsl_4.3.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.3.0.tgz";
|
||||
sha512 = "mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -3609,6 +3593,14 @@
|
||||
sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "jsdom___jsdom_21.0.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "jsdom___jsdom_21.0.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/jsdom/-/jsdom-21.0.0.tgz";
|
||||
sha512 = "AIw+3ZakSUtDYvhwPwWHiZsUi3zHugpMEKlNPaurviseYoBqo0zBd3zqoUi3LPCNtPFlEP8FiW9MqCZdjb2IYA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "jsdom___jsdom_20.0.3.tgz";
|
||||
path = fetchurl {
|
||||
@@ -3666,11 +3658,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "json5___json5_2.2.2.tgz";
|
||||
name = "json5___json5_2.2.3.tgz";
|
||||
path = fetchurl {
|
||||
name = "json5___json5_2.2.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/json5/-/json5-2.2.2.tgz";
|
||||
sha512 = "46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==";
|
||||
name = "json5___json5_2.2.3.tgz";
|
||||
url = "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz";
|
||||
sha512 = "XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -3866,11 +3858,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "marked___marked_4.2.4.tgz";
|
||||
name = "marked___marked_4.2.12.tgz";
|
||||
path = fetchurl {
|
||||
name = "marked___marked_4.2.4.tgz";
|
||||
url = "https://registry.yarnpkg.com/marked/-/marked-4.2.4.tgz";
|
||||
sha512 = "Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==";
|
||||
name = "marked___marked_4.2.12.tgz";
|
||||
url = "https://registry.yarnpkg.com/marked/-/marked-4.2.12.tgz";
|
||||
sha512 = "yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -3954,11 +3946,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "minimatch___minimatch_5.1.2.tgz";
|
||||
name = "minimatch___minimatch_5.1.6.tgz";
|
||||
path = fetchurl {
|
||||
name = "minimatch___minimatch_5.1.2.tgz";
|
||||
url = "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.2.tgz";
|
||||
sha512 = "bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==";
|
||||
name = "minimatch___minimatch_5.1.6.tgz";
|
||||
url = "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz";
|
||||
sha512 = "lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -4049,14 +4041,6 @@
|
||||
sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "ms___ms_2.1.3.tgz";
|
||||
path = fetchurl {
|
||||
name = "ms___ms_2.1.3.tgz";
|
||||
url = "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz";
|
||||
sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "natural_compare___natural_compare_1.4.0.tgz";
|
||||
path = fetchurl {
|
||||
@@ -4082,11 +4066,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "node_abi___node_abi_3.30.0.tgz";
|
||||
name = "node_abi___node_abi_3.31.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "node_abi___node_abi_3.30.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/node-abi/-/node-abi-3.30.0.tgz";
|
||||
sha512 = "qWO5l3SCqbwQavymOmtTVuCWZE23++S+rxyoHjXqUmPyzRcaoI4lA2gO55/drddGnedAyjA7sk76SfQ5lfUMnw==";
|
||||
name = "node_abi___node_abi_3.31.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/node-abi/-/node-abi-3.31.0.tgz";
|
||||
sha512 = "eSKV6s+APenqVh8ubJyiu/YhZgxQpGP66ntzUb3lY1xB9ukSRaGnx0AIxI+IM+1+IVYC1oWobgG5L3Lt9ARykQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -4114,11 +4098,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "node_gyp_build___node_gyp_build_4.5.0.tgz";
|
||||
name = "node_gyp_build___node_gyp_build_4.6.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "node_gyp_build___node_gyp_build_4.5.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz";
|
||||
sha512 = "2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==";
|
||||
name = "node_gyp_build___node_gyp_build_4.6.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.0.tgz";
|
||||
sha512 = "NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -4474,11 +4458,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "punycode___punycode_2.1.1.tgz";
|
||||
name = "punycode___punycode_2.3.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "punycode___punycode_2.1.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
|
||||
sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
|
||||
name = "punycode___punycode_2.3.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz";
|
||||
sha512 = "rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -4602,11 +4586,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "resolve.exports___resolve.exports_1.1.0.tgz";
|
||||
name = "resolve.exports___resolve.exports_1.1.1.tgz";
|
||||
path = fetchurl {
|
||||
name = "resolve.exports___resolve.exports_1.1.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz";
|
||||
sha512 = "J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==";
|
||||
name = "resolve.exports___resolve.exports_1.1.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz";
|
||||
sha512 = "/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -4762,11 +4746,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "serialize_javascript___serialize_javascript_6.0.0.tgz";
|
||||
name = "serialize_javascript___serialize_javascript_6.0.1.tgz";
|
||||
path = fetchurl {
|
||||
name = "serialize_javascript___serialize_javascript_6.0.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz";
|
||||
sha512 = "Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==";
|
||||
name = "serialize_javascript___serialize_javascript_6.0.1.tgz";
|
||||
url = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz";
|
||||
sha512 = "owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -5090,19 +5074,19 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "tldts_core___tldts_core_5.7.103.tgz";
|
||||
name = "tldts_core___tldts_core_5.7.104.tgz";
|
||||
path = fetchurl {
|
||||
name = "tldts_core___tldts_core_5.7.103.tgz";
|
||||
url = "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.103.tgz";
|
||||
sha512 = "MdSolgnhJwr2SH6a+5KFAYB8znpYdRLoOFTJmrWslsec9Ne/V3DBrw+BbS1YYQJKGTin6U02Y9CSYxnOpg3vwg==";
|
||||
name = "tldts_core___tldts_core_5.7.104.tgz";
|
||||
url = "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.104.tgz";
|
||||
sha512 = "8vhSgc2nzPNT0J7XyCqcOtQ6+ySBn+gsPmj5h95YytIZ7L2Xl40paUmj0T6Uko42HegHGQxXieunHIQuABWSmQ==";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "tldts_experimental___tldts_experimental_5.7.103.tgz";
|
||||
name = "tldts_experimental___tldts_experimental_5.7.104.tgz";
|
||||
path = fetchurl {
|
||||
name = "tldts_experimental___tldts_experimental_5.7.103.tgz";
|
||||
url = "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.103.tgz";
|
||||
sha512 = "oo9QI0TjXdrlZnDSJMazRJe+nnd0OwXgzRmHcsnyp4k6UxmmlaWEA1iq3RY3EDSKwYEJ+lDnwQeAaGRleU/LEQ==";
|
||||
name = "tldts_experimental___tldts_experimental_5.7.104.tgz";
|
||||
url = "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.104.tgz";
|
||||
sha512 = "GSFlkgTW0csMjbCCbjd4cnkV6MbUVVxE27S8CS+gN44QZzcygepDSKVyQ81hkwMZrLwDDrOmWEAEhNVJJ6JSBA==";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -5482,11 +5466,11 @@
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "ws___ws_8.11.0.tgz";
|
||||
name = "ws___ws_8.12.0.tgz";
|
||||
path = fetchurl {
|
||||
name = "ws___ws_8.11.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz";
|
||||
sha512 = "HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==";
|
||||
name = "ws___ws_8.12.0.tgz";
|
||||
url = "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz";
|
||||
sha512 = "kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==";
|
||||
};
|
||||
}
|
||||
{
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "pachyderm";
|
||||
version = "2.4.4";
|
||||
version = "2.4.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pachyderm";
|
||||
repo = "pachyderm";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-53VUZHA+yURikVtcXXa/fZqwAqwjukBKS4NQEBBoHew=";
|
||||
hash = "sha256-DqBBetOyE8QALMEiYqA0rZEpPhBtde0STxiGrFqqFpY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-k6ODl+whgeeyd8XaOjTDjxfShpOztirjq/Tg98YP8Hs=";
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "pv-migrate";
|
||||
version = "1.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "utkuozdemir";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-I66J1/N8Ln7KBQfzg39wdZuM6PeJGn1HiNK2YVzDySw";
|
||||
};
|
||||
|
||||
subPackages = [ "cmd/pv-migrate" ];
|
||||
|
||||
vendorSha256 = "sha256-/klqOfM0ZhbzZWOLm0pA0/RB84kvfEzFJN1OQUVSNEA";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X main.version=v${version}"
|
||||
"-X main.commit=${src.rev}"
|
||||
"-X main.date=1970-01-01-00:00:01"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "CLI tool to easily migrate Kubernetes persistent volumes ";
|
||||
homepage = "https://github.com/utkuozdemir/pv-migrate";
|
||||
changelog = "https://github.com/utkuozdemir/pv-migrate/releases/tag/${version}";
|
||||
license = licenses.afl20;
|
||||
maintainers = [ maintainers.ivankovnatsky ];
|
||||
};
|
||||
}
|
||||
@@ -412,11 +412,11 @@
|
||||
"vendorHash": "sha256-ZgVA2+2tu17dnAc51Aw3k6v8k7QosNTmFjFhmeknxa8="
|
||||
},
|
||||
"gandi": {
|
||||
"hash": "sha256-mQ4L2XCudyPGDw21jihF7nkSct7/KWAe/txnbtuJ8Lk=",
|
||||
"hash": "sha256-eVSMjXSYRedig93Tm2ZLpbuJhG3wKSBwfLli7OWs3dU=",
|
||||
"homepage": "https://registry.terraform.io/providers/go-gandi/gandi",
|
||||
"owner": "go-gandi",
|
||||
"repo": "terraform-provider-gandi",
|
||||
"rev": "v2.2.2",
|
||||
"rev": "v2.2.3",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-uWTY8cFztXFrQQ7GW6/R+x9M6vHmsb934ldq+oeW5vk="
|
||||
},
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, lib, fetchurl, dpkg
|
||||
, alsa-lib, atk, cairo, cups, dbus, expat, fontconfig, freetype
|
||||
, gdk-pixbuf, glib, pango, nspr, nss, gtk3, mesa
|
||||
, wayland, xorg, autoPatchelfHook, systemd, libnotify, libappindicator
|
||||
, libGL, wayland, xorg, autoPatchelfHook, systemd, libnotify, libappindicator
|
||||
, makeWrapper
|
||||
}:
|
||||
|
||||
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
unpackPhase = "dpkg-deb -x $src .";
|
||||
|
||||
runtimeDependencies = [ (lib.getLib systemd) libnotify libappindicator wayland ];
|
||||
runtimeDependencies = [ (lib.getLib systemd) libGL libnotify libappindicator wayland ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -27,11 +27,11 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "PortfolioPerformance";
|
||||
version = "0.60.2";
|
||||
version = "0.61.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
|
||||
hash = "sha256-jSRZZufGi1wmdT7LeNutkO74bqln8uJ5TSEDCJyfPB4=";
|
||||
hash = "sha256-lpKnhAF/VsbLOHkIy1TFqjT0yKlFMNsN+yMUmpBAZKY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
{ buildGoModule, fetchFromGitHub, lib }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "rime-cli";
|
||||
version = "0.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "puddinging";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-CI0Jva7oA/zUGatv+wCdByqbTBNQRw+4clr8IDKX6HQ=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/puddinging/rime-cli";
|
||||
changelog = "https://github.com/puddinging/rime-cli/releases/tag/v${version}";
|
||||
description = "A command line tool to add customized vocabulary for Rime IME";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ urandom ];
|
||||
};
|
||||
}
|
||||
@@ -8,6 +8,7 @@
|
||||
, kcoreaddons
|
||||
, kdbusaddons
|
||||
, ki18n
|
||||
, kirigami-addons
|
||||
, kirigami2
|
||||
, knotifications
|
||||
, kpurpose
|
||||
@@ -19,8 +20,8 @@
|
||||
, srcs
|
||||
|
||||
# These must be updated in tandem with package updates.
|
||||
, cargoShaForVersion ? "22.11"
|
||||
, cargoSha256 ? "sha256-l1+nRXGt6Oga9yFJ3sVNitUN4XNcVjT1bJwi2XlleF4="
|
||||
, cargoShaForVersion ? "23.01.0"
|
||||
, cargoSha256 ? "sha256-dIXA875HsG56baHrTWw9L560n4s0wRv6Ag/2oj1x0gk="
|
||||
}:
|
||||
|
||||
# Guard against incomplete updates.
|
||||
@@ -57,6 +58,7 @@ mkDerivation rec {
|
||||
kcoreaddons
|
||||
kdbusaddons
|
||||
ki18n
|
||||
kirigami-addons
|
||||
kirigami2
|
||||
knotifications
|
||||
kpurpose
|
||||
|
||||
@@ -1 +1 @@
|
||||
WGET_ARGS=( https://download.kde.org/stable/plasma-mobile/22.11/ -A '*.tar.xz' )
|
||||
WGET_ARGS=( https://download.kde.org/stable/plasma-mobile/23.01.0/ -A '*.tar.xz' )
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
, kconfig
|
||||
, kcoreaddons
|
||||
, ki18n
|
||||
, kirigami-addons
|
||||
, kirigami2
|
||||
, networkmanager-qt
|
||||
, qtkeychain
|
||||
@@ -40,6 +41,7 @@ mkDerivation rec {
|
||||
kconfig
|
||||
kcoreaddons
|
||||
ki18n
|
||||
kirigami-addons
|
||||
kirigami2
|
||||
networkmanager-qt
|
||||
qtkeychain
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
, extra-cmake-modules
|
||||
|
||||
, kconfig
|
||||
, kholidays
|
||||
, ki18n
|
||||
, kirigami-addons
|
||||
, kirigami2
|
||||
@@ -26,6 +27,7 @@ mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
kconfig
|
||||
kholidays
|
||||
ki18n
|
||||
kirigami-addons
|
||||
kirigami2
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
, kdeclarative
|
||||
, ki18n
|
||||
, kirigami2
|
||||
, mpv
|
||||
, qtmultimedia
|
||||
, qtquickcontrols2
|
||||
, yt-dlp
|
||||
@@ -26,6 +27,7 @@ mkDerivation {
|
||||
kdeclarative
|
||||
ki18n
|
||||
kirigami2
|
||||
mpv
|
||||
qtmultimedia
|
||||
qtquickcontrols2
|
||||
] ++ (with gst_all_1; [
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
, kcontacts
|
||||
, ki18n
|
||||
, kio
|
||||
, kirigami-addons
|
||||
, kirigami2
|
||||
, knotifications
|
||||
, kpeople
|
||||
@@ -40,6 +41,7 @@ gcc11Stdenv.mkDerivation rec {
|
||||
kcontacts
|
||||
ki18n
|
||||
kio
|
||||
kirigami-addons
|
||||
kirigami2
|
||||
knotifications
|
||||
kpeople
|
||||
|
||||
@@ -4,195 +4,187 @@
|
||||
|
||||
{
|
||||
alligator = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/alligator-22.11.tar.xz";
|
||||
sha256 = "02hg42mmvykq71my6wbgc3yri4c3mr4bp73b7p21j1b8m3x0ycsl";
|
||||
name = "alligator-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/alligator-23.01.0.tar.xz";
|
||||
sha256 = "00vcj8dvzqj9vhq60ygqj62vx26lnai1j7117q0klp8wc9vngbvc";
|
||||
name = "alligator-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
angelfish = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/angelfish-22.11.tar.xz";
|
||||
sha256 = "07gp6468c7rhf3hzzk6qyz4kcah0s1wnn5r3mx7qmg777xaans9y";
|
||||
name = "angelfish-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/angelfish-23.01.0.tar.xz";
|
||||
sha256 = "1pzms8xj57r8cv400fbcj9f4v8bs8xlws0f8zgak57jw5yxs073p";
|
||||
name = "angelfish-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
audiotube = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/audiotube-22.11.tar.xz";
|
||||
sha256 = "0ga7ag8v9l91j5rrn02kk73zl29lwigcql1xfh7yw5cnky3xd13q";
|
||||
name = "audiotube-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/audiotube-23.01.0.tar.xz";
|
||||
sha256 = "0cjyjqin8zmgav3wf96zv2kr0ifn4xk4il1l5ybwf4k73qg1387x";
|
||||
name = "audiotube-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
calindori = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/calindori-22.11.tar.xz";
|
||||
sha256 = "1mgdd61zmnjbpcwkaq2aiawksf1s86b05sq502by6gpdrwndhb5c";
|
||||
name = "calindori-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/calindori-23.01.0.tar.xz";
|
||||
sha256 = "0jhrxsh6gd20qpq68n2lspfkgq3bam46j6m10jnm3zckb190pfhl";
|
||||
name = "calindori-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
kalk = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/kalk-22.11.tar.xz";
|
||||
sha256 = "0ri39455341nw6bn0lphky6n2b4ib9g4i24f6gzc0adnbhbpxdiq";
|
||||
name = "kalk-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/kalk-23.01.0.tar.xz";
|
||||
sha256 = "1d5xlinrwjyxfr7ibxjjgbqmy69w6sgxxdpfn1x1wccnjfld4zqf";
|
||||
name = "kalk-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
kasts = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/kasts-22.11.tar.xz";
|
||||
sha256 = "049700i15cw07c6053iml1q3h5mni24kdf8nvkdafdafhslb84i9";
|
||||
name = "kasts-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/kasts-23.01.0.tar.xz";
|
||||
sha256 = "09xvgd5vdmniqlnaxrim9d0rpv2qkdz91jq168gzl1kczl26pivf";
|
||||
name = "kasts-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
kclock = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/kclock-22.11.tar.xz";
|
||||
sha256 = "02v64zfbv1g3q4w79d0r8rxqiqsnxms7dgkjv09bp1gl1asqx354";
|
||||
name = "kclock-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/kclock-23.01.0.tar.xz";
|
||||
sha256 = "0fxda2cqi9qqj2lkzs08jr8i35jzzy5z76k2mbz2qyfmby7hsz1r";
|
||||
name = "kclock-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
keysmith = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/keysmith-22.11.tar.xz";
|
||||
sha256 = "1aimsgwk80yvncbsjnaxvr6aj8y4g40dpwfv0qi0k7b3xkrmqdk5";
|
||||
name = "keysmith-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/keysmith-23.01.0.tar.xz";
|
||||
sha256 = "0m5gbf3rw1l6qx5aphr57726p6v5nl2g718ainxa689p075smfbf";
|
||||
name = "keysmith-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
khealthcertificate = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/khealthcertificate-22.11.tar.xz";
|
||||
sha256 = "0gw6j70k0nvbfb1vfj8b64vfipdckzd8hqqmp9vrmsg7y8g8n0hi";
|
||||
name = "khealthcertificate-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/khealthcertificate-23.01.0.tar.xz";
|
||||
sha256 = "193agd3jg029vcq1h5hdg3gw6zgqcmszl6ffcrid0ajbbiic4pbm";
|
||||
name = "khealthcertificate-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
koko = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/koko-22.11.tar.xz";
|
||||
sha256 = "1jqjjd9spyppdbijdnvci742wj80p10pfbjp1hyc0y4zdjic67bv";
|
||||
name = "koko-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/koko-23.01.0.tar.xz";
|
||||
sha256 = "1bfbfwavphj3bnf8icnakbdaa6a7i0fgyhs8xa73clwig54fk4np";
|
||||
name = "koko-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
kongress = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/kongress-22.11.tar.xz";
|
||||
sha256 = "03r8xck9vxl3al3f5v6g0yzqzs3yxl3lg7zg73ik22q6z2rb1adb";
|
||||
name = "kongress-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/kongress-23.01.0.tar.xz";
|
||||
sha256 = "0yma1b44sjnvhsw31r5bndrpj2sjgwgchpzc8bf9380l6an9k4r5";
|
||||
name = "kongress-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
krecorder = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/krecorder-22.11.tar.xz";
|
||||
sha256 = "1wiihcp1c0wc7ssj9hj18rnzf8synaxmq6b0m2m286x4zibl50wb";
|
||||
name = "krecorder-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/krecorder-23.01.0.tar.xz";
|
||||
sha256 = "0aja3w8qbp96h43igajs068s89gf6nn7zwf6c813rbyqzl350phn";
|
||||
name = "krecorder-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
ktrip = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/ktrip-22.11.tar.xz";
|
||||
sha256 = "07mjf9jpj20ixhswy4byqy3m4sr1qylwlvq2prabn11j42ahpsy7";
|
||||
name = "ktrip-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/ktrip-23.01.0.tar.xz";
|
||||
sha256 = "1l69fd1hhclm9212h6zm4nhkc0dg2wl47jw7wl9s6vy3xvmysihm";
|
||||
name = "ktrip-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
kweather = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/kweather-22.11.tar.xz";
|
||||
sha256 = "0sqc74yp5hvrjagax6nj0gm4qvbxqr66706yh12abcn9gpl33ndl";
|
||||
name = "kweather-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/kweather-23.01.0.tar.xz";
|
||||
sha256 = "1hcb8jzx2bwcyxphya7kx7q2yri1w0k2753xiibw1hlgmb3qzr7s";
|
||||
name = "kweather-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
neochat = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/neochat-22.11.tar.xz";
|
||||
sha256 = "1gnhk9hww05bc4y8jd4sg3146c6m96ds2saajrnzyc6963j2ndi5";
|
||||
name = "neochat-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/neochat-23.01.0.tar.xz";
|
||||
sha256 = "0pkas8whwy1ih4sx9vaa7k55iiiy955dh4d53i4l1d0sjdf8pysd";
|
||||
name = "neochat-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
plasma-dialer = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/plasma-dialer-22.11.tar.xz";
|
||||
sha256 = "1qx7xmvfszpsrb2jylnwfs8rhr09kxvy5vnyzzcds248ljh5l6dy";
|
||||
name = "plasma-dialer-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/plasma-dialer-23.01.0.tar.xz";
|
||||
sha256 = "0n9g3jf71lpcwlwr1ia1i6kh0kiv2vizssni1df3cwskd7hivn7h";
|
||||
name = "plasma-dialer-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
plasma-phonebook = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/plasma-phonebook-22.11.tar.xz";
|
||||
sha256 = "02sj6v18w63ixy0c93fm4j9n4q98497qrb509q84618gry4cazly";
|
||||
name = "plasma-phonebook-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/plasma-phonebook-23.01.0.tar.xz";
|
||||
sha256 = "0pprfgims9h6g1xw48w66bqkmqp7qp7gkc7k4zbj3lgmmnwh6z9i";
|
||||
name = "plasma-phonebook-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
plasma-settings = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/plasma-settings-22.11.tar.xz";
|
||||
sha256 = "0pg71plcbn4zkwxwcvay9swaa5xn3mnljdpnh4i8f86x2pa1pq5j";
|
||||
name = "plasma-settings-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/plasma-settings-23.01.0.tar.xz";
|
||||
sha256 = "0fz0zjyh15ma6kv79pm0gc92iz6gikxyr4afkyzabzk9559dv1p7";
|
||||
name = "plasma-settings-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
plasmatube = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/plasmatube-22.11.tar.xz";
|
||||
sha256 = "0vgxvyw4yl91kaj9cnjf455mpj4a5rh5f1z0in8k9p2jbs8wmjil";
|
||||
name = "plasmatube-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/plasmatube-23.01.0.tar.xz";
|
||||
sha256 = "06hwa1m6gaacjmcyssa63vw43cgx096x9aj87rv1z9k9qsv2qgfj";
|
||||
name = "plasmatube-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
qmlkonsole = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/qmlkonsole-22.11.tar.xz";
|
||||
sha256 = "03hwyrl6rb7yidw0nadis6csb6snpfv137j46rbpl35vrqrnrh5i";
|
||||
name = "qmlkonsole-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/qmlkonsole-23.01.0.tar.xz";
|
||||
sha256 = "07h2pkz9h5lm232jasf6znf0i2p5c5qxnjac1d51qf8rfm0fp1q3";
|
||||
name = "qmlkonsole-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
spacebar = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/spacebar-22.11.tar.xz";
|
||||
sha256 = "1q0nyfvssiz5i19wyk4pvazax3vvk945cmknw4l51mpcc3hnc1v5";
|
||||
name = "spacebar-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/spacebar-23.01.0.tar.xz";
|
||||
sha256 = "0srwvbnb80cgxkjjq2ch1lrbki7m169i86hig41h368wr9nmjnsl";
|
||||
name = "spacebar-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
telly-skout = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/telly-skout-22.11.tar.xz";
|
||||
sha256 = "0sfdia4jwcv24z5d3qykqv7ncr2c5v7ywq471nggwpcr22bwzn6x";
|
||||
name = "telly-skout-22.11.tar.xz";
|
||||
};
|
||||
};
|
||||
tokodon = {
|
||||
version = "22.11";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/tokodon-22.11.tar.xz";
|
||||
sha256 = "0afrqih1bkgg0xqr81sq9q3glyhy8347p8vzddl42zsxax9wki59";
|
||||
name = "tokodon-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/telly-skout-23.01.0.tar.xz";
|
||||
sha256 = "1wcabca1wlxjna4bd1blpwh7hi1wrcmn8bc06g8mpdzm8756d7sk";
|
||||
name = "telly-skout-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
vakzination = {
|
||||
version = "22.11";
|
||||
version = "23.01.0";
|
||||
src = fetchurl {
|
||||
url = "${mirror}/stable/plasma-mobile/22.11/vakzination-22.11.tar.xz";
|
||||
sha256 = "0587p5q9v0lh3nz00dfa8kym36xcgcg8n4alnchk6kr8c479kmk6";
|
||||
name = "vakzination-22.11.tar.xz";
|
||||
url = "${mirror}/stable/plasma-mobile/23.01.0/vakzination-23.01.0.tar.xz";
|
||||
sha256 = "1lx46r46xq18a1pxa6qhnwks43w022fkbrvylb84ycy59djq371n";
|
||||
name = "vakzination-23.01.0.tar.xz";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -34,14 +34,14 @@
|
||||
libsForQt5.mkDerivation rec {
|
||||
pname = "tokodon";
|
||||
|
||||
version = "22.11.2";
|
||||
version = "23.01.0";
|
||||
# NOTE: the tokodon point release was not uploaded to the Plasma Mobile gear repo.
|
||||
src = fetchFromGitLab {
|
||||
domain = "invent.kde.org";
|
||||
owner = "network";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-uE9iHZDfpn1NTCeJPgsp2WBe0curdguTUbMTrkrmJ6M=";
|
||||
hash = "sha256-iJRyKEFdoWtZLZ/nkMvy2S7EF+JRHXi3O0DswfrClDU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "stacks";
|
||||
version = "2.60";
|
||||
version = "2.62";
|
||||
src = fetchurl {
|
||||
url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-ppKG7Z1TyLwUyqRnGYk3QWPJqKeNcW04GMW7myPFSNM=";
|
||||
sha256 = "sha256-7uhQVLC/AEPAPUdm3+vABoIwG4uhNy/EngjsrZjT0Ts=";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "varscan";
|
||||
version = "2.4.4";
|
||||
version = "2.4.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/dkoboldt/varscan/raw/master/VarScan.v${version}.jar";
|
||||
sha256 = "sha256-+yO3KrZ2+1qJvQIJHCtsmv8hC5a+4E2d7mrvTYtygU0=";
|
||||
sha256 = "sha256-q4jkkKTqXHiaAPRThqo82i43+B4NaHUUuMyefW6tgg0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, gfortran
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, blas
|
||||
, lapack
|
||||
, python3Packages
|
||||
}:
|
||||
|
||||
assert blas.isILP64 == lapack.isILP64;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mopac";
|
||||
version = "22.0.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openmopac";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-j4AP3tki+Ep9Pv+pDg8TwCiJvpF2j5npW3Kpat+7gGg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gfortran cmake ];
|
||||
|
||||
buildInputs = [ blas lapack ];
|
||||
|
||||
checkInputs = with python3Packages; [ python numpy ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
preCheck = ''
|
||||
export OMP_NUM_THREADS=2
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Semiempirical quantum chemistry";
|
||||
homepage = "https://github.com/openmopac/mopac";
|
||||
license = licenses.lgpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ sheepforce markuskowa ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, wxGTK32
|
||||
, libGL
|
||||
, libGLU
|
||||
, pkg-config
|
||||
, xorg
|
||||
, autoreconfHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wxmacmolplt";
|
||||
version = "7.7.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "brettbode";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-sNxCjIEJUrDWtcUqBQqvanNfgNQ7T4cabYy+x9D1U+Q=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config autoreconfHook ];
|
||||
buildInputs = [
|
||||
wxGTK32
|
||||
libGL
|
||||
libGLU
|
||||
xorg.libX11
|
||||
xorg.libX11.dev
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Graphical user inteface for GAMESS-US";
|
||||
homepage = "https://brettbode.github.io/wxmacmolplt/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ sheepforce markuskowa ];
|
||||
};
|
||||
}
|
||||
@@ -13,13 +13,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cbmc";
|
||||
version = "5.74.0";
|
||||
version = "5.76.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "diffblue";
|
||||
repo = pname;
|
||||
rev = "${pname}-${version}";
|
||||
sha256 = "sha256-n4a/0Ak2psHDCXykVSPYavuIl22uq2ZP7LUcdSzg1ow=";
|
||||
sha256 = "sha256-OVOoAfoqev33c7pIzBGK9HD+zgji/+BWKD33RYJaSDc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -91,7 +91,7 @@ self = stdenv.mkDerivation {
|
||||
passthru = {
|
||||
inherit coq-version;
|
||||
inherit ocamlPackages ocamlNativeBuildInputs;
|
||||
inherit ocamlPropagatedBuildInputs ocamlPropagatedNativeBuildInputs;
|
||||
inherit ocamlPropagatedBuildInputs;
|
||||
# For compatibility
|
||||
inherit (ocamlPackages) ocaml camlp5 findlib num ;
|
||||
emacsBufferSetup = pkgs: ''
|
||||
|
||||
@@ -1,26 +1,32 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
{ bash
|
||||
, buildGoModule
|
||||
, common-updater-scripts
|
||||
, coreutils
|
||||
, curl
|
||||
, fetchurl
|
||||
, makeWrapper
|
||||
, git
|
||||
, bash
|
||||
, openssh
|
||||
, gzip
|
||||
, jq
|
||||
, lib
|
||||
, makeWrapper
|
||||
, nix
|
||||
, openssh
|
||||
, pam
|
||||
, pamSupport ? true
|
||||
, sqliteSupport ? true
|
||||
, stdenv
|
||||
, writeShellApplication
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "forgejo";
|
||||
version = "1.18.2-1";
|
||||
version = "1.18.3-0";
|
||||
|
||||
src = fetchurl {
|
||||
name = "${pname}-src-${version}.tar.gz";
|
||||
# see https://codeberg.org/forgejo/forgejo/releases
|
||||
url = "https://codeberg.org/attachments/44ff6fcb-1515-4bba-85bf-3d3795ced2f7";
|
||||
hash = "sha256-XSh17AwPtC+Y24lgjjXJzT/uBHg+0hWZ2RZ/eNF4mCY=";
|
||||
url = "https://codeberg.org/attachments/384fd9ab-7c64-4c29-9b1b-cdb803c48103";
|
||||
hash = "sha256-zBGd+wPJDw7bwRvAlscqbQHDG6po3dlbpYccfanbtyU=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
@@ -59,12 +65,52 @@ buildGoModule rec {
|
||||
--prefix PATH : ${lib.makeBinPath [ bash git gzip openssh ]}
|
||||
'';
|
||||
|
||||
passthru.updateScript = lib.getExe (writeShellApplication {
|
||||
name = "update-forgejo";
|
||||
runtimeInputs = [
|
||||
common-updater-scripts
|
||||
coreutils
|
||||
curl
|
||||
jq
|
||||
nix
|
||||
];
|
||||
text = ''
|
||||
releases=$(curl "https://codeberg.org/api/v1/repos/forgejo/forgejo/releases?draft=false&pre-release=false&limit=1" \
|
||||
--silent \
|
||||
--header "accept: application/json")
|
||||
|
||||
stable=$(jq '.[0]
|
||||
| .tag_name[1:] as $version
|
||||
| ("forgejo-src-\($version).tar.gz") as $filename
|
||||
| { $version, html_url } + (.assets | map(select(.name | startswith($filename)) | {(.name | split(".") | last): .browser_download_url}) | add)' \
|
||||
<<< "$releases")
|
||||
|
||||
archive_url=$(jq -r .gz <<< "$stable")
|
||||
checksum_url=$(jq -r .sha256 <<< "$stable")
|
||||
release_url=$(jq -r .html_url <<< "$stable")
|
||||
version=$(jq -r .version <<< "$stable")
|
||||
|
||||
if [[ "${version}" = "$version" ]]; then
|
||||
echo "No new version found (already at $version)"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Release: $release_url"
|
||||
|
||||
sha256=$(curl "$checksum_url" --silent | cut --delimiter " " --fields 1)
|
||||
sri_hash=$(nix hash to-sri --type sha256 "$sha256")
|
||||
|
||||
update-source-version "${pname}" "$version" "$sri_hash" "$archive_url"
|
||||
'';
|
||||
});
|
||||
|
||||
meta = with lib; {
|
||||
description = "A self-hosted lightweight software forge";
|
||||
homepage = "https://forgejo.org";
|
||||
changelog = "https://codeberg.org/forgejo/forgejo/releases/tag/v${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ urandom ];
|
||||
maintainers = with maintainers; [ indeednotjames urandom ];
|
||||
broken = stdenv.isDarwin;
|
||||
mainProgram = "gitea";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,26 +7,27 @@
|
||||
, libiconv
|
||||
, Security
|
||||
, SystemConfiguration
|
||||
, curl
|
||||
, openssl
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gitoxide";
|
||||
version = "0.19.0";
|
||||
version = "0.20.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Byron";
|
||||
repo = "gitoxide";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-GGXujTn5Xb63vKIycj5o9+PCsMN1Kp3RCSg1wiM31qA=";
|
||||
sha256 = "sha256-8+4AEX4NPflhAB1rZHaz0XPycoL5T3z20ZKlNRdUEdw=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-MAZhrd9CtFOIAaUUbXplBo+eo6Zaws2LIRkPoX4HztE=";
|
||||
cargoSha256 = "sha256-ybsrrJFH4xKcxRQCI+ypfp5biCrlIidAog01SFCx1ms=";
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
buildInputs = if stdenv.isDarwin
|
||||
buildInputs = [ curl ] ++ (if stdenv.isDarwin
|
||||
then [ libiconv Security SystemConfiguration ]
|
||||
else [ openssl ];
|
||||
else [ openssl ]);
|
||||
|
||||
# Needed to get openssl-sys to use pkg-config.
|
||||
OPENSSL_NO_VENDOR = 1;
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-vaapi";
|
||||
version = "0.1.0";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fzwoch";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-qA4xVVShkp40QHp2HmmRzVxQaBwskRpUNEULKetVMu8=";
|
||||
hash = "sha256-wrbVuqIe+DY3R+Jp3zCy2Uw3fv5ejYHtRV2Sv+y/n0w=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config meson ninja ];
|
||||
@@ -39,6 +39,12 @@ stdenv.mkDerivation rec {
|
||||
gst-vaapi
|
||||
];
|
||||
|
||||
# Fix output directory
|
||||
postInstall = ''
|
||||
mkdir $out/lib/obs-plugins
|
||||
mv $out/lib/obs-vaapi.so $out/lib/obs-plugins/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OBS Studio VAAPI support via GStreamer";
|
||||
homepage = "https://github.com/fzwoch/obs-vaapi";
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "conmon";
|
||||
version = "2.1.5";
|
||||
version = "2.1.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-zpZ3hVgnh8gkrSghSvhSZnG9uaN+GTKFGHv+MMcs73Q=";
|
||||
hash = "sha256-vmZSt0k6h4Zpbf+/Nq19QIkG3Fzjj3K031XnivFDA2s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "podman";
|
||||
version = "4.3.1";
|
||||
version = "4.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = "podman";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-UOAQtGDoZe+Av4+9RQCJiV3//B/pdF0pEsca4FonGxY=";
|
||||
sha256 = "sha256-kyeON8S7CCVdHt09wigNXDWScgyaLzC4EhOts8ViP2w=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
diff --git a/pkg/machine/qemu/machine.go b/pkg/machine/qemu/machine.go
|
||||
index a6907c0df..717d82ff3 100644
|
||||
index 4f25b4d26..8a79862fd 100644
|
||||
--- a/pkg/machine/qemu/machine.go
|
||||
+++ b/pkg/machine/qemu/machine.go
|
||||
@@ -1483,11 +1483,6 @@ func (v *MachineVM) waitAPIAndPrintInfo(forwardState apiForwardingState, forward
|
||||
case notInstalled:
|
||||
fmt.Printf("\nThe system helper service is not installed; the default Docker API socket\n")
|
||||
fmt.Printf("address can't be used by podman. ")
|
||||
- if helper := findClaimHelper(); len(helper) > 0 {
|
||||
- fmt.Printf("If you would like to install it run the\nfollowing commands:\n")
|
||||
- fmt.Printf("\n\tsudo %s install\n", helper)
|
||||
- fmt.Printf("\tpodman machine stop%s; podman machine start%s\n\n", suffix, suffix)
|
||||
- }
|
||||
case machineLocal:
|
||||
fmt.Printf("\nAnother process was listening on the default Docker API socket address.\n")
|
||||
case claimUnsupported:
|
||||
@@ -1509,11 +1509,6 @@ func (v *MachineVM) waitAPIAndPrintInfo(forwardState apiForwardingState, forward
|
||||
case notInstalled:
|
||||
fmt.Printf("\nThe system helper service is not installed; the default Docker API socket\n")
|
||||
fmt.Printf("address can't be used by podman. ")
|
||||
- if helper := findClaimHelper(); len(helper) > 0 {
|
||||
- fmt.Printf("If you would like to install it run the\nfollowing commands:\n")
|
||||
- fmt.Printf("\n\tsudo %s install\n", helper)
|
||||
- fmt.Printf("\tpodman machine stop%s; podman machine start%s\n\n", suffix, suffix)
|
||||
- }
|
||||
case machineLocal:
|
||||
fmt.Printf("\nAnother process was listening on the default Docker API socket address.\n")
|
||||
case claimUnsupported:
|
||||
|
||||
@@ -17,19 +17,19 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pods";
|
||||
version = "1.0.4";
|
||||
version = "1.0.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "marhkb";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-bBFy8yyEbMlVyJYOlWdffIlnZyVdRLPGebTN6bZmnBI=";
|
||||
sha256 = "sha256-V/4atbYG3jP0o1Bfn/dZBDXEk+Yi4cSJAY8HnTmpHRI=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${pname}-${version}";
|
||||
sha256 = "sha256-DV/XJgWRPK+7q7EVltiNRcRGjS9fvHrDKw+w3wNYitQ=";
|
||||
sha256 = "sha256-gJZ3z6xDgWwOPjCLZg3LRMk3KoTXGaotXgO/xDUwAvk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -145,6 +145,11 @@ let
|
||||
cp -r --reflink=auto vendor $out
|
||||
''}
|
||||
|
||||
if ! [ "$(ls -A $out)" ]; then
|
||||
echo "vendor folder is empty, please set 'vendorHash = null;' or 'vendorSha256 = null;' in your expression"
|
||||
exit 10
|
||||
fi
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
||||
@@ -123,4 +123,5 @@
|
||||
|
||||
hasPkgConfigModule = callPackage ./hasPkgConfigModule/tester.nix { };
|
||||
|
||||
testMetaPkgConfig = callPackage ./testMetaPkgConfig/tester.nix { };
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
{ lib, runCommand, testers }:
|
||||
|
||||
package:
|
||||
|
||||
runCommand "check-meta-pkg-config-modules-for-${package.name}" {
|
||||
meta = {
|
||||
description = "Test whether ${package.name} exposes all pkg-config modules ${toString package.meta.pkgConfigModules}";
|
||||
};
|
||||
dependsOn = map
|
||||
(moduleName: testers.hasPkgConfigModule { inherit package moduleName; })
|
||||
package.meta.pkgConfigModules;
|
||||
} ''
|
||||
echo "found all of ${toString package.meta.pkgConfigModules}" > "$out"
|
||||
''
|
||||
@@ -11,7 +11,7 @@ let
|
||||
(builtins.attrNames (builtins.removeAttrs variantHashes [ "iosevka" ]));
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "${name}-bin";
|
||||
version = "17.1.0";
|
||||
version = "18.0.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-${name}-${version}.zip";
|
||||
|
||||
@@ -1,95 +1,95 @@
|
||||
# This file was autogenerated. DO NOT EDIT!
|
||||
{
|
||||
iosevka = "0lxcyg93max17fqm6yvxwvr79jz9bggxcmv6qx8sknvjmq89l0pf";
|
||||
iosevka-aile = "0pljy65m5zaxbajfmhc3gayz73rbp8vzaqzqcrlm2ir9yxaz21qc";
|
||||
iosevka-curly = "0svf6hm0cspydgzjg39f5rp7mrcabb0vc2088r1msipaw8naajqf";
|
||||
iosevka-curly-slab = "1afk0ijfciwh9pjy2qsawxw7gq7jxr52li2nwggcq04c9ybh62pg";
|
||||
iosevka-etoile = "07zihk9q1ff93ms9gj92hbf2fzw7h4fl28szhrfll3p96y9f81q7";
|
||||
iosevka-slab = "18hrv0kc82hfb6ivbdg5k9179k37anjigm8ddh5waiq2is6gmh8l";
|
||||
iosevka-ss01 = "127zki1wcd2wjpqr1n2zf57iq44pwcrg2vlrspi3b9lhmxw0rlz9";
|
||||
iosevka-ss02 = "0ig7y86c2d9y4bg5cqibbn0wqwwzm5d5qxd8vwhvd323mg3gh6bg";
|
||||
iosevka-ss03 = "0zp2nkrl39pvidn846706dp8l12ac66kd9wsyh4cnn08mmm6gl4i";
|
||||
iosevka-ss04 = "0r0ylsxj2j9akpxchnldwyddm7vrlpn82sxkgmjhr81hn3q08bgc";
|
||||
iosevka-ss05 = "0r9mdhdjndxgm68fg59dbd810ggrpmpkvgcypyqf92l8sf1h55hj";
|
||||
iosevka-ss06 = "1c6ga4jaglfp5mx980qy1alkifr1d1lq4qj69xfq6sx4146xn20f";
|
||||
iosevka-ss07 = "0h1x2p9finl4482vx6lvs45x5258bpw5avkpgmg66wn16kd95zfq";
|
||||
iosevka-ss08 = "1n5m11dlv49jj63s771ny77qpiz178iyvn7pfnhv2mzqwimz5sl2";
|
||||
iosevka-ss09 = "1rbs15xsk7fajrm81nacixf18jjx08bpg26fw7pmxjv727zafv05";
|
||||
iosevka-ss10 = "1rdpiq5pyzrnxhnsvf08zg0vjhln25vqkyknnv4xf34wr8r9xcc0";
|
||||
iosevka-ss11 = "0l9454vx90pj0yva864qfj06ggplia0qdkv3nr14s3wmv5khh9gw";
|
||||
iosevka-ss12 = "0cafszj0c7nkcxpbqsrqy5l2v0nzfph6i22w1iayg8bqvpip3x5m";
|
||||
iosevka-ss13 = "1mlxh6qikrl0g82difr85lpkxdr83z5iymf0brmgdxkmyig3psr7";
|
||||
iosevka-ss14 = "1330p52h94fgr76gll396hb0qalamm8z79hw73ci4ph22dpsd4ni";
|
||||
iosevka-ss15 = "0cc5a1187i9idgvz7zhs0byya8c69f0g4pkqlivh37ffj07yv47v";
|
||||
iosevka-ss16 = "052nypjppbrbkhjq85nwmx8469prfsbc9f05kw0vi30c8mpcjqwf";
|
||||
iosevka-ss17 = "0k5p1qvx8vi8ic7yayky7zdi1hrkwli698ydlfhnk4yx10l0xq8j";
|
||||
iosevka-ss18 = "16diyrfpz1kp9vcyq61pbdrrv4pl96kzn8ckv7wb5cnwxwa336c7";
|
||||
sgr-iosevka = "0b92jmai9cgxdah74jmks7fwbyb1m722ablf3qaiizc597y031wv";
|
||||
sgr-iosevka-aile = "1z5jg74aspkvhw41ihwzbfs4f075gs8ny76m30adp0n3v877nhjz";
|
||||
sgr-iosevka-curly = "06bm6jg16sgvxnqbayqa92lvr0bc5vdjybbi467yx57hi83w860q";
|
||||
sgr-iosevka-curly-slab = "08kg8imp29sww57mdpfmi86046vqwd4a2ayijcvs511v8nhl478r";
|
||||
sgr-iosevka-etoile = "0gybfn95n2b8kn3bvi8pjkps5bmndnbbq9jbfbm81fims0s0496b";
|
||||
sgr-iosevka-fixed = "15q4y8cm8cwxcbmjzknc19gyqmd4nb928b26nswm8m17p85zlcq0";
|
||||
sgr-iosevka-fixed-curly = "1faci2m7w8cf65mjkigqlyh838r5mqvg7ai4nfdidms6ilhhsf37";
|
||||
sgr-iosevka-fixed-curly-slab = "019m3nvsy6vwgf6f0z2l0wxxkqbl30y55jfgi2bsmxhizwzl3csc";
|
||||
sgr-iosevka-fixed-slab = "1ps1xi334h7by3nihn3n6d76sbzcvv03dwy4iy5wixlz0lr8id5i";
|
||||
sgr-iosevka-fixed-ss01 = "18qdd6qbk8dy6z36lsy89a7g6l1asdzqvlc82j9vk437yjm59vwi";
|
||||
sgr-iosevka-fixed-ss02 = "0xm1k1f5hbhjbksshlv7bcdigdrxxhfpc8pgv7dvz7zpy7cx2y4y";
|
||||
sgr-iosevka-fixed-ss03 = "1741k3p2mncq9kp1wshpl6dkwqvvg2bpakl91k6ssvj1z63r2zhq";
|
||||
sgr-iosevka-fixed-ss04 = "0sw65088yihk2sk2mcdr4cd8rl9l954l2sc3y7dil3jkgw6kf0wq";
|
||||
sgr-iosevka-fixed-ss05 = "1cc71vidcljh6k6pw6z5yygi0kir7n235l19as8y1qazmc8kh0ip";
|
||||
sgr-iosevka-fixed-ss06 = "0s2f0j0z4dyd23z5mldih03cg8vqwvpqrmagbpx02v2krzn2vb27";
|
||||
sgr-iosevka-fixed-ss07 = "07nfdx7bdbsxrmylsja8bvr1n2a116qyfg8pk1wpcax3vf56jamh";
|
||||
sgr-iosevka-fixed-ss08 = "0ys6gw2p7vpdv8csxzxjx09m8k0h4s28w7i98iq27ak47xcm8xd7";
|
||||
sgr-iosevka-fixed-ss09 = "0vn6vc0byakggyrd6d9mv1l9d4h5g7wcbkkmxzqfjr6xp3k96r88";
|
||||
sgr-iosevka-fixed-ss10 = "0llqjvv7m1imvqw41xvmcw9y9c9wsnv2i8swnszr9r5khx3kbp6h";
|
||||
sgr-iosevka-fixed-ss11 = "1wwjp1fgl2gxhjkmsz6k0a59kjcapby9y8j5m763ap4ig5djbv8r";
|
||||
sgr-iosevka-fixed-ss12 = "1k9ak5dc3s024iz6rp4yz9b73752v93n0kldcnwi0lvbh4hp358k";
|
||||
sgr-iosevka-fixed-ss13 = "0rgj38jkj6d7g44wn02k6ycixkwq6lwy756vp9w01aqqn5flw6s1";
|
||||
sgr-iosevka-fixed-ss14 = "0lbpwnc40lswlmfwqziz7n3kn95kc5rn4fbq5nxa1z8cxz9dkhvh";
|
||||
sgr-iosevka-fixed-ss15 = "034h7af7876q0ni8idj5dhkq1cpl91gvxhwxyw17pgnz8i51a261";
|
||||
sgr-iosevka-fixed-ss16 = "0i00nxj0j7yr57b4ccd2yc4x7k8zw1xxpdwfwlm0n38c05iqbvj9";
|
||||
sgr-iosevka-fixed-ss17 = "1z21han7l7nwz0qfi6fzvwdiadd9brpna51p24drdi8y3915b8n9";
|
||||
sgr-iosevka-fixed-ss18 = "0fjdsx66al0h3spgdivryiw5d871s93s2lbmh7nxwf19lylrkv19";
|
||||
sgr-iosevka-slab = "0j42hxgcwy5abf5jv5aqjri6h21k2nkgjj7527f68rgcnl9d980b";
|
||||
sgr-iosevka-ss01 = "1m7c8zb3rhxnf9h4v55jv7ns6x74bwfsl6f4sl2b1gkfl50ibwqg";
|
||||
sgr-iosevka-ss02 = "05cc3p8lkxl1s27wmgspk93fz8f51daqcfid8vpsvnqw75abivc9";
|
||||
sgr-iosevka-ss03 = "0bmh1ijdalss96lkji0dcyl00wc2yw7a3lx0nqbbjl4m0l2mz4yp";
|
||||
sgr-iosevka-ss04 = "1jc1y9rgw8hnd7zqrn98b35r01kmr2nykqip63h6qal7l456m4s2";
|
||||
sgr-iosevka-ss05 = "06acxqhzfxlhqd083s57b15sx2vgq0r6pl9myp8syh1d9azbk899";
|
||||
sgr-iosevka-ss06 = "0g3zaxy9363p28kcv6a52dqb1swnrn3rwl6pfvanz92vrrjspr7n";
|
||||
sgr-iosevka-ss07 = "1bmdparw1hg3i8lnx8vwd467pwf4q94q80a62fcy87hppy3afryg";
|
||||
sgr-iosevka-ss08 = "16kgj158nhmlql0gkkfya04dy1gp9an4gk691f28n0mqhi7hygcr";
|
||||
sgr-iosevka-ss09 = "144x84qmh9pycn9v36q4z074vmnngn0chlyb8a8hyhgsyfqf7q7h";
|
||||
sgr-iosevka-ss10 = "0i9hsmw78yg75a3m80jlmdn2rn72snz69m0abvz7z94b7c99ffsb";
|
||||
sgr-iosevka-ss11 = "05a9azf7f64jdr5wwiy7djlmarl01mg6rfmzvrdd8a1a0nfcz1iz";
|
||||
sgr-iosevka-ss12 = "1nqa88csh170gs3bggs6v5ssaqljvpw1zxaclhmzdvyhcphrwd19";
|
||||
sgr-iosevka-ss13 = "1klhp2w99znj9qyz95z8jq3g23fs8jznya9dfzfy2i4hivw2gxv0";
|
||||
sgr-iosevka-ss14 = "1w84mqg0x46fbr8v72ccxc9a7sp52g4qb0x6l84wr8cm1fn7n21f";
|
||||
sgr-iosevka-ss15 = "05kdxmghhdyvlnc3wxzc5yyp00ybrq63fzh2kz3s4rwh11hhf0lq";
|
||||
sgr-iosevka-ss16 = "0a9i7plsfy8fawip70p5w3dkmjh4sy61iwi9pnl0ara7z23783dq";
|
||||
sgr-iosevka-ss17 = "1xmaqs54jhag7s18gfll94g0ixjqp2z5s69kwk48nznzpbfbpdsb";
|
||||
sgr-iosevka-ss18 = "09nq0a7b4hkiyi1prxpf6vwms9cnmby2dzn9k4y0xcax7m464531";
|
||||
sgr-iosevka-term = "1zr8cyq6578n8f3y9yyc0phs26hda1bf0bsd417wqcwsn88wfmx8";
|
||||
sgr-iosevka-term-curly = "0xlwljc2gmwh119x83p2pic5zwjqdymg7pbl2ginzilsrgjl2k0q";
|
||||
sgr-iosevka-term-curly-slab = "1vmpdws71sf1pf8nz3w7y0a64a5c3mp8f9w57bqmcn9vr22ymcl7";
|
||||
sgr-iosevka-term-slab = "1wkqdgy9nd4mvy4rsssvpis1r17ikpbl8mfx6bp80fh0lai97mxw";
|
||||
sgr-iosevka-term-ss01 = "1ly5ic5ihj00apb87am3kl38mywns8jizc7f4hniyrd9xhy1186z";
|
||||
sgr-iosevka-term-ss02 = "09lisy461dvppfv6sdk4i6vfrqhxyx558zdaflv9vskmfq8iq66d";
|
||||
sgr-iosevka-term-ss03 = "0nm84l4xk53l1q96hx8q63nbflgmivj3cq7z5mysv1z8jdp7isx3";
|
||||
sgr-iosevka-term-ss04 = "1y9kkasxmpm4n1vs5plsa25cgwvdi4jahn3ggdlxpl35yi4kxnr3";
|
||||
sgr-iosevka-term-ss05 = "1drngqgcibv6kfwjn3s2bik286ypj613q4p3fz0b7incniaz372j";
|
||||
sgr-iosevka-term-ss06 = "1rkqnj59hv1lzsplss3jk0jgz6q68qkg4a3200hv10rs9i2w2qxk";
|
||||
sgr-iosevka-term-ss07 = "1z6jh8qmc2063zgwbd00xi258grdillkc1nja69awdxiamv6hgf9";
|
||||
sgr-iosevka-term-ss08 = "022qw6frmmmpwbq6af8rysm8pbq713fiw92hkqi5k3j4v8dwl9v2";
|
||||
sgr-iosevka-term-ss09 = "1c32p4d46q3izif68ka6gr1hmq10snrlga5d7ypphmm8yxvavd9c";
|
||||
sgr-iosevka-term-ss10 = "1p497kqa386q5rvsfigzxdr0009agiw4bv4xxmb83pg3sl8bf7z9";
|
||||
sgr-iosevka-term-ss11 = "19kfvmwijd1kyw4bln0m5z7wpch9h44ny13ccxx0qmiv5y7wwm94";
|
||||
sgr-iosevka-term-ss12 = "1pnr7yd431xnym12vnlww6rxm1vfd9x24kqpx0323q3n61yjqzd6";
|
||||
sgr-iosevka-term-ss13 = "04nhps95s360vv4qr1pbzs1aj8zdalzv4ajdkawdssxaz1xs57c7";
|
||||
sgr-iosevka-term-ss14 = "1xvdpx8sa4ifgy9a3y65qcxj8cavisw4h7hjfivq4y0il79sl7nw";
|
||||
sgr-iosevka-term-ss15 = "03rs8b8yb7n1f7cp6zffgr7x20vx6hiag7a22ysx0zr2i4zp37i6";
|
||||
sgr-iosevka-term-ss16 = "1s86hmr7a6qwyf5m9q0npzzd25nvh9k1nlja1b8fnnlgchycwfbw";
|
||||
sgr-iosevka-term-ss17 = "0y5i99iy7r3z4cv87s3v3mxbadp3np16a3c65w41pjv86llkc30g";
|
||||
sgr-iosevka-term-ss18 = "0s5hdh61y5v17jrdpajgkzzrg0cqgcad6gvs9m8v55xi2zlqfxip";
|
||||
iosevka = "03f2rabj2w2l7jwqyl2awj42jhh0l3picqgyfcv3q067i34abfyn";
|
||||
iosevka-aile = "0p1r5sysy6djfd1sx0pfxf42bv7ayqgk1nvil33jr925w96i2dp6";
|
||||
iosevka-curly = "0r33wcgvh315avgkkic27qpf3bavrqwbig1kj4wm5rdr957ldk40";
|
||||
iosevka-curly-slab = "0yd7grhnx7z27xmd3wr8x2xx2002hmfi1y3ndmqq1sc9gab5gcb7";
|
||||
iosevka-etoile = "0jhd49vxxxaqi1rxfkmpc3v1q96ak1b5wyggchngqi3739pjgqy3";
|
||||
iosevka-slab = "00wk15kj9b1nr3b0bmarx6gqx3jg8z1pm9qqf9x09s72b3ng8adm";
|
||||
iosevka-ss01 = "1kp6zv8zyx50la7zrfz4fis68s41kplibagny61w5v3w36xpm3cs";
|
||||
iosevka-ss02 = "1c0dl28a3wwa5g4793jyb4n4c8p5vjlyh1b8j2i5da31dqrqm9gj";
|
||||
iosevka-ss03 = "0vs8x6l8gwqi47g1c5ainsk5fb2i6j4wv7mgdyw5j5l3blnba5yh";
|
||||
iosevka-ss04 = "1caf4xqd1dywzbq06ip042rw88833yk9ws7y3vjvsp93g7a2r675";
|
||||
iosevka-ss05 = "008aphj4w6ri3fgnydrxavvpm3bfywv4cym10fqi9xgd84jhm9m1";
|
||||
iosevka-ss06 = "00dkagqiwzwzvv75zss82yx0gdcbmh9xvr8swhi5zk0y0bc3xk2y";
|
||||
iosevka-ss07 = "1acnva081awp76xyspksq9jkvlyswh3q1jy9gnsc6kh4vyn17vjs";
|
||||
iosevka-ss08 = "0lmkglcjlppvfd7k2pz57r476fa4c0q5l4gqzfy1mlklh0mc5hqb";
|
||||
iosevka-ss09 = "04r2k2z54iszwfnif872p5br0dm4fvc5341cpbxv4almpzxjyqnr";
|
||||
iosevka-ss10 = "1c6gs9g8dhywpd2ha7kx2l7g7bwj7i5a78645ipx8126f749y0y9";
|
||||
iosevka-ss11 = "0286k56r12a2yjylxynvzd0idrcv4ykrmpkn3b5xv9f74qq6irmf";
|
||||
iosevka-ss12 = "0ab4x5lh8spbg0djb092vcq1cnvjhazwkia8byq1q47iwiyh756l";
|
||||
iosevka-ss13 = "0kva71mfkl9xzz8khjzgrj47zg2505rg0hv5hxflawxsqwi4iwvl";
|
||||
iosevka-ss14 = "1gk7m3xh4v3jm6s5g2prd27w4p0r1blbxsxdy3b020bdwikxcaga";
|
||||
iosevka-ss15 = "0frxjc3hhay8izsx4ywff4j39qxp9ljz6hvw0rjcya3vny515jq5";
|
||||
iosevka-ss16 = "1g299yhn0kfc7vn8vbgwq4798w5lcl72j6hj91k90i1yq11lg13i";
|
||||
iosevka-ss17 = "02z83x73bhpgf44kq0gw46bdnpqzr4vm37h78bh19vydzqaj8hg0";
|
||||
iosevka-ss18 = "1b7vhhbspi98xzmk4hpiw08jmscm7f7nibqxhkfmppl6y0ymbm9d";
|
||||
sgr-iosevka = "1n60dgprl2p22wwfhxpwy9v9xf6vyv3qwm2jdc0m9m0q9jwjashr";
|
||||
sgr-iosevka-aile = "1k195vqv2wajhmyma43xgda3s2z86kl2gksgdrm95s9sx7ijns2s";
|
||||
sgr-iosevka-curly = "15yq1fs7knp9gxgqjxslpmlx85c6kvpm31sf81llpf4k5f9dmlcp";
|
||||
sgr-iosevka-curly-slab = "0fa68lm6iwlf2s5k8388dwgk015c55zg1wkhhhjmixwn7p8gifxz";
|
||||
sgr-iosevka-etoile = "1ry1zc7cdx6g927d1752ipz39v4wsnfrnn8n9cfwamz8v458wld1";
|
||||
sgr-iosevka-fixed = "173v09dx5pwsbh9jac5qxi7nk95dqyryg747hl58bchby6kmnc3k";
|
||||
sgr-iosevka-fixed-curly = "11y8bj9vmdq48n370f1r4zsk72ci3cq7c9ff6y40hn5w40s8k379";
|
||||
sgr-iosevka-fixed-curly-slab = "1a4gmz6sl67l23awkfl8f3xdr8hbb2mi1lsc0ain1wvvyx1bi56m";
|
||||
sgr-iosevka-fixed-slab = "11xv18ykrfg2fdvbrlcx7k3qvp5yqbm278ks3gm0gbck1awvfckg";
|
||||
sgr-iosevka-fixed-ss01 = "1yb96x53wjks537vs0gd7rss6piszs139k1kgb1swrpq7519awaz";
|
||||
sgr-iosevka-fixed-ss02 = "10yy0yg2i9nm00lzpmrfbdh7jjcll37wql3fcsaxha57gcxf9nf0";
|
||||
sgr-iosevka-fixed-ss03 = "1fpjfqlqq6lz3gya1q24nzy2xls6nxn567lhglj0ykjnh3prkll8";
|
||||
sgr-iosevka-fixed-ss04 = "1kwa5mwd6ihsyj2y70hrrvgy41cs19i0f7nvl4khs3i69a1l58ag";
|
||||
sgr-iosevka-fixed-ss05 = "08v8in8s8p2nayazq60w1kc1jpq48nwdwh6wbxv7ij7lfwii8xws";
|
||||
sgr-iosevka-fixed-ss06 = "03jzylw99xa3b6hpy6bpwhyii6d9fggy9synfl54sn7smwqk08wr";
|
||||
sgr-iosevka-fixed-ss07 = "13yzd6r51gka03fcl3bvx6d97b4m4px2cnsd724maqkqrcxkbxgb";
|
||||
sgr-iosevka-fixed-ss08 = "1xghlj7drx9328jr1cb051nkwv47r5ykkyy6ydff1c4amc1xabsq";
|
||||
sgr-iosevka-fixed-ss09 = "12l6lbz4m1lwyqqmv583777r9ymssy9x34rz72y3dch0mqhmjjzg";
|
||||
sgr-iosevka-fixed-ss10 = "1flrh6a7m0dw7na30nhbxjld54517z77ff3s9fjrpmgyb9wz7i2j";
|
||||
sgr-iosevka-fixed-ss11 = "1j4v4h6k505gkxyswcjf61kj9cfgkalxjg1arms9zb351p8rrkda";
|
||||
sgr-iosevka-fixed-ss12 = "00qwnsxc08bm5cq3ljz2pjqsiw019ah4z0crqcwaysijicxmbckc";
|
||||
sgr-iosevka-fixed-ss13 = "0jrw0amhfi28mc4i7a74qvgjamvymijlf3akskaw9qrmzvks8wn1";
|
||||
sgr-iosevka-fixed-ss14 = "0rvh842zkxdrna9nh2ylsjs3q90sq39658l0mafi85b8z5asdwai";
|
||||
sgr-iosevka-fixed-ss15 = "0j5yrr1biqfhgj6qg6359xg9rfv6qzqiqdqjgfjwbhijs6xfn8f1";
|
||||
sgr-iosevka-fixed-ss16 = "06jrfhb257nmldnxxyc5rh869r5y62v2y034c0r9j7354s7gcq7a";
|
||||
sgr-iosevka-fixed-ss17 = "0cgmsh0478963k1dgpkhy6j1b383gx2q09z3shr6j87knjjwqgp0";
|
||||
sgr-iosevka-fixed-ss18 = "0r4nyd459aqgna7dyzvxnznclqihxdb888g949kdzhxykfchq53s";
|
||||
sgr-iosevka-slab = "1bv8asz66hn80xvjxa7b0vgywha1bpmhd8q95cssc3085dprz1r6";
|
||||
sgr-iosevka-ss01 = "0sv19w0adnddzarf8dlz0n73jzqnp0xfb2lgh4xcpjkhm66j3fhh";
|
||||
sgr-iosevka-ss02 = "1ih10a666r77pvj57crdgyn7ll15giwxj0nis501r1fkp1bzkscn";
|
||||
sgr-iosevka-ss03 = "180hkjzzgasf9a58vi0n0cishnbyjgbjmkh60awcpxwvh85qd4hf";
|
||||
sgr-iosevka-ss04 = "1i4rpg9j967xaxg8h9dmachd3896f4jgwxa0mfjlizls2hfvnbsi";
|
||||
sgr-iosevka-ss05 = "1ca2z4dincjk7jl16pa6d7dnnzq3w3il7fr2lphvrjvdrxbci615";
|
||||
sgr-iosevka-ss06 = "08dj9dcq58grnp6lh16yvvzjqhzlm765v4ci1rys0wbjnp72xxda";
|
||||
sgr-iosevka-ss07 = "13k6plhdgxhp5gjs8z98wb480hh5wy6p2zmc4xvhp88y93fy8kk7";
|
||||
sgr-iosevka-ss08 = "1zfxamanq6a06fazn1jkaswh5g6iw22qnycg5dnxn4flk8nas1db";
|
||||
sgr-iosevka-ss09 = "0qaxp4fsvl26il16h78y2l8013m49cbk2nzxcs1k9g5if11a49d3";
|
||||
sgr-iosevka-ss10 = "1qvvm6rvhrbp83qjfb3dfsbam20f6aw52kg1i5ggfrqj35niv0hd";
|
||||
sgr-iosevka-ss11 = "1v2b456qj8kyacm7308gsim5p25wnyg8qabyrfvdj00h81s31akl";
|
||||
sgr-iosevka-ss12 = "1rsi6ir5vccar0n3ychisc40axiyhqj5yvcx450ppd33f3sd5rc7";
|
||||
sgr-iosevka-ss13 = "12x4q5l1pdxi065zs913dqd7zb8qpi4bbgd43h3k5azsrwxwvixr";
|
||||
sgr-iosevka-ss14 = "1snzdv23jqmbz25k9i2zl7px7yysk5hn74q1x251s07ghdx3nfdj";
|
||||
sgr-iosevka-ss15 = "0hbmj6wij6cv9yh76npp4xrl7fdm8jjx03398anfcsa02gkvg8zz";
|
||||
sgr-iosevka-ss16 = "0v6vhg0vp5ig6ngs96q5mxa2snfp08nk68a9772sm1ny61q3chrq";
|
||||
sgr-iosevka-ss17 = "0268b85yhdfsbjyhi0vlxwrpwxa8h919np53s060z94094h6jd9x";
|
||||
sgr-iosevka-ss18 = "13vnhh8181h36y6iz2p2x6rjgjv5w3d0gqbcdkwhgmvx7s03k122";
|
||||
sgr-iosevka-term = "05c2sxb4aris90mhjxyfkw1b0ga0hplfas669076h7yjsimw647l";
|
||||
sgr-iosevka-term-curly = "1j0b4fhcivkdgka9zyqf732hcxj8rchqxkwv2bwxib1a17fmwn6c";
|
||||
sgr-iosevka-term-curly-slab = "0dvv2n3plfxm8z2xi1ihzn4rncyk1kz8xbgyprnb0lvqiyf18igy";
|
||||
sgr-iosevka-term-slab = "0i7wrvq6c96q8v6zw9iym42b6sbm0vc04ysljghpblnnfymq5yv9";
|
||||
sgr-iosevka-term-ss01 = "1n23qp50pr466blpn2h9dhjbn0wnbbxyzb0sz751bk8db41lpyqb";
|
||||
sgr-iosevka-term-ss02 = "0ghvfhkdsfsjb8yjwvwlwhn66lmy8dx34126ccnvj0g77ww2nwa9";
|
||||
sgr-iosevka-term-ss03 = "03hnmy9wijqwsc36cg5b3pxj7mb1cbyacii00pcvrpcns2w1ssbw";
|
||||
sgr-iosevka-term-ss04 = "0fv9xhhii0h5ii4yxsdnywn45254494mgq1n5aajasq494cgxhp4";
|
||||
sgr-iosevka-term-ss05 = "0qa4l77sjpxd9l4nb555bhgzm0f1c74w6014md2rpljjvyy2mzwg";
|
||||
sgr-iosevka-term-ss06 = "05y7rmghvhmzw3spn7b3v6hmpcqg5p32flm437a1aljdr46sbxli";
|
||||
sgr-iosevka-term-ss07 = "1lzqgpr1vchi4ricqp1v49nv62rl3anbdvzpvddby81wr5jcyd1y";
|
||||
sgr-iosevka-term-ss08 = "1sxicv2gspc39fyja370dpiq12xd1bgndiw5r6cqfkkd8x8dgpdv";
|
||||
sgr-iosevka-term-ss09 = "0ax9pgm3d171kksrqd2z8xpr68kdxkqg9h344an55gjk01q7dzay";
|
||||
sgr-iosevka-term-ss10 = "1rgvadmvdldcaqa0r76kzmrck814qwksdqficaxcd7wk8bx64n81";
|
||||
sgr-iosevka-term-ss11 = "02if14ff5kax4p1aa2wkbidhwlzgyxi7lxir2ildahwfkvkp971y";
|
||||
sgr-iosevka-term-ss12 = "0sj8n12is4094nbj67wkk88953jp9235kvvr4230abql1g6s263r";
|
||||
sgr-iosevka-term-ss13 = "006sdcj8qw247b63d647ykm8razyb0apsfd0cjmlikj9hdmyzrr2";
|
||||
sgr-iosevka-term-ss14 = "0i7d3ldp9rj1f4kwdk8hkxq0s38df6i25qfx6hwfjj1c5bl3a843";
|
||||
sgr-iosevka-term-ss15 = "15gjqz7zc6wwy1l61pgpnz7wwyyaij43dcrwcwyi6h10jhm8b3ia";
|
||||
sgr-iosevka-term-ss16 = "1c1i1iyqzgh3pz4fzjp26d71lphmcgqbjp2s91yyqg3nfhwbzvyc";
|
||||
sgr-iosevka-term-ss17 = "0kr58576vlx81nb2ia5z9226m6h0ybd5vzfj5li9b721l4q0rpky";
|
||||
sgr-iosevka-term-ss18 = "1zjs40i4dmw2l45k8wydngl4g3a88nhbmmjwd5lsz8a40pq4bw15";
|
||||
}
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "numix-icon-theme-square";
|
||||
version = "23.01.29";
|
||||
version = "23.02.05";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "numixproject";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-uHy1HXCRlPQh9t9bsvClTmP4FW/sP91hYKUXxtdBmdw=";
|
||||
sha256 = "sha256-FZt/3RugPHjanlxKjITSpaIb5RoKzI9mJvmPn7CNqS4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gtk3 ];
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitLab
|
||||
, cmake
|
||||
, extra-cmake-modules
|
||||
, kdecoration
|
||||
, plasma-workspace
|
||||
, qtbase
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "breath-theme";
|
||||
version = "unstable-2022-12-22";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.manjaro.org";
|
||||
owner = "themes";
|
||||
group = "artwork";
|
||||
repo = "breath";
|
||||
rev = "98822e7d903f16116bfb02ff9921824c139d7bbc";
|
||||
sha256 = "sha256-gvzhHOuOhxV3TC3UZeVpxeSDLpCJV+SaapcJ5mbHskY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
extra-cmake-modules
|
||||
|
||||
kdecoration
|
||||
plasma-workspace
|
||||
qtbase
|
||||
];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
cmakeFlags = [ "-DBUILD_PLASMA_THEMES=ON" "-DBUILD_SDDM_THEME=ON" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Manjaro KDE default theme";
|
||||
homepage = "https://gitlab.manjaro.org/artwork/themes/breath";
|
||||
license = licenses.cc-by-sa-40;
|
||||
maintainers = with maintainers; [ huantian ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, pkg-config
|
||||
, qttools
|
||||
, wrapQtAppsHook
|
||||
, dtkwidget
|
||||
, qt5integration
|
||||
, qt5platform-plugins
|
||||
, udisks2-qt5
|
||||
, gio-qt
|
||||
, image-editor
|
||||
, glibmm
|
||||
, freeimage
|
||||
, opencv
|
||||
, ffmpeg
|
||||
, ffmpegthumbnailer
|
||||
, qtbase
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deepin-album";
|
||||
version = "5.10.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxdeepin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-S/oVRD72dtpnvfGV6YfN5/syrmWA44H/1BbmAe0xjAY=";
|
||||
};
|
||||
|
||||
# This patch should be removed after upgrading to 6.0.0
|
||||
postPatch = ''
|
||||
substituteInPlace libUnionImage/CMakeLists.txt \
|
||||
--replace "/usr" "$out"
|
||||
substituteInPlace src/CMakeLists.txt \
|
||||
--replace "set(PREFIX /usr)" "set(PREFIX $out)" \
|
||||
--replace "/usr/bin" "$out/bin" \
|
||||
--replace "/usr/share/deepin-manual/manual-assets/application/)" "share/deepin-manual/manual-assets/application/)"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
qttools
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dtkwidget
|
||||
qt5platform-plugins
|
||||
udisks2-qt5
|
||||
gio-qt
|
||||
image-editor
|
||||
glibmm
|
||||
freeimage
|
||||
opencv
|
||||
ffmpeg
|
||||
ffmpegthumbnailer
|
||||
];
|
||||
|
||||
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
|
||||
qtWrapperArgs = [
|
||||
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
|
||||
];
|
||||
|
||||
cmakeFlags = [ "-DVERSION=${version}" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A fashion photo manager for viewing and organizing pictures";
|
||||
homepage = "https://github.com/linuxdeepin/deepin-album";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = teams.deepin.members;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, dtkwidget
|
||||
, qt5integration
|
||||
, qt5platform-plugins
|
||||
, udisks2-qt5
|
||||
, cmake
|
||||
, qtbase
|
||||
, qttools
|
||||
, pkg-config
|
||||
, kcodecs
|
||||
, karchive
|
||||
, wrapQtAppsHook
|
||||
, minizip
|
||||
, libzip
|
||||
, libarchive
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deepin-compressor";
|
||||
version = "5.12.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxdeepin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-HJDtUvXUT94G4WqrK92UMmijnuC4ApkKHU3yE3rOKHQ=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/source/common/pluginmanager.cpp \
|
||||
--replace "/usr/lib/" "$out/lib/"
|
||||
substituteInPlace src/desktop/deepin-compressor.desktop \
|
||||
--replace "/usr" "$out"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
qttools
|
||||
pkg-config
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dtkwidget
|
||||
qt5platform-plugins
|
||||
udisks2-qt5
|
||||
kcodecs
|
||||
karchive
|
||||
minizip
|
||||
libzip
|
||||
libarchive
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DVERSION=${version}"
|
||||
"-DUSE_TEST=OFF"
|
||||
];
|
||||
|
||||
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
|
||||
qtWrapperArgs = [
|
||||
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A fast and lightweight application for creating and extracting archives";
|
||||
homepage = "https://github.com/linuxdeepin/deepin-compressor";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = teams.deepin.members;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, dtkwidget
|
||||
, qt5integration
|
||||
, qt5platform-plugins
|
||||
, cmake
|
||||
, qttools
|
||||
, pkg-config
|
||||
, wrapQtAppsHook
|
||||
, qtbase
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deepin-draw";
|
||||
version = "5.11.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxdeepin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-49RQQ52HR5aqzeVEjGm9vQpTOxhY7I0X724x/Bboo90=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "chore: use GNUInstallDirs in CmakeLists";
|
||||
url = "https://github.com/linuxdeepin/deepin-draw/commit/dac714fe603e1b77fc39952bfe6949852ee6c2d5.patch";
|
||||
sha256 = "sha256-zajxmKkZJT1lcyvPv/PRPMxcstF69PB1tC50gYKDlWA=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace com.deepin.Draw.service \
|
||||
--replace "/usr/bin/deepin-draw" "$out/bin/deepin-draw"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
qttools
|
||||
pkg-config
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dtkwidget
|
||||
qt5platform-plugins
|
||||
];
|
||||
|
||||
cmakeFlags = [ "-DVERSION=${version}" ];
|
||||
|
||||
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
|
||||
qtWrapperArgs = [
|
||||
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Lightweight drawing tool for users to freely draw and simply edit images";
|
||||
homepage = "https://github.com/linuxdeepin/deepin-draw";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = teams.deepin.members;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
From c2fa29800c64f5bda04203bb2eb1845b29c1de3c Mon Sep 17 00:00:00 2001
|
||||
From: rewine <luhongxu@deepin.org>
|
||||
Date: Fri, 25 Mar 2022 18:20:17 +0800
|
||||
Subject: [PATCH] fix install path for nix
|
||||
|
||||
---
|
||||
qimage-plugins/libraw/CMakeLists.txt | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/qimage-plugins/libraw/CMakeLists.txt b/qimage-plugins/libraw/CMakeLists.txt
|
||||
index 4bfd85ad..00d11bd3 100644
|
||||
--- a/qimage-plugins/libraw/CMakeLists.txt
|
||||
+++ b/qimage-plugins/libraw/CMakeLists.txt
|
||||
@@ -44,7 +44,6 @@ target_include_directories(xraw PUBLIC ${RAW_INCLUDE_DIRS} ${Qt5Gui_INCLUDE_DIR
|
||||
|
||||
target_link_libraries(${CMD_NAME} Qt5::Core Qt5::Gui raw)
|
||||
|
||||
-install(TARGETS ${CMD_NAME} DESTINATION ${Qt5Core_DIR}/../../qt5/plugins/imageformats)
|
||||
-
|
||||
+install(TARGETS ${CMD_NAME} DESTINATION qt5/plugins/imageformats)
|
||||
|
||||
QT5_USE_MODULES(${PROJECT_NAME} Core Gui)
|
||||
--
|
||||
2.35.1
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, dtkwidget
|
||||
, qt5integration
|
||||
, qt5platform-plugins
|
||||
, gio-qt
|
||||
, udisks2-qt5
|
||||
, image-editor
|
||||
, cmake
|
||||
, pkg-config
|
||||
, qttools
|
||||
, wrapQtAppsHook
|
||||
, libraw
|
||||
, libexif
|
||||
, qtbase
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deepin-image-viewer";
|
||||
version = "5.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxdeepin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-5A6K47NcMkvncZIF5CXeHYYZWEHQ4YDnPDQr2axCmaI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./0001-fix-install-path-for-nix.patch
|
||||
(fetchpatch {
|
||||
name = "chore: use GNUInstallDirs in CmakeLists";
|
||||
url = "https://github.com/linuxdeepin/deepin-image-viewer/commit/4a046e6207fea306e592fddc33c1285cf719a63d.patch";
|
||||
sha256 = "sha256-aIgYmq6WDfCE+ZcD0GshxM+QmBWZGjh9MzZcTMrhBJ0=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/com.deepin.ImageViewer.service \
|
||||
--replace "/usr/bin/deepin-image-viewer" "$out/bin/deepin-image-viewer"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
qttools
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dtkwidget
|
||||
qt5platform-plugins
|
||||
gio-qt
|
||||
udisks2-qt5
|
||||
image-editor
|
||||
libraw
|
||||
libexif
|
||||
];
|
||||
|
||||
cmakeFlags = [ "-DVERSION=${version}" ];
|
||||
|
||||
# qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
|
||||
qtWrapperArgs = [
|
||||
"--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An image viewing tool with fashion interface and smooth performance";
|
||||
homepage = "https://github.com/linuxdeepin/deepin-image-viewer";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = teams.deepin.members;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, qmake
|
||||
, qttools
|
||||
, pkg-config
|
||||
, wrapQtAppsHook
|
||||
, dtkwidget
|
||||
, qtsvg
|
||||
, xorg
|
||||
, qtbase
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "deepin-picker";
|
||||
version = "5.0.28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxdeepin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-b463PqrCpt/DQqint5Xb0cRT66iHNPavj0lsTMv801k=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
qmake
|
||||
qttools
|
||||
pkg-config
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dtkwidget
|
||||
qtsvg
|
||||
xorg.libXtst
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace com.deepin.Picker.service \
|
||||
--replace "/usr/bin/deepin-picker" "$out/bin/deepin-picker"
|
||||
'';
|
||||
|
||||
qmakeFlags = [
|
||||
"BINDIR=${placeholder "out"}/bin"
|
||||
"ICONDIR=${placeholder "out"}/share/icons/hicolor/scalable/apps"
|
||||
"APPDIR=${placeholder "out"}/share/applications"
|
||||
"DSRDIR=${placeholder "out"}/share/deepin-picker"
|
||||
"DOCDIR=${placeholder "out"}/share/dman/deepin-picker"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Color picker application";
|
||||
homepage = "https://github.com/linuxdeepin/deepin-picker";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = teams.deepin.members;
|
||||
};
|
||||
}
|
||||
@@ -21,8 +21,13 @@ let
|
||||
udisks2-qt5 = callPackage ./library/udisks2-qt5 { };
|
||||
|
||||
#### Dtk Application
|
||||
deepin-album = callPackage ./apps/deepin-album { };
|
||||
deepin-calculator = callPackage ./apps/deepin-calculator { };
|
||||
deepin-compressor = callPackage ./apps/deepin-compressor { };
|
||||
deepin-draw = callPackage ./apps/deepin-draw { };
|
||||
deepin-editor = callPackage ./apps/deepin-editor { };
|
||||
deepin-image-viewer = callPackage ./apps/deepin-image-viewer { };
|
||||
deepin-picker = callPackage ./apps/deepin-picker { };
|
||||
deepin-terminal = callPackage ./apps/deepin-terminal { };
|
||||
|
||||
#### ARTWORK
|
||||
@@ -30,6 +35,9 @@ let
|
||||
deepin-icon-theme = callPackage ./artwork/deepin-icon-theme { };
|
||||
deepin-gtk-theme = callPackage ./artwork/deepin-gtk-theme { };
|
||||
deepin-sound-theme = callPackage ./artwork/deepin-sound-theme { };
|
||||
|
||||
#### MISC
|
||||
deepin-desktop-base = callPackage ./misc/deepin-desktop-base { };
|
||||
};
|
||||
in
|
||||
lib.makeScope libsForQt5.newScope packages
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
{ stdenvNoCC
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "deepin-desktop-base";
|
||||
version = "2022.03.07";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxdeepin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-joAduRI9jUtPA4lNsEhgOZlci8j/cvD8rJThqvj6a8A=";
|
||||
};
|
||||
|
||||
makeFlags = [ "DESTDIR=${placeholder "out"}" ];
|
||||
|
||||
# distribution_logo_transparent.svg come form nixos-artwork(https://github.com/NixOS/nixos-artwork)/logo/nixos-white.svg under CC-BY license, used for dde-lock
|
||||
postInstall = ''
|
||||
rm -r $out/etc
|
||||
rm -r $out/usr/share/python-apt
|
||||
rm -r $out/usr/share/plymouth
|
||||
rm -r $out/usr/share/distro-info
|
||||
mv $out/usr/* $out/
|
||||
rm -r $out/usr
|
||||
install -D ${./distribution_logo_transparent.svg} $out/share/pixmaps/distribution_logo_transparent.svg
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Base assets and definitions for Deepin Desktop Environment";
|
||||
homepage = "https://github.com/linuxdeepin/deepin-desktop-base";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = teams.deepin.members;
|
||||
};
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user