Project import generated by Copybara.
GitOrigin-RevId: a371c1071161104d329f6a85d922fd92b7cbab63
This commit is contained in:
parent
727493fff0
commit
7cbac10661
620 changed files with 6824 additions and 3305 deletions
5
third_party/nixpkgs/.editorconfig
vendored
5
third_party/nixpkgs/.editorconfig
vendored
|
@ -76,10 +76,12 @@ trim_trailing_whitespace = unset
|
|||
|
||||
[pkgs/build-support/dotnetenv/Wrapper/**]
|
||||
end_of_line = unset
|
||||
indent_style = unset
|
||||
insert_final_newline = unset
|
||||
trim_trailing_whitespace = unset
|
||||
|
||||
[pkgs/build-support/upstream-updater/**]
|
||||
indent_style = unset
|
||||
trim_trailing_whitespace = unset
|
||||
|
||||
[pkgs/development/compilers/elm/registry.dat]
|
||||
|
@ -96,6 +98,9 @@ trim_trailing_whitespace = unset
|
|||
[pkgs/development/node-packages/composition.nix]
|
||||
insert_final_newline = unset
|
||||
|
||||
[pkgs/development/{perl-modules,ocaml-modules,tools/ocaml}/**]
|
||||
indent_style = unset
|
||||
|
||||
[pkgs/servers/dict/wordnet_structures.py]
|
||||
trim_trailing_whitespace = unset
|
||||
|
||||
|
|
|
@ -2,6 +2,8 @@ name: "Checking EditorConfig"
|
|||
|
||||
on:
|
||||
pull_request:
|
||||
branches-ignore:
|
||||
- 'release-**'
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
|
@ -23,5 +25,5 @@ jobs:
|
|||
- name: Checking EditorConfig
|
||||
if: env.GIT_DIFF
|
||||
run: |
|
||||
./bin/editorconfig-checker -disable-indentation \
|
||||
./bin/editorconfig-checker -disable-indent-size \
|
||||
${{ env.GIT_DIFF }}
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
<warning>
|
||||
<para>
|
||||
The following section is a draft, and the policy for reviewing is still being discussed in issues such as <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166 </link> and <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836 </link>.
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166 </link> and <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836 </link>.
|
||||
</para>
|
||||
</warning>
|
||||
<para>
|
||||
|
|
|
@ -64,9 +64,9 @@ $ dotnet --info
|
|||
|
||||
The `dotnetCorePackages.sdk_X_Y` is preferred over the old dotnet-sdk as both major and minor version are very important for a dotnet environment. If a given minor version isn't present (or was changed), then this will likely break your ability to build a project.
|
||||
|
||||
## dotnetCorePackages.sdk vs dotnetCorePackages.netcore vs dotnetCorePackages.aspnetcore
|
||||
## dotnetCorePackages.sdk vs vs dotnetCorePackages.net vs dotnetCorePackages.netcore vs dotnetCorePackages.aspnetcore
|
||||
|
||||
The `dotnetCorePackages.sdk` contains both a runtime and the full sdk of a given version. The `netcore` and `aspnetcore` packages are meant to serve as minimal runtimes to deploy alongside already built applications.
|
||||
The `dotnetCorePackages.sdk` contains both a runtime and the full sdk of a given version. The `net`, `netcore` and `aspnetcore` packages are meant to serve as minimal runtimes to deploy alongside already built applications. For runtime versions >= .NET 5 `net` is used while `netcore` is used for older .NET Core runtime version.
|
||||
|
||||
## Packaging a Dotnet Application
|
||||
|
||||
|
|
3
third_party/nixpkgs/doc/stdenv/meta.xml
vendored
3
third_party/nixpkgs/doc/stdenv/meta.xml
vendored
|
@ -189,8 +189,7 @@ hello-2.3 A program that produces a familiar, friendly greeting
|
|||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
A list of names and e-mail addresses of the maintainers of this Nix expression. If you would like to be a maintainer of a package, you may want to add yourself to <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/maintainers/maintainer-list.nix"><filename>nixpkgs/maintainers/maintainer-list.nix</filename></link> and write something like <literal>[ stdenv.lib.maintainers.alice stdenv.lib.maintainers.bob ]</literal>.
|
||||
A list of the maintainers of this Nix expression. Maintainers are defined in <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/maintainers/maintainer-list.nix"><filename>nixpkgs/maintainers/maintainer-list.nix</filename></link>. There is no restriction to becoming a maintainer, just add yourself to that list in a separate commit titled 'maintainers: add alice', and reference maintainers with <literal>maintainers = with lib.maintainers; [ alice bob ]</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
|
8
third_party/nixpkgs/lib/strings.nix
vendored
8
third_party/nixpkgs/lib/strings.nix
vendored
|
@ -561,7 +561,9 @@ rec {
|
|||
enableFeature false "shared"
|
||||
=> "--disable-shared"
|
||||
*/
|
||||
enableFeature = enable: feat: "--${if enable then "enable" else "disable"}-${feat}";
|
||||
enableFeature = enable: feat:
|
||||
assert isString feat; # e.g. passing openssl instead of "openssl"
|
||||
"--${if enable then "enable" else "disable"}-${feat}";
|
||||
|
||||
/* Create an --{enable-<feat>=<value>,disable-<feat>} string that can be passed to
|
||||
standard GNU Autoconf scripts.
|
||||
|
@ -583,7 +585,9 @@ rec {
|
|||
withFeature false "shared"
|
||||
=> "--without-shared"
|
||||
*/
|
||||
withFeature = with_: feat: "--${if with_ then "with" else "without"}-${feat}";
|
||||
withFeature = with_: feat:
|
||||
assert isString feat; # e.g. passing openssl instead of "openssl"
|
||||
"--${if with_ then "with" else "without"}-${feat}";
|
||||
|
||||
/* Create an --{with-<feat>=<value>,without-<feat>} string that can be passed to
|
||||
standard GNU Autoconf scripts.
|
||||
|
|
|
@ -1272,6 +1272,12 @@
|
|||
githubId = 7214361;
|
||||
name = "Roman Gerasimenko";
|
||||
};
|
||||
bburdette = {
|
||||
email = "bburdette@protonmail.com";
|
||||
github = "bburdette";
|
||||
githubId = 157330;
|
||||
name = "Ben Burdette";
|
||||
};
|
||||
bzizou = {
|
||||
email = "Bruno@bzizou.net";
|
||||
github = "bzizou";
|
||||
|
@ -2833,6 +2839,12 @@
|
|||
fingerprint = "50B7 11F4 3DFD 2018 DCE6 E8D0 8A52 A140 BEBF 7D2C";
|
||||
}];
|
||||
};
|
||||
fabianhjr = {
|
||||
email = "fabianhjr@protonmail.com";
|
||||
github = "fabianhjr";
|
||||
githubId = 303897;
|
||||
name = "Fabián Heredia Montiel";
|
||||
};
|
||||
fadenb = {
|
||||
email = "tristan.helmich+nixos@gmail.com";
|
||||
github = "fadenb";
|
||||
|
@ -3871,6 +3883,8 @@
|
|||
};
|
||||
jcumming = {
|
||||
email = "jack@mudshark.org";
|
||||
github = "jcumming";
|
||||
githubId = 1982341;
|
||||
name = "Jack Cummings";
|
||||
};
|
||||
jD91mZM2 = {
|
||||
|
@ -9958,4 +9972,10 @@
|
|||
githubId = 19290397;
|
||||
name = "Tunc Uzlu";
|
||||
};
|
||||
pulsation = {
|
||||
name = "Philippe Sam-Long";
|
||||
email = "1838397+pulsation@users.noreply.github.com";
|
||||
github = "pulsation";
|
||||
githubId = 1838397;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -65,16 +65,16 @@ Platform Vendor Advanced Micro Devices, Inc.</screen>
|
|||
<title>AMD</title>
|
||||
|
||||
<para>
|
||||
Modern AMD <link
|
||||
xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
|
||||
Core Next</link> (GCN) GPUs are supported through the
|
||||
<package>rocm-opencl-icd</package> package. Adding this package to
|
||||
<xref linkend="opt-hardware.opengl.extraPackages"/> enables OpenCL
|
||||
support:
|
||||
Modern AMD <link
|
||||
xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
|
||||
Core Next</link> (GCN) GPUs are supported through the
|
||||
<package>rocm-opencl-icd</package> package. Adding this package to
|
||||
<xref linkend="opt-hardware.opengl.extraPackages"/> enables OpenCL
|
||||
support:
|
||||
|
||||
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
|
||||
rocm-opencl-icd
|
||||
];</programlisting>
|
||||
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
|
||||
rocm-opencl-icd
|
||||
];</programlisting>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
|
@ -100,9 +100,9 @@ Platform Vendor Advanced Micro Devices, Inc.</screen>
|
|||
support. For example, for Gen8 and later GPUs, the following
|
||||
configuration can be used:
|
||||
|
||||
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
|
||||
intel-compute-runtime
|
||||
];</programlisting>
|
||||
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
|
||||
intel-compute-runtime
|
||||
];</programlisting>
|
||||
|
||||
</para>
|
||||
</section>
|
||||
|
@ -173,31 +173,31 @@ GPU1:
|
|||
<title>AMD</title>
|
||||
|
||||
<para>
|
||||
Modern AMD <link
|
||||
xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
|
||||
Core Next</link> (GCN) GPUs are supported through either radv, which is
|
||||
part of <package>mesa</package>, or the <package>amdvlk</package> package.
|
||||
Adding the <package>amdvlk</package> package to
|
||||
<xref linkend="opt-hardware.opengl.extraPackages"/> makes both drivers
|
||||
available for applications and lets them choose. A specific driver can
|
||||
be forced as follows:
|
||||
Modern AMD <link
|
||||
xlink:href="https://en.wikipedia.org/wiki/Graphics_Core_Next">Graphics
|
||||
Core Next</link> (GCN) GPUs are supported through either radv, which is
|
||||
part of <package>mesa</package>, or the <package>amdvlk</package> package.
|
||||
Adding the <package>amdvlk</package> package to
|
||||
<xref linkend="opt-hardware.opengl.extraPackages"/> makes both drivers
|
||||
available for applications and lets them choose. A specific driver can
|
||||
be forced as follows:
|
||||
|
||||
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
|
||||
pkgs.<package>amdvlk</package>
|
||||
];
|
||||
<programlisting><xref linkend="opt-hardware.opengl.extraPackages"/> = [
|
||||
pkgs.<package>amdvlk</package>
|
||||
];
|
||||
|
||||
# To enable Vulkan support for 32-bit applications, also add:
|
||||
<xref linkend="opt-hardware.opengl.extraPackages32"/> = [
|
||||
pkgs.driversi686Linux.<package>amdvlk</package>
|
||||
];
|
||||
# To enable Vulkan support for 32-bit applications, also add:
|
||||
<xref linkend="opt-hardware.opengl.extraPackages32"/> = [
|
||||
pkgs.driversi686Linux.<package>amdvlk</package>
|
||||
];
|
||||
|
||||
# For amdvlk
|
||||
<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
|
||||
"/run/opengl-driver/share/vulkan/icd.d/amd_icd64.json";
|
||||
# For radv
|
||||
<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
|
||||
"/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";
|
||||
</programlisting>
|
||||
# For amdvlk
|
||||
<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
|
||||
"/run/opengl-driver/share/vulkan/icd.d/amd_icd64.json";
|
||||
# For radv
|
||||
<xref linkend="opt-environment.variables"/>.VK_ICD_FILENAMES =
|
||||
"/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";
|
||||
</programlisting>
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -12,7 +12,7 @@ xlink:href="https://github.com/NixOS/nixpkgs">Nixpkgs</link> repository.
|
|||
You can quickly check your edits with the following:
|
||||
</para>
|
||||
<screen>
|
||||
<prompt>$ </prompt>cd /path/to/nixpkgs/nixos/doc/manual
|
||||
<prompt>$ </prompt>cd /path/to/nixpkgs
|
||||
<prompt>$ </prompt>nix-build nixos/release.nix -A manual.x86_64-linux
|
||||
</screen>
|
||||
<para>
|
||||
|
|
|
@ -1593,30 +1593,30 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
|
|||
<para>
|
||||
Agda has been heavily reworked.
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>agda.mkDerivation</literal> has been heavily changed and
|
||||
is now located at <package>agdaPackages.mkDerivation</package>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
New top-level packages <package>agda</package> and
|
||||
<literal>agda.withPackages</literal> have been added, the second
|
||||
of which sets up agda with access to chosen libraries.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
All agda libraries now live under
|
||||
<literal>agdaPackages</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Many broken libraries have been removed.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>agda.mkDerivation</literal> has been heavily changed and
|
||||
is now located at <package>agdaPackages.mkDerivation</package>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
New top-level packages <package>agda</package> and
|
||||
<literal>agda.withPackages</literal> have been added, the second
|
||||
of which sets up agda with access to chosen libraries.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
All agda libraries now live under
|
||||
<literal>agdaPackages</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Many broken libraries have been removed.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
See the <link
|
||||
xlink:href="https://nixos.org/nixpkgs/manual/#agda">new
|
||||
|
|
|
@ -23,6 +23,9 @@
|
|||
Support is planned until the end of October 2021, handing over to 21.09.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>GNOME desktop environment was upgraded to 3.38, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.38/">release notes</link>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
|
@ -143,6 +146,20 @@
|
|||
<link xlink:href="http://www.mutt.org/relnotes/2.0/">release notes for Mutt 2.0</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>vim</literal> switched to Python 3, dropping all Python 2 support.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link linkend="opt-boot.zfs.forceImportAll">boot.zfs.forceImportAll</link>
|
||||
previously did nothing, but has been fixed. However its default has been
|
||||
changed to <literal>false</literal> to preserve the existing default
|
||||
behaviour. If you have this explicitly set to <literal>true</literal>,
|
||||
please note that your non-root pools will now be forcibly imported.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
|
|
|
@ -15,8 +15,8 @@ require "rexml/document"
|
|||
include REXML
|
||||
|
||||
if ARGV.length < 1 then
|
||||
$stderr.puts "Needs a filename."
|
||||
exit 1
|
||||
$stderr.puts "Needs a filename."
|
||||
exit 1
|
||||
end
|
||||
|
||||
filename = ARGV.shift
|
||||
|
@ -51,17 +51,17 @@ $touched = false
|
|||
# Generates: --optionnamevalue
|
||||
# ^^ ^^
|
||||
doc.elements.each("//varlistentry/term") do |term|
|
||||
["varname", "function", "option", "replaceable"].each do |prev_name|
|
||||
term.elements.each(prev_name) do |el|
|
||||
if el.next_element and
|
||||
el.next_element.name == "replaceable" and
|
||||
el.next_sibling_node.class == Element
|
||||
then
|
||||
$touched = true
|
||||
term.insert_after(el, Text.new(" "))
|
||||
end
|
||||
end
|
||||
end
|
||||
["varname", "function", "option", "replaceable"].each do |prev_name|
|
||||
term.elements.each(prev_name) do |el|
|
||||
if el.next_element and
|
||||
el.next_element.name == "replaceable" and
|
||||
el.next_sibling_node.class == Element
|
||||
then
|
||||
$touched = true
|
||||
term.insert_after(el, Text.new(" "))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
@ -75,17 +75,17 @@ end
|
|||
# Generates: -Ipath
|
||||
# ^^
|
||||
doc.elements.each("//cmdsynopsis/arg") do |term|
|
||||
["option", "replaceable"].each do |prev_name|
|
||||
term.elements.each(prev_name) do |el|
|
||||
if el.next_element and
|
||||
el.next_element.name == "replaceable" and
|
||||
el.next_sibling_node.class == Element
|
||||
then
|
||||
$touched = true
|
||||
term.insert_after(el, Text.new(" "))
|
||||
end
|
||||
end
|
||||
end
|
||||
["option", "replaceable"].each do |prev_name|
|
||||
term.elements.each(prev_name) do |el|
|
||||
if el.next_element and
|
||||
el.next_element.name == "replaceable" and
|
||||
el.next_sibling_node.class == Element
|
||||
then
|
||||
$touched = true
|
||||
term.insert_after(el, Text.new(" "))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# <cmdsynopsis>
|
||||
|
@ -104,21 +104,21 @@ end
|
|||
# Generates: [{--profile-name | -p }name]
|
||||
# ^^^^
|
||||
doc.elements.each("//cmdsynopsis/arg") do |term|
|
||||
["group"].each do |prev_name|
|
||||
term.elements.each(prev_name) do |el|
|
||||
if el.next_element and
|
||||
el.next_element.name == "replaceable" and
|
||||
el.next_sibling_node.class == Element
|
||||
then
|
||||
$touched = true
|
||||
term.insert_after(el, Text.new(" "))
|
||||
end
|
||||
end
|
||||
end
|
||||
["group"].each do |prev_name|
|
||||
term.elements.each(prev_name) do |el|
|
||||
if el.next_element and
|
||||
el.next_element.name == "replaceable" and
|
||||
el.next_sibling_node.class == Element
|
||||
then
|
||||
$touched = true
|
||||
term.insert_after(el, Text.new(" "))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
if $touched then
|
||||
doc.context[:attribute_quote] = :quote
|
||||
doc.write(output: File.open(filename, "w"))
|
||||
doc.context[:attribute_quote] = :quote
|
||||
doc.write(output: File.open(filename, "w"))
|
||||
end
|
||||
|
|
|
@ -36,6 +36,8 @@ let
|
|||
${addModuleIf cfg.zeroconf.discovery.enable "module-zeroconf-discover"}
|
||||
${addModuleIf cfg.tcp.enable (concatStringsSep " "
|
||||
([ "module-native-protocol-tcp" ] ++ allAnon ++ ipAnon))}
|
||||
${addModuleIf config.services.jack.jackd.enable "module-jack-sink"}
|
||||
${addModuleIf config.services.jack.jackd.enable "module-jack-source"}
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
};
|
||||
|
@ -144,7 +146,9 @@ in {
|
|||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.pulseaudio;
|
||||
default = if config.services.jack.jackd.enable
|
||||
then pkgs.pulseaudioFull
|
||||
else pkgs.pulseaudio;
|
||||
defaultText = "pkgs.pulseaudio";
|
||||
example = literalExample "pkgs.pulseaudioFull";
|
||||
description = ''
|
||||
|
@ -259,7 +263,7 @@ in {
|
|||
(drv: drv.override { pulseaudio = overriddenPackage; })
|
||||
cfg.extraModules;
|
||||
modulePaths = builtins.map
|
||||
(drv: "${drv}/lib/pulse-${overriddenPackage.version}/modules")
|
||||
(drv: "${drv}/${overriddenPackage.pulseDir}/modules")
|
||||
# User-provided extra modules take precedence
|
||||
(overriddenModules ++ [ overriddenPackage ]);
|
||||
in lib.concatStringsSep ":" modulePaths;
|
||||
|
@ -284,6 +288,8 @@ in {
|
|||
RestartSec = "500ms";
|
||||
PassEnvironment = "DISPLAY";
|
||||
};
|
||||
} // optionalAttrs config.services.jack.jackd.enable {
|
||||
environment.JACK_PROMISCUOUS_SERVER = "jackaudio";
|
||||
};
|
||||
sockets.pulseaudio = {
|
||||
wantedBy = [ "sockets.target" ];
|
||||
|
|
|
@ -19,6 +19,7 @@ in
|
|||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [ acpilight ];
|
||||
services.udev.packages = with pkgs; [ acpilight ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -542,6 +542,7 @@
|
|||
./services/monitoring/kapacitor.nix
|
||||
./services/monitoring/loki.nix
|
||||
./services/monitoring/longview.nix
|
||||
./services/monitoring/mackerel-agent.nix
|
||||
./services/monitoring/monit.nix
|
||||
./services/monitoring/munin.nix
|
||||
./services/monitoring/nagios.nix
|
||||
|
|
|
@ -142,6 +142,13 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
assertions = [
|
||||
{
|
||||
assertion = cfg.useSTARTTLS -> cfg.useTLS;
|
||||
message = "services.ssmtp.useSTARTTLS has no effect without services.ssmtp.useTLS";
|
||||
}
|
||||
];
|
||||
|
||||
services.ssmtp.settings = mkMerge [
|
||||
({
|
||||
MailHub = cfg.hostName;
|
||||
|
|
|
@ -246,6 +246,9 @@ in {
|
|||
description = "JACK Audio Connection Kit";
|
||||
serviceConfig = {
|
||||
User = "jackaudio";
|
||||
SupplementaryGroups = lib.optional
|
||||
(config.hardware.pulseaudio.enable
|
||||
&& !config.hardware.pulseaudio.systemWide) "users";
|
||||
ExecStart = "${cfg.jackd.package}/bin/jackd ${lib.escapeShellArgs cfg.jackd.extraOptions}";
|
||||
LimitRTPRIO = 99;
|
||||
LimitMEMLOCK = "infinity";
|
||||
|
|
|
@ -38,6 +38,11 @@ with lib;
|
|||
|
||||
services.dbus.packages = [ pkgs.telepathy-mission-control ];
|
||||
|
||||
# Enable runtime optional telepathy in gnome-shell
|
||||
services.xserver.desktopManager.gnome3.sessionPath = with pkgs; [
|
||||
telepathy-glib
|
||||
telepathy-logger
|
||||
];
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -15,6 +15,8 @@ in {
|
|||
hardware.bluetooth = {
|
||||
enable = mkEnableOption "support for Bluetooth";
|
||||
|
||||
hsphfpd.enable = mkEnableOption "support for hsphfpd[-prototype] implementation";
|
||||
|
||||
powerOnBoot = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
|
@ -72,7 +74,8 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ bluez-bluetooth ];
|
||||
environment.systemPackages = [ bluez-bluetooth ]
|
||||
++ optionals cfg.hsphfpd.enable [ pkgs.hsphfpd ];
|
||||
|
||||
environment.etc."bluetooth/main.conf"= {
|
||||
source = pkgs.writeText "main.conf"
|
||||
|
@ -80,7 +83,8 @@ in {
|
|||
};
|
||||
|
||||
services.udev.packages = [ bluez-bluetooth ];
|
||||
services.dbus.packages = [ bluez-bluetooth ];
|
||||
services.dbus.packages = [ bluez-bluetooth ]
|
||||
++ optionals cfg.hsphfpd.enable [ pkgs.hsphfpd ];
|
||||
systemd.packages = [ bluez-bluetooth ];
|
||||
|
||||
systemd.services = {
|
||||
|
@ -90,11 +94,31 @@ in {
|
|||
# restarting can leave people without a mouse/keyboard
|
||||
unitConfig.X-RestartIfChanged = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
// (optionalAttrs cfg.hsphfpd.enable {
|
||||
hsphfpd = {
|
||||
after = [ "bluetooth.service" ];
|
||||
requires = [ "bluetooth.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
description = "A prototype implementation used for connecting HSP/HFP Bluetooth devices";
|
||||
serviceConfig.ExecStart = "${pkgs.hsphfpd}/bin/hsphfpd.pl";
|
||||
};
|
||||
})
|
||||
;
|
||||
|
||||
systemd.user.services = {
|
||||
obex.aliases = [ "dbus-org.bluez.obex.service" ];
|
||||
};
|
||||
}
|
||||
// (optionalAttrs cfg.hsphfpd.enable {
|
||||
telephony_client = {
|
||||
wantedBy = [ "default.target"];
|
||||
|
||||
description = "telephony_client for hsphfpd";
|
||||
serviceConfig.ExecStart = "${pkgs.hsphfpd}/bin/telephony_client.pl";
|
||||
};
|
||||
})
|
||||
;
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -11,8 +11,8 @@ let
|
|||
"fwupd/daemon.conf" = {
|
||||
source = pkgs.writeText "daemon.conf" ''
|
||||
[fwupd]
|
||||
BlacklistDevices=${lib.concatStringsSep ";" cfg.blacklistDevices}
|
||||
BlacklistPlugins=${lib.concatStringsSep ";" cfg.blacklistPlugins}
|
||||
DisabledDevices=${lib.concatStringsSep ";" cfg.disabledDevices}
|
||||
DisabledPlugins=${lib.concatStringsSep ";" cfg.disabledPlugins}
|
||||
'';
|
||||
};
|
||||
"fwupd/uefi.conf" = {
|
||||
|
@ -59,21 +59,21 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
blacklistDevices = mkOption {
|
||||
disabledDevices = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
example = [ "2082b5e0-7a64-478a-b1b2-e3404fab6dad" ];
|
||||
description = ''
|
||||
Allow blacklisting specific devices by their GUID
|
||||
Allow disabling specific devices by their GUID
|
||||
'';
|
||||
};
|
||||
|
||||
blacklistPlugins = mkOption {
|
||||
disabledPlugins = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
example = [ "udev" ];
|
||||
description = ''
|
||||
Allow blacklisting specific plugins
|
||||
Allow disabling specific plugins
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -105,11 +105,15 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
imports = [
|
||||
(mkRenamedOptionModule [ "services" "fwupd" "blacklistDevices"] [ "services" "fwupd" "disabledDevices" ])
|
||||
(mkRenamedOptionModule [ "services" "fwupd" "blacklistPlugins"] [ "services" "fwupd" "disabledPlugins" ])
|
||||
];
|
||||
|
||||
###### implementation
|
||||
config = mkIf cfg.enable {
|
||||
# Disable test related plug-ins implicitly so that users do not have to care about them.
|
||||
services.fwupd.blacklistPlugins = cfg.package.defaultBlacklistedPlugins;
|
||||
services.fwupd.disabledPlugins = cfg.package.defaultDisabledPlugins;
|
||||
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
|
|
|
@ -6,25 +6,14 @@ let
|
|||
echo '${builtins.toJSON conf}' | ${pkgs.buildPackages.jq}/bin/jq 'del(._module)' > $out
|
||||
'';
|
||||
|
||||
allowSystemdJournal = cfg.configuration ? scrape_configs && lib.any (v: v ? journal) cfg.configuration.scrape_configs;
|
||||
in {
|
||||
options.services.promtail = with types; {
|
||||
enable = mkEnableOption "the Promtail ingresser";
|
||||
|
||||
|
||||
configuration = mkOption {
|
||||
type = with lib.types; let
|
||||
valueType = nullOr (oneOf [
|
||||
bool
|
||||
int
|
||||
float
|
||||
str
|
||||
(lazyAttrsOf valueType)
|
||||
(listOf valueType)
|
||||
]) // {
|
||||
description = "JSON value";
|
||||
emptyValue.value = {};
|
||||
deprecationMessage = null;
|
||||
};
|
||||
in valueType;
|
||||
type = (pkgs.formats.json {}).type;
|
||||
description = ''
|
||||
Specify the configuration for Promtail in Nix.
|
||||
'';
|
||||
|
@ -80,6 +69,8 @@ in {
|
|||
RestrictRealtime = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
PrivateUsers = true;
|
||||
|
||||
SupplementaryGroups = lib.optional (allowSystemdJournal) "systemd-journal";
|
||||
} // (optionalAttrs (!pkgs.stdenv.isAarch64) { # FIXME: figure out why this breaks on aarch64
|
||||
SystemCallFilter = "@system-service";
|
||||
});
|
||||
|
|
|
@ -6,6 +6,12 @@ let
|
|||
cfg = config.services.cfdyndns;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
(mkRemovedOptionModule
|
||||
[ "services" "cfdyndns" "apikey" ]
|
||||
"Use services.cfdyndns.apikeyFile instead.")
|
||||
];
|
||||
|
||||
options = {
|
||||
services.cfdyndns = {
|
||||
enable = mkEnableOption "Cloudflare Dynamic DNS Client";
|
||||
|
@ -17,10 +23,12 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
apikey = mkOption {
|
||||
type = types.str;
|
||||
apikeyFile = mkOption {
|
||||
default = null;
|
||||
type = types.nullOr types.str;
|
||||
description = ''
|
||||
The API Key to use to authenticate to CloudFlare.
|
||||
The path to a file containing the API Key
|
||||
used to authenticate with CloudFlare.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -45,13 +53,17 @@ in
|
|||
Type = "simple";
|
||||
User = config.ids.uids.cfdyndns;
|
||||
Group = config.ids.gids.cfdyndns;
|
||||
ExecStart = "/bin/sh -c '${pkgs.cfdyndns}/bin/cfdyndns'";
|
||||
};
|
||||
environment = {
|
||||
CLOUDFLARE_EMAIL="${cfg.email}";
|
||||
CLOUDFLARE_APIKEY="${cfg.apikey}";
|
||||
CLOUDFLARE_RECORDS="${concatStringsSep "," cfg.records}";
|
||||
};
|
||||
script = ''
|
||||
${optionalString (cfg.apikeyFile != null) ''
|
||||
export CLOUDFLARE_APIKEY="$(cat ${escapeShellArg cfg.apikeyFile})"
|
||||
''}
|
||||
${pkgs.cfdyndns}/bin/cfdyndns
|
||||
'';
|
||||
};
|
||||
|
||||
users.users = {
|
||||
|
|
|
@ -39,7 +39,7 @@ in {
|
|||
};
|
||||
|
||||
configuration = mkOption {
|
||||
type = types.attrs;
|
||||
type = (pkgs.formats.json {}).type;
|
||||
default = {};
|
||||
description = ''
|
||||
Specify the configuration for Loki in Nix.
|
||||
|
@ -78,6 +78,8 @@ in {
|
|||
'';
|
||||
}];
|
||||
|
||||
environment.systemPackages = [ pkgs.grafana-loki ]; # logcli
|
||||
|
||||
users.groups.${cfg.group} = { };
|
||||
users.users.${cfg.user} = {
|
||||
description = "Loki Service User";
|
||||
|
|
111
third_party/nixpkgs/nixos/modules/services/monitoring/mackerel-agent.nix
vendored
Normal file
111
third_party/nixpkgs/nixos/modules/services/monitoring/mackerel-agent.nix
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.mackerel-agent;
|
||||
settingsFmt = pkgs.formats.toml {};
|
||||
in {
|
||||
options.services.mackerel-agent = {
|
||||
enable = mkEnableOption "mackerel.io agent";
|
||||
|
||||
# the upstream package runs as root, but doesn't seem to be strictly
|
||||
# necessary for basic functionality
|
||||
runAsRoot = mkEnableOption "Whether to run as root.";
|
||||
|
||||
autoRetirement = mkEnableOption ''
|
||||
Whether to automatically retire the host upon OS shutdown.
|
||||
'';
|
||||
|
||||
apiKeyFile = mkOption {
|
||||
type = types.path;
|
||||
default = "";
|
||||
example = "/run/keys/mackerel-api-key";
|
||||
description = ''
|
||||
Path to file containing the Mackerel API key. The file should contain a
|
||||
single line of the following form:
|
||||
|
||||
<literallayout>apikey = "EXAMPLE_API_KEY"</literallayout>
|
||||
'';
|
||||
};
|
||||
|
||||
settings = mkOption {
|
||||
description = ''
|
||||
Options for mackerel-agent.conf.
|
||||
|
||||
Documentation:
|
||||
<link xlink:href="https://mackerel.io/docs/entry/spec/agent"/>
|
||||
'';
|
||||
|
||||
default = {};
|
||||
example = {
|
||||
verbose = false;
|
||||
silent = false;
|
||||
};
|
||||
|
||||
type = types.submodule {
|
||||
freeformType = settingsFmt.type;
|
||||
|
||||
options.host_status = {
|
||||
on_start = mkOption {
|
||||
type = types.enum [ "working" "standby" "maintenance" "poweroff" ];
|
||||
description = "Host status after agent startup.";
|
||||
default = "working";
|
||||
};
|
||||
on_stop = mkOption {
|
||||
type = types.enum [ "working" "standby" "maintenance" "poweroff" ];
|
||||
description = "Host status after agent shutdown.";
|
||||
default = "poweroff";
|
||||
};
|
||||
};
|
||||
|
||||
options.diagnostic =
|
||||
mkEnableOption "Collect memory usage for the agent itself";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [ mackerel-agent ];
|
||||
|
||||
environment.etc = {
|
||||
"mackerel-agent/mackerel-agent.conf".source =
|
||||
settingsFmt.generate "mackerel-agent.conf" cfg.settings;
|
||||
"mackerel-agent/conf.d/api-key.conf".source = cfg.apiKeyFile;
|
||||
};
|
||||
|
||||
services.mackerel-agent.settings = {
|
||||
root = mkDefault "/var/lib/mackerel-agent";
|
||||
pidfile = mkDefault "/run/mackerel-agent/mackerel-agent.pid";
|
||||
|
||||
# conf.d stores the symlink to cfg.apiKeyFile
|
||||
include = mkDefault "/etc/mackerel-agent/conf.d/*.conf";
|
||||
};
|
||||
|
||||
# upstream service file in https://git.io/JUt4Q
|
||||
systemd.services.mackerel-agent = {
|
||||
description = "mackerel.io agent";
|
||||
after = [ "network-online.target" "nss-lookup.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
environment = {
|
||||
MACKEREL_PLUGIN_WORKDIR = mkDefault "%C/mackerel-agent";
|
||||
};
|
||||
serviceConfig = {
|
||||
DynamicUser = !cfg.runAsRoot;
|
||||
PrivateTmp = mkDefault true;
|
||||
CacheDirectory = "mackerel-agent";
|
||||
ConfigurationDirectory = "mackerel-agent";
|
||||
RuntimeDirectory = "mackerel-agent";
|
||||
StateDirectory = "mackerel-agent";
|
||||
ExecStart = "${pkgs.mackerel-agent}/bin/mackerel-agent supervise";
|
||||
ExecStopPost = mkIf cfg.autoRetirement "${pkg.mackerel-agent}/bin/mackerel-agent retire -force";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
LimitNOFILE = mkDefault 65536;
|
||||
LimitNPROC = mkDefault 65536;
|
||||
};
|
||||
restartTriggers = [
|
||||
config.environment.etc."mackerel-agent/mackerel-agent.conf".source
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -73,6 +73,7 @@ in
|
|||
core-os-services.enable = mkEnableOption "essential services for GNOME3";
|
||||
core-shell.enable = mkEnableOption "GNOME Shell services";
|
||||
core-utilities.enable = mkEnableOption "GNOME core utilities";
|
||||
core-developer-tools.enable = mkEnableOption "GNOME core developer tools";
|
||||
games.enable = mkEnableOption "GNOME games";
|
||||
|
||||
experimental-features = {
|
||||
|
@ -322,6 +323,12 @@ in
|
|||
gnome-shell
|
||||
];
|
||||
|
||||
services.udev.packages = with pkgs.gnome3; [
|
||||
# Force enable KMS modifiers for devices that require them.
|
||||
# https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1443
|
||||
mutter
|
||||
];
|
||||
|
||||
services.avahi.enable = mkDefault true;
|
||||
|
||||
xdg.portal.extraPortals = [
|
||||
|
@ -351,7 +358,7 @@ in
|
|||
source-sans-pro
|
||||
];
|
||||
|
||||
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-36/elements/core/meta-gnome-core-shell.bst
|
||||
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-shell.bst
|
||||
environment.systemPackages = with pkgs.gnome3; [
|
||||
adwaita-icon-theme
|
||||
gnome-backgrounds
|
||||
|
@ -396,7 +403,7 @@ in
|
|||
};
|
||||
})
|
||||
|
||||
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-36/elements/core/meta-gnome-core-utilities.bst
|
||||
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-utilities.bst
|
||||
(mkIf serviceCfg.core-utilities.enable {
|
||||
environment.systemPackages = (with pkgs.gnome3; removePackagesByName [
|
||||
baobab
|
||||
|
@ -415,16 +422,15 @@ in
|
|||
gnome-logs
|
||||
gnome-maps
|
||||
gnome-music
|
||||
gnome-photos
|
||||
pkgs.gnome-photos
|
||||
gnome-screenshot
|
||||
gnome-system-monitor
|
||||
gnome-weather
|
||||
nautilus
|
||||
pkgs.gnome-connections
|
||||
simple-scan
|
||||
totem
|
||||
yelp
|
||||
# Unsure if sensible for NixOS
|
||||
/* gnome-boxes */
|
||||
] config.environment.gnome3.excludePackages);
|
||||
|
||||
# Enable default program modules
|
||||
|
@ -453,12 +459,43 @@ in
|
|||
|
||||
(mkIf serviceCfg.games.enable {
|
||||
environment.systemPackages = (with pkgs.gnome3; removePackagesByName [
|
||||
aisleriot atomix five-or-more four-in-a-row gnome-chess gnome-klotski
|
||||
gnome-mahjongg gnome-mines gnome-nibbles gnome-robots gnome-sudoku
|
||||
gnome-taquin gnome-tetravex hitori iagno lightsoff quadrapassel
|
||||
swell-foop tali
|
||||
aisleriot
|
||||
atomix
|
||||
five-or-more
|
||||
four-in-a-row
|
||||
gnome-chess
|
||||
gnome-klotski
|
||||
gnome-mahjongg
|
||||
gnome-mines
|
||||
gnome-nibbles
|
||||
gnome-robots
|
||||
gnome-sudoku
|
||||
gnome-taquin
|
||||
gnome-tetravex
|
||||
hitori
|
||||
iagno
|
||||
lightsoff
|
||||
quadrapassel
|
||||
swell-foop
|
||||
tali
|
||||
] config.environment.gnome3.excludePackages);
|
||||
})
|
||||
|
||||
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/-/blob/3.38.0/elements/core/meta-gnome-core-developer-tools.bst
|
||||
(mkIf serviceCfg.core-developer-tools.enable {
|
||||
environment.systemPackages = (with pkgs.gnome3; removePackagesByName [
|
||||
dconf-editor
|
||||
devhelp
|
||||
pkgs.gnome-builder
|
||||
# boxes would make sense in this option, however
|
||||
# it doesn't function well enough to be included
|
||||
# in default configurations.
|
||||
# https://github.com/NixOS/nixpkgs/issues/60908
|
||||
/* gnome-boxes */
|
||||
] config.environment.gnome3.excludePackages);
|
||||
|
||||
services.sysprof.enable = true;
|
||||
})
|
||||
];
|
||||
|
||||
}
|
||||
|
|
|
@ -367,7 +367,7 @@ in
|
|||
security.pam.services.sddm.enableKwallet = true;
|
||||
|
||||
xdg.portal.enable = true;
|
||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-kde ];
|
||||
xdg.portal.extraPortals = [ plasma5.xdg-desktop-portal-kde ];
|
||||
|
||||
# Update the start menu for each user that is currently logged in
|
||||
system.userActivationScripts.plasmaSetup = activationScript;
|
||||
|
|
|
@ -160,7 +160,7 @@ in
|
|||
];
|
||||
|
||||
# Otherwise GDM will not be able to start correctly and display Wayland sessions
|
||||
systemd.packages = with pkgs.gnome3; [ gnome-session gnome-shell ];
|
||||
systemd.packages = with pkgs.gnome3; [ gdm gnome-session gnome-shell ];
|
||||
environment.systemPackages = [ pkgs.gnome3.adwaita-icon-theme ];
|
||||
|
||||
systemd.services.display-manager.wants = [
|
||||
|
|
|
@ -28,6 +28,20 @@ let
|
|||
utillinux # needed for mount and mountpoint
|
||||
];
|
||||
|
||||
scriptType = with types;
|
||||
let scriptOptions =
|
||||
{ deps = mkOption
|
||||
{ type = types.listOf types.str;
|
||||
default = [ ];
|
||||
description = "List of dependencies. The script will run after these.";
|
||||
};
|
||||
text = mkOption
|
||||
{ type = types.lines;
|
||||
description = "The content of the script.";
|
||||
};
|
||||
};
|
||||
in either str (submodule { options = scriptOptions; });
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
@ -40,16 +54,14 @@ in
|
|||
default = {};
|
||||
|
||||
example = literalExample ''
|
||||
{ stdio = {
|
||||
text = '''
|
||||
# Needed by some programs.
|
||||
ln -sfn /proc/self/fd /dev/fd
|
||||
ln -sfn /proc/self/fd/0 /dev/stdin
|
||||
ln -sfn /proc/self/fd/1 /dev/stdout
|
||||
ln -sfn /proc/self/fd/2 /dev/stderr
|
||||
''';
|
||||
deps = [];
|
||||
};
|
||||
{ stdio.text =
|
||||
'''
|
||||
# Needed by some programs.
|
||||
ln -sfn /proc/self/fd /dev/fd
|
||||
ln -sfn /proc/self/fd/0 /dev/stdin
|
||||
ln -sfn /proc/self/fd/1 /dev/stdout
|
||||
ln -sfn /proc/self/fd/2 /dev/stderr
|
||||
''';
|
||||
}
|
||||
'';
|
||||
|
||||
|
@ -62,7 +74,7 @@ in
|
|||
idempotent and fast.
|
||||
'';
|
||||
|
||||
type = types.attrsOf types.unspecified; # FIXME
|
||||
type = types.attrsOf scriptType;
|
||||
|
||||
apply = set: {
|
||||
script =
|
||||
|
@ -125,7 +137,7 @@ in
|
|||
idempotent and fast.
|
||||
'';
|
||||
|
||||
type = types.attrsOf types.unspecified;
|
||||
type = with types; attrsOf scriptType;
|
||||
|
||||
apply = set: {
|
||||
script = ''
|
||||
|
|
|
@ -9,7 +9,7 @@ let
|
|||
|
||||
cfg = config.boot.plymouth;
|
||||
|
||||
nixosBreezePlymouth = pkgs.breeze-plymouth.override {
|
||||
nixosBreezePlymouth = pkgs.plasma5.breeze-plymouth.override {
|
||||
logoFile = cfg.logo;
|
||||
logoName = "nixos";
|
||||
osName = "NixOS";
|
||||
|
|
|
@ -175,14 +175,10 @@ in
|
|||
|
||||
forceImportAll = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
default = false;
|
||||
description = ''
|
||||
Forcibly import all ZFS pool(s).
|
||||
|
||||
This is enabled by default for backwards compatibility purposes, but it is highly
|
||||
recommended to disable this option, as it bypasses some of the safeguards ZFS uses
|
||||
to protect your ZFS pools.
|
||||
|
||||
If you set this option to <literal>false</literal> and NixOS subsequently fails to
|
||||
import your non-root ZFS pool(s), you should manually import each pool with
|
||||
"zpool import -f <pool-name>", and then reboot. You should only need to do
|
||||
|
@ -507,6 +503,7 @@ in
|
|||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
environment.ZFS_FORCE = optionalString cfgZfs.forceImportAll "-f";
|
||||
script = (importLib {
|
||||
# See comments at importLib definition.
|
||||
zpoolCmd="${packages.zfsUser}/sbin/zpool";
|
||||
|
|
|
@ -744,16 +744,19 @@ in
|
|||
(isEnabled "VIRTIO_PCI")
|
||||
(isEnabled "VIRTIO_NET")
|
||||
(isEnabled "EXT4_FS")
|
||||
(isEnabled "NET_9P_VIRTIO")
|
||||
(isEnabled "9P_FS")
|
||||
(isYes "BLK_DEV")
|
||||
(isYes "PCI")
|
||||
(isYes "EXPERIMENTAL")
|
||||
(isYes "NETDEVICES")
|
||||
(isYes "NET_CORE")
|
||||
(isYes "INET")
|
||||
(isYes "NETWORK_FILESYSTEMS")
|
||||
] ++ optional (!cfg.graphics) [
|
||||
] ++ optionals (!cfg.graphics) [
|
||||
(isYes "SERIAL_8250_CONSOLE")
|
||||
(isYes "SERIAL_8250")
|
||||
] ++ optionals (cfg.writableStore) [
|
||||
(isEnabled "OVERLAY_FS")
|
||||
];
|
||||
|
||||
};
|
||||
|
|
|
@ -315,6 +315,7 @@ in
|
|||
samba = handleTest ./samba.nix {};
|
||||
sanoid = handleTest ./sanoid.nix {};
|
||||
sbt = handleTest ./sbt.nix {};
|
||||
sbt-extras = handleTest ./sbt-extras.nix {};
|
||||
scala = handleTest ./scala.nix {};
|
||||
sddm = handleTest ./sddm.nix {};
|
||||
service-runner = handleTest ./service-runner.nix {};
|
||||
|
@ -347,6 +348,7 @@ in
|
|||
systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {};
|
||||
systemd-boot = handleTest ./systemd-boot.nix {};
|
||||
systemd-confinement = handleTest ./systemd-confinement.nix {};
|
||||
systemd-journal = handleTest ./systemd-journal.nix {};
|
||||
systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
|
||||
systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {};
|
||||
systemd-networkd = handleTest ./systemd-networkd.nix {};
|
||||
|
|
|
@ -94,6 +94,7 @@ in
|
|||
glib-networking = callInstalledTest ./glib-networking.nix {};
|
||||
gnome-photos = callInstalledTest ./gnome-photos.nix {};
|
||||
graphene = callInstalledTest ./graphene.nix {};
|
||||
gsconnect = callInstalledTest ./gsconnect.nix {};
|
||||
ibus = callInstalledTest ./ibus.nix {};
|
||||
libgdata = callInstalledTest ./libgdata.nix {};
|
||||
glib-testing = callInstalledTest ./glib-testing.nix {};
|
||||
|
|
|
@ -5,7 +5,7 @@ makeInstalledTest {
|
|||
|
||||
testConfig = {
|
||||
services.fwupd.enable = true;
|
||||
services.fwupd.blacklistPlugins = lib.mkForce []; # don't blacklist test plugin
|
||||
services.fwupd.disabledPlugins = lib.mkForce []; # don't disable test plugin
|
||||
services.fwupd.enableTestRemote = true;
|
||||
virtualisation.memorySize = 768;
|
||||
};
|
||||
|
|
7
third_party/nixpkgs/nixos/tests/installed-tests/gsconnect.nix
vendored
Normal file
7
third_party/nixpkgs/nixos/tests/installed-tests/gsconnect.nix
vendored
Normal file
|
@ -0,0 +1,7 @@
|
|||
{ pkgs, makeInstalledTest, ... }:
|
||||
|
||||
makeInstalledTest {
|
||||
tested = pkgs.gnomeExtensions.gsconnect;
|
||||
|
||||
withX11 = true;
|
||||
}
|
2
third_party/nixpkgs/nixos/tests/loki.nix
vendored
2
third_party/nixpkgs/nixos/tests/loki.nix
vendored
|
@ -45,6 +45,8 @@ import ./make-test-python.nix ({ lib, pkgs, ... }:
|
|||
machine.wait_for_open_port(3100)
|
||||
machine.wait_for_open_port(9080)
|
||||
machine.succeed("echo 'Loki Ingestion Test' > /var/log/testlog")
|
||||
# should not have access to journal unless specified
|
||||
machine.fail("systemctl show --property=SupplementaryGroups promtail | grep -q systemd-journal")
|
||||
machine.wait_until_succeeds(
|
||||
"${pkgs.grafana-loki}/bin/logcli --addr='http://localhost:3100' query --no-labels '{job=\"varlogs\",filename=\"/var/log/testlog\"}' | grep -q 'Loki Ingestion Test'"
|
||||
)
|
||||
|
|
16
third_party/nixpkgs/nixos/tests/sbt-extras.nix
vendored
Normal file
16
third_party/nixpkgs/nixos/tests/sbt-extras.nix
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
import ./make-test-python.nix ({ pkgs, ...} : {
|
||||
name = "sbt-extras";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ nequissimus ];
|
||||
};
|
||||
|
||||
machine = { pkgs, ... }:
|
||||
{
|
||||
environment.systemPackages = [ pkgs.sbt-extras ];
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
machine.succeed("(sbt -h)")
|
||||
'';
|
||||
})
|
20
third_party/nixpkgs/nixos/tests/systemd-journal.nix
vendored
Normal file
20
third_party/nixpkgs/nixos/tests/systemd-journal.nix
vendored
Normal file
|
@ -0,0 +1,20 @@
|
|||
import ./make-test-python.nix ({ pkgs, ... }:
|
||||
|
||||
{
|
||||
name = "systemd-journal";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ lewo ];
|
||||
};
|
||||
|
||||
machine = { pkgs, lib, ... }: {
|
||||
services.journald.enableHttpGateway = true;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
machine.succeed(
|
||||
"${pkgs.curl}/bin/curl -s localhost:19531/machine | ${pkgs.jq}/bin/jq -e '.hostname == \"machine\"'"
|
||||
)
|
||||
'';
|
||||
})
|
35
third_party/nixpkgs/nixos/tests/zfs.nix
vendored
35
third_party/nixpkgs/nixos/tests/zfs.nix
vendored
|
@ -18,7 +18,7 @@ let
|
|||
maintainers = [ adisbladis ];
|
||||
};
|
||||
|
||||
machine = { pkgs, ... }: {
|
||||
machine = { pkgs, lib, ... }: {
|
||||
virtualisation.emptyDiskImages = [ 4096 ];
|
||||
networking.hostId = "deadbeef";
|
||||
boot.kernelPackages = kernelPackage;
|
||||
|
@ -26,6 +26,24 @@ let
|
|||
boot.zfs.enableUnstable = enableUnstable;
|
||||
|
||||
environment.systemPackages = [ pkgs.parted ];
|
||||
|
||||
# Setup regular fileSystems machinery to ensure forceImportAll can be
|
||||
# tested via the regular service units.
|
||||
fileSystems = lib.mkVMOverride {
|
||||
"/forcepool" = {
|
||||
device = "forcepool";
|
||||
fsType = "zfs";
|
||||
options = [ "noauto" ];
|
||||
};
|
||||
};
|
||||
|
||||
# forcepool doesn't exist at first boot, and we need to manually test
|
||||
# the import after tweaking the hostId.
|
||||
systemd.services.zfs-import-forcepool.wantedBy = lib.mkVMOverride [];
|
||||
systemd.targets.zfs.wantedBy = lib.mkVMOverride [];
|
||||
boot.zfs.forceImportAll = true;
|
||||
# /dev/disk/by-id doesn't get populated in the NixOS test framework
|
||||
boot.zfs.devNodes = "/dev/disk/by-uuid";
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
|
@ -57,6 +75,21 @@ let
|
|||
"zpool destroy rpool",
|
||||
"udevadm settle",
|
||||
)
|
||||
|
||||
with subtest("boot.zfs.forceImportAll works"):
|
||||
machine.succeed(
|
||||
"rm /etc/hostid",
|
||||
"zgenhostid deadcafe",
|
||||
"zpool create forcepool /dev/vdb1 -O mountpoint=legacy",
|
||||
)
|
||||
machine.shutdown()
|
||||
machine.start()
|
||||
machine.succeed("udevadm settle")
|
||||
machine.fail("zpool import forcepool")
|
||||
machine.succeed(
|
||||
"systemctl start zfs-import-forcepool.service",
|
||||
"mount -t zfs forcepool /tmp/mnt",
|
||||
)
|
||||
'' + extraTest;
|
||||
|
||||
};
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
, gettext
|
||||
, glib
|
||||
, gtk3
|
||||
, libhandy
|
||||
, libhandy_0
|
||||
, meson
|
||||
, ninja
|
||||
, pango
|
||||
|
@ -48,7 +48,7 @@ rustPlatform.buildRustPackage rec {
|
|||
dbus
|
||||
glib
|
||||
gtk3
|
||||
libhandy
|
||||
libhandy_0
|
||||
pango
|
||||
];
|
||||
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ft2-clone";
|
||||
version = "1.37";
|
||||
version = "1.39";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "ft2-clone";
|
||||
rev = "v${version}";
|
||||
sha256 = "1lhpzd46mpr3bq13qhd0bq724db5fhc8jplfb684c2q7sc4v92nk";
|
||||
sha256 = "0vc7gni24q649b53flz7rlgnc5xl2dqdklgwc2brj380a5s7g6m7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
, python3
|
||||
, pkgconfig
|
||||
, glib
|
||||
, libhandy
|
||||
, libhandy_0
|
||||
, gtk3
|
||||
, dbus
|
||||
, openssl
|
||||
|
@ -48,7 +48,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildInputs = [
|
||||
glib
|
||||
gtk3
|
||||
libhandy
|
||||
libhandy_0
|
||||
dbus
|
||||
openssl
|
||||
sqlite
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
, python3
|
||||
, gtk3
|
||||
, gst_all_1
|
||||
, libhandy
|
||||
, libsecret
|
||||
, libsoup
|
||||
, appstream-glib
|
||||
|
@ -24,7 +25,7 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "lollypop";
|
||||
version = "1.3.2";
|
||||
version = "1.4.5";
|
||||
|
||||
format = "other";
|
||||
doCheck = false;
|
||||
|
@ -33,7 +34,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
url = "https://gitlab.gnome.org/World/lollypop";
|
||||
rev = "refs/tags/${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "14854j1dhq67s1vzs0lqy345vbl6f5w8nb36n4i33fmpva2flsk3";
|
||||
sha256 = "1i5qcpp3fpkda08g6nkiiff8lsjmv5xsvpa0512kigq5z0lsagrx";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -57,6 +58,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
gst-plugins-ugly
|
||||
gstreamer
|
||||
gtk3
|
||||
libhandy
|
||||
libsoup
|
||||
pango
|
||||
totem-pl-parser
|
||||
|
|
|
@ -17,13 +17,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "musikcube";
|
||||
version = "0.93.1";
|
||||
version = "0.94.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "clangen";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "05qsxyr7x8l0vlmn4yjg4gglxvcw9raf6vfzvblsl2ngsdsrnizy";
|
||||
sha256 = "0hifyawsr38vsx12aqw38nms4kzbaghihib1r80x56f1jjsdhww0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -18,8 +18,12 @@
|
|||
let
|
||||
pulseSources = runCommand "pulseaudio-sources" {} ''
|
||||
mkdir $out
|
||||
tar -xf ${pulseaudio.src}
|
||||
mv pulseaudio*/* $out/
|
||||
if [ -d ${pulseaudio.src} ]; then
|
||||
ln -s ${pulseaudio.src}/* $out/
|
||||
else
|
||||
tar -xf ${pulseaudio.src}
|
||||
mv pulseaudio*/* $out/
|
||||
fi
|
||||
'';
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
|
@ -61,7 +65,7 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
# Pulseaudio version is detected with a -rebootstrapped suffix which build system assumptions
|
||||
substituteInPlace config.h.in --replace PulseAudio_VERSION ${pulseaudio.version}
|
||||
substituteInPlace CMakeLists.txt --replace '${"\${PulseAudio_VERSION}"}' ${pulseaudio.version}
|
||||
substituteInPlace CMakeLists.txt --replace '${"\${PULSE_DIR}"}' ${pulseaudio.pulseDir}
|
||||
|
||||
# Fraunhofer recommends to enable afterburner but upstream has it set to false by default
|
||||
substituteInPlace src/modules/bluetooth/a2dp/a2dp_aac.c \
|
||||
|
@ -72,7 +76,7 @@ in stdenv.mkDerivation rec {
|
|||
for so in $out/lib/pulse-${pulseaudio.version}/modules/*.so; do
|
||||
orig_rpath=$(patchelf --print-rpath "$so")
|
||||
patchelf \
|
||||
--set-rpath "${ldacbt}/lib:${lib.getLib ffmpeg}/lib:$out/lib/pulse-${pulseaudio.version}/modules:$orig_rpath" \
|
||||
--set-rpath "${ldacbt}/lib:${lib.getLib ffmpeg}/lib:$out/${pulseaudio.pulseDir}/modules:$orig_rpath" \
|
||||
"$so"
|
||||
done
|
||||
'';
|
||||
|
|
|
@ -8,4 +8,4 @@ index 8d20dbf..63fe7ba 100644
|
|||
module-bluetooth-policy
|
||||
- LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
|
||||
-
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/)
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/${PULSE_DIR}/modules/)
|
||||
|
|
|
@ -29,11 +29,11 @@
|
|||
# handle that.
|
||||
|
||||
mkDerivation rec {
|
||||
name = "qmmp-1.4.1";
|
||||
name = "qmmp-1.4.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
|
||||
sha256 = "0p18r2ri75vbyjzfa7bcl1dm372m6jvn9zj2p5ia2rh1g77fbm9a";
|
||||
sha256 = "1kvzw0n90crg3dgy8834qrjv0zb3ia5cny7virax9ax73y653jfa";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "qtractor";
|
||||
version = "0.9.15";
|
||||
version = "0.9.18";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
||||
sha256 = "0k7a6llwrzs07flr9mvzvay9ygc2x64syg8npyabsw5a4d85fwsx";
|
||||
sha256 = "121vmygdzp37p6f93f8dbbg2m2r55j7amyiapzkqgypgn4vfdbwr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
, glib
|
||||
, gst_all_1
|
||||
, gtk3
|
||||
, libhandy
|
||||
, libhandy_0
|
||||
, meson
|
||||
, ninja
|
||||
, openssl
|
||||
|
@ -53,7 +53,7 @@ rustPlatform.buildRustPackage rec {
|
|||
gdk-pixbuf
|
||||
glib
|
||||
gtk3
|
||||
libhandy
|
||||
libhandy_0
|
||||
openssl
|
||||
sqlite
|
||||
] ++ (with gst_all_1; [
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
, coreutils
|
||||
, libsoup
|
||||
, libsecret
|
||||
, libhandy
|
||||
, libhandy_0
|
||||
, wrapGAppsHook
|
||||
, libgpgerror
|
||||
, json-glib
|
||||
|
@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
|
|||
glib
|
||||
gtk3
|
||||
libsecret
|
||||
libhandy
|
||||
libhandy_0
|
||||
libgpgerror
|
||||
json-glib
|
||||
];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ergo";
|
||||
version = "3.3.5";
|
||||
version = "3.3.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
|
||||
sha256 = "0bxzpwwb42bppqli3zggx3lah7g6kwmy6k6k6dinypj6x0bafqcg";
|
||||
sha256 = "1zi559ixjxxsrpvvjbxa1d0g96px3h9amjvy149sfhp7b8w5hhk3";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
{ fetchFromGitHub, stdenv, db, boost, gmp, mpfr, qt4, qmake4Hook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.8.6-2";
|
||||
pname = "freicoin";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "freicoin";
|
||||
repo = "freicoin";
|
||||
rev = "v${version}";
|
||||
sha256 = "1v1qwv4x5agjba82s1vknmdgq67y26wzdwbmwwqavv7f7y3y860h";
|
||||
};
|
||||
|
||||
enableParallelBuilding = false;
|
||||
|
||||
qmakeFlags = ["USE_UPNP=-"];
|
||||
|
||||
# I think that openssl and zlib are required, but come through other
|
||||
# packages
|
||||
|
||||
preBuild = "unset AR";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp freicoin-qt $out/bin
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ qmake4Hook ];
|
||||
buildInputs = [ db boost gmp mpfr qt4 ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Peer-to-peer currency with demurrage fee";
|
||||
homepage = "http://freicoi.in/";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.viric ];
|
||||
platforms = platforms.linux;
|
||||
|
||||
# upstream doesn't support newer openssl versions, use 1.0.1 for testing
|
||||
broken = true;
|
||||
};
|
||||
}
|
|
@ -5,23 +5,23 @@
|
|||
, llvmPackages
|
||||
, openssl
|
||||
, pkg-config
|
||||
, stdenv
|
||||
, systemd
|
||||
, darwin
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "openethereum";
|
||||
version = "3.0.1";
|
||||
version = "3.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openethereum";
|
||||
repo = "openethereum";
|
||||
rev = "v${version}";
|
||||
sha256 = "08dkcrga1x18csh6pw6f54x5xwijppyjhg46cf4p452xc1l3a6ir";
|
||||
sha256 = "cs84Zz0nhagGDu5sDFTaFZF3SPEgJU8F4vGX7KLihOM=";
|
||||
};
|
||||
|
||||
cargoSha256 = "1xliragihwjfc5qmfm0ng519bw8a28m1w1yqcl9mpk8zywiybaah";
|
||||
|
||||
cargoPatches = [ ./lock.patch ];
|
||||
cargoSha256 = "6suNkHw1BbISb0MkYkUaD+mpUal+kn3y1SFVqzJFqJc=";
|
||||
|
||||
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
|
||||
nativeBuildInputs = [
|
||||
|
@ -31,7 +31,9 @@ rustPlatform.buildRustPackage rec {
|
|||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [ openssl systemd ];
|
||||
buildInputs = [ openssl ]
|
||||
++ stdenv.lib.optionals stdenv.isLinux [ systemd ]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.Security ];
|
||||
|
||||
cargoBuildFlags = [ "--features final" ];
|
||||
|
||||
|
@ -43,6 +45,6 @@ rustPlatform.buildRustPackage rec {
|
|||
homepage = "http://parity.io/ethereum";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ akru xrelkd ];
|
||||
platforms = platforms.linux;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
--- /nix/store/hv764a65zmfzw5scjhz5839agv10da6x-source/Cargo.lock 1969-12-31 16:00:01.000000000 -0800
|
||||
+++ ./Cargo.lock 2020-07-31 21:30:31.146750066 -0700
|
||||
@@ -3113,7 +3113,7 @@
|
||||
|
||||
[[package]]
|
||||
name = "openethereum"
|
||||
-version = "3.0.0"
|
||||
+version = "3.0.1"
|
||||
dependencies = [
|
||||
"ansi_term",
|
||||
"atty",
|
||||
@@ -3562,7 +3562,7 @@
|
||||
|
||||
[[package]]
|
||||
name = "parity-version"
|
||||
-version = "3.0.0"
|
||||
+version = "3.0.1"
|
||||
dependencies = [
|
||||
"parity-bytes",
|
||||
"rlp",
|
|
@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
|||
Zero Knowledge cryptography proofs for industry-leading transaction anonymity.
|
||||
'';
|
||||
license = licenses.mit;
|
||||
homepage = "https://www.dash.org";
|
||||
homepage = "https://pivx.org";
|
||||
maintainers = with maintainers; [ wucke13 ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "polkadot";
|
||||
version = "0.8.26";
|
||||
version = "0.8.26-1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "paritytech";
|
||||
repo = "polkadot";
|
||||
rev = "v${version}";
|
||||
sha256 = "1bvma6k3gsjqh8w76k4kf52sjg8wxn1b7a409kmnmmvmd9j6z5ia";
|
||||
sha256 = "17ji1gjrx3gzw4msaz9kgvm132y14wgh8z183l3mfw1cj44a6kqk";
|
||||
};
|
||||
|
||||
cargoSha256 = "0pacmmvvjgzmaxgg47qbfhqwl02jxj3i6vnmkjbj9npzqfmqf72d";
|
||||
cargoSha256 = "07zwlwx02xw1y20br2c4grwv7bprhynqy7gav4qh3vw117ijpiqk";
|
||||
|
||||
nativeBuildInputs = [ clang ];
|
||||
|
||||
|
|
29
third_party/nixpkgs/pkgs/applications/blockchains/turbo-geth.nix
vendored
Normal file
29
third_party/nixpkgs/pkgs/applications/blockchains/turbo-geth.nix
vendored
Normal file
|
@ -0,0 +1,29 @@
|
|||
{ stdenv, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "turbo-geth";
|
||||
version = "2020.11.01";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ledgerwatch";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0hm8kqd0w231mlclsmsghf15r8pbrs5g064mkpx59qpqzk37lgss";
|
||||
};
|
||||
|
||||
vendorSha256 = "0b7ldrnwkz3r1d4fw95hvvpi3bz56d9v8p2mjzdvlpk5zhl2a37p";
|
||||
runVend = true;
|
||||
|
||||
subPackages = [
|
||||
"cmd/tg"
|
||||
"cmd/restapi"
|
||||
"cmd/rpcdaemon"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://github.com/ledgerwatch/turbo-geth/";
|
||||
description = "Ethereum node and geth fork focused on scalability and modularity";
|
||||
license = with licenses; [ lgpl3 gpl3 ];
|
||||
maintainers = with maintainers; [ xwvvvvwx ];
|
||||
};
|
||||
}
|
|
@ -9,9 +9,9 @@ let
|
|||
inherit buildFHSUserEnv;
|
||||
};
|
||||
stableVersion = {
|
||||
version = "4.1.0.19"; # "Android Studio 4.1.0"
|
||||
build = "201.6858069";
|
||||
sha256Hash = "sha256-S5Uh/EpjE61l/z4UsPP7UEJ9Rk/hQidVVWX0bg/60gI=";
|
||||
version = "4.1.1.0"; # "Android Studio 4.1.1"
|
||||
build = "201.6953283";
|
||||
sha256Hash = "sha256-aAMhhJWcVFdvEZt8fI3tF12Eg3TzlU+kUFMNeCYN1os=";
|
||||
};
|
||||
betaVersion = {
|
||||
version = "4.1.0.18"; # "Android Studio 4.1 RC 3"
|
||||
|
|
|
@ -40,11 +40,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-builder";
|
||||
version = "3.36.1";
|
||||
version = "3.38.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "17pvmd5jypar8dkr6w56hvf7jnq4l1wih2wwgkrv7sblr7rkkar2";
|
||||
sha256 = "06wcyfrwcjyj2vcqyw0z3sy1r4qxpcdpwqq1qmpsaphpz8acycjn";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
{ stdenv, fetchurl, wrapGAppsHook, gsettings-desktop-schemas, gspell, gtksourceview4, libgee
|
||||
, tepl, amtk, gnome3, glib, pkgconfig, intltool, itstool, libxml2 }:
|
||||
let
|
||||
version = "3.36.0";
|
||||
version = "3.38.0";
|
||||
pname = "gnome-latex";
|
||||
in stdenv.mkDerivation {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1869kr1zhcp04mzbi67lwgk497w840dbbc7427i9yh9b9s7j6mqn";
|
||||
sha256 = "0xqd49pgi82dygqnxj08i1v22b0vwwhx3zvdinhrx4jny339yam8";
|
||||
};
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ source ? "default", callPackage, stdenv, ncurses, pkgconfig, gettext
|
||||
, writeText, config, glib, gtk2-x11, gtk3-x11, lua, python, perl, tcl, ruby
|
||||
, writeText, config, glib, gtk2-x11, gtk3-x11, lua, python3, perl, tcl, ruby
|
||||
, libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
|
||||
, libICE
|
||||
, vimPlugins
|
||||
|
@ -62,8 +62,6 @@ let
|
|||
|
||||
common = callPackage ./common.nix {};
|
||||
|
||||
isPython3 = python.isPy3 or false;
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
|
||||
pname = "vim_configurable";
|
||||
|
@ -106,9 +104,10 @@ in stdenv.mkDerivation rec {
|
|||
"--with-luajit"
|
||||
]
|
||||
++ stdenv.lib.optionals pythonSupport [
|
||||
"--enable-python${if isPython3 then "3" else ""}interp=yes"
|
||||
"--with-python${if isPython3 then "3" else ""}-config-dir=${python}/lib"
|
||||
"--disable-python${if (!isPython3) then "3" else ""}interp"
|
||||
"--enable-python3interp=yes"
|
||||
"--with-python3-config-dir=${python3}/lib"
|
||||
# Disables Python 2
|
||||
"--disable-pythoninterp"
|
||||
]
|
||||
++ stdenv.lib.optional nlsSupport "--enable-nls"
|
||||
++ stdenv.lib.optional perlSupport "--enable-perlinterp"
|
||||
|
@ -134,7 +133,7 @@ in stdenv.mkDerivation rec {
|
|||
++ stdenv.lib.optional (guiSupport == "gtk3") gtk3-x11
|
||||
++ stdenv.lib.optionals darwinSupport [ CoreServices CoreData Cocoa Foundation libobjc ]
|
||||
++ stdenv.lib.optional luaSupport lua
|
||||
++ stdenv.lib.optional pythonSupport python
|
||||
++ stdenv.lib.optional pythonSupport python3
|
||||
++ stdenv.lib.optional tclSupport tcl
|
||||
++ stdenv.lib.optional rubySupport ruby;
|
||||
|
||||
|
@ -163,7 +162,7 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
ln -sfn '${nixosRuntimepath}' "$out"/share/vim/vimrc
|
||||
'' + stdenv.lib.optionalString wrapPythonDrv ''
|
||||
wrapProgram "$out/bin/vim" --prefix PATH : "${python}/bin"
|
||||
wrapProgram "$out/bin/vim" --prefix PATH : "${python3}/bin"
|
||||
'' + stdenv.lib.optionalString (guiSupport == "gtk3") ''
|
||||
|
||||
rewrap () {
|
||||
|
|
|
@ -163,8 +163,10 @@ in stdenv.mkDerivation rec {
|
|||
# The declarations for `gimp-with-plugins` wrapper,
|
||||
# used for determining plug-in installation paths
|
||||
majorVersion = "${lib.versions.major version}.0";
|
||||
targetPluginDir = "lib/gimp/${majorVersion}/plug-ins";
|
||||
targetScriptDir = "share/gimp/${majorVersion}/scripts";
|
||||
targetLibDir = "lib/gimp/${majorVersion}";
|
||||
targetDataDir = "share/gimp/${majorVersion}";
|
||||
targetPluginDir = "${targetLibDir}/plug-ins";
|
||||
targetScriptDir = "${targetDataDir}/scripts";
|
||||
|
||||
# probably its a good idea to use the same gtk in plugins ?
|
||||
gtk = gtk2;
|
||||
|
|
|
@ -1,33 +1,51 @@
|
|||
# install these packages into your profile. Then add
|
||||
# ~/.nix-profile/gimp-version-plugins to your plugin list you can find at
|
||||
# preferences -> Folders -> Plug-ins
|
||||
# same applies for the scripts
|
||||
# Use `gimp-with-plugins` package for GIMP with all plug-ins.
|
||||
# If you just want a subset of plug-ins, you can specify them explicitly:
|
||||
# `gimp-with-plugins.override { plugins = with gimpPlugins; [ gap ]; }`.
|
||||
|
||||
{ config, lib, pkgs }:
|
||||
|
||||
{ config, pkgs, gimp }:
|
||||
let
|
||||
inherit (pkgs) stdenv fetchurl pkgconfig intltool glib fetchFromGitHub;
|
||||
inherit (gimp) targetPluginDir targetScriptDir;
|
||||
inherit (pkgs) stdenv fetchurl pkg-config intltool glib fetchFromGitHub;
|
||||
in
|
||||
|
||||
pluginDerivation = a: let
|
||||
name = a.name or "${a.pname}-${a.version}";
|
||||
lib.makeScope pkgs.newScope (self:
|
||||
|
||||
let
|
||||
# Use GIMP from the scope.
|
||||
inherit (self) gimp;
|
||||
|
||||
pluginDerivation = attrs: let
|
||||
name = attrs.name or "${attrs.pname}-${attrs.version}";
|
||||
in stdenv.mkDerivation ({
|
||||
prePhases = "extraLib";
|
||||
extraLib = ''
|
||||
installScripts(){
|
||||
mkdir -p $out/${targetScriptDir}/${name};
|
||||
for p in "$@"; do cp "$p" -r $out/${targetScriptDir}/${name}; done
|
||||
mkdir -p $out/${gimp.targetScriptDir}/${name};
|
||||
for p in "$@"; do cp "$p" -r $out/${gimp.targetScriptDir}/${name}; done
|
||||
}
|
||||
installPlugins(){
|
||||
mkdir -p $out/${targetPluginDir}/${name};
|
||||
for p in "$@"; do cp "$p" -r $out/${targetPluginDir}/${name}; done
|
||||
mkdir -p $out/${gimp.targetPluginDir}/${name};
|
||||
for p in "$@"; do cp "$p" -r $out/${gimp.targetPluginDir}/${name}; done
|
||||
}
|
||||
'';
|
||||
|
||||
# Override installation paths.
|
||||
PKG_CONFIG_GIMP_2_0_GIMPLIBDIR = "${placeholder "out"}/${gimp.targetLibDir}";
|
||||
PKG_CONFIG_GIMP_2_0_GIMPDATADIR = "${placeholder "out"}/${gimp.targetDataDir}";
|
||||
}
|
||||
// a
|
||||
// attrs
|
||||
// {
|
||||
name = "gimp-plugin-${name}";
|
||||
buildInputs = [ gimp gimp.gtk glib ] ++ (a.buildInputs or []);
|
||||
nativeBuildInputs = [ pkgconfig intltool ] ++ (a.nativeBuildInputs or []);
|
||||
buildInputs = [
|
||||
gimp
|
||||
gimp.gtk
|
||||
glib
|
||||
] ++ (attrs.buildInputs or []);
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
intltool
|
||||
] ++ (attrs.nativeBuildInputs or []);
|
||||
}
|
||||
);
|
||||
|
||||
|
@ -35,10 +53,11 @@ let
|
|||
phases = [ "extraLib" "installPhase" ];
|
||||
installPhase = "installScripts ${src}";
|
||||
} // attrs);
|
||||
|
||||
in
|
||||
{
|
||||
# Allow overriding GIMP package in the scope.
|
||||
inherit (pkgs) gimp;
|
||||
|
||||
stdenv.lib.makeScope pkgs.newScope (self: with self; {
|
||||
gap = pluginDerivation {
|
||||
/* menu:
|
||||
Video
|
||||
|
@ -49,10 +68,6 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
|
|||
sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql";
|
||||
};
|
||||
NIX_LDFLAGS = "-lm";
|
||||
patchPhase = ''
|
||||
sed -e 's,^\(GIMP_PLUGIN_DIR=\).*,\1'"$out/${gimp.name}-plugins", \
|
||||
-e 's,^\(GIMP_DATA_DIR=\).*,\1'"$out/share/${gimp.name}", -i configure
|
||||
'';
|
||||
hardeningDisable = [ "format" ];
|
||||
meta = with stdenv.lib; {
|
||||
description = "The GIMP Animation Package";
|
||||
|
@ -99,7 +114,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
|
|||
version = "2.0.3";
|
||||
buildInputs = with pkgs; [ fftw ];
|
||||
nativeBuildInputs = with pkgs; [ autoreconfHook ];
|
||||
makeFlags = [ "GIMP_LIBDIR=${placeholder "out"}/lib/gimp/2.0" ];
|
||||
makeFlags = [ "GIMP_LIBDIR=${placeholder "out"}/${gimp.targetLibDir}" ];
|
||||
src = fetchFromGitHub {
|
||||
owner = "bootchk";
|
||||
repo = "resynthesizer";
|
||||
|
@ -127,24 +142,25 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
|
|||
name = "wavelet-sharpen-0.1.2";
|
||||
NIX_LDFLAGS = "-lm";
|
||||
src = fetchurl {
|
||||
url = "http://registry.gimp.org/files/wavelet-sharpen-0.1.2.tar.gz";
|
||||
url = "https://github.com/pixlsus/registry.gimp.org_static/raw/master/registry.gimp.org/files/wavelet-sharpen-0.1.2.tar.gz";
|
||||
sha256 = "0vql1k67i21g5ivaa1jh56rg427m0icrkpryrhg75nscpirfxxqw";
|
||||
};
|
||||
installPhase = "installPlugins src/wavelet-sharpen"; # TODO translations are not copied .. How to do this on nix?
|
||||
};
|
||||
|
||||
lqrPlugin = pluginDerivation {
|
||||
lqrPlugin = pluginDerivation rec {
|
||||
/* menu:
|
||||
Layer/Liquid Rescale
|
||||
*/
|
||||
name = "lqr-plugin-0.6.1";
|
||||
pname = "lqr-plugin";
|
||||
version = "0.7.2";
|
||||
buildInputs = with pkgs; [ liblqr1 ];
|
||||
src = fetchurl {
|
||||
url = "http://registry.gimp.org/files/gimp-lqr-plugin-0.6.1.tar.bz2";
|
||||
sha256 = "00hklkpcimcbpjly4rjhfipaw096cpy768g9wixglwrsyqhil7l9";
|
||||
src = fetchFromGitHub {
|
||||
owner = "carlobaldassi";
|
||||
repo = "gimp-lqr-plugin";
|
||||
rev = "v${version}";
|
||||
sha256 = "81ajdZ2zQi/THxnBlSeT36tVTEzrS1YqLGpHMhFTKAo=";
|
||||
};
|
||||
#postInstall = ''mkdir -p $out/nix-support; echo "${liblqr1}" > "$out/nix-support/propagated-user-env-packages"'';
|
||||
installPhase = "installPlugins src/gimp-lqr-plugin";
|
||||
};
|
||||
|
||||
gmic = pkgs.gmic-qt.override {
|
||||
|
@ -196,37 +212,8 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
|
|||
lightning = scriptDerivation {
|
||||
name = "Lightning";
|
||||
src = fetchurl {
|
||||
url = "http://registry.gimp.org/files/Lightning.scm";
|
||||
url = "https://github.com/pixlsus/registry.gimp.org_static/raw/master/registry.gimp.org/files/Lightning.scm";
|
||||
sha256 = "c14a8f4f709695ede3f77348728a25b3f3ded420da60f3f8de3944b7eae98a49";
|
||||
};
|
||||
};
|
||||
|
||||
/* space in name trouble ?
|
||||
|
||||
rainbowPlasma = scriptDerivation {
|
||||
# http://registry.gimp.org/node/164
|
||||
name = "rainbow-plasma";
|
||||
src = fetchurl {
|
||||
url = "http://registry.gimp.org/files/Rainbow Plasma.scm";
|
||||
sha256 = "34308d4c9441f9e7bafa118af7ec9540f10ea0df75e812e2f3aa3fd7b5344c23";
|
||||
name = "Rainbow-Plasma.scm"; # nix doesn't like spaces, does it?
|
||||
};
|
||||
};
|
||||
*/
|
||||
|
||||
/* doesn't seem to be working :-(
|
||||
lightningGate = scriptDerivation {
|
||||
# http://registry.gimp.org/node/153
|
||||
name = "lightning-gate";
|
||||
src = fetchurl {
|
||||
url = "http://registry.gimp.org/files/LightningGate.scm";
|
||||
sha256 = "181w1zi9a99kn2mfxjp43wkwcgw5vbb6iqjas7a9mhm8p04csys2";
|
||||
};
|
||||
};
|
||||
*/
|
||||
|
||||
} // stdenv.lib.optionalAttrs (config.allowAliases or true) {
|
||||
|
||||
resynthesizer2 = resynthesizer;
|
||||
|
||||
})
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
let
|
||||
allPlugins = lib.filter (pkg: lib.isDerivation pkg && !pkg.meta.broken or false) (lib.attrValues gimpPlugins);
|
||||
selectedPlugins = if plugins == null then allPlugins else plugins;
|
||||
selectedPlugins = lib.filter (pkg: pkg != gimpPlugins.gimp) (if plugins == null then allPlugins else plugins);
|
||||
extraArgs = map (x: x.wrapArgs or "") selectedPlugins;
|
||||
versionBranch = stdenv.lib.versions.majorMinor gimp.version;
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{ stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, at-spi2-core
|
||||
, babl
|
||||
, dbus
|
||||
|
@ -35,17 +36,32 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-photos";
|
||||
version = "3.34.2";
|
||||
version = "3.38.0";
|
||||
|
||||
outputs = [ "out" "installedTests" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "06ml5sf8xhpan410msqz085hmfc7082d368pb82yq646y9pcfn9w";
|
||||
sha256 = "1i64w69kk3sdf9vn7npnwrhy8qjwn0vizq200x3pgmbrfm3kjzv6";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./installed-tests-path.patch
|
||||
|
||||
# Port to Tracker 3
|
||||
# https://gitlab.gnome.org/GNOME/gnome-photos/-/merge_requests/135
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.gnome.org/GNOME/gnome-photos/commit/f39a85bb1a82093f4ba615494ff7e95609674fc2.patch";
|
||||
sha256 = "M5r5WuB1JpUBVN3KxNvpMiPWj0pIpT+ImQMOiGtUgT4=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.gnome.org/GNOME/gnome-photos/commit/3d847ff80d429cadf0bc59aa50caa37bf27c0201.patch";
|
||||
sha256 = "zGjSL1qpWVJ/5Ifgh2CbhFSBR/WDAra8F+YUOemyxyU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.gnome.org/GNOME/gnome-photos/commit/2eb923726147b05c936dee64b205d833525db1df.patch";
|
||||
sha256 = "vCA6NXHzmNf2GoLqzWwIyziC6puJgJ0QTLeKWsAEFAE=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -24,10 +24,10 @@ stdenv.mkDerivation rec {
|
|||
buildInputs =
|
||||
[ bzip2 freetype ghostscript graphviz libjpeg libpng libtiff libX11 libxml2
|
||||
zlib libtool libwebp
|
||||
]
|
||||
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ xz ];
|
||||
nativeBuildInputs = [ xz ]
|
||||
++ stdenv.lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
|
||||
|
||||
postInstall = ''
|
||||
sed -i 's/-ltiff.*'\'/\'/ $out/bin/*
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lightburn";
|
||||
version = "0.9.16";
|
||||
version = "0.9.18";
|
||||
|
||||
nativeBuildInputs = [
|
||||
p7zip
|
||||
|
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/LightBurnSoftware/deployment/releases/download/${version}/LightBurn-Linux64-v${version}.7z";
|
||||
sha256 = "0xmpglfzff3jpxbr304czsa24fbp497b69yd8kjkjdp2cd0l70qc";
|
||||
sha256 = "0inl6zmc1726gmj85jbvq3ra4zphd2ikhrnqphgy2b0c72yh4pf7";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "pdfcpu";
|
||||
version = "0.3.6";
|
||||
version = "0.3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pdfcpu";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0cbbbf93gxx768fs6pldy25xk46k7mc8k94r3f7cd83f1qd3s5zn";
|
||||
sha256 = "13b1ncpx189ca0h70j5cdp0jwlj95kasysryz1l6g13cwn9n6mii";
|
||||
};
|
||||
|
||||
vendorSha256 = "1i0w4284icbl40yrjny9qd5iqrq18x63lrs7p1gz58nybc606azx";
|
||||
vendorSha256 = "11w9i1829hk1qb9w24dyxv1bi49358a274g60x11fp5x5cw7bqa7";
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "qview";
|
||||
version = "3.0";
|
||||
version = "4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jurplel";
|
||||
repo = "qView";
|
||||
rev = version;
|
||||
sha256 = "15a91bs3wcqhgf76wzigbn10hayg628j84pq4j2vaxar94ak0vk7";
|
||||
sha256 = "15n9cq7w3ckinnx38hvncxrbkv4qm4k51sal41q4y0pkvhmafhnr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake ];
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{ buildGoModule, fetchFromGitHub, installShellFiles, stdenv }:
|
||||
|
||||
let
|
||||
humioCtlVersion = "0.27.0";
|
||||
sha256 = "1h65g10dxcaw4wk0gyyyqj9f94xlphj30lp9w6rsfrk4pi3irzr4";
|
||||
humioCtlVersion = "0.28.1";
|
||||
sha256 = "0vy07nzafqhc14i179sfrzb795yh4pcyjj3py9fwq0nwnmxndby4";
|
||||
vendorSha256 = "0anvah2rpqvxgmdrdj73k3vbf8073nmsl3aykgvb1nraf3gz3bpk";
|
||||
in buildGoModule {
|
||||
name = "humioctl-${humioCtlVersion}";
|
||||
|
|
|
@ -3,13 +3,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "cheat";
|
||||
version = "4.1.0";
|
||||
version = "4.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cheat";
|
||||
repo = "cheat";
|
||||
rev = version;
|
||||
sha256 = "0x6msbbqkwxs6msqacpqw4wlw7c9ilf8n6jqmx297ij6isswgksh";
|
||||
sha256 = "0mraraby0s213ay2ahqsdvnyg76awbqllrkkx17mrx9z3ykba62d";
|
||||
};
|
||||
|
||||
subPackages = [ "cmd/cheat" ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "dstask";
|
||||
version = "0.23";
|
||||
version = "0.23.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "naggie";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "15hr0ivwvm2lzpi8l5y5a3hya3i7r85pxna961m24gd4f8gs4cjl";
|
||||
sha256 = "0rfz8jim0xqcwdb5n28942v9r3hbvhjrwdgzvbwc9f9psqg2s8d2";
|
||||
};
|
||||
|
||||
# Set vendorSha256 to null because dstask vendors its dependencies (meaning
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "4.0.3";
|
||||
version = "4.0.4";
|
||||
|
||||
# electrum is not compatible with dnspython 2.0.0 yet
|
||||
# use the latest 1.x release instead
|
||||
|
@ -43,7 +43,7 @@ let
|
|||
owner = "spesmilo";
|
||||
repo = "electrum";
|
||||
rev = version;
|
||||
sha256 = "1r40i0v7nm35m3pzbd0l5z4qphl13s31l9v5njmyvpfjirdmhjbv";
|
||||
sha256 = "0bzvyfqnd0r0l8syf95hr3nsh8rmmmcs74bvc7v04v0nm5m0fmf1";
|
||||
|
||||
extraPostFetch = ''
|
||||
mv $out ./all
|
||||
|
@ -58,7 +58,7 @@ py.pkgs.buildPythonApplication {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
|
||||
sha256 = "0q891fgzxvyzjxfczynx92hvclfs8i3nr5nr9sgbvz13hsg4s6lg";
|
||||
sha256 = "03dc5jwgp18sism5v4lbqfyn2zljchng8j2yi07yf8i01ivy2mmv";
|
||||
};
|
||||
|
||||
postUnpack = ''
|
||||
|
|
|
@ -14,15 +14,16 @@
|
|||
, libdazzle
|
||||
, gnome3
|
||||
, tracker
|
||||
, libhandy
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-usage";
|
||||
version = "3.33.2";
|
||||
version = "3.38.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0w3ppfaf15il8mad64qyc9hj1rmlvzs5dyzrxhq7r50k4kyiwmk4";
|
||||
sha256 = "0mqs39yi2cqwkzlmmgzrszsva5hbdpws6zk4lbi4w2cjzl185mcl";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -43,6 +44,7 @@ stdenv.mkDerivation rec {
|
|||
libdazzle
|
||||
libgtop
|
||||
tracker
|
||||
libhandy
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchFromGitHub, gtk3, pythonPackages, intltool, gnome3,
|
||||
{ stdenv, fetchFromGitHub, gtk3, pythonPackages, intltool, gexiv2,
|
||||
pango, gobject-introspection, wrapGAppsHook, gettext,
|
||||
# Optional packages:
|
||||
enableOSM ? true, osm-gps-map,
|
||||
|
@ -9,11 +9,11 @@
|
|||
let
|
||||
inherit (pythonPackages) python buildPythonApplication;
|
||||
in buildPythonApplication rec {
|
||||
version = "5.0.1";
|
||||
version = "5.1.3";
|
||||
pname = "gramps";
|
||||
|
||||
nativeBuildInputs = [ wrapGAppsHook gettext ];
|
||||
buildInputs = [ intltool gtk3 gobject-introspection pango gnome3.gexiv2 ]
|
||||
buildInputs = [ intltool gtk3 gobject-introspection pango gexiv2 ]
|
||||
# Map support
|
||||
++ stdenv.lib.optional enableOSM osm-gps-map
|
||||
# Graphviz support
|
||||
|
@ -26,7 +26,7 @@ in buildPythonApplication rec {
|
|||
owner = "gramps-project";
|
||||
repo = "gramps";
|
||||
rev = "v${version}";
|
||||
sha256 = "1jz1fbjj6byndvir7qxzhd2ryirrd5h2kwndxpp53xdc05z1i8g7";
|
||||
sha256 = "109dwkswz2h2328xkqk2zj736d117s9pp7rz5cc1qg2vxn1lpm93";
|
||||
};
|
||||
|
||||
pythonPath = with pythonPackages; [ bsddb3 PyICU pygobject3 pycairo ];
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "hugo";
|
||||
version = "0.78.0";
|
||||
version = "0.78.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gohugoio";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0la1c6yj9dq9rqxk6m8n8l4cabgzlk0r3was8mvgd80g3x3zn55v";
|
||||
sha256 = "1rzv6az7fb1xvjxxq31rs42waqpwvks4h03lzjxv0kj8i43z116k";
|
||||
};
|
||||
|
||||
vendorSha256 = "09fvvs85rvvh0z4px2bj5908xf1mrcslkzsz09p0gy5i3zaqfnp9";
|
||||
vendorSha256 = "06cw3qj57nhrxrbbxcyrqn53j6g11rd2q7bxw89fdn901mc26s03";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
, cmake, pkgconfig, zlib, libpng, makeWrapper
|
||||
, enableGSL ? true, gsl
|
||||
, enableGhostScript ? true, ghostscript
|
||||
, enableMuPDF ? true, mupdf
|
||||
, enableMuPDF ? true, mupdf_1_17
|
||||
, enableDJVU ? true, djvulibre
|
||||
, enableGOCR ? false, gocr # Disabled by default due to crashes
|
||||
, enableTesseract ? true, leptonica, tesseract4
|
||||
|
@ -89,7 +89,7 @@ in stdenv.mkDerivation rec {
|
|||
cp ${k2pdfopt_src}/mupdf_mod/pdf-* ./source/pdf/
|
||||
'';
|
||||
};
|
||||
mupdf_modded = mupdf.overrideAttrs ({ patches ? [], ... }: {
|
||||
mupdf_modded = mupdf_1_17.overrideAttrs ({ patches ? [], ... }: {
|
||||
patches = patches ++ [ mupdf_patch ];
|
||||
# This function is missing in font.c, see font-win32.c
|
||||
postPatch = ''
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ lib, mkDerivation, fetchFromGitHub, fetchpatch
|
||||
, python, ruby, qtbase, qtmultimedia, qttools, qtxmlpatterns
|
||||
, which, perl, makeWrapper, fixDarwinDylibNames
|
||||
, which, perl, makeWrapper
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
{ stdenv, lib, substituteAll, makeWrapper, fetchgit, ocaml, mupdf, libX11,
|
||||
libGLU, libGL, freetype, xclip, inotify-tools, procps }:
|
||||
{ stdenv, lib, substituteAll, makeWrapper, fetchgit, ocaml, mupdf, libX11, jbig2dec, openjpeg, libjpeg , lcms2, harfbuzz,
|
||||
libGLU, libGL, gumbo, freetype, zlib, xclip, inotify-tools, procps }:
|
||||
|
||||
assert lib.versionAtLeast (lib.getVersion ocaml) "4.07";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "llpp";
|
||||
version = "32";
|
||||
version = "33";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://repo.or.cz/llpp.git";
|
||||
rev = "v${version}";
|
||||
sha256 = "1h1zysm5cz8laq8li49djl6929cnrjlflag9hw0c1dcr4zaxk32y";
|
||||
sha256 = "0shqzhaflm2yhkx6c0csq9lxp1s1r7lh5kgpx9q5k06xya2a7yvs";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
|
||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
});
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ ocaml mupdf libX11 libGLU libGL freetype ];
|
||||
buildInputs = [ ocaml mupdf libX11 libGLU libGL freetype zlib gumbo jbig2dec openjpeg libjpeg lcms2 harfbuzz ];
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
diff --git a/build.bash b/build.bash
|
||||
index 7c278b6..41494c5 100755
|
||||
with manual adjustments
|
||||
--- a/build.bash
|
||||
+++ b/build.bash
|
||||
@@ -29,7 +29,6 @@ srcd="$(dirname $0)"
|
||||
@@ -30,7 +30,6 @@ srcd="$(dirname $0)"
|
||||
mudir=$outd/mupdf
|
||||
muinc="-I $mudir/include -I $mudir/thirdparty/freetype/include"
|
||||
|
||||
|
@ -10,25 +11,25 @@ index 7c278b6..41494c5 100755
|
|||
|
||||
mkdir -p $outd/{$wsid,lablGL}
|
||||
:>$outd/ordered
|
||||
@@ -39,12 +38,6 @@ isfresh() { test -r "$1.past" && . "$1.past" && test "$k" = "$2"; }
|
||||
mbt=${mbt:-native}
|
||||
mulibs="$mudir/build/$mbt/libmupdf.a" # $mudir/build/$mbt/libmupdf-third.a
|
||||
@@ -41,12 +40,6 @@ isfresh() { test -r "$1.past" && . "$1.past" && test "$k" = "$2"; }
|
||||
mulibst="$mudir/build/$mbt/libs"
|
||||
mulibs="$mudir/build/$mbt/libmupdf.a $mudir/build/$mbt/libmupdf-third.a"
|
||||
|
||||
-keycmd="(cd $mudir && make -q build=$mbt libs && echo); digest $mulibs"
|
||||
-isfresh "$mulibs" "$(eval $keycmd)" || (
|
||||
-isfresh "$mulibst" "$(eval $keycmd)" || (
|
||||
- make -C "$mudir" build=$mbt -j $mjobs libs
|
||||
- eval $keycmd >$mudir/build/$mbt/libmupdf.a.past
|
||||
- eval $keycmd >${mulibst}.past
|
||||
-) && vecho "fresh mupdf"
|
||||
-
|
||||
oincs() {
|
||||
local i=
|
||||
local incs1=
|
||||
@@ -89,34 +82,6 @@ mflags() {
|
||||
@@ -100,35 +93,6 @@ mflags() {
|
||||
}
|
||||
|
||||
overs="$(ocamlc -vnum 2>/dev/null)" || overs=""
|
||||
-test "$overs" = "4.10.0" || {
|
||||
- url=https://caml.inria.fr/pub/distrib/ocaml-4.10/ocaml-4.10.0.tar.xz
|
||||
-test "$overs" = "4.11.1" || {
|
||||
- url=https://caml.inria.fr/pub/distrib/ocaml-4.11/ocaml-4.11.1.tar.xz
|
||||
- txz=$outd/$(basename $url)
|
||||
- keycmd="printf $url; digest $txz;"
|
||||
- isfresh $txz "$(eval $keycmd)" || {
|
||||
|
@ -48,7 +49,8 @@ index 7c278b6..41494c5 100755
|
|||
- tar xf $txz -C $outd
|
||||
- bn=$(basename $url)
|
||||
- cd $outd/${bn%.tar.xz}
|
||||
- ./configure --disable-ocamldoc --enable-debugger=no --prefix=$absprefix
|
||||
- ./configure --disable-ocamldoc --disable-ocamltest \
|
||||
- --enable-debugger=no --prefix=$absprefix
|
||||
- make -j $mjobs world
|
||||
- make install
|
||||
- eval $keycmd >$absprefix/bin/ocamlc.past
|
||||
|
@ -58,7 +60,7 @@ index 7c278b6..41494c5 100755
|
|||
|
||||
ccomp=${LLPP_CC-$(ocamlc -config | grep "^c_compiler: " | \
|
||||
{ read _ c; echo $c; })}
|
||||
@@ -230,7 +195,7 @@ bobjc() {
|
||||
@@ -243,7 +208,7 @@ bobjc() {
|
||||
} && vecho "fresh $o"
|
||||
}
|
||||
|
||||
|
@ -67,12 +69,12 @@ index 7c278b6..41494c5 100755
|
|||
|
||||
cmd="(. $srcd/genconfstr.sh >$outd/confstruct.ml)"
|
||||
keycmd="digest $srcd/genconfstr.sh $outd/confstruct.ml"
|
||||
@@ -284,7 +249,7 @@ for m in ml_gl ml_glarray ml_raw; do
|
||||
@@ -291,7 +256,7 @@ for m in ml_gl ml_glarray ml_raw; do
|
||||
done
|
||||
|
||||
libs="str.cma unix.cma"
|
||||
-clibs="-L$mudir/build/$mbt -lmupdf -lmupdf-third -lpthread"
|
||||
+clibs="-lmupdf -lfreetype -lpthread"
|
||||
+clibs="-lmupdf -lmupdf-third -lfreetype -lgumbo -ljpeg -lopenjp2 -ljbig2dec -llcms2 -lharfbuzz -lpthread -lz"
|
||||
if $darwin; then
|
||||
mcomp=$(ocamlc -config | grep bytecomp_c_co | { read _ c; echo $c; })
|
||||
clibs="$clibs -framework Cocoa -framework OpenGL"
|
||||
|
|
95
third_party/nixpkgs/pkgs/applications/misc/mupdf/1.17.nix
vendored
Normal file
95
third_party/nixpkgs/pkgs/applications/misc/mupdf/1.17.nix
vendored
Normal file
|
@ -0,0 +1,95 @@
|
|||
{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, freetype, harfbuzz, openjpeg
|
||||
, jbig2dec, libjpeg , darwin
|
||||
, enableX11 ? true, libX11, libXext, libXi, libXrandr
|
||||
, enableCurl ? true, curl, openssl
|
||||
, enableGL ? true, freeglut, libGLU
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
# OpenJPEG version is hardcoded in package source
|
||||
openJpegVersion = with stdenv;
|
||||
lib.versions.majorMinor (lib.getVersion openjpeg);
|
||||
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "1.17.0";
|
||||
pname = "mupdf";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://mupdf.com/downloads/archive/${pname}-${version}-source.tar.gz";
|
||||
sha256 = "13nl9nrcx2awz9l83mlv2psi1lmn3hdnfwxvwgwiwbxlkjl3zqq0";
|
||||
};
|
||||
|
||||
patches =
|
||||
# Use shared libraries to decrease size
|
||||
stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.14-shared_libs.patch
|
||||
++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch
|
||||
;
|
||||
|
||||
postPatch = ''
|
||||
sed -i "s/__OPENJPEG__VERSION__/${openJpegVersion}/" source/fitz/load-jpx.c
|
||||
'';
|
||||
|
||||
makeFlags = [ "prefix=$(out) USE_SYSTEM_LIBS=yes" ];
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg freeglut libGLU ]
|
||||
++ lib.optionals enableX11 [ libX11 libXext libXi libXrandr ]
|
||||
++ lib.optionals enableCurl [ curl openssl ]
|
||||
++ lib.optionals enableGL (
|
||||
if stdenv.isDarwin then
|
||||
with darwin.apple_sdk.frameworks; [ GLUT OpenGL ]
|
||||
else
|
||||
[ freeglut libGLU ])
|
||||
;
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
preConfigure = ''
|
||||
# Don't remove mujs because upstream version is incompatible
|
||||
rm -rf thirdparty/{curl,freetype,glfw,harfbuzz,jbig2dec,libjpeg,openjpeg,zlib}
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p "$out/lib/pkgconfig"
|
||||
cat >"$out/lib/pkgconfig/mupdf.pc" <<EOF
|
||||
prefix=$out
|
||||
libdir=$out/lib
|
||||
includedir=$out/include
|
||||
|
||||
Name: mupdf
|
||||
Description: Library for rendering PDF documents
|
||||
Version: ${version}
|
||||
Libs: -L$out/lib -lmupdf -lmupdf-third
|
||||
Cflags: -I$dev/include
|
||||
EOF
|
||||
|
||||
moveToOutput "bin" "$bin"
|
||||
ln -s "$bin/bin/mupdf-x11" "$bin/bin/mupdf"
|
||||
mkdir -p $bin/share/applications
|
||||
cat > $bin/share/applications/mupdf.desktop <<EOF
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Version=1.0
|
||||
Name=mupdf
|
||||
Comment=PDF viewer
|
||||
Exec=$bin/bin/mupdf-x11 %f
|
||||
Terminal=false
|
||||
MimeType=application/pdf;application/x-pdf;application/x-cbz;application/oxps;application/vnd.ms-xpsdocument;application/epub+zip
|
||||
EOF
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://mupdf.com";
|
||||
repositories.git = "git://git.ghostscript.com/mupdf.git";
|
||||
description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C";
|
||||
license = licenses.agpl3Plus;
|
||||
maintainers = with maintainers; [ vrthra fpletz ];
|
||||
platforms = platforms.unix;
|
||||
knownVulnerabilities = [
|
||||
"CVE-2020-26519: denial of service when parsing JBIG2"
|
||||
"CVE-2017-5991: NULL pointer dereference"
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, freetype, harfbuzz, openjpeg
|
||||
, jbig2dec, libjpeg , darwin
|
||||
, gumbo
|
||||
, enableX11 ? true, libX11, libXext, libXi, libXrandr
|
||||
, enableCurl ? true, curl, openssl
|
||||
, enableGL ? true, freeglut, libGLU
|
||||
|
@ -13,27 +14,43 @@ let
|
|||
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "1.17.0";
|
||||
version = "1.18.0";
|
||||
pname = "mupdf";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://mupdf.com/downloads/archive/${pname}-${version}-source.tar.gz";
|
||||
sha256 = "13nl9nrcx2awz9l83mlv2psi1lmn3hdnfwxvwgwiwbxlkjl3zqq0";
|
||||
sha256 = "0rljl44y8p8hgaqializlyrgpij1wbnrzyp0ll5kcg7w05nylq48";
|
||||
};
|
||||
|
||||
patches =
|
||||
# Use shared libraries to decrease size
|
||||
stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.14-shared_libs.patch
|
||||
++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch
|
||||
;
|
||||
stdenv.lib.optional stdenv.isDarwin ./darwin.patch ++ [
|
||||
(fetchpatch {
|
||||
name = "pdfocr.patch";
|
||||
url = "http://git.ghostscript.com/?p=mupdf.git;a=patch;h=a507b139adf37d2c742e039815601cdc2aa00a84";
|
||||
sha256 = "1fx6pdgwrbk3bqsx53764d61llfj9s5q8lxqkna7mjnp7mg4krj3";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "pdf-layer.patch";
|
||||
url = "http://git.ghostscript.com/?p=mupdf.git;a=patch;h=b82e9b6d6b46877e5c3763cc3bc641c66fa7eb54";
|
||||
sha256 = "0ma8jq8d9a0mf26qjklgi4gdaflpjik1br1nhafzvjz7ccl56ksm";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "pixmap.patch";
|
||||
url = "http://git.ghostscript.com/?p=mupdf.git;a=patch;h=32e4e8b4bcbacbf92af7c88337efae21986d9603";
|
||||
sha256 = "1zqkxgwrhcwsdya98pcmpq2815jjmv3fwsp0sba9f5nq5xi6whbj";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
sed -i "s/__OPENJPEG__VERSION__/${openJpegVersion}/" source/fitz/load-jpx.c
|
||||
'';
|
||||
|
||||
# Use shared libraries to decrease size
|
||||
buildFlags = [ "shared" ];
|
||||
|
||||
makeFlags = [ "prefix=$(out) USE_SYSTEM_LIBS=yes" ];
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg freeglut libGLU ]
|
||||
buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg freeglut libGLU gumbo ]
|
||||
++ lib.optionals enableX11 [ libX11 libXext libXi libXrandr ]
|
||||
++ lib.optionals enableCurl [ curl openssl ]
|
||||
++ lib.optionals enableGL (
|
||||
|
|
|
@ -35,13 +35,13 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "orca";
|
||||
version = "3.36.5";
|
||||
version = "3.38.0";
|
||||
|
||||
format = "other";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0nyb33p4y6nmln41pi70c8hiyjyasaryy10mazi7b2s6fy9pk25x";
|
||||
sha256 = "1vkg6p1dlrgx1yyscmy0m58inaq4ljshbdxw0nhi1nwqk3bpjchw";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, fetchFromGitHub, pkgs, pythonPackages, wrapGAppsHook}:
|
||||
{ stdenv, fetchFromGitHub, pkgs, python3, wrapGAppsHook}:
|
||||
|
||||
pythonPackages.buildPythonApplication {
|
||||
python3.pkgs.buildPythonApplication {
|
||||
pname = "pdf-quench";
|
||||
version = "1.0.5";
|
||||
|
||||
|
@ -18,7 +18,7 @@ pythonPackages.buildPythonApplication {
|
|||
goocanvas2
|
||||
poppler_gi
|
||||
];
|
||||
propagatedBuildInputs = with pythonPackages; [ pygobject3 pypdf2 ];
|
||||
propagatedBuildInputs = with python3.pkgs; [ pygobject3 pypdf2 ];
|
||||
|
||||
format = "other";
|
||||
doCheck = false;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv, fetchFromGitHub, cmake, pkgconfig, zip, gettext, perl
|
||||
, wxGTK31, libXext, libXi, libXt, libXtst, xercesc
|
||||
, wxGTK30, libXext, libXi, libXt, libXtst, xercesc
|
||||
, qrencode, libuuid, libyubikey, yubikey-personalization
|
||||
, curl, openssl, file
|
||||
}:
|
||||
|
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
|||
cmake gettext perl pkgconfig zip
|
||||
];
|
||||
buildInputs = [
|
||||
libXext libXi libXt libXtst wxGTK31
|
||||
libXext libXi libXt libXtst wxGTK30
|
||||
curl qrencode libuuid openssl xercesc
|
||||
libyubikey yubikey-personalization
|
||||
file
|
||||
|
|
32
third_party/nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix
vendored
Normal file
32
third_party/nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix
vendored
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "spicetify-cli";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "khanhas";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "08rnwj7ggh114n3mhhm8hb8fm1njgb4j6vba3hynp8x1c2ngidff";
|
||||
};
|
||||
|
||||
vendorSha256 = "0k06c3jw5z8rw8nk4qf794kyfipylmz6x6l126a2snvwi0lmc601";
|
||||
|
||||
# used at runtime, but not installed by default
|
||||
postInstall = ''
|
||||
cp -r ${src}/jsHelper $out/bin/jsHelper
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
$out/bin/spicetify-cli --help > /dev/null
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command-line tool to customize Spotify client";
|
||||
homepage = "https://github.com/khanhas/spicetify-cli/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ jonringer ];
|
||||
};
|
||||
}
|
|
@ -20,14 +20,14 @@
|
|||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
version = "1.0.0";
|
||||
version = "1.0.1";
|
||||
pname = "syncthingtray";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Martchus";
|
||||
repo = "syncthingtray";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-mB23UOUrOfEmbFfVsAXyi3iod0NAfp/sl7Gkklqfmbo=";
|
||||
sha256 = "1dln5gh3p8nz9qmg07cw2s0lpzp3rfhyrwdhczj89g27bwk0lr4k";
|
||||
};
|
||||
|
||||
buildInputs = [ qtbase cpp-utilities qtutilities ]
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "amfora";
|
||||
version = "1.5.0";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "makeworld-the-better-one";
|
||||
repo = "amfora";
|
||||
rev = "v${version}";
|
||||
sha256 = "011h5xzwiafh3fdp9wil8n618p45ph9swa66lw6s82ijpiizz79s";
|
||||
sha256 = "1f5r12hmdgj26p4ss5pcpfcvqlcn19fr9xvvvk2izckcr48p4fy7";
|
||||
};
|
||||
|
||||
vendorSha256 = "10f3bh3r3jc1185r8r1ihg8rprdpl8qwg5b6wqwsda96ydkbpi2b";
|
||||
vendorSha256 = "0mkk7xxfxxp1w9890mkmag11mzxhy2zmh8v1macpyp1zmzgs21f8";
|
||||
|
||||
postInstall = ''
|
||||
sed -i "s:amfora:$out/bin/amfora:" amfora.desktop
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"stable": {
|
||||
"version": "86.0.4240.183",
|
||||
"sha256": "1g39i82js7fm4fqb8i66d6xs0kzqjxzi4vzvvwz5y9rkbikcc4ma",
|
||||
"sha256bin64": "1r0dxqsx6j19hgwr3v2sdlb2vd7gb961c4wba4ymd8wy8j8pzly9",
|
||||
"version": "86.0.4240.193",
|
||||
"sha256": "0d55xkw3fygqpa3a5bvz7vqmzb0d9w1kis72h54cnwsqgw4xag90",
|
||||
"sha256bin64": "1x1f8fv0fi965apk2a5v6jmhz8j5m3rz0k5x5vmkwqprvlblfjpw",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2020-08-07",
|
||||
|
@ -13,9 +13,9 @@
|
|||
}
|
||||
},
|
||||
"beta": {
|
||||
"version": "87.0.4280.40",
|
||||
"sha256": "07xh76fl257np68way6i5rf64qbvirkfddy7m5gvqb0fzcqd7dp3",
|
||||
"sha256bin64": "1b2z0aqlh28pqrk6dmabxp1d4mvp9iyfmi4kqmns4cdpg0qgaf41",
|
||||
"version": "87.0.4280.47",
|
||||
"sha256": "0a3c4kz85857wrbcxqknbqmai250d36nq332l66a83r8sidhbxfq",
|
||||
"sha256bin64": "0bjls2airr4p448rx7im1a7gff68yfnfb5vymr4bin4kz0s38mpw",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2020-09-09",
|
||||
|
@ -26,15 +26,15 @@
|
|||
}
|
||||
},
|
||||
"dev": {
|
||||
"version": "88.0.4300.0",
|
||||
"sha256": "00cfs2rp4h8ybn2snr1d8ygg635hx7q5gv2aqriy1j6f8a1pgh1b",
|
||||
"sha256bin64": "110r1m14h91212nx6pfhn8wkics7wlwx1608l5cqsxxcpvpzl3pv",
|
||||
"version": "88.0.4315.5",
|
||||
"sha256": "0k6man2xq8vmnk73dqv3fcc9929agqq8j6s6nvc9z653q4jdphkw",
|
||||
"sha256bin64": "0m139w8lwaawridk8in24ss1g1i6ah5298xky226k3vhk5i4mn3j",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2020-09-09",
|
||||
"version": "2020-10-21",
|
||||
"url": "https://gn.googlesource.com/gn",
|
||||
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2",
|
||||
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk"
|
||||
"rev": "f5f465b52e5df6d4de9fbe67cc79f1914ba4dbfc",
|
||||
"sha256": "1xb31vsvg27ivvcdyiq93h8wj4d90qdrpagfh1dvm6xszkajsca1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -344,7 +344,12 @@ let
|
|||
patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary"
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.py;
|
||||
passthru = {
|
||||
updateScript = ./update.py;
|
||||
chromiumDeps = {
|
||||
gn = gnChromium;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Remove some extraAttrs we supplied to the base attributes already.
|
||||
|
|
|
@ -37,26 +37,15 @@ let
|
|||
inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs
|
||||
cupsSupport pulseSupport useOzone;
|
||||
inherit ungoogled;
|
||||
# TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
|
||||
gnChromium = gn.overrideAttrs (oldAttrs: {
|
||||
version = "2020-07-20";
|
||||
inherit (upstream-info.deps.gn) version;
|
||||
src = fetchgit {
|
||||
url = "https://gn.googlesource.com/gn";
|
||||
rev = "3028c6a426a4aaf6da91c4ebafe716ae370225fe";
|
||||
sha256 = "0h3wf4152zdvrbb0jbj49q6814lfl3rcy5mj8b2pl9s0ahvkbc6q";
|
||||
inherit (upstream-info.deps.gn) url rev sha256;
|
||||
};
|
||||
});
|
||||
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "87") {
|
||||
useOzone = true; # YAY: https://chromium-review.googlesource.com/c/chromium/src/+/2382834 \o/
|
||||
useVaapi = !stdenv.isAarch64; # TODO: Might be best to not set use_vaapi anymore (default is fine)
|
||||
gnChromium = gn.overrideAttrs (oldAttrs: {
|
||||
version = "2020-08-17";
|
||||
src = fetchgit {
|
||||
url = "https://gn.googlesource.com/gn";
|
||||
rev = "6f13aaac55a977e1948910942675c69f2b4f7a94";
|
||||
sha256 = "01hpma1sllpdx09mvr4d6073sg6zmk6iv44kd3r28khymcj4s251";
|
||||
};
|
||||
});
|
||||
});
|
||||
|
||||
browser = callPackage ./browser.nix { inherit channel enableWideVine; };
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"86.0.4240.111" = {
|
||||
rev = "86.0.4240.111-1";
|
||||
sha256 = "0fkk0lxbvik8q8d5njxmwiam64qz5g74hlb56w24nh5mh1jm59a8";
|
||||
"86.0.4240.183" = {
|
||||
rev = "86.0.4240.183-1";
|
||||
sha256 = "0528l2wr5bpl1cwsxzl5zxz1gw91kffkh5j1kzmc5n7m4mscqxyc";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i python -p python3 nix
|
||||
#! nix-shell -i python -p python3 nix nix-prefetch-git
|
||||
|
||||
import csv
|
||||
import json
|
||||
import re
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
from codecs import iterdecode
|
||||
from collections import OrderedDict
|
||||
from datetime import datetime
|
||||
from os.path import abspath, dirname
|
||||
from urllib.request import urlopen
|
||||
|
||||
|
@ -26,6 +28,30 @@ def nix_prefetch_url(url, algo='sha256'):
|
|||
out = subprocess.check_output(['nix-prefetch-url', '--type', algo, url])
|
||||
return out.decode('utf-8').rstrip()
|
||||
|
||||
def nix_prefetch_git(url, rev):
|
||||
print(f'nix-prefetch-git {url} {rev}')
|
||||
out = subprocess.check_output(['nix-prefetch-git', '--quiet', '--url', url, '--rev', rev])
|
||||
return json.loads(out)
|
||||
|
||||
def get_file_revision(revision, file_path):
|
||||
url = f'https://raw.githubusercontent.com/chromium/chromium/{revision}/{file_path}'
|
||||
with urlopen(url) as http_response:
|
||||
return http_response.read()
|
||||
|
||||
def get_channel_dependencies(channel):
|
||||
deps = get_file_revision(channel['version'], 'DEPS')
|
||||
gn_pattern = b"'gn_version': 'git_revision:([0-9a-f]{40})'"
|
||||
gn_commit = re.search(gn_pattern, deps).group(1).decode()
|
||||
gn = nix_prefetch_git('https://gn.googlesource.com/gn', gn_commit)
|
||||
return {
|
||||
'gn': {
|
||||
'version': datetime.fromisoformat(gn['date']).date().isoformat(),
|
||||
'url': gn['url'],
|
||||
'rev': gn['rev'],
|
||||
'sha256': gn['sha256']
|
||||
}
|
||||
}
|
||||
|
||||
channels = {}
|
||||
last_channels = load_json(JSON_PATH)
|
||||
|
||||
|
@ -58,6 +84,8 @@ with urlopen(HISTORY_URL) as resp:
|
|||
# the next one.
|
||||
continue
|
||||
|
||||
channel['deps'] = get_channel_dependencies(channel)
|
||||
|
||||
channels[channel_name] = channel
|
||||
|
||||
with open(JSON_PATH, 'w') as out:
|
||||
|
|
|
@ -1,17 +1,41 @@
|
|||
{
|
||||
"stable": {
|
||||
"version": "86.0.4240.111",
|
||||
"sha256": "05y7lwr89awkhvgmwkx3br9j4ap2aypg2wsc0nz8mi7kxc1dnyzj",
|
||||
"sha256bin64": "10aqiiydw4i3jxnw8xxdgkgcqbfqc67n1fbrg40y54kg0v5dz8l6"
|
||||
"version": "86.0.4240.183",
|
||||
"sha256": "1g39i82js7fm4fqb8i66d6xs0kzqjxzi4vzvvwz5y9rkbikcc4ma",
|
||||
"sha256bin64": "1r0dxqsx6j19hgwr3v2sdlb2vd7gb961c4wba4ymd8wy8j8pzly9",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2020-08-07",
|
||||
"url": "https://gn.googlesource.com/gn",
|
||||
"rev": "e327ffdc503815916db2543ec000226a8df45163",
|
||||
"sha256": "0kvlfj3www84zp1vmxh76x8fdjm9hyk8lkh2vdsidafpmm75fphr"
|
||||
}
|
||||
}
|
||||
},
|
||||
"beta": {
|
||||
"version": "87.0.4280.27",
|
||||
"sha256": "0w0asxj7jlsw69cssfia8km4q9cx1c2mliks2rmhf4jk0hsghasm",
|
||||
"sha256bin64": "1lsx4mhy8nachfb8c9f3mrx5nqw2bi046dqirb4lnv7y80jjjs1k"
|
||||
"version": "87.0.4280.40",
|
||||
"sha256": "07xh76fl257np68way6i5rf64qbvirkfddy7m5gvqb0fzcqd7dp3",
|
||||
"sha256bin64": "1b2z0aqlh28pqrk6dmabxp1d4mvp9iyfmi4kqmns4cdpg0qgaf41",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2020-09-09",
|
||||
"url": "https://gn.googlesource.com/gn",
|
||||
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2",
|
||||
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dev": {
|
||||
"version": "88.0.4298.4",
|
||||
"sha256": "0ka11gmpkyrmifajaxm66c16hrj3xakdvhjqg04slyp2sv0nlhrl",
|
||||
"sha256bin64": "0768y31jqbl1znp7yp6mvl5j12xl1nwjkh2l8zdga81q0wz52hh6"
|
||||
"version": "88.0.4300.0",
|
||||
"sha256": "00cfs2rp4h8ybn2snr1d8ygg635hx7q5gv2aqriy1j6f8a1pgh1b",
|
||||
"sha256bin64": "110r1m14h91212nx6pfhn8wkics7wlwx1608l5cqsxxcpvpzl3pv",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2020-09-09",
|
||||
"url": "https://gn.googlesource.com/gn",
|
||||
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2",
|
||||
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
, meson
|
||||
, ninja
|
||||
, pkgconfig
|
||||
, libhandy
|
||||
, libhandy_0
|
||||
, modemmanager
|
||||
, gtk3
|
||||
, gom
|
||||
|
@ -43,13 +43,12 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [
|
||||
modemmanager
|
||||
libhandy
|
||||
libhandy_0
|
||||
evolution-data-server
|
||||
folks
|
||||
gom
|
||||
gsound
|
||||
gtk3
|
||||
libhandy
|
||||
libpeas
|
||||
];
|
||||
|
||||
|
|
|
@ -19,13 +19,13 @@ let
|
|||
in
|
||||
buildGoModule rec {
|
||||
pname = "argo";
|
||||
version = "2.11.6";
|
||||
version = "2.11.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj";
|
||||
repo = "argo";
|
||||
rev = "v${version}";
|
||||
sha256 = "1vlz1f4hyzgz1x9xgzlmpnbjba8xyhpx9ybia0pwilfg7mwfq92r";
|
||||
sha256 = "1i7qgghnb39bibnk07f47k64qpkb1k8mi3bbfnx6mxl0jlq335af";
|
||||
};
|
||||
|
||||
vendorSha256 = "1ca0ssvbi4vrsn9ljc783hnh9bmf5p8nr1lz5wm8g3gbrrrf1ray";
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "helmfile";
|
||||
version = "0.132.1";
|
||||
version = "0.134.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "roboll";
|
||||
repo = "helmfile";
|
||||
rev = "v${version}";
|
||||
sha256 = "03i9pl3iwqk5az73qm9rxdq8c5nd9l4w3c28yk55bfgpwpnxcwjc";
|
||||
sha256 = "0s64l3dj5ydal7rfyg1avckb2ri7a34y2x7rhbplam8lk0vdzx03";
|
||||
};
|
||||
|
||||
vendorSha256 = "0r4p4nwhmxg06qyf86gd2g61l4r1mlpblh4vhsc1shbz9iigykzi";
|
||||
vendorSha256 = "1p5m5v5lpdyzywq2ybsa9zkygixdkaifn2szxj7v8x162bzf16r5";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "helmsman";
|
||||
version = "3.4.6";
|
||||
version = "3.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Praqma";
|
||||
repo = "helmsman";
|
||||
rev = "v${version}";
|
||||
sha256 = "018bkl6q6q8njv9qy87affs0g6c716vmhcqv2czv8qz454hn7i5h";
|
||||
sha256 = "0vng0ra8bjxmfq6xvdxn72f5bcjrv8i72dams80lf0mq3l7wjl7c";
|
||||
};
|
||||
|
||||
vendorSha256 = "05vnysr5r3hbayss1pyifgp989kjw81h95iack8ady62k6ys5njl";
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "k9s";
|
||||
version = "0.23.3";
|
||||
version = "0.23.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "derailed";
|
||||
repo = "k9s";
|
||||
rev = "v${version}";
|
||||
sha256 = "0jdrjsv6miprw0bj964rgkbci4xdwfi536z3px93i2n9zrhhawpn";
|
||||
sha256 = "0nfgi67ja36mymhcyh4902680pkfnk4g8j8nbajksx9nfp53n91v";
|
||||
};
|
||||
|
||||
buildFlagsArray = ''
|
||||
|
@ -18,7 +18,7 @@ buildGoModule rec {
|
|||
-X github.com/derailed/k9s/cmd.commit=${src.rev}
|
||||
'';
|
||||
|
||||
vendorSha256 = "105vmy8agl3ppgi28wg7djx0jrfam7nxfvvlps9ycgyrv2qpjh2n";
|
||||
vendorSha256 = "116aidry55917ays7rn5r5kj17nbgb9qi16bplml9kxfkjv072kz";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kube3d";
|
||||
version = "3.1.5";
|
||||
version = "3.2.0";
|
||||
k3sVersion = "1.18.9-k3s1";
|
||||
|
||||
excludedPackages = ''tools'';
|
||||
|
@ -11,7 +11,7 @@ buildGoModule rec {
|
|||
owner = "rancher";
|
||||
repo = "k3d";
|
||||
rev = "v${version}";
|
||||
sha256 = "0aspkar9im323d8117k48fvh1yylyspi2p2l2f5rdg1ilpa6hm53";
|
||||
sha256 = "0jy0l8rvmwi0qznnvv97v50lfkpc2bwjmbnq4pxnmf9ih970wjwh";
|
||||
};
|
||||
|
||||
buildFlagsArray = ''
|
||||
|
@ -23,12 +23,11 @@ buildGoModule rec {
|
|||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
# TODO: Move to enhanced installShellCompletion when in master: PR #83630
|
||||
postInstall = ''
|
||||
$out/bin/k3d completion bash > k3d.bash
|
||||
$out/bin/k3d completion fish > k3d.fish
|
||||
$out/bin/k3d completion zsh > _k3d
|
||||
installShellCompletion k3d.{bash,fish} --zsh _k3d
|
||||
installShellCompletion --cmd k3d \
|
||||
--bash <($out/bin/k3d completion bash) \
|
||||
--fish <($out/bin/k3d completion fish) \
|
||||
--zsh <($out/bin/k3d completion zsh)
|
||||
'';
|
||||
|
||||
vendorSha256 = null;
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue