Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2023-07-04 00:15:15 +00:00 committed by GitHub
commit 9393b5fc08
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
256 changed files with 6163 additions and 4766 deletions

View File

@ -39,3 +39,60 @@ d1c1a0c656ccd8bd3b25d3c4287f2d075faf3cf3
# fix indentation in meteor default.nix
a37a6de881ec4c6708e6b88fd16256bbc7f26bbd
# treewide: automatically md-convert option descriptions
2e751c0772b9d48ff6923569adfa661b030ab6a2
# nixos/*: automatically convert option docs
087472b1e5230ffc8ba642b1e4f9218adf4634a2
# nixos/*: automatically convert option descriptions
ef176dcf7e76c3639571d7c6051246c8fbadf12a
# nixos/*: automatically convert option docs to MD
61e93df1891972bae3e0c97a477bd44e8a477aa0
# nixos/*: convert options with admonitions to MD
722b99bc0eb57711c0498a86a3f55e6c69cdb05f
# nixos/*: automatically convert option docs
6039648c50c7c0858b5e506c6298773a98e0f066
# nixos/*: md-convert options with unordered lists
c915b915b5e466a0b0b2af2906cd4d2380b8a1de
# nixos/*: convert options with listings
f2ea09ecbe1fa1da32eaa6e036d64ac324a2986f
# nixos/*: convert straggler options to MD
1d41cff3dc4c8f37bb5841f51fcbff705e169178
# nixos/*: normalize manpage references to single-line form
423545fe4865d126e86721ba30da116e29c65004
# nixos/documentation: split options doc build
fc614c37c653637e5475a0b0a987489b4d1f351d
# nixos/*: convert options with admonitions to MD
722b99bc0eb57711c0498a86a3f55e6c69cdb05f
# nixos/*: convert internal option descriptions to MD
9547123258f69efd92b54763051d6dc7f3bfcaca
# nixos/*: replace </para><para> with double linebreaks
694d5b19d30bf66687b42fb77f43ea7cd1002a62
# treewide: add defaultText for options with simple interpolation defaults
fb0e5be84331188a69b3edd31679ca6576edb75a
# nixos/*: mark pre-existing markdown descriptions as mdDoc
7e7d68a250f75678451cd44f8c3d585bf750461e
# nixos/*: normalize link format
3aebb4a2be8821a6d8a695f0908d8567dc00de31
# nixos/*: replace <code> in option docs with <literal>
16102dce2fbad670bd47dd75c860a8daa5fe47ad
# nixos/*: add trivial defaultText for options with simple defaults
25124556397ba17bfd70297000270de1e6523b0a

11
doc/.gitignore vendored
View File

@ -1,11 +0,0 @@
*.chapter.xml
*.section.xml
.version
functions/library/generated
functions/library/locations.xml
highlightjs
manual-full.xml
out
result
result-*
media

View File

@ -1,114 +0,0 @@
MD_TARGETS=$(addsuffix .xml, $(basename $(shell find . -type f -regex '.*\.md$$' -not -name README.md)))
PANDOC ?= pandoc
pandoc_media_dir = media
# NOTE: Keep in sync with conversion script (/maintainers/scripts/db-to-md.sh).
# TODO: Remove raw-attribute when we can get rid of DocBook altogether.
pandoc_commonmark_enabled_extensions = +attributes+fenced_divs+footnotes+bracketed_spans+definition_lists+pipe_tables+raw_attribute
# Not needed:
# - docbook-reader/citerefentry-to-rst-role.lua (only relevant for DocBook → MarkDown/rST/MyST)
pandoc_flags = --extract-media=$(pandoc_media_dir) \
--lua-filter=$(PANDOC_LUA_FILTERS_DIR)/diagram-generator.lua \
--lua-filter=build-aux/pandoc-filters/myst-reader/roles.lua \
--lua-filter=$(PANDOC_LINK_MANPAGES_FILTER) \
--lua-filter=build-aux/pandoc-filters/docbook-writer/rst-roles.lua \
--lua-filter=build-aux/pandoc-filters/docbook-writer/labelless-link-is-xref.lua \
-f commonmark$(pandoc_commonmark_enabled_extensions)+smart
.PHONY: all
all: validate format out/html/index.html out/epub/manual.epub
.PHONY: render-md
render-md: ${MD_TARGETS}
.PHONY: debug
debug:
nix-shell --run "xmloscopy --docbook5 ./manual.xml ./manual-full.xml"
.PHONY: format
format: doc-support/result
find . -iname '*.xml' -type f | while read f; do \
echo $$f ;\
xmlformat --config-file "doc-support/result/xmlformat.conf" -i $$f ;\
done
.PHONY: fix-misc-xml
fix-misc-xml:
find . -iname '*.xml' -type f \
-exec ../nixos/doc/varlistentry-fixer.rb {} ';'
.PHONY: clean
clean:
rm -f ${MD_TARGETS} doc-support/result .version manual-full.xml functions/library/locations.xml functions/library/generated
rm -rf ./out/ ./highlightjs ./media
.PHONY: validate
validate: manual-full.xml doc-support/result
jing doc-support/result/docbook.rng manual-full.xml
out/html/index.html: doc-support/result manual-full.xml style.css highlightjs
mkdir -p out/html
xsltproc \
--nonet --xinclude \
--output $@ \
doc-support/result/xhtml.xsl \
./manual-full.xml
mkdir -p out/html/highlightjs/
cp -r highlightjs out/html/
cp -r $(pandoc_media_dir) out/html/
cp ./overrides.css out/html/
cp ./style.css out/html/style.css
mkdir -p out/html/images/callouts
cp doc-support/result/xsl/docbook/images/callouts/*.svg out/html/images/callouts/
chmod u+w -R out/html/
out/epub/manual.epub: epub.xml
mkdir -p out/epub/scratch
xsltproc --nonet \
--output out/epub/scratch/ \
doc-support/result/epub.xsl \
./epub.xml
echo "application/epub+zip" > mimetype
zip -0Xq "out/epub/manual.epub" mimetype
rm mimetype
cd "out/epub/scratch/" && zip -Xr9D "../manual.epub" *
rm -rf "out/epub/scratch/"
highlightjs: doc-support/result
mkdir -p highlightjs
cp -r doc-support/result/highlightjs/highlight.pack.js highlightjs/
cp -r doc-support/result/highlightjs/LICENSE highlightjs/
cp -r doc-support/result/highlightjs/mono-blue.css highlightjs/
cp -r doc-support/result/highlightjs/loader.js highlightjs/
manual-full.xml: ${MD_TARGETS} .version functions/library/locations.xml functions/library/generated *.xml **/*.xml **/**/*.xml
xmllint --nonet --xinclude --noxincludenode manual.xml --output manual-full.xml
.version: doc-support/result
ln -rfs ./doc-support/result/version .version
doc-support/result: doc-support/default.nix
(cd doc-support; nix-build)
functions/library/locations.xml: doc-support/result
ln -rfs ./doc-support/result/function-locations.xml functions/library/locations.xml
functions/library/generated: doc-support/result
ln -rfs ./doc-support/result/function-docs functions/library/generated
%.section.xml: %.section.md
$(PANDOC) $^ -t docbook \
$(pandoc_flags) \
-o $@
%.chapter.xml: %.chapter.md
$(PANDOC) $^ -t docbook \
--top-level-division=chapter \
$(pandoc_flags) \
-o $@

View File

@ -1,23 +0,0 @@
--[[
Converts Code AST nodes produced by pandocs DocBook reader
from citerefentry elements into AST for corresponding role
for reStructuredText.
We use subset of MyST syntax (CommonMark with features from rST)
so lets use the rST AST for rST features.
Reference: https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#role-manpage
]]
function Code(elem)
elem.classes = elem.classes:map(function (x)
if x == 'citerefentry' then
elem.attributes['role'] = 'manpage'
return 'interpreted-text'
else
return x
end
end)
return elem
end

View File

@ -1,34 +0,0 @@
--[[
Converts Link AST nodes with empty label to DocBook xref elements.
This is a temporary script to be able use cross-references conveniently
using syntax taken from MyST, while we still use docbook-xsl
for generating the documentation.
Reference: https://myst-parser.readthedocs.io/en/latest/using/syntax.html#targets-and-cross-referencing
]]
local function starts_with(start, str)
return str:sub(1, #start) == start
end
local function escape_xml_arg(arg)
amps = arg:gsub('&', '&amp;')
amps_quotes = amps:gsub('"', '&quot;')
amps_quotes_lt = amps_quotes:gsub('<', '&lt;')
return amps_quotes_lt
end
function Link(elem)
has_no_content = #elem.content == 0
targets_anchor = starts_with('#', elem.target)
has_no_attributes = elem.title == '' and elem.identifier == '' and #elem.classes == 0 and #elem.attributes == 0
if has_no_content and targets_anchor and has_no_attributes then
-- xref expects idref without the pound-sign
target_without_hash = elem.target:sub(2, #elem.target)
return pandoc.RawInline('docbook', '<xref linkend="' .. escape_xml_arg(target_without_hash) .. '" />')
end
end

View File

@ -1,44 +0,0 @@
--[[
Converts AST for reStructuredText roles into corresponding
DocBook elements.
Currently, only a subset of roles is supported.
Reference:
List of roles:
https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html
manpage:
https://tdg.docbook.org/tdg/5.1/citerefentry.html
file:
https://tdg.docbook.org/tdg/5.1/filename.html
]]
function Code(elem)
if elem.classes:includes('interpreted-text') then
local tag = nil
local content = elem.text
if elem.attributes['role'] == 'manpage' then
tag = 'citerefentry'
local title, volnum = content:match('^(.+)%((%w+)%)$')
if title == nil then
-- No volnum in parentheses.
title = content
end
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'
elseif elem.attributes['role'] == 'var' then
tag = 'varname'
elseif elem.attributes['role'] == 'env' then
tag = 'envar'
end
if tag ~= nil then
return pandoc.RawInline('docbook', '<' .. tag .. '>' .. content .. '</' .. tag .. '>')
end
end
end

View File

@ -1,28 +0,0 @@
{ pkgs ? import ../../.. {} }:
let
inherit (pkgs) lib;
manpageURLs = lib.importJSON (pkgs.path + "/doc/manpage-urls.json");
in pkgs.writeText "link-manpages.lua" ''
--[[
Adds links to known man pages that aren't already in a link.
]]
local manpage_urls = {
${lib.concatStringsSep "\n" (lib.mapAttrsToList (man: url:
" [${builtins.toJSON man}] = ${builtins.toJSON url},") manpageURLs)}
}
traverse = 'topdown'
-- Returning false as the second value aborts processing of child elements.
function Link(elem)
return elem, false
end
function Code(elem)
local is_man_role = elem.classes:includes('interpreted-text') and elem.attributes['role'] == 'manpage'
if is_man_role and manpage_urls[elem.text] ~= nil then
return pandoc.Link(elem, manpage_urls[elem.text]), false
end
end
''

View File

@ -1,36 +0,0 @@
--[[
Replaces Str AST nodes containing {role}, followed by a Code node
by a Code node with attrs that would be produced by rST reader
from the role syntax.
This is to emulate MyST syntax in Pandoc.
(MyST is a CommonMark flavour with rST features mixed in.)
Reference: https://myst-parser.readthedocs.io/en/latest/syntax/syntax.html#roles-an-in-line-extension-point
]]
function Inlines(inlines)
for i = #inlines-1,1,-1 do
local first = inlines[i]
local second = inlines[i+1]
local correct_tags = first.tag == 'Str' and second.tag == 'Code'
if correct_tags then
-- docutils supports alphanumeric strings separated by [-._:]
-- We are slightly more liberal for simplicity.
-- Allow preceding punctuation (eg '('), otherwise '({file}`...`)'
-- does not match. Also allow anything followed by a non-breaking space
-- since pandoc emits those after certain abbreviations (e.g. e.g.).
local prefix, role = first.text:match('^(.*){([-._+:%w]+)}$')
if role ~= nil and (prefix == '' or prefix:match("^.*[%p ]$") ~= nil) then
if prefix == '' then
inlines:remove(i)
else
first.text = prefix
end
second.attributes['role'] = role
second.classes:insert('interpreted-text')
end
end
end
return inlines
end

View File

@ -1,25 +0,0 @@
--[[
Replaces Code nodes with attrs that would be produced by rST reader
from the role syntax by a Str AST node containing {role}, followed by a Code node.
This is to emulate MyST syntax in Pandoc.
(MyST is a CommonMark flavour with rST features mixed in.)
Reference: https://myst-parser.readthedocs.io/en/latest/syntax/syntax.html#roles-an-in-line-extension-point
]]
function Code(elem)
local role = elem.attributes['role']
if elem.classes:includes('interpreted-text') and role ~= nil then
elem.classes = elem.classes:filter(function (c)
return c ~= 'interpreted-text'
end)
elem.attributes['role'] = nil
return {
pandoc.Str('{' .. role .. '}'),
elem,
}
end
end

12
doc/builders.md Normal file
View File

@ -0,0 +1,12 @@
# Builders {#part-builders}
```{=include=} chapters
builders/fetchers.chapter.md
builders/trivial-builders.chapter.md
builders/testers.chapter.md
builders/special.md
builders/images.md
hooks/index.md
languages-frameworks/index.md
builders/packages/index.md
```

13
doc/builders/images.md Normal file
View File

@ -0,0 +1,13 @@
# Images {#chap-images}
This chapter describes tools for creating various types of images.
```{=include=} sections
images/appimagetools.section.md
images/dockertools.section.md
images/ocitools.section.md
images/snaptools.section.md
images/portableservice.section.md
images/makediskimage.section.md
images/binarycache.section.md
```

View File

@ -1,15 +0,0 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="chap-images">
<title>Images</title>
<para>
This chapter describes tools for creating various types of images.
</para>
<xi:include href="images/appimagetools.section.xml" />
<xi:include href="images/dockertools.section.xml" />
<xi:include href="images/ocitools.section.xml" />
<xi:include href="images/snaptools.section.xml" />
<xi:include href="images/portableservice.section.xml" />
<xi:include href="images/makediskimage.section.xml" />
<xi:include href="images/binarycache.section.xml" />
</chapter>

View File

@ -1,6 +1,6 @@
# DLib {#dlib}
[DLib](http://dlib.net/) is a modern, C++-based toolkit which provides several machine learning algorithms.
[DLib](http://dlib.net/) is a modern, C++\-based toolkit which provides several machine learning algorithms.
## Compiling without AVX support {#compiling-without-avx-support}

View File

@ -0,0 +1,27 @@
# Packages {#chap-packages}
This chapter contains information about how to use and maintain the Nix expressions for a number of specific packages, such as the Linux kernel or X.org.
```{=include=} sections
citrix.section.md
dlib.section.md
eclipse.section.md
elm.section.md
emacs.section.md
firefox.section.md
fish.section.md
fuse.section.md
ibus.section.md
kakoune.section.md
linux.section.md
locales.section.md
etc-files.section.md
nginx.section.md
opengl.section.md
shell-helpers.section.md
steam.section.md
cataclysm-dda.section.md
urxvt.section.md
weechat.section.md
xorg.section.md
```

View File

@ -1,29 +0,0 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="chap-packages">
<title>Packages</title>
<para>
This chapter contains information about how to use and maintain the Nix expressions for a number of specific packages, such as the Linux kernel or X.org.
</para>
<xi:include href="citrix.section.xml" />
<xi:include href="dlib.section.xml" />
<xi:include href="eclipse.section.xml" />
<xi:include href="elm.section.xml" />
<xi:include href="emacs.section.xml" />
<xi:include href="firefox.section.xml" />
<xi:include href="fish.section.xml" />
<xi:include href="fuse.section.xml" />
<xi:include href="ibus.section.xml" />
<xi:include href="kakoune.section.xml" />
<xi:include href="linux.section.xml" />
<xi:include href="locales.section.xml" />
<xi:include href="etc-files.section.xml" />
<xi:include href="nginx.section.xml" />
<xi:include href="opengl.section.xml" />
<xi:include href="shell-helpers.section.xml" />
<xi:include href="steam.section.xml" />
<xi:include href="cataclysm-dda.section.xml" />
<xi:include href="urxvt.section.xml" />
<xi:include href="weechat.section.xml" />
<xi:include href="xorg.section.xml" />
</chapter>

11
doc/builders/special.md Normal file
View File

@ -0,0 +1,11 @@
# Special builders {#chap-special}
This chapter describes several special builders.
```{=include=} sections
special/fhs-environments.section.md
special/makesetuphook.section.md
special/mkshell.section.md
special/darwin-builder.section.md
special/vm-tools.section.md
```

View File

@ -1,13 +0,0 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="chap-special">
<title>Special builders</title>
<para>
This chapter describes several special builders.
</para>
<xi:include href="special/fhs-environments.section.xml" />
<xi:include href="special/makesetuphook.section.xml" />
<xi:include href="special/mkshell.section.xml" />
<xi:include href="special/darwin-builder.section.xml" />
<xi:include href="special/vm-tools.section.xml" />
</chapter>

10
doc/contributing.md Normal file
View File

@ -0,0 +1,10 @@
# Contributing to Nixpkgs {#part-contributing}
```{=include=} chapters
contributing/quick-start.chapter.md
contributing/coding-conventions.chapter.md
contributing/submitting-changes.chapter.md
contributing/vulnerability-roundup.chapter.md
contributing/reviewing-contributions.chapter.md
contributing/contributing-to-documentation.chapter.md
```

View File

@ -0,0 +1,16 @@
digraph {
"small changes" [shape=none]
"mass-rebuilds and other large changes" [shape=none]
"critical security fixes" [shape=none]
"broken staging-next fixes" [shape=none]
"small changes" -> master
"mass-rebuilds and other large changes" -> staging
"critical security fixes" -> master
"broken staging-next fixes" -> "staging-next"
"staging-next" -> master [color="#E85EB0"] [label="stabilization ends"] [fontcolor="#E85EB0"]
"staging" -> "staging-next" [color="#E85EB0"] [label="stabilization starts"] [fontcolor="#E85EB0"]
master -> "staging-next" -> staging [color="#5F5EE8"] [label="every six hours (GitHub Action)"] [fontcolor="#5F5EE8"]
}

View File

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.1.0 (0)
-->
<!-- Pages: 1 -->
<svg width="743pt" height="291pt"
viewBox="0.00 0.00 743.00 291.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 287)">
<polygon fill="white" stroke="none" points="-4,4 -4,-287 739,-287 739,4 -4,4"/>
<!-- small changes -->
<g id="node1" class="node">
<title>small changes</title>
<text text-anchor="middle" x="59" y="-261.3" font-family="Times,serif" font-size="14.00">small changes</text>
</g>
<!-- master -->
<g id="node5" class="node">
<title>master</title>
<ellipse fill="none" stroke="black" cx="139" cy="-192" rx="43.59" ry="18"/>
<text text-anchor="middle" x="139" y="-188.3" font-family="Times,serif" font-size="14.00">master</text>
</g>
<!-- small changes&#45;&gt;master -->
<g id="edge1" class="edge">
<title>small changes&#45;&gt;master</title>
<path fill="none" stroke="black" d="M77.96,-247.17C88.42,-237.89 101.55,-226.23 112.96,-216.11"/>
<polygon fill="black" stroke="black" points="114.99,-218.99 120.14,-209.74 110.34,-213.76 114.99,-218.99"/>
</g>
<!-- mass&#45;rebuilds and other large changes -->
<g id="node2" class="node">
<title>mass&#45;rebuilds and other large changes</title>
<text text-anchor="middle" x="588" y="-101.3" font-family="Times,serif" font-size="14.00">mass&#45;rebuilds and other large changes</text>
</g>
<!-- staging -->
<g id="node6" class="node">
<title>staging</title>
<ellipse fill="none" stroke="black" cx="438" cy="-18" rx="45.49" ry="18"/>
<text text-anchor="middle" x="438" y="-14.3" font-family="Times,serif" font-size="14.00">staging</text>
</g>
<!-- mass&#45;rebuilds and other large changes&#45;&gt;staging -->
<g id="edge2" class="edge">
<title>mass&#45;rebuilds and other large changes&#45;&gt;staging</title>
<path fill="none" stroke="black" d="M587.48,-87.47C586.26,-76.55 582.89,-62.7 574,-54 553.19,-33.63 522.2,-24.65 495.05,-20.86"/>
<polygon fill="black" stroke="black" points="495.53,-17.39 485.2,-19.71 494.72,-24.35 495.53,-17.39"/>
</g>
<!-- critical security fixes -->
<g id="node3" class="node">
<title>critical security fixes</title>
<text text-anchor="middle" x="219" y="-261.3" font-family="Times,serif" font-size="14.00">critical security fixes</text>
</g>
<!-- critical security fixes&#45;&gt;master -->
<g id="edge3" class="edge">
<title>critical security fixes&#45;&gt;master</title>
<path fill="none" stroke="black" d="M200.04,-247.17C189.58,-237.89 176.45,-226.23 165.04,-216.11"/>
<polygon fill="black" stroke="black" points="167.66,-213.76 157.86,-209.74 163.01,-218.99 167.66,-213.76"/>
</g>
<!-- broken staging&#45;next fixes -->
<g id="node4" class="node">
<title>broken staging&#45;next fixes</title>
<text text-anchor="middle" x="414" y="-188.3" font-family="Times,serif" font-size="14.00">broken staging&#45;next fixes</text>
</g>
<!-- staging&#45;next -->
<g id="node7" class="node">
<title>staging&#45;next</title>
<ellipse fill="none" stroke="black" cx="272" cy="-105" rx="68.79" ry="18"/>
<text text-anchor="middle" x="272" y="-101.3" font-family="Times,serif" font-size="14.00">staging&#45;next</text>
</g>
<!-- broken staging&#45;next fixes&#45;&gt;staging&#45;next -->
<g id="edge4" class="edge">
<title>broken staging&#45;next fixes&#45;&gt;staging&#45;next</title>
<path fill="none" stroke="black" d="M410.2,-174.42C406.88,-163.48 400.98,-149.62 391,-141 377.77,-129.56 360.96,-121.86 344.17,-116.67"/>
<polygon fill="black" stroke="black" points="345.21,-113.33 334.63,-114.02 343.33,-120.07 345.21,-113.33"/>
</g>
<!-- master&#45;&gt;staging&#45;next -->
<g id="edge7" class="edge">
<title>master&#45;&gt;staging&#45;next</title>
<path fill="none" stroke="#5f5ee8" d="M96.55,-187.26C53.21,-181.83 -4.5,-169.14 20,-141 41.99,-115.74 126.36,-108.13 191.48,-106.11"/>
<polygon fill="#5f5ee8" stroke="#5f5ee8" points="191.57,-109.61 201.47,-105.85 191.38,-102.62 191.57,-109.61"/>
<text text-anchor="middle" x="133" y="-144.8" font-family="Times,serif" font-size="14.00" fill="#5f5ee8">every six hours (GitHub Action)</text>
</g>
<!-- staging&#45;&gt;staging&#45;next -->
<g id="edge6" class="edge">
<title>staging&#45;&gt;staging&#45;next</title>
<path fill="none" stroke="#e85eb0" d="M434.55,-36.2C431.48,-47.12 425.89,-60.72 416,-69 397.61,-84.41 373.51,-93.23 350.31,-98.23"/>
<polygon fill="#e85eb0" stroke="#e85eb0" points="349.67,-94.79 340.5,-100.1 350.98,-101.66 349.67,-94.79"/>
<text text-anchor="middle" x="493.5" y="-57.8" font-family="Times,serif" font-size="14.00" fill="#e85eb0">stabilization starts</text>
</g>
<!-- staging&#45;next&#45;&gt;master -->
<g id="edge5" class="edge">
<title>staging&#45;next&#45;&gt;master</title>
<path fill="none" stroke="#e85eb0" d="M268.22,-123.46C265.05,-134.22 259.46,-147.52 250,-156 233.94,-170.4 211.98,-178.87 191.83,-183.86"/>
<polygon fill="#e85eb0" stroke="#e85eb0" points="191.35,-180.38 182.34,-185.96 192.86,-187.22 191.35,-180.38"/>
<text text-anchor="middle" x="323.5" y="-144.8" font-family="Times,serif" font-size="14.00" fill="#e85eb0">stabilization ends</text>
</g>
<!-- staging&#45;next&#45;&gt;staging -->
<g id="edge8" class="edge">
<title>staging&#45;next&#45;&gt;staging</title>
<path fill="none" stroke="#5f5ee8" d="M221.07,-92.46C194.72,-84.14 170.92,-71.32 186,-54 210.78,-25.54 314.74,-19.48 381.15,-18.6"/>
<polygon fill="#5f5ee8" stroke="#5f5ee8" points="380.79,-22.1 390.76,-18.51 380.73,-15.1 380.79,-22.1"/>
<text text-anchor="middle" x="299" y="-57.8" font-family="Times,serif" font-size="14.00" fill="#5f5ee8">every six hours (GitHub Action)</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -214,24 +214,11 @@ The last checkbox is fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blo
- Hydra builds for master and staging should not be used as testing platform, its a build farm for changes that have been already tested.
- When changing the bootloader installation process, extra care must be taken. Grub installations cannot be rolled back, hence changes may break peoples installations forever. For any non-trivial change to the bootloader please file a PR asking for review, especially from \@edolstra.
```{.graphviz caption="Staging workflow"}
digraph {
"small changes" [shape=none]
"mass-rebuilds and other large changes" [shape=none]
"critical security fixes" [shape=none]
"broken staging-next fixes" [shape=none]
"small changes" -> master
"mass-rebuilds and other large changes" -> staging
"critical security fixes" -> master
"broken staging-next fixes" -> "staging-next"
"staging-next" -> master [color="#E85EB0"] [label="stabilization ends"] [fontcolor="#E85EB0"]
"staging" -> "staging-next" [color="#E85EB0"] [label="stabilization starts"] [fontcolor="#E85EB0"]
master -> "staging-next" -> staging [color="#5F5EE8"] [label="every six hours (GitHub Action)"] [fontcolor="#5F5EE8"]
}
```
::: {.figure #fig-staging-workflow}
# Staging workflow
<!-- generated from ./staging-workflow.dot using: dot -Tsvg staging-workflow.dot > staging-workflow.svg -->
![Staging workflow](./staging-workflow.svg)
:::
[This GitHub Action](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/periodic-merge-6h.yml) brings changes from `master` to `staging-next` and from `staging-next` to `staging` every 6 hours; these are the blue arrows in the diagram above. The purple arrows in the diagram above are done manually and much less frequently. You can get an idea of how often these merges occur by looking at the git history.

View File

@ -1,69 +1,145 @@
{ pkgs ? (import ./.. { }), nixpkgs ? { }}:
let
doc-support = import ./doc-support { inherit pkgs nixpkgs; };
inherit (pkgs) lib;
inherit (lib) hasPrefix removePrefix;
lib-docs = import ./doc-support/lib-function-docs.nix {
inherit pkgs nixpkgs;
libsets = [
{ name = "asserts"; description = "assertion functions"; }
{ name = "attrsets"; description = "attribute set functions"; }
{ name = "strings"; description = "string manipulation functions"; }
{ name = "versions"; description = "version string functions"; }
{ name = "trivial"; description = "miscellaneous functions"; }
{ name = "lists"; description = "list manipulation functions"; }
{ name = "debug"; description = "debugging functions"; }
{ name = "options"; description = "NixOS / nixpkgs option handling"; }
{ name = "path"; description = "path functions"; }
{ name = "filesystem"; description = "filesystem functions"; }
{ name = "sources"; description = "source filtering functions"; }
{ name = "cli"; description = "command-line serialization functions"; }
];
};
epub = pkgs.runCommand "manual.epub" {
nativeBuildInputs = with pkgs; [ libxslt zip ];
epub = ''
<book xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5.0"
xml:id="nixpkgs-manual">
<info>
<title>Nixpkgs Manual</title>
<subtitle>Version ${pkgs.lib.version}</subtitle>
</info>
<chapter>
<title>Temporarily unavailable</title>
<para>
The Nixpkgs manual is currently not available in EPUB format,
please use the <link xlink:href="https://nixos.org/nixpkgs/manual">HTML manual</link>
instead.
</para>
<para>
If you've used the EPUB manual in the past and it has been useful to you, please
<link xlink:href="https://github.com/NixOS/nixpkgs/issues/237234">let us know</link>.
</para>
</chapter>
</book>
'';
passAsFile = [ "epub" ];
} ''
mkdir scratch
xsltproc \
--param chapter.autolabel 0 \
--nonet \
--output scratch/ \
${pkgs.docbook_xsl_ns}/xml/xsl/docbook/epub/docbook.xsl \
$epubPath
echo "application/epub+zip" > mimetype
zip -0Xq "$out" mimetype
cd scratch && zip -Xr9D "$out" *
'';
# NB: This file describes the Nixpkgs manual, which happens to use module
# docs infra originally developed for NixOS.
optionsDoc = pkgs.nixosOptionsDoc {
inherit (pkgs.lib.evalModules {
modules = [ ../pkgs/top-level/config.nix ];
class = "nixpkgsConfig";
}) options;
documentType = "none";
transformOptions = opt:
opt // {
declarations =
map
(decl:
if hasPrefix (toString ../..) (toString decl)
then
let subpath = removePrefix "/" (removePrefix (toString ../.) (toString decl));
in { url = "https://github.com/NixOS/nixpkgs/blob/master/${subpath}"; name = subpath; }
else decl)
opt.declarations;
};
};
in pkgs.stdenv.mkDerivation {
name = "nixpkgs-manual";
nativeBuildInputs = with pkgs; [
pandoc
graphviz
libxml2
libxslt
zip
jing
xmlformat
nixos-render-docs
];
src = pkgs.nix-gitignore.gitignoreSource [] ./.;
src = ./.;
postPatch = ''
ln -s ${doc-support} ./doc-support/result
ln -s ${optionsDoc.optionsJSON}/share/doc/nixos/options.json ./config-options.json
'';
epub = ''
<book xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5.0"
xml:id="nixpkgs-manual">
<info>
<title>Nixpkgs Manual</title>
<subtitle>Version ${pkgs.lib.version}</subtitle>
</info>
<chapter>
<title>Temporarily unavailable</title>
<para>
The Nixpkgs manual is currently not available in EPUB format,
please use the <link xlink:href="https://nixos.org/nixpkgs/manual">HTML manual</link>
instead.
</para>
<para>
If you've used the EPUB manual in the past and it has been useful to you, please
<link xlink:href="https://github.com/NixOS/nixpkgs/issues/237234">let us know</link>.
</para>
</chapter>
</book>
'';
passAsFile = [ "epub" ];
buildPhase = ''
cat \
./functions/library.md.in \
${lib-docs}/index.md \
> ./functions/library.md
substitute ./manual.md.in ./manual.md \
--replace '@MANUAL_VERSION@' '${pkgs.lib.version}'
preBuild = ''
cp $epubPath epub.xml
make -j$NIX_BUILD_CORES render-md
mkdir -p out/media
mkdir -p out/highlightjs
cp -t out/highlightjs \
${pkgs.documentation-highlighter}/highlight.pack.js \
${pkgs.documentation-highlighter}/LICENSE \
${pkgs.documentation-highlighter}/mono-blue.css \
${pkgs.documentation-highlighter}/loader.js
cp -t out ./overrides.css ./style.css
nixos-render-docs manual html \
--manpage-urls ./manpage-urls.json \
--revision ${pkgs.lib.trivial.revisionWithDefault (pkgs.rev or "master")} \
--stylesheet style.css \
--stylesheet overrides.css \
--stylesheet highlightjs/mono-blue.css \
--script ./highlightjs/highlight.pack.js \
--script ./highlightjs/loader.js \
--toc-depth 1 \
--section-toc-depth 1 \
manual.md \
out/index.html
'';
installPhase = ''
dest="$out/share/doc/nixpkgs"
mkdir -p "$(dirname "$dest")"
mv out/html "$dest"
mv out "$dest"
mv "$dest/index.html" "$dest/manual.html"
mv out/epub/manual.epub "$dest/nixpkgs-manual.epub"
cp ${epub} "$dest/nixpkgs-manual.epub"
mkdir -p $out/nix-support/
echo "doc manual $dest manual.html" >> $out/nix-support/hydra-build-products
echo "doc manual $dest nixpkgs-manual.epub" >> $out/nix-support/hydra-build-products
'';
# Environment variables
PANDOC_LUA_FILTERS_DIR = "${pkgs.pandoc-lua-filters}/share/pandoc/filters";
PANDOC_LINK_MANPAGES_FILTER = import build-aux/pandoc-filters/link-manpages.nix { inherit pkgs; };
}

View File

@ -1,87 +0,0 @@
{ pkgs ? (import ../.. {}), nixpkgs ? { }}:
let
inherit (pkgs) lib;
inherit (lib) hasPrefix removePrefix;
libsets = [
{ name = "asserts"; description = "assertion functions"; }
{ name = "attrsets"; description = "attribute set functions"; }
{ name = "strings"; description = "string manipulation functions"; }
{ name = "versions"; description = "version string functions"; }
{ name = "trivial"; description = "miscellaneous functions"; }
{ name = "lists"; description = "list manipulation functions"; }
{ name = "debug"; description = "debugging functions"; }
{ name = "options"; description = "NixOS / nixpkgs option handling"; }
{ name = "path"; description = "path functions"; }
{ name = "filesystem"; description = "filesystem functions"; }
{ name = "sources"; description = "source filtering functions"; }
{ name = "cli"; description = "command-line serialization functions"; }
];
locationsXml = import ./lib-function-locations.nix { inherit pkgs nixpkgs libsets; };
functionDocs = import ./lib-function-docs.nix { inherit locationsXml pkgs libsets; };
version = pkgs.lib.version;
epub-xsl = pkgs.writeText "epub.xsl" ''
<?xml version='1.0'?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:import href="${pkgs.docbook_xsl_ns}/xml/xsl/docbook/epub/docbook.xsl" />
<xsl:import href="${./parameters.xml}"/>
</xsl:stylesheet>
'';
xhtml-xsl = pkgs.writeText "xhtml.xsl" ''
<?xml version='1.0'?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:import href="${pkgs.docbook_xsl_ns}/xml/xsl/docbook/xhtml/docbook.xsl" />
<xsl:import href="${./parameters.xml}"/>
</xsl:stylesheet>
'';
# NB: This file describes the Nixpkgs manual, which happens to use module
# docs infra originally developed for NixOS.
optionsDoc = pkgs.nixosOptionsDoc {
inherit (pkgs.lib.evalModules {
modules = [ ../../pkgs/top-level/config.nix ];
class = "nixpkgsConfig";
}) options;
documentType = "none";
transformOptions = opt:
opt // {
declarations =
map
(decl:
if hasPrefix (toString ../..) (toString decl)
then
let subpath = removePrefix "/" (removePrefix (toString ../..) (toString decl));
in { url = "https://github.com/NixOS/nixpkgs/blob/master/${subpath}"; name = subpath; }
else decl)
opt.declarations;
};
};
in pkgs.runCommand "doc-support" {}
''
mkdir result
(
cd result
ln -s ${locationsXml} ./function-locations.xml
ln -s ${functionDocs} ./function-docs
ln -s ${optionsDoc.optionsDocBook} ./config-options.docbook.xml
ln -s ${pkgs.docbook5}/xml/rng/docbook/docbook.rng ./docbook.rng
ln -s ${pkgs.docbook_xsl_ns}/xml/xsl ./xsl
ln -s ${epub-xsl} ./epub.xsl
ln -s ${xhtml-xsl} ./xhtml.xsl
ln -s ${./xmlformat.conf} ./xmlformat.conf
ln -s ${pkgs.documentation-highlighter} ./highlightjs
echo -n "${version}" > ./version
)
mv result $out
''

View File

@ -1,8 +1,13 @@
# Generates the documentation for library functions via nixdoc.
{ pkgs, locationsXml, libsets }:
{ pkgs, nixpkgs, libsets }:
with pkgs; stdenv.mkDerivation {
with pkgs;
let
locationsJSON = import ./lib-function-locations.nix { inherit pkgs nixpkgs libsets; };
in
stdenv.mkDerivation {
name = "nixpkgs-lib-docs";
src = ../../lib;
@ -11,26 +16,23 @@ with pkgs; stdenv.mkDerivation {
function docgen {
# TODO: wrap lib.$1 in <literal>, make nixdoc not escape it
if [[ -e "../lib/$1.nix" ]]; then
nixdoc -c "$1" -d "lib.$1: $2" -f "$1.nix" > "$out/$1.xml"
nixdoc -c "$1" -d "lib.$1: $2" -l ${locationsJSON} -f "$1.nix" > "$out/$1.md"
else
nixdoc -c "$1" -d "lib.$1: $2" -f "$1/default.nix" > "$out/$1.xml"
nixdoc -c "$1" -d "lib.$1: $2" -l ${locationsJSON} -f "$1/default.nix" > "$out/$1.md"
fi
echo "<xi:include href='$1.xml' />" >> "$out/index.xml"
echo "$out/$1.md" >> "$out/index.md"
}
mkdir -p "$out"
cat > "$out/index.xml" << 'EOF'
<?xml version="1.0" encoding="utf-8"?>
<root xmlns:xi="http://www.w3.org/2001/XInclude">
cat > "$out/index.md" << 'EOF'
```{=include=} sections
EOF
${lib.concatMapStrings ({ name, description }: ''
docgen ${name} ${lib.escapeShellArg description}
'') libsets}
echo "</root>" >> "$out/index.xml"
ln -s ${locationsXml} $out/locations.xml
echo '```' >> "$out/index.md"
'';
}

View File

@ -58,28 +58,18 @@ let
[ "-prime" ];
urlPrefix = "https://github.com/NixOS/nixpkgs/blob/${revision}";
xmlstrings = (nixpkgsLib.strings.concatMapStrings
({ name, value }:
''
<section><title>${name}</title>
<para xml:id="${sanitizeId name}">
Located at
<link
xlink:href="${urlPrefix}/${value.file}#L${builtins.toString value.line}">${value.file}:${builtins.toString value.line}</link>
in <literal>&lt;nixpkgs&gt;</literal>.
</para>
</section>
'')
relativeLocs);
jsonLocs = builtins.listToAttrs
(builtins.map
({ name, value }: {
name = sanitizeId name;
value =
let
text = "${value.file}:${builtins.toString value.line}";
target = "${urlPrefix}/${value.file}#L${builtins.toString value.line}";
in
"[${text}](${target}) in `<nixpkgs>`";
})
relativeLocs);
in pkgs.writeText
"locations.xml"
''
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5">
<title>All the locations for every lib function</title>
<para>This file is only for inclusion by other files.</para>
${xmlstrings}
</section>
''
in
pkgs.writeText "locations.json" (builtins.toJSON jsonLocs)

View File

@ -1,19 +0,0 @@
<?xml version='1.0'?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:param name="chapter.autolabel" select="0" />
<xsl:param name="part.autolabel" select="0" />
<xsl:param name="preface.autolabel" select="0" />
<xsl:param name="reference.autolabel" select="0" />
<xsl:param name="section.autolabel" select="0" />
<xsl:param name="html.stylesheet" select="'style.css overrides.css highlightjs/mono-blue.css'" />
<xsl:param name="html.script" select="'./highlightjs/highlight.pack.js ./highlightjs/loader.js'" />
<xsl:param name="xref.with.number.and.title" select="0" />
<xsl:param name="use.id.as.filename" select="1" />
<xsl:param name="generate.section.toc.level" select="1" />
<xsl:param name="toc.section.depth" select="0" />
<xsl:param name="admon.style" select="''" />
<xsl:param name="callout.graphics.extension" select="'.svg'" />
<xsl:param name="generate.consistent.ids" select="1" />
</xsl:stylesheet>

View File

@ -1,72 +0,0 @@
#
# DocBook Configuration file for "xmlformat"
# see http://www.kitebird.com/software/xmlformat/
# 10 Sept. 2004
#
# Only block elements
ackno address appendix article biblioentry bibliography bibliomixed \
biblioset blockquote book bridgehead callout calloutlist caption caution \
chapter chapterinfo classsynopsis cmdsynopsis colophon constraintdef \
constructorsynopsis dedication destructorsynopsis entry epigraph equation example \
figure formalpara funcsynopsis glossary glossdef glossdiv glossentry glosslist \
glosssee glossseealso graphic graphicco highlights imageobjectco important \
index indexdiv indexentry indexinfo info informalequation informalexample \
informalfigure informaltable legalnotice literallayout lot lotentry mediaobject \
mediaobjectco msgmain msgset note orderedlist para part preface primaryie \
procedure qandadiv qandaentry qandaset refentry refentrytitle reference \
refnamediv refsect1 refsect2 refsect3 refsection revhistory screenshot sect1 \
sect2 sect3 sect4 sect5 section seglistitem set setindex sidebar simpara \
simplesect step substeps synopfragment synopsis table term title \
toc variablelist varlistentry warning itemizedlist listitem \
footnote colspec partintro row simplelist subtitle tbody tgroup thead tip
format block
normalize no
#appendix bibliography chapter glossary preface reference
# element-break 3
sect1 section
element-break 2
#
para abstract
format block
entry-break 1
exit-break 1
normalize yes
title
format block
normalize = yes
entry-break = 0
exit-break = 0
# Inline elements
abbrev accel acronym action application citation citebiblioid citerefentry citetitle \
classname co code command computeroutput constant country database date email emphasis \
envar errorcode errorname errortext errortype exceptionname fax filename \
firstname firstterm footnoteref foreignphrase funcdef funcparams function \
glossterm group guibutton guiicon guilabel guimenu guimenuitem guisubmenu \
hardware holder honorific indexterm inlineequation inlinegraphic inlinemediaobject \
interface interfacename \
keycap keycode keycombo keysym lineage link literal manvolnum markup medialabel \
menuchoice methodname methodparam modifier mousebutton olink ooclass ooexception \
oointerface option optional otheraddr othername package paramdef parameter personname \
phrase pob postcode productname prompt property quote refpurpose replaceable \
returnvalue revnumber sgmltag state street structfield structname subscript \
superscript surname symbol systemitem token trademark type ulink userinput \
uri varargs varname void wordasword xref year mathphrase member tag
format inline
programlisting screen
format verbatim
entry-break = 0
exit-break = 0
# This is needed so that the spacing inside those tags is kept.
term cmdsynopsis arg
normalize yes
format block

11
doc/functions.md Normal file
View File

@ -0,0 +1,11 @@
# Functions reference {#chap-functions}
The nixpkgs repository has several utility functions to manipulate Nix expressions.
```{=include=} sections
functions/library.md
functions/generators.section.md
functions/debug.section.md
functions/prefer-remote-fetch.section.md
functions/nix-gitignore.section.md
```

View File

@ -1,14 +0,0 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="chap-functions">
<title>Functions reference</title>
<para>
The nixpkgs repository has several utility functions to manipulate Nix expressions.
</para>
<xi:include href="functions/library.xml" />
<xi:include href="functions/generators.section.xml" />
<xi:include href="functions/debug.section.xml" />
<xi:include href="functions/prefer-remote-fetch.section.xml" />
<xi:include href="functions/nix-gitignore.section.xml" />
</chapter>

View File

@ -0,0 +1,5 @@
# Nixpkgs Library Functions {#sec-functions-library}
Nixpkgs provides a standard library at `pkgs.lib`, or through `import <nixpkgs/lib>`.
<!-- nixdoc-generated documentation must be appended here during build! -->

View File

@ -1,14 +0,0 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="sec-functions-library">
<title>Nixpkgs Library Functions</title>
<para>
Nixpkgs provides a standard library at <varname>pkgs.lib</varname>, or through <code>import &lt;nixpkgs/lib&gt;</code>.
</para>
<!-- The index must have a root element to declare namespaces, but we
don't want to include it, so we select all of its children. -->
<xi:include href="./library/generated/index.xml" xpointer="xpointer(/root/*)" />
</section>

33
doc/hooks/index.md Normal file
View File

@ -0,0 +1,33 @@
# Hooks reference {#chap-hooks}
Nixpkgs has several hook packages that augment the stdenv phases.
The stdenv built-in hooks are documented in [](#ssec-setup-hooks).
```{=include=} sections
autoconf.section.md
automake.section.md
autopatchelf.section.md
breakpoint.section.md
cmake.section.md
gdk-pixbuf.section.md
ghc.section.md
gnome.section.md
installShellFiles.section.md
libiconv.section.md
libxml2.section.md
meson.section.md
ninja.section.md
patch-rc-path-hooks.section.md
perl.section.md
pkg-config.section.md
postgresql-test-hook.section.md
python.section.md
qt-4.section.md
scons.section.md
tetex-tex-live.section.md
unzip.section.md
validatePkgConfig.section.md
waf.section.md
xcbuild.section.md
```

View File

@ -1,37 +0,0 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="chap-hooks">
<title>Hooks reference</title>
<para>
Nixpkgs has several hook packages that augment the stdenv phases.
</para>
<para>
The stdenv built-in hooks are documented in <xref linkend="ssec-setup-hooks"/>.
</para>
<xi:include href="./autoconf.section.xml" />
<xi:include href="./automake.section.xml" />
<xi:include href="./autopatchelf.section.xml" />
<xi:include href="./breakpoint.section.xml" />
<xi:include href="./cmake.section.xml" />
<xi:include href="./gdk-pixbuf.section.xml" />
<xi:include href="./ghc.section.xml" />
<xi:include href="./gnome.section.xml" />
<xi:include href="./installShellFiles.section.xml" />
<xi:include href="./libiconv.section.xml" />
<xi:include href="./libxml2.section.xml" />
<xi:include href="./meson.section.xml" />
<xi:include href="./ninja.section.xml" />
<xi:include href="./patch-rc-path-hooks.section.xml" />
<xi:include href="./perl.section.xml" />
<xi:include href="./pkg-config.section.xml" />
<xi:include href="./postgresql-test-hook.section.xml" />
<xi:include href="./python.section.xml" />
<xi:include href="./qt-4.section.xml" />
<xi:include href="./scons.section.xml" />
<xi:include href="./tetex-tex-live.section.xml" />
<xi:include href="./unzip.section.xml" />
<xi:include href="./validatePkgConfig.section.xml" />
<xi:include href="./waf.section.xml" />
<xi:include href="./xcbuild.section.xml" />
</chapter>

View File

@ -0,0 +1,45 @@
# Languages and frameworks {#chap-language-support}
The [standard build environment](#chap-stdenv) makes it easy to build typical Autotools-based packages with very little code. Any other kind of package can be accommodated by overriding the appropriate phases of `stdenv`. However, there are specialised functions in Nixpkgs to easily build packages for other programming languages, such as Perl or Haskell. These are described in this chapter.
```{=include=} sections
agda.section.md
android.section.md
beam.section.md
bower.section.md
chicken.section.md
coq.section.md
crystal.section.md
cuda.section.md
cuelang.section.md
dart.section.md
dhall.section.md
dotnet.section.md
emscripten.section.md
gnome.section.md
go.section.md
haskell.section.md
hy.section.md
idris.section.md
ios.section.md
java.section.md
javascript.section.md
lisp.section.md
lua.section.md
maven.section.md
nim.section.md
ocaml.section.md
octave.section.md
perl.section.md
php.section.md
pkg-config.section.md
python.section.md
qt.section.md
r.section.md
ruby.section.md
rust.section.md
swift.section.md
texlive.section.md
titanium.section.md
vim.section.md
```

View File

@ -1,47 +0,0 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="chap-language-support">
<title>Languages and frameworks</title>
<para>
The <link linkend="chap-stdenv">standard build environment</link> makes it easy to build typical Autotools-based packages with very little code. Any other kind of package can be accommodated by overriding the appropriate phases of <literal>stdenv</literal>. However, there are specialised functions in Nixpkgs to easily build packages for other programming languages, such as Perl or Haskell. These are described in this chapter.
</para>
<xi:include href="agda.section.xml" />
<xi:include href="android.section.xml" />
<xi:include href="beam.section.xml" />
<xi:include href="bower.section.xml" />
<xi:include href="chicken.section.xml" />
<xi:include href="coq.section.xml" />
<xi:include href="crystal.section.xml" />
<xi:include href="cuda.section.xml" />
<xi:include href="cuelang.section.xml" />
<xi:include href="dart.section.xml" />
<xi:include href="dhall.section.xml" />
<xi:include href="dotnet.section.xml" />
<xi:include href="emscripten.section.xml" />
<xi:include href="gnome.section.xml" />
<xi:include href="go.section.xml" />
<xi:include href="haskell.section.xml" />
<xi:include href="hy.section.xml" />
<xi:include href="idris.section.xml" />
<xi:include href="ios.section.xml" />
<xi:include href="java.section.xml" />
<xi:include href="javascript.section.xml" />
<xi:include href="lisp.section.xml" />
<xi:include href="lua.section.xml" />
<xi:include href="maven.section.xml" />
<xi:include href="nim.section.xml" />
<xi:include href="ocaml.section.xml" />
<xi:include href="octave.section.xml" />
<xi:include href="perl.section.xml" />
<xi:include href="php.section.xml" />
<xi:include href="pkg-config.section.xml" />
<xi:include href="python.section.xml" />
<xi:include href="qt.section.xml" />
<xi:include href="r.section.xml" />
<xi:include href="ruby.section.xml" />
<xi:include href="rust.section.xml" />
<xi:include href="swift.section.xml" />
<xi:include href="texlive.section.xml" />
<xi:include href="titanium.section.xml" />
<xi:include href="vim.section.xml" />
</chapter>

6
doc/lib.md Normal file
View File

@ -0,0 +1,6 @@
# Nixpkgs `lib` {#id-1.4}
```{=include=} chapters
functions.md
module-system/module-system.chapter.md
```

14
doc/manual.md.in Normal file
View File

@ -0,0 +1,14 @@
# Nixpkgs Manual {#nixpkgs-manual}
## Version @MANUAL_VERSION@
```{=include=} chapters
preface.chapter.md
```
```{=include=} parts
using-nixpkgs.md
lib.md
stdenv.md
builders.md
contributing.md
```

View File

@ -1,49 +0,0 @@
<book xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="nixpkgs-manual">
<info>
<title>Nixpkgs Manual</title>
<subtitle>Version <xi:include href=".version" parse="text" />
</subtitle>
</info>
<xi:include href="preface.chapter.xml" />
<part xml:id="part-using">
<title>Using Nixpkgs</title>
<xi:include href="using/configuration.chapter.xml" />
<xi:include href="using/overlays.chapter.xml" />
<xi:include href="using/overrides.chapter.xml" />
</part>
<part>
<title>Nixpkgs <code>lib</code></title>
<xi:include href="functions.xml" />
<xi:include href="module-system/module-system.chapter.xml" />
</part>
<part xml:id="part-stdenv">
<title>Standard environment</title>
<xi:include href="stdenv/stdenv.chapter.xml" />
<xi:include href="stdenv/meta.chapter.xml" />
<xi:include href="stdenv/multiple-output.chapter.xml" />
<xi:include href="stdenv/cross-compilation.chapter.xml" />
<xi:include href="stdenv/platform-notes.chapter.xml" />
</part>
<part xml:id="part-builders">
<title>Builders</title>
<xi:include href="builders/fetchers.chapter.xml" />
<xi:include href="builders/trivial-builders.chapter.xml" />
<xi:include href="builders/testers.chapter.xml" />
<xi:include href="builders/special.xml" />
<xi:include href="builders/images.xml" />
<xi:include href="hooks/index.xml" />
<xi:include href="languages-frameworks/index.xml" />
<xi:include href="builders/packages/index.xml" />
</part>
<part xml:id="part-contributing">
<title>Contributing to Nixpkgs</title>
<xi:include href="contributing/quick-start.chapter.xml" />
<xi:include href="contributing/coding-conventions.chapter.xml" />
<xi:include href="contributing/submitting-changes.chapter.xml" />
<xi:include href="contributing/vulnerability-roundup.chapter.xml" />
<xi:include href="contributing/reviewing-contributions.chapter.xml" />
<xi:include href="contributing/contributing-to-documentation.chapter.xml" />
</part>
</book>

View File

@ -1,3 +0,0 @@
{ pkgs ? import ../. { } }:
(import ./default.nix { }).overrideAttrs
(x: { buildInputs = (x.buildInputs or [ ]) ++ [ pkgs.xmloscopy pkgs.ruby ]; })

9
doc/stdenv.md Normal file
View File

@ -0,0 +1,9 @@
# Standard environment {#part-stdenv}
```{=include=} chapters
stdenv/stdenv.chapter.md
stdenv/meta.chapter.md
stdenv/multiple-output.chapter.md
stdenv/cross-compilation.chapter.md
stdenv/platform-notes.chapter.md
```

View File

@ -464,10 +464,8 @@ The commit object contains the following values:
If the returned array contains exactly one object (e.g. `[{}]`), all values are optional and will be determined automatically.
```{=docbook}
<example>
<title>Standard output of an update script using commit feature</title>
```
::: {.example #var-passthru-updateScript-example-commit}
# Standard output of an update script using commit feature
```json
[
@ -481,10 +479,7 @@ If the returned array contains exactly one object (e.g. `[{}]`), all values are
}
]
```
```{=docbook}
</example>
```
:::
### Recursive attributes in `mkDerivation` {#mkderivation-recursive-attributes}

7
doc/using-nixpkgs.md Normal file
View File

@ -0,0 +1,7 @@
# Using Nixpkgs {#part-using}
```{=include=} chapters
using/configuration.chapter.md
using/overlays.chapter.md
using/overrides.chapter.md
```

View File

@ -185,8 +185,10 @@ You can define a function called `packageOverrides` in your local `~/.config/nix
The following attributes can be passed in [`config`](#chap-packageconfig).
```{=docbook}
<include xmlns="http://www.w3.org/2001/XInclude" href="../doc-support/result/config-options.docbook.xml"/>
```{=include=} options
id-prefix: opt-
list-id: configuration-variable-list
source: ../config-options.json
```

View File

@ -632,6 +632,12 @@
githubId = 43479487;
name = "Titouan Biteau";
};
aldoborrero = {
email = "aldoborrero+nixos@pm.me";
github = "aldoborrero";
githubId = 82811;
name = "Aldo Borrero";
};
aleksana = {
email = "me@aleksana.moe";
github = "Aleksanaa";
@ -4486,12 +4492,6 @@
githubId = 424946;
name = "James Earl Douglas";
};
earthengine = {
email = "earthengine@skiff.com";
github = "ee2500";
githubId = 134107129;
name = "EarthEngine";
};
ebbertd = {
email = "daniel@ebbert.nrw";
github = "ebbertd";
@ -10405,6 +10405,15 @@
githubId = 683809;
name = "Jeffrey Brent McBeth";
};
mccurdyc = {
email = "mccurdyc22@gmail.com";
github = "mccurdyc";
githubId = 5546264;
name = "Colton J. McCurdy";
keys = [{
fingerprint = "D709 03C8 0BE9 ACDC 14F0 3BFB 77BF E531 397E DE94";
}];
};
mcmtroffaes = {
email = "matthias.troffaes@gmail.com";
github = "mcmtroffaes";
@ -14946,6 +14955,11 @@
githubId = 6224096;
name = "Soner Sayakci";
};
shymega = {
name = "Dom Rodriguez";
github = "shymega";
githubId = 1334592;
};
siddharthist = {
email = "langston.barrett@gmail.com";
github = "langston-barrett";

View File

@ -539,14 +539,12 @@ in {
# systemd initrd
boot.initrd.systemd.users = mkOption {
visible = false;
description = ''
Users to include in initrd.
'';
default = {};
type = types.attrsOf (types.submodule ({ name, ... }: {
options.uid = mkOption {
visible = false;
type = types.int;
description = ''
ID of the user in initrd.
@ -555,7 +553,6 @@ in {
default = cfg.users.${name}.uid;
};
options.group = mkOption {
visible = false;
type = types.singleLineStr;
description = ''
Group the user belongs to in initrd.
@ -567,14 +564,12 @@ in {
};
boot.initrd.systemd.groups = mkOption {
visible = false;
description = ''
Groups to include in initrd.
'';
default = {};
type = types.attrsOf (types.submodule ({ name, ... }: {
options.gid = mkOption {
visible = false;
type = types.int;
description = ''
ID of the group in initrd.

View File

@ -55,7 +55,6 @@ in {
intel2200BGFirmware
rtl8192su-firmware
rt5677-firmware
rtl8723bs-firmware
rtl8761b-firmware
rtw88-firmware
zd1211fw

View File

@ -296,7 +296,6 @@ in
packages = mkOption {
type = types.listOf types.path;
default = [];
visible = false;
description = lib.mdDoc ''
*This will only be used when systemd is used in stage 1.*
@ -311,7 +310,6 @@ in
binPackages = mkOption {
type = types.listOf types.path;
default = [];
visible = false;
description = lib.mdDoc ''
*This will only be used when systemd is used in stage 1.*

View File

@ -656,7 +656,7 @@ in
to view the current value. By default it is empty.
Nix configurations defined under {option}`nix.*` will be translated and applied to this
option. In addition, configuration specified in {option}`nix.extraOptions` which will be appended
option. In addition, configuration specified in {option}`nix.extraOptions` will be appended
verbatim to the resulting config file.
'';
};

View File

@ -32,7 +32,25 @@ in
};
settings = mkOption {
type = types.submodule { freeformType = settingsFormat.type; };
type = types.submodule {
freeformType = settingsFormat.type;
options = {
base-url = mkOption {
type = types.str;
example = "https://ntfy.example";
description = lib.mdDoc ''
Public facing base URL of the service
This setting is required for any of the following features:
- attachments (to return a download URL)
- e-mail sending (for the topic URL in the email footer)
- iOS push notifications for self-hosted servers
(to calculate the Firebase poll_request topic)
- Matrix Push Gateway (to validate that the pushkey is correct)
'';
};
};
};
default = { };

View File

@ -22,7 +22,7 @@ in
options = {
boot.initrd.systemd.dbus = {
enable = mkEnableOption (lib.mdDoc "dbus in stage 1") // { visible = false; };
enable = mkEnableOption (lib.mdDoc "dbus in stage 1");
};
services.dbus = {

View File

@ -42,13 +42,15 @@ let
mkdir -p $out
cp -r * $out/
# Link config file
ln -s ${configFile} $out/WEB-INF/config.php
# Link writable templates_c directory
rm -rf $out/WEB-INF/templates_c
ln -s ${cfg.dataDir}/templates_c $out/WEB-INF/templates_c
# ln -fs ${cfg.dataDir}/templates_c $out/WEB-INF/templates_c
# Remove unsafe dbinstall.php
rm -f $out/dbinstall.php
'';
};
in
@ -105,6 +107,41 @@ in
'';
};
hostname = lib.mkOption {
type = lib.types.str;
default =
if config.networking.domain != null
then config.networking.fqdn
else config.networking.hostName;
defaultText = lib.literalExpression "config.networking.fqdn";
example = "anuko.example.com";
description = lib.mdDoc ''
The hostname to serve Anuko Time Tracker on.
'';
};
nginx = lib.mkOption {
type = lib.types.submodule (
lib.recursiveUpdate
(import ../web-servers/nginx/vhost-options.nix { inherit config lib; }) {}
);
default = {};
example = lib.literalExpression ''
{
serverAliases = [
"anuko.''${config.networking.domain}"
];
# To enable encryption and let let's encrypt take care of certificate
forceSSL = true;
enableACME = true;
}
'';
description = lib.mdDoc ''
With this option, you can customize the Nginx virtualHost settings.
'';
};
dataDir = lib.mkOption {
type = lib.types.str;
default = "/var/lib/anuko-time-tracker";
@ -118,15 +155,6 @@ in
description = lib.mdDoc "User under which Anuko Time Tracker runs.";
};
virtualHost = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = "localhost";
description = lib.mdDoc ''
Name of the nginx virtualhost to use and setup. If null, do not setup
any virtualhost.
'';
};
settings = {
multiorgMode = lib.mkOption {
type = lib.types.bool;
@ -286,20 +314,26 @@ in
};
};
services.nginx = lib.mkIf (cfg.virtualHost != null) {
enable = true;
virtualHosts = {
"${cfg.virtualHost}" = {
services.nginx = {
enable = lib.mkDefault true;
recommendedTlsSettings = true;
recommendedOptimisation = true;
recommendedGzipSettings = true;
virtualHosts."${cfg.hostname}" = lib.mkMerge [
cfg.nginx
{
root = lib.mkForce "${package}";
locations."/".index = "index.php";
locations."~ [^/]\\.php(/|$)" = {
extraConfig = ''
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:${config.services.phpfpm.pools.anuko-time-tracker.socket};
'';
locations = {
"/".index = "index.php";
"~ [^/]\\.php(/|$)" = {
extraConfig = ''
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:${config.services.phpfpm.pools.anuko-time-tracker.socket};
'';
};
};
};
};
}
];
};
services.mysql = lib.mkIf cfg.database.createLocally {

View File

@ -77,6 +77,11 @@ in
};
};
secretFile = mkOption {
type = with types; nullOr path;
default = null;
description = lib.mdDoc "Path to a secret JSON configuration file which is merged at runtime with the one generated from {option}`services.lemmy.settings`.";
};
};
config =
@ -197,11 +202,14 @@ in
}
];
systemd.services.lemmy = {
systemd.services.lemmy = let
configFile = settingsFormat.generate "config.hjson" cfg.settings;
mergedConfig = "/run/lemmy/config.hjson";
in {
description = "Lemmy server";
environment = {
LEMMY_CONFIG_LOCATION = "${settingsFormat.generate "config.hjson" cfg.settings}";
LEMMY_CONFIG_LOCATION = if cfg.secretFile == null then configFile else mergedConfig;
LEMMY_DATABASE_URL = if cfg.database.uri != null then cfg.database.uri else (mkIf (cfg.database.createLocally) "postgres:///lemmy?host=/run/postgresql&user=lemmy");
};
@ -216,10 +224,24 @@ in
requires = lib.optionals cfg.database.createLocally [ "postgresql.service" ];
path = mkIf (cfg.secretFile != null) [ pkgs.jq ];
# merge the two configs and prevent others from reading the result
# if somehow $CREDENTIALS_DIRECTORY is not set we fail
preStart = mkIf (cfg.secretFile != null) ''
set -u
umask 177
jq --slurp '.[0] * .[1]' ${lib.escapeShellArg configFile} "$CREDENTIALS_DIRECTORY/secretFile" > ${lib.escapeShellArg mergedConfig}
'';
serviceConfig = {
DynamicUser = true;
RuntimeDirectory = "lemmy";
ExecStart = "${cfg.server.package}/bin/lemmy_server";
LoadCredential = mkIf (cfg.secretFile != null) "secretFile:${toString cfg.secretFile}";
PrivateTmp = true;
MemoryDenyWriteExecute = true;
NoNewPrivileges = true;
};
};

View File

@ -1,8 +1,12 @@
{ config, lib, pkgs, ... }:
{
options.boot.initrd.services.bcache.enable = (lib.mkEnableOption (lib.mdDoc "bcache support in the initrd")) // {
visible = false; # only works with systemd stage 1
options.boot.initrd.services.bcache.enable = lib.mkEnableOption (lib.mdDoc "bcache support in the initrd") // {
description = lib.mdDoc ''
*This will only be used when systemd is used in stage 1.*
Whether to enable bcache support in the initrd.
'';
};
config = {

View File

@ -25,8 +25,12 @@ in {
boot.vdo.enable = mkEnableOption (lib.mdDoc "support for booting from VDOLVs");
};
options.boot.initrd.services.lvm.enable = (mkEnableOption (lib.mdDoc "enable booting from LVM2 in the initrd")) // {
visible = false;
options.boot.initrd.services.lvm.enable = mkEnableOption (lib.mdDoc "booting from LVM2 in the initrd") // {
description = lib.mdDoc ''
*This will only be used when systemd is used in stage 1.*
Whether to enable booting from LVM2 in the initrd.
'';
};
config = mkMerge [

View File

@ -5,8 +5,12 @@
in {
options.boot.initrd.services.swraid = {
enable = (lib.mkEnableOption (lib.mdDoc "swraid support using mdadm")) // {
visible = false; # only has effect when the new stage 1 is in place
enable = lib.mkEnableOption (lib.mdDoc "swraid support using mdadm") // {
description = ''
*This will only be used when systemd is used in stage 1.*
Whether to enable swraid support using mdadm.
'';
};
mdadmConf = lib.mkOption {

View File

@ -22,16 +22,24 @@ in
# Without setup, the /feeds/* and /nodeinfo/* API endpoints won't return 200
setup = {
admin_username = "mightyiam";
admin_password = "ThisIsWhatIUseEverywhereTryIt";
site_name = "Lemmy FTW";
admin_email = "mightyiam@example.com";
};
# https://github.com/LemmyNet/lemmy/blob/50efb1d519c63a7007a07f11cc8a11487703c70d/crates/utils/src/settings/mod.rs#L52
database.uri = "postgres:///lemmy?host=/run/postgresql&user=lemmy";
};
secretFile = /etc/lemmy-config.hjson;
caddy.enable = true;
};
environment.etc."lemmy-config.hjson".text = ''
{
"setup": {
"admin_password": "ThisIsWhatIUseEverywhereTryIt"
}
}
'';
networking.firewall.allowedTCPPorts = [ 80 ];
# pict-rs seems to need more than 1025114112 bytes
@ -42,8 +50,14 @@ in
testScript = ''
server = ${lemmyNodeName}
with subtest("the backend starts and responds"):
with subtest("the merged config is secure"):
server.wait_for_unit("lemmy.service")
config_permissions = server.succeed("stat --format %A /run/lemmy/config.hjson").rstrip()
assert config_permissions == "-rw-------", f"merged config permissions {config_permissions} are insecure"
directory_permissions = server.succeed("stat --format %A /run/lemmy").rstrip()
assert directory_permissions[5] == directory_permissions[8] == "-", "merged config can be replaced"
with subtest("the backend starts and responds"):
server.wait_for_open_port(${toString backendPort})
server.succeed("curl --fail localhost:${toString backendPort}/api/v3/site")

View File

@ -32,17 +32,18 @@
, wrapGAppsHook4
, zam-plugins
, zita-convolver
, soundtouch
}:
stdenv.mkDerivation rec {
pname = "easyeffects";
version = "7.0.4";
version = "7.0.5";
src = fetchFromGitHub {
owner = "wwmm";
repo = "easyeffects";
rev = "v${version}";
hash = "sha256-JaqwzCWVnvFzzGHnmzYwe3occ9iw7s9xCH54eVKEuOs=";
hash = "sha256-Z/0O8dVZ3J901OdOc1wF1XibNE/33b8oSqY6RKPDfzg=";
};
nativeBuildInputs = [
@ -73,6 +74,7 @@ stdenv.mkDerivation rec {
pipewire
rnnoise
rubberband
soundtouch
speexdsp
tbb
zita-convolver

View File

@ -3,28 +3,38 @@
, stdenv
, fetchFromGitHub
, nix-update-script
, qmake
, pkg-config
, qtbase
, qtmultimedia
, libvorbis
, pkg-config
, qmake
, qtbase
, qttools
, qtmultimedia
, rtmidi
}:
mkDerivation rec {
pname = "ptcollab";
version = "0.6.4.5";
version = "0.6.4.6";
src = fetchFromGitHub {
owner = "yuxshao";
repo = "ptcollab";
rev = "v${version}";
sha256 = "sha256-O7CNPMS0eRcqt2xAtyEFyLSV8U2xbxuV1DpBxZAFwQs=";
hash = "sha256-G0QQV0mvrrBAC2LSy45/NnEbHHA8/E0SZKJXvuVidRE=";
};
nativeBuildInputs = [ qmake pkg-config ];
nativeBuildInputs = [
pkg-config
qmake
qttools
];
buildInputs = [ qtbase qtmultimedia libvorbis rtmidi ];
buildInputs = [
libvorbis
qtbase
qtmultimedia
rtmidi
];
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
# Move appbundles to Applications before wrapping happens

View File

@ -0,0 +1,62 @@
{ lib
, stdenv
, fetchFromGitLab
, fftw
, liblo
, libsndfile
, makeDesktopItem
, portaudio
, qmake
, qtbase
, wrapQtAppsHook
}:
stdenv.mkDerivation rec {
pname = "samplebrain";
version = "0.18.5";
src = fetchFromGitLab {
owner = "then-try-this";
repo = "samplebrain";
rev = "v${version}_release";
hash = "sha256-/pMHmwly5Dar7w/ZawvR3cWQHw385GQv/Wsl1E2w5p4=";
};
nativeBuildInputs = [
qmake
wrapQtAppsHook
];
buildInputs = [
fftw
liblo
libsndfile
portaudio
qtbase
];
desktopItem = makeDesktopItem {
type = "Application";
desktopName = pname;
name = pname;
comment = "A sample masher designed by Aphex Twin";
exec = pname;
icon = pname;
categories = [ "Audio" ];
};
installPhase = ''
mkdir -p $out/bin
cp samplebrain $out/bin
install -m 444 -D desktop/samplebrain.svg $out/share/icons/hicolor/scalable/apps/samplebrain.svg
'';
meta = with lib; {
description = "A custom sample mashing app";
homepage = "https://thentrythis.org/projects/samplebrain";
changelog = "https://gitlab.com/then-try-this/samplebrain/-/releases/v${version}_release";
maintainers = with maintainers; [ mitchmindtree ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View File

@ -1,5 +1,4 @@
{ stdenv
, lib
{ lib
, fetchFromGitHub
, buildGoModule
, wrapGAppsHook
@ -20,9 +19,10 @@ buildGoModule rec {
owner = "yktoo";
repo = "ymuse";
rev = "v${version}";
sha256 = "sha256-3QgBbK7AK9/uQ6Z7DNIJxa1oXrxvvHDQ/Z2QOf7yfS4=";
hash = "sha256-3QgBbK7AK9/uQ6Z7DNIJxa1oXrxvvHDQ/Z2QOf7yfS4=";
};
vendorSha256 = "sha256-7oYYZWpvWzeHlp6l9bLeHcLITLZPVY5eZdfHSE+ZHW8=";
vendorHash = "sha256-7oYYZWpvWzeHlp6l9bLeHcLITLZPVY5eZdfHSE+ZHW8=";
nativeBuildInputs = [
pkg-config

View File

@ -1,182 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <thomas@lamprecht.org>
Date: Wed, 18 May 2022 08:41:14 +0200
Subject: [PATCH] re-route dependencies not available on crates.io to git repos
Signed-off-by: Thomas Lamprecht <thomas@lamprecht.org>
---
Cargo.toml | 130 +++++++++--------------------------------------------
1 file changed, 21 insertions(+), 109 deletions(-)
diff --git a/Cargo.toml b/Cargo.toml
index 0c86cd1b..7d5c282b 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -41,9 +41,6 @@ members = [
"proxmox-backup-banner",
"proxmox-backup-client",
- "proxmox-file-restore",
- "proxmox-restore-daemon",
- "proxmox-rrd",
"pxar-bin",
]
@@ -101,7 +98,6 @@ proxmox-rrd = { path = "proxmox-rrd" }
# regular crates
anyhow = "1.0"
-apt-pkg-native = "0.3.2"
base64 = "0.13"
bitflags = "1.2.1"
bytes = "1.0"
@@ -114,7 +110,6 @@ flate2 = "1.0"
foreign-types = "0.3"
futures = "0.3"
h2 = { version = "0.3", features = [ "stream" ] }
-handlebars = "3.0"
hex = "0.4.3"
http = "0.2"
hyper = { version = "0.14", features = [ "full" ] }
@@ -152,120 +147,37 @@ walkdir = "2"
xdg = "2.2"
zstd = { version = "0.6", features = [ "bindgen" ] }
-[dependencies]
-anyhow.workspace = true
-apt-pkg-native.workspace = true
-base64.workspace = true
-bitflags.workspace = true
-bytes.workspace = true
-cidr.workspace = true
-crc32fast.workspace = true
-crossbeam-channel.workspace = true
-endian_trait.workspace = true
-flate2.workspace = true
-futures.workspace = true
-h2.workspace = true
-handlebars.workspace = true
-hex.workspace = true
-http.workspace = true
-hyper.workspace = true
-lazy_static.workspace = true
-libc.workspace = true
-log.workspace = true
-nix.workspace = true
-nom.workspace = true
-num-traits.workspace = true
-once_cell.workspace = true
-openssl.workspace = true
-pam-sys.workspace = true
-pam.workspace = true
-percent-encoding.workspace = true
-regex.workspace = true
-rustyline.workspace = true
-serde.workspace = true
-serde_json.workspace = true
-siphasher.workspace = true
-syslog.workspace = true
-termcolor.workspace = true
-thiserror.workspace = true
-tokio = { workspace = true, features = [ "fs", "io-util", "io-std", "macros", "net", "parking_lot", "process", "rt", "rt-multi-thread", "signal", "time" ] }
-tokio-openssl.workspace = true
-tokio-stream.workspace = true
-tokio-util = { workspace = true, features = [ "codec" ] }
-tower-service.workspace = true
-udev.workspace = true
-url.workspace = true
-walkdir.workspace = true
-xdg.workspace = true
-zstd.workspace = true
-
#valgrind_request = { git = "https://github.com/edef1c/libvalgrind_request", version = "1.1.0", optional = true }
-proxmox-async.workspace = true
-proxmox-auth-api = { workspace = true, features = [ "api", "pam-authenticator" ] }
-proxmox-compression.workspace = true
-proxmox-http = { workspace = true, features = [ "client-trait", "proxmox-async", "rate-limited-stream" ] } # pbs-client doesn't use these
-proxmox-io.workspace = true
-proxmox-lang.workspace = true
-proxmox-ldap.workspace = true
-proxmox-metrics.workspace = true
-proxmox-rest-server = { workspace = true, features = [ "rate-limited-stream" ] }
-proxmox-router = { workspace = true, features = [ "cli", "server"] }
-proxmox-schema = { workspace = true, features = [ "api-macro" ] }
-proxmox-section-config.workspace = true
-proxmox-serde = { workspace = true, features = [ "serde_json" ] }
-proxmox-shared-memory.workspace = true
-proxmox-sortable-macro.workspace = true
-proxmox-subscription.workspace = true
-proxmox-sys = { workspace = true, features = [ "timer" ] }
-proxmox-tfa.workspace = true
-proxmox-time.workspace = true
-proxmox-uuid.workspace = true
-
-pathpatterns.workspace = true
-proxmox-acme-rs.workspace = true
-proxmox-apt.workspace = true
-proxmox-openid.workspace = true
-pxar.workspace = true
-
-pbs-api-types.workspace = true
-pbs-buildcfg.workspace = true
-pbs-client.workspace = true
-pbs-config.workspace = true
-pbs-datastore.workspace = true
-pbs-key-config.workspace = true
-pbs-tape.workspace = true
-pbs-tools.workspace = true
-proxmox-rrd.workspace = true
-
# Local path overrides
# NOTE: You must run `cargo update` after changing this for it to take effect!
[patch.crates-io]
#proxmox-acme-rs = { path = "../proxmox-acme-rs" }
-#proxmox-async = { path = "../proxmox/proxmox-async" }
-#proxmox-auth-api = { path = "../proxmox/proxmox-auth-api" }
-#proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
-#proxmox-compression = { path = "../proxmox/proxmox-compression" }
-#proxmox-fuse = { path = "../proxmox-fuse" }
-#proxmox-http = { path = "../proxmox/proxmox-http" }
-#proxmox-io = { path = "../proxmox/proxmox-io" }
-#proxmox-lang = { path = "../proxmox/proxmox-lang" }
-#proxmox-rest-server = { path = "../proxmox/proxmox-rest-server" }
-#proxmox-router = { path = "../proxmox/proxmox-router" }
-#proxmox-schema = { path = "../proxmox/proxmox-schema" }
-#proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
-#proxmox-serde = { path = "../proxmox/proxmox-serde" }
-#proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
-#proxmox-subscription = { path = "../proxmox/proxmox-subscription" }
-#proxmox-sys = { path = "../proxmox/proxmox-sys" }
-#proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
-#proxmox-time = { path = "../proxmox/proxmox-time" }
-#proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
+proxmox-async = { path = "../proxmox/proxmox-async" }
+proxmox-auth-api = { path = "../proxmox/proxmox-auth-api" }
+proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
+proxmox-compression = { path = "../proxmox/proxmox-compression" }
+proxmox-fuse = { path = "../proxmox-fuse" }
+proxmox-http = { path = "../proxmox/proxmox-http" }
+proxmox-io = { path = "../proxmox/proxmox-io" }
+proxmox-lang = { path = "../proxmox/proxmox-lang" }
+proxmox-rest-server = { path = "../proxmox/proxmox-rest-server" }
+proxmox-router = { path = "../proxmox/proxmox-router" }
+proxmox-schema = { path = "../proxmox/proxmox-schema" }
+proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
+proxmox-serde = { path = "../proxmox/proxmox-serde" }
+proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
+proxmox-sortable-macro = { path = "../proxmox/proxmox-sortable-macro" }
+proxmox-subscription = { path = "../proxmox/proxmox-subscription" }
+proxmox-sys = { path = "../proxmox/proxmox-sys" }
+proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
+proxmox-time = { path = "../proxmox/proxmox-time" }
+proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
#proxmox-apt = { path = "../proxmox-apt" }
#proxmox-openid = { path = "../proxmox-openid-rs" }
-#pxar = { path = "../pxar" }
+pxar = { path = "../pxar" }
[features]
default = []

View File

@ -1,72 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <thomas@lamprecht.org>
Date: Tue, 29 Nov 2022 17:20:28 +0100
Subject: [PATCH] docs: drop all but client man pages
Signed-off-by: Thomas Lamprecht <thomas@lamprecht.org>
---
docs/Makefile | 16 ----------------
docs/conf.py | 19 -------------------
2 files changed, 35 deletions(-)
diff --git a/docs/Makefile b/docs/Makefile
index b06badff..94130228 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -1,25 +1,9 @@
include ../defines.mk
GENERATED_SYNOPSIS := \
- proxmox-tape/synopsis.rst \
proxmox-backup-client/synopsis.rst \
proxmox-backup-client/catalog-shell-synopsis.rst \
- proxmox-backup-manager/synopsis.rst \
- proxmox-backup-debug/synopsis.rst \
- proxmox-file-restore/synopsis.rst \
pxar/synopsis.rst \
- pmtx/synopsis.rst \
- pmt/synopsis.rst \
- config/media-pool/config.rst \
- config/tape/config.rst \
- config/tape-job/config.rst \
- config/user/config.rst \
- config/remote/config.rst \
- config/sync/config.rst \
- config/verification/config.rst \
- config/acl/roles.rst \
- config/datastore/config.rst \
- config/domains/config.rst
MAN1_PAGES := \
pxar.1 \
diff --git a/docs/conf.py b/docs/conf.py
index 8944926e..deeb63bf 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -93,26 +93,7 @@ rst_epilog += f"\n.. |pbs-copyright| replace:: Copyright (C) {copyright}"
man_pages = [
# CLI
('proxmox-backup-client/man1', 'proxmox-backup-client', 'Command line tool for Backup and Restore', [author], 1),
- ('proxmox-backup-manager/man1', 'proxmox-backup-manager', 'Command line tool to manage and configure the backup server.', [author], 1),
- ('proxmox-backup-debug/man1', 'proxmox-backup-debug', 'Debugging command line tool for Backup and Restore', [author], 1),
- ('proxmox-backup-proxy/man1', 'proxmox-backup-proxy', 'Proxmox Backup Public API Server', [author], 1),
- ('proxmox-backup/man1', 'proxmox-backup', 'Proxmox Backup Local API Server', [author], 1),
- ('proxmox-file-restore/man1', 'proxmox-file-restore', 'CLI tool for restoring files and directories from Proxmox Backup Server archives', [author], 1),
- ('proxmox-tape/man1', 'proxmox-tape', 'Proxmox Tape Backup CLI Tool', [author], 1),
('pxar/man1', 'pxar', 'Proxmox File Archive CLI Tool', [author], 1),
- ('pmt/man1', 'pmt', 'Control Linux Tape Devices', [author], 1),
- ('pmtx/man1', 'pmtx', 'Control SCSI media changer devices (tape autoloaders)', [author], 1),
- # configs
- ('config/acl/man5', 'acl.cfg', 'Access Control Configuration', [author], 5),
- ('config/datastore/man5', 'datastore.cfg', 'Datastore Configuration', [author], 5),
- ('config/domains/man5', 'domains.cfg', 'Realm Configuration', [author], 5),
- ('config/media-pool/man5', 'media-pool.cfg', 'Media Pool Configuration', [author], 5),
- ('config/remote/man5', 'remote.cfg', 'Remote Server Configuration', [author], 5),
- ('config/sync/man5', 'sync.cfg', 'Synchronization Job Configuration', [author], 5),
- ('config/tape-job/man5', 'tape-job.cfg', 'Tape Job Configuration', [author], 5),
- ('config/tape/man5', 'tape.cfg', 'Tape Drive and Changer Configuration', [author], 5),
- ('config/user/man5', 'user.cfg', 'User Configuration', [author], 5),
- ('config/verification/man5', 'verification.cfg', 'Verification Job Configuration', [author], 5),
]

File diff suppressed because it is too large Load Diff

View File

@ -1,24 +1,37 @@
{
lib, fetchgit, rustPlatform, pkg-config, openssl, fuse3, libuuid, acl,
libxcrypt, git, installShellFiles, sphinx, stdenv,
{ lib,
fetchgit,
rustPlatform,
pkg-config,
openssl,
fuse3,
libuuid,
acl,
libxcrypt,
git,
installShellFiles,
sphinx,
stdenv,
fetchpatch,
testers,
proxmox-backup-client,
}:
rustPlatform.buildRustPackage rec {
pname = "proxmox-backup-client";
version = "2.4.1";
version = "3.0.1";
srcs = [
(fetchgit {
url = "git://git.proxmox.com/git/proxmox-backup.git";
rev = "v${version}";
name = "proxmox-backup";
hash = "sha256-DWzNRi675ZP9HGc/uPvnV/FBTJUNZ4K5RtU9NFRQCcA=";
hash = "sha256-a6dPBZBBh//iANXoPmOdgxYO0qNszOYI3QtrjQr4Cxc=";
})
(fetchgit {
url = "git://git.proxmox.com/git/proxmox.git";
rev = "5df815f660e4f3793e974eb8130224538350bb12";
rev = "2a070da0651677411a245f1714895235b1caf584";
name = "proxmox";
hash = "sha256-Vn1poqkIWcR2rNiAr+ENLNthgk3pMCivzXnUX9hvZBw=";
hash = "sha256-WH6oW2MB2yN1Y2zqOuXewI9jHqev/xLcJtb7D1J4aUE=";
})
(fetchgit {
url = "git://git.proxmox.com/git/proxmox-fuse.git";
@ -36,10 +49,28 @@ rustPlatform.buildRustPackage rec {
sourceRoot = "proxmox-backup";
# These patches are essentially un-upstreamable, due to being "workarounds" related to the
# project structure.
cargoPatches = [
./0001-re-route-dependencies-not-available-on-crates.io-to-.patch
./0002-docs-drop-all-but-client-man-pages.patch
./0003-docs-Add-target-path-fixup-variable.patch
# A lot of Rust crates `proxmox-backup-client` depends on are only available through git (or
# Debian packages). This patch redirects all these dependencies to a local, relative path, which
# works in combination with the other three repos being checked out.
(fetchpatch {
name = "0001-re-route-dependencies-not-available-on-crates.io-to-.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/0001-re-route-dependencies-not-available-on-crates.io-to-.patch?h=proxmox-backup-client&id=83a1f4dfcb04bd181b11954b1d9f5ddfcb72b3d0";
hash = "sha256-2YZtjbpYSbRk6rmpjKJeIO+V0YN5PrKsISONXMj4RG0=";
})
# This patch prevents the generation of the man-pages for other components inside the repo,
# which would require them too be built too. Thus avoid wasting resources and just skip them.
(fetchpatch {
name = "0002-docs-drop-all-but-client-man-pages.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/0002-docs-drop-all-but-client-man-pages.patch?h=proxmox-backup-client&id=83a1f4dfcb04bd181b11954b1d9f5ddfcb72b3d0";
hash = "sha256-oJKQs4SwJvX5Zd0/l/vVr66aPO7Y4AC8byJHg9t1IhY=";
})
# `make docs` assumes that the binaries are located under `target/{debug,release}`, but due
# to how `buildRustPackage` works, they get put under `target/$RUSTC_TARGET/{debug,release}`.
# This patch simply fixes that up.
./0001-docs-Add-target-path-fixup-variable.patch
];
postPatch = ''
@ -84,9 +115,15 @@ rustPlatform.buildRustPackage rec {
nativeBuildInputs = [ git pkg-config rustPlatform.bindgenHook installShellFiles sphinx ];
buildInputs = [ openssl fuse3 libuuid acl libxcrypt ];
passthru.tests.version = testers.testVersion {
package = proxmox-backup-client;
command = "${pname} version";
};
meta = with lib; {
description = "The command line client for Proxmox Backup Server";
homepage = "https://pbs.proxmox.com/docs/backup-client.html";
changelog = "https://git.proxmox.com/?p=proxmox-backup.git;a=blob;f=debian/changelog;hb=refs/tags/v${version}";
license = licenses.agpl3Only;
maintainers = with maintainers; [ cofob christoph-heiss ];
platforms = platforms.linux;

View File

@ -2,7 +2,7 @@
let
pname = "atomic-swap";
version = "0.4.0";
version = "0.4.1";
in
buildGoModule {
inherit pname version;
@ -11,10 +11,10 @@ buildGoModule {
owner = "AthanorLabs";
repo = "atomic-swap";
rev = "v${version}";
hash = "sha256-wVLufTC7WcRELhzebzLgIUvIWklEY+8/C41FluPkya0=";
hash = "sha256-CYqYRYLMfvPX8TqyFSRg4ookeIfYGc0HDzu/Ip9Ecsg=";
};
vendorSha256 = "sha256-igHuklt76r7MDxz8TAaFgFdQS7L3DJkMYarAMNVYTC4=";
vendorHash = "sha256-igHuklt76r7MDxz8TAaFgFdQS7L3DJkMYarAMNVYTC4=";
subPackages = [
"cmd/swapcli"

View File

@ -2,7 +2,7 @@
let
pname = "erigon";
version = "2.47.0";
version = "2.48.0";
in
buildGoModule {
inherit pname version;
@ -11,11 +11,11 @@ buildGoModule {
owner = "ledgerwatch";
repo = pname;
rev = "v${version}";
sha256 = "sha256-LmubFpewCEPcLzezEWye8y4Vjv68coxoCtrffxJsodY=";
hash = "sha256-L2uQJdC0Z5biv//QzgjPpygsk8GlUoQsSNH4Cp5TvhU=";
fetchSubmodules = true;
};
vendorSha256 = "sha256-zgBStaULqbdZmBDi/3AjGx35mh45M3uFkDd5z/vQeMQ=";
vendorHash = "sha256-wzA75+BL5Fm6X13dF/ou7qvMEdeaImmSs2lypH4hOTY=";
proxyVendor = true;
# Build errors in mdbx when format hardening is enabled:

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "namecoin" + lib.optionalString (!withGui) "d";
version = "24.0";
version = "25.0";
src = fetchFromGitHub {
owner = "namecoin";
repo = "namecoin-core";
rev = "nc${version}";
sha256 = "sha256-DSUYqNHgPsHVwx3G83pZdzsTjhX2X2mMqt+lAlIuGp0=";
sha256 = "sha256-2KMK5Vb8osuaKbzI1aaPSYg+te+v9CEcGUkrVI6Fk54=";
};
nativeBuildInputs = [

View File

@ -125,12 +125,12 @@ final: prev:
Ionide-vim = buildVimPluginFrom2Nix {
pname = "Ionide-vim";
version = "2023-04-08";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "ionide";
repo = "Ionide-vim";
rev = "d41ef95b9732109bf6406c5e959492f31f09ce36";
sha256 = "0dbfq26kgm4yb6837l8x73psflb65pp6a5cmixg4gw5ni9wzal7i";
rev = "b7ec6803a922b2a8951fd2c33787a45db9d959c1";
sha256 = "18g2fnq2qsz6y5rl7k8060xwjra9a18zcmmgh4gzfbx9w7vpb0w5";
};
meta.homepage = "https://github.com/ionide/Ionide-vim/";
};
@ -173,24 +173,24 @@ final: prev:
LazyVim = buildVimPluginFrom2Nix {
pname = "LazyVim";
version = "2023-06-30";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "LazyVim";
repo = "LazyVim";
rev = "4ba5086b3d9f9690e8fd7d93102db66173b02638";
sha256 = "0phfi9chdwzcp3i6fk7zd4vpyn2cjrnmf5hlskdcdb9bin9fpwq3";
rev = "e5200e6358766f2ba71eb229cb335c4c811902bb";
sha256 = "14547qzh02168c9gq333mmbm8z6xkkgzzmnamx4nqa5ql0cb75zi";
};
meta.homepage = "https://github.com/LazyVim/LazyVim/";
};
LeaderF = buildVimPluginFrom2Nix {
pname = "LeaderF";
version = "2023-06-17";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "Yggdroot";
repo = "LeaderF";
rev = "fc8f161eb278acda29c87d87175278c2939db3c6";
sha256 = "15diwcfi5xmzn3y97mbp1yar00lw2lc8imm5gdq6wyx99wdcvc5d";
rev = "4457231b3dc8fa1ddbcae19a04c0dcf378536fe2";
sha256 = "1rgcvrv85c6hl6ihi9fzlbf98qc65hkz8s5yd48hk0s8998l8mpa";
};
meta.homepage = "https://github.com/Yggdroot/LeaderF/";
};
@ -377,12 +377,12 @@ final: prev:
SpaceVim = buildVimPluginFrom2Nix {
pname = "SpaceVim";
version = "2023-06-28";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "SpaceVim";
repo = "SpaceVim";
rev = "b462646223dfb8a7b19fb3999edffd4d0dd8aea1";
sha256 = "0illvadr8wahn0swlqiqhd6r77cafwpmxnr7hlpyzfawqpvqdabw";
rev = "83cb47789d4e9c69ac0828e2e3e48132900a0ed3";
sha256 = "1cdysmlnx2cxv6lhs2vakkiw3aj40dpp4cdaf1z693nrss5p82b1";
};
meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
};
@ -1157,6 +1157,18 @@ final: prev:
meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
};
bufjump-nvim = buildVimPluginFrom2Nix {
pname = "bufjump.nvim";
version = "2021-12-05";
src = fetchFromGitHub {
owner = "kwkarlwang";
repo = "bufjump.nvim";
rev = "a020f81bb82f758da51594a07bfcb9635a6b0f73";
sha256 = "1a8n466drd9rz2q0h0cpc6xs1djgwshyh8gndx9kqw1n56vsa777";
};
meta.homepage = "https://github.com/kwkarlwang/bufjump.nvim/";
};
bullets-vim = buildVimPluginFrom2Nix {
pname = "bullets.vim";
version = "2022-10-10";
@ -2275,24 +2287,24 @@ final: prev:
coq-artifacts = buildVimPluginFrom2Nix {
pname = "coq.artifacts";
version = "2023-06-28";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "coq.artifacts";
rev = "864307e4edd1cf8a83ff9b45b1310f9762cfd1de";
sha256 = "0kfhgs70ldbrm7mcy7c0fnd4h8jz5sk9whsq0a4hj8inlypyrvm2";
rev = "071b03a146b2384ef048751d1ca89b05d011009f";
sha256 = "05xbx43d0b5pxqnlx71d368876z70814sq2i89cl72w30455va9h";
};
meta.homepage = "https://github.com/ms-jpq/coq.artifacts/";
};
coq-thirdparty = buildVimPluginFrom2Nix {
pname = "coq.thirdparty";
version = "2023-07-01";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "coq.thirdparty";
rev = "4b252a3eea17b2c69f3fbd1f675c0b4bf55f1961";
sha256 = "18r90dx7zlznjkgiqmafppa93jh6ag4bnfq2q88dawrkjya35y2r";
rev = "41c459a0b63910518a7ad5ac3935c639aa9906ac";
sha256 = "0k1h6sv4rmlifxrflplbjkp77hmwhy1qs7fhw1ks1blpcy5pv5rz";
};
meta.homepage = "https://github.com/ms-jpq/coq.thirdparty/";
};
@ -2311,12 +2323,12 @@ final: prev:
coq_nvim = buildVimPluginFrom2Nix {
pname = "coq_nvim";
version = "2023-07-01";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "coq_nvim";
rev = "8f8fa1a00360eedc9c57c3dec605907a5b075439";
sha256 = "1hr85665fgnhjmkn73xgcyj7h2x45bj8mi228qbsyhzl24ldrh2s";
rev = "55b4e01c4ccde358b5686a04e9101334124cbb11";
sha256 = "1yj9v31v52np9j7n2c5gf0dm4mxni5qjyivcfjp7cdsfzrhhafbj";
};
meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
};
@ -2347,12 +2359,12 @@ final: prev:
crates-nvim = buildVimPluginFrom2Nix {
pname = "crates.nvim";
version = "2023-06-21";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "saecki";
repo = "crates.nvim";
rev = "258961973c2cbef5717d4a726c68a0730fb0f94b";
sha256 = "0dl6651qvf2cjnkgqxvw0ypffrqblvx0xw0mpymsws07wblml9ac";
rev = "4ce7c51b881e58f1e2f8f437f30e4e583cbac319";
sha256 = "1j3812in0wr2ssc79gqibf446awlf5j1pv5xp2qpyrp4di79y7va";
};
meta.homepage = "https://github.com/saecki/crates.nvim/";
};
@ -2575,12 +2587,12 @@ final: prev:
deol-nvim = buildVimPluginFrom2Nix {
pname = "deol.nvim";
version = "2023-06-15";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "Shougo";
repo = "deol.nvim";
rev = "7bdecd220ba28448304b4c67cb09f4cf7382975b";
sha256 = "19f4jykbq3a0c7mw4fc1kdh3nac2pylngn7bx9mqcl7b3d46sbyw";
rev = "49721ff72998a9e6cd843574dd2487726b3c5a56";
sha256 = "07c4xdkrbc2myai7xwx69j5wj2xllr1lqrn3mkwdp3b71lm2j3wh";
};
meta.homepage = "https://github.com/Shougo/deol.nvim/";
};
@ -2937,12 +2949,12 @@ final: prev:
dropbar-nvim = buildVimPluginFrom2Nix {
pname = "dropbar.nvim";
version = "2023-07-01";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "Bekaboo";
repo = "dropbar.nvim";
rev = "02ec281110859185c3c09203245c3e42b359dfcb";
sha256 = "0dhag2z5ghhifdjr4d2ixbxig2fnhh8x18psjyd35rf2c9ifrafj";
rev = "19011d96959cd40a7173485ee54202589760caae";
sha256 = "0vd5645by8wdqpfh33ap6ln67yg9yailkynz8aaww257xfcifygx";
};
meta.homepage = "https://github.com/Bekaboo/dropbar.nvim/";
};
@ -2985,12 +2997,12 @@ final: prev:
edgy-nvim = buildVimPluginFrom2Nix {
pname = "edgy.nvim";
version = "2023-06-30";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "folke";
repo = "edgy.nvim";
rev = "422dbda0f3a074475947b2338f06889da6606e32";
sha256 = "106cr80l4y0m2ljw11dpgv0di7pkq0yinmhmhbn5pg6bivn025wv";
rev = "0d3b64f9159442cf9edcad451a0dd9fb7e31bc41";
sha256 = "1w43qilfhacnmqr76lp2fkbawbndas180f5ab7h133rwgr64lc7p";
};
meta.homepage = "https://github.com/folke/edgy.nvim/";
};
@ -3276,12 +3288,12 @@ final: prev:
flash-nvim = buildVimPluginFrom2Nix {
pname = "flash.nvim";
version = "2023-07-01";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "folke";
repo = "flash.nvim";
rev = "2950466a4f815e3e3297d8e8f03dc6fbf4dbd7c1";
sha256 = "0mfd41mf6zjd1a6lid5vhd827rckz31a6qxiz9yvzidg6ndcyb34";
rev = "dbe524c3f9faf2fb22d80b6c63bbfa89e171b370";
sha256 = "1bj5nyy58yd9dl2b3ds3p60da3m1lh6w2805zp0rv3jqi3s0249x";
};
meta.homepage = "https://github.com/folke/flash.nvim/";
};
@ -3396,12 +3408,12 @@ final: prev:
friendly-snippets = buildVimPluginFrom2Nix {
pname = "friendly-snippets";
version = "2023-06-28";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "rafamadriz";
repo = "friendly-snippets";
rev = "1723ae01d83f3b3ac1530f1ae22b7b9d5da7749b";
sha256 = "1vkdfzyjsjg3j34l7byxsiai9izqcijcdmxm8ynlf54gigihzzpz";
rev = "c85153a188b260b908bc35ffedff64810a930b64";
sha256 = "038xfax1jxj7svaz54if43sjn86dlj9g162mya0vd810hhl09g2f";
};
meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
};
@ -3504,12 +3516,12 @@ final: prev:
fzf-lua = buildVimPluginFrom2Nix {
pname = "fzf-lua";
version = "2023-07-01";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "ibhagwan";
repo = "fzf-lua";
rev = "1b809d167e1b82ac1e9b2c7af2e1abc81d143708";
sha256 = "0r278arw3airl1s58xbq2in5yz2fyiiq556ppqi8prcmgpi6cdq1";
rev = "546e3eb8012f46eb862bcd021598f5f1df8b82bb";
sha256 = "051spw6pgmfda0p9f11mnrzwd0pkh3i5rmshvig9cxnjchrzwari";
};
meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
};
@ -3564,12 +3576,12 @@ final: prev:
ghcid = buildVimPluginFrom2Nix {
pname = "ghcid";
version = "2023-04-13";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "ndmitchell";
repo = "ghcid";
rev = "e2852979aa644c8fed92d46ab529d2c6c1c62b59";
sha256 = "0bsjbb6n7ssg411k2xj4f881v392hvb7xln99bq1r3vkg14mqqsd";
rev = "19b0e912da74341993a005aa53a0c57fd2afc800";
sha256 = "0vczhvbm62cac3vz9zbxhgimcgyqd5g33mc2sa46f45migcmvikz";
};
meta.homepage = "https://github.com/ndmitchell/ghcid/";
};
@ -3935,12 +3947,12 @@ final: prev:
haskell-tools-nvim = buildNeovimPlugin {
pname = "haskell-tools.nvim";
version = "2023-06-28";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "MrcJkb";
repo = "haskell-tools.nvim";
rev = "614dc618925d2de9ddec2be06762930a4bc32149";
sha256 = "0czwgjvrcdzrxraq7dyan55crcna4ml87g7hfwzkp9zvavv5alig";
rev = "415e184f7f534952664db723ca23edc11b149858";
sha256 = "1f9yxz1iqp25ks8910wxcl08ncawbzxxsspzmimwxy258zwjmgiv";
};
meta.homepage = "https://github.com/MrcJkb/haskell-tools.nvim/";
};
@ -4451,12 +4463,12 @@ final: prev:
julia-vim = buildVimPluginFrom2Nix {
pname = "julia-vim";
version = "2022-10-20";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "JuliaEditorSupport";
repo = "julia-vim";
rev = "fca7e3e59e6f9417d3fd77bac50d4b820a3e8bc4";
sha256 = "1pby3mx29wh5a0d4zdslkf43prm4f2w1an4qsyfhw2gn7kwmi2lj";
rev = "88ebda5043ec13a6e6f0ac20b279dc12ecc10311";
sha256 = "1pxi7xi1svwfjxp4mc2jw451cm576bcydxkbw83bxvk9h4zyngwg";
};
meta.homepage = "https://github.com/JuliaEditorSupport/julia-vim/";
};
@ -4571,12 +4583,12 @@ final: prev:
lazy-nvim = buildVimPluginFrom2Nix {
pname = "lazy.nvim";
version = "2023-06-30";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "folke";
repo = "lazy.nvim";
rev = "d65d5441d997c98be8c261ca8537694c5f4642be";
sha256 = "1pd1qxvgxx8l99g3ylnkq139aks2zs87drlbgadb978mfasz28pd";
rev = "f8611632d0f9c6818e8eb54f9bcd1dad122b5a7f";
sha256 = "1j4478wxn40b5j4hylpppr7ja6fdd9j7yx348ragbn92kj0vllqx";
};
meta.homepage = "https://github.com/folke/lazy.nvim/";
};
@ -4595,12 +4607,12 @@ final: prev:
lean-nvim = buildVimPluginFrom2Nix {
pname = "lean.nvim";
version = "2023-06-19";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "Julian";
repo = "lean.nvim";
rev = "281ddd46d158adbd93c7113569e1856b0bc49c8a";
sha256 = "1rbcvkf7xcwlvvhgs6yfqvnzb9an5jh2gvi9z272282l0g9j9n6r";
rev = "e62fdff55e0668eb33cd5d9e40a50048a5622c7b";
sha256 = "0wj8jws7q1f2n9pya83frq29yadbm552br4wzfjk3a2z51s5rkhc";
};
meta.homepage = "https://github.com/Julian/lean.nvim/";
};
@ -4631,12 +4643,12 @@ final: prev:
leap-nvim = buildVimPluginFrom2Nix {
pname = "leap.nvim";
version = "2023-06-28";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "ggandor";
repo = "leap.nvim";
rev = "f41de5c1cfeb146e4b8c5ed20e5b32230457ff25";
sha256 = "0wga34195dg19x4y01mhs2pipxlkmhdlzjhp6qybwd860d696hhi";
rev = "aadf42e0ab97b38715e6233f253cd571dd3bb96c";
sha256 = "0454wh5fdrx0k2y53sshh9f98ar5f1cfslsz7rqp3c0kpwczs2k5";
};
meta.homepage = "https://github.com/ggandor/leap.nvim/";
};
@ -5123,12 +5135,12 @@ final: prev:
lush-nvim = buildNeovimPlugin {
pname = "lush.nvim";
version = "2023-06-17";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "rktjmp";
repo = "lush.nvim";
rev = "789a2fbd98f3572f315958a0e8a711eb88d360d8";
sha256 = "03pqcm49c5g51ldmimbwh0yvcbbb1c6g6vwnmqn2aix0g2cxc11b";
rev = "b10ef2bfff0647e701b691019ade3edd5e44eb50";
sha256 = "13apg02ng37x1j5n6n4nhrp22bsmwb6hgf623wsrqx5qll4fnn6i";
};
meta.homepage = "https://github.com/rktjmp/lush.nvim/";
};
@ -5303,12 +5315,12 @@ final: prev:
mini-nvim = buildVimPluginFrom2Nix {
pname = "mini.nvim";
version = "2023-06-29";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "echasnovski";
repo = "mini.nvim";
rev = "4fd0f9c72fb54696442c81a64c71514c95239148";
sha256 = "1x97jrh3pr1gsl2rlzl9x8lcgbj4lkq11v873mk2dh81rvw0a4d0";
rev = "bb8ef7cfaf7b0c4492836f318df0b61e92ea3de1";
sha256 = "1s3lnbjz3rgrplpyc6f7a67ahcql34hy6v5z6qjh18gb2r449sfk";
};
meta.homepage = "https://github.com/echasnovski/mini.nvim/";
};
@ -5711,12 +5723,12 @@ final: prev:
neoformat = buildVimPluginFrom2Nix {
pname = "neoformat";
version = "2023-06-29";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "sbdchd";
repo = "neoformat";
rev = "1dd282cd64f03418ef9cc345a12ca82b8dcf6e73";
sha256 = "0sly3hspfia8hpgdqq2dc6lylc5qbil3cxmlph27j3yy01yl1f52";
rev = "b35ae45f9425c817126be4cc946a950c1cffe6fa";
sha256 = "1qcrladfl3zvci58aiv4w6bq6dc8ibfjgp95l4q10bx8gjkdipkq";
};
meta.homepage = "https://github.com/sbdchd/neoformat/";
};
@ -5735,14 +5747,14 @@ final: prev:
neogit = buildVimPluginFrom2Nix {
pname = "neogit";
version = "2023-06-09";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "TimUntersberger";
owner = "NeogitOrg";
repo = "neogit";
rev = "68a3e90e9d1ed9e362317817851d0f34b19e426b";
sha256 = "06ffj2hb6d4d3fhybkywszxb7skx6wkrd95syz7a3p91ly07a9ss";
rev = "497f65529a8f3ebc0fa17cc12d678e2600a9f4fb";
sha256 = "1rzalck1z8i0h08dfj86llaghyca5qlkprxivqyc1y0akipia1k1";
};
meta.homepage = "https://github.com/TimUntersberger/neogit/";
meta.homepage = "https://github.com/NeogitOrg/neogit/";
};
neoinclude-vim = buildVimPluginFrom2Nix {
@ -5927,24 +5939,24 @@ final: prev:
neotest-go = buildVimPluginFrom2Nix {
pname = "neotest-go";
version = "2023-05-11";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "nvim-neotest";
repo = "neotest-go";
rev = "4e7a87967e45f2b357fd546b0b7877774191772e";
sha256 = "1k3dck55dyglqvrsf1bwmh9fqzvirq5m8m9m9w5f3nxbxq6abdn6";
rev = "05535cb2cfe3ce5c960f65784896d40109572f89";
sha256 = "0mg1cacs6hd2f0pgrggd94f88yaq99ic9xw3a3hiyywcx7apkz94";
};
meta.homepage = "https://github.com/nvim-neotest/neotest-go/";
};
neotest-haskell = buildVimPluginFrom2Nix {
pname = "neotest-haskell";
version = "2023-06-25";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "MrcJkb";
repo = "neotest-haskell";
rev = "9596de6ff2e6b94cc7a6f48b2a8caeb9a1327067";
sha256 = "0vyf9p3jc0s44vkhpzrk9lk48pj0ys4j0dxnisj6i9idc46z1n74";
rev = "3dd8e3d96bb4b793525ea3d26ca231fc005bd1bd";
sha256 = "0flq4rk54cn5kvfzwwxd1zq73dr75pqpb2x4p7ch2pxhppm5qx64";
};
meta.homepage = "https://github.com/MrcJkb/neotest-haskell/";
};
@ -6023,12 +6035,12 @@ final: prev:
neotest-rust = buildVimPluginFrom2Nix {
pname = "neotest-rust";
version = "2023-06-28";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "rouge8";
repo = "neotest-rust";
rev = "e9015a5e343dc47dac90dc74effb3dd11ff7d2ae";
sha256 = "0aix8phfsyb7hsyqxg6f8nfzhhpy7vzk2if3g8n0dzq1krmm6dk3";
rev = "6dce8963e5395adf079bf22e931dfce65d3fed25";
sha256 = "0mg71ha951di5srw6g6whdpjjmbqrg47n2d5ana2q9svqmgrd0cc";
};
meta.homepage = "https://github.com/rouge8/neotest-rust/";
};
@ -6287,12 +6299,12 @@ final: prev:
noice-nvim = buildVimPluginFrom2Nix {
pname = "noice.nvim";
version = "2023-06-30";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "folke";
repo = "noice.nvim";
rev = "2cb37edea88b7baa45324ac7b791f1f1b4e48316";
sha256 = "0xi78d2px2fx4ihnhbaqwpd8awicy6m5dfrcfdg77wra88xl65r9";
rev = "6c87c1d11c38180fb72bf8f45518a0a3e081afc1";
sha256 = "0y0fwll3a421r0px9x2d8mq2nj00w6ahilwmrvmhvnazjgqd074j";
};
meta.homepage = "https://github.com/folke/noice.nvim/";
};
@ -6383,12 +6395,12 @@ final: prev:
nvchad = buildVimPluginFrom2Nix {
pname = "nvchad";
version = "2023-06-28";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "nvchad";
repo = "nvchad";
rev = "10b668d98aba6bce9b494d028174207e59e5c59a";
sha256 = "1yn01dfix232q2hlmbki9x446qbawa3dkiczg7hn270vvpipgspn";
rev = "83aac1ecc0c84726d3aace3ed97d7001add4694b";
sha256 = "1rd93qik41hqrgrc40b3g2jkgad1pkknic17ffpz933ps0ljz8xl";
};
meta.homepage = "https://github.com/nvchad/nvchad/";
};
@ -6527,12 +6539,12 @@ final: prev:
nvim-cokeline = buildVimPluginFrom2Nix {
pname = "nvim-cokeline";
version = "2023-07-01";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "willothy";
repo = "nvim-cokeline";
rev = "bd34d316a3b4787802cb2a524d9b9d33008726b9";
sha256 = "08kvr5891x87vhpqr2r1mn3nn0k5pyxj7g52ldzdlzdfzhdx2wwl";
rev = "a7efa64386467114e386a0f19f4a6086a5650010";
sha256 = "1iym9h92n6rhaapdvkrkgz9xmwr3rx5mmcicyrfbs0x5k1l3ka01";
};
meta.homepage = "https://github.com/willothy/nvim-cokeline/";
};
@ -6719,12 +6731,12 @@ final: prev:
nvim-gdb = buildVimPluginFrom2Nix {
pname = "nvim-gdb";
version = "2023-06-18";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "sakhnik";
repo = "nvim-gdb";
rev = "c849cda1dbe149f7aa27400a623fd35e5fced990";
sha256 = "0q1scl35636agiwv0dpghs6w57kv95j61na789wkjw2vqs2qw18r";
rev = "f69f3dcd1ebdcb39af156ee3833c5d6b9777eb31";
sha256 = "15nv26nfxykg5jnqkbl4kq9rfa6lba687i8m31ir8hkgg9n57g43";
};
meta.homepage = "https://github.com/sakhnik/nvim-gdb/";
};
@ -6743,12 +6755,12 @@ final: prev:
nvim-highlight-colors = buildVimPluginFrom2Nix {
pname = "nvim-highlight-colors";
version = "2023-04-15";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "brenoprata10";
repo = "nvim-highlight-colors";
rev = "8d7e7fe540b404ec06a248d6e5797eaf3362420c";
sha256 = "1saabc855b0pqhfvhph9lgir090126f1nh4hpv57d44fn8n0cwgh";
rev = "60ee461c30953d2d1dc3895d01af995b24cc6788";
sha256 = "09ikihpskymbawk5l4n4xc25dhmhywiwlsklimcwhj2bs4vngpa4";
};
meta.homepage = "https://github.com/brenoprata10/nvim-highlight-colors/";
};
@ -7139,12 +7151,12 @@ final: prev:
nvim-spectre = buildVimPluginFrom2Nix {
pname = "nvim-spectre";
version = "2023-06-30";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "nvim-pack";
repo = "nvim-spectre";
rev = "6e9dfd6f0ad24074ba03fe420b2b5c59075bc205";
sha256 = "1nm707d9gixqd739jqr201jk7qdw7kshkvvkgldrrwg4wv0gfig4";
rev = "dc3f0bd41e09148924ef04a4746cb708539d08db";
sha256 = "1zhb6hh6bqigil26x74s426a7ymfndflm2abw6wpfzmdqd7zaf0l";
};
meta.homepage = "https://github.com/nvim-pack/nvim-spectre/";
};
@ -7211,24 +7223,24 @@ final: prev:
nvim-tree-lua = buildVimPluginFrom2Nix {
pname = "nvim-tree.lua";
version = "2023-07-01";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "nvim-tree";
repo = "nvim-tree.lua";
rev = "1fe32286db79719dd6e52236f82c5b52df3ccaa9";
sha256 = "130zccj9ydfgcjcljhcpm6cpf5yn7qadb6qril3070i5kzh0gp9i";
rev = "4af572246ce49883e2a52c49203a19984454f2e0";
sha256 = "1z7n13qrd2i53m8ysgm5x880gzwk0wd9kpf3nbqax6xc45n6r33k";
};
meta.homepage = "https://github.com/nvim-tree/nvim-tree.lua/";
};
nvim-treesitter = buildVimPluginFrom2Nix {
pname = "nvim-treesitter";
version = "2023-06-30";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "nvim-treesitter";
rev = "393bc5bec591caeedb0a4c696d15946c5d6c2de8";
sha256 = "0nl5vn7i5qaxnsdf1vycfn6f761kgbplin0pgdxf0fg75w3pnm0v";
rev = "c42a8f96d37be82cf32934c4351150d7736f93f5";
sha256 = "0zk7zs6w941adjq8dcn0z3ashnf30nqixy4ga6pydsqy4bqswi0r";
};
meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
};
@ -7944,12 +7956,12 @@ final: prev:
python-mode = buildVimPluginFrom2Nix {
pname = "python-mode";
version = "2023-06-28";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "python-mode";
repo = "python-mode";
rev = "c86c4dbf5276c5950f4651c021ff05e9296aff37";
sha256 = "1vw3ga1v8pykl9cmgb690l8b5wadpvym329v2ccgayby73jb9812";
rev = "57384b9f278ed1c2b402fe48aad05781882561f1";
sha256 = "1y30inljvpjrq1yphfjv1x2f0m5bn6gbqg69f3b51fs53sqaswi8";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/python-mode/python-mode/";
@ -8486,12 +8498,12 @@ final: prev:
slimv = buildVimPluginFrom2Nix {
pname = "slimv";
version = "2023-05-13";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "kovisoft";
repo = "slimv";
rev = "4a7ee2d82adfdb2334709dfc2e9b2ae63216e725";
sha256 = "1x9l80f84fvvq2g7flacnqs1pk91nilhi9lnzgvp67r12glqkq99";
rev = "f4775f044cbb28ff4a444143cd2e6712b3694f21";
sha256 = "1k67h7i07xab8f5a0qn0psrmj1xbm42w03gh5kmal8ay3maqvscd";
};
meta.homepage = "https://github.com/kovisoft/slimv/";
};
@ -8823,12 +8835,12 @@ final: prev:
substitute-nvim = buildVimPluginFrom2Nix {
pname = "substitute.nvim";
version = "2023-05-16";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "gbprod";
repo = "substitute.nvim";
rev = "46a78e02b5b009d22df7566cbc25f4ef565c5731";
sha256 = "1k4rmrkl2ggsrp1c2r846g98kz8my8snzi5yk825is839acs517l";
rev = "7412aa56dedc3f507cddb02167a939e55b39a2cd";
sha256 = "17pjl4sl62myfar9xv2axghyj0dfllzr611qzh14a2kgf1x326n6";
};
meta.homepage = "https://github.com/gbprod/substitute.nvim/";
};
@ -9161,12 +9173,12 @@ final: prev:
telescope-file-browser-nvim = buildVimPluginFrom2Nix {
pname = "telescope-file-browser.nvim";
version = "2023-06-30";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "nvim-telescope";
repo = "telescope-file-browser.nvim";
rev = "721f716f7392284ded78b4867fa67cf4b0605945";
sha256 = "05b383yl68mzjk149y3s5ncclml4rn9xxqsqy1by1f8x1f215x1n";
rev = "e03ff55962417b69c85ef41424079bb0580546ba";
sha256 = "1agwrhwb6w0qpcgcmffibnip61g6dqjzmchngb1a9fwxqvzrgfll";
};
meta.homepage = "https://github.com/nvim-telescope/telescope-file-browser.nvim/";
};
@ -9391,12 +9403,12 @@ final: prev:
telescope-nvim = buildNeovimPlugin {
pname = "telescope.nvim";
version = "2023-06-30";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "nvim-telescope";
repo = "telescope.nvim";
rev = "c5b11f4fe780f4acd6ed0d58575d3cb7af3e893a";
sha256 = "11ccs7vvaa20i1lnqswqmch5sxgswwg6w4s1x5syzy9yzknxfbrk";
rev = "0e0600908d1ad5ac4992fa0ab578e23e9d9d6f37";
sha256 = "0nf1pc84mk6cncb120j6dwcynkbxf2s6crji30aq99zs92n3wi0w";
};
meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
};
@ -9656,12 +9668,12 @@ final: prev:
tokyonight-nvim = buildVimPluginFrom2Nix {
pname = "tokyonight.nvim";
version = "2023-06-24";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "folke";
repo = "tokyonight.nvim";
rev = "fd0a005fd8986ec0d98a1938dc570303e8d8444b";
sha256 = "18y7s1hkkgzv0lkvz53bcpps65i42ma6v3gfy01pnpxhrxgxmb3p";
rev = "d785293494c59ce0940c00b8b044fc672d2902b1";
sha256 = "0mgiplv49yrr686fj8qh619sk9szsq8slcf556b8zw9d7m945m3i";
};
meta.homepage = "https://github.com/folke/tokyonight.nvim/";
};
@ -9812,12 +9824,12 @@ final: prev:
typst-vim = buildVimPluginFrom2Nix {
pname = "typst.vim";
version = "2023-06-27";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "kaarmu";
repo = "typst.vim";
rev = "d1e598dadf4d52bf33b52c7e5f1861227906a15c";
sha256 = "07xaibd3rx65i5d2g3i5z1ix6m66pm8lnq3ci3q4xsycw34rb43h";
rev = "5c1a933d6e8178d8d2596165b1709a7605b26d11";
sha256 = "0pm56qlrj27y8krcjyiw17mpfb3ggl1898zj41fdb8zbhj36mj18";
};
meta.homepage = "https://github.com/kaarmu/typst.vim/";
};
@ -9860,12 +9872,12 @@ final: prev:
unison = buildVimPluginFrom2Nix {
pname = "unison";
version = "2023-07-01";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "unisonweb";
repo = "unison";
rev = "943149be2094f2396f9575e932a74156f228602a";
sha256 = "1w29dpc9kj1g0ryhqikagmvbip0dxvfwkh160y33a3q9v0d7zg3n";
rev = "4024c22af3fbda69089c1adf9a1516ad8a2205df";
sha256 = "1fzndfrjiks08cdsm6cb6w4avpmsldjprw1d0lzn69dgm3ll3526";
};
meta.homepage = "https://github.com/unisonweb/unison/";
};
@ -9956,12 +9968,12 @@ final: prev:
vifm-vim = buildVimPluginFrom2Nix {
pname = "vifm.vim";
version = "2023-06-25";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "vifm";
repo = "vifm.vim";
rev = "f52001f835f0c334bfee4c38534320c1c546b0d8";
sha256 = "1sjajazx1l3k1gwdm4b3n418s9dxl60ai0jachi3z29z6av9yjf1";
rev = "785b593457fbf2ca64719fc2c97c026f15ebee58";
sha256 = "0qi99rb0rxak9jxv9j17lj44va85kjraq5jbdrbfza4060adipij";
};
meta.homepage = "https://github.com/vifm/vifm.vim/";
};
@ -10849,7 +10861,7 @@ final: prev:
owner = "flazz";
repo = "vim-colorschemes";
rev = "fd8f122cef604330c96a6a6e434682dbdfb878c9";
sha256 = "1cg8q7w0vgl73aw1b9zz0zh5vw5d2pm8pm54fhfzva4azg56f416";
sha256 = "0kpsf6j20fgblc8vhqn7ymr52v2d1h52vc7rbxmxfwdm80nvv3g5";
};
meta.homepage = "https://github.com/flazz/vim-colorschemes/";
};
@ -12274,12 +12286,12 @@ final: prev:
vim-just = buildVimPluginFrom2Nix {
pname = "vim-just";
version = "2023-04-21";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "NoahTheDuke";
repo = "vim-just";
rev = "9fc9a1afaa9e3567b25f4141a01f6172a1992a0b";
sha256 = "0wjrqjb0vwp5pk4q2xyrachx9974lxnync1lj40778v5wlsc4w9v";
rev = "f3f03c7ab7e1bf9555704a9d6bc11c6ba621c373";
sha256 = "1x2fsy8dw37s6crlirad30d2z48b4wma3405y4jfw149pzkb19bi";
};
meta.homepage = "https://github.com/NoahTheDuke/vim-just/";
};
@ -13091,12 +13103,12 @@ final: prev:
vim-oscyank = buildVimPluginFrom2Nix {
pname = "vim-oscyank";
version = "2023-05-25";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "ojroques";
repo = "vim-oscyank";
rev = "5947a6c6727841b989ac41758f99af154fa5d801";
sha256 = "0yl66imi0hbxh2rjvkx0ffzs5j66rcpialfaady4rcc5sl0a8170";
rev = "74f5ed963d6dc9dc25db212078300fca6b0a0b4d";
sha256 = "1j3dyalzy73sckad175y81sifnv65vyhlysxjllbaikafgc0k2sm";
};
meta.homepage = "https://github.com/ojroques/vim-oscyank/";
};
@ -14580,12 +14592,12 @@ final: prev:
vim-vsnip-integ = buildVimPluginFrom2Nix {
pname = "vim-vsnip-integ";
version = "2023-06-25";
version = "2023-07-01";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "vim-vsnip-integ";
rev = "04051c1e1af146abfce153cd4a0161817f06e10d";
sha256 = "0z2095qmlpnl2g4x6gmknnwnsf1pni91vd9m8ckiya7hmn5zh7rf";
rev = "1914e72cf3de70df7f5dde476cd299aba2440aef";
sha256 = "0jqnzvvhlvwrqbxk70j1z7qx5hgzqjnv0hp8rzs9sfbv3wkgq12q";
};
meta.homepage = "https://github.com/hrsh7th/vim-vsnip-integ/";
};
@ -14760,12 +14772,12 @@ final: prev:
vim-zettel = buildVimPluginFrom2Nix {
pname = "vim-zettel";
version = "2022-12-22";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "michal-h21";
repo = "vim-zettel";
rev = "7bd110f8d370c1beb812b30af82336556fa44096";
sha256 = "04r72b7vwbb5m7ik8lczknpl8qpfar3lhzj7plhzpq1sbqyj4kpm";
rev = "2b10ccce4ff9e55e702ee118dc60bf12d7921697";
sha256 = "0w8k802y0md0b5nz6fw38lghv2s7sdwvvkrqirgzbmrhchl90960";
};
meta.homepage = "https://github.com/michal-h21/vim-zettel/";
};
@ -14941,12 +14953,12 @@ final: prev:
vimtex = buildVimPluginFrom2Nix {
pname = "vimtex";
version = "2023-06-26";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "lervag";
repo = "vimtex";
rev = "b38bbcab7ab05067ce460e2d9e69c896fea7ebe0";
sha256 = "1bqh93z5fjrv3nb80s5k6wnl5wbrf5a30l88382cix9l3syz4fqr";
rev = "91fbb48c0b850684a082801138dddc941a427d38";
sha256 = "1mh5fzc08bjpkhcwj83xpgiw9vr9087zpaspz8xj6mbaac0g7jki";
};
meta.homepage = "https://github.com/lervag/vimtex/";
};
@ -15097,12 +15109,12 @@ final: prev:
wiki-vim = buildVimPluginFrom2Nix {
pname = "wiki.vim";
version = "2023-06-21";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "lervag";
repo = "wiki.vim";
rev = "c8ed0931bebce817a97a4dd0963066781b30462a";
sha256 = "0iflfly5wwhvk3xp2ndbsiimidk0djnjkcw1a43659qi8kgba18f";
rev = "ee3f7b63b29f98061782b336bd6cd1b4589f11c8";
sha256 = "1c0ihkfqf5h8i22gy2q4d2g9hcvfg1jzvnmfw6aqbbvwlcg8242q";
};
meta.homepage = "https://github.com/lervag/wiki.vim/";
};
@ -15253,12 +15265,12 @@ final: prev:
yats-vim = buildVimPluginFrom2Nix {
pname = "yats.vim";
version = "2023-06-09";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "HerringtonDarkholme";
repo = "yats.vim";
rev = "d3687891bdd333de4d831b6c7859e15d9ed3c4b2";
sha256 = "1b6383ihh3bya7gxyfj7b74qbm4sq33zyzhpicqlqcnaf5bml7nl";
rev = "e641184ea9a21ae6415eb807ea06dd50ffb02090";
sha256 = "0dv2zcqkrjy24f0820gpakpb37pmi8k93xn2dxfvfxv1zjng2zh0";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";
@ -15302,12 +15314,12 @@ final: prev:
zenbones-nvim = buildVimPluginFrom2Nix {
pname = "zenbones.nvim";
version = "2023-06-27";
version = "2023-07-02";
src = fetchFromGitHub {
owner = "mcchrish";
repo = "zenbones.nvim";
rev = "ae8a6cb5e2d478a03df3cdbc3d0ca4c4a6db35ba";
sha256 = "1a1pck42xs96armn33gjjamcw8f730vhfg63vrf9xfy41s8pl1jx";
rev = "ba1c6ad48626526f65a2eb0149abbc2747cb961b";
sha256 = "04k0l2nqjnw1qgzl0xnsi9r48rp91z6201dpwpnviv3bhlzsvdbf";
};
meta.homepage = "https://github.com/mcchrish/zenbones.nvim/";
};
@ -15410,12 +15422,12 @@ final: prev:
chad = buildVimPluginFrom2Nix {
pname = "chad";
version = "2023-06-29";
version = "2023-07-03";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "chadtree";
rev = "5f19d1797ca5f05a0b7cccd69e644c690fa72899";
sha256 = "07a4qlypr6zqxr3m8sj9vpfd82pwpia6f7jcpkfilqzmdyrdvn5l";
rev = "f472d5e35468d5741df072b6d06376c839e65e09";
sha256 = "0cw99qiajs2pqxww138m4cvbxsv5l2sysaw2c6zvbl7hnwbf6h50";
};
meta.homepage = "https://github.com/ms-jpq/chadtree/";
};

View File

@ -27,12 +27,12 @@
};
arduino = buildGrammar {
language = "arduino";
version = "0.0.0+rev=da8cae9";
version = "0.0.0+rev=bf0db73";
src = fetchFromGitHub {
owner = "ObserverOfTime";
repo = "tree-sitter-arduino";
rev = "da8cae9ce365a81dcba25256f76c713674121017";
hash = "sha256-axsaq4znP4A57oGKZJrjLrq+Yx4zVV2IssjMYVCQ2cI=";
rev = "bf0db73db96ec02f872cb7b5058dcc8bfd8fe714";
hash = "sha256-7naUhZ1xhJfirA4gYYVc36YuvY66PLGRLCqRLQie11o=";
};
meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-arduino";
};
@ -82,12 +82,12 @@
};
beancount = buildGrammar {
language = "beancount";
version = "0.0.0+rev=f3741a3";
version = "0.0.0+rev=358e5ec";
src = fetchFromGitHub {
owner = "polarmutex";
repo = "tree-sitter-beancount";
rev = "f3741a3a68ade59ec894ed84a64673494d2ba8f3";
hash = "sha256-WtZ3FindaePKbtlnilK9KkOoPxBaxRKNVM+8D52DtBE=";
rev = "358e5ecbb87109eef7fd596ea518a4ff74cb9b31";
hash = "sha256-vz8FU+asnMqF6J4UZer4iecw8uFFiYVpz4Fs/ds4Rt0=";
};
meta.homepage = "https://github.com/polarmutex/tree-sitter-beancount";
};
@ -645,12 +645,12 @@
};
go = buildGrammar {
language = "go";
version = "0.0.0+rev=3a3a8ee";
version = "0.0.0+rev=7a4edcb";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-go";
rev = "3a3a8ee53777eaa6cbfc032afd11af407ee1f7fe";
hash = "sha256-nsbQ1RNCLlgnVD+F2bfcIUjZQwOQUJCCyQVVnYw8rPo=";
rev = "7a4edcbc376302efa8d6ba7e235070ab7ee3c4c8";
hash = "sha256-VvMsFU/HSccB7JetiuNj3O+K/vm6bmDwGWhozyec4Vc=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-go";
};
@ -1153,12 +1153,12 @@
};
matlab = buildGrammar {
language = "matlab";
version = "0.0.0+rev=d7b24aa";
version = "0.0.0+rev=835cdab";
src = fetchFromGitHub {
owner = "acristoffers";
repo = "tree-sitter-matlab";
rev = "d7b24aaaf3e4814d073517d072727319d2b5ffc3";
hash = "sha256-oODBui19Ihyy9MJ0Nj1C4Ru1MN2ooMKu+njGFjUq1ao=";
rev = "835cdab0e105ccc670cf08193a958d1661f3e52b";
hash = "sha256-VhSBGkevPJSOjaEYLMR4+QfPwdO+ophtkYzLpSjgJ4k=";
};
meta.homepage = "https://github.com/acristoffers/tree-sitter-matlab";
};
@ -1740,12 +1740,12 @@
};
sql = buildGrammar {
language = "sql";
version = "0.0.0+rev=e35a16e";
version = "0.0.0+rev=5bf5e52";
src = fetchFromGitHub {
owner = "derekstride";
repo = "tree-sitter-sql";
rev = "e35a16e4b7b342de6a0fbeee108d536bb6633562";
hash = "sha256-BNLZxpJTmAIAFqmktejHYsWJnGXx4sGFA0p3V8Ym6sc=";
rev = "5bf5e5256949b5d0b1bfecd9ac7ee86630760aea";
hash = "sha256-vj5nE7fi1Y/d0rRK25qFHShpWrIFKBEHs/tVEP/gK0I=";
};
meta.homepage = "https://github.com/derekstride/tree-sitter-sql";
};
@ -2110,12 +2110,12 @@
};
wing = buildGrammar {
language = "wing";
version = "0.0.0+rev=e532784";
version = "0.0.0+rev=0835281";
src = fetchFromGitHub {
owner = "winglang";
repo = "wing";
rev = "e5327844f545d4b6d78d23afc97439fae2aa5944";
hash = "sha256-8MIWnLTHVNZRrSSbibr/wb0Fd8Mu5K3Ip+5htpvGS8w=";
rev = "0835281a20ec380fc52a1179de908c951d8d447d";
hash = "sha256-9WQRzvvwIMPdQldKNszc/Eu2JXJ1JzVkO3kDIyHr2iw=";
};
location = "libs/tree-sitter-wing";
generate = true;

View File

@ -95,6 +95,7 @@ https://github.com/famiu/bufdelete.nvim/,,
https://github.com/jlanzarotta/bufexplorer/,,
https://github.com/AndrewRadev/bufferize.vim/,HEAD,
https://github.com/akinsho/bufferline.nvim/,,
https://github.com/kwkarlwang/bufjump.nvim/,HEAD,
https://github.com/dkarter/bullets.vim/,,
https://github.com/mattn/calendar-vim/,,mattn-calendar-vim
https://github.com/itchyny/calendar.vim/,,

View File

@ -477,8 +477,8 @@ let
mktplcRef = {
name = "calva";
publisher = "betterthantomorrow";
version = "2.0.205";
sha256 = "sha256-umnG1uLB42fUNKjANaKcABjVmqbdOQakd/6TPsEpF9c";
version = "2.0.374";
sha256 = "sha256-VwdHOkduSSIrcOvrcVf7K8DSp3N1u9fvbaCVDCxp+bk=";
};
nativeBuildInputs = [ jq moreutils ];
postInstall = ''
@ -930,8 +930,8 @@ let
mktplcRef = {
name = "composer-php-vscode";
publisher = "devsense";
version = "1.34.13295";
sha256 = "sha256-1gmw9GKG6ak/TIDq8aI63KmiHhup9EsCS583Oc6jQ0I=";
version = "1.36.13428";
sha256 = "sha256-dzRuD0XBWU+xUtr86eN8zbZ6bVIq1BP0/EqgQG4JbvY=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/DEVSENSE.composer-php-vscode/changelog";
@ -948,25 +948,25 @@ let
sources = {
"x86_64-linux" = {
arch = "linux-x64";
sha256 = "sha256-L56vG9U2fqtaZIXQ5xepwLibOs/WyHQj/t2EIY7ZXvM=";
sha256 = "sha256-x4Vsr/79vZuNPGQqwOVdIMi2Ba9DfnKM1AjxCZbzJms=";
};
"x86_64-darwin" = {
arch = "darwin-x64";
sha256 = "0rx2dkaz0qpmck1k4hg0jpksixhwcrq0sndimx0f44jcnc7aby21";
sha256 = "0c9jcjavkjiv92cd4wrvgcv70igghi5ha96hg7h63cgmxg7b87gk";
};
"aarch64-linux" = {
arch = "linux-arm64";
sha256 = "13swwh1br6ry64hlq1yjbrbq71vyg44h0pb907zdjabwim27y88x";
sha256 = "0b3w3ssxymf9p1h4amnqimbsjf1wpxsi55b05wgqwh2w2zfxd91l";
};
"aarch64-darwin" = {
arch = "darwin-arm64";
sha256 = "0fsisxc3vcyqk634xbk2rdcw2g8ablv3n46y6bz20i0npa4clhpa";
sha256 = "0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73";
};
};
in {
name = "phptools-vscode";
publisher = "devsense";
version = "1.34.13295";
version = "1.36.13428";
} // sources.${stdenv.system};
nativeBuildInputs = [
@ -997,8 +997,8 @@ let
mktplcRef = {
name = "profiler-php-vscode";
publisher = "devsense";
version = "1.34.13295";
sha256 = "sha256-ZGklnPnSaHCGCRukVHie5ShvX94rXp2z3e/5PP2dq7I=";
version = "1.36.13428";
sha256 = "sha256-/CT83LdQkEvsWrQX30bgnklgGKduYC0LqZ8gaexqu60=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/DEVSENSE.profiler-php-vscode/changelog";
@ -1238,8 +1238,8 @@ let
mktplcRef = {
name = "prettier-vscode";
publisher = "esbenp";
version = "9.16.0";
sha256 = "sha256-MF+mPhX4Q6wi7FxfaWG6fNJHY6EsTWOX+9UmN0iIZGU=";
version = "9.19.0";
sha256 = "sha256-ymIlBzCcssj+J8hHOokVWUpxKTEkzkhNr80uCblhkFs=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/esbenp.prettier-vscode/changelog";
@ -1923,11 +1923,16 @@ let
mktplcRef = {
name = "magit";
publisher = "kahole";
version = "0.6.40";
sha256 = "sha256-AwkjfKBlAl6hTRN1nE6UuUuDXMJUXXDK2+3YzUp9drc=";
version = "0.6.43";
sha256 = "sha256-DPLlQ2IliyvzW8JvgVlGKNd2JjD/RbclNXU3gEFVhOE=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/kahole.magit/changelog";
description = "Magit for VSCode";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=kahole.magit";
homepage = "https://github.com/kahole/edamagit";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.azd325 ];
};
};

View File

@ -28,13 +28,13 @@
buildDotnetModule rec {
pname = "ryujinx";
version = "1.1.900"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
version = "1.1.942"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
src = fetchFromGitHub {
owner = "Ryujinx";
repo = "Ryujinx";
rev = "d604e982276105db043ca495a16f1b047bb2d0f6";
sha256 = "0fsl2cw0y7jfj9b75w4x213x9hsxkfprvb6riin87yrdhmjkwa4r";
rev = "6e28a4dd13df0ab866e6a178086abe36ca4a2b25";
sha256 = "0890gh0907wcdzx4ci2jd75a72b3kllwavkcwz56ls0vaqymqxda";
};
dotnet-sdk = dotnetCorePackages.sdk_7_0;

View File

@ -45,7 +45,7 @@
(fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "4.5.0"; sha256 = "1l6v0ii5lapmfnfpjwi3j5bwlx8v9nvyani5pwvqzdfqsd5m7mp5"; })
(fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp.Scripting"; version = "3.4.0"; sha256 = "1h2f0z9xnw987x8bydka1sd42ijqjx973md6v1gvpy1qc6ad244g"; })
(fetchNuGet { pname = "Microsoft.CodeAnalysis.Scripting.Common"; version = "3.4.0"; sha256 = "195gqnpwqkg2wlvk8x6yzm7byrxfq9bki20xmhf6lzfsdw3z4mf2"; })
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.6.2"; sha256 = "1wwmg6hn4dp2mvwn2bm81wccdw149lq17xdnpz17mvg4zcwmax7g"; })
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.6.3"; sha256 = "1xxzd2yxlbq2h4k6flp7lvffmmwrjlyha2z1yvrxxymiyyggk2zg"; })
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.3.0"; sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb"; })
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.5.0"; sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l"; })
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.7.0"; sha256 = "0gd67zlw554j098kabg887b5a6pq9kzavpa3jjy5w53ccjzjfy8j"; })
@ -56,15 +56,15 @@
(fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "6.31.0"; sha256 = "0dbvi7ifsl6gdsa1hc4bvma9qyr63gvgamwndy0k7wyvvh492rhm"; })
(fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "6.31.0"; sha256 = "0yrsysxgjfwrh1n2mplpm4jwm0ws4p49pdd3zcsql7kjjhs525lv"; })
(fetchNuGet { pname = "Microsoft.IO.RecyclableMemoryStream"; version = "2.3.2"; sha256 = "115bm7dljchr7c02hiv1r3l21r22wpml1j26fyn2amaflaihpq4l"; })
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.6.2"; sha256 = "1a658bnh5q3lfkrr81h3lyx1mc3hggnjr1bpmim71rr2s42ad70v"; })
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.6.3"; sha256 = "1f2b9ljc3l6lk2qq3ps6pzb5r4dvqvs9j1xav8kj2yy52i2dbz7r"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.2"; sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141"; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.6.2"; sha256 = "0asbrbdyyig1p034smf79lszzbfv1cn6q181i7d4p2vsiqpjp9sj"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.6.2"; sha256 = "0lcj8kkcnxbwiaw6j0xf4fxqpa6z0s41nq52spvckfg4367lg4fg"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.6.3"; sha256 = "0czzs36ybgipn9bga2swkdd653vh0wvs5hsi2lgykhblimdmb947"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.6.3"; sha256 = "0yi0n8jxf4l6v8bscgi8ws9zf5i84213pf1qj5d7nwx4jb05m23l"; })
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.0.1"; sha256 = "1n8ap0cmljbqskxpf8fjzn7kh1vvlndsa75k01qig26mbw97k2q7"; })
(fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.5.0"; sha256 = "1zapbz161ji8h82xiajgriq6zgzmb1f3ar517p2h63plhsq5gh2q"; })
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "7.0.0"; sha256 = "1bh77misznh19m1swqm3dsbji499b8xh9gk6w74sgbkarf6ni8lb"; })

View File

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "clightd";
version = "5.7";
version = "5.8";
src = fetchFromGitHub {
owner = "FedeDP";
repo = "Clightd";
rev = version;
sha256 = "sha256-4daM6Z67d52v2LmzqSZ6RSAHznyZNEqvAdWCuVFi0Kw=";
hash = "sha256-Lmno/TJVCQVNzfpKNZzuDf2OM6w6rbz+zJTr3zVo/CM=";
};
# dbus-1.pc has datadir=/etc

View File

@ -2,13 +2,13 @@
buildPythonApplication rec {
pname = "gallery-dl";
version = "1.25.6";
version = "1.25.7";
format = "setuptools";
src = fetchPypi {
inherit version;
pname = "gallery_dl";
sha256 = "sha256-CCTO/1t6lIK2nQKtqgWq0HAm760t5tOhg8v99zUkY/U=";
sha256 = "sha256-iBv7Zh/kWY/kY01mniabGNSIp3PLiYK6IMINw51fNdk=";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,77 @@
{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, withLibei ? true
, avahi
, curl
, libICE
, libSM
, libX11
, libXdmcp
, libXext
, libXinerama
, libXrandr
, libXtst
, libei
, libportal
, openssl
, pkg-config
, qtbase
, qttools
, wrapGAppsHook
}:
mkDerivation rec {
pname = "input-leap";
version = "unstable-2023-05-24";
src = fetchFromGitHub {
owner = "input-leap";
repo = "input-leap";
rev = "5e2f37bf9ec17627ae33558d99f90b7608ace422";
hash = "sha256-55RqdRu/Hi2OTiLjAFJ6Gdgg9iO5NIIJCsOkUQjR9hk=";
fetchSubmodules = true;
};
nativeBuildInputs = [ pkg-config cmake wrapGAppsHook qttools ];
buildInputs = [
curl qtbase avahi
libX11 libXext libXtst libXinerama libXrandr libXdmcp libICE libSM
] ++ lib.optionals withLibei [ libei libportal ];
cmakeFlags = [
"-DINPUTLEAP_REVISION=${builtins.substring 0 8 src.rev}"
] ++ lib.optional withLibei "-DINPUTLEAP_BUILD_LIBEI=ON";
dontWrapGApps = true;
preFixup = ''
qtWrapperArgs+=(
"''${gappsWrapperArgs[@]}"
--prefix PATH : "${lib.makeBinPath [ openssl ]}"
)
'';
postFixup = ''
substituteInPlace $out/share/applications/input-leap.desktop \
--replace "Exec=input-leap" "Exec=$out/bin/input-leap"
'';
meta = {
description = "Open-source KVM software";
longDescription = ''
Input Leap is software that mimics the functionality of a KVM switch, which historically
would allow you to use a single keyboard and mouse to control multiple computers by
physically turning a dial on the box to switch the machine you're controlling at any
given moment. Input Leap does this in software, allowing you to tell it which machine
to control by moving your mouse to the edge of the screen, or by using a keypress
to switch focus to a different system.
'';
homepage = "https://github.com/input-leap/input-leap";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ kovirobi phryneas twey shymega ];
platforms = lib.platforms.linux;
};
}

View File

@ -7,7 +7,6 @@
, pkg-config
, cli11
, eigen
, fmt
, hidrd
, inih
, microsoft-gsl
@ -38,7 +37,6 @@ stdenv.mkDerivation rec {
buildInputs = [
cli11
eigen
fmt
hidrd
inih
microsoft-gsl

View File

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "klipper-estimator";
version = "3.4.0";
version = "3.5.0";
src = fetchFromGitHub {
owner = "Annex-Engineering";
repo = "klipper_estimator";
rev = "v${version}";
hash = "sha256-h3mXdkUIc8OycvBbS5LhxsoIsO/GTXf3XkxbSpwfPHw=";
hash = "sha256-sq0HWK+zH7Rj/XFgMrI4+SVhBXPbvvoSr3A/1Aq/Fa8=";
};
cargoHash = "sha256-e9IMkrvlkiVxwRToKGLzzBW4JZNsaOpucoHQiusehdY=";
cargoHash = "sha256-QHSydaE867HaY7vBoV+v4p7G5qbQy5l3TemD3k41T4A=";
buildInputs =
[ openssl ]

View File

@ -2,40 +2,34 @@
, rustPlatform
, fetchFromGitHub
, pkg-config
, bzip2
, oniguruma
, openssl
, xz
, zstd
, stdenv
, darwin
}:
rustPlatform.buildRustPackage rec {
pname = "oranda";
version = "0.0.3";
version = "0.1.0";
src = fetchFromGitHub {
owner = "axodotdev";
repo = "oranda";
rev = "v${version}";
hash = "sha256-MT0uwLDrofCFyyYiUOogF2kNs6EPS1qxPz0gdK+Tkkg=";
hash = "sha256-bhMScPxf1svC6C8MvSHsVFrNzJYCkcR4mPJzK4OIoOU=";
};
cargoHash = "sha256-dAnZc1VvOubfn7mnpttaB6FotN3Xc+t9Qn0n5uzv1Qg=";
cargoHash = "sha256-Zan5dTW/2k4rOl20lQwJWnzIiytKF2i+1oEW4o3k/vQ=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
bzip2
oniguruma
openssl
xz
zstd
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
darwin.apple_sdk.frameworks.CoreServices
];
# requires internet access
@ -45,7 +39,6 @@ rustPlatform.buildRustPackage rec {
env = {
RUSTONIG_SYSTEM_LIBONIG = true;
ZSTD_SYS_USE_PKG_CONFIG = true;
};
meta = with lib; {

View File

@ -19,13 +19,13 @@ let
in
stdenv.mkDerivation rec {
pname = "p2pool";
version = "3.4";
version = "3.5";
src = fetchFromGitHub {
owner = "SChernykh";
repo = "p2pool";
rev = "v${version}";
sha256 = "sha256-JtBl+ZNqBbCl8gFZy+q5PP2qoRKULA++leGsyrT3DaQ=";
sha256 = "sha256-qwdEmDfH+TE0WF2HIVCn23RlzelLBvCOu9VKpScdO68=";
fetchSubmodules = true;
};

View File

@ -0,0 +1,51 @@
{ stdenv, lib, fetchFromGitea, qmake, qttools, qtbase, qtserialport
, qtconnectivity, qtcharts, qttranslations, wrapQtAppsHook }:
stdenv.mkDerivation (finalAttrs: {
pname = "ubpm";
version = "1.7.3";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "LazyT";
repo = "ubpm";
rev = finalAttrs.version;
hash = "sha256-6lvDSU0ssfs71xrac6R6qlmE0QyVcAMTUf0xmJPVzhY=";
};
postPatch = ''
substituteInPlace sources/mainapp/mainapp.pro \
--replace '$$[QT_INSTALL_TRANSLATIONS]' '${qttranslations}/translations' \
--replace 'INSTALLDIR = /tmp/ubpm.AppDir' "INSTALLDIR = $out" \
--replace '/usr/bin' '/bin' \
--replace 'INSTALLS += target translations themes devices help lin' 'INSTALLS += target translations themes devices help'
'';
preConfigure = ''
cd ./sources/
'';
postInstall = ''
install -Dm644 ../package/lin/ubpm.desktop -t $out/share/applications/
install -Dm644 ../package/lin/de.lazyt.ubpm.appdata.xml -t $out/share/metainfo/
install -Dm644 ../sources/mainapp/res/ico/app.png $out/share/icons/hicolor/256x256/apps/ubpm.png
'';
postFixup = ''
wrapQtApp $out/bin/ubpm
'';
nativeBuildInputs = [ qmake qttools wrapQtAppsHook ];
# *.so plugins are being wrapped automatically which breaks them
dontWrapQtApps = true;
buildInputs = [ qtbase qtserialport qtconnectivity qtcharts qttranslations ];
meta = with lib; {
homepage = "https://codeberg.org/LazyT/ubpm";
description = "Universal Blood Pressure Manager";
license = licenses.gpl3Only;
maintainers = with maintainers; [ kurnevsky ];
};
})

View File

@ -35,14 +35,14 @@
stdenv.mkDerivation rec {
pname = "workrave";
version = "1.10.50";
version = "1.10.51.1";
src = fetchFromGitHub {
repo = "workrave";
owner = "rcaelers";
rev = with lib;
"v" + concatStringsSep "_" (splitVersion version);
sha256 = "sha256-fSUfgk0PmiteVQis+0NmMMZXBe/377X2k9oS2yp2Qzo=";
sha256 = "sha256-rx3k4U5igRYxzuVke+x926K1Pso32iGob4Ccp0jdKds=";
};
nativeBuildInputs = [

View File

@ -1,8 +1,9 @@
{ stdenv
{ stdenvNoCC
, lib
, alsa-lib
, autoPatchelfHook
, buildFHSEnv
, ciscoPacketTracer8
, copyDesktopItems
, dbus
, dpkg
@ -21,106 +22,90 @@
, makeWrapper
, nspr
, nss
, qt5
, requireFile
, xorg
}:
let
version = "8.2.0";
ptFiles = stdenv.mkDerivation {
name = "PacketTracer8Drv";
inherit version;
dontUnpack = true;
src = requireFile {
name = "CiscoPacketTracer_${builtins.replaceStrings ["."] [""] version}_Ubuntu_64bit.deb";
sha256 = "1b19885d59f6130ee55414fb02e211a1773460689db38bfd1ac7f0d45117ed16";
url = "https://www.netacad.com";
};
nativeBuildInputs = [
alsa-lib
autoPatchelfHook
dbus
dpkg
expat
fontconfig
glib
libdrm
libglvnd
libpulseaudio
libudev0-shim
libxkbcommon
libxml2
libxslt
makeWrapper
nspr
nss
] ++ (with xorg; [
libICE
libSM
libX11
libxcb
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXScrnSaver
libXtst
xcbutilimage
xcbutilkeysyms
xcbutilrenderutil
xcbutilwm
]);
installPhase = ''
dpkg-deb -x $src $out
chmod 755 "$out"
makeWrapper "$out/opt/pt/bin/PacketTracer" "$out/bin/packettracer" \
--prefix LD_LIBRARY_PATH : "$out/opt/pt/bin"
# Keep source archive cached, to avoid re-downloading
ln -s $src $out/usr/share/
'';
};
desktopItem = makeDesktopItem {
name = "cisco-pt8.desktop";
desktopName = "Cisco Packet Tracer 8";
icon = "${ptFiles}/opt/pt/art/app.png";
exec = "packettracer8 %f";
mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ];
};
fhs = buildFHSEnv {
name = "packettracer8";
runScript = "${ptFiles}/bin/packettracer";
targetPkgs = pkgs: [ libudev0-shim ];
extraInstallCommands = ''
mkdir -p "$out/share/applications"
cp "${desktopItem}"/share/applications/* "$out/share/applications/"
'';
hashes = {
"8.2.0" = "1b19885d59f6130ee55414fb02e211a1773460689db38bfd1ac7f0d45117ed16";
"8.2.1" = "1fh79r4fnh9gjxjh39gcp4j7npgs5hh3qhrhx74x8x546an3i0s2";
};
in
stdenv.mkDerivation {
stdenvNoCC.mkDerivation rec {
pname = "ciscoPacketTracer8";
inherit version;
dontUnpack = true;
version = "8.2.1";
installPhase = ''
mkdir $out
${lndir}/bin/lndir -silent ${fhs} $out
src = requireFile {
name = "CiscoPacketTracer_${builtins.replaceStrings ["."] [""] version}_Ubuntu_64bit.deb";
sha256 = hashes.${version};
url = "https://www.netacad.com";
};
unpackPhase = ''
runHook preUnpack
dpkg-deb -x $src $out
chmod 755 "$out"
runHook postUnpack
'';
desktopItems = [ desktopItem ];
nativeBuildInputs = [ copyDesktopItems ];
nativeBuildInputs = [
autoPatchelfHook
copyDesktopItems
dpkg
makeWrapper
qt5.wrapQtAppsHook
];
buildInputs = [
alsa-lib
dbus
expat
fontconfig
glib
qt5.qtbase
qt5.qtmultimedia
qt5.qtnetworkauth
qt5.qtscript
qt5.qtspeech
qt5.qtwebengine
qt5.qtwebsockets
];
installPhase = ''
runHook preInstall
makeWrapper "$out/opt/pt/bin/PacketTracer" "$out/bin/packettracer8" \
"''${qtWrapperArgs[@]}" \
--prefix LD_LIBRARY_PATH : "$out/opt/pt/bin"
install -D $out/opt/pt/art/app.png $out/share/icons/hicolor/128x128/apps/ciscoPacketTracer8.png
rm $out/opt/pt/bin/libQt5* -f
runHook postInstall
'';
desktopItems = [
(makeDesktopItem {
name = "cisco-pt8.desktop";
desktopName = "Cisco Packet Tracer 8";
icon = "ciscoPacketTracer8";
exec = "packettracer8 %f";
mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ];
})
];
dontWrapQtApps = true;
passthru = {
inherit hashes;
};
meta = with lib; {
description = "Network simulation tool from Cisco";

View File

@ -14,11 +14,11 @@
stdenv.mkDerivation rec {
pname = "clash-verge";
version = "1.3.2";
version = "1.3.3";
src = fetchurl {
url = "https://github.com/zzzgydi/clash-verge/releases/download/v${version}/clash-verge_${version}_amd64.deb";
hash = "sha256-46+7P9WH85fC3m+5LQHpvZX2ggeH6djoO53fQxQJdYk=";
hash = "sha256-9VsHC0HqV3CavqBw9uK+zC1nHIkK8Dry3zhK1rr+VBU=";
};
nativeBuildInputs = [

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "helmfile";
version = "0.154.0";
version = "0.155.0";
src = fetchFromGitHub {
owner = "helmfile";
repo = "helmfile";
rev = "v${version}";
sha256 = "sha256-AKrTpV5Ky94H610iYO31/CBuZkTd1OcxX5Tl0GjNWaA=";
sha256 = "sha256-9YOgpXiZegimS81owjHW/in0NbxMTL+DQEgSBWdW7Rs=";
};
vendorHash = "sha256-PenQxs5Ds5GQ2LSlFRdpNUN8Y+jKCFSllMncWZwaL4c=";
vendorHash = "sha256-ioZJr3v/8HhOEJJZpsCw5Gkbg9XvMMEOugyfRhevWBc=";
doCheck = false;

View File

@ -9,13 +9,13 @@
buildGoModule rec {
pname = "kaniko";
version = "1.11.0";
version = "1.12.0";
src = fetchFromGitHub {
owner = "GoogleContainerTools";
repo = "kaniko";
rev = "v${version}";
hash = "sha256-p/mGobQyn5e7TpqjarVT7qBgYDWtX1VgXq814O8mTmI=";
hash = "sha256-wDIkQ6MY9g8uKCgfJfXsjkB4blF0QNKIKDN3rYHOa6E=";
};
vendorHash = null;

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "kubectl-gadget";
version = "0.17.0";
version = "0.18.0";
src = fetchFromGitHub {
owner = "inspektor-gadget";
repo = "inspektor-gadget";
rev = "v${version}";
hash = "sha256-7G6yot4VctwBf9MfcwXZLlon1NdaXQn7LSvkVf9y5kA=";
hash = "sha256-dn2iN6eBAX3U20omKfi3cEPpMpg/1MUjrdnSQ6eJYRM=";
};
vendorHash = "sha256-RwUL8Mh9K2OIKzpKNtj6pHsFmSH0uZpouyMMeP22JQs=";
vendorHash = "sha256-26VQPKjUNcyKJFeoxfcm9RfozcBpms+6NDozxABnDuc=";
CGO_ENABLED = 0;

View File

@ -2,18 +2,18 @@
buildGoModule rec {
pname = "kubelogin";
version = "1.27.0";
version = "1.28.0";
src = fetchFromGitHub {
owner = "int128";
repo = pname;
rev = "v${version}";
sha256 = "sha256-oBgth4lAQP4UrFIk/AErlfyyCgPrugs5wQJDFxqGum0=";
sha256 = "sha256-8atEUJLXSbLHdxo1wKtAHAFrZkQYWdW6tP2oKoxahXA=";
};
subPackages = ["."];
vendorHash = "sha256-IJCbh1ryyk0r72SrVEiI7K5nIFf1+UGjTkXaNKpGsmo=";
vendorHash = "sha256-rLpXBFNBJG3H0+2inCG4wN0I2LuKUhuqozeafUD3aMI=";
# Rename the binary instead of symlinking to avoid conflict with the
# Azure version of kubelogin

View File

@ -2,7 +2,7 @@
(callPackage ./generic.nix { }) {
channel = "edge";
version = "23.6.2";
sha256 = "1jvvywd1m87ivdcwzmi6cc9k4a53wsvmxac4v80rlqvmhaj1jq62";
vendorSha256 = "sha256-fBpF4UZaO7EtCzjzF3lg6Hea/tEOmmwRVEwNono32LU=";
version = "23.6.3";
sha256 = "0h1pwfqf6y3cfhyx1srrr0dv25d5fxk10qfqzx0hl64h2dp6srr6";
vendorSha256 = "sha256-1ir+IjyT9P+D3AbPo/7wWyZRFiKqZLJ/hoFUM1jtM0A=";
}

View File

@ -1,12 +1,12 @@
{ callPackage }: builtins.mapAttrs (pname: attrs: callPackage ./generic.nix (attrs // { inherit pname; })) {
signal-desktop = {
dir = "Signal";
version = "6.21.0";
hash = "sha256-MDjh2slEmGCMn0Q4YsIzVQO2I7ZE5XUJX5qH4OYFFxw=";
version = "6.23.0";
hash = "sha256-WZe1fJ6H+h7QcXn+gR7OJ+KSOgd9NxTDLMs7UOFeq70=";
};
signal-desktop-beta = {
dir = "Signal Beta";
version = "6.22.0-beta.3";
hash = "sha256-Obc7JHfsFrkJkcgm/i9/6hDsoHczqz7txg4W+u/Jems=";
version = "6.24.0-beta.1";
hash = "sha256-tA1xsgtAeOn0c0HcZutj+Pqrsr0JV5bQOnknH4t/QkY=";
};
}

View File

@ -17,13 +17,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "teams-for-linux";
version = "1.1.8";
version = "1.1.9";
src = fetchFromGitHub {
owner = "IsmaelMartinez";
repo = "teams-for-linux";
rev = "v${finalAttrs.version}";
hash = "sha256-YbO5bDHbquuiokIyepqE8nM+IZDW+x6rzJqnzeqoS8Q=";
hash = "sha256-lFDyV2PwsYWmZ5E19LpWk60Fjo39M0wd8C1Z2qL3G+0=";
};
offlineCache = fetchYarnDeps {

View File

@ -1,15 +1,16 @@
{ fetchurl, lib, stdenv
{ fetchurl, lib, stdenv, makeWrapper
, pkg-config, gnupg
, xapian, gmime3, talloc, zlib
, xapian, gmime3, sfsexp, talloc, zlib
, doxygen, perl, texinfo
, notmuch
, pythonPackages
, emacs
, ruby
, testers
, which, dtach, openssl, bash, gdb, man
, which, dtach, openssl, bash, gdb, man, git
, withEmacs ? true
, withRuby ? true
, withSfsexp ? true # also installs notmuch-git, which requires sexp-support
}:
stdenv.mkDerivation rec {
@ -28,14 +29,16 @@ stdenv.mkDerivation rec {
texinfo # (optional) documentation -> doc/INSTALL
pythonPackages.cffi
] ++ lib.optional withEmacs emacs
++ lib.optional withRuby ruby;
++ lib.optional withRuby ruby
++ lib.optional withSfsexp makeWrapper;
buildInputs = [
gnupg # undefined dependencies
xapian gmime3 talloc zlib # dependencies described in INSTALL
perl
pythonPackages.python
] ++ lib.optional withRuby ruby;
] ++ lib.optional withRuby ruby
++ lib.optional withSfsexp sfsexp;
postPatch = ''
patchShebangs configure test/
@ -75,6 +78,12 @@ stdenv.mkDerivation rec {
++ lib.optional withEmacs "emacs"
++ lib.optional withRuby "ruby";
# if notmuch is built with s-expression support, the testsuite (T-850.sh) only
# passes if notmuch-git can be executed, so we need to patch its shebang.
postBuild = lib.optionalString withSfsexp ''
patchShebangs notmuch-git
'';
preCheck = let
test-database = fetchurl {
url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
@ -94,7 +103,10 @@ stdenv.mkDerivation rec {
nativeCheckInputs = [
which dtach openssl bash
gdb man emacs
];
]
# for the test T-850.sh for notmuch-git, which is skipped when notmuch is
# built without sexp-support
++ lib.optional withSfsexp git;
installTargets = [ "install" "install-man" "install-info" ];
@ -106,6 +118,12 @@ stdenv.mkDerivation rec {
SHELL=$SHELL \
$makeFlags "''${makeFlagsArray[@]}" \
$installFlags "''${installFlagsArray[@]}"
''
# notmuch-git (https://notmuchmail.org/doc/latest/man1/notmuch-git.html) does not work without
# sexp-support, so there is no point in installing if we're building without it.
+ lib.optionalString withSfsexp ''
cp notmuch-git $out/bin/notmuch-git
wrapProgram $out/bin/notmuch-git --prefix PATH : $out/bin:${lib.getBin git}/bin
'';
passthru = {

View File

@ -68,11 +68,11 @@ in
stdenv.mkDerivation rec {
pname = "mullvad-vpn";
version = "2023.3";
version = "2023.4";
src = fetchurl {
url = "https://github.com/mullvad/mullvadvpn-app/releases/download/${version}/MullvadVPN-${version}_amd64.deb";
sha256 = "sha256-+XK9xUeSs93egmtsQ7qATug/n9taeQkmc4ZgObPYvn4=";
sha256 = "sha256-7NoifrX1/3pUJHTYK+2dVos/oFsKiYwyhCGi07SsEhM=";
};
nativeBuildInputs = [

View File

@ -6,13 +6,13 @@
let
pname = "trilium-desktop";
version = "0.60.3";
version = "0.60.4";
linuxSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
linuxSource.sha256 = "0hfrww1r4s2rga8wzwhcfk60jy4b4xwglgflbc5jbxk3jalvk73x";
linuxSource.sha256 = "02vbghvi2sbh943rslgm712x9zccvpjab3jvr5b1bw4bq5fzppgq";
darwinSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-mac-x64-${version}.zip";
darwinSource.sha256 = "0scwq4fmllhjmcj0621rlaaniib3nabfwjmsxdfc5hfnlhjzq7qs";
darwinSource.sha256 = "0z6dk16xdzkiyxrm1yh3iz5351c8sdzvk8v5l3jdqy7davxw9f86";
meta = metaCommon // {
mainProgram = "trilium";

View File

@ -3,8 +3,8 @@
let
serverSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
serverSource.sha256 = "16xlbhjsd0xqaph14wk05qri256d7jga7fz0fwl4rw0li8r9qyd7";
version = "0.60.3";
serverSource.sha256 = "16xyxpxqvzhdq63wc2nzmfabpasypxwm474jf15y3q8kdrca9myv";
version = "0.60.4";
in stdenv.mkDerivation rec {
pname = "trilium-server";
inherit version;

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, makeWrapper, cmake, expat, openssl, zlib, db, curl, wxGTK32 }:
{ lib, stdenv, fetchurl, cmake, expat, openssl, zlib, lmdb, curl, wxGTK32, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "tqsl";
@ -9,12 +9,12 @@ stdenv.mkDerivation rec {
sha256 = "sha256-UGPMp1mAarHWuLbZu2wWpjgCdf8ZKj0Mwkqp32U5/8w=";
};
nativeBuildInputs = [ cmake makeWrapper ];
nativeBuildInputs = [ cmake wrapGAppsHook ];
buildInputs = [
expat
openssl
zlib
db
lmdb
(curl.override { inherit openssl; })
wxGTK32
];

View File

@ -1,17 +1,18 @@
{ lib, stdenv, fetchFromGitHub, cmake }:
{ lib, stdenv, fetchFromGitHub, cmake, llvmPackages}:
stdenv.mkDerivation rec {
pname = "veryfasttree";
version = "3.1.1";
version = "4.0";
src = fetchFromGitHub {
owner = "citiususc";
repo = pname;
rev = "v${version}";
hash = "sha256-AOzbxUnrn1qgscjdOKf4dordnSKtIg3nSVaYWK1jbuc=";
hash = "sha256-ue3/2UTIQA6av+66xvGApLi9x0kM5vAmGHHTrboOaeQ=";
};
nativeBuildInputs = [ cmake ];
buildInputs = lib.optional stdenv.cc.isClang llvmPackages.openmp;
installPhase = ''
install -m755 -D VeryFastTree $out/bin/VeryFastTree
@ -22,5 +23,6 @@ stdenv.mkDerivation rec {
license = licenses.gpl3Plus;
homepage = "https://github.com/citiususc/veryfasttree";
maintainers = with maintainers; [ thyol ];
platforms = platforms.all;
};
}

View File

@ -1,49 +1,41 @@
From fbc1488e8da0175e9c9bdf5892f8a65c71f2a266 Mon Sep 17 00:00:00 2001
From 206084d2e08198b0b5b67733c407bd3fb74affb1 Mon Sep 17 00:00:00 2001
From: Jiajie Chen <c@jia.je>
Date: Fri, 15 Jul 2022 18:33:15 +0800
Date: Sun, 2 Jul 2023 22:43:27 +0800
Subject: [PATCH] Do not download sources in cmake
---
src/solvers/CMakeLists.txt | 20 +-------------------
1 file changed, 1 insertion(+), 19 deletions(-)
src/solvers/CMakeLists.txt | 11 +----------
1 file changed, 1 insertion(+), 10 deletions(-)
diff --git a/src/solvers/CMakeLists.txt b/src/solvers/CMakeLists.txt
index 744def486..5b719a78a 100644
index 8bfcf4d13c..6ba858a461 100644
--- a/src/solvers/CMakeLists.txt
+++ b/src/solvers/CMakeLists.txt
@@ -106,31 +106,13 @@ elseif("${sat_impl}" STREQUAL "glucose")
elseif("${sat_impl}" STREQUAL "cadical")
message(STATUS "Building solvers with cadical")
@@ -123,16 +123,6 @@ foreach(SOLVER ${sat_impl})
elseif("${SOLVER}" STREQUAL "cadical")
message(STATUS "Building solvers with cadical")
- download_project(PROJ cadical
- URL https://github.com/arminbiere/cadical/archive/rel-1.4.1.tar.gz
- PATCH_COMMAND true
- COMMAND CXX=${CMAKE_CXX_COMPILER} ./configure -O3 -s CXXFLAGS=-std=c++14
- URL_MD5 b44874501a175106424f4bd5de29aa59
- )
- download_project(PROJ cadical
- URL https://github.com/arminbiere/cadical/archive/rel-1.5.3.tar.gz
- PATCH_COMMAND patch -p1 -i ${CBMC_SOURCE_DIR}/../scripts/cadical-1.5.3-patch
- COMMAND cmake -E copy ${CBMC_SOURCE_DIR}/../scripts/cadical_CMakeLists.txt CMakeLists.txt
- COMMAND ./configure
- URL_MD5 265b1a715000ed3c5b6de36ddd1278a0
- )
-
message(STATUS "Building CaDiCaL")
- execute_process(COMMAND make -j WORKING_DIRECTORY ${cadical_SOURCE_DIR})
target_compile_definitions(solvers PUBLIC
SATCHECK_CADICAL HAVE_CADICAL
)
- add_library(cadical STATIC IMPORTED)
- add_subdirectory(${cadical_SOURCE_DIR} ${cadical_BINARY_DIR})
-
- set_target_properties(
- cadical
- PROPERTIES IMPORTED_LOCATION ${cadical_SOURCE_DIR}/build/libcadical.a
- )
-
- target_include_directories(solvers
- PUBLIC
- ${cadical_SOURCE_DIR}/src
- )
+ target_include_directories(solvers PUBLIC ${cadical_INCLUDE_DIR})
target_compile_definitions(solvers PUBLIC
SATCHECK_CADICAL HAVE_CADICAL
)
@@ -140,6 +130,7 @@ foreach(SOLVER ${sat_impl})
target_include_directories(solvers
PUBLIC
${cadical_SOURCE_DIR}/src
+ ${cadical_INCLUDE_DIR}
)
target_link_libraries(solvers cadical)
elseif("${sat_impl}" STREQUAL "ipasir-cadical")
target_link_libraries(solvers cadical)
--
2.35.1
2.40.1

View File

@ -13,13 +13,13 @@
stdenv.mkDerivation rec {
pname = "cbmc";
version = "5.76.1";
version = "5.86.0";
src = fetchFromGitHub {
owner = "diffblue";
repo = pname;
rev = "${pname}-${version}";
sha256 = "sha256-OVOoAfoqev33c7pIzBGK9HD+zgji/+BWKD33RYJaSDc=";
sha256 = "sha256-7nlon04EAaAmoTme15PNl2RwTfayXo0YokRLtQLN9/s=";
};
nativeBuildInputs = [

Some files were not shown because too many files have changed in this diff Show More