Merge master into haskell-updates
This commit is contained in:
commit
6c8157dbc8
94 changed files with 2849 additions and 4736 deletions
|
@ -27,6 +27,10 @@ function Code(elem)
|
|||
content = '<refentrytitle>' .. title .. '</refentrytitle>' .. (volnum ~= nil and ('<manvolnum>' .. volnum .. '</manvolnum>') or '')
|
||||
elseif elem.attributes['role'] == 'file' then
|
||||
tag = 'filename'
|
||||
elseif elem.attributes['role'] == 'command' then
|
||||
tag = 'command'
|
||||
elseif elem.attributes['role'] == 'option' then
|
||||
tag = 'option'
|
||||
end
|
||||
|
||||
if tag ~= nil then
|
||||
|
|
|
@ -302,7 +302,7 @@ buildImage {
|
|||
|
||||
runAsRoot = ''
|
||||
#!${pkgs.runtimeShell}
|
||||
${shadowSetup}
|
||||
${pkgs.dockerTools.shadowSetup}
|
||||
groupadd -r redis
|
||||
useradd -r -g redis redis
|
||||
mkdir /data
|
||||
|
|
|
@ -27,7 +27,7 @@ If the build succeeds, the manual will be in `./result/share/doc/nixpkgs/manual.
|
|||
|
||||
As per [RFC 0072](https://github.com/NixOS/rfcs/pull/72), all new documentation content should be written in [CommonMark](https://commonmark.org/) Markdown dialect.
|
||||
|
||||
Additionally, the following syntax extensions are currently used:
|
||||
Additional syntax extensions are available, though not all extensions can be used in NixOS option documentation. The following extensions are currently used:
|
||||
|
||||
- []{#ssec-contributing-markup-anchors}
|
||||
Explicitly defined **anchors** on headings, to allow linking to sections. These should be always used, to ensure the anchors can be linked even when the heading text changes, and to prevent conflicts between [automatically assigned identifiers](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/auto_identifiers.md).
|
||||
|
@ -53,12 +53,22 @@ Additionally, the following syntax extensions are currently used:
|
|||
This syntax is taken from [MyST](https://myst-parser.readthedocs.io/en/latest/using/syntax.html#targets-and-cross-referencing).
|
||||
|
||||
- []{#ssec-contributing-markup-inline-roles}
|
||||
If you want to link to a man page, you can use `` {manpage}`nix.conf(5)` ``, which will turn into {manpage}`nix.conf(5)`.
|
||||
If you want to link to a man page, you can use `` {manpage}`nix.conf(5)` ``, which will turn into {manpage}`nix.conf(5)`. The references will turn into links when a mapping exists in {file}`doc/build-aux/pandoc-filters/link-unix-man-references.lua`.
|
||||
|
||||
The references will turn into links when a mapping exists in {file}`doc/build-aux/pandoc-filters/link-unix-man-references.lua`.
|
||||
A few markups for other kinds of literals are also available:
|
||||
|
||||
- `` {command}`rm -rfi` `` turns into {command}`rm -rfi`
|
||||
- `` {option}`networking.useDHCP` `` turns into {option}`networking.useDHCP`
|
||||
- `` {file}`/etc/passwd` `` turns into {file}`/etc/passwd`
|
||||
|
||||
These literal kinds are used mostly in NixOS option documentation.
|
||||
|
||||
This syntax is taken from [MyST](https://myst-parser.readthedocs.io/en/latest/syntax/syntax.html#roles-an-in-line-extension-point). Though, the feature originates from [reStructuredText](https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#role-manpage) with slightly different syntax.
|
||||
|
||||
::: {.note}
|
||||
Inline roles are available for option documentation.
|
||||
:::
|
||||
|
||||
- []{#ssec-contributing-markup-admonitions}
|
||||
**Admonitions**, set off from the text to bring attention to something.
|
||||
|
||||
|
@ -84,6 +94,10 @@ Additionally, the following syntax extensions are currently used:
|
|||
- [`tip`](https://tdg.docbook.org/tdg/5.0/tip.html)
|
||||
- [`warning`](https://tdg.docbook.org/tdg/5.0/warning.html)
|
||||
|
||||
::: {.note}
|
||||
Admonitions are available for option documentation.
|
||||
:::
|
||||
|
||||
- []{#ssec-contributing-markup-definition-lists}
|
||||
[**Definition lists**](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/definition_lists.md), for defining a group of terms:
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ The `dotnetCorePackages.sdk` contains both a runtime and the full sdk of a given
|
|||
To package Dotnet applications, you can use `buildDotnetModule`. This has similar arguments to `stdenv.mkDerivation`, with the following additions:
|
||||
|
||||
* `projectFile` has to be used for specifying the dotnet project file relative to the source root. These usually have `.sln` or `.csproj` file extensions. This can be an array of multiple projects as well.
|
||||
* `nugetDeps` has to be used to specify the NuGet dependency file. Unfortunately, these cannot be deterministically fetched without a lockfile. A script to fetch these is available as `passthru.fetch-deps`. This file can also be generated manually using `nuget-to-nix` tool, which is available in nixpkgs.
|
||||
* `nugetDeps` takes either a path to a `deps.nix` file, or a derivation. The `deps.nix` file can be generated using the script attached to `passthru.fetch-deps`. This file can also be generated manually using `nuget-to-nix` tool, which is available in nixpkgs. If the argument is a derivation, it will be used directly and assume it has the same output as `mkNugetDeps`.
|
||||
* `packNupkg` is used to pack project as a `nupkg`, and installs it to `$out/share`. If set to `true`, the derivation can be used as a dependency for another dotnet project by adding it to `projectReferences`.
|
||||
* `projectReferences` can be used to resolve `ProjectReference` project items. Referenced projects can be packed with `buildDotnetModule` by setting the `packNupkg = true` attribute and passing a list of derivations to `projectReferences`. Since we are sharing referenced projects as NuGets they must be added to csproj/fsproj files as `PackageReference` as well.
|
||||
For example, your project has a local dependency:
|
||||
|
|
|
@ -131,7 +131,8 @@ let
|
|||
getValues getFiles
|
||||
optionAttrSetToDocList optionAttrSetToDocList'
|
||||
scrubOptionValue literalExpression literalExample literalDocBook
|
||||
showOption showFiles unknownModule mkOption mkPackageOption;
|
||||
showOption showFiles unknownModule mkOption mkPackageOption
|
||||
mdDoc literalMD;
|
||||
inherit (self.types) isType setType defaultTypeMerge defaultFunctor
|
||||
isOptionType mkOptionType;
|
||||
inherit (self.asserts)
|
||||
|
|
|
@ -280,6 +280,21 @@ rec {
|
|||
if ! isString text then throw "literalDocBook expects a string."
|
||||
else { _type = "literalDocBook"; inherit text; };
|
||||
|
||||
/* Transition marker for documentation that's already migrated to markdown
|
||||
syntax.
|
||||
*/
|
||||
mdDoc = text:
|
||||
if ! isString text then throw "mdDoc expects a string."
|
||||
else { _type = "mdDoc"; inherit text; };
|
||||
|
||||
/* For use in the `defaultText` and `example` option attributes. Causes the
|
||||
given MD text to be inserted verbatim in the documentation, for when
|
||||
a `literalExpression` would be too hard to read.
|
||||
*/
|
||||
literalMD = text:
|
||||
if ! isString text then throw "literalMD expects a string."
|
||||
else { _type = "literalMD"; inherit text; };
|
||||
|
||||
# Helper functions.
|
||||
|
||||
/* Convert an option, described as a list of the option parts in to a
|
||||
|
|
|
@ -3087,6 +3087,12 @@
|
|||
githubId = 17111639;
|
||||
name = "Devin Singh";
|
||||
};
|
||||
devusb = {
|
||||
email = "mhelton@devusb.us";
|
||||
github = "devusb";
|
||||
githubId = 4951663;
|
||||
name = "Morgan Helton";
|
||||
};
|
||||
dezgeg = {
|
||||
email = "tuomas.tynkkynen@iki.fi";
|
||||
github = "dezgeg";
|
||||
|
@ -8987,7 +8993,7 @@
|
|||
githubId = 4323933;
|
||||
name = "Naïm Favier";
|
||||
keys = [{
|
||||
fingerprint = "51A0 705E 7DD2 3CBC 5EAA B43E 49B0 7322 580B 7EE2";
|
||||
fingerprint = "F3EB 4BBB 4E71 99BC 299C D4E9 95AF CE82 1190 8325";
|
||||
}];
|
||||
};
|
||||
nckx = {
|
||||
|
|
|
@ -56,7 +56,14 @@ The function `mkOption` accepts the following arguments.
|
|||
`description`
|
||||
|
||||
: A textual description of the option, in DocBook format, that will be
|
||||
included in the NixOS manual.
|
||||
included in the NixOS manual. During the migration process from DocBook
|
||||
to CommonMark the description may also be written in CommonMark, but has
|
||||
to be wrapped in `lib.mdDoc` to differentiate it from DocBook. See
|
||||
the nixpkgs manual for [the list of CommonMark extensions](
|
||||
https://nixos.org/nixpkgs/manual/#sec-contributing-markup)
|
||||
supported by NixOS documentation.
|
||||
|
||||
New documentation should preferably be written as CommonMark.
|
||||
|
||||
## Utility functions for common option patterns {#sec-option-declarations-util}
|
||||
|
||||
|
|
|
@ -94,7 +94,17 @@ options = {
|
|||
<listitem>
|
||||
<para>
|
||||
A textual description of the option, in DocBook format, that
|
||||
will be included in the NixOS manual.
|
||||
will be included in the NixOS manual. During the migration
|
||||
process from DocBook to CommonMark the description may also be
|
||||
written in CommonMark, but has to be wrapped in
|
||||
<literal>lib.mdDoc</literal> to differentiate it from DocBook.
|
||||
See the nixpkgs manual for
|
||||
<link xlink:href="https://nixos.org/nixpkgs/manual/#sec-contributing-markup">the
|
||||
list of CommonMark extensions</link> supported by NixOS
|
||||
documentation.
|
||||
</para>
|
||||
<para>
|
||||
New documentation should preferably be written as CommonMark.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
|
|
@ -112,7 +112,15 @@ in rec {
|
|||
|
||||
optionsJSON = pkgs.runCommand "options.json"
|
||||
{ meta.description = "List of NixOS options in JSON format";
|
||||
buildInputs = [ pkgs.brotli ];
|
||||
buildInputs = [
|
||||
pkgs.brotli
|
||||
(let
|
||||
self = (pkgs.python3Minimal.override {
|
||||
inherit self;
|
||||
includeSiteCustomize = true;
|
||||
});
|
||||
in self.withPackages (p: [ p.mistune_2_0 ]))
|
||||
];
|
||||
options = builtins.toFile "options.json"
|
||||
(builtins.unsafeDiscardStringContext (builtins.toJSON optionsNix));
|
||||
}
|
||||
|
@ -123,9 +131,13 @@ in rec {
|
|||
|
||||
${
|
||||
if baseOptionsJSON == null
|
||||
then "cp $options $dst/options.json"
|
||||
then ''
|
||||
# `cp $options $dst/options.json`, but with temporary
|
||||
# markdown processing
|
||||
python ${./mergeJSON.py} $options <(echo '{}') > $dst/options.json
|
||||
''
|
||||
else ''
|
||||
${pkgs.python3Minimal}/bin/python ${./mergeJSON.py} \
|
||||
python ${./mergeJSON.py} \
|
||||
${lib.optionalString warningsAreErrors "--warnings-are-errors"} \
|
||||
${baseOptionsJSON} $options \
|
||||
> $dst/options.json
|
||||
|
|
|
@ -41,6 +41,150 @@ def unpivot(options: Dict[Key, Option]) -> Dict[str, JSON]:
|
|||
result[opt.name] = opt.value
|
||||
return result
|
||||
|
||||
# converts in-place!
|
||||
def convertMD(options: Dict[str, Any]) -> str:
|
||||
import mistune
|
||||
import re
|
||||
from xml.sax.saxutils import escape, quoteattr
|
||||
|
||||
admonitions = {
|
||||
'.warning': 'warning',
|
||||
'.important': 'important',
|
||||
'.note': 'note'
|
||||
}
|
||||
class Renderer(mistune.renderers.BaseRenderer):
|
||||
def _get_method(self, name):
|
||||
try:
|
||||
return super(Renderer, self)._get_method(name)
|
||||
except AttributeError:
|
||||
def not_supported(children, **kwargs):
|
||||
raise NotImplementedError("md node not supported yet", name, children, **kwargs)
|
||||
return not_supported
|
||||
|
||||
def text(self, text):
|
||||
return escape(text)
|
||||
def paragraph(self, text):
|
||||
return text + "\n\n"
|
||||
def codespan(self, text):
|
||||
return f"<literal>{text}</literal>"
|
||||
def block_code(self, text, info=None):
|
||||
info = f" language={quoteattr(info)}" if info is not None else ""
|
||||
return f"<programlisting{info}>\n{text}</programlisting>"
|
||||
def link(self, link, text=None, title=None):
|
||||
if link[0:1] == '#':
|
||||
attr = "linkend"
|
||||
link = quoteattr(link[1:])
|
||||
else:
|
||||
# try to faithfully reproduce links that were of the form <link href="..."/>
|
||||
# in docbook format
|
||||
if text == link:
|
||||
text = ""
|
||||
attr = "xlink:href"
|
||||
link = quoteattr(link)
|
||||
return f"<link {attr}={link}>{text}</link>"
|
||||
def list(self, text, ordered, level, start=None):
|
||||
if ordered:
|
||||
raise NotImplementedError("ordered lists not supported yet")
|
||||
return f"<itemizedlist>\n{text}\n</itemizedlist>"
|
||||
def list_item(self, text, level):
|
||||
return f"<listitem><para>{text}</para></listitem>\n"
|
||||
def block_text(self, text):
|
||||
return text
|
||||
def emphasis(self, text):
|
||||
return f"<emphasis>{text}</emphasis>"
|
||||
def strong(self, text):
|
||||
return f"<emphasis role=\"strong\">{text}</emphasis>"
|
||||
def admonition(self, text, kind):
|
||||
if kind not in admonitions:
|
||||
raise NotImplementedError(f"admonition {kind} not supported yet")
|
||||
tag = admonitions[kind]
|
||||
# we don't keep whitespace here because usually we'll contain only
|
||||
# a single paragraph and the original docbook string is no longer
|
||||
# available to restore the trailer.
|
||||
return f"<{tag}><para>{text.rstrip()}</para></{tag}>"
|
||||
def command(self, text):
|
||||
return f"<command>{escape(text)}</command>"
|
||||
def option(self, text):
|
||||
return f"<option>{escape(text)}</option>"
|
||||
def file(self, text):
|
||||
return f"<filename>{escape(text)}</filename>"
|
||||
def manpage(self, page, section):
|
||||
title = f"<refentrytitle>{escape(page)}</refentrytitle>"
|
||||
vol = f"<manvolnum>{escape(section)}</manvolnum>"
|
||||
return f"<citerefentry>{title}{vol}</citerefentry>"
|
||||
|
||||
def finalize(self, data):
|
||||
return "".join(data)
|
||||
|
||||
plugins = []
|
||||
|
||||
COMMAND_PATTERN = r'\{command\}`(.*?)`'
|
||||
def command(md):
|
||||
def parse(self, m, state):
|
||||
return ('command', m.group(1))
|
||||
md.inline.register_rule('command', COMMAND_PATTERN, parse)
|
||||
md.inline.rules.append('command')
|
||||
plugins.append(command)
|
||||
|
||||
FILE_PATTERN = r'\{file\}`(.*?)`'
|
||||
def file(md):
|
||||
def parse(self, m, state):
|
||||
return ('file', m.group(1))
|
||||
md.inline.register_rule('file', FILE_PATTERN, parse)
|
||||
md.inline.rules.append('file')
|
||||
plugins.append(file)
|
||||
|
||||
OPTION_PATTERN = r'\{option\}`(.*?)`'
|
||||
def option(md):
|
||||
def parse(self, m, state):
|
||||
return ('option', m.group(1))
|
||||
md.inline.register_rule('option', OPTION_PATTERN, parse)
|
||||
md.inline.rules.append('option')
|
||||
plugins.append(option)
|
||||
|
||||
MANPAGE_PATTERN = r'\{manpage\}`(.*?)\((.+?)\)`'
|
||||
def manpage(md):
|
||||
def parse(self, m, state):
|
||||
return ('manpage', m.group(1), m.group(2))
|
||||
md.inline.register_rule('manpage', MANPAGE_PATTERN, parse)
|
||||
md.inline.rules.append('manpage')
|
||||
plugins.append(manpage)
|
||||
|
||||
ADMONITION_PATTERN = re.compile(r'^::: \{([^\n]*?)\}\n(.*?)^:::\n', flags=re.MULTILINE|re.DOTALL)
|
||||
def admonition(md):
|
||||
def parse(self, m, state):
|
||||
return {
|
||||
'type': 'admonition',
|
||||
'children': self.parse(m.group(2), state),
|
||||
'params': [ m.group(1) ],
|
||||
}
|
||||
md.block.register_rule('admonition', ADMONITION_PATTERN, parse)
|
||||
md.block.rules.append('admonition')
|
||||
plugins.append(admonition)
|
||||
|
||||
def convertString(text: str) -> str:
|
||||
rendered = mistune.markdown(text, renderer=Renderer(), plugins=plugins)
|
||||
# keep trailing spaces so we can diff the generated XML to check for conversion bugs.
|
||||
return rendered.rstrip() + text[len(text.rstrip()):]
|
||||
|
||||
def optionIs(option: Dict[str, Any], key: str, typ: str) -> bool:
|
||||
if key not in option: return False
|
||||
if type(option[key]) != dict: return False
|
||||
if '_type' not in option[key]: return False
|
||||
return option[key]['_type'] == typ
|
||||
|
||||
for (name, option) in options.items():
|
||||
if optionIs(option, 'description', 'mdDoc'):
|
||||
option['description'] = convertString(option['description']['text'])
|
||||
if optionIs(option, 'example', 'literalMD'):
|
||||
docbook = convertString(option['example']['text'])
|
||||
option['example'] = { '_type': 'literalDocBook', 'text': docbook }
|
||||
if optionIs(option, 'default', 'literalMD'):
|
||||
docbook = convertString(option['default']['text'])
|
||||
option['default'] = { '_type': 'literalDocBook', 'text': docbook }
|
||||
|
||||
return options
|
||||
|
||||
warningsAreErrors = sys.argv[1] == "--warnings-are-errors"
|
||||
optOffset = 1 if warningsAreErrors else 0
|
||||
options = pivot(json.load(open(sys.argv[1 + optOffset], 'r')))
|
||||
|
@ -92,4 +236,4 @@ if hasWarnings and warningsAreErrors:
|
|||
file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
json.dump(unpivot(options), fp=sys.stdout)
|
||||
json.dump(convertMD(unpivot(options)), fp=sys.stdout)
|
||||
|
|
|
@ -46,9 +46,9 @@ in
|
|||
type = with types; either str path;
|
||||
default = "Lat2-Terminus16";
|
||||
example = "LatArCyrHeb-16";
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The font used for the virtual consoles. Leave empty to use
|
||||
whatever the <command>setfont</command> program considers the
|
||||
whatever the {command}`setfont` program considers the
|
||||
default font.
|
||||
Can be either a font name or a path to a PSF font file.
|
||||
'';
|
||||
|
|
|
@ -9,21 +9,20 @@ with lib;
|
|||
environment.enableDebugInfo = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Some NixOS packages provide debug symbols. However, these are
|
||||
not included in the system closure by default to save disk
|
||||
space. Enabling this option causes the debug symbols to appear
|
||||
in <filename>/run/current-system/sw/lib/debug/.build-id</filename>,
|
||||
where tools such as <command>gdb</command> can find them.
|
||||
in {file}`/run/current-system/sw/lib/debug/.build-id`,
|
||||
where tools such as {command}`gdb` can find them.
|
||||
If you need debug symbols for a package that doesn't
|
||||
provide them by default, you can enable them as follows:
|
||||
<programlisting>
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
hello = pkgs.hello.overrideAttrs (oldAttrs: {
|
||||
separateDebugInfo = true;
|
||||
});
|
||||
};
|
||||
</programlisting>
|
||||
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
hello = pkgs.hello.overrideAttrs (oldAttrs: {
|
||||
separateDebugInfo = true;
|
||||
});
|
||||
};
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -178,19 +178,12 @@ in
|
|||
man.generateCaches = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Whether to generate the manual page index caches.
|
||||
This allows searching for a page or
|
||||
keyword using utilities like
|
||||
<citerefentry>
|
||||
<refentrytitle>apropos</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry>
|
||||
and the <literal>-k</literal> option of
|
||||
<citerefentry>
|
||||
<refentrytitle>man</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry>.
|
||||
keyword using utilities like {manpage}`apropos(1)`
|
||||
and the `-k` option of
|
||||
{manpage}`man(1)`.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -216,16 +209,14 @@ in
|
|||
dev.enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Whether to install documentation targeted at developers.
|
||||
<itemizedlist>
|
||||
<listitem><para>This includes man pages targeted at developers if <option>documentation.man.enable</option> is
|
||||
set (this also includes "devman" outputs).</para></listitem>
|
||||
<listitem><para>This includes info pages targeted at developers if <option>documentation.info.enable</option>
|
||||
is set (this also includes "devinfo" outputs).</para></listitem>
|
||||
<listitem><para>This includes other pages targeted at developers if <option>documentation.doc.enable</option>
|
||||
is set (this also includes "devdoc" outputs).</para></listitem>
|
||||
</itemizedlist>
|
||||
* This includes man pages targeted at developers if {option}`documentation.man.enable` is
|
||||
set (this also includes "devman" outputs).
|
||||
* This includes info pages targeted at developers if {option}`documentation.info.enable`
|
||||
is set (this also includes "devinfo" outputs).
|
||||
* This includes other pages targeted at developers if {option}`documentation.doc.enable`
|
||||
is set (this also includes "devdoc" outputs).
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -23,11 +23,11 @@ in
|
|||
++ lib.optionals config.documentation.dev.enable [ "devman" ];
|
||||
ignoreCollisions = true;
|
||||
};
|
||||
defaultText = lib.literalDocBook "all man pages in <option>config.environment.systemPackages</option>";
|
||||
description = ''
|
||||
The manual pages to generate caches for if <option>documentation.man.generateCaches</option>
|
||||
defaultText = lib.literalMD "all man pages in {option}`config.environment.systemPackages`";
|
||||
description = lib.mdDoc ''
|
||||
The manual pages to generate caches for if {option}`documentation.man.generateCaches`
|
||||
is enabled. Must be a path to a directory with man pages under
|
||||
<literal>/share/man</literal>; see the source for an example.
|
||||
`/share/man`; see the source for an example.
|
||||
Advanced users can make this a content-addressed derivation to save a few rebuilds.
|
||||
'';
|
||||
};
|
||||
|
|
|
@ -22,16 +22,17 @@ in {
|
|||
options.confinement.fullUnit = lib.mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = lib.mdDoc ''
|
||||
Whether to include the full closure of the systemd unit file into the
|
||||
chroot, instead of just the dependencies for the executables.
|
||||
|
||||
<warning><para>While it may be tempting to just enable this option to
|
||||
::: {.warning}
|
||||
While it may be tempting to just enable this option to
|
||||
make things work quickly, please be aware that this might add paths
|
||||
to the closure of the chroot that you didn't anticipate. It's better
|
||||
to use <option>confinement.packages</option> to <emphasis
|
||||
role="strong">explicitly</emphasis> add additional store paths to the
|
||||
chroot.</para></warning>
|
||||
to use {option}`confinement.packages` to **explicitly** add additional store paths to the
|
||||
chroot.
|
||||
:::
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -191,12 +191,12 @@ in {
|
|||
|
||||
settings = mkOption {
|
||||
default = {};
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The primary synapse configuration. See the
|
||||
<link xlink:href="https://github.com/matrix-org/synapse/blob/v${cfg.package.version}/docs/sample_config.yaml">sample configuration</link>
|
||||
[sample configuration](https://github.com/matrix-org/synapse/blob/v${cfg.package.version}/docs/sample_config.yaml)
|
||||
for possible values.
|
||||
|
||||
Secrets should be passed in by using the <literal>extraConfigFiles</literal> option.
|
||||
Secrets should be passed in by using the `extraConfigFiles` option.
|
||||
'';
|
||||
type = with types; submodule {
|
||||
freeformType = format.type;
|
||||
|
@ -230,23 +230,23 @@ in {
|
|||
registration_shared_secret = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
If set, allows registration by anyone who also has the shared
|
||||
secret, even if registration is otherwise disabled.
|
||||
|
||||
Secrets should be passed in via <literal>extraConfigFiles</literal>!
|
||||
Secrets should be passed in via `extraConfigFiles`!
|
||||
'';
|
||||
};
|
||||
|
||||
macaroon_secret_key = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Secret key for authentication tokens. If none is specified,
|
||||
the registration_shared_secret is used, if one is given; otherwise,
|
||||
a secret key is derived from the signing key.
|
||||
|
||||
Secrets should be passed in via <literal>extraConfigFiles</literal>!
|
||||
Secrets should be passed in via `extraConfigFiles`!
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -620,10 +620,10 @@ in {
|
|||
example = literalExpression ''
|
||||
config.services.coturn.static-auth-secret
|
||||
'';
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The shared secret used to compute passwords for the TURN server.
|
||||
|
||||
Secrets should be passed in via <literal>extraConfigFiles</literal>!
|
||||
Secrets should be passed in via `extraConfigFiles`!
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -54,10 +54,10 @@ let
|
|||
hashedPassword = mkOption {
|
||||
type = uniq (nullOr str);
|
||||
default = null;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Specifies the hashed password for the MQTT User.
|
||||
To generate hashed password install <literal>mosquitto</literal>
|
||||
package and use <literal>mosquitto_passwd</literal>.
|
||||
To generate hashed password install `mosquitto`
|
||||
package and use `mosquitto_passwd`.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -65,11 +65,11 @@ let
|
|||
type = uniq (nullOr types.path);
|
||||
example = "/path/to/file";
|
||||
default = null;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Specifies the path to a file containing the
|
||||
hashed password for the MQTT user.
|
||||
To generate hashed password install <literal>mosquitto</literal>
|
||||
package and use <literal>mosquitto_passwd</literal>.
|
||||
To generate hashed password install `mosquitto`
|
||||
package and use `mosquitto_passwd`.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -155,24 +155,24 @@ let
|
|||
options = {
|
||||
plugin = mkOption {
|
||||
type = path;
|
||||
description = ''
|
||||
Plugin path to load, should be a <literal>.so</literal> file.
|
||||
description = mdDoc ''
|
||||
Plugin path to load, should be a `.so` file.
|
||||
'';
|
||||
};
|
||||
|
||||
denySpecialChars = mkOption {
|
||||
type = bool;
|
||||
description = ''
|
||||
Automatically disallow all clients using <literal>#</literal>
|
||||
or <literal>+</literal> in their name/id.
|
||||
description = mdDoc ''
|
||||
Automatically disallow all clients using `#`
|
||||
or `+` in their name/id.
|
||||
'';
|
||||
default = true;
|
||||
};
|
||||
|
||||
options = mkOption {
|
||||
type = attrsOf optionType;
|
||||
description = ''
|
||||
Options for the auth plugin. Each key turns into a <literal>auth_opt_*</literal>
|
||||
description = mdDoc ''
|
||||
Options for the auth plugin. Each key turns into a `auth_opt_*`
|
||||
line in the config.
|
||||
'';
|
||||
default = {};
|
||||
|
@ -239,8 +239,8 @@ let
|
|||
|
||||
address = mkOption {
|
||||
type = nullOr str;
|
||||
description = ''
|
||||
Address to listen on. Listen on <literal>0.0.0.0</literal>/<literal>::</literal>
|
||||
description = mdDoc ''
|
||||
Address to listen on. Listen on `0.0.0.0`/`::`
|
||||
when unset.
|
||||
'';
|
||||
default = null;
|
||||
|
@ -248,10 +248,10 @@ let
|
|||
|
||||
authPlugins = mkOption {
|
||||
type = listOf authPluginOptions;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Authentication plugin to attach to this listener.
|
||||
Refer to the <link xlink:href="https://mosquitto.org/man/mosquitto-conf-5.html">
|
||||
mosquitto.conf documentation</link> for details on authentication plugins.
|
||||
Refer to the [mosquitto.conf documentation](https://mosquitto.org/man/mosquitto-conf-5.html)
|
||||
for details on authentication plugins.
|
||||
'';
|
||||
default = [];
|
||||
};
|
||||
|
@ -472,10 +472,10 @@ let
|
|||
|
||||
includeDirs = mkOption {
|
||||
type = listOf path;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Directories to be scanned for further config files to include.
|
||||
Directories will processed in the order given,
|
||||
<literal>*.conf</literal> files in the directory will be
|
||||
`*.conf` files in the directory will be
|
||||
read in case-sensistive alphabetical order.
|
||||
'';
|
||||
default = [];
|
||||
|
|
|
@ -72,39 +72,39 @@ in {
|
|||
cert = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to the <literal>cert.pem</literal> file, which will be copied into Syncthing's
|
||||
<link linkend="opt-services.syncthing.configDir">configDir</link>.
|
||||
description = mdDoc ''
|
||||
Path to the `cert.pem` file, which will be copied into Syncthing's
|
||||
[configDir](#opt-services.syncthing.configDir).
|
||||
'';
|
||||
};
|
||||
|
||||
key = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to the <literal>key.pem</literal> file, which will be copied into Syncthing's
|
||||
<link linkend="opt-services.syncthing.configDir">configDir</link>.
|
||||
description = mdDoc ''
|
||||
Path to the `key.pem` file, which will be copied into Syncthing's
|
||||
[configDir](#opt-services.syncthing.configDir).
|
||||
'';
|
||||
};
|
||||
|
||||
overrideDevices = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Whether to delete the devices which are not configured via the
|
||||
<link linkend="opt-services.syncthing.devices">devices</link> option.
|
||||
If set to <literal>false</literal>, devices added via the web
|
||||
[devices](#opt-services.syncthing.devices) option.
|
||||
If set to `false`, devices added via the web
|
||||
interface will persist and will have to be deleted manually.
|
||||
'';
|
||||
};
|
||||
|
||||
devices = mkOption {
|
||||
default = {};
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Peers/devices which Syncthing should communicate with.
|
||||
|
||||
Note that you can still add devices manually, but those changes
|
||||
will be reverted on restart if <link linkend="opt-services.syncthing.overrideDevices">overrideDevices</link>
|
||||
will be reverted on restart if [overrideDevices](#opt-services.syncthing.overrideDevices)
|
||||
is enabled.
|
||||
'';
|
||||
example = {
|
||||
|
@ -135,27 +135,27 @@ in {
|
|||
|
||||
id = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
The device ID. See <link xlink:href="https://docs.syncthing.net/dev/device-ids.html"/>.
|
||||
description = mdDoc ''
|
||||
The device ID. See <https://docs.syncthing.net/dev/device-ids.html>.
|
||||
'';
|
||||
};
|
||||
|
||||
introducer = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Whether the device should act as an introducer and be allowed
|
||||
to add folders on this computer.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/introducer.html"/>.
|
||||
See <https://docs.syncthing.net/users/introducer.html>.
|
||||
'';
|
||||
};
|
||||
|
||||
autoAcceptFolders = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Automatically create or share folders that this device advertises at the default path.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/config.html?highlight=autoaccept#config-file-format"/>.
|
||||
See <https://docs.syncthing.net/users/config.html?highlight=autoaccept#config-file-format>.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -166,21 +166,21 @@ in {
|
|||
overrideFolders = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Whether to delete the folders which are not configured via the
|
||||
<link linkend="opt-services.syncthing.folders">folders</link> option.
|
||||
If set to <literal>false</literal>, folders added via the web
|
||||
[folders](#opt-services.syncthing.folders) option.
|
||||
If set to `false`, folders added via the web
|
||||
interface will persist and will have to be deleted manually.
|
||||
'';
|
||||
};
|
||||
|
||||
folders = mkOption {
|
||||
default = {};
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Folders which should be shared by Syncthing.
|
||||
|
||||
Note that you can still add devices manually, but those changes
|
||||
will be reverted on restart if <link linkend="opt-services.syncthing.overrideDevices">overrideDevices</link>
|
||||
will be reverted on restart if [overrideDevices](#opt-services.syncthing.overrideDevices)
|
||||
is enabled.
|
||||
'';
|
||||
example = literalExpression ''
|
||||
|
@ -231,18 +231,18 @@ in {
|
|||
devices = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The devices this folder should be shared with. Each device must
|
||||
be defined in the <link linkend="opt-services.syncthing.devices">devices</link> option.
|
||||
be defined in the [devices](#opt-services.syncthing.devices) option.
|
||||
'';
|
||||
};
|
||||
|
||||
versioning = mkOption {
|
||||
default = null;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
How to keep changed/deleted files with Syncthing.
|
||||
There are 4 different types of versioning with different parameters.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/versioning.html"/>.
|
||||
See <https://docs.syncthing.net/users/versioning.html>.
|
||||
'';
|
||||
example = literalExpression ''
|
||||
[
|
||||
|
@ -284,17 +284,17 @@ in {
|
|||
options = {
|
||||
type = mkOption {
|
||||
type = enum [ "external" "simple" "staggered" "trashcan" ];
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The type of versioning.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/versioning.html"/>.
|
||||
See <https://docs.syncthing.net/users/versioning.html>.
|
||||
'';
|
||||
};
|
||||
params = mkOption {
|
||||
type = attrsOf (either str path);
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The parameters for versioning. Structure depends on
|
||||
<link linkend="opt-services.syncthing.folders._name_.versioning.type">versioning.type</link>.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/versioning.html"/>.
|
||||
[versioning.type](#opt-services.syncthing.folders._name_.versioning.type).
|
||||
See <https://docs.syncthing.net/users/versioning.html>.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
@ -345,9 +345,9 @@ in {
|
|||
ignoreDelete = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Whether to skip deleting files that are deleted by peers.
|
||||
See <link xlink:href="https://docs.syncthing.net/advanced/folder-ignoredelete.html"/>.
|
||||
See <https://docs.syncthing.net/advanced/folder-ignoredelete.html>.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
@ -357,9 +357,9 @@ in {
|
|||
extraOptions = mkOption {
|
||||
type = types.addCheck (pkgs.formats.json {}).type isAttrs;
|
||||
default = {};
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Extra configuration options for Syncthing.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/config.html"/>.
|
||||
See <https://docs.syncthing.net/users/config.html>.
|
||||
'';
|
||||
example = {
|
||||
options.localAnnounceEnabled = false;
|
||||
|
@ -387,9 +387,9 @@ in {
|
|||
type = types.str;
|
||||
default = defaultUser;
|
||||
example = "yourUser";
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The user to run Syncthing as.
|
||||
By default, a user named <literal>${defaultUser}</literal> will be created.
|
||||
By default, a user named `${defaultUser}` will be created.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -397,9 +397,9 @@ in {
|
|||
type = types.str;
|
||||
default = defaultGroup;
|
||||
example = "yourGroup";
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
The group to run Syncthing under.
|
||||
By default, a group named <literal>${defaultGroup}</literal> will be created.
|
||||
By default, a group named `${defaultGroup}` will be created.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -407,11 +407,11 @@ in {
|
|||
type = with types; nullOr str;
|
||||
default = null;
|
||||
example = "socks5://address.com:1234";
|
||||
description = ''
|
||||
description = mdDoc ''
|
||||
Overwrites the all_proxy environment variable for the Syncthing process to
|
||||
the given value. This is normally used to let Syncthing connect
|
||||
through a SOCKS5 proxy server.
|
||||
See <link xlink:href="https://docs.syncthing.net/users/proxying.html"/>.
|
||||
See <https://docs.syncthing.net/users/proxying.html>.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -432,25 +432,13 @@ in {
|
|||
The path where the settings and keys will exist.
|
||||
'';
|
||||
default = cfg.dataDir + optionalString cond "/.config/syncthing";
|
||||
defaultText = literalDocBook ''
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><literal>stateVersion >= 19.03</literal></term>
|
||||
<listitem>
|
||||
<programlisting>
|
||||
config.${opt.dataDir} + "/.config/syncthing"
|
||||
</programlisting>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>otherwise</term>
|
||||
<listitem>
|
||||
<programlisting>
|
||||
config.${opt.dataDir}
|
||||
</programlisting>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
defaultText = literalMD ''
|
||||
* if `stateVersion >= 19.03`:
|
||||
|
||||
config.${opt.dataDir} + "/.config/syncthing"
|
||||
* otherwise:
|
||||
|
||||
config.${opt.dataDir}
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -88,20 +88,22 @@ in
|
|||
# more likely to result in interfaces being configured to
|
||||
# use DHCP when they shouldn't.
|
||||
|
||||
# We set RequiredForOnline to false, because it's fairly
|
||||
# common for such devices to have multiple interfaces and
|
||||
# only one of them to be connected (e.g. a laptop with
|
||||
# ethernet and WiFi interfaces). Maybe one day networkd will
|
||||
# support "any"-style RequiredForOnline...
|
||||
# When wait-online.anyInterface is enabled, RequiredForOnline really
|
||||
# means "sufficient for online", so we can enable it.
|
||||
# Otherwise, don't block the network coming online because of default networks.
|
||||
matchConfig.Name = ["en*" "eth*"];
|
||||
DHCP = "yes";
|
||||
linkConfig.RequiredForOnline = lib.mkDefault false;
|
||||
linkConfig.RequiredForOnline =
|
||||
lib.mkDefault config.systemd.network.wait-online.anyInterface;
|
||||
networkConfig.IPv6PrivacyExtensions = "kernel";
|
||||
};
|
||||
networks."99-wireless-client-dhcp" = lib.mkIf cfg.useDHCP {
|
||||
# Like above, but this is much more likely to be correct.
|
||||
matchConfig.WLANInterfaceType = "station";
|
||||
DHCP = "yes";
|
||||
linkConfig.RequiredForOnline = lib.mkDefault false;
|
||||
linkConfig.RequiredForOnline =
|
||||
lib.mkDefault config.systemd.network.wait-online.anyInterface;
|
||||
networkConfig.IPv6PrivacyExtensions = "kernel";
|
||||
# We also set the route metric to one more than the default
|
||||
# of 1024, so that Ethernet is preferred if both are
|
||||
# available.
|
||||
|
|
|
@ -23,12 +23,12 @@ in
|
|||
default = false;
|
||||
type = types.bool;
|
||||
description =
|
||||
''
|
||||
mdDoc ''
|
||||
Setting this option enables the Xen hypervisor, a
|
||||
virtualisation technology that allows multiple virtual
|
||||
machines, known as <emphasis>domains</emphasis>, to run
|
||||
machines, known as *domains*, to run
|
||||
concurrently on the physical machine. NixOS runs as the
|
||||
privileged <emphasis>Domain 0</emphasis>. This option
|
||||
privileged *Domain 0*. This option
|
||||
requires a reboot to take effect.
|
||||
'';
|
||||
};
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
let
|
||||
pname = "ledger-live-desktop";
|
||||
version = "2.42.0";
|
||||
version = "2.43.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
|
||||
hash = "sha256-LhpZ2aTPT3XJWeWsl7MCbFsgwSqTHfpdRJD9SveIqQg=";
|
||||
url = "https://download.live.ledger.com/${pname}-${version}-linux-x86_64.AppImage";
|
||||
hash = "sha256-qjlTYIe7Ep3maS3+3vjrtrD2T9plELOTddZfaaL2SXI=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
|
|
|
@ -185,20 +185,20 @@ rec {
|
|||
|
||||
anyedittools = buildEclipsePlugin rec {
|
||||
name = "anyedit-${version}";
|
||||
version = "2.7.1.201709201439";
|
||||
version = "2.7.2.202006062100";
|
||||
|
||||
srcFeature = fetchurl {
|
||||
url = "http://andrei.gmxhome.de/eclipse/features/AnyEditTools_${version}.jar";
|
||||
sha256 = "1wqzl7wq85m9gil8rnvly45ps0a2m0svw613pg6djs5i7amhnayh";
|
||||
url = "https://github.com/iloveeclipse/plugins/blob/latest/features/AnyEditTools_${version}.jar";
|
||||
sha256 = "0dwwwvz8by10f5gnws1ahmg02g6v4xbaqcwc0cydvv1h52cyb40g";
|
||||
};
|
||||
|
||||
srcPlugin = fetchurl {
|
||||
url = "https://github.com/iloveeclipse/anyedittools/releases/download/2.7.1/de.loskutov.anyedit.AnyEditTools_${version}.jar";
|
||||
sha256 = "03iyb6j2srq74iigmg7dk098c2svyv0ygdfql5jqr44a32n07k8q";
|
||||
url = "https://github.com/iloveeclipse/plugins/blob/latest/plugins/de.loskutov.anyedit.AnyEditTools_${version}.jar";
|
||||
sha256 = "1ip8dk92ka7bczw1bkbs3zkclmwr28ds5q1wrzh525wb70x8v6fi";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://andrei.gmxhome.de/anyedit/";
|
||||
homepage = "https://github.com/iloveeclipse/plugins";
|
||||
description = "Adds new tools to the context menu of text-based editors";
|
||||
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
||||
license = licenses.epl10;
|
||||
|
@ -231,20 +231,20 @@ rec {
|
|||
|
||||
bytecode-outline = buildEclipsePlugin rec {
|
||||
name = "bytecode-outline-${version}";
|
||||
version = "2.5.0.201711011753-5a57fdf";
|
||||
version = "1.0.1.202006062100";
|
||||
|
||||
srcFeature = fetchurl {
|
||||
url = "http://andrei.gmxhome.de/eclipse/features/de.loskutov.BytecodeOutline.feature_${version}.jar";
|
||||
sha256 = "0yciqhcq0n5i326mwy57r4ywmkz2c2jky7r4pcmznmhvks3z65ps";
|
||||
url = "https://github.com/iloveeclipse/plugins/blob/latest/features/org.eclipse.jdt.bcoview.feature_${version}.jar";
|
||||
sha256 = "0zbcph72lgv8cb5n4phcl3qsybc5q5yviwbv8yjv4v12m4l15wpk";
|
||||
};
|
||||
|
||||
srcPlugin = fetchurl {
|
||||
url = "http://dl.bintray.com/iloveeclipse/plugins/de.loskutov.BytecodeOutline_${version}.jar";
|
||||
sha256 = "1vmsqv32jfl7anvdkw0vir342miv5sr9df7vd1w44lf1yf97vxlw";
|
||||
url = "https://github.com/iloveeclipse/plugins/blob/latest/plugins/org.eclipse.jdt.bcoview_${version}.jar";
|
||||
sha256 = "1bx860k4haqcnhy8825kn4df0pyzd680qbnvjmxfrlxrqhr66fbb";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://andrei.gmxhome.de/bytecode/";
|
||||
homepage = "https://github.com/iloveeclipse/plugins";
|
||||
description = "Shows disassembled bytecode of current java editor or class file";
|
||||
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
||||
license = licenses.bsd2;
|
||||
|
|
|
@ -14,13 +14,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "ghostwriter";
|
||||
version = "2.1.3";
|
||||
version = "2.1.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wereturtle";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-U6evyaC7fLFyKzeDNAI3U3/IcCk8DTY8pb3e3xqSfwk=";
|
||||
hash = "sha256-Vr1w9bAtjQK1ZevFDWQ7xNsUrdv5qrP+JHe1Cuc2CvE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake pkg-config qttools ];
|
||||
|
|
|
@ -7,8 +7,8 @@ in buildVscodeMarketplaceExtension {
|
|||
mktplcRef = {
|
||||
name = "jupyter";
|
||||
publisher = "ms-toolsai";
|
||||
version = "2021.9.1101343141";
|
||||
sha256 = "1c5dgkk5yn6a8k3blbqakqdy8ppwgfbm0ciki7ix696bvlksbpdg";
|
||||
version = "2022.5.1001411044";
|
||||
sha256 = "0z6i7a5sba42yc2inp3yvw6lm6m0kings2iv18h4d6zyhm2lb61p";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchurl, vscode-utils, extractNuGet
|
||||
{ lib, stdenv, fetchurl, fetchpatch, vscode-utils, extractNuGet
|
||||
, icu, curl, openssl, liburcu, lttng-ust, autoPatchelfHook
|
||||
, python3, musl
|
||||
, pythonUseFixed ? false # When `true`, the python default setting will be fixed to specified.
|
||||
|
@ -28,6 +28,17 @@ let
|
|||
url = "https://lttng.org/files/lttng-ust/lttng-ust-${version}.tar.bz2";
|
||||
sha256 = "0ddwk0nl28bkv2xb78gz16a2bvlpfbjmzwfbgwf5p1cq46dyvy86";
|
||||
};
|
||||
patches = (oldAttrs.patches or []) ++ [
|
||||
# Pull upstream fix for -fno-common toolchain. Without it build fails on
|
||||
# upstream gcc-10 as:
|
||||
# ld: libustsnprintf.a(libustsnprintf_la-core.o):snprintf/core.c:23: multiple definition of
|
||||
# `ust_loglevel'; ustctl.o:liblttng-ust-ctl/ustctl.c:80: first defined here
|
||||
(fetchpatch {
|
||||
name = "fno-common.patch";
|
||||
url = "https://github.com/lttng/lttng-ust/commit/21a934df4c683e73e0a66a9afca33573fcf9d789.patch";
|
||||
sha256 = "122lw9rdmr80gmz7814235ibqs47c6pzvg0ryh01805x0cymx74z";
|
||||
})
|
||||
];
|
||||
});
|
||||
|
||||
pythonDefaultsTo = if pythonUseFixed then "${python3}/bin/python" else "python";
|
||||
|
|
|
@ -22,11 +22,11 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "bikeshed";
|
||||
version = "3.5.2";
|
||||
version = "3.7.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-fa9z/y4Enrei8gb48MSS7vzDcttZVO7MJkdEIaDZb0I=";
|
||||
sha256 = "sha256-3fVo+B71SsJs+XF4+FWH2nz0ouTnpC/02fXYr1C9Jrk=";
|
||||
};
|
||||
|
||||
# Relax requirements from "==" to ">="
|
||||
|
|
|
@ -1,25 +1,57 @@
|
|||
{ lib, buildGoPackage, fetchFromGitHub }:
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, installShellFiles
|
||||
}:
|
||||
|
||||
buildGoPackage rec {
|
||||
buildGoModule rec {
|
||||
pname = "brig";
|
||||
version = "0.4.1";
|
||||
rev = "v${version}";
|
||||
|
||||
goPackagePath = "github.com/sahib/brig";
|
||||
subPackages = ["."];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sahib";
|
||||
repo = "brig";
|
||||
inherit rev;
|
||||
rev = "v${version}";
|
||||
sha256 = "0gi39jmnzqrgj146yw8lcmgmvzx7ii1dgw4iqig7kx8c0jiqi600";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
ldflags = [ "-s" "-w" ] ++ (with lib;
|
||||
mapAttrsToList (n: v: "-X github.com/sahib/brig/version.${n}=${v}")
|
||||
(with versions; {
|
||||
Major = major version;
|
||||
Minor = minor version;
|
||||
Patch = patch version;
|
||||
ReleaseType = "";
|
||||
BuildTime = "1970-01-01T00:00:00+0000";
|
||||
GitRev = src.rev;
|
||||
}));
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --cmd brig \
|
||||
--bash $src/autocomplete/bash_autocomplete \
|
||||
--zsh $src/autocomplete/zsh_autocomplete
|
||||
'';
|
||||
|
||||
# There are no tests for the brig executable.
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "File synchronization on top of ipfs with git like interface and FUSE filesystem";
|
||||
homepage = "https://github.com/sahib/brig";
|
||||
description = "File synchronization on top of IPFS with a git-like interface and a FUSE filesystem";
|
||||
longDescription = ''
|
||||
brig is a distributed and secure file synchronization tool with a version
|
||||
control system. It is based on IPFS, written in Go and will feel familiar
|
||||
to git users. Think of it as a swiss army knife for file synchronization
|
||||
or as a peer to peer alternative to Dropbox.
|
||||
'';
|
||||
homepage = "https://brig.readthedocs.io";
|
||||
changelog = "https://github.com/sahib/brig/releases/tag/${src.rev}";
|
||||
license = licenses.agpl3;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ offline ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
{
|
||||
"stable": {
|
||||
"version": "102.0.5005.115",
|
||||
"sha256": "1rj7vy824vn513hiivc90lnxvxyi2s0qkdmfqsdssv9v6zjl079h",
|
||||
"sha256bin64": "0b32sscbjnvr98lk962i9k2srckv2s7fp9pifmsv5jlwndjhzm7y",
|
||||
"version": "103.0.5060.53",
|
||||
"sha256": "00di0nw6h3kb0qp2wp3ny3zsar1ayn1lyx5zr28dl1h5cwaaxjqf",
|
||||
"sha256bin64": "19wxd4jl6fyjpcpy2331ckz6dgzrfj52wvdkp0kb18n0sym17fyn",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2022-04-14",
|
||||
"version": "2022-05-11",
|
||||
"url": "https://gn.googlesource.com/gn",
|
||||
"rev": "fd9f2036f26d83f9fcfe93042fb952e5a7fe2167",
|
||||
"sha256": "0b5xs0chcv3hfhy71rycsmgxnqbm375a333hwav8929k9cbi5p9h"
|
||||
"rev": "578a7fe4c3c6b0bc2ae1fd2e37f14857d09895bf",
|
||||
"sha256": "03dqfrdpf5xxl64dby3qmbwpzdq2gsa8g7xl438py3a629rgxg63"
|
||||
}
|
||||
},
|
||||
"chromedriver": {
|
||||
"version": "102.0.5005.61",
|
||||
"sha256_linux": "0fzmvggb4jkjx8cdanarlqqava8xdf3z5wrx560x7772pgd7q02b",
|
||||
"sha256_darwin": "1y6wq5waivrc5svlwj1svcsh0w72lp68kid52q4qwi044d0l25jg",
|
||||
"sha256_darwin_aarch64": "03xvmix3hkzlvsv1k5yai2hvsvv60in59n3wdwxkb79fdnkpr3i3"
|
||||
"version": "103.0.5060.24",
|
||||
"sha256_linux": "0snsv9n9db314adrr7hhcf49mgrkak6bvq84q9l5yvpl8ihvd0xr",
|
||||
"sha256_darwin": "1rdai2vvnj7156lbbg0zambcz638hq7a3i9npbmlsl826l61m8wm",
|
||||
"sha256_darwin_aarch64": "15f5q9fdqa63mb9yjm4dql69fh6w85f0xj428sv4grfhrn8w0bh3"
|
||||
}
|
||||
},
|
||||
"beta": {
|
||||
|
|
|
@ -13,13 +13,17 @@ stdenv.mkDerivation rec {
|
|||
version
|
||||
;
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
outputs = [ "out" "man" "convert" ];
|
||||
|
||||
WHAT = "cmd/kubectl";
|
||||
WHAT = lib.concatStringsSep " " [
|
||||
"cmd/kubectl"
|
||||
"cmd/kubectl-convert"
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
install -D _output/local/go/bin/kubectl -t $out/bin
|
||||
install -D _output/local/go/bin/kubectl-convert -t $convert/bin
|
||||
|
||||
installManPage docs/man/man1/kubectl*
|
||||
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "signal-cli";
|
||||
version = "0.10.2";
|
||||
version = "0.10.8";
|
||||
|
||||
# Building from source would be preferred, but is much more involved.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
|
||||
sha256 = "sha256-etCO7sy48A7aL3mnXWitClNiw/E122G4eD6YfVmXEPw=";
|
||||
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}-Linux.tar.gz";
|
||||
sha256 = "sha256-vZBFYPim/qBC8hJHvp5gK6P2JxIs9rzR/hIMjW3kNM8=";
|
||||
};
|
||||
|
||||
buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
|
||||
|
|
|
@ -71,7 +71,7 @@ let
|
|||
in
|
||||
env.mkDerivation rec {
|
||||
pname = "telegram-desktop";
|
||||
version = "3.7.3";
|
||||
version = "4.0.0";
|
||||
# Note: Update via pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
|
||||
|
||||
# Telegram-Desktop with submodules
|
||||
|
@ -80,7 +80,7 @@ env.mkDerivation rec {
|
|||
repo = "tdesktop";
|
||||
rev = "v${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "01b3nrhfbxhq4w63nsjnrhyfsdq3fm4l7sfkasbh8ib4qk3c9vwz";
|
||||
sha256 = "16j5rvlqr2bb1dkc7cc920ylhw3sp4qnqvm1aznnnjzcimqb8xf0";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
stdenv.mkDerivation {
|
||||
pname = "tg_owt";
|
||||
version = "unstable-2022-04-14";
|
||||
version = "unstable-2022-05-08";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "desktop-app";
|
||||
repo = "tg_owt";
|
||||
rev = "63a934db1ed212ebf8aaaa20f0010dd7b0d7b396";
|
||||
sha256 = "sha256-WddSsQ9KW1zYyYckzdUOvfFZArYAbyvXmABQNMtK6cM=";
|
||||
rev = "10d5f4bf77333ef6b43516f90d2ce13273255f41";
|
||||
sha256 = "02sky7sx73rj8xm1f70vy94zxaab6qiif742fv0vi4y6pfqrngn7";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -17,14 +17,14 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "warp";
|
||||
version = "0.1.2";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "World";
|
||||
repo = "warp";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-6KWTjfrJr0QkiYHkwy4IKrzQuVUMHc1yILM7ixHBHSQ=";
|
||||
hash = "sha256-AtSU/vN20ePyxhSSl0RB2a4KKpd6PTUCC4n5RIuYVr4=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
|||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${pname}-${version}";
|
||||
hash = "sha256-Xy/tn5iUqwlmztmTmqUbISAk1xu9vkbMk4CvK4j2ttM=";
|
||||
hash = "sha256-DbKoZLB8XIZy5bIOC6blrNa3x4oCVG0Bl9xp6ARgw0c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -5,14 +5,14 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "snakemake";
|
||||
version = "7.8.2";
|
||||
version = "7.8.3";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "snakemake";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-ZJg7yJS4uODnXwyuwE0uY5CNg1CYyGqSIFYPntAlU5k=";
|
||||
hash = "sha256-fYrsum056PCRRp4P5xO6yLfog3WrE/JR1ID7+iV85fc=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenvNoCC, linkFarmFromDrvs, callPackage, nuget-to-nix, writeScript, makeWrapper, fetchurl, xml2, dotnetCorePackages, dotnetPackages, mkNugetSource, mkNugetDeps, cacert }:
|
||||
{ lib, stdenvNoCC, linkFarmFromDrvs, callPackage, nuget-to-nix, writeScript, makeWrapper, fetchurl, xml2, dotnetCorePackages, dotnetPackages, mkNugetSource, mkNugetDeps, cacert, srcOnly }:
|
||||
|
||||
{ name ? "${args.pname}-${args.version}"
|
||||
, pname ? name
|
||||
|
@ -78,7 +78,9 @@ let
|
|||
then linkFarmFromDrvs "${name}-project-references" projectReferences
|
||||
else null;
|
||||
|
||||
_nugetDeps = mkNugetDeps { inherit name; nugetDeps = import nugetDeps; };
|
||||
_nugetDeps = if lib.isDerivation nugetDeps
|
||||
then nugetDeps
|
||||
else mkNugetDeps { inherit name; nugetDeps = import nugetDeps; };
|
||||
|
||||
nuget-source = mkNugetSource {
|
||||
name = "${name}-nuget-source";
|
||||
|
@ -115,7 +117,7 @@ in stdenvNoCC.mkDerivation (args // {
|
|||
export HOME=$(mktemp -d)
|
||||
deps_file="/tmp/${pname}-deps.nix"
|
||||
|
||||
store_src="${args.src}"
|
||||
store_src="${srcOnly args}"
|
||||
src="$(mktemp -d /tmp/${pname}.XXX)"
|
||||
cp -rT "$store_src" "$src"
|
||||
chmod -R +w "$src"
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
{ linkFarmFromDrvs, fetchurl }:
|
||||
{ name, nugetDeps }:
|
||||
linkFarmFromDrvs "${name}-nuget-deps" (nugetDeps {
|
||||
fetchNuGet = { pname, version, sha256 }: fetchurl {
|
||||
linkFarmFromDrvs "${name}-nuget-deps" (nugetDeps {
|
||||
fetchNuGet = { pname, version, sha256
|
||||
, url ? "https://www.nuget.org/api/v2/package/${pname}/${version}" }:
|
||||
fetchurl {
|
||||
name = "${pname}-${version}.nupkg";
|
||||
url = "https://www.nuget.org/api/v2/package/${pname}/${version}";
|
||||
inherit sha256;
|
||||
inherit url sha256;
|
||||
};
|
||||
})
|
||||
})
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
, coreutils
|
||||
, findutils
|
||||
, gnused
|
||||
, jq
|
||||
, curl
|
||||
}:
|
||||
|
||||
runCommandLocal "nuget-to-nix" {
|
||||
|
@ -18,6 +20,8 @@ runCommandLocal "nuget-to-nix" {
|
|||
coreutils
|
||||
findutils
|
||||
gnused
|
||||
jq
|
||||
curl
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -13,6 +13,8 @@ pkgs=$1
|
|||
tmpfile=$(mktemp /tmp/nuget-to-nix.XXXXXX)
|
||||
trap "rm -f ${tmpfile}" EXIT
|
||||
|
||||
declare -A nuget_sources_cache
|
||||
|
||||
echo "{ fetchNuGet }: ["
|
||||
|
||||
while read pkg_spec; do
|
||||
|
@ -21,7 +23,14 @@ while read pkg_spec; do
|
|||
sed -nE 's/.*<id>([^<]*).*/\1/p; s/.*<version>([^<+]*).*/\1/p' "$pkg_spec")
|
||||
pkg_sha256="$(nix-hash --type sha256 --flat --base32 "$(dirname "$pkg_spec")"/*.nupkg)"
|
||||
|
||||
echo " (fetchNuGet { pname = \"$pkg_name\"; version = \"$pkg_version\"; sha256 = \"$pkg_sha256\"; })" >> ${tmpfile}
|
||||
pkg_src="$(jq --raw-output '.source' "$(dirname "$pkg_spec")/.nupkg.metadata")"
|
||||
if [[ $pkg_src != https://api.nuget.org/* ]]; then
|
||||
pkg_source_url="${nuget_sources_cache[$pkg_src]:=$(curl --fail "$pkg_src" | jq --raw-output '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"')}"
|
||||
pkg_url="$pkg_source_url${pkg_name,,}/${pkg_version,,}/${pkg_name,,}.${pkg_version,,}.nupkg"
|
||||
echo " (fetchNuGet { pname = \"$pkg_name\"; version = \"$pkg_version\"; sha256 = \"$pkg_sha256\"; url = \"$pkg_url\"; })" >> ${tmpfile}
|
||||
else
|
||||
echo " (fetchNuGet { pname = \"$pkg_name\"; version = \"$pkg_version\"; sha256 = \"$pkg_sha256\"; })" >> ${tmpfile}
|
||||
fi
|
||||
done < <(find $1 -name '*.nuspec')
|
||||
|
||||
LC_ALL=C sort --ignore-case ${tmpfile}
|
||||
|
|
|
@ -7,25 +7,13 @@
|
|||
#
|
||||
# > srcOnly pkgs.hello
|
||||
#
|
||||
{ name
|
||||
, src
|
||||
, stdenv ? orig.stdenv
|
||||
, patches ? []
|
||||
, # deprecated, use the nativeBuildInputs
|
||||
buildInputs ? []
|
||||
, # used to pass extra unpackers
|
||||
nativeBuildInputs ? []
|
||||
, # needed when passing an existing derivation
|
||||
...
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
inherit
|
||||
buildInputs
|
||||
name
|
||||
nativeBuildInputs
|
||||
patches
|
||||
src
|
||||
;
|
||||
attrs:
|
||||
let
|
||||
args = if builtins.hasAttr "drvAttrs" attrs then attrs.drvAttrs else attrs;
|
||||
name = if builtins.hasAttr "name" args then args.name else "${args.pname}-${args.version}";
|
||||
in
|
||||
stdenv.mkDerivation (args // {
|
||||
name = "${name}-source";
|
||||
installPhase = "cp -r . $out";
|
||||
phases = ["unpackPhase" "patchPhase" "installPhase"];
|
||||
}
|
||||
})
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "papirus-icon-theme";
|
||||
version = "20220302";
|
||||
version = "20220606";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "PapirusDevelopmentTeam";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-X92an2jGRgZ/Q3cr6Q729DA2hs/2y34HoRpB1rxk0hI=";
|
||||
sha256 = "sha256-HJb77ArzwMX9ZYTp0Ffxxtst1/xhPAa+eEP5n950DSs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gtk3 ];
|
||||
|
|
|
@ -19,14 +19,14 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "aisleriot";
|
||||
version = "3.22.23";
|
||||
version = "3.22.24";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "GNOME";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-s7z1bR2ZG3YxJcqNrhH+O5PfGeFoPWeWSI26VCCe33Y=";
|
||||
sha256 = "sha256-3pZYmYCqPULFP5Vi4anY4bnx6QMPstAOKgM1a5Kw/cc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -101,9 +101,12 @@
|
|||
, libXext ? null # Xlib support
|
||||
, libxml2 ? null # libxml2 support, for IMF and DASH demuxers
|
||||
, xz ? null # xz-utils
|
||||
, nvenc ? !stdenv.isDarwin && !stdenv.isAarch64, nv-codec-headers ? null # NVIDIA NVENC support
|
||||
, nv-codec-headers ? null
|
||||
, nvdec ? !stdenv.isDarwin && !stdenv.isAarch64 # NVIDIA NVDEC support
|
||||
, nvenc ? !stdenv.isDarwin && !stdenv.isAarch64 # NVIDIA NVENC support
|
||||
, openal ? null # OpenAL 1.1 capture support
|
||||
#, opencl ? null # OpenCL code
|
||||
, ocl-icd ? null # OpenCL ICD
|
||||
, opencl-headers ? null # OpenCL headers
|
||||
, opencore-amr ? null # AMR-NB de/encoder & AMR-WB decoder
|
||||
#, opencv ? null # Video filtering
|
||||
, openglExtlib ? false, libGL ? null, libGLU ? null # OpenGL rendering
|
||||
|
@ -164,7 +167,7 @@
|
|||
*
|
||||
* Not packaged:
|
||||
* aacplus avisynth cdio-paranoia crystalhd libavc1394 libiec61883
|
||||
* libnut libquvi nvenc opencl oss shine twolame
|
||||
* libnut libquvi nvenc oss shine twolame
|
||||
* utvideo vo-aacenc vo-amrwbenc xvmc zvbi blackmagic-design-desktop-video
|
||||
*
|
||||
* Need fixes to support Darwin:
|
||||
|
@ -375,9 +378,11 @@ stdenv.mkDerivation rec {
|
|||
(enableFeature libxcbshapeExtlib "libxcb-shape")
|
||||
(enableFeature (libxml2 != null) "libxml2")
|
||||
(enableFeature (xz != null) "lzma")
|
||||
(enableFeature nvdec "cuvid")
|
||||
(enableFeature nvdec "nvdec")
|
||||
(enableFeature nvenc "nvenc")
|
||||
(enableFeature (openal != null) "openal")
|
||||
#(enableFeature opencl "opencl")
|
||||
(enableFeature (ocl-icd != null && opencl-headers != null) "opencl")
|
||||
(enableFeature (opencore-amr != null && version3Licensing) "libopencore-amrnb")
|
||||
#(enableFeature (opencv != null) "libopencv")
|
||||
(enableFeature openglExtlib "opengl")
|
||||
|
@ -431,7 +436,7 @@ stdenv.mkDerivation rec {
|
|||
bzip2 celt dav1d fontconfig freetype frei0r fribidi game-music-emu gnutls gsm
|
||||
libjack2 ladspaH lame libaom libass libbluray libbs2b libcaca libdc1394 libmodplug libmysofa
|
||||
libogg libopus librsvg libssh libtheora libvdpau libvorbis libvpx libwebp libX11
|
||||
libxcb libXv libXext libxml2 xz openal openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr
|
||||
libxcb libXv libXext libxml2 xz openal ocl-icd opencl-headers openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr
|
||||
samba SDL2 soxr speex srt vid-stab vo-amrwbenc x264 x265 xavs xvidcore
|
||||
zeromq4 zimg zlib openh264
|
||||
] ++ optionals openglExtlib [ libGL libGLU ]
|
||||
|
@ -441,7 +446,7 @@ stdenv.mkDerivation rec {
|
|||
++ optional (!isAarch64 && libvmaf != null && version3Licensing) libvmaf
|
||||
++ optionals isLinux [ alsa-lib libraw1394 libv4l vulkan-loader glslang ]
|
||||
++ optional (isLinux && !isAarch64 && libmfx != null) libmfx
|
||||
++ optional nvenc nv-codec-headers
|
||||
++ optional (nvdec || nvenc) nv-codec-headers
|
||||
++ optionals stdenv.isDarwin [ Cocoa CoreServices CoreAudio AVFoundation
|
||||
MediaToolbox VideoDecodeAcceleration
|
||||
libiconv ];
|
||||
|
|
|
@ -10,18 +10,24 @@ let param =
|
|||
rev = version;
|
||||
sha256 = "sha256:0asib87c42apwf1ln8541x6i3mvyajqbarifvz11in0mqn5k7g7h";
|
||||
};
|
||||
NIX_CFLAGS_COMPILE = null;
|
||||
} else if check "3.12" then {
|
||||
version = "2.18.5";
|
||||
src = fetchurl {
|
||||
url = "https://forge.ocamlcore.org/frs/download.php/1627/lablgtk-2.18.5.tar.gz";
|
||||
sha256 = "0cyj6sfdvzx8hw7553lhgwc0krlgvlza0ph3dk9gsxy047dm3wib";
|
||||
};
|
||||
# Workaround build failure on -fno-common toolchains like upstream
|
||||
# gcc-10. Otherwise build fails as:
|
||||
# ld: ml_gtktree.o:(.bss+0x0): multiple definition of
|
||||
# `ml_table_extension_events'; ml_gdkpixbuf.o:(.bss+0x0): first defined here
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
} else throw "lablgtk is not available for OCaml ${ocaml.version}";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "lablgtk";
|
||||
inherit (param) version src;
|
||||
inherit (param) version src NIX_CFLAGS_COMPILE;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ocaml findlib ];
|
||||
buildInputs = [ gtk2 libgnomecanvas gtksourceview ];
|
||||
|
|
|
@ -25,7 +25,8 @@ buildPerlPackage rec {
|
|||
meta = with lib; {
|
||||
description = "A lightweight application for searching and streaming videos from YouTube";
|
||||
homepage = "https://github.com/trizen/youtube-viewer";
|
||||
maintainers = with maintainers; [ woffs ];
|
||||
license = with licenses; [ artistic2 ];
|
||||
maintainers = with maintainers; [ woffs ];
|
||||
mainProgram = "youtube-viewer";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@ buildPerlPackage {
|
|||
homepage = "https://github.com/kernkonzept/ham";
|
||||
license = "unknown"; # should be gpl2, but not quite sure
|
||||
maintainers = with lib.maintainers; [ aw ];
|
||||
mainProgram = "ham";
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aocd";
|
||||
version = "1.1.1";
|
||||
version = "1.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wimglenn";
|
||||
repo = "advent-of-code-data";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-wdg6XUkjnAc9yAP7DP0UT6SlQHfj/ymhqzIGNM3fco4=";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-3Cs9tiyWXtyeDXf4FK4gXokCZgtxv4Z5jmSv47t04ag=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
36
pkgs/development/python-modules/archspec/default.nix
Normal file
36
pkgs/development/python-modules/archspec/default.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, poetry-core
|
||||
, click
|
||||
, six
|
||||
, pytestCheckHook
|
||||
, jsonschema
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "archspec";
|
||||
version = "0.1.4";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-ScigEpYNArveqi5tlqiA7LwsVs2RkjT+GChxhSy/ndw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ poetry-core ];
|
||||
propagatedBuildInputs = [ click six ];
|
||||
checkInputs = [ pytestCheckHook jsonschema ];
|
||||
|
||||
pythonImportsCheck = [ "archspec" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A library for detecting, labeling, and reasoning about microarchitectures";
|
||||
homepage = "https://archspec.readthedocs.io/en/latest/";
|
||||
license = with licenses; [ mit asl20 ];
|
||||
maintainers = with maintainers; [ atila ];
|
||||
};
|
||||
}
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aurorapy";
|
||||
version = "0.2.6";
|
||||
version = "0.2.7";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
|||
owner = "energievalsabbia";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-DMlzzLe94dbeHjESmLc045v7vQ//IEsngAv7TeVznHE=";
|
||||
hash = "sha256-rGwfGq3zdoG9NCGqVN29Q4bWApk5B6CRdsW9ctWgOec=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "breathe";
|
||||
version = "4.33.1";
|
||||
version = "4.34.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -17,8 +17,8 @@ buildPythonPackage rec {
|
|||
src = fetchFromGitHub {
|
||||
owner = "michaeljones";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-S4wxlxluRjwlRGCa5Os/J3EpdekI/CEPMWw6j/wlZbw=";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-OOc3XQjqQa0cVpA+/HHco+koL+0whUm5qC7x3xiEdwQ=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -25,14 +25,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "datashader";
|
||||
version = "0.14.0";
|
||||
version = "0.14.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-VKEDOJV2ITO1gxKLbFQbcem0gEd/fzTIo+QSmZVsMGI=";
|
||||
hash = "sha256-VGF6351lVCBat68EY9IY9lHk1hDMcjBcrVdPSliFq4Y=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -11,14 +11,16 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-debug-toolbar";
|
||||
version = "3.2.4";
|
||||
disabled = pythonOlder "3.6";
|
||||
version = "3.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jazzband";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1008yzxxs1cp1wc0xcc9xskc3f7naxc4srv1sikiank1bc3479ha";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-tXQZcQvdGEtcIAtER1s2HSVkGHW0sdrnC+i01+RuSXg=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -42,11 +44,15 @@ buildPythonPackage rec {
|
|||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = {
|
||||
pythonImportsCheck = [
|
||||
"debug_toolbar"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Configurable set of panels that display debug information about the current request/response";
|
||||
homepage = "https://github.com/jazzband/django-debug-toolbar";
|
||||
changelog = "https://django-debug-toolbar.readthedocs.io/en/latest/changes.html";
|
||||
maintainers = with lib.maintainers; [ yuu ];
|
||||
license = lib.licenses.bsd3;
|
||||
};
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ yuu ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "fontParts";
|
||||
version = "0.10.5";
|
||||
version = "0.10.6";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-VriGYcpd2uVDMXeF3DXGKCMRQ9pTjDkrUOt2YSUgd5M=";
|
||||
sha256 = "sha256-mEnQWmzzZ5S8rWzmXuJDjcuoICi6Q+aneX8hGXj11Gg=";
|
||||
extension = "zip";
|
||||
};
|
||||
|
||||
|
|
39
pkgs/development/python-modules/hpccm/default.nix
Normal file
39
pkgs/development/python-modules/hpccm/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
|||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, six
|
||||
, archspec
|
||||
, pytestCheckHook
|
||||
, pytest-xdist
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "hpccm";
|
||||
version = "22.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NVIDIA";
|
||||
repo = "hpc-container-maker";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-zR5+X9BKaUvLPQ05FnfU817esgxVqP8n+wfdWy20BN4=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ six archspec ];
|
||||
checkInputs = [ pytestCheckHook pytest-xdist ];
|
||||
|
||||
disabledTests = [
|
||||
# tests require git
|
||||
"test_commit"
|
||||
"test_tag"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "hpccm" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "HPC Container Maker";
|
||||
homepage = "https://github.com/NVIDIA/hpc-container-maker";
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.x86;
|
||||
maintainers = with maintainers; [ atila ];
|
||||
};
|
||||
}
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "http-sfv";
|
||||
version = "0.9.7";
|
||||
version = "0.9.8";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -16,7 +16,7 @@ buildPythonPackage rec {
|
|||
owner = "mnot";
|
||||
repo = "http_sfv";
|
||||
rev = "http_sfv-${version}";
|
||||
hash = "sha256-VeCDgzpnaN8zkZt7Dy0njU6Dnq1SQTJ95CEYl20QxPQ=";
|
||||
hash = "sha256-zl0Rk4QbzCVmYZ6TnVq+C+oe27Imz5fEQY9Fco5lo5s=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "huggingface-hub";
|
||||
version = "0.7.0";
|
||||
version = "0.8.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -23,7 +23,7 @@ buildPythonPackage rec {
|
|||
owner = "huggingface";
|
||||
repo = "huggingface_hub";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-GUe9+Z23vt3sfpntDnToMY5vWLK6m0zRySSJgMljetg=";
|
||||
hash = "sha256-XerI4dkGsnxbOE1Si70adVIwLIrStZ3HSuQPAQoJtnQ=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, pythonOlder
|
||||
, pytestCheckHook
|
||||
, atpublic
|
||||
|
@ -73,6 +74,14 @@ buildPythonPackage rec {
|
|||
hash = "sha256-7ywDMAHQAl39kiHfxVkq7voUEKqbb9Zq8qlaug7+ukI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://github.com/ibis-project/ibis/commit/a6f64c6c32b49098d39bb205952cbce4bdfea657.patch";
|
||||
sha256 = "sha256-puVMjiJXWk8C9yhuXPD9HKrgUBYcYmUPacQz5YO5xYQ=";
|
||||
includes = [ "pyproject.toml" ];
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ poetry-core ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -9,14 +9,14 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "jsbeautifier";
|
||||
version = "1.14.3";
|
||||
version = "1.14.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-1tV2J8+ezYzZAbnsetSogSeo3t6RAXf6SyGedtAvm9c=";
|
||||
hash = "sha256-cp+mwP6TWyZm8/6tfsV2+RGubo1731ePmy+5K6N3u7M=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -6,14 +6,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "parts";
|
||||
version = "1.3.0";
|
||||
version = "1.4.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-NrhNpWyzqwn1bNnuqmcyKcUED0A4v7VJE4ZlTHFafJY=";
|
||||
sha256 = "sha256-Qs6+3dWG5sjSmeQiL/Q2evn5TImEX0Yk/nCIe5uIMp4=";
|
||||
};
|
||||
|
||||
# Project has no tests
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
buildPythonPackage rec {
|
||||
pname = "pulumi-aws";
|
||||
# Version is independant of pulumi's.
|
||||
version = "5.8.0";
|
||||
version = "5.9.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||
owner = "pulumi";
|
||||
repo = "pulumi-aws";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-exMPHz5sq6AW3hyv+pl66RmHR4nEBIeDu7NPPyH1mig=";
|
||||
hash = "sha256-QEOVI6PvFJ8gf02Hlh42grMt2cObTJsOSmrgmjEZ8Rw=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/sdk/python";
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pysnmp-pysmi";
|
||||
version = "1.1.8";
|
||||
version = "1.1.10";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -17,8 +17,8 @@ buildPythonPackage rec {
|
|||
src = fetchFromGitHub {
|
||||
owner = "pysnmp";
|
||||
repo = "pysmi";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-nsIEZPD7bfbePZukkudP0ZH/m8Be88QkVDM5PdjNHVk=";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-ZfN0nU9IurBEjSZijC2E4UoLIM54mBFgv7rcI1v/a4Q=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -17,14 +17,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "sagemaker";
|
||||
version = "2.95.0";
|
||||
version = "2.96.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-Rx4PrQqWN6Q19ov9Ao5sAGvdgls+y6WjMxP+35dpKsQ=";
|
||||
hash = "sha256-40xvL7EwCDx/zsYHJhczx1MqVVrwQiDhlcv3QrEuv/E=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
62
pkgs/development/python-modules/tabula-py/default.nix
Normal file
62
pkgs/development/python-modules/tabula-py/default.nix
Normal file
|
@ -0,0 +1,62 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, distro
|
||||
, fetchFromGitHub
|
||||
, jdk
|
||||
, numpy
|
||||
, pandas
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
, setuptools-scm
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "tabula-py";
|
||||
version = "2.4.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "chezou";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-cVhtFfzDQvVnDaXOU3dx/m3LENMMG3E+RnFVFCZ0AAc=";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||
|
||||
nativeBuildInputs = [
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
distro
|
||||
numpy
|
||||
pandas
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
jdk
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"tabula"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# Tests require network access
|
||||
"test_convert_remote_file"
|
||||
"test_read_pdf_with_remote_template"
|
||||
"test_read_remote_pdf"
|
||||
"test_read_remote_pdf_with_custom_user_agent"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Module to extract table from PDF into pandas DataFrame";
|
||||
homepage = "https://github.com/chezou/tabula-py";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "tubeup";
|
||||
version = "0.0.31";
|
||||
version = "0.0.32";
|
||||
|
||||
disabled = isPy27;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-hoVmkBrXc2AN5K/vZpxby1U7huhXbfFCiy+2Njt+2Lk=";
|
||||
sha256 = "sha256-YWBp6qXz4hNTBzywBGTXDQSzbWfoEEvJLQL5wy8DQ1g=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
diff --git a/src/hydra-eval-jobs/Makefile.am b/src/hydra-eval-jobs/Makefile.am
|
||||
index 7a4e9c91..90742a30 100644
|
||||
--- a/src/hydra-eval-jobs/Makefile.am
|
||||
+++ b/src/hydra-eval-jobs/Makefile.am
|
||||
@@ -1,5 +1,5 @@
|
||||
bin_PROGRAMS = hydra-eval-jobs
|
||||
|
||||
hydra_eval_jobs_SOURCES = hydra-eval-jobs.cc
|
||||
-hydra_eval_jobs_LDADD = $(NIX_LIBS)
|
||||
+hydra_eval_jobs_LDADD = $(NIX_LIBS) -lnixcmd
|
||||
hydra_eval_jobs_CXXFLAGS = $(NIX_CFLAGS) -I ../libhydra
|
|
@ -126,16 +126,22 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "hydra";
|
||||
version = "2022-05-03";
|
||||
version = "2022-06-16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NixOS";
|
||||
repo = "hydra";
|
||||
rev = "7c133a98f8e689cdc13f8a1adaaa9cd75d039a35";
|
||||
sha256 = "sha256-LqBLIXYssvDoSp2Hf2+vDDB9O8VSF48HAGwL8pI2WZY=";
|
||||
rev = "fb26435fe9a54f13143e69a545b8f3cecffaed96";
|
||||
sha256 = "sha256-kmgN7D7tUC3Ki70D+rdS19PW/lrANlU3tc8gu5gsld0=";
|
||||
};
|
||||
|
||||
patches = [ ./eval.patch ];
|
||||
patches = [
|
||||
# https://github.com/NixOS/hydra/pull/1215: scmdiff: Hardcode --git-dir
|
||||
(fetchpatch {
|
||||
url = "https://github.com/NixOS/hydra/commit/b6ea85a601ddac9cb0716d8cb4d446439fa0778f.patch";
|
||||
sha256 = "sha256-QHjwLYQucdkBs6OsFI8kWo5ugkPXXlTgdbGFxKBHAHo=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[
|
||||
|
|
|
@ -1,74 +0,0 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -I nixpkgs=../../../.. -i bash -p dotnet-sdk_6 jq xmlstarlet curl
|
||||
set -euo pipefail
|
||||
|
||||
cat << EOL
|
||||
{ fetchurl }: [
|
||||
EOL
|
||||
|
||||
# enter a temporary directory containing the source code, copied from the derivation
|
||||
srcdir="$(mktemp -d)"
|
||||
cp -r "$(nix-build -A omnisharp-roslyn.src ../../../..)"/. "$srcdir"
|
||||
rm -f "$srcdir"/global.json
|
||||
|
||||
pushd $srcdir >&2
|
||||
|
||||
tmpdir="$(mktemp -d -p "$(pwd)")" # must be under source root
|
||||
|
||||
mapfile -t repos < <(
|
||||
xmlstarlet sel -t -v 'configuration/packageSources/add/@value' -n NuGet.Config |
|
||||
while IFS= read index
|
||||
do
|
||||
curl --compressed -fsL "$index" | \
|
||||
jq -r '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"'
|
||||
done
|
||||
)
|
||||
|
||||
dotnet msbuild -t:restore -p:Configuration=Release -p:RestorePackagesPath="$tmpdir" \
|
||||
-p:RestoreNoCache=true -p:RestoreForce=true \
|
||||
"$srcdir/src/OmniSharp.Stdio.Driver/OmniSharp.Stdio.Driver.csproj" >&2
|
||||
|
||||
cd "$tmpdir"
|
||||
for package in *
|
||||
do
|
||||
cd "$package"
|
||||
for version in *
|
||||
do
|
||||
found=false
|
||||
for repo in "${repos[@]}"
|
||||
do
|
||||
url="$repo$package/$version/$package.$version.nupkg"
|
||||
if curl -fsL "$url" -o /dev/null
|
||||
then
|
||||
found=true
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if ! $found
|
||||
then
|
||||
echo "couldn't find $package $version" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
sha256=$(nix-prefetch-url "$url" 2>/dev/null)
|
||||
cat << EOL
|
||||
{
|
||||
pname = "$package";
|
||||
version = "$version";
|
||||
src = fetchurl {
|
||||
url = "$url";
|
||||
sha256 = "$sha256";
|
||||
};
|
||||
}
|
||||
EOL
|
||||
done
|
||||
cd ..
|
||||
done
|
||||
cd ..
|
||||
|
||||
cat << EOL
|
||||
]
|
||||
EOL
|
||||
|
||||
popd >&2
|
|
@ -1,68 +1,9 @@
|
|||
{ lib, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchurl
|
||||
, dotnetCorePackages
|
||||
, makeWrapper
|
||||
, unzip
|
||||
, writeText
|
||||
}:
|
||||
{ lib, fetchFromGitHub, buildDotnetModule, dotnetCorePackages }:
|
||||
|
||||
let
|
||||
|
||||
dotnet-sdk = dotnetCorePackages.sdk_6_0;
|
||||
|
||||
deps = map (package: stdenv.mkDerivation (with package; {
|
||||
inherit pname version src;
|
||||
|
||||
buildInputs = [ unzip ];
|
||||
unpackPhase = ''
|
||||
unzip $src
|
||||
chmod -R u+r .
|
||||
function traverseRename () {
|
||||
for e in *
|
||||
do
|
||||
t="$(echo "$e" | sed -e "s/%20/\ /g" -e "s/%2B/+/g")"
|
||||
[ "$t" != "$e" ] && mv -vn "$e" "$t"
|
||||
if [ -d "$t" ]
|
||||
then
|
||||
cd "$t"
|
||||
traverseRename
|
||||
cd ..
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
traverseRename
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
package=$out/lib/dotnet/${pname}/${version}
|
||||
mkdir -p $package
|
||||
cp -r . $package
|
||||
echo "{}" > $package/.nupkg.metadata
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
dontFixup = true;
|
||||
}))
|
||||
(import ./deps.nix { inherit fetchurl; });
|
||||
|
||||
nuget-config = writeText "NuGet.Config" ''
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<packageSources>
|
||||
<clear />
|
||||
</packageSources>
|
||||
<fallbackPackageFolders>
|
||||
${lib.concatStringsSep "\n" (map (package: "<add key=\"${package}\" value=\"${package}/lib/dotnet\"/>") deps)}
|
||||
</fallbackPackageFolders>
|
||||
</configuration>
|
||||
'';
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
sdkVersion = dotnetCorePackages.sdk_6_0.version;
|
||||
in
|
||||
buildDotnetModule rec {
|
||||
pname = "omnisharp-roslyn";
|
||||
version = "1.38.2";
|
||||
|
||||
|
@ -73,36 +14,21 @@ in stdenv.mkDerivation rec {
|
|||
sha256 = "7XJIdotfffu8xo+S6xlc1zcK3oY9QIg1CJhCNJh5co0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper dotnet-sdk ];
|
||||
projectFile = "src/OmniSharp.Stdio.Driver/OmniSharp.Stdio.Driver.csproj";
|
||||
nugetDeps = ./deps.nix;
|
||||
|
||||
dotnetInstallFlags = [ "--framework net6.0" ];
|
||||
|
||||
postPatch = ''
|
||||
# Relax the version requirement
|
||||
substituteInPlace global.json \
|
||||
--replace '6.0.100' '${dotnet-sdk.version}'
|
||||
--replace '6.0.100' '${sdkVersion}'
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
HOME=$(pwd)/fake-home dotnet msbuild -r \
|
||||
-p:Configuration=Release \
|
||||
-p:RestoreConfigFile=${nuget-config} \
|
||||
src/OmniSharp.Stdio.Driver/OmniSharp.Stdio.Driver.csproj
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp -r bin/Release/OmniSharp.Stdio.Driver/net6.0 $out/src
|
||||
|
||||
postFixup = ''
|
||||
# Delete files to mimick hacks in https://github.com/OmniSharp/omnisharp-roslyn/blob/bdc14ca/build.cake#L594
|
||||
rm $out/src/NuGet.*.dll
|
||||
rm $out/src/System.Configuration.ConfigurationManager.dll
|
||||
|
||||
makeWrapper $out/src/OmniSharp $out/bin/omnisharp \
|
||||
--prefix DOTNET_ROOT : ${dotnet-sdk} \
|
||||
--suffix PATH : ${dotnet-sdk}/bin
|
||||
rm $out/lib/omnisharp-roslyn/NuGet.*.dll
|
||||
rm $out/lib/omnisharp-roslyn/System.Configuration.ConfigurationManager.dll
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -114,8 +40,7 @@ in stdenv.mkDerivation rec {
|
|||
binaryNativeCode # dependencies
|
||||
];
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ tesq0 ericdallo corngood ];
|
||||
mainProgram = "omnisharp";
|
||||
maintainers = with maintainers; [ tesq0 ericdallo corngood mdarocha ];
|
||||
mainProgram = "OmniSharp";
|
||||
};
|
||||
|
||||
}
|
||||
|
|
3215
pkgs/development/tools/omnisharp-roslyn/deps.nix
generated
3215
pkgs/development/tools/omnisharp-roslyn/deps.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -1,19 +1,19 @@
|
|||
{ stdenv, lib, fetchurl, unzip }:
|
||||
let
|
||||
# You can check the latest version with `curl -sS https://update.tabnine.com/bundles/version`
|
||||
version = "4.0.60";
|
||||
version = "4.4.40";
|
||||
supportedPlatforms = {
|
||||
"x86_64-linux" = {
|
||||
name = "x86_64-unknown-linux-musl";
|
||||
sha256 = "sha256-v5UxRMDDQxpqIKMe9mYMXcpWiacdXzFfaQ6bgab/WmQ=";
|
||||
sha256 = "sha256-goPPGU4oZWBD/C15rbbX5YMqua16A4MdLhBoC4JxaCI=";
|
||||
};
|
||||
"x86_64-darwin" = {
|
||||
name = "x86_64-apple-darwin";
|
||||
sha256 = "sha256-vFMMzMatuu1TY6dnBXycv0HxvkOj4Axfx8p0VW0hOic=";
|
||||
sha256 = "sha256-CgYHQ91U6K3+kMyOSSia2B7IncR5u0eq9h3EZiBsRdU=";
|
||||
};
|
||||
"aarch64-darwin" = {
|
||||
name = "aarch64-apple-darwin";
|
||||
sha256 = "sha256-DUeDQLtvSY7W2nG60UunluCSO0ijJP2CYxpRIZA4LTE=";
|
||||
sha256 = "sha256-JwX3TdKYmLQO3mWb15Ds/60VAAurGxqfJlMCQqy2pxg=";
|
||||
};
|
||||
};
|
||||
platform =
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "typos";
|
||||
version = "1.5.0";
|
||||
version = "1.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "crate-ci";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-It112+60ze+5rvq3TYlIU+X4lJ4pgdCO7Gb1ADArDvY=";
|
||||
hash = "sha256-CdmzGqqzMvLYAXJ2hpjoOQ8FA53PzGspWdjTFWlshYI=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-yiy1xLxCdjIzqXUlkxWoOZ7cPZzJgDuTUvNHpnnTnwE=";
|
||||
cargoHash = "sha256-X41CSz52S2M4rUsX/GiDGoBpZgUS8UNPvHg7rxbsG0k=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Source code spell checker";
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "pokete";
|
||||
version = "0.7.2";
|
||||
version = "0.7.3";
|
||||
|
||||
format = "other";
|
||||
|
||||
|
@ -15,7 +15,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
owner = "lxgr-linux";
|
||||
repo = "pokete";
|
||||
rev = version;
|
||||
sha256 = "sha256-P6007qY6MsnQH4LGiNPoKCUt3+YI0OinKFdosaj3Wrc=";
|
||||
sha256 = "sha256-sP6fI3F/dQHei1ZJU6gChKxft9fGpTct4EyU3OdBtr4=";
|
||||
};
|
||||
|
||||
pythonPath = with python3.pkgs; [
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
, stdenv
|
||||
, fetchzip
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, SDL2
|
||||
, buildFHSUserEnv
|
||||
, cmake
|
||||
|
@ -139,6 +140,24 @@ in stdenv.mkDerivation rec {
|
|||
chmod +w -R daemon/external_deps/linux64-${binary-deps-version}/
|
||||
'';
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "fix-sdl-eventqueue-part1.patch";
|
||||
url = "https://github.com/DaemonEngine/Daemon/commit/3a978c485f2a7e02c0bc5aeed2c7c4378026cb33.patch";
|
||||
sha256 = "sha256-wVDscGf5zOOmivItNK913l0cfNFR6RpApewrxbmfG8s=";
|
||||
stripLen = 1;
|
||||
extraPrefix = "daemon/";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "fix-sdl-eventqueue-part2.patch";
|
||||
url = "https://github.com/DaemonEngine/Daemon/commit/54f98909c8871a57efb40263b215b81f22010b22.patch";
|
||||
sha256 = "sha256-9qlyJnUEyZgFaclpXthKHm3qq+cW4E4LMOpLukcwBCU=";
|
||||
stripLen = 1;
|
||||
extraPrefix = "daemon/";
|
||||
excludes = [ "*/CMakeLists.txt" ];
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
unvanquished-binary-deps
|
||||
|
|
|
@ -41,7 +41,8 @@ let
|
|||
(whenBetween "5.2" "5.18" yes)
|
||||
];
|
||||
DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT = whenAtLeast "5.18" yes;
|
||||
DEBUG_INFO_BTF = whenAtLeast "5.2" (option yes);
|
||||
# Disabled on 32-bit platforms, fails to build on 5.15+ with `Failed to parse base BTF 'vmlinux': -22`
|
||||
DEBUG_INFO_BTF = whenAtLeast "5.2" (option (if stdenv.hostPlatform.is32bit && (versionAtLeast version "5.15") then no else yes));
|
||||
BPF_LSM = whenAtLeast "5.7" (option yes);
|
||||
DEBUG_KERNEL = yes;
|
||||
DEBUG_DEVRES = no;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args:
|
||||
{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args:
|
||||
|
||||
with lib;
|
||||
|
||||
|
@ -11,8 +11,6 @@ buildLinux (args // rec {
|
|||
# branchVersion needs to be x.y
|
||||
extraMeta.branch = versions.majorMinor version;
|
||||
|
||||
extraMeta.broken = stdenv.isi686;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
|
||||
sha256 = "1700js21yimx8rz4bsglszry564l2ycmmcr36rdqspzbmlx5w8wb";
|
||||
|
|
|
@ -50,25 +50,25 @@ rec {
|
|||
};
|
||||
in valueType;
|
||||
|
||||
generate = name: value: pkgs.runCommand name {
|
||||
nativeBuildInputs = [ pkgs.jq ];
|
||||
generate = name: value: pkgs.callPackage ({ runCommand, jq }: runCommand name {
|
||||
nativeBuildInputs = [ jq ];
|
||||
value = builtins.toJSON value;
|
||||
passAsFile = [ "value" ];
|
||||
} ''
|
||||
jq . "$valuePath"> $out
|
||||
'';
|
||||
'') {};
|
||||
|
||||
};
|
||||
|
||||
yaml = {}: {
|
||||
|
||||
generate = name: value: pkgs.runCommand name {
|
||||
nativeBuildInputs = [ pkgs.remarshal ];
|
||||
value = builtins.toJSON value;
|
||||
passAsFile = [ "value" ];
|
||||
} ''
|
||||
json2yaml "$valuePath" "$out"
|
||||
'';
|
||||
generate = name: value: pkgs.callPackage ({ runCommand, remarshal }: runCommand name {
|
||||
nativeBuildInputs = [ remarshal ];
|
||||
value = builtins.toJSON value;
|
||||
passAsFile = [ "value" ];
|
||||
} ''
|
||||
json2yaml "$valuePath" "$out"
|
||||
'') {};
|
||||
|
||||
type = with lib.types; let
|
||||
valueType = nullOr (oneOf [
|
||||
|
@ -161,13 +161,13 @@ rec {
|
|||
};
|
||||
in valueType;
|
||||
|
||||
generate = name: value: pkgs.runCommand name {
|
||||
nativeBuildInputs = [ pkgs.remarshal ];
|
||||
generate = name: value: pkgs.callPackage ({ runCommand, remarshal }: runCommand name {
|
||||
nativeBuildInputs = [ remarshal ];
|
||||
value = builtins.toJSON value;
|
||||
passAsFile = [ "value" ];
|
||||
} ''
|
||||
json2toml "$valuePath" "$out"
|
||||
'';
|
||||
'') {};
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "Tautulli";
|
||||
version = "2.9.5";
|
||||
version = "2.10.1";
|
||||
format = "other";
|
||||
|
||||
pythonPath = [ setuptools ];
|
||||
|
@ -12,7 +12,7 @@ buildPythonApplication rec {
|
|||
owner = "Tautulli";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-agkYfLWmeQOD+dtoYvTcNPXjfU3kv56c15AFeB7eVTw=";
|
||||
sha256 = "sha256-qM3PiBZD0AfbhIdJFYFUGYhsB4U6ZZEW4i7S9waP7VE=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
|
|
@ -124,7 +124,7 @@ let
|
|||
# InstallCheck phase
|
||||
, doInstallCheck ? config.doCheckByDefault or false
|
||||
|
||||
, # TODO(@Ericson2314): Make always true and remove
|
||||
, # TODO(@Ericson2314): Make always true and remove / resolve #178468
|
||||
strictDeps ? if config.strictDepsByDefault then true else stdenv.hostPlatform != stdenv.buildPlatform
|
||||
|
||||
, enableParallelBuilding ? config.enableParallelBuildingByDefault
|
||||
|
|
25
pkgs/tools/admin/aws-sso-cli/default.nix
Normal file
25
pkgs/tools/admin/aws-sso-cli/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ buildGoModule, fetchFromGitHub, lib }:
|
||||
buildGoModule rec {
|
||||
pname = "aws-sso-cli";
|
||||
version = "1.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "synfinatic";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "9/dZfRmFAyE5NEMmuiVsRvwgqQrTNhXkTR9N0d3zgfk=";
|
||||
};
|
||||
vendorSha256 = "BlSCLvlrKiubMtfFSZ5ppMmL2ZhJcBXxJfeRgMADYB4=";
|
||||
|
||||
postInstall = ''
|
||||
mv $out/bin/cmd $out/bin/aws-sso
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/synfinatic/aws-sso-cli";
|
||||
description = "AWS SSO CLI is a secure replacement for using the aws configure sso wizard";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ devusb ];
|
||||
mainProgram = "aws-sso";
|
||||
};
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
From 0a763a13ef55964395dff60283ececc16f957792 Mon Sep 17 00:00:00 2001
|
||||
From: Derek Kulinski <d@kulinski.us>
|
||||
Date: Sun, 8 May 2022 01:30:39 -0700
|
||||
Subject: [PATCH] Fix Jinja2 3.1.0
|
||||
|
||||
---
|
||||
salt/utils/jinja.py | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py
|
||||
index 0cb70bf64a..322c2f7f46 100644
|
||||
--- a/salt/utils/jinja.py
|
||||
+++ b/salt/utils/jinja.py
|
||||
@@ -25,10 +25,11 @@ import salt.utils.json
|
||||
import salt.utils.stringutils
|
||||
import salt.utils.url
|
||||
import salt.utils.yaml
|
||||
-from jinja2 import BaseLoader, Markup, TemplateNotFound, nodes
|
||||
+from jinja2 import BaseLoader, TemplateNotFound, nodes
|
||||
from jinja2.environment import TemplateModule
|
||||
from jinja2.exceptions import TemplateRuntimeError
|
||||
from jinja2.ext import Extension
|
||||
+from markupsafe import Markup
|
||||
from salt.exceptions import TemplateError
|
||||
from salt.utils.decorators.jinja import jinja_filter, jinja_global, jinja_test
|
||||
from salt.utils.odict import OrderedDict
|
||||
@@ -706,7 +707,7 @@ def method_call(obj, f_name, *f_args, **f_kwargs):
|
||||
return getattr(obj, f_name, lambda *args, **kwargs: None)(*f_args, **f_kwargs)
|
||||
|
||||
|
||||
-@jinja2.contextfunction
|
||||
+@jinja2.pass_context
|
||||
def show_full_context(ctx):
|
||||
return salt.utils.data.simple_types_filter(
|
||||
{key: value for key, value in ctx.items()}
|
||||
--
|
||||
2.35.1
|
||||
|
|
@ -8,11 +8,11 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "salt";
|
||||
version = "3004.1";
|
||||
version = "3004.2";
|
||||
|
||||
src = python3.pkgs.fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-fzRKJDJkik8HjapazMaNzf/hCVzqE+wh5QQTVg8Ewpg=";
|
||||
hash = "sha256-L6ZE9iANTja1WEbLNytuZ7bKD77AaX8djXPncbZl7XA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
|
@ -29,9 +29,6 @@ python3.pkgs.buildPythonApplication rec {
|
|||
|
||||
patches = [
|
||||
./fix-libcrypto-loading.patch
|
||||
|
||||
# Bug in 3004.1: https://github.com/saltstack/salt/pull/61856
|
||||
./0001-Fix-Jinja2-3.1.0.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -1,4 +1,15 @@
|
|||
{ lib, stdenv, fetchgit, libxml2, libxslt, docbook-xsl, docbook_xml_dtd_44, perlPackages, makeWrapper, darwin }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchgit
|
||||
, libxml2
|
||||
, libxslt
|
||||
, docbook-xsl
|
||||
, docbook_xml_dtd_44
|
||||
, perlPackages
|
||||
, makeWrapper
|
||||
, perl # for pod2man
|
||||
, darwin
|
||||
}:
|
||||
|
||||
with lib;
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -15,9 +26,9 @@ stdenv.mkDerivation rec {
|
|||
substituteInPlace Makefile --replace /usr/share/xml/docbook/stylesheet/docbook-xsl ${docbook-xsl}/xml/xsl/docbook
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ libxml2 libxslt docbook-xsl docbook_xml_dtd_44 ]
|
||||
++ optional stdenv.isDarwin darwin.cctools;
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [ makeWrapper perl libxml2 libxslt docbook-xsl docbook_xml_dtd_44 ];
|
||||
buildInputs = optional stdenv.isDarwin darwin.cctools;
|
||||
|
||||
propagatedBuildInputs = with perlPackages; [ perl IPCRun TimeDate TimeDuration ];
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "boundary";
|
||||
version = "0.8.1";
|
||||
version = "0.9.0";
|
||||
|
||||
src =
|
||||
let
|
||||
|
@ -15,10 +15,10 @@ stdenv.mkDerivation rec {
|
|||
aarch64-darwin = "darwin_arm64";
|
||||
};
|
||||
sha256 = selectSystem {
|
||||
x86_64-linux = "sha256-JvWzDdslO1S/nVsIwvFAEhLo/kkHIE1AVwoI980LV4Y=";
|
||||
aarch64-linux = "sha256-IwD7iazbh94c9CZfFsg5t39D8oVWgpfXP1H0/GsTe3Y=";
|
||||
x86_64-darwin = "sha256-SkNSZVdbR6KW/vChDdvHMP+fGQp+mPVxKpEHb7BR4+4=";
|
||||
aarch64-darwin = "sha256-Mx9YhMk5eBgtDiYWPq7jfhrM3TjH0VCUE1QXycz5Cfc=";
|
||||
x86_64-linux = "sha256-+Ewk+tLLwp8xszDS3RadeAOpS261wSG5NC8Gk2OwHiY=";
|
||||
aarch64-linux = "sha256-knEI3a4xL+kAllNColEXBCKhnWoM3Fcso3cwFGaA1fQ=";
|
||||
x86_64-darwin = "sha256-jPdW3ovcb5yhQHJGUEBB2hou2og4tMIGtr5V+W6vNlc=";
|
||||
aarch64-darwin = "sha256-8Fx6lQUHna5J8M67wSzpRmAGZlZbQdpMxgSa6/07g/Y=";
|
||||
};
|
||||
in
|
||||
fetchzip {
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "gitleaks";
|
||||
version = "8.8.7";
|
||||
version = "8.8.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zricethezav";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-C4AbxE37kqO3FJR/J7wP7WcV/mzzLZxPLBku5qgCxV4=";
|
||||
sha256 = "sha256-NMlUk0tofQoJSiv3tHGyyad61624Losyv2YnxngAlrY=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-X8z9iKRR3PptNHwy1clZG8QsClsjbW45nZb2fHGfSYk=";
|
||||
|
|
25
pkgs/tools/security/jsubfinder/default.nix
Normal file
25
pkgs/tools/security/jsubfinder/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "jsubfinder";
|
||||
version = "unstable-2022-05-31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ThreatUnkown";
|
||||
repo = pname;
|
||||
rev = "e21de1ebc174bb69485f1c224e8063c77d87e4ad";
|
||||
hash = "sha256-QjRYJyk0uFGa6FCCYK9SIJhoyam4ALsQJ26DsmbNk8s=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-pr4KkszyzEl+yLJousx29tr7UZDJf0arEfXBb7eumww=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool to search for in Javascript hidden subdomains and secrets";
|
||||
homepage = "https://github.com/ThreatUnkown/jsubfinder";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
40
pkgs/tools/security/osv-detector/default.nix
Normal file
40
pkgs/tools/security/osv-detector/default.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, osv-detector
|
||||
, testers
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "osv-detector";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "G-Rath";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Y/9q4ZJ4vxDitqrM4hGe49iqLYk4ebhTs4jrD7P8fdw=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-KAxpDQIRrLZIOvfW8wf0CV4Fj6l3W6nNZNCH3ZE6yJc=";
|
||||
|
||||
ldflags = [
|
||||
"-w"
|
||||
"-s"
|
||||
"-X main.version=${version}"
|
||||
];
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = osv-detector;
|
||||
command = "osv-detector -version";
|
||||
version = "osv-detector ${version} (unknown, commit none)";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Auditing tool for detecting vulnerabilities";
|
||||
homepage = "https://github.com/G-Rath/osv-detector";
|
||||
changelog = "https://github.com/G-Rath/osv-detector/releases/tag/v${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
|
@ -4,13 +4,13 @@ let
|
|||
generic = { pname, packageToBuild, description }:
|
||||
buildGoModule rec {
|
||||
inherit pname;
|
||||
version = "0.8.0";
|
||||
version = "0.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sigstore";
|
||||
repo = "rekor";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-DLgNHyw8PuQ5OS/5okzLqe5/J2m+JFmV4/xgt5fDNRI=";
|
||||
sha256 = "sha256-QBS9vGKYe7aox0RhgiJ3wp7UmnxAmtox45xKOC0vhj0=";
|
||||
# populate values that require us to use git. By doing this in postFetch we
|
||||
# can delete .git afterwards and maintain better reproducibility of the src.
|
||||
leaveDotGit = true;
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fancy-motd";
|
||||
version = "unstable-2021-07-15";
|
||||
version = "unstable-2022-06-06";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bcyran";
|
||||
repo = pname;
|
||||
rev = "e8d2d2602d9b9fbc132ddc4f9fbf22428d715721";
|
||||
sha256 = "10fxr1grsiwvdc5m2wd4n51lvz0zd4sldg9rzviaim18nw68gdq3";
|
||||
rev = "812c58f04f65053271f866f3797baa2eba7324f5";
|
||||
sha256 = "sha256-O/euB63Dyj+NyfZK42egSEYwZhL8B0jCxSSDYoT4cpo=";
|
||||
};
|
||||
|
||||
buildInputs = [ bc curl figlet fortune gawk iproute2 ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, popt, ncurses, python3, readline, lib }:
|
||||
{ stdenv, fetchurl, popt, ncurses, python39, readline, lib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "OpenIPMI";
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "sha256-9tD9TAp0sF+AkHIp0LJw9UyiMpS8wRl5+LjRJ2Z4aUU=";
|
||||
};
|
||||
|
||||
buildInputs = [ ncurses popt python3 readline ];
|
||||
buildInputs = [ ncurses popt python39 readline ];
|
||||
|
||||
outputs = [ "out" "lib" "dev" "man" ];
|
||||
|
||||
|
|
|
@ -2,23 +2,28 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "tre-command";
|
||||
version = "0.3.6";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dduan";
|
||||
repo = "tre";
|
||||
rev = "v${version}";
|
||||
sha256 = "1r84xzv3p0ml3wac2j7j5fkm7i93v2xvadb8f8al5wi57q39irj7";
|
||||
sha256 = "sha256-JlkONhXMWLzxAf3SYoLkSvXw4bFYBnsCyyj0TUsezwg=";
|
||||
};
|
||||
|
||||
cargoSha256 = "1f7yhnbgccqmz8hpc1xdv97j53far6d5p5gqvq6xxaqq9irf9bgj";
|
||||
cargoSha256 = "sha256-b3fScJMG/CIkMrahbELLQp1otmT5En+p8kQsip05SOc=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
preFixup = ''
|
||||
installManPage manual/tre.1
|
||||
installShellCompletion scripts/completion/tre.{bash,fish}
|
||||
installShellCompletion --zsh scripts/completion/_tre
|
||||
'';
|
||||
|
||||
# this test requires package to be in a git repo to succeed
|
||||
checkFlags = "--skip respect_git_ignore";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tree command, improved";
|
||||
homepage = "https://github.com/dduan/tre";
|
||||
|
|
|
@ -1931,6 +1931,8 @@ with pkgs;
|
|||
|
||||
aws-sam-cli = callPackage ../development/tools/aws-sam-cli { };
|
||||
|
||||
aws-sso-cli = callPackage ../tools/admin/aws-sso-cli { };
|
||||
|
||||
aws-vault = callPackage ../tools/admin/aws-vault { };
|
||||
|
||||
aws-workspaces = callPackage ../applications/networking/remote/aws-workspaces { };
|
||||
|
@ -4155,6 +4157,8 @@ with pkgs;
|
|||
|
||||
ossutil = callPackage ../tools/admin/ossutil {};
|
||||
|
||||
osv-detector = callPackage ../tools/security/osv-detector {};
|
||||
|
||||
pastel = callPackage ../applications/misc/pastel {
|
||||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
@ -7057,6 +7061,8 @@ with pkgs;
|
|||
|
||||
hotspot = libsForQt5.callPackage ../development/tools/analysis/hotspot { };
|
||||
|
||||
hpccm = with python3Packages; toPythonApplication hpccm;
|
||||
|
||||
hping = callPackage ../tools/networking/hping { };
|
||||
|
||||
hqplayer-desktop = libsForQt5.callPackage ../applications/audio/hqplayer-desktop { };
|
||||
|
@ -7451,6 +7457,8 @@ with pkgs;
|
|||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
jsubfinder = callPackage ../tools/security/jsubfinder { };
|
||||
|
||||
jtc = callPackage ../development/tools/jtc { };
|
||||
|
||||
jumpapp = callPackage ../tools/X11/jumpapp {};
|
||||
|
@ -18017,7 +18025,7 @@ with pkgs;
|
|||
|
||||
hwloc = callPackage ../development/libraries/hwloc {};
|
||||
|
||||
hydra_unstable = callPackage ../development/tools/misc/hydra/unstable.nix { nix = nixVersions.nix_2_8; };
|
||||
hydra_unstable = callPackage ../development/tools/misc/hydra/unstable.nix { nix = nixVersions.nix_2_9; };
|
||||
|
||||
hydra-cli = callPackage ../development/tools/misc/hydra-cli { };
|
||||
|
||||
|
@ -27797,6 +27805,7 @@ with pkgs;
|
|||
|
||||
kubernetes = callPackage ../applications/networking/cluster/kubernetes { };
|
||||
kubectl = callPackage ../applications/networking/cluster/kubernetes/kubectl.nix { };
|
||||
kubectl-convert = kubectl.convert;
|
||||
|
||||
kubemqctl = callPackage ../applications/networking/cluster/kubemqctl { };
|
||||
|
||||
|
|
|
@ -571,7 +571,7 @@ in {
|
|||
});
|
||||
|
||||
packageAliases = {
|
||||
linux_default = if stdenv.hostPlatform.is32bit then packages.linux_5_10 else packages.linux_5_15;
|
||||
linux_default = packages.linux_5_15;
|
||||
# Update this when adding the newest kernel major version!
|
||||
linux_latest = packages.linux_5_18;
|
||||
linux_mptcp = packages.linux_mptcp_95;
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -617,6 +617,8 @@ in {
|
|||
|
||||
archinfo = callPackage ../development/python-modules/archinfo { };
|
||||
|
||||
archspec = callPackage ../development/python-modules/archspec { };
|
||||
|
||||
area = callPackage ../development/python-modules/area { };
|
||||
|
||||
arelle = callPackage ../development/python-modules/arelle {
|
||||
|
@ -4017,6 +4019,8 @@ in {
|
|||
|
||||
hpack = callPackage ../development/python-modules/hpack { };
|
||||
|
||||
hpccm = callPackage ../development/python-modules/hpccm { };
|
||||
|
||||
hsaudiotag3k = callPackage ../development/python-modules/hsaudiotag3k { };
|
||||
|
||||
hsluv = callPackage ../development/python-modules/hsluv { };
|
||||
|
@ -10286,6 +10290,8 @@ in {
|
|||
|
||||
tablib = callPackage ../development/python-modules/tablib { };
|
||||
|
||||
tabula-py = callPackage ../development/python-modules/tabula-py { };
|
||||
|
||||
tabulate = callPackage ../development/python-modules/tabulate { };
|
||||
|
||||
tabview = callPackage ../development/python-modules/tabview { };
|
||||
|
|
Loading…
Reference in a new issue