Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2024-03-17 00:02:45 +00:00 committed by GitHub
commit b74fe245b8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
201 changed files with 12617 additions and 10633 deletions

3
doc/anchor-use.js Normal file
View File

@ -0,0 +1,3 @@
document.addEventListener('DOMContentLoaded', function(event) {
anchors.add('h1:not(div.note h1, div.warning h1, div.tip h1, div.caution h1, div.important h1), h2:not(div.note h2, div.warning h2, div.tip h2, div.caution h2, div.important h2), h3:not(div.note h3, div.warning h3, div.tip h3, div.caution h3, div.important h3), h4:not(div.note h4, div.warning h4, div.tip h4, div.caution h4, div.important h4), h5:not(div.note h5, div.warning h5, div.tip h5, div.caution h5, div.important h5), h6:not(div.note h6, div.warning h6, div.tip h6, div.caution h6, div.important h6)');
});

9
doc/anchor.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -122,16 +122,17 @@ in pkgs.stdenv.mkDerivation {
${pkgs.documentation-highlighter}/mono-blue.css \
${pkgs.documentation-highlighter}/loader.js
cp -t out ./overrides.css ./style.css
cp -t out ./style.css ./anchor.min.js ./anchor-use.js
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 \
--script ./anchor.min.js \
--script ./anchor-use.js \
--toc-depth 1 \
--section-toc-depth 1 \
manual.md \

View File

@ -113,7 +113,7 @@ Each of those compiler versions has a corresponding attribute set built using
it. However, the non-standard package sets are not tested regularly and, as a
result, contain fewer working packages. The corresponding package set for GHC
9.4.5 is `haskell.packages.ghc945`. In fact `haskellPackages` is just an alias
for `haskell.packages.ghc927`:
for `haskell.packages.ghc964`:
```console
$ nix-env -f '<nixpkgs>' -qaP -A haskell.packages.ghc927
@ -1020,6 +1020,11 @@ failing because of e.g. a syntax error in the Haddock documentation.
: Sets `doCheck` to `false` for `drv`. Useful if a package has a broken,
flaky or otherwise problematic test suite breaking the build.
`dontCheckIf condition drv`
: Sets `doCheck` to `false` for `drv`, but only if `condition` applies.
Otherwise it's a no-op. Useful to conditionally disable tests for a package
without interfering with previous overrides or default values.
<!-- Purposefully omitting the non-list variants here. They are a bit
ugly, and we may want to deprecate them at some point. -->

View File

@ -1,22 +0,0 @@
.docbook .xref img[src^=images\/callouts\/],
.screen img,
.programlisting img,
.literallayout img,
.synopsis img {
width: 1em;
}
.calloutlist img {
width: 1.5em;
}
.prompt,
.screen img,
.programlisting img,
.literallayout img,
.synopsis img {
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}

View File

@ -1,291 +1,416 @@
/* Copied from http://bakefile.sourceforge.net/, which appears
licensed under the GNU GPL. */
/***************************************************************************
Basic headers and text:
***************************************************************************/
body
{
font-family: "Nimbus Sans L", sans-serif;
font-size: 1em;
background: white;
margin: 2em 1em 2em 1em;
html {
line-height: 1.15;
-webkit-text-size-adjust: 100%;
}
h1, h2, h3, h4
{
color: #005aa0;
body {
margin: 0;
}
h1 /* title */
{
font-size: 200%;
}
h2 /* chapters, appendices, subtitle */
{
font-size: 180%;
}
div.book
{
text-align: center;
}
div.book > div
{
/*
* based on https://medium.com/@zkareemz/golden-ratio-62b3b6d4282a
* we do 70 characters per line to fit code listings better
* 70 * (font-size / 1.618)
* expression for emacs:
* (* 70 (/ 1 1.618))
*/
max-width: 43.2em;
text-align: left;
.book {
margin: auto;
width: 100%;
}
/* Extra space between chapters, appendices. */
div.chapter > div.titlepage h2, div.appendix > div.titlepage h2
{
margin-top: 1.5em;
@media screen and (min-width: 768px) {
.book {
max-width: 46rem;
}
}
div.section > div.titlepage h2 /* sections */
{
font-size: 150%;
margin-top: 1.5em;
@media screen and (min-width: 992px) {
.book {
max-width: 60rem;
}
}
h3 /* subsections */
{
font-size: 125%;
@media screen and (min-width: 1200px) {
.book {
max-width: 73rem;
}
}
div.simplesect h2
{
font-size: 110%;
.book .list-of-examples {
display: none;
}
div.appendix h3
{
font-size: 150%;
margin-top: 1.5em;
h1 {
font-size: 2em;
margin: 0.67em 0;
}
div.refnamediv h2, div.refsynopsisdiv h2, div.refsection h2 /* refentry parts */
{
margin-top: 1.4em;
font-size: 125%;
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
div.refsection h3
{
font-size: 110%;
pre {
font-family: monospace, monospace;
font-size: 1em;
}
/***************************************************************************
Examples:
***************************************************************************/
div.example
{
border: 1px solid #b0b0b0;
padding: 6px 6px;
margin-left: 1.5em;
margin-right: 1.5em;
background: #f4f4f8;
border-radius: 0.4em;
box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
a {
background-color: transparent;
}
div.example p.title
{
margin-top: 0em;
strong {
font-weight: bolder;
}
div.example pre
{
box-shadow: none;
code {
font-family: monospace, monospace;
font-size: 1em;
}
/***************************************************************************
Screen dumps:
***************************************************************************/
pre.screen, pre.programlisting
{
border: 1px solid #b0b0b0;
padding: 3px 3px;
margin-left: 0.5em;
margin-right: 0.5em;
background: #f4f4f8;
font-family: monospace;
border-radius: 0.4em;
box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
div.example pre.programlisting
{
border: 0px;
padding: 0 0;
margin: 0 0 0 0;
sup {
top: -0.5em;
}
/***************************************************************************
Notes, warnings etc:
***************************************************************************/
.note, .warning
{
border: 1px solid #b0b0b0;
padding: 3px 3px;
margin-left: 1.5em;
margin-right: 1.5em;
margin-bottom: 1em;
padding: 0.3em 0.3em 0.3em 0.3em;
background: #fffff5;
border-radius: 0.4em;
box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}
div.note, div.warning
{
font-style: italic;
pre {
overflow: auto;
}
div.note h3, div.warning h3
{
color: red;
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
font-size: 100%;
padding-right: 0.5em;
display: inline;
line-height: 1.77777778;
}
div.note p, div.warning p
{
margin-bottom: 0em;
@media screen and (min-width: 4000px) {
html {
background: #000;
}
html body {
margin: auto;
max-width: 250rem;
}
}
div.note h3 + p, div.warning h3 + p
{
display: inline;
@media screen and (max-width: 320px) {
html {
font-size: calc(16 / 320 * 100vw);
}
}
div.note h3
{
color: blue;
font-size: 100%;
body {
font-size: 1rem;
font-family: 'Roboto', sans-serif;
font-weight: 300;
color: #000000;
background-color: #ffffff;
min-height: 100vh;
display: flex;
flex-direction: column;
}
div.navfooter *
{
font-size: 90%;
@media screen and (max-width: 767.9px) {
body {
padding-left: 1rem;
padding-right: 1rem;
}
}
/***************************************************************************
Links colors and highlighting:
***************************************************************************/
a { text-decoration: none; }
a:hover { text-decoration: underline; }
a:link { color: #0048b3; }
a:visited { color: #002a6a; }
/***************************************************************************
Table of contents:
***************************************************************************/
div.toc
{
font-size: 90%;
a {
text-decoration: none;
border-bottom: 1px solid;
color: #405d99;
}
div.toc dl
{
margin-top: 0em;
margin-bottom: 0em;
ul {
padding: 0;
margin-top: 0;
margin-right: 0;
margin-bottom: 1rem;
margin-left: 1rem;
}
/***************************************************************************
Special elements:
***************************************************************************/
tt, code
{
color: #400000;
}
.term
{
font-weight: bold;
}
div.variablelist dd p, div.glosslist dd p
{
margin-top: 0em;
}
div.variablelist dd, div.glosslist dd
{
margin-left: 1.5em;
}
div.glosslist dt
{
font-style: italic;
}
.varname
{
color: #400000;
}
span.command strong
{
font-weight: normal;
color: #400000;
}
div.calloutlist table
{
box-shadow: none;
}
table
{
table {
border-collapse: collapse;
box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
width: 100%;
margin-bottom: 1rem;
}
table.simplelist
{
thead th {
text-align: left;
color: #005aa0;
}
hr {
margin-top: 1rem;
margin-bottom: 1rem;
}
h1 {
font-weight: 800;
line-height: 110%;
font-size: 200%;
margin-bottom: 1rem;
color: #6586c8;
}
h2 {
font-weight: 800;
line-height: 110%;
font-size: 170%;
margin-bottom: 0.625rem;
color: #6586c8;
}
h2:not(:first-child) {
margin-top: 1rem;
}
h3 {
font-weight: 800;
line-height: 110%;
margin-bottom: 1rem;
font-size: 150%;
color: #6586c8;
}
.note h3,
.tip h3,
.warning h3,
.caution h3,
.important h3 {
font-size: 120%;
}
h4 {
font-weight: 800;
line-height: 110%;
margin-bottom: 1rem;
font-size: 140%;
color: #6586c8;
}
h5 {
font-weight: 800;
line-height: 110%;
margin-bottom: 1rem;
font-size: 130%;
color: #6a6a6a;
}
h6 {
font-weight: 800;
line-height: 110%;
margin-bottom: 1rem;
font-size: 120%
}
strong {
font-weight: bold;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
dt>*:first-child,
dd>*:first-child {
margin-top: 0;
}
dt>*:last-child,
dd>*:last-child {
margin-bottom: 0;
}
pre,
code {
font-family: monospace;
}
code {
color: #ff8657;
background: #f4f4f4;
display: inline-block;
padding: 0 0.5rem;
border: 1px solid #d8d8d8;
border-radius: 0.5rem;
line-height: 1.57777778;
}
div.book .programlisting,
div.appendix .programlisting {
border-radius: 0.5rem;
padding: 1rem;
overflow: auto;
background: #f2f8fd;
color: #000000;
}
div.book .note,
div.book .tip,
div.book .warning,
div.book .caution,
div.book .important,
div.appendix .note,
div.appendix .tip,
div.appendix .warning,
div.appendix .caution,
div.appendix .important {
margin-bottom: 1rem;
border-radius: 0.5rem;
padding: 1.5rem;
overflow: auto;
background: #f4f4f4;
}
div.book .note>.title,
div.book .tip>.title,
div.book .warning>.title,
div.book .caution>.title,
div.book .important>.title,
div.appendix .note>.title,
div.appendix .tip>.title,
div.appendix .warning>.title,
div.appendix .caution>.title,
div.appendix .important>.title {
font-weight: 800;
/* font-family: 'Overpass', serif; */
line-height: 110%;
margin-bottom: 1rem;
color: inherit;
margin-bottom: 0;
}
div.book .note> :first-child,
div.book .tip> :first-child,
div.book .warning> :first-child,
div.book .caution> :first-child,
div.book .important> :first-child,
div.appendix .note> :first-child,
div.appendix .tip> :first-child,
div.appendix .warning> :first-child,
div.appendix .caution> :first-child,
div.appendix .important> :first-child {
margin-top: 0;
}
div.book .note> :last-child,
div.book .tip> :last-child,
div.book .warning> :last-child,
div.book .caution> :last-child,
div.book .important> :last-child,
div.appendix .note> :last-child,
div.appendix .tip> :last-child,
div.appendix .warning> :last-child,
div.appendix .caution> :last-child,
div.appendix .important> :last-child {
margin-bottom: 0;
}
div.book .note,
div.book .tip,
div.appendix .note,
div.appendix .tip {
color: #5277c3;
background: #f2f8fd;
}
div.book .warning,
div.book .caution,
div.appendix .warning,
div.appendix .caution {
color: #cc3900;
background-color: #fff5e1;
}
div.book .section,
div.appendix .section {
margin-top: 2em;
}
div.book div.example,
div.appendix div.example {
margin-top: 1.5em;
}
div.book br.example-break,
div.appendix br.example-break {
display: none;
}
div.book div.footnotes>hr,
div.appendix div.footnotes>hr {
border-color: #d8d8d8;
}
div.book div.footnotes>br,
div.appendix div.footnotes>br {
display: none;
}
div.book dt,
div.appendix dt {
margin-top: 1em;
}
div.book .toc dt,
div.appendix .toc dt {
margin-top: 0;
}
div.book .list-of-examples dt,
div.appendix .list-of-examples dt {
margin-top: 0;
}
div.book code,
div.appendix code {
padding: 0;
border: 0;
padding: 5px;
background: #fffff5;
font-weight: normal;
font-style: italic;
box-shadow: none;
margin-bottom: 1em;
background-color: inherit;
color: inherit;
font-size: 100%;
-webkit-hyphens: none;
-moz-hyphens: none;
hyphens: none;
}
div.navheader table, div.navfooter table {
box-shadow: none;
div.book div.toc,
div.appendix div.toc {
margin-bottom: 3em;
border-bottom: 0.0625rem solid #d8d8d8;
}
div.affiliation
{
font-style: italic;
div.book div.toc dd,
div.appendix div.toc dd {
margin-left: 2em;
}
div.book span.command,
div.appendix span.command {
font-family: monospace;
-webkit-hyphens: none;
-moz-hyphens: none;
hyphens: none;
}
div.book .informaltable th,
div.book .informaltable td,
div.appendix .informaltable th,
div.appendix .informaltable td {
padding: 0.5rem;
}

View File

@ -2,8 +2,10 @@
let
pkgs = import ../../.. {};
inherit (pkgs) lib;
getDeps = _: pkg: {
deps = builtins.filter (x: x != null) (map (x: x.pname or null) (pkg.propagatedBuildInputs or []));
getDeps = _: pkg: let
pname = pkg.pname or null;
in {
deps = builtins.filter (x: x != null && x != pname) (map (x: x.pname or null) (pkg.propagatedBuildInputs or []));
broken = (pkg.meta.hydraPlatforms or [null]) == [];
};
in

View File

@ -83,7 +83,7 @@ import Prelude hiding (id)
import Data.List (sortOn)
import Control.Concurrent.Async (concurrently)
import Control.Exception (evaluate)
import qualified Data.IntMap.Strict as IntMap
import qualified Data.IntMap.Lazy as IntMap
import qualified Data.IntSet as IntSet
import Data.Bifunctor (second)
import Data.Data (Proxy)
@ -299,7 +299,7 @@ calculateReverseDependencies depMap =
Map.fromDistinctAscList $ zip keys (zip (rdepMap False) (rdepMap True))
where
-- This code tries to efficiently invert the dependency map and calculate
-- its transitive closure by internally identifying every pkg with its index
-- its transitive closure by internally identifying every pkg with its index
-- in the package list and then using memoization.
keys :: [PkgName]
keys = Map.keys depMap
@ -317,11 +317,11 @@ calculateReverseDependencies depMap =
intDeps :: [(Int, (Bool, [Int]))]
intDeps = zip [0..] (fmap depInfoToIdx depInfos)
rdepMap onlyUnbroken = IntSet.size <$> resultList
rdepMap onlyUnbroken = IntSet.size <$> IntMap.elems resultList
where
resultList = go <$> [0..]
resultList = IntMap.fromDistinctAscList [(i, go i) | i <- [0..length keys - 1]]
oneStepMap = IntMap.fromListWith IntSet.union $ (\(key,(_,deps)) -> (,IntSet.singleton key) <$> deps) <=< filter (\(_, (broken,_)) -> not (broken && onlyUnbroken)) $ intDeps
go pkg = IntSet.unions (oneStep:((resultList !!) <$> IntSet.toList oneStep))
go pkg = IntSet.unions (oneStep:((resultList IntMap.!) <$> IntSet.toList oneStep))
where oneStep = IntMap.findWithDefault mempty pkg oneStepMap
-- | Generate a mapping of Hydra job names to maintainer GitHub handles. Calls

View File

@ -66,10 +66,6 @@ done
HACKAGE2NIX="${HACKAGE2NIX:-hackage2nix}"
# To prevent hackage2nix fails because of encoding.
# See: https://github.com/NixOS/nixpkgs/pull/122023
export LC_ALL=C.UTF-8
config_dir=pkgs/development/haskell-modules/configuration-hackage2nix
run_hackage2nix() {

View File

@ -8,7 +8,7 @@ set -eu -o pipefail
# (should be capitalized like the display name)
SOLVER=LTS
# Stackage solver verson, if any. Use latest if empty
VERSION=21
VERSION=
TMP_TEMPLATE=update-stackage.XXXXXXX
readonly SOLVER
readonly VERSION

View File

@ -105,7 +105,9 @@ in rec {
mkdir -p $dst
cp ${../../../doc/style.css} $dst/style.css
cp ${../../../doc/overrides.css} $dst/overrides.css
cp ${../../../doc/anchor.min.js} $dst/anchor.min.js
cp ${../../../doc/anchor-use.js} $dst/anchor-use.js
cp -r ${pkgs.documentation-highlighter} $dst/highlightjs
${prepareManualFromMD}
@ -115,10 +117,11 @@ in rec {
--revision ${lib.escapeShellArg revision} \
--generator "nixos-render-docs ${lib.version}" \
--stylesheet style.css \
--stylesheet overrides.css \
--stylesheet highlightjs/mono-blue.css \
--script ./highlightjs/highlight.pack.js \
--script ./highlightjs/loader.js \
--script ./anchor.min.js \
--script ./anchor-use.js \
--toc-depth 1 \
--chunk-toc-depth 1 \
./manual.md \

View File

@ -134,6 +134,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- The `power.ups` module now generates `upsd.conf`, `upsd.users` and `upsmon.conf` automatically from a set of new configuration options. This breaks compatibility with existing `power.ups` setups where these files were created manually. Back up these files before upgrading NixOS.
- `pdns` was updated to version [v4.9.x](https://doc.powerdns.com/authoritative/changelog/4.9.html), which introduces breaking changes. Check out the [Upgrade Notes](https://doc.powerdns.com/authoritative/upgrading.html#to-4-9-0) for details.
- `unrar` was updated to v7. See [changelog](https://www.rarlab.com/unrar7notes.htm) for more information.
- `k9s` was updated to v0.31. There have been various breaking changes in the config file format,

View File

@ -44,8 +44,8 @@ in {
'';
apply = steam: steam.override (prev: {
extraEnv = (lib.optionalAttrs (cfg.extraCompatPackages != [ ]) {
STEAM_EXTRA_COMPAT_TOOLS_PATHS = makeBinPath cfg.extraCompatPackages;
}) // (prev.extraEnv or {});
STEAM_EXTRA_COMPAT_TOOLS_PATHS = makeSearchPathOutput "steamcompattool" "" cfg.extraCompatPackages;
}) // (prev.extraEnv or {});
extraLibraries = pkgs: let
prevLibs = if prev ? extraLibraries then prev.extraLibraries pkgs else [ ];
additionalLibs = with config.hardware.opengl;
@ -74,10 +74,17 @@ in {
extraCompatPackages = mkOption {
type = types.listOf types.package;
default = [ ];
example = literalExpression ''
with pkgs; [
proton-ge-bin
]
'';
description = lib.mdDoc ''
Extra packages to be used as compatibility tools for Steam on Linux. Packages will be included
in the `STEAM_EXTRA_COMPAT_TOOLS_PATHS` environmental variable. For more information see
<https://github.com/ValveSoftware/steam-for-linux/issues/6310">.
https://github.com/ValveSoftware/steam-for-linux/issues/6310.
These packages must be Steam compatibility tools that have a `steamcompattool` output.
'';
};

View File

@ -2,7 +2,7 @@
let
inherit (lib) maintainers;
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.options) literalExpression mkEnableOption mkOption mkPackageOption;
inherit (lib.types) bool enum nullOr port str submodule;
@ -156,42 +156,44 @@ in
};
};
config = mkIf (cfg.enable || cfg.collector.enable) {
services.influxdb2.enable = cfg.influxdb.enable;
config = mkMerge [
(mkIf cfg.enable {
services.influxdb2.enable = cfg.influxdb.enable;
networking.firewall = mkIf cfg.openFirewall {
allowedTCPPorts = [ cfg.settings.web.listen.port ];
};
networking.firewall = mkIf cfg.openFirewall {
allowedTCPPorts = [ cfg.settings.web.listen.port ];
};
services.smartd = mkIf cfg.collector.enable {
enable = true;
extraOptions = [
"-A /var/log/smartd/"
"--interval=600"
];
};
systemd = {
services = {
scrutiny = mkIf cfg.enable {
description = "Hard Drive S.M.A.R.T Monitoring, Historical Trends & Real World Failure Thresholds";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
environment = {
SCRUTINY_VERSION = "1";
SCRUTINY_WEB_DATABASE_LOCATION = "/var/lib/scrutiny/scrutiny.db";
SCRUTINY_WEB_SRC_FRONTEND_PATH = "${cfg.package}/share/scrutiny";
};
serviceConfig = {
DynamicUser = true;
ExecStart = "${getExe cfg.package} start --config ${settingsFormat.generate "scrutiny.yaml" cfg.settings}";
Restart = "always";
StateDirectory = "scrutiny";
StateDirectoryMode = "0750";
};
systemd.services.scrutiny = {
description = "Hard Drive S.M.A.R.T Monitoring, Historical Trends & Real World Failure Thresholds";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ] ++ lib.optional cfg.influxdb.enable "influxdb2.service";
wants = lib.optional cfg.influxdb.enable "influxdb2.service";
environment = {
SCRUTINY_VERSION = "1";
SCRUTINY_WEB_DATABASE_LOCATION = "/var/lib/scrutiny/scrutiny.db";
SCRUTINY_WEB_SRC_FRONTEND_PATH = "${cfg.package}/share/scrutiny";
};
serviceConfig = {
DynamicUser = true;
ExecStart = "${getExe cfg.package} start --config ${settingsFormat.generate "scrutiny.yaml" cfg.settings}";
Restart = "always";
StateDirectory = "scrutiny";
StateDirectoryMode = "0750";
};
};
})
(mkIf cfg.collector.enable {
services.smartd = {
enable = true;
extraOptions = [
"-A /var/log/smartd/"
"--interval=600"
];
};
scrutiny-collector = mkIf cfg.collector.enable {
systemd = {
services.scrutiny-collector = {
description = "Scrutiny Collector Service";
environment = {
COLLECTOR_VERSION = "1";
@ -203,13 +205,11 @@ in
};
startAt = cfg.collector.schedule;
};
};
timers = mkIf cfg.collector.enable {
scrutiny-collector.timerConfig.Persistent = true;
timers.scrutiny-collector.timerConfig.Persistent = true;
};
};
};
})
];
meta.maintainers = [ maintainers.jnsgruk ];
}

View File

@ -468,6 +468,7 @@ in
StateDirectory = [
"pretix"
];
StateDirectoryMode = "0755";
CacheDirectory = "pretix";
LogsDirectory = "pretix";
WorkingDirectory = cfg.settings.pretix.datadir;
@ -506,7 +507,7 @@ in
"~@privileged"
"@chown"
];
UMask = "0077";
UMask = "0022";
};
};
in {

View File

@ -14,6 +14,7 @@
openvswitch = import ./openvswitch.nix { inherit system pkgs; };
preseed = import ./preseed.nix { inherit system pkgs; };
socket-activated = import ./socket-activated.nix { inherit system pkgs; };
storage = import ./storage.nix { inherit system pkgs; };
ui = import ./ui.nix {inherit system pkgs;};
virtual-machine = handleTestOn [ "x86_64-linux" ] ./virtual-machine.nix { inherit system pkgs; };
}

View File

@ -0,0 +1,46 @@
import ../make-test-python.nix (
{ pkgs, lib, ... }:
{
name = "incus-storage";
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine =
{ lib, ... }:
{
boot.supportedFilesystems = [ "zfs" ];
boot.zfs.forceImportRoot = false;
environment.systemPackages = [ pkgs.parted ];
networking.hostId = "01234567";
networking.nftables.enable = true;
virtualisation = {
emptyDiskImages = [ 2048 ];
incus.enable = true;
};
};
testScript = ''
machine.wait_for_unit("incus.service")
with subtest("Verify zfs pool created and usable"):
machine.succeed(
"zpool status",
"parted --script /dev/vdb mklabel gpt",
"zpool create zfs_pool /dev/vdb",
)
machine.succeed("incus storage create zfs_pool zfs source=zfs_pool/incus")
machine.succeed("zfs list zfs_pool/incus")
machine.succeed("incus storage volume create zfs_pool test_fs --type filesystem")
machine.succeed("incus storage volume create zfs_pool test_vol --type block")
machine.succeed("incus storage show zfs_pool")
machine.succeed("incus storage volume list zfs_pool")
machine.succeed("incus storage volume show zfs_pool test_fs")
machine.succeed("incus storage volume show zfs_pool test_vol")
'';
}
)

View File

@ -20,13 +20,13 @@
stdenv.mkDerivation rec {
pname = "gridcoin-research";
version = "5.4.6.0-hotfix-1";
version = "5.4.7.0";
src = fetchFromGitHub {
owner = "gridcoin-community";
repo = "Gridcoin-Research";
rev = "${version}";
sha256 = "sha256-fFxHJJ+EMnv0CterTwJbAfybF9WCzaSP7ynlxx2hE5A=";
sha256 = "sha256-wdXah7QnWohGAtC98exPSkhg5F3BaBOiFs6bklFxD7E=";
};
nativeBuildInputs = [

View File

@ -5,11 +5,11 @@
let
pname = "codux";
version = "15.22.0";
version = "15.22.2";
src = fetchurl {
url = "https://github.com/wixplosives/codux-versions/releases/download/${version}/Codux-${version}.x86_64.AppImage";
sha256 = "sha256-6UYWg018TumJVgZpLVLlkM+/sTqC6y0A7KVfiwn0hzw=";
sha256 = "sha256-aYGZPoA2Tux6pmpZFShkZB+os34jZczXsfmYN/pu+Ic=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };

View File

@ -24,7 +24,7 @@
"new": "nvchad-ui"
},
"nvim-base16": {
"date": "2024-02-15",
"date": "2024-03-16",
"new": "base16-nvim"
},
"nvim-bufferline-lua": {
@ -47,6 +47,10 @@
"date": "2021-09-03",
"new": "sqlite-lua"
},
"vim-fsharp": {
"date": "2024-03-16",
"new": "zarchive-vim-fsharp"
},
"vim-jade": {
"date": "2020-03-27",
"new": "vim-pug"

File diff suppressed because it is too large Load Diff

View File

@ -27,12 +27,12 @@
};
angular = buildGrammar {
language = "angular";
version = "0.0.0+rev=6d02054";
version = "0.0.0+rev=62179d7";
src = fetchFromGitHub {
owner = "dlvandenberg";
repo = "tree-sitter-angular";
rev = "6d02054ae9aa1fedf5097fe6d93dd78f751dff21";
hash = "sha256-Bm3I9a14WMNqL+nt5qr8Bd0Z4BOTCCF25wFrJ07FCSw=";
rev = "62179d7bbfb5fd8a8f7298495ac654d252a1bd52";
hash = "sha256-qRsBeJ01kGTKJqFubG1u9SFa1nsDH7ZHKQ0cGwfqi84=";
};
meta.homepage = "https://github.com/dlvandenberg/tree-sitter-angular";
};
@ -50,12 +50,12 @@
};
arduino = buildGrammar {
language = "arduino";
version = "0.0.0+rev=7722d43";
version = "0.0.0+rev=e3a0a7f";
src = fetchFromGitHub {
owner = "ObserverOfTime";
repo = "tree-sitter-arduino";
rev = "7722d4398d87ea22c4877264f88b45bd7ce0cba5";
hash = "sha256-pNiJY+KJ8QrL7xXOX/NRIFxIbXmf9DkVC9FUvXlk5qQ=";
rev = "e3a0a7f60e544afc478b72cdda7ffc0f2f889db0";
hash = "sha256-WdGCnZSMxyNJJYHB5H5Atc9EW2/0oB22/OWyxTrQHT8=";
};
meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-arduino";
};
@ -94,23 +94,23 @@
};
awk = buildGrammar {
language = "awk";
version = "0.0.0+rev=207b049";
version = "0.0.0+rev=ba74721";
src = fetchFromGitHub {
owner = "Beaglefoot";
repo = "tree-sitter-awk";
rev = "207b04974c83d8d25a947e4d09763675c4617da7";
hash = "sha256-sW6ix5j9VpeQj7dct9u3cJ8sXgjIQlhQ7Nnh2S8wWbk=";
rev = "ba7472152d79a8c916550c80fdbfd5724d07a0c9";
hash = "sha256-ywrd9wCdrQ9UZPXvB8fUkelFaZzHxL+hDAPSecMueFs=";
};
meta.homepage = "https://github.com/Beaglefoot/tree-sitter-awk";
};
bash = buildGrammar {
language = "bash";
version = "0.0.0+rev=975bc70";
version = "0.0.0+rev=f3f26f4";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-bash";
rev = "975bc70ad95dbbf2733872bc2e0a059c055db983";
hash = "sha256-SU5wBy81aANd7oUZvYR14Vd53Ml/cBSwDtO6uG34CaE=";
rev = "f3f26f47a126797c011c311cec9d449d855c3eab";
hash = "sha256-6Rfxh8Y6dg2wyQ9jYnbOaXm1SVfQDQ1B1tNqgpz6sY4=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-bash";
};
@ -127,12 +127,12 @@
};
beancount = buildGrammar {
language = "beancount";
version = "0.0.0+rev=1f19abf";
version = "0.0.0+rev=6c665e7";
src = fetchFromGitHub {
owner = "polarmutex";
repo = "tree-sitter-beancount";
rev = "1f19abf1e162e1828013cb5434c6cf30f4054e80";
hash = "sha256-yb6z5iLMoK1wWCS9laA1muRVLssFwnyAg4SKWVsti0s=";
rev = "6c665e7cf15d76a1687959643868a78fb381458d";
hash = "sha256-hVFPt+ndXx38SH/e/dORz226SQwDNu1j4cinvJLhkTM=";
};
meta.homepage = "https://github.com/polarmutex/tree-sitter-beancount";
};
@ -182,12 +182,12 @@
};
c = buildGrammar {
language = "c";
version = "0.0.0+rev=652433f";
version = "0.0.0+rev=371fd0b";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-c";
rev = "652433fce487d8c3943207da38e3e65e4550e288";
hash = "sha256-Ld8ufwdOVqRYb9YpOa6z6fWoA+gj0w0nlq3dqhFCap8=";
rev = "371fd0bf0650581b6e49f06f438c88c419859696";
hash = "sha256-zaH4b5lsOtnl1e07ERU2mP/IFvg90YjsFFhvz+EY/ig=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-c";
};
@ -248,12 +248,12 @@
};
cmake = buildGrammar {
language = "cmake";
version = "0.0.0+rev=f8de25f";
version = "0.0.0+rev=7dc1582";
src = fetchFromGitHub {
owner = "uyha";
repo = "tree-sitter-cmake";
rev = "f8de25f30757a2def006a7c144354710fe63dcf3";
hash = "sha256-J8Ro3J9kkH7k/v+nwekCotoS/l28yInhk9p/xaSbegc=";
rev = "7dc15823107831729c64a917c796a93cf5c6a7e3";
hash = "sha256-kz/FnQMibzmZ6O/x92q8IfrriO0vUlZhozIzhS0jRyo=";
};
meta.homepage = "https://github.com/uyha/tree-sitter-cmake";
};
@ -359,12 +359,12 @@
};
cue = buildGrammar {
language = "cue";
version = "0.0.0+rev=2df92e6";
version = "0.0.0+rev=8a5f273";
src = fetchFromGitHub {
owner = "eonpatapon";
repo = "tree-sitter-cue";
rev = "2df92e6755337e9234ad18ffef37f35d95e2ba9d";
hash = "sha256-RsWbGMC2RXfZlZnkXJclMwiGecZ8Sc1OPkG+mmE5r6Q=";
rev = "8a5f273bfa281c66354da562f2307c2d394b6c81";
hash = "sha256-uV7Tl41PCU+8uJa693km5xvysvbptbT7LvGyYIelspk=";
};
meta.homepage = "https://github.com/eonpatapon/tree-sitter-cue";
};
@ -768,12 +768,12 @@
};
gitcommit = buildGrammar {
language = "gitcommit";
version = "0.0.0+rev=6bd8196";
version = "0.0.0+rev=523a1a4";
src = fetchFromGitHub {
owner = "gbprod";
repo = "tree-sitter-gitcommit";
rev = "6bd81962d1abe309bf5dffde3315e4a5988f35fd";
hash = "sha256-aSgnTbhpekeDDUzz9hecebW5ejCnmLiE5d1fTTxP19g=";
rev = "523a1a4f0f674eff7fbf46addfa6ef7644151aae";
hash = "sha256-QWWX/92yOZES1XgcCTu77tgcfeRhaUEJJudCCopMBrk=";
};
meta.homepage = "https://github.com/gbprod/tree-sitter-gitcommit";
};
@ -790,12 +790,12 @@
};
gleam = buildGrammar {
language = "gleam";
version = "0.0.0+rev=58b7cac";
version = "0.0.0+rev=2012f29";
src = fetchFromGitHub {
owner = "gleam-lang";
repo = "tree-sitter-gleam";
rev = "58b7cac8fc14c92b0677c542610d8738c373fa81";
hash = "sha256-VtuGsa8jKndxlyJKy9UHfZXvAgr63Q0iwceXKfEUAYE=";
rev = "2012f294baacf30e7a62414754021284377366c6";
hash = "sha256-W+PfxqPUKHhLH5UBATmQ1mlSfLPAWIQyDgiSQBWBtBs=";
};
meta.homepage = "https://github.com/gleam-lang/tree-sitter-gleam";
};
@ -887,6 +887,17 @@
};
meta.homepage = "https://github.com/amaanq/tree-sitter-go-sum";
};
gotmpl = buildGrammar {
language = "gotmpl";
version = "0.0.0+rev=17144a7";
src = fetchFromGitHub {
owner = "ngalaiko";
repo = "tree-sitter-go-template";
rev = "17144a77be0acdecebd9d557398883569fed41de";
hash = "sha256-aB8MTTKzxV9+66goNfFRI39wzuBiGECAc8HvAQzIv80=";
};
meta.homepage = "https://github.com/ngalaiko/tree-sitter-go-template";
};
gowork = buildGrammar {
language = "gowork";
version = "0.0.0+rev=949a8a4";
@ -900,12 +911,12 @@
};
gpg = buildGrammar {
language = "gpg";
version = "0.0.0+rev=d4c9cc0";
version = "0.0.0+rev=f99323f";
src = fetchFromGitHub {
owner = "ObserverOfTime";
repo = "tree-sitter-gpg-config";
rev = "d4c9cc0060cd4d1b8ca6d7add9f34352ad310a09";
hash = "sha256-kV9GN0qdVNA7LFYoCM/ISEW4Mpd5v9+oHV83XgEJTRs=";
rev = "f99323fb8f3f10b6c69db0c2f6d0a14bd7330675";
hash = "sha256-VJXXpHVMKUNaslsjoKR6XsaUJ8C+0MyidXtRPRywnpg=";
};
meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-gpg-config";
};
@ -988,26 +999,38 @@
};
hcl = buildGrammar {
language = "hcl";
version = "0.0.0+rev=e135399";
version = "0.0.0+rev=e936d3f";
src = fetchFromGitHub {
owner = "MichaHoffmann";
repo = "tree-sitter-hcl";
rev = "e135399cb31b95fac0760b094556d1d5ce84acf0";
hash = "sha256-Ylxpj+e9YGhyRRRCCVs0g/zhwHpwGELxG2i+E3SFmpQ=";
rev = "e936d3fef8bac884661472dce71ad82284761eb1";
hash = "sha256-lcvs4auZrMb1f9ocrAnLVxX8JnvrPT18LsJBqoNG9Oo=";
};
meta.homepage = "https://github.com/MichaHoffmann/tree-sitter-hcl";
};
heex = buildGrammar {
language = "heex";
version = "0.0.0+rev=4a36c9a";
version = "0.0.0+rev=b5ad6e3";
src = fetchFromGitHub {
owner = "connorlay";
repo = "tree-sitter-heex";
rev = "4a36c9a388505180da6ee0eda1d8afb8c83481c8";
hash = "sha256-6gdAxNI81jbN8XZALRw31kFQRZg8ge/O7QRprLZpWOg=";
rev = "b5ad6e34eea18a15bbd1466ca707a17f9bff7b93";
hash = "sha256-o0ArFfBJTrEQVXVet+AIDPCB/b9KKvOYrrtMGyLgtM8=";
};
meta.homepage = "https://github.com/connorlay/tree-sitter-heex";
};
helm = buildGrammar {
language = "helm";
version = "0.0.0+rev=17144a7";
src = fetchFromGitHub {
owner = "ngalaiko";
repo = "tree-sitter-go-template";
rev = "17144a77be0acdecebd9d557398883569fed41de";
hash = "sha256-aB8MTTKzxV9+66goNfFRI39wzuBiGECAc8HvAQzIv80=";
};
location = "dialects/helm";
meta.homepage = "https://github.com/ngalaiko/tree-sitter-go-template";
};
hjson = buildGrammar {
language = "hjson";
version = "0.0.0+rev=02fa3b7";
@ -1065,12 +1088,12 @@
};
html = buildGrammar {
language = "html";
version = "0.0.0+rev=b5d9758";
version = "0.0.0+rev=b285e25";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-html";
rev = "b5d9758e22b4d3d25704b72526670759a9e4d195";
hash = "sha256-v3BD36OKkzJ1xqQV87HAyQpnQzi/4+PuyEAM1HfkW3U=";
rev = "b285e25c1ba8729399ce4f15ac5375cf6c3aa5be";
hash = "sha256-bAFSq2FXtSvFY8FrpeDgXXSq66QZsUrdz1As07B45u0=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-html";
};
@ -1153,23 +1176,23 @@
};
java = buildGrammar {
language = "java";
version = "0.0.0+rev=99b29f1";
version = "0.0.0+rev=5e62fbb";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-java";
rev = "99b29f1ed957b3b424b6e21f57bd21a9732a622a";
hash = "sha256-2A3dXO+N3M7GEiI06Dn28vU73Bow6vK0deC85mY058Q=";
rev = "5e62fbb519b608dfd856000fdc66536304c414de";
hash = "sha256-Wki+tdLzYINDbZMFd79QIDNK46rtzx25Qy0mB54eWN4=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-java";
};
javascript = buildGrammar {
language = "javascript";
version = "0.0.0+rev=51aed72";
version = "0.0.0+rev=de1e682";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-javascript";
rev = "51aed7263d33bee46b0a8a5e165ffcb690d5aca8";
hash = "sha256-FDnVwYpPgenOTgWaX/VdmtUmmIbCm/TtkiQ3TFoQjYY=";
rev = "de1e682289a417354df5b4437a3e4f92e0722a0f";
hash = "sha256-HhqYqU1CwPxXMHp21unRekFDzpGVedlgh/4bsplhe9c=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-javascript";
};
@ -1274,12 +1297,12 @@
};
kotlin = buildGrammar {
language = "kotlin";
version = "0.0.0+rev=4e909d6";
version = "0.0.0+rev=260afd9";
src = fetchFromGitHub {
owner = "fwcd";
repo = "tree-sitter-kotlin";
rev = "4e909d6cc9ac96b4eaecb3fb538eaca48e9e9ee9";
hash = "sha256-Rmq5G+7h/XSNX7JYtpAKcWbOZ1aZpBpe9GpaizK2DRk=";
rev = "260afd9a92bac51b3a4546303103c3d40a430639";
hash = "sha256-cmtUGmytAgiqBi31CNxEX+vE3YXmH1hphsIHvGRd7SY=";
};
meta.homepage = "https://github.com/fwcd/tree-sitter-kotlin";
};
@ -1373,12 +1396,12 @@
};
lua = buildGrammar {
language = "lua";
version = "0.0.0+rev=04c9579";
version = "0.0.0+rev=a24dab1";
src = fetchFromGitHub {
owner = "MunifTanjim";
repo = "tree-sitter-lua";
rev = "04c9579dcb917255b2e5f8199df4ae7f587d472f";
hash = "sha256-kzyn6XF4/PN8civ/0UV+ancCMkh7DF2B7WUYxix6aaM=";
rev = "a24dab177e58c9c6832f96b9a73102a0cfbced4a";
hash = "sha256-uFaEptW4wPrqgHfB1mYmVltf+4no61L2cPgpsr5qBIU=";
};
meta.homepage = "https://github.com/MunifTanjim/tree-sitter-lua";
};
@ -1439,24 +1462,24 @@
};
markdown = buildGrammar {
language = "markdown";
version = "0.0.0+rev=2821521";
version = "0.0.0+rev=b2f0198";
src = fetchFromGitHub {
owner = "MDeiml";
repo = "tree-sitter-markdown";
rev = "2821521a4e6eab37b63dff6a8e169cd88554047d";
hash = "sha256-JoZ/CKIMHVowwqTMFdys+Qu1CHMsP+8Wr2LJo5h30B4=";
rev = "b2f01981a76e3251f5b660378136c248ed106b81";
hash = "sha256-6gxtiO6Dzo5BELdw/dAaQB90SJYelr/RqvTzNK55caA=";
};
location = "tree-sitter-markdown";
meta.homepage = "https://github.com/MDeiml/tree-sitter-markdown";
};
markdown_inline = buildGrammar {
language = "markdown_inline";
version = "0.0.0+rev=2821521";
version = "0.0.0+rev=b2f0198";
src = fetchFromGitHub {
owner = "MDeiml";
repo = "tree-sitter-markdown";
rev = "2821521a4e6eab37b63dff6a8e169cd88554047d";
hash = "sha256-JoZ/CKIMHVowwqTMFdys+Qu1CHMsP+8Wr2LJo5h30B4=";
rev = "b2f01981a76e3251f5b660378136c248ed106b81";
hash = "sha256-6gxtiO6Dzo5BELdw/dAaQB90SJYelr/RqvTzNK55caA=";
};
location = "tree-sitter-markdown-inline";
meta.homepage = "https://github.com/MDeiml/tree-sitter-markdown";
@ -1507,12 +1530,12 @@
};
mlir = buildGrammar {
language = "mlir";
version = "0.0.0+rev=117cbbc";
version = "0.0.0+rev=992c756";
src = fetchFromGitHub {
owner = "artagnon";
repo = "tree-sitter-mlir";
rev = "117cbbc46bbf82ae30b24f8939573655017226da";
hash = "sha256-c0+Pvhe++fHmRL9Ptri+vsdRN3MCb2Z/7EqWmFaK/CE=";
rev = "992c756686eb968af752ce75a874591042a8e24c";
hash = "sha256-nm7YSwj10p6GKR7lUJZ5SZeiW8fh+5ZI52haeUM3oDE=";
};
generate = true;
meta.homepage = "https://github.com/artagnon/tree-sitter-mlir";
@ -1541,12 +1564,12 @@
};
nickel = buildGrammar {
language = "nickel";
version = "0.0.0+rev=33a64ec";
version = "0.0.0+rev=58baf89";
src = fetchFromGitHub {
owner = "nickel-lang";
repo = "tree-sitter-nickel";
rev = "33a64ec9a27058c52e4195f1030235dcdfc04747";
hash = "sha256-gTOePRg5ZEXfBL35biG6abpxW2eycgbHIzaL6w4g8rc=";
rev = "58baf89db8fdae54a84bcf22c80ff10ee3f929ed";
hash = "sha256-WuY6X1mnXdjiy4joIcY8voK2sqICFf0GvudulZ9lwqg=";
};
meta.homepage = "https://github.com/nickel-lang/tree-sitter-nickel";
};
@ -1640,24 +1663,24 @@
};
ocaml = buildGrammar {
language = "ocaml";
version = "0.0.0+rev=9965d20";
version = "0.0.0+rev=712d9bf";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-ocaml";
rev = "9965d208337d88bbf1a38ad0b0fe49e5f5ec9677";
hash = "sha256-9Y/eZNsKkz8RKjMn5RIAPITkDQTWdSc/fBXzxMg1ViQ=";
rev = "712d9bfa1d537c5899dde5538767ed2d8bb37a93";
hash = "sha256-l4hchr03Jrsat863K8wfBeHo1o9dw0T3RAl4MMWKIHA=";
};
location = "ocaml";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-ocaml";
};
ocaml_interface = buildGrammar {
language = "ocaml_interface";
version = "0.0.0+rev=9965d20";
version = "0.0.0+rev=712d9bf";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-ocaml";
rev = "9965d208337d88bbf1a38ad0b0fe49e5f5ec9677";
hash = "sha256-9Y/eZNsKkz8RKjMn5RIAPITkDQTWdSc/fBXzxMg1ViQ=";
rev = "712d9bfa1d537c5899dde5538767ed2d8bb37a93";
hash = "sha256-l4hchr03Jrsat863K8wfBeHo1o9dw0T3RAl4MMWKIHA=";
};
location = "interface";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-ocaml";
@ -1742,24 +1765,24 @@
};
php = buildGrammar {
language = "php";
version = "0.0.0+rev=78a78df";
version = "0.0.0+rev=ad414fa";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-php";
rev = "78a78df5e06b4c13173af2a1f607c9a853d0f240";
hash = "sha256-N7qbOQethP/ZZHu5r+SJYCdrX4FVg72YuyULpuMUAhw=";
rev = "ad414fa5497328e96ef992d80896f19c77584f7c";
hash = "sha256-is5jtMg3G4ay+yF1Eti0jDljlB4vmibLPW0qup+8VeU=";
};
location = "php";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-php";
};
php_only = buildGrammar {
language = "php_only";
version = "0.0.0+rev=78a78df";
version = "0.0.0+rev=ad414fa";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-php";
rev = "78a78df5e06b4c13173af2a1f607c9a853d0f240";
hash = "sha256-N7qbOQethP/ZZHu5r+SJYCdrX4FVg72YuyULpuMUAhw=";
rev = "ad414fa5497328e96ef992d80896f19c77584f7c";
hash = "sha256-is5jtMg3G4ay+yF1Eti0jDljlB4vmibLPW0qup+8VeU=";
};
location = "php_only";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-php";
@ -1921,12 +1944,12 @@
};
puppet = buildGrammar {
language = "puppet";
version = "0.0.0+rev=3641b9e";
version = "0.0.0+rev=5849f96";
src = fetchFromGitHub {
owner = "amaanq";
repo = "tree-sitter-puppet";
rev = "3641b9e854ac9c84c7576e71c4c9a357bcfd9550";
hash = "sha256-J1DBjQRdV4R85NTyg/qmwbjm1bryKe3UOdp4XyH6BQc=";
rev = "5849f9694197a6e822872945b415429c285fdd54";
hash = "sha256-Lwfiby7amjTIOz8QRoC4RdZyFPfFikmQ2sqta4akyH8=";
};
meta.homepage = "https://github.com/amaanq/tree-sitter-puppet";
};
@ -1954,12 +1977,12 @@
};
python = buildGrammar {
language = "python";
version = "0.0.0+rev=22d3f87";
version = "0.0.0+rev=b8a4c64";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-python";
rev = "22d3f87bdafac2782e907330babe4af574f5d0b4";
hash = "sha256-tyEawslx00ZwohMZo4HBa/INfbS7q6Ob2LO7pvowobk=";
rev = "b8a4c64121ba66b460cb878e934e3157ecbfb124";
hash = "sha256-ZTqWyr4+pOyXY4X/WnYdn9Sgp7T8FEEUy/TQPuFqb4k=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-python";
};
@ -1998,12 +2021,12 @@
};
query = buildGrammar {
language = "query";
version = "0.0.0+rev=a0ccc35";
version = "0.0.0+rev=176a380";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "tree-sitter-query";
rev = "a0ccc351e5e868ec1f8135e97aa3b53c663cf2df";
hash = "sha256-H2QLsjl3/Kh0ojCf2Df38tb9KrM2InphEmtGd0J6+hM=";
rev = "176a380df78800167565118bb0dadfc961abbd43";
hash = "sha256-b9M213q6dmuK65llDTMW7rksrOyTEzlE0kdAVv0fDnA=";
};
meta.homepage = "https://github.com/nvim-treesitter/tree-sitter-query";
};
@ -2020,12 +2043,12 @@
};
racket = buildGrammar {
language = "racket";
version = "0.0.0+rev=e4ba1a9";
version = "0.0.0+rev=b5a2fe7";
src = fetchFromGitHub {
owner = "6cdh";
repo = "tree-sitter-racket";
rev = "e4ba1a9674a3b4dd7905d04f194ae6f8331be342";
hash = "sha256-4+TRol2i6ibuXqBr6O8jI/4MZq8hnf09eVBtPqaKp8s=";
rev = "b5a2fe74cac87dc5342b366f50db71d421e7cf8f";
hash = "sha256-TPQw9Yd194tTD2k+qzzGjMInCAJ9WeZuRPRD96zLGzs=";
};
meta.homepage = "https://github.com/6cdh/tree-sitter-racket";
};
@ -2108,12 +2131,12 @@
};
rnoweb = buildGrammar {
language = "rnoweb";
version = "0.0.0+rev=502c112";
version = "0.0.0+rev=1a74dc0";
src = fetchFromGitHub {
owner = "bamonroe";
repo = "tree-sitter-rnoweb";
rev = "502c1126dc6777f09af5bef16e72a42f75bd081e";
hash = "sha256-aGEhy4uMhKFbL0+JO5rrn3GIe//8PZpDHEMDGHDlBCY=";
rev = "1a74dc0ed731ad07db39f063e2c5a6fe528cae7f";
hash = "sha256-sCjSS6iunij2SXHNzQcTq0HKawH9i5h/vQ6yl77opXw=";
};
meta.homepage = "https://github.com/bamonroe/tree-sitter-rnoweb";
};
@ -2152,34 +2175,34 @@
};
ruby = buildGrammar {
language = "ruby";
version = "0.0.0+rev=22a0bb2";
version = "0.0.0+rev=9d86f37";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-ruby";
rev = "22a0bb2678755a3714e194609862ea7f4516e807";
hash = "sha256-lD3pRbQZDyqIkiknuXAkXd+6aHqKUY/8SNwQgfnrbBw=";
rev = "9d86f3761bb30e8dcc81e754b81d3ce91848477e";
hash = "sha256-Ibfu+5NWCkw7jriy1tiMLplpXNZfZf8WP30lDU1//GM=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-ruby";
};
rust = buildGrammar {
language = "rust";
version = "0.0.0+rev=2d7bac5";
version = "0.0.0+rev=3a56481";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-rust";
rev = "2d7bac5164c344c95530c16dd5c8fa1319e34308";
hash = "sha256-k5/tfG8ONOK8ARgHwpxqB27sJWHioTd5WfCpmMZ1vJY=";
rev = "3a56481f8d13b6874a28752502a58520b9139dc7";
hash = "sha256-6ROXeKuPehtIOtaI1OJuTtyPfQmZyLzCxv3ZS04yAIk=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-rust";
};
scala = buildGrammar {
language = "scala";
version = "0.0.0+rev=e02f003";
version = "0.0.0+rev=70b4fe6";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-scala";
rev = "e02f003d78dc269fef287b9b7b9963dc1f26bd7e";
hash = "sha256-LkrZ+y7QSAGe/kkkdUSyFQJFmD/mOI5Ps/wxD3BAkDI=";
rev = "70b4fe63c4973b04cc7bd40c6b7646d9c2430db8";
hash = "sha256-ZwrsEhlZGVJMP+GRIlaxGqS1b7HtiQelg3QBwJT9Igk=";
};
meta.homepage = "https://github.com/tree-sitter/tree-sitter-scala";
};
@ -2197,12 +2220,12 @@
};
scheme = buildGrammar {
language = "scheme";
version = "0.0.0+rev=85b6188";
version = "0.0.0+rev=6c77a5b";
src = fetchFromGitHub {
owner = "6cdh";
repo = "tree-sitter-scheme";
rev = "85b6188fb77c03dfb01d13e58e2844450506860c";
hash = "sha256-v+iQpeAeySKPgMu5IQ8vNnUSc2duX1vYvO3qqK1/Pmc=";
rev = "6c77a5bcfb9baceeaa79ef67354b2d501b37b085";
hash = "sha256-HIZ8j8a5ejB87rTBaMpNGRGL0TGqXiuV/BxfU4aj17s=";
};
meta.homepage = "https://github.com/6cdh/tree-sitter-scheme";
};
@ -2230,12 +2253,12 @@
};
slint = buildGrammar {
language = "slint";
version = "0.0.0+rev=3c82235";
version = "0.0.0+rev=f5fa844";
src = fetchFromGitHub {
owner = "slint-ui";
repo = "tree-sitter-slint";
rev = "3c82235f41b63f35a01ae3888206e93585cbb84a";
hash = "sha256-D3X2YwvxvseIGnKzaSocr3Ak7qoASZhxyRS+rtpir0g=";
rev = "f5fa844d2adbcfdc7a0ec4daae4539887959d9ff";
hash = "sha256-MSIQd1Xb4ug4yZk2bQFPHMZxrqe1xke6X7LKsxtkIkc=";
};
meta.homepage = "https://github.com/slint-ui/tree-sitter-slint";
};
@ -2274,12 +2297,12 @@
};
solidity = buildGrammar {
language = "solidity";
version = "0.0.0+rev=5cb506a";
version = "0.0.0+rev=b239a95";
src = fetchFromGitHub {
owner = "JoranHonig";
repo = "tree-sitter-solidity";
rev = "5cb506ae419c4ad620c77210fd47500d3d169dbc";
hash = "sha256-3BQuEGrmQD9Va7JpTuKJaZ6VaJ//tfPtjoEDRj/utcU=";
rev = "b239a95f94cfcc6e7b3e961bc73a28d55e214f02";
hash = "sha256-b+LthCf+g19sjKeNgXZmUV0RNi94O3u0WmXfgKRpaE0=";
};
meta.homepage = "https://github.com/JoranHonig/tree-sitter-solidity";
};
@ -2309,12 +2332,12 @@
};
sourcepawn = buildGrammar {
language = "sourcepawn";
version = "0.0.0+rev=39ce73a";
version = "0.0.0+rev=3ca89fd";
src = fetchFromGitHub {
owner = "nilshelmig";
repo = "tree-sitter-sourcepawn";
rev = "39ce73ad42b2c4f52848d16093c24feddaa7d226";
hash = "sha256-CyCUGGycWpgQl/BGDjRHwYoa9Mess49jUf9WUkRaliE=";
rev = "3ca89fdf998340a7973e276b39516d8902950f86";
hash = "sha256-AF7PiM0Tt6wqGdNsfMGSkgWXgZRDZGdKc7DQpUHuGUA=";
};
meta.homepage = "https://github.com/nilshelmig/tree-sitter-sourcepawn";
};
@ -2331,12 +2354,12 @@
};
sql = buildGrammar {
language = "sql";
version = "0.0.0+rev=da2d1ef";
version = "0.0.0+rev=cdb7cde";
src = fetchFromGitHub {
owner = "derekstride";
repo = "tree-sitter-sql";
rev = "da2d1eff425b146d3c8cab7be8dfa98b11d896dc";
hash = "sha256-aNxUvmj4AMO744fsSOsvQcNEtHYuQDephKha/hSphh0=";
rev = "cdb7cde9bf70b194ab8beb5069fbbc3c9640284e";
hash = "sha256-yxr+AbKp4pkVpjMQXL3P5VEzSo2Ii6yE7ceEBYiDHJA=";
};
meta.homepage = "https://github.com/derekstride/tree-sitter-sql";
};
@ -2353,12 +2376,12 @@
};
ssh_config = buildGrammar {
language = "ssh_config";
version = "0.0.0+rev=4fab1c9";
version = "0.0.0+rev=514695d";
src = fetchFromGitHub {
owner = "ObserverOfTime";
repo = "tree-sitter-ssh-config";
rev = "4fab1c9116cb7890885508e4630cc8e6a8373a41";
hash = "sha256-cZoRQN3vrOC7xaKeURGeKfQ0xAyRMapbgNQrBTCFoHI=";
rev = "514695df4985f56455b8f139a319453a2325cdcf";
hash = "sha256-LDqRP8FA5m1tnbGNTxItQlp6B6U+M6gOBlbi4zX0FHI=";
};
meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-ssh-config";
};
@ -2430,12 +2453,12 @@
};
swift = buildGrammar {
language = "swift";
version = "0.0.0+rev=fc00cbb";
version = "0.0.0+rev=78a736d";
src = fetchFromGitHub {
owner = "alex-pinkus";
repo = "tree-sitter-swift";
rev = "fc00cbb460b40228b30f322b5a34ea0e8f35a9f8";
hash = "sha256-FEac9qZuNAJYn/7mIpRSOy72F3qsiyPHZTn1DUzM2xk=";
rev = "78a736d77094b0b3c35e811e6765c4d38a72724e";
hash = "sha256-cBUBmXc+mhub5jvGKPcCgHgZPQtxF6OD+dlKQ0ZaxpY=";
};
generate = true;
meta.homepage = "https://github.com/alex-pinkus/tree-sitter-swift";
@ -2464,12 +2487,12 @@
};
t32 = buildGrammar {
language = "t32";
version = "0.0.0+rev=b904af3";
version = "0.0.0+rev=0a457a5";
src = fetchFromGitLab {
owner = "xasc";
repo = "tree-sitter-t32";
rev = "b904af353fb2f1df6ac45d8d3e3a5ee85a6cc306";
hash = "sha256-MGdwcw9T3hemUHfgQmdTp20MW08AQcVWGRHxkP/6N5Y=";
rev = "0a457a557be7779336bc8ac2b396e73797bc68f7";
hash = "sha256-ylMJ177FYVcnfaXbnOieNP1Emq8HpeAgEddt96tBJqE=";
};
meta.homepage = "https://gitlab.com/xasc/tree-sitter-t32.git";
};
@ -2520,12 +2543,12 @@
};
terraform = buildGrammar {
language = "terraform";
version = "0.0.0+rev=e135399";
version = "0.0.0+rev=e936d3f";
src = fetchFromGitHub {
owner = "MichaHoffmann";
repo = "tree-sitter-hcl";
rev = "e135399cb31b95fac0760b094556d1d5ce84acf0";
hash = "sha256-Ylxpj+e9YGhyRRRCCVs0g/zhwHpwGELxG2i+E3SFmpQ=";
rev = "e936d3fef8bac884661472dce71ad82284761eb1";
hash = "sha256-lcvs4auZrMb1f9ocrAnLVxX8JnvrPT18LsJBqoNG9Oo=";
};
location = "dialects/terraform";
meta.homepage = "https://github.com/MichaHoffmann/tree-sitter-hcl";
@ -2565,12 +2588,12 @@
};
tlaplus = buildGrammar {
language = "tlaplus";
version = "0.0.0+rev=aaf5bb5";
version = "0.0.0+rev=3896a5b";
src = fetchFromGitHub {
owner = "tlaplus-community";
repo = "tree-sitter-tlaplus";
rev = "aaf5bb5c1df0a6e583bb51efa519a9ac788b2ad8";
hash = "sha256-p/khQ31bReopPyZ1TvUKI6bnFipWiGrxKO7cAYzeku4=";
rev = "3896a5be761f04ffb22a841b2a0672f7a8a43ef9";
hash = "sha256-EODxn3ZitUSz8/4XkgMK0dp2T07BwlsXVbFbBQ5xXi4=";
};
meta.homepage = "https://github.com/tlaplus-community/tree-sitter-tlaplus";
};
@ -2621,12 +2644,12 @@
};
tsx = buildGrammar {
language = "tsx";
version = "0.0.0+rev=198e2ea";
version = "0.0.0+rev=b00b8eb";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-typescript";
rev = "198e2ea43d1c4ddd76ee883f4eae15f4201cd241";
hash = "sha256-WnVqoshymxZgGC/p5nFX08ypB1VDLIAMjjWN5YC4UT8=";
rev = "b00b8eb44f0b9f02556da0b1a4e2f71faed7e61b";
hash = "sha256-uGuwE1eTVEkuosMfTeY2akHB+bJ5npWEwUv+23nhY9M=";
};
location = "tsx";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-typescript";
@ -2655,12 +2678,12 @@
};
typescript = buildGrammar {
language = "typescript";
version = "0.0.0+rev=198e2ea";
version = "0.0.0+rev=b00b8eb";
src = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter-typescript";
rev = "198e2ea43d1c4ddd76ee883f4eae15f4201cd241";
hash = "sha256-WnVqoshymxZgGC/p5nFX08ypB1VDLIAMjjWN5YC4UT8=";
rev = "b00b8eb44f0b9f02556da0b1a4e2f71faed7e61b";
hash = "sha256-uGuwE1eTVEkuosMfTeY2akHB+bJ5npWEwUv+23nhY9M=";
};
location = "typescript";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-typescript";
@ -2790,34 +2813,34 @@
};
vim = buildGrammar {
language = "vim";
version = "0.0.0+rev=bc1364d";
version = "0.0.0+rev=052279c";
src = fetchFromGitHub {
owner = "neovim";
repo = "tree-sitter-vim";
rev = "bc1364d922952138957a62105171ed68e73fbb6c";
hash = "sha256-5h1GYjyYMJd5GS0zXh0LP1wBs60fYohpFv89gcdZ4vU=";
rev = "052279cd5e1d73b075640c64cef97e7bdcd32611";
hash = "sha256-EoiMqMcBl5bC1Irs2flA2F5nHN6VTZdv6hdCrqoTAcY=";
};
meta.homepage = "https://github.com/neovim/tree-sitter-vim";
};
vimdoc = buildGrammar {
language = "vimdoc";
version = "0.0.0+rev=b63be26";
version = "0.0.0+rev=f431bfa";
src = fetchFromGitHub {
owner = "neovim";
repo = "tree-sitter-vimdoc";
rev = "b63be26fa571259b512e1939f01755d9d6e78fbd";
hash = "sha256-gsjepcw8Y8Vm6GhJRKUJKLsCb+Rd0lNyYfnmWijuiLo=";
rev = "f431bfa7d433f4d629943147817193a4fccbd303";
hash = "sha256-+SYbYvmVN2U0Q03p0eCj3MViCyzPqUiPG1oMWh7hRyM=";
};
meta.homepage = "https://github.com/neovim/tree-sitter-vimdoc";
};
vue = buildGrammar {
language = "vue";
version = "0.0.0+rev=7e48557";
version = "0.0.0+rev=3b9d520";
src = fetchFromGitHub {
owner = "tree-sitter-grammars";
repo = "tree-sitter-vue";
rev = "7e48557b903a9db9c38cea3b7839ef7e1f36c693";
hash = "sha256-dz9NC+axivAsVJPbt7TNtU89wFyrTBoD2hCBjiXFbgY=";
rev = "3b9d52087100bdfce43dad2ca46d75b0e21613f6";
hash = "sha256-36MnM1X8uhqCb44oHY0kEKDLpYmU1QL2JfGpdIbb3pc=";
};
meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-vue";
};
@ -2845,12 +2868,12 @@
};
wing = buildGrammar {
language = "wing";
version = "0.0.0+rev=13b79ea";
version = "0.0.0+rev=07f6740";
src = fetchFromGitHub {
owner = "winglang";
repo = "wing";
rev = "13b79ea3f343b15f233c6e7ac930797748191615";
hash = "sha256-2BOPevKjrNoTRNaadwr7erWDBxIDUvU4zLOQgXOB4rE=";
rev = "07f6740ab9f4f74c49413b9056154cac51f4b2d7";
hash = "sha256-jnDrJhhsfRAqR+83VaGXBKANu5J2Xt7LNUm0VUFEVbY=";
};
location = "libs/tree-sitter-wing";
generate = true;
@ -2881,14 +2904,14 @@
};
yaml = buildGrammar {
language = "yaml";
version = "0.0.0+rev=0e36bed";
version = "0.0.0+rev=9e59b9b";
src = fetchFromGitHub {
owner = "ikatyang";
owner = "tree-sitter-grammars";
repo = "tree-sitter-yaml";
rev = "0e36bed171768908f331ff7dff9d956bae016efb";
hash = "sha256-bpiT3FraOZhJaoiFWAoVJX1O+plnIi8aXOW2LwyU23M=";
rev = "9e59b9bbf839ba231fbcb953617d8b9b9a059e38";
hash = "sha256-9YVXErOwUf4hcvugcgtlefyQd4p34u9AT4gUcwc3ZaU=";
};
meta.homepage = "https://github.com/ikatyang/tree-sitter-yaml";
meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-yaml";
};
yang = buildGrammar {
language = "yang";

View File

@ -998,7 +998,7 @@
inherit (old) version src;
sourceRoot = "${old.src.name}/spectre_oxi";
cargoHash = "sha256-gCGuD5kipgfR0Le8npNmyBxNsUq0PavXvKkxkiPx13E=";
cargoHash = "sha256-VDnrJ2EJ8LDykqxYKD1VR8BkDqzzifazJzL/0UsmSCk=";
preCheck = ''
@ -1134,7 +1134,7 @@
pname = "sg-nvim-rust";
inherit (old) version src;
cargoHash = "sha256-nlPSsp/HbS1DxhOHh5+7x1re46oiQa9FQMLClc7TQLg=";
cargoHash = "sha256-iGNLk3ckm90i5m05V/va+hO9RMiOUKL19dkszoUCwlU=";
nativeBuildInputs = [ pkg-config ];

View File

@ -1,5 +1,5 @@
diff --git a/autoload/health/openscad_nvim.vim b/autoload/health/openscad_nvim.vim
index 9022d55..30ef53f 100644
index d6d4b4c..9853877 100644
--- a/autoload/health/openscad_nvim.vim
+++ b/autoload/health/openscad_nvim.vim
@@ -7,7 +7,7 @@ function! s:check_nvim_version_minimum() abort
@ -8,20 +8,20 @@ index 9022d55..30ef53f 100644
function! s:check_zathura_installed() abort
- if !executable('zathura')
+ if !executable('@zathura@')
call health#report_error('has(zathura)','install zathura')
call v:lua.vim.health.error('has(zathura)','install zathura')
else
call health#report_ok("zathura is installed")
call v:lua.vim.health.ok("zathura is installed")
@@ -15,7 +15,7 @@ function! s:check_zathura_installed() abort
endfunction
function! s:check_htop_installed() abort
- if !executable('htop')
+ if !executable('@htop@')
call health#report_error('has(htop)','install htop')
call v:lua.vim.health.error('has(htop)','install htop')
else
call health#report_ok("htop is installed")
call v:lua.vim.health.ok("htop is installed")
diff --git a/lua/openscad.lua b/lua/openscad.lua
index 7dff2fb..4382003 100644
index 7475f29..832c895 100644
--- a/lua/openscad.lua
+++ b/lua/openscad.lua
@@ -101,7 +101,7 @@ end
@ -38,7 +38,7 @@ index 7dff2fb..4382003 100644
else
-- TODO: What about Windows?
- jobCommand = 'openscad ' .. vim.fn.expand('%:p')
+ jobCommand = '@oepnscad@ ' .. vim.fn.expand('%:p')
+ jobCommand = '@openscad@ ' .. vim.fn.expand('%:p')
end
vim.fn.jobstart(jobCommand)

View File

@ -361,6 +361,7 @@ https://github.com/nvimdev/guard.nvim/,HEAD,
https://github.com/nmac427/guess-indent.nvim/,HEAD,
https://github.com/sjl/gundo.vim/,,
https://github.com/junegunn/gv.vim/,,
https://github.com/TheSnakeWitcher/hardhat.nvim/,HEAD,
https://github.com/m4xshen/hardtime.nvim/,HEAD,
https://git.sr.ht/~sircmpwn/hare.vim,HEAD,
https://github.com/ThePrimeagen/harpoon/,master,
@ -548,15 +549,22 @@ https://github.com/Shougo/neosnippet-snippets/,,
https://github.com/Shougo/neosnippet.vim/,,
https://github.com/kassio/neoterm/,,
https://github.com/nvim-neotest/neotest/,HEAD,
https://github.com/rcasia/neotest-bash/,HEAD,
https://github.com/sidlatau/neotest-dart/,HEAD,
https://github.com/MarkEmmons/neotest-deno/,HEAD,
https://github.com/Issafalcon/neotest-dotnet/,HEAD,
https://github.com/jfpedroza/neotest-elixir/,HEAD,
https://github.com/llllvvuu/neotest-foundry/,HEAD,
https://github.com/nvim-neotest/neotest-go/,HEAD,
https://github.com/weilbith/neotest-gradle/,HEAD,
https://github.com/alfaix/neotest-gtest/,HEAD,
https://github.com/MrcJkb/neotest-haskell/,HEAD,
https://github.com/rcasia/neotest-java/,HEAD,
https://github.com/haydenmeade/neotest-jest/,HEAD,
https://github.com/V13Axel/neotest-pest/,HEAD,
https://github.com/zidhuss/neotest-minitest/,HEAD,
https://github.com/theutz/neotest-pest/,HEAD,
https://github.com/olimorris/neotest-phpunit/,HEAD,
https://github.com/thenbe/neotest-playwright/,HEAD,
https://github.com/nvim-neotest/neotest-plenary/,HEAD,
https://github.com/nvim-neotest/neotest-python/,HEAD,
https://github.com/olimorris/neotest-rspec/,HEAD,
@ -564,6 +572,7 @@ https://github.com/rouge8/neotest-rust/,HEAD,
https://github.com/stevanmilic/neotest-scala/,HEAD,
https://github.com/shunsambongi/neotest-testthat/,HEAD,
https://github.com/marilari88/neotest-vitest/,HEAD,
https://github.com/lawrence-laz/neotest-zig/,HEAD,
https://github.com/rose-pine/neovim/,main,rose-pine
https://github.com/Shatur/neovim-ayu/,,
https://github.com/cloudhead/neovim-fuzzy/,,
@ -1364,6 +1373,7 @@ https://github.com/puremourning/vimspector/,,
https://github.com/lervag/vimtex/,,
https://github.com/preservim/vimux/,,
https://github.com/vimwiki/vimwiki/,,
https://github.com/lukas-reineke/virt-column.nvim/,HEAD,
https://github.com/jubnzv/virtual-types.nvim/,HEAD,
https://github.com/vim-scripts/vis/,,
https://github.com/navicore/vissort.vim/,,

View File

@ -1,6 +1,6 @@
{ lib, stdenv, vscode-utils, callPackage }:
let
version = "1.48.0";
version = "1.50.0";
rescript-editor-analysis = callPackage ./rescript-editor-analysis.nix { inherit version; };
arch =
if stdenv.isLinux then "linux"
@ -13,7 +13,7 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
name = "rescript-vscode";
publisher = "chenglou92";
inherit version;
sha256 = "sha256-/1nDuj/kSdkV6PlbdlOLfUKQeuvyL2VhPjUAr9kq2NM=";
sha256 = "sha256-Dt7mqZQ/vEUFyUD5SsY6RGzg9kq19/Amksrwtfv0TuE=";
};
postPatch = ''
rm -r ${analysisDir}

View File

@ -16,11 +16,11 @@
stdenv.mkDerivation rec {
pname = "xfe";
version = "1.46";
version = "1.46.1";
src = fetchurl {
url = "mirror://sourceforge/xfe/xfe-${version}.tar.xz";
sha256 = "sha256-80rtoetmipDObW8BHL2US7305Jo5TFrQrIg6DzLoR/k=";
sha256 = "sha256-NTpowZCl4OTWrK2txh7f7t9WxGRdfM0M3KIyHq3nJUg=";
};
nativeBuildInputs = [ pkg-config intltool ];

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "bemenu";
version = "0.6.20";
version = "0.6.21";
src = fetchFromGitHub {
owner = "Cloudef";
repo = finalAttrs.pname;
rev = finalAttrs.version;
hash = "sha256-pXuaNhrXy33rZxk+qisFWpYj6w9QW3p3WmGtE1kHGII=";
hash = "sha256-E/5wN7HpdBt//jFe9yAB8fuHKiFJ7D1UAJEvG8KBJ6k=";
};
strictDeps = true;

View File

@ -84,6 +84,7 @@
let
python3Packages = python310Packages;
python3 = python3Packages.python;
pyPkgsOpenusd = python3Packages.openusd.override { withOsl = false; };
libdecor' = libdecor.overrideAttrs (old: {
# Blender uses private APIs, need to patch to expose them
@ -171,6 +172,7 @@ stdenv.mkDerivation (finalAttrs: {
"-DWITH_PYTHON_INSTALL_REQUESTS=OFF"
"-DWITH_SDL=OFF"
"-DWITH_TBB=ON"
"-DWITH_USD=ON"
# Blender supplies its own FindAlembic.cmake (incompatible with the Alembic-supplied config file)
"-DALEMBIC_INCLUDE_DIR=${lib.getDev alembic}/include"
@ -237,6 +239,7 @@ stdenv.mkDerivation (finalAttrs: {
(opensubdiv.override { inherit cudaSupport; })
potrace
pugixml
pyPkgsOpenusd
python3
tbb
zlib
@ -292,6 +295,7 @@ stdenv.mkDerivation (finalAttrs: {
ps.numpy
ps.requests
ps.zstandard
pyPkgsOpenusd
];
blenderExecutable =

View File

@ -9,10 +9,27 @@
, enableQt ? true
, callPackage
, qtwayland
, fetchPypi
}:
let
version = "4.5.3";
version = "4.5.4";
python = python3.override {
self = python;
packageOverrides = self: super: {
# Pin ledger-bitcoin to 0.2.1
ledger-bitcoin = super.ledger-bitcoin.overridePythonAttrs (oldAttrs: rec {
version = "0.2.1";
format = "pyproject";
src = fetchPypi {
pname = "ledger_bitcoin";
inherit version;
hash = "sha256-AWl/q2MzzspNIo6yf30S92PgM/Ygsb+1lJsg7Asztso=";
};
});
};
};
libsecp256k1_name =
if stdenv.isLinux then "libsecp256k1.so.{v}"
@ -29,7 +46,7 @@ let
owner = "spesmilo";
repo = "electrum";
rev = version;
sha256 = "sha256-Lr6ynHAbyaiaxYAWU5j5Wh5acxO5HkP1/jpnFrL4j68=";
sha256 = "sha256-fDu2PlEQOF7ftlS6dYw15S2XiAx+D/bng4zC9ELj6uk=";
postFetch = ''
mv $out ./all
@ -39,13 +56,13 @@ let
in
python3.pkgs.buildPythonApplication {
python.pkgs.buildPythonApplication {
pname = "electrum";
inherit version;
src = fetchurl {
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
sha256 = "sha256-kej0msc7SB+51ad5xZrT8MMEY5rfYOGqum6RO1gBH5s=";
sha256 = "sha256-lDuwXhOjcbCx8x/oIoigrklDwCbhn1trf5lDf/X/1Qc=";
};
postUnpack = ''
@ -56,7 +73,7 @@ python3.pkgs.buildPythonApplication {
nativeBuildInputs = lib.optionals enableQt [ wrapQtAppsHook ];
buildInputs = lib.optional (stdenv.isLinux && enableQt) qtwayland;
propagatedBuildInputs = with python3.pkgs; [
propagatedBuildInputs = with python.pkgs; [
aiohttp
aiohttp-socks
aiorpcx
@ -80,12 +97,15 @@ python3.pkgs.buildPythonApplication {
ckcc-protocol
keepkey
trezor
bitbox02
cbor
pyserial
] ++ lib.optionals enableQt [
pyqt5
qdarkstyle
];
checkInputs = with python3.pkgs; lib.optionals enableQt [
checkInputs = with python.pkgs; lib.optionals enableQt [
pyqt6
];
@ -117,7 +137,7 @@ python3.pkgs.buildPythonApplication {
wrapQtApp $out/bin/electrum
'';
nativeCheckInputs = with python3.pkgs; [ pytestCheckHook pyaes pycryptodomex ];
nativeCheckInputs = with python.pkgs; [ pytestCheckHook pyaes pycryptodomex ];
pytestFlagsArray = [ "tests" ];
@ -140,7 +160,7 @@ python3.pkgs.buildPythonApplication {
changelog = "https://github.com/spesmilo/electrum/blob/master/RELEASE-NOTES";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ joachifm np prusnak ];
maintainers = with maintainers; [ joachifm np prusnak chewblacka ];
mainProgram = "electrum";
};
}

View File

@ -11,13 +11,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "kiwix-tools";
version = "3.6.0";
version = "3.7.0";
src = fetchFromGitHub {
owner = "kiwix";
repo = "kiwix-tools";
rev = finalAttrs.version;
hash = "sha256-+th86lMAuCcmWj06yQoZ1L7rLZKqNvuTrV+Rra2km44=";
hash = "sha256-JwF4EN5kyHEfNoMhHb9ywe+7pmgQtjEd2FeRUeTjvQw=";
};
nativeBuildInputs = [

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "revanced-cli";
version = "4.4.2";
version = "4.5.0";
src = fetchurl {
url = "https://github.com/revanced/revanced-cli/releases/download/v${version}/revanced-cli-${version}-all.jar";
hash = "sha256-zdkasyYwyPB6mPvRVMP3/UoaXdaRxAI8GyOxsCYBMEE=";
hash = "sha256-I25SmWUVJenFou1fKCd53PojoGt9FAQ7hDpEWweAICQ=";
};
nativeBuildInputs = [ makeWrapper ];

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "kubectl-cnpg";
version = "1.22.1";
version = "1.22.2";
src = fetchFromGitHub {
owner = "cloudnative-pg";
repo = "cloudnative-pg";
rev = "v${version}";
hash = "sha256-mKQuHswnoxgqQOCiQFbibg6MqACOxM73XngQai6s6To=";
hash = "sha256-xR61PYUqiVtPTghEEeSWXs/Apx7VVWDgi6Pgx/EBQzQ=";
};
vendorHash = "sha256-SCeKoxI1zFzSwLAdAa1YI3DiyfK/uOk7CmWwQWVeF7g=";
vendorHash = "sha256-u5ou9rY/JBrV0EF/nJX8u/Fqde/WZe21EcsNLwvtqB0=";
subPackages = [ "cmd/kubectl-cnpg" ];

View File

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "nerdctl";
version = "1.7.4";
version = "1.7.5";
src = fetchFromGitHub {
owner = "containerd";
repo = pname;
rev = "v${version}";
hash = "sha256-d90xwrMtDK5ibRHIeV6nzv5jqJfaQXpU9xKTH49yiX4=";
hash = "sha256-eGDshnJ26rrRuM9lWwcdRg8udA4uE5ee6c+SYES7qt4=";
};
vendorHash = "sha256-oiBgZQtqFwq189h/Bb4CrFhs4RDYUoEEOjrccujGclU=";
vendorHash = "sha256-GsI695T7nkwwAt78l7mc5JCD9wXAUcTxwsiLLFcANBI=";
nativeBuildInputs = [ makeWrapper installShellFiles ];

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "terragrunt";
version = "0.55.13";
version = "0.55.15";
src = fetchFromGitHub {
owner = "gruntwork-io";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-qTQ4tmSFFqO2tnp+7fVeXO6dNbPsx37vT6GElz8dLdQ=";
hash = "sha256-luVYnuvsLHfkSZVCjzGB34ffbNzuKjEFmxQfgdY+YpQ=";
};
vendorHash = "sha256-sdEA/5QQ85tGfo7qSCD/lD20uAh045fl3tF9nFfH6x0=";
vendorHash = "sha256-KXAN8WNKFfGbV7YQRhwgFBM0g+rbHe+MIuaR5/7khAs=";
doCheck = false;

View File

@ -18,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "wayvnc";
version = "0.7.2";
version = "0.8.0";
src = fetchFromGitHub {
owner = "any1";
repo = pname;
rev = "v${version}";
sha256 = "sha256-6at0p1Xc25K5l6sq2uMWpaLVvZMNlWC0ybyZyrIw41I=";
hash = "sha256-IGEM212CU91+pT8xq3BzrPrIDUZxZveb2jhatMGJAsw=";
};
strictDeps = true;

View File

@ -5,18 +5,18 @@
buildGoModule rec {
pname = "storj-uplink";
version = "1.99.3";
version = "1.100.2";
src = fetchFromGitHub {
owner = "storj";
repo = "storj";
rev = "v${version}";
hash = "sha256-SzldiGwcpR+UEQ3imJfu3FlYqGq4evsYtjVLybdjGqc=";
hash = "sha256-wc6oK1zn04/1nwis9ndpkQc8dwY/J85zZbhkwmNFLek=";
};
subPackages = [ "cmd/uplink" ];
vendorHash = "sha256-mPJVb2/iGbRWDDcfIey3uW/5g2TIIemHR8d/3osMeGA=";
vendorHash = "sha256-84PI1tZFiodnGvMwObELVxXMCgIWINOrO0ISAWRnxRM=";
ldflags = [ "-s" "-w" ];

View File

@ -19,15 +19,15 @@
python3.pkgs.buildPythonApplication rec {
pname = "iotas";
version = "0.2.7";
format = "other";
version = "0.2.10";
pyproject = false;
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "cheywood";
repo = pname;
owner = "World";
repo = "iotas";
rev = version;
hash = "sha256-k3Qbi/BwkJlQzlyTlo9SjJ1M3zMFHo4669rzd+BBPzQ=";
hash = "sha256-aITt+TJb/LrVOyb/mAC7U6/NJ4stHD76jjBFC7Pt7fU=";
};
nativeBuildInputs = [
@ -57,6 +57,7 @@ python3.pkgs.buildPythonApplication rec {
markdown-it-py
linkify-it-py
mdit-py-plugins
pypandoc
];
# prevent double wrapping
@ -67,9 +68,10 @@ python3.pkgs.buildPythonApplication rec {
meta = with lib; {
description = "Simple note taking with mobile-first design and Nextcloud sync";
homepage = "https://gitlab.gnome.org/cheywood/iotas";
homepage = "https://gitlab.gnome.org/World/iotas";
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "iotas";
maintainers = with maintainers; [ zendo ];
};
}

View File

@ -27,11 +27,11 @@ let
in
stdenv.mkDerivation rec {
pname = "PortfolioPerformance";
version = "0.68.1";
version = "0.68.2";
src = fetchurl {
url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
hash = "sha256-ZXtBKc5vQz9fDyiG+DYOx7DsnnsORiltOacdx4AqFjg=";
hash = "sha256-h/WCfF3jK/pkN911vxPe2xzGUfVY2Xy+3yJwoqBQ5mA=";
};
nativeBuildInputs = [

View File

@ -19,14 +19,14 @@
let
pname = "qownnotes";
appname = "QOwnNotes";
version = "24.3.1";
version = "24.3.3";
in
stdenv.mkDerivation {
inherit pname version;
src = fetchurl {
url = "https://github.com/pbek/QOwnNotes/releases/download/v${version}/qownnotes-${version}.tar.xz";
hash = "sha256-9WlpZO/OUSSUxBXXOcB6fLq5t75uryViWsn26C05bVo=";
hash = "sha256-1PnGccbEKkFZGE7mxMD8onMkFd/f9qyvERSu+VL3yUE=";
};
nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
with haskellPackages; mkDerivation {
pname = "Naproche-SAD";
version = "unstable-2023-07-11";
version = "unstable-2024-01-18";
src = fetchFromGitHub {
owner = "naproche";
repo = "naproche";
rev = "4c399d49a86987369bec6e1ac5ae3739cd6db0a8";
sha256 = "sha256-Ji6yxbDEcwuYAzIZwK5sHNltK1WBFBfpyoEtoID/U4k=";
rev = "bb3dbcbd2173e3334bc5bdcd04c07c6836a11387";
hash = "sha256-DWcowUjy8/VBuhqvDYlVINHssF4KhuzT0L+m1YwUxoE=";
};
isExecutable = true;
@ -20,11 +20,7 @@ with haskellPackages; mkDerivation {
];
prePatch = "hpack";
checkPhase = ''
export NAPROCHE_EPROVER=${eprover}/bin/eprover
dist/build/Naproche-SAD/Naproche-SAD examples/cantor.ftl.tex -t 60 --tex=on
'';
doCheck = false; # Tests are broken in upstream
postInstall = ''
wrapProgram $out/bin/Naproche-SAD \

View File

@ -11,7 +11,7 @@
python3.pkgs.buildPythonApplication rec {
pname = "commitizen";
version = "3.18.3";
version = "3.18.4";
format = "pyproject";
disabled = python3.pythonOlder "3.8";
@ -20,7 +20,7 @@ python3.pkgs.buildPythonApplication rec {
owner = "commitizen-tools";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-8l2nahrYq7GQwajdGwCg0Bfx8D5xk695UEHKds5+N5A=";
hash = "sha256-ODBlNwrvkYnZ+CvKyc5Bic6DK/z8d6/KR3+iarFxduE=";
};
pythonRelaxDeps = [

View File

@ -16,13 +16,13 @@
mkDerivation rec {
pname = "anilibria-winmaclinux";
version = "1.2.14";
version = "1.2.15";
src = fetchFromGitHub {
owner = "anilibria";
repo = "anilibria-winmaclinux";
rev = "d941607f078c72fca104ee1e7916cc0ddcc0acf5";
sha256 = "sha256-G4KlYAjOT1UV29vcX7Q8dMTj0BX0rsJcLtK2MQag5nU=";
rev = version;
sha256 = "sha256-pfM3o4H3XJ4ZE0FXVR1k8pc7lr7SOQjKEMWuG9YkvvI=";
};
sourceRoot = "${src.name}/src";

View File

@ -11,13 +11,13 @@
buildGoModule rec {
pname = "lima";
version = "0.20.1";
version = "0.20.2";
src = fetchFromGitHub {
owner = "lima-vm";
repo = pname;
rev = "v${version}";
sha256 = "sha256-MeTFATaAGRSaUXmC1fv9/gMFWafvkteKVJS6MHaqt8A=";
sha256 = "sha256-xFiCGuCUJUnWN5DBfwjhBgntDfod4CWpXqJ3dbrDUSQ=";
};
vendorHash = "sha256-wd7YiEo4Gy2kHF7aCRoNGlbOQUxqQnKqP3znzMqS2PI=";

View File

@ -1,6 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchFromGitea
, installShellFiles
, libX11
, libinput
@ -24,8 +24,9 @@ stdenv.mkDerivation (finalAttrs: {
pname = "dwl";
version = "0.5";
src = fetchFromGitHub {
owner = "djpohly";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "dwl";
repo = "dwl";
rev = "v${finalAttrs.version}";
hash = "sha256-U/vqGE1dJKgEGTfPMw02z5KJbZLWY1vwDJWnJxT8urM=";

View File

@ -26,6 +26,13 @@ stdenv.mkDerivation rec {
hash = "sha256-Uv8dSqI5Si5BbIWjOLYnzpf6cdQ+t2L9Sq8UXTb8eVo=";
};
postPatch = ''
# raise neatvnc version bound to 0.8.0
# https://gitlab.freedesktop.org/wayland/weston/-/issues/890
substituteInPlace libweston/backend-vnc/meson.build \
--replace-fail "'neatvnc', version: ['>= 0.7.0', '< 0.8.0']" "'neatvnc', version: ['>= 0.7.0', '<= 0.8.0']"
'';
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ meson ninja pkg-config python3 wayland-scanner ];
buildInputs = [

View File

@ -25,11 +25,11 @@ let
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "dynamodb-local";
version = "2.2.1";
version = "2.3.0";
src = fetchurl {
url = "https://d1ni2b6xgvw0s0.cloudfront.net/v2.x/dynamodb_local_2024-01-04.tar.gz";
hash = "sha256-CbZ9Z9A70JoHu4G6It+7WycaEtzuwjVJ2YrOK+37zYA=";
url = "https://d1ni2b6xgvw0s0.cloudfront.net/v2.x/dynamodb_local_2024-03-14.tar.gz";
hash = "sha256-BmLbmT63CaETgu1a/Tcf0KyF+Xwol67yKVwSMa9fJbw=";
};
sourceRoot = ".";

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "gatus";
version = "5.7.0";
version = "5.8.0";
src = fetchFromGitHub {
owner = "TwiN";
repo = "gatus";
rev = "v${version}";
hash = "sha256-GG5p2sAIameGo6IFt3IBwFuLfVFRbfHjrQrG6Ei9odA=";
hash = "sha256-FFnrtdJiN7B27sJXzoGsbPKX3NeuHOtA34WQrw6pvEI=";
};
vendorHash = "sha256-VYHBqVFXX7fUuW2UqPOlbRDEfcysYvjSlfm0UJ2mMGM=";
vendorHash = "sha256-VICVo7XYeHs/43knHA4CMSgHloyYSjOFe1TUb4u+egE=";
subPackages = [ "." ];

View File

@ -6,16 +6,16 @@
buildNpmPackage rec {
pname = "gitlab-ci-local";
version = "4.46.1";
version = "4.47.0";
src = fetchFromGitHub {
owner = "firecow";
repo = "gitlab-ci-local";
rev = version;
hash = "sha256-0NUmsbuzs004w9ETj4e4nO+sDvYHQh9SwJoRc3+r+j8=";
hash = "sha256-AMqifAdC4aPra/KfM0Z8L1mF6+lA0dv9tt/cXSd3Ov4=";
};
npmDepsHash = "sha256-zCBNUKmLluVCDoPHuKy9KMKCGL8FqopFhKq7QCAUe4U=";
npmDepsHash = "sha256-GVqGA4aMfA08j/+fy+DA6udi52lmfDeAkE59d9CMAqg=";
postPatch = ''
# remove cleanup which runs git commands

View File

@ -9,17 +9,18 @@
, libnotify
, withHyprland ? true
, hyprland
, gawk
}:
stdenvNoCC.mkDerivation rec {
pname = "hdrop";
version = "0.4.4";
version = "0.5.0";
src = fetchFromGitHub {
owner = "Schweber";
repo = "hdrop";
rev = "v${version}";
hash = "sha256-eLOu7xmFphTxCtyyXdM9VkNcUpefefuZMAQtOV4FVtU=";
hash = "sha256-iginpMlgANSPWgFxNC2TYMjf2NKSSzzrjIN8lIsAvX8=";
};
nativeBuildInputs = [
@ -36,6 +37,7 @@ stdenvNoCC.mkDerivation rec {
util-linux
jq
libnotify
gawk
]
++ lib.optional withHyprland hyprland)}"
'';

View File

@ -16,14 +16,14 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "home-manager";
version = "unstable-2024-03-12";
version = "unstable-2024-03-15";
src = fetchFromGitHub {
name = "home-manager-source";
owner = "nix-community";
repo = "home-manager";
rev = "a500de54b2e3067201a40cefa5f210f719423ddf";
hash = "sha256-AfVYEQIhOK6vaYVndgqFV4Vb5REXG9R0ylv83QInsT0=";
rev = "206f457fffdb9a73596a4cb2211a471bd305243d";
hash = "sha256-SUXGZNrXX05YA9G6EmgupxhOr3swI1gcxLUeDMUhrEY=";
};
nativeBuildInputs = [

View File

@ -23,11 +23,11 @@
}:
stdenv.mkDerivation rec {
pname = "intune-portal";
version = "1.2401.21-jammy";
version = "1.2402.12-jammy";
src = fetchurl {
url = "https://packages.microsoft.com/ubuntu/22.04/prod/pool/main/i/${pname}/${pname}_${version}_amd64.deb";
hash = "sha256-BIPTVhOBzaKzZR0WhQOX2W8kDg64UWOgIVvgaw2Gckc=";
hash = "sha256-S5+Ddm13OJ4eQTQ9Q8OgsCqnpM6GxuZ1hEycZCy6//g=";
};
nativeBuildInputs = [ dpkg ];

View File

@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec {
pname = "joshuto";
version = "0.9.6";
version = "0.9.8";
src = fetchFromGitHub {
owner = "kamiyaa";
repo = "joshuto";
rev = "v${version}";
hash = "sha256-d2r8xPGnH/299wjEijilgqy3u/xJgtRmwzJdHt0sA+o=";
hash = "sha256-8OvaL6HqsJjBAbksR4EpC/ZgvdBSKlB37PP77p3T3PY=";
};
cargoHash = "sha256-amgqoL7NYfl3WzTtgvDoBX46rsL9248rbCis6MHVQhE=";
cargoHash = "sha256-zGqOmebD7kZAsWunWSB2NFOSg0cu8aM1dyhEIQz1j4I=";
nativeBuildInputs = [ installShellFiles ];

View File

@ -4,7 +4,7 @@
, nix-update-script
}:
let
version = "0.0.1";
version = "0.0.3";
in
buildGoModule {
inherit version;
@ -14,7 +14,7 @@ buildGoModule {
owner = "kubernetes-sigs";
repo = "kubectl-validate";
rev = "v${version}";
hash = "sha256-0lwN+3Cy7O9kX9dh8PjxmvdyKSZhBxcxy+b+ZtuDZaw=";
hash = "sha256-k2+2QIPjNw6C/Do1WhPN39VZhZX4PZ6ZsKDKGJ9E5QA=";
};
vendorHash = null;

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "kyverno-chainsaw";
version = "0.1.7";
version = "0.1.9";
src = fetchFromGitHub {
owner = "kyverno";
repo = "chainsaw";
rev = "v${version}";
hash = "sha256-v71qAJSpnbHd+jkPkR34IVNvwWLhm04TrPzduB6ZOgA=";
hash = "sha256-qn5EjddLVRhN90SICa39A28giXQ24Ol1nfbxNH5TXhc=";
};
vendorHash = "sha256-lHV5Ik/L/Svn9AvcKZupq778ektEsbxfOkCts4Ocx9g=";
vendorHash = "sha256-R9qaG19Vp+1a7AL0q8Cl1jN89cbXzLwbnN163WMWAEw=";
ldflags = [
"-s" "-w"

View File

@ -0,0 +1,60 @@
{ lib
, stdenv
, fetchurl
, cups
, autoPatchelfHook
}:
stdenv.mkDerivation (finalAttrs: {
pname = "labelife-label-printer";
version = "1.2.1";
arch =
if stdenv.hostPlatform.system == "x86_64-linux" then "x86_64"
else if stdenv.hostPlatform.system == "i686-linux" then "i386"
else throw "Unsupported system: ${stdenv.hostPlatform.system}";
src = fetchurl {
url = "https://oss.saas.aimocloud.com/saas/Lablife/bag/LabelPrinter-${finalAttrs.version}.tar.gz";
hash = "sha256-twnIFMBMyEM3xGlsuk3763C3emz3mgpEnlfvnL0XRWw=";
};
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs = [ cups ];
installPhase =
''
runHook preInstall
# Install the CUPS filter with executable permissions
install -Dm755 ./${finalAttrs.arch}/rastertolabeltspl $out/lib/cups/filter/rastertolabeltspl
# Install all PPD files with read and write permissions for owner, and read for group and others
for ppd in ./ppds/*.ppd; do
install -Dm644 $ppd $out/share/cups/model/label/$(basename $ppd)
done
runHook postInstall
'';
meta = {
description = "CUPS driver for several Labelife-compatible thermal label printers";
downloadPage = "https://labelife.net/#/chart";
homepage = "https://labelife.net";
license = lib.licenses.unfree;
longDescription = ''
Supported printer models include:
- D520 & D520BT
- PM-201
- PM-241 & PM-241-BT
- PM-246 & PM-246S
Brands using Labelife drivers include:
- Phomemo
- Itari
- Omezizy
- Aimo
'';
maintainers = with lib.maintainers; [ daniel-fahey ];
platforms = with lib; [ "i686-linux" "x86_64-linux" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
})

View File

@ -1,6 +1,7 @@
{ lib, buildGoModule, fetchFromGitHub }:
{ lib, buildGoModule, fetchFromGitHub, nix-update-script
}:
let
version = "0.0.38";
version = "0.0.42";
in
buildGoModule {
@ -12,7 +13,7 @@ buildGoModule {
repo = "mcap";
owner = "foxglove";
rev = "releases/mcap-cli/v${version}";
hash = "sha256-mwKWf0kJ3uMx1cLUac+AqXgQ1Af3tLDOCTFKgq8FtHE=";
hash = "sha256-9fjzMUMWn5j8AJJq+tK+Hq0o8d3HpacitJZ5CfLiaLw=";
};
vendorHash = "sha256-Gl0zLBTWscKGtVOS6rPRL/r8KHYHpZwoUDbEyCL4Ijk=";
@ -34,11 +35,16 @@ buildGoModule {
"-skip=TestCat|TestInfo"
];
passthru = {
updateScript = nix-update-script { };
};
meta = with lib; {
description = "MCAP CLI tool to inspect and fix MCAP files";
homepage = "https://github.com/foxglove/mcap";
license = with licenses; [ mit ];
maintainers = with maintainers; [ squalus therishidesai ];
mainProgram = "mcap";
};
}

View File

@ -6,13 +6,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "openttd-ttf";
version = "0.5";
version = "0.6";
src = fetchFromGitHub {
owner = "zephyris";
repo = "openttd-ttf";
rev = "refs/tags/${finalAttrs.version}";
hash = "sha256-GjtfwM268i3bUAX8Pw5/Og9029AuD1OZuJ2VIlFTogY=";
hash = "sha256-Nr3oLiCEdpUhB/IczCEoLM8kb1hGDH/d6WYWRbjgOi8=";
};
nativeBuildInputs = [
@ -25,6 +25,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
postPatch = ''
chmod a+x build.sh
# Test requires openttd source and an additional python module, doesn't seem worth it
substituteInPlace build.sh \
--replace-fail "python3 checkOpenTTDStrings.py ../openttd/src/lang" ""
patchShebangs --build build.sh
'';

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "plumber";
version = "2.5.4";
version = "2.6.0";
src = fetchFromGitHub {
owner = "streamdal";
repo = pname;
rev = "v${version}";
hash = "sha256-6nPH+HQtpFJ4MAtblFWjaQjDSKtpIxW9tGt2o1ICtos=";
hash = "sha256-H1tyMedYKj1bePNcaEWYP3njHw57cJ0jgxwC7zDXQvk=";
};
vendorHash = null;

View File

@ -0,0 +1,57 @@
{ lib
, stdenvNoCC
, fetchzip
, writeScript
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "proton-ge-bin";
version = "GE-Proton9-1";
src = fetchzip {
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${finalAttrs.version}/${finalAttrs.version}.tar.gz";
hash = "sha256-odpzRlzW7MJGRcorRNo784Rh97ssViO70/1azHRggf0=";
};
outputs = [ "out" "steamcompattool" ];
buildCommand = ''
runHook preBuild
# Make it impossible to add to an environment. You should use the appropriate NixOS option.
# Also leave some breadcrumbs in the file.
echo "${finalAttrs.pname} should not be installed into environments. Please use programs.steam.extraCompatPackages instead." > $out
ln -s $src $steamcompattool
runHook postBuild
'';
/*
We use the created releases, and not the tags, for the update script as nix-update loads releases.atom
that contains both. Sometimes upstream pushes the tags but the Github releases don't get created due to
CI errors. Last time this happened was on 8-33, where a tag was created but no releases were created.
As of 2024-03-13, there have been no announcements indicating that the CI has been fixed, and thus
we avoid nix-update-script and use our own update script instead.
See: <https://github.com/NixOS/nixpkgs/pull/294532#issuecomment-1987359650>
*/
passthru.updateScript = writeScript "update-proton-ge" ''
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl jq common-updater-scripts
repo="https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases"
version="$(curl -sL "$repo" | jq 'map(select(.prerelease == false)) | .[0].tag_name' --raw-output)"
update-source-version proton-ge-bin "$version"
'';
meta = {
description = ''
Compatibility tool for Steam Play based on Wine and additional components.
(This is intended for use in the `programs.steam.extraCompatPackages` option only.)
'';
homepage = "https://github.com/GloriousEggroll/proton-ge-custom";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ NotAShelf shawn8901 ];
platforms = [ "x86_64-linux" ];
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
};
})

View File

@ -1,19 +1,24 @@
{ lib, stdenvNoCC, fetchurl, p7zip }:
{
lib,
stdenvNoCC,
fetchurl,
unzip,
}:
stdenvNoCC.mkDerivation rec {
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "sarasa-gothic";
version = "1.0.5";
version = "1.0.6";
src = fetchurl {
# Use the 'ttc' files here for a smaller closure size.
# (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${version}/Sarasa-TTC-${version}.7z";
hash = "sha256-OPoX6GNCilA8Lj9kLO6RHapU7mpZTiNa/8LL72TG1Wk=";
url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${finalAttrs.version}b/Sarasa-TTC-${finalAttrs.version}.zip";
hash = "sha256-MkbmEn4vV2WEDC8pW+WewPuVhlLPi2iGmhvJW6Szksw=";
};
sourceRoot = ".";
nativeBuildInputs = [ p7zip ];
nativeBuildInputs = [ unzip ];
installPhase = ''
runHook preInstall
@ -24,11 +29,14 @@ stdenvNoCC.mkDerivation rec {
runHook postInstall
'';
meta = with lib; {
meta = {
description = "A CJK programming font based on Iosevka and Source Han Sans";
homepage = "https://github.com/be5invis/Sarasa-Gothic";
license = licenses.ofl;
maintainers = [ maintainers.ChengCat ];
platforms = platforms.all;
license = lib.licenses.ofl;
maintainers = with lib.maintainers; [
ChengCat
wegank
];
platforms = lib.platforms.all;
};
}
})

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "spicetify-cli";
version = "2.34.0";
version = "2.34.1";
src = fetchFromGitHub {
owner = "spicetify";
repo = "spicetify-cli";
rev = "v${version}";
hash = "sha256-37bR6Tf6vOrrILb9liyyCYiH6VNnGpQ3yUnQcXA8o14=";
hash = "sha256-tVB0dkxp19EpUXN7X2rnnRlYuSc7Ja7sokmN9tNvY2k=";
};
vendorHash = "sha256-axE1SY+UW5oddyhOiktq+vNfhw2/SFX4ut4Hivg6TYQ=";

View File

@ -14,12 +14,12 @@ rustPlatform.buildRustPackage rec {
src = fetchFromGitHub {
owner = "LGFae";
repo = pname;
repo = "swww";
rev = "refs/tags/v${version}";
hash = "sha256-n7YdUmIZGu7W7cX6OvVW+wbkKjFvont4hEAhZXYDQd8=";
};
cargoSha256 = "sha256-lZC71M3lbsI+itMydAp5VCz0cpSHo/FpkQFC1NlN4DU=";
cargoHash = "sha256-lZC71M3lbsI+itMydAp5VCz0cpSHo/FpkQFC1NlN4DU=";
buildInputs = [
lz4
@ -42,9 +42,9 @@ rustPlatform.buildRustPackage rec {
done
installShellCompletion --cmd swww \
--bash <(cat completions/swww.bash) \
--fish <(cat completions/swww.fish) \
--zsh <(cat completions/_swww)
--bash completions/swww.bash \
--fish completions/swww.fish \
--zsh completions/_swww
'';
meta = with lib; {

View File

@ -1,6 +1,6 @@
{
"commit": "d77837f979c4b15fe0eb25cdf8a0463773434c9d",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/d77837f979c4b15fe0eb25cdf8a0463773434c9d.tar.gz",
"sha256": "01ihv1nwp0qqhwll5icl19ij5sb1nvhpnwgvwpcr319rn3b704km",
"msg": "Update from Hackage at 2023-12-17T16:07:47Z"
"commit": "c947711834678a5466dcca9367676bc61ed0a991",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/c947711834678a5466dcca9367676bc61ed0a991.tar.gz",
"sha256": "1slm1b6s8hk7x5rlr9fmsipkj8g6jsbvf5lfr2zzz8msfr5z8j8c",
"msg": "Update from Hackage at 2024-02-12T23:23:22Z"
}

View File

@ -2,7 +2,7 @@
let
themeName = "Dracula";
version = "unstable-2024-03-10";
version = "unstable-2024-03-13";
in
stdenvNoCC.mkDerivation {
pname = "dracula-theme";
@ -11,8 +11,8 @@ stdenvNoCC.mkDerivation {
src = fetchFromGitHub {
owner = "dracula";
repo = "gtk";
rev = "e28f5b8f8cbb7c3213c428667e351114188169ed";
hash = "sha256-B0Cakf/hLiW/z71BzzVhieJOE2C0jLb9GkDVM4zpICc=";
rev = "573f88083ae759f480860552f66e9951077bc428";
hash = "sha256-BQPlKcsfhpVTtVrwS9yVpIkujF6vM/ToIDmy9X60Mhs=";
};
propagatedUserEnvPkgs = [

View File

@ -19,13 +19,13 @@
stdenv.mkDerivation rec {
pname = "deepin-terminal";
version = "6.0.9";
version = "6.0.12";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
hash = "sha256-QdODR4zmbMuzSVy6eJhwJHNPXkAn6oCLHq+YZEOmtIU=";
hash = "sha256-VAF6Dn9cGmipQhAKhEOLd7lJyYWySOJ+rehc9L8pfL0=";
};
cmakeFlags = [ "-DVERSION=${version}" ];

View File

@ -36,6 +36,10 @@ let
};
in elmPkgs // {
inherit elmPkgs;
ansi-wl-pprint = overrideCabal (drv: {
jailbreak = true;
}) (self.callPackage ./packages/ansi-wl-pprint.nix {});
};
};

View File

@ -0,0 +1,17 @@
{ mkDerivation, ansi-terminal, base, fetchgit, lib }:
mkDerivation {
pname = "ansi-wl-pprint";
version = "0.6.8.1";
src = fetchgit {
url = "https://github.com/ekmett/ansi-wl-pprint";
sha256 = "00pgxgkramz6y1bgdlm00rsh6gd6mdaqllh6riax2rc2sa35kip4";
rev = "d16e2f6896d76b87b72af7220c2e93ba15c53280";
fetchSubmodules = true;
};
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [ ansi-terminal base ];
homepage = "http://github.com/ekmett/ansi-wl-pprint";
description = "The Wadler/Leijen Pretty Printer for colored ANSI terminal output";
license = lib.licenses.bsd3;
}

View File

@ -1,6 +1,8 @@
#!/usr/bin/env nix-shell
#!nix-shell -p cabal2nix elm2nix -i bash ../../..
cabal2nix https://github.com/ekmett/ansi-wl-pprint --revision d16e2f6896d76b87b72af7220c2e93ba15c53280 > packages/ansi-wl-pprint.nix
# We're building binaries from commit that npm installer is using since
# November 1st release called 0.19.1-6 in npm registry.
# These binaries are built with newer ghc version and also support Aarch64 for Linux and Darwin.

View File

@ -103,7 +103,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' + lib.optionalString enableRelocatedStaticLibs ''
GhcLibHcOpts += -fPIC
GhcRtsHcOpts += -fPIC

View File

@ -105,7 +105,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -105,7 +105,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -105,7 +105,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -105,7 +105,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -105,7 +105,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -107,7 +107,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -107,7 +107,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -107,7 +107,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -107,7 +107,7 @@ let
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
BUILD_PROF_LIBS = NO
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.

View File

@ -0,0 +1,407 @@
{ lib, stdenv
, fetchurl, perl, gcc
, ncurses5
, ncurses6, gmp, libiconv, numactl, libffi
, llvmPackages
, coreutils
, targetPackages
# minimal = true; will remove files that aren't strictly necessary for
# regular builds and GHC bootstrapping.
# This is "useful" for staying within hydra's output limits for at least the
# aarch64-linux architecture.
, minimal ? false
}:
# Prebuilt only does native
assert stdenv.targetPlatform == stdenv.hostPlatform;
let
downloadsUrl = "https://downloads.haskell.org/ghc";
# Copy sha256 from https://downloads.haskell.org/~ghc/9.6.3/SHA256SUMS
version = "9.6.3";
# Information about available bindists that we use in the build.
#
# # Bindist library checking
#
# The field `archSpecificLibraries` also provides a way for us get notified
# early when the upstream bindist changes its dependencies (e.g. because a
# newer Debian version is used that uses a new `ncurses` version).
#
# Usage:
#
# * You can find the `fileToCheckFor` of libraries by running `readelf -d`
# on the compiler binary (`exePathForLibraryCheck`).
# * To skip library checking for an architecture,
# set `exePathForLibraryCheck = null`.
# * To skip file checking for a specific arch specfic library,
# set `fileToCheckFor = null`.
ghcBinDists = {
# Binary distributions for the default libc (e.g. glibc, or libSystem on Darwin)
# nixpkgs uses for the respective system.
defaultLibc = {
i686-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
sha256 = "58be26f8b8f6b5bd8baf5c32abb03e2c4621646b2142fab10e5c7de5af5c50f8";
};
exePathForLibraryCheck = "bin/ghc";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
# The i686-linux bindist provided by GHC HQ is currently built on Debian 9,
# which link it against `libtinfo.so.5` (ncurses 5).
# Other bindists are linked `libtinfo.so.6` (ncurses 6).
{ nixPackage = ncurses5; fileToCheckFor = "libtinfo.so.5"; }
];
};
x86_64-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb11-linux.tar.xz";
sha256 = "c4c0124857265926f1cf22a09d950d7ba989ff94053a4ddf3dcdab5359f4cab7";
};
exePathForLibraryCheck = "bin/ghc";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
];
};
aarch64-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
sha256 = "03c389859319f09452081310fc13af7525063ea8930830ef76be2a14b312271e";
};
exePathForLibraryCheck = "bin/ghc";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
{ nixPackage = numactl; fileToCheckFor = null; }
];
};
x86_64-darwin = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
sha256 = "dde46118ab8388fb1066312c097123e93b1dcf6ae366e3370f88ea456382c9db";
};
exePathForLibraryCheck = null; # we don't have a library check for darwin yet
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = null; }
{ nixPackage = libiconv; fileToCheckFor = null; }
];
};
aarch64-darwin = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-apple-darwin.tar.xz";
sha256 = "e1cdf458926b2eaf52d2a8287d99a965040ff9051171f5c3b7467049cf0eb213";
};
exePathForLibraryCheck = null; # we don't have a library check for darwin yet
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = null; }
{ nixPackage = libiconv; fileToCheckFor = null; }
];
};
};
# Binary distributions for the musl libc for the respective system.
musl = {
x86_64-linux = {
variantSuffix = "-musl";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3_12-linux.tar.xz";
sha256 = "8f457af0aa40127049c11134c8793f64351a446e87da1f8ec256e1279b5ab61f";
};
exePathForLibraryCheck = "bin/ghc";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libncursesw.so.6"; }
];
};
};
};
distSetName = if stdenv.hostPlatform.isMusl then "musl" else "defaultLibc";
binDistUsed = ghcBinDists.${distSetName}.${stdenv.hostPlatform.system}
or (throw "cannot bootstrap GHC on this platform ('${stdenv.hostPlatform.system}' with libc '${distSetName}')");
gmpUsed = (builtins.head (
builtins.filter (
drv: lib.hasPrefix "gmp" (drv.nixPackage.name or "")
) binDistUsed.archSpecificLibraries
)).nixPackage;
# GHC has other native backends (like PowerPC), but here only the ones
# we ship bindists for matter.
useLLVM = !(stdenv.targetPlatform.isx86
|| (stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin));
libPath =
lib.makeLibraryPath (
# Add arch-specific libraries.
map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
);
libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY"
+ "LD_LIBRARY_PATH";
runtimeDeps = [
targetPackages.stdenv.cc
targetPackages.stdenv.cc.bintools
coreutils # for cat
]
++ lib.optionals useLLVM [
(lib.getBin llvmPackages.llvm)
]
# On darwin, we need unwrapped bintools as well (for otool)
++ lib.optionals (stdenv.targetPlatform.linker == "cctools") [
targetPackages.stdenv.cc.bintools.bintools
];
in
stdenv.mkDerivation rec {
inherit version;
pname = "ghc-binary${binDistUsed.variantSuffix}";
src = fetchurl binDistUsed.src;
nativeBuildInputs = [ perl ];
# Set LD_LIBRARY_PATH or equivalent so that the programs running as part
# of the bindist installer can find the libraries they expect.
# Cannot patchelf beforehand due to relative RPATHs that anticipate
# the final install location.
${libEnvVar} = libPath;
postUnpack =
# Verify our assumptions of which `libtinfo.so` (ncurses) version is used,
# so that we know when ghc bindists upgrade that and we need to update the
# version used in `libPath`.
lib.optionalString
(binDistUsed.exePathForLibraryCheck != null)
# Note the `*` glob because some GHCs have a suffix when unpacked, e.g.
# the musl bindist has dir `ghc-VERSION-x86_64-unknown-linux/`.
# As a result, don't shell-quote this glob when splicing the string.
(let buildExeGlob = ''ghc-${version}*/"${binDistUsed.exePathForLibraryCheck}"''; in
lib.concatStringsSep "\n" [
(''
shopt -u nullglob
echo "Checking that ghc binary exists in bindist at ${buildExeGlob}"
if ! test -e ${buildExeGlob}; then
echo >&2 "GHC binary ${binDistUsed.exePathForLibraryCheck} could not be found in the bindist build directory (at ${buildExeGlob}) for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
fi
'')
(lib.concatMapStringsSep
"\n"
({ fileToCheckFor, nixPackage }:
lib.optionalString (fileToCheckFor != null) ''
echo "Checking bindist for ${fileToCheckFor} to ensure that is still used"
if ! readelf -d ${buildExeGlob} | grep "${fileToCheckFor}"; then
echo >&2 "File ${fileToCheckFor} could not be found in ${binDistUsed.exePathForLibraryCheck} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
fi
echo "Checking that the nix package ${nixPackage} contains ${fileToCheckFor}"
if ! test -e "${lib.getLib nixPackage}/lib/${fileToCheckFor}"; then
echo >&2 "Nix package ${nixPackage} did not contain ${fileToCheckFor} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
fi
''
)
binDistUsed.archSpecificLibraries
)
])
# GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib
# during linking
+ lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof"
# not enough room in the object files for the full path to libiconv :(
for exe in $(find . -type f -executable); do
isMachO $exe || continue
ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib
install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/6/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe
done
''
# We have to patch the GMP paths for the ghc-bignum package, for hadrian by
# modifying the package-db directly
+ ''
find . -name 'ghc-bignum*.conf' \
-exec sed -e '/^[a-z-]*library-dirs/a \ ${lib.getLib gmpUsed}/lib' -i {} \;
''
# Similar for iconv and libffi on darwin
+ lib.optionalString stdenv.isDarwin ''
find . -name 'base*.conf' \
-exec sed -e '/^[a-z-]*library-dirs/a \ ${lib.getLib libiconv}/lib' -i {} \;
# To link RTS in the end we also need libffi now
find . -name 'rts*.conf' \
-exec sed -e '/^[a-z-]*library-dirs/a \ ${lib.getLib libffi}/lib' \
-e 's@/Library/Developer/.*/usr/include/ffi@${lib.getDev libffi}/include@' \
-i {} \;
'' +
# aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
# FFI_LIB_DIR is a good indication of places it must be needed.
lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) ''
find . -name package.conf.in \
-exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
'' +
# Rename needed libraries and binaries, fix interpreter
lib.optionalString stdenv.isLinux ''
find . -type f -executable -exec patchelf \
--interpreter ${stdenv.cc.bintools.dynamicLinker} {} \;
'';
# fix for `configure: error: Your linker is affected by binutils #16177`
preConfigure = lib.optionalString
stdenv.targetPlatform.isAarch32
"LD=ld.gold";
# GHC has a patched config.sub and bindists' platforms should always work
dontUpdateAutotoolsGnuConfigScripts = true;
configurePlatforms = [ ];
configureFlags =
lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
# From: https://github.com/NixOS/nixpkgs/pull/43369/commits
++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
# No building is necessary, but calling make without flags ironically
# calls install-strip ...
dontBuild = true;
# Patch scripts to include runtime dependencies in $PATH.
postInstall = ''
for i in "$out/bin/"*; do
test ! -h "$i" || continue
isScript "$i" || continue
sed -i -e '2i export PATH="${lib.makeBinPath runtimeDeps}:$PATH"' "$i"
done
'';
# Apparently necessary for the ghc Alpine (musl) bindist:
# When we strip, and then run the
# patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
# below, running ghc (e.g. during `installCheckPhase)` gives some apparently
# corrupted rpath or whatever makes the loader work on nonsensical strings:
# running install tests
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: : symbol not found
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: ir6zf6c9f86pfx8sr30n2vjy-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: y/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: <20>: symbol not found
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: <20>?: symbol not found
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
# This is extremely bogus and should be investigated.
dontStrip = if stdenv.hostPlatform.isMusl then true else false; # `if` for explicitness
# On Linux, use patchelf to modify the executables so that they can
# find editline/gmp.
postFixup = lib.optionalString (stdenv.isLinux && !(binDistUsed.isStatic or false))
(if stdenv.hostPlatform.isAarch64 then
# Keep rpath as small as possible on aarch64 for patchelf#244. All Elfs
# are 2 directories deep from $out/lib, so pooling symlinks there makes
# a short rpath.
''
(cd $out/lib; ln -s ${ncurses6.out}/lib/libtinfo.so.6)
(cd $out/lib; ln -s ${lib.getLib gmpUsed}/lib/libgmp.so.10)
(cd $out/lib; ln -s ${numactl.out}/lib/libnuma.so.1)
for p in $(find "$out/lib" -type f -name "*\.so*"); do
(cd $out/lib; ln -s $p)
done
for p in $(find "$out/lib" -type f -executable); do
if isELF "$p"; then
echo "Patchelfing $p"
patchelf --set-rpath "\$ORIGIN:\$ORIGIN/../.." $p
fi
done
''
else
''
for p in $(find "$out" -type f -executable); do
if isELF "$p"; then
echo "Patchelfing $p"
patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
fi
done
'') + lib.optionalString stdenv.isDarwin ''
# not enough room in the object files for the full path to libiconv :(
for exe in $(find "$out" -type f -executable); do
isMachO $exe || continue
ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib
install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/6/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe
done
for file in $(find "$out" -name setup-config); do
substituteInPlace $file --replace /usr/bin/ranlib "$(type -P ranlib)"
done
''
# Recache package db which needs to happen for Hadrian bindists
# where we modify the package db before installing
+ ''
package_db=("$out"/lib/ghc-*/lib/package.conf.d)
"$out/bin/ghc-pkg" --package-db="$package_db" recache
'';
# In nixpkgs, musl based builds currently enable `pie` hardening by default
# (see `defaultHardeningFlags` in `make-derivation.nix`).
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
# See:
# * https://github.com/NixOS/nixpkgs/issues/129247
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
hardeningDisable = lib.optional stdenv.targetPlatform.isMusl "pie";
doInstallCheck = true;
installCheckPhase = ''
# Sanity check, can ghc create executables?
cd $TMP
mkdir test-ghc; cd test-ghc
cat > main.hs << EOF
{-# LANGUAGE TemplateHaskell #-}
module Main where
main = putStrLn \$([|"yes"|])
EOF
env -i $out/bin/ghc --make main.hs || exit 1
echo compilation ok
[ $(./main) == "yes" ]
'';
passthru = {
targetPrefix = "";
enableShared = true;
inherit llvmPackages;
# Our Cabal compiler name
haskellCompilerName = "ghc-${version}";
# Normal GHC derivations expose the hadrian derivation used to build them
# here. In the case of bindists we just make sure that the attribute exists,
# as it is used for checking if a GHC derivation has been built with hadrian.
hadrian = null;
};
meta = rec {
homepage = "http://haskell.org/ghc";
description = "The Glasgow Haskell Compiler";
license = lib.licenses.bsd3;
# HACK: since we can't encode the libc / abi in platforms, we need
# to make the platform list dependent on the evaluation platform
# in order to avoid eval errors with musl which supports less
# platforms than the default libcs (i. e. glibc / libSystem).
# This is done for the benefit of Hydra, so `packagePlatforms`
# won't return any platforms that would cause an evaluation
# failure for `pkgsMusl.haskell.compiler.ghc922Binary`, as
# long as the evaluator runs on a platform that supports
# `pkgsMusl`.
platforms = builtins.attrNames ghcBinDists.${distSetName};
maintainers = lib.teams.haskell.members;
};
}

View File

@ -0,0 +1,4 @@
import ./common-hadrian.nix rec {
version = "9.8.2";
sha256 = "4vt6fddGEjfSLoNlqD7dnhp30uFdBF85RTloRah3gck=";
}

View File

@ -528,6 +528,10 @@ stdenv.mkDerivation ({
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
# https://github.com/NixOS/nixpkgs/issues/208959
broken =
(lib.versionAtLeast version "9.6" && lib.versionOlder version "9.8")
&& stdenv.targetPlatform.isStatic;
};
dontStrip = targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm;

View File

@ -2,6 +2,7 @@
, pkgsHostTarget
, cmake
, makeWrapper
, fetchpatch
, mkDerivation
, fetchFromGitHub
, alex
@ -19,7 +20,7 @@
, FloatingHex
, isocline
, lens
, lsp
, lsp_2_4_0_0
, mtl
, network
, network-simple
@ -64,6 +65,14 @@ mkDerivation rec {
isLibrary = false;
isExecutable = true;
libraryToolDepends = [ hpack ];
patches = [
(fetchpatch {
name = "koka-stackage-22.patch";
url = "https://github.com/koka-lang/koka/commit/95f9b360544996e06d4bb33321a83a6b9605d092.patch";
sha256 = "1a1sv1r393wkhsnj56awsi8mqxakqdy86p7dg9i9xfv13q2g4h6x";
includes = [ "src/**" ];
})
];
executableHaskellDepends = [
aeson
array
@ -77,7 +86,7 @@ mkDerivation rec {
FloatingHex
isocline
lens
lsp
lsp_2_4_0_0
mtl
network
network-simple

View File

@ -8,10 +8,10 @@
}:
mkDerivation {
pname = "cabal2nix";
version = "unstable-2024-01-04";
version = "unstable-2024-02-05";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/e394e96c51cc7a2858145e710fbedbb2cb57f6ec.tar.gz";
sha256 = "0rzmyx2i2z3w2ibg4rbaasq0581sa7bf8n1cih6v3j6phzgl3058";
url = "https://github.com/NixOS/cabal2nix/archive/173e8a5fa70dc95a1aeb0bd877bf5fee6d5e6b4a.tar.gz";
sha256 = "1pld7jfsjmw486ch6li1fqci1jj5p2nvfq7nrkxrmf5p2ja5528g";
};
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
isLibrary = true;

File diff suppressed because it is too large Load Diff

View File

@ -4,6 +4,7 @@ with haskellLib;
let
inherit (pkgs.stdenv.hostPlatform) isDarwin;
inherit (pkgs) lib;
in
self: super: {
@ -58,9 +59,6 @@ self: super: {
# their existence to callPackages, but their is no shim for lower GHC versions.
system-cxx-std-lib = null;
# Additionally depends on OneTuple for GHC < 9.0
base-compat-batteries = addBuildDepend self.OneTuple super.base-compat-batteries;
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
hashable = addBuildDepends [
@ -120,13 +118,6 @@ self: super: {
# Overly-strict bounds introducted by a revision in version 0.3.2.
text-metrics = doJailbreak super.text-metrics;
# OneTuple needs hashable (instead of ghc-prim) and foldable1-classes-compat for GHC < 9
OneTuple = addBuildDepends [
self.foldable1-classes-compat
] (super.OneTuple.override {
ghc-prim = self.hashable;
});
# Doesn't build with 9.0, see https://github.com/yi-editor/yi/issues/1125
yi-core = doDistribute (markUnbroken super.yi-core);
@ -170,4 +161,25 @@ self: super: {
# No instance for (Show B.Builder) arising from a use of print
http-types = dontCheck super.http-types;
# Packages which need compat library for GHC < 9.6
inherit
(lib.mapAttrs
(_: addBuildDepends [ self.foldable1-classes-compat ])
super)
indexed-traversable
these
;
base-compat-batteries = addBuildDepends [
self.foldable1-classes-compat
self.OneTuple
] super.base-compat-batteries;
# OneTuple needs hashable (instead of ghc-prim) and foldable1-classes-compat for GHC < 9
OneTuple = addBuildDepends [
self.foldable1-classes-compat
self.base-orphans
] (super.OneTuple.override {
ghc-prim = self.hashable;
});
}

View File

@ -4,6 +4,7 @@ with haskellLib;
let
inherit (pkgs.stdenv.hostPlatform) isDarwin;
inherit (pkgs) lib;
in
self: super: {
@ -135,4 +136,21 @@ self: super: {
# No instance for (Show B.Builder) arising from a use of print
http-types = dontCheck super.http-types;
# Packages which need compat library for GHC < 9.6
inherit
(lib.mapAttrs
(_: addBuildDepends [ self.foldable1-classes-compat ])
super)
indexed-traversable
these
;
base-compat-batteries = addBuildDepends [
self.foldable1-classes-compat
self.OneTuple
] super.base-compat-batteries;
OneTuple = addBuildDepends [
self.foldable1-classes-compat
self.base-orphans
] super.OneTuple;
}

View File

@ -4,6 +4,7 @@ with haskellLib;
let
inherit (pkgs.stdenv.hostPlatform) isDarwin;
inherit (pkgs) lib;
in
self: super: {
@ -74,14 +75,21 @@ self: super: {
stylish-haskell = doJailbreak super.stylish-haskell_0_14_4_0;
haskell-language-server = disableCabalFlag "fourmolu" (super.haskell-language-server.override {
haskell-language-server = lib.pipe (super.haskell-language-server.override {
hls-ormolu-plugin = null;
hls-stylish-haskell-plugin = null;
hls-fourmolu-plugin = null;
# Not buildable if GHC > 9.2.3, so we ship no compatible GHC
hls-stan-plugin = null;
});
}) [
(disableCabalFlag "fourmolu")
(disableCabalFlag "ormolu")
(disableCabalFlag "stylishHaskell")
];
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
hashable = addBuildDepends [ self.data-array-byte ] super.hashable;
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
primitive-unlifted = super.primitive-unlifted_0_1_3_1;
# Jailbreaks & Version Updates
hashable-time = doJailbreak super.hashable-time;
@ -127,4 +135,18 @@ self: super: {
# Requires GHC < 9.4
ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen);
# Packages which need compat library for GHC < 9.6
inherit
(lib.mapAttrs
(_: addBuildDepends [ self.foldable1-classes-compat ])
super)
indexed-traversable
OneTuple
these
;
base-compat-batteries = addBuildDepends [
self.foldable1-classes-compat
self.OneTuple
] super.base-compat-batteries;
}

View File

@ -59,10 +59,12 @@ in {
hashable-time = doJailbreak super.hashable-time;
libmpd = doJailbreak super.libmpd;
lens-family-th = doJailbreak super.lens-family-th; # template-haskell <2.19
# generically needs base-orphans for 9.4 only
base-orphans = dontCheck (doDistribute super.base-orphans);
generically = addBuildDepends [
self.base-orphans
] super.generically;
# the dontHaddock is due to a GHC panic. might be this bug, not sure.
# https://gitlab.haskell.org/ghc/ghc/-/issues/21619
@ -90,45 +92,52 @@ in {
ghc-tags = self.ghc-tags_1_6;
# A given major version of ghc-exactprint only supports one version of GHC.
ghc-exactprint = super.ghc-exactprint_1_6_1_3;
# Too strict upper bound on template-haskell
# https://github.com/mokus0/th-extras/issues/18
th-extras = doJailbreak super.th-extras;
# requires newer versions to work with GHC 9.4
servant = doJailbreak super.servant;
servant-server = doJailbreak super.servant-server;
servant-auth = doJailbreak super.servant-auth;
servant-auth-swagger = doJailbreak super.servant-auth-swagger;
servant-swagger = doJailbreak super.servant-swagger;
servant-client-core = doJailbreak super.servant-client-core;
servant-client = doJailbreak super.servant-client;
# https://github.com/kowainik/relude/issues/436
relude = dontCheck super.relude;
# Broken because of unix >= 2.8 for GHC >= 9.6
darcs = unmarkBroken (doDistribute super.darcs);
inherit
(
let
hls_overlay = lself: lsuper: {
ghc-lib-parser = lself.ghc-lib-parser_9_6_3_20231121;
ghc-lib-parser-ex = doDistribute lself.ghc-lib-parser-ex_9_6_0_2;
Cabal-syntax = lself.Cabal-syntax_3_10_2_0;
};
in
lib.mapAttrs (_: pkg: doDistribute (pkg.overrideScope hls_overlay)) {
haskell-language-server = allowInconsistentDependencies super.haskell-language-server;
fourmolu = self.fourmolu_0_14_0_0;
ormolu = self.generateOptparseApplicativeCompletions [ "ormolu" ] (enableSeparateBinOutput super.ormolu_0_7_2_0);
hlint = super.hlint_3_6_1;
fourmolu = super.fourmolu;
ormolu = super.ormolu;
hlint = super.hlint;
stylish-haskell = super.stylish-haskell;
}
)
haskell-language-server
# HLS from 2.3 needs at least formolu 0.14.
# This means we need to bump a lot of other tools, too, because they all us ghc-lib-parser
# We do this globally to prevent inconsistent formatting or lints between hls and the command line tools.
fourmolu
ormolu
hlint
stylish-haskell
;
# Packages which need compat library for GHC < 9.6
inherit
(lib.mapAttrs
(_: addBuildDepends [ self.foldable1-classes-compat ])
super)
indexed-traversable
OneTuple
these
;
base-compat-batteries = addBuildDepends [
self.foldable1-classes-compat
self.OneTuple
] super.base-compat-batteries;
}

View File

@ -65,49 +65,18 @@ self: super: {
# Version deviations from Stackage LTS
#
doctest = doDistribute super.doctest_0_22_2;
http-api-data = doDistribute self.http-api-data_0_6; # allows base >= 4.18
some = doDistribute self.some_1_0_6;
th-abstraction = doDistribute self.th-abstraction_0_6_0_0;
th-desugar = doDistribute self.th-desugar_1_16;
semigroupoids = doDistribute self.semigroupoids_6_0_0_1;
bifunctors = doDistribute self.bifunctors_5_6_1;
base-compat = doDistribute self.base-compat_0_13_1;
base-compat-batteries = doDistribute self.base-compat-batteries_0_13_1;
fgl = doDistribute self.fgl_5_8_2_0;
# Because we bumped the version of th-abstraction above.^
aeson = doJailbreak super.aeson;
free = doJailbreak super.free;
# Because we bumped the version of base-compat above.^
cabal-plan = unmarkBroken super.cabal-plan;
cabal-plan-bounds = unmarkBroken super.cabal-plan-bounds;
# Requires filepath >= 1.4.100.0 <=> GHC >= 9.6
file-io = unmarkBroken super.file-io;
# Too strict upper bound on template-haskell
# https://github.com/mokus0/th-extras/pull/21
th-extras = doJailbreak super.th-extras;
ghc-lib = doDistribute self.ghc-lib_9_6_3_20231121;
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_6_3_20231121;
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_2;
fourmolu = doDistribute self.fourmolu_0_14_0_0;
ormolu = self.generateOptparseApplicativeCompletions [ "ormolu" ] (enableSeparateBinOutput super.ormolu_0_7_2_0);
hlint = super.hlint_3_6_1;
# v0.1.6 forbids base >= 4.18
singleton-bool = doDistribute super.singleton-bool_0_1_7;
#
# Too strict bounds without upstream fix
#
# Forbids transformers >= 0.6
quickcheck-classes-base = doJailbreak super.quickcheck-classes-base;
# https://github.com/Gabriella439/Haskell-Break-Library/pull/3
break = doJailbreak super.break;
# Forbids mtl >= 2.3
ChasingBottoms = doJailbreak super.ChasingBottoms;
# Forbids base >= 4.18
@ -136,93 +105,23 @@ self: super: {
})
] (super.hourglass);
# Test suite doesn't compile with base-4.18 / GHC 9.6
# https://github.com/dreixel/syb/issues/40
syb = dontCheck super.syb;
# Patch 0.17.1 for support of mtl-2.3
xmonad-contrib = appendPatch
(pkgs.fetchpatch {
name = "xmonad-contrib-mtl-2.3.patch";
url = "https://github.com/xmonad/xmonad-contrib/commit/8cb789af39e93edb07f1eee39c87908e0d7c5ee5.patch";
sha256 = "sha256-ehCvVy0N2Udii/0K79dsRSBP7/i84yMoeyupvO8WQz4=";
})
(doJailbreak super.xmonad-contrib);
# Patch 0.12.0.1 for support of unix-2.8.0.0
arbtt = appendPatch
(pkgs.fetchpatch {
name = "arbtt-unix-2.8.0.0.patch";
url = "https://github.com/nomeata/arbtt/pull/168/commits/ddaac94395ac50e3d3cd34c133dda4a8e5a3fd6c.patch";
sha256 = "sha256-5Gmz23f4M+NfgduA5O+9RaPmnneAB/lAlge8MrFpJYs=";
})
super.arbtt;
# 2023-04-03: plugins disabled for hls 1.10.0.0 based on
#
haskell-language-server = super.haskell-language-server.override {
hls-floskell-plugin = null;
};
# Newer version of servant required for GHC 9.6
servant = self.servant_0_20_1;
servant-server = self.servant-server_0_20;
servant-client = self.servant-client_0_20;
servant-client-core = self.servant-client-core_0_20;
# Select versions compatible with servant_0_20_1
servant-docs = self.servant-docs_0_13;
servant-swagger = self.servant-swagger_1_2;
# Jailbreaks for servant <0.20
servant-lucid = doJailbreak super.servant-lucid;
# Jailbreak strict upper bounds: http-api-data <0.6
servant_0_20_1 = doJailbreak super.servant_0_20_1;
servant-server_0_20 = doJailbreak super.servant-server_0_20;
servant-client_0_20 = doJailbreak super.servant-client_0_20;
servant-client-core_0_20 = doJailbreak super.servant-client-core_0_20;
# Jailbreak strict upper bounds: doctest <0.22
servant-swagger_1_2 = doJailbreak super.servant-swagger_1_2;
lifted-base = dontCheck super.lifted-base;
hw-fingertree = dontCheck super.hw-fingertree;
hw-prim = dontCheck (doJailbreak super.hw-prim);
stm-containers = dontCheck super.stm-containers;
regex-tdfa = dontCheck super.regex-tdfa;
rebase = doJailbreak super.rebase_1_20_2;
rerebase = doJailbreak super.rerebase_1_20_2;
hiedb = dontCheck super.hiedb;
retrie = dontCheck super.retrie;
# https://github.com/kowainik/relude/issues/436
relude = dontCheck (doJailbreak super.relude);
ghc-exactprint = unmarkBroken (addBuildDepends (with self.ghc-exactprint.scope; [
HUnit Diff data-default extra fail free ghc-paths ordered-containers silently syb
]) super.ghc-exactprint_1_7_0_1);
inherit (pkgs.lib.mapAttrs (_: doJailbreak ) super)
hls-cabal-plugin
algebraic-graphs
co-log-core
lens
cryptohash-sha1
cryptohash-md5
ghc-trace-events
tasty-hspec
constraints-extras
tree-diff
implicit-hie-cradle
focus
hie-compat
dbus # template-haskell >=2.18 && <2.20, transformers <0.6, unix <2.8
gi-cairo-connector # mtl <2.3
haskintex # text <2
lens-family-th # template-haskell <2.19
ghc-prof # base <4.18
profiteur # vector <0.13
mfsolve # mtl <2.3
cubicbezier # mtl <2.3
dhall # template-haskell <2.20
env-guard # doctest <0.21
package-version # doctest <0.21, tasty-hedgehog <1.4
;
@ -233,9 +132,35 @@ self: super: {
# Pending text-2.0 support https://github.com/gtk2hs/gtk2hs/issues/327
gtk = doJailbreak super.gtk;
# 2023-12-23: It needs this to build under ghc-9.6.3.
# A factor of 100 is insufficent, 200 seems seems to work.
hip = appendConfigureFlag "--ghc-options=-fsimpl-tick-factor=200" super.hip;
# Doctest comments have bogus imports.
bsb-http-chunked = dontCheck super.bsb-http-chunked;
# This can be removed once https://github.com/typeclasses/ascii-predicates/pull/1
# is merged and in a release that's being tracked.
ascii-predicates = appendPatch
(pkgs.fetchpatch
{ url = "https://github.com/typeclasses/ascii-predicates/commit/2e6d9ed45987a8566f3a77eedf7836055c076d1a.patch";
name = "ascii-predicates-pull-1.patch";
relative = "ascii-predicates";
sha256 = "sha256-4JguQFZNRQpjZThLrAo13jNeypvLfqFp6o7c1bnkmZo=";
})
super.ascii-predicates;
# This can be removed once https://github.com/typeclasses/ascii-numbers/pull/1
# is merged and in a release that's being tracked.
ascii-numbers = appendPatch
(pkgs.fetchpatch
{ url = "https://github.com/typeclasses/ascii-numbers/commit/e9474ad91bc997891f1a46afd5d0bdf9b9f7d768.patch";
name = "ascii-numbers-pull-1.patch";
relative = "ascii-numbers";
sha256 = "sha256-buw1UeW57CFefEfqdDUraSyQ+H/NvCZOv6WF2ORiYQg=";
})
super.ascii-numbers;
# Fix ghc-9.6.x build errors.
libmpd = appendPatch
# https://github.com/vimus/libmpd-haskell/pull/138
@ -263,5 +188,8 @@ self: super: {
# the workaround on 9.6 is to revert to the LLVM backend (which is used
# for these sorts of situations even on 9.2 and 9.4).
# https://gitlab.haskell.org/ghc/ghc/-/issues/23746#note_525318
tls = if pkgs.stdenv.hostPlatform.isAarch64 then self.forceLlvmCodegenBackend super.tls else super.tls;
inherit (lib.mapAttrs (_: self.forceLlvmCodegenBackend) super)
tls
mmark
;
}

View File

@ -49,11 +49,12 @@ self: super: {
unix = null;
xhtml = null;
#
# HLS
# https://haskell-language-server.readthedocs.io/en/latest/support/plugin-support.html
#
haskell-language-server = super.haskell-language-server.override {
hls-class-plugin = null;
hls-floskell-plugin = null;
hls-fourmolu-plugin = null;
hls-gadt-plugin = null;
hls-hlint-plugin = null;
@ -65,55 +66,66 @@ self: super: {
hls-stylish-haskell-plugin = null;
};
#
# Version upgrades
alex = doDistribute self.alex_3_4_0_1;
some = doDistribute self.some_1_0_6;
tagged = doDistribute self.tagged_0_8_8;
#
th-abstraction = doDistribute self.th-abstraction_0_6_0_0;
hspec-core = doDistribute self.hspec-core_2_11_7;
hspec-meta = doDistribute self.hspec-meta_2_11_7;
hspec-discover = doDistribute self.hspec-discover_2_11_7;
hspec = doDistribute self.hspec_2_11_7;
hspec-expectations = doDistribute self.hspec-expectations_0_8_4;
bifunctors = doDistribute self.bifunctors_5_6_1;
free = doDistribute self.free_5_2;
semigroupoids = doDistribute self.semigroupoids_6_0_0_1;
doctest = doDistribute self.doctest_0_22_2;
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_1_20231121;
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_0;
ghc-lib = doDistribute self.ghc-lib_9_8_1_20231121;
megaparsec = doDistribute self.megaparsec_9_6_1;
tasty-hspec = doDistribute self.tasty-hspec_1_2_0_4;
hedgehog = doDistribute self.hedgehog_1_4;
rebase = doDistribute self.rebase_1_20_2;
rerebase = doDistribute self.rerebase_1_20_2;
aeson = doDistribute self.aeson_2_2_1_0;
aeson-pretty = doDistribute self.aeson-pretty_0_8_10;
attoparsec-aeson = doDistribute self.attoparsec-aeson_2_2_0_1;
ormolu = doDistribute self.ormolu_0_7_3_0;
fourmolu = doDistribute (dontCheck self.fourmolu_0_14_1_0);
xmonad = doDistribute self.xmonad_0_18_0;
hlint = doDistribute self.hlint_3_8;
#
# Jailbreaks
#
blaze-svg = doJailbreak super.blaze-svg; # base <4.19
commutative-semigroups = doJailbreak super.commutative-semigroups; # base < 4.19
diagrams-lib = doJailbreak super.diagrams-lib; # base <4.19, text <2.1
diagrams-postscript = doJailbreak super.diagrams-postscript; # base <4.19, bytestring <0.12
diagrams-svg = doJailbreak super.diagrams-svg; # base <4.19, text <2.1
ghc-trace-events = doJailbreak super.ghc-trace-events; # text < 2.1, bytestring < 0.12, base < 4.19
primitive-unlifted = doJailbreak super.primitive-unlifted; # bytestring < 0.12
statestack = doJailbreak super.statestack; # base < 4.19
newtype-generics = doJailbreak super.newtype-generics; # base < 4.19
hw-prim = doJailbreak super.hw-prim; # doctest < 0.22, ghc-prim < 0.11, hedgehog < 1.4
hw-fingertree = doJailbreak super.hw-fingertree; # deepseq <1.5, doctest < 0.22, hedgehog < 1.4
svg-builder = doJailbreak super.svg-builder; # base <4.19, bytestring <0.12, text <2.1
# Too strict bound on base, believe it or not.
# https://github.com/judah/terminfo/pull/55#issuecomment-1876894232
terminfo_0_4_1_6 = doJailbreak super.terminfo_0_4_1_6;
#
# Test suite issues
#
unordered-containers = dontCheck super.unordered-containers; # ChasingBottoms doesn't support base 4.20
lifted-base = dontCheck super.lifted-base; # doesn't compile with transformers == 0.6.*
# https://github.com/wz1000/HieDb/issues/64
hiedb = overrideCabal (drv: {
testFlags = drv.testFlags or [ ] ++ [
"--match" "!/hiedb/Command line/point-info/correctly prints type signatures/"
];
}) super.hiedb;
hourglass = dontCheck super.hourglass; # umaintained, test suite doesn't compile anymore
bsb-http-chunked = dontCheck super.bsb-http-chunked; # umaintained, test suite doesn't compile anymore
#
# Other build fixes
#
# 2023-12-23: It needs this to build under ghc-9.6.3.
# A factor of 100 is insufficent, 200 seems seems to work.
hip = appendConfigureFlag "--ghc-options=-fsimpl-tick-factor=200" super.hip;
# Fix build with text-2.x.
libmpd = appendPatch (pkgs.fetchpatch
{ url = "https://github.com/vimus/libmpd-haskell/pull/138.patch";
sha256 = "Q4fA2J/Tq+WernBo+UIMdj604ILOMlIYkG4Pr046DfM=";
})
super.libmpd;
# Symbol syntax seems to have changed in 9.8, removing a seemingly redundant colon; appears to be an overspecified assertion.
# https://github.com/wz1000/HieDb/issues/74
hiedb =
assert super.hiedb.version == "0.5.0.1";
dontCheck super.hiedb;
# Unbroken due to hspec* upgrades
hspec-api = doDistribute (unmarkBroken super.hspec-api);
}

View File

@ -28,33 +28,10 @@ default-package-overrides:
- gi-gdkx11 < 4
# 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
- ghc-bignum == 1.0
# needs http-client >= 0.7.11 which isn't part of Stackage LTS 18
- http-client-restricted < 0.0.5
# Downgrade hasql-dynamic-statements until hasql 1.6 is in Stackage
- hasql-dynamic-statements < 0.3.1.2
- rope-utf16-splay < 0.4.0.0
# 2023-07-06: ghcide-2.0.0.1 explicitly needs implicit-hie < 0.1.3, because some sort of
# breaking change was introduced in implicit-hie-0.1.3.0.
# https://github.com/haskell/haskell-language-server/blob/feb596592de95f09cf4ee885f3e74178161919f1/ghcide/ghcide.cabal#L107-L111
- implicit-hie < 0.1.3
- hie-bios < 0.13
# pandoc-crossref 0.3.17 needs pandoc >= 3.1.8
- pandoc-crossref < 0.3.17.0
# 2023-09-17: reflex-dom 0.6.3.0 is broken https://github.com/reflex-frp/reflex-dom/issues/462
- reflex-dom < 0.6.2.0
# Only an older version of dependent-sum-template is compatible with ghc 9.4
# https://github.com/obsidiansystems/dependent-sum-template/issues/5
- dependent-sum-template < 0.1.2
# hls-floskell-plugin 2.4 does not yet support floskell 0.11
- floskell < 0.11
# Newer daemons requires GHC 9.6
- daemons == 0.3.0
# 2024-02-22: Needed for haskell-language-server-2.6.0.0
- lsp < 2.4.0.0
# 2024-02-22: Needed for hls-fourmolu-plugin-2.6.0.0 and others
- lsp-test < 0.17.0.0
extra-packages:
- Cabal-syntax == 3.6.* # Dummy package that ensures packages depending on Cabal-syntax can work for Cabal < 3.8
@ -71,8 +48,7 @@ extra-packages:
- base16-bytestring < 1 # required for cabal-install etc.
- basement < 0.0.15 # 2022-08-30: last version to support GHC < 8.10
- bower-json == 1.0.0.1 # 2022-05-21: Needed for spago 0.20.9
- brick == 0.70.* # 2022-08-13: needed by matterhorn-50200.17.0
- brick-skylighting < 1.0 # 2022-08-13: needed by matterhorn-50200.17.0 to match brick
- brick == 0.70.* # 2022-08-13: needed by taskell
- brittany == 0.13.1.2 # 2022-09-20: needed for hls on ghc 8.8
- crackNum < 3.0 # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
- dependent-map == 0.2.4.0 # required by Hasura 1.3.1, 2020-08-20
@ -84,18 +60,9 @@ extra-packages:
- ghc-exactprint == 0.6.* # 2022-12-12: needed for GHC < 9.2
- ghc-exactprint == 1.5.* # 2023-03-30: needed for GHC == 9.2
- ghc-exactprint == 1.6.* # 2023-03-30: needed for GHC == 9.4
- ghc-lib == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
- ghc-lib == 9.2.* # 2022-02-17: preserve for GHC 9.2
- ghc-lib == 9.4.* # 2023-03-17: preserve for GHC 9.4
- ghc-lib == 9.6.* # 2023-03-17: preserve for GHC 9.6
- ghc-lib-parser == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
- ghc-lib-parser == 9.2.* # 2022-02-17: preserve for GHC 9.2
- ghc-lib-parser == 9.4.* # 2023-03-17: preserve for GHC 9.4
- ghc-lib-parser == 9.6.* # 2023-10-24: preserve for GHC 9.6
- ghc-lib-parser-ex == 8.10.* # 2022-02-17: preserve for GHC 8.10.7
- ghc-lib-parser-ex == 9.2.* # 2022-07-13: preserve for GHC 9.2
- ghc-lib-parser-ex == 9.4.* # 2023-03-17: preserve for GHC 9.4
- ghc-lib-parser-ex == 9.6.* # 2023-10-24: preserve for GHC 9.6
- ghc-syntax-highlighter == 0.0.10.* # 2023-11-20:
- gi-soup == 2.4.28 # 2023-04-05: the last version to support libsoup-2.4 (and thus be compatible with our other gi- packages)
- haddock == 2.23.* # required on GHC < 8.10.x
@ -117,8 +84,8 @@ extra-packages:
- language-docker == 11.0.0 # required by hadolint 2.12.0, 2022-11-16
- language-javascript == 0.7.0.0 # required by purescript
- lens-aeson < 1.2 # 2022-12-17: For aeson < 2.0 compat
- lsp == 1.4.0.0 # 2022-09-18: need for dhall-lsp-server 1.1.2
- lsp-types == 1.4.0.1 # 2022-09-18: need for dhall-lsp-server 1.1.2
- lsp == 2.1.0.0 # 2024-02-28: need for dhall-lsp-server unstable
- lsp-types == 2.0.2.0 # 2024-02-28: need for dhall-lsp-server unstable
- mmorph == 1.1.3 # Newest working version of mmorph on ghc 8.6.5. needed for hls
- network == 2.6.3.1 # required by pkgs/games/hedgewars/default.nix, 2020-11-15
- optparse-applicative < 0.16 # needed for niv-0.2.19
@ -126,6 +93,7 @@ extra-packages:
- fourmolu == 0.14.0.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
- ormolu == 0.5.2.0 # 2023-08-08: for hls on ghc 9.0 and 9.2
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
- primitive-unlifted == 0.1.3.1 # 2024-03-16: Needed for hls on ghc 9.2
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
- resolv < 0.2 # required to build cabal-install-3.10.1.0 with Stackage LTS 21
- sbv == 7.13 # required for pkgs.petrinizer
@ -137,12 +105,10 @@ extra-packages:
- weeder == 2.2.* # 2022-02-21: preserve for GHC 8.10.7
- weeder == 2.3.* # 2022-05-31: preserve for GHC 9.0.2
- weeder == 2.4.* # 2023-02-02: preserve for GHC 9.2.*
- commonmark-extensions < 0.2.3.3 # 2022-12-17: required by emanote 1.0.0.0 (to avoid a bug in 0.2.3.3)
- retrie < 1.2.0.0 # 2022-12-30: required for hls on ghc < 9.2
- ghc-tags == 1.5.* # 2023-02-18: preserve for ghc-lib == 9.2.*
- ghc-tags == 1.6.* # 2023-02-18: preserve for ghc-lib == 9.4.*
- shake-cabal < 0.2.2.3 # 2023-07-01: last version to support Cabal 3.6.*
- unix-compat < 0.7 # 2023-07-04: Need System.PosixCompat.User for git-annex
- algebraic-graphs < 0.7 # 2023-08-14: Needed for building weeder < 2.6.0
- fuzzyset == 0.2.4 # 2023-12-20: Needed for building postgrest > 10
@ -180,6 +146,7 @@ package-maintainers:
danielrolls:
- byte-count-reader
- shellify
- specup
domenkozar:
- cachix
- cachix-api
@ -300,13 +267,11 @@ package-maintainers:
- hlint
- hmatrix
- hspec-discover
- iCalendar
- matrix-client
- optics
- pandoc
- pandoc-cli
- pandoc-crossref
- paths
- postgresql-simple
- purebred-email
- reflex-dom
@ -773,6 +738,7 @@ supported-platforms:
swisstable: [ platforms.x86_64 ] # Needs AVX2
systemd-api: [ platforms.linux ]
tasty-papi: [ platforms.linux ] # limited by pkgs.papi
tcod-haskell: [ platforms.linux ] # limited by pkgs.libtcod
udev: [ platforms.linux ]
vty-windows: [ platforms.windows ] # depends on Win32
Win32-console: [ platforms.windows ]

View File

@ -114,7 +114,6 @@ self: super: builtins.intersectAttrs super {
}))
super)
hls-brittany-plugin
hls-stan-plugin
hls-floskell-plugin
hls-fourmolu-plugin
hls-overloaded-record-dot-plugin
@ -123,6 +122,9 @@ self: super: builtins.intersectAttrs super {
# PLUGINS WITH DISABLED TESTS
# 2023-04-01: TODO: We should reenable all these tests to figure if they are still broken.
inherit (pkgs.lib.mapAttrs (_: dontCheck) super)
# Tests require ghcide-test-utils which is broken
hls-semantic-tokens-plugin
# Tests have file permissions expections that dont work with the nix store.
hls-gadt-plugin
@ -173,6 +175,9 @@ self: super: builtins.intersectAttrs super {
# 2023-04-03: https://github.com/haskell/haskell-language-server/issues/3549
hls-retrie-plugin
# 2024-01-25: Golden files are missing
hls-stan-plugin
;
###########################################
@ -428,7 +433,6 @@ self: super: builtins.intersectAttrs super {
hasql-interpolate = dontCheck super.hasql-interpolate;
hasql-notifications = dontCheck super.hasql-notifications;
hasql-pool = dontCheck super.hasql-pool;
hasql-pool_0_10_0_1 = doDistribute (dontCheck super.hasql-pool_0_10_0_1);
hasql-transaction = dontCheck super.hasql-transaction;
# Test suite requires a running postgresql server,
@ -466,6 +470,7 @@ self: super: builtins.intersectAttrs super {
wxcore = super.wxcore.override { wxGTK = pkgs.wxGTK32; };
shellify = enableSeparateBinOutput super.shellify;
specup = enableSeparateBinOutput super.specup;
# Test suite wants to connect to $DISPLAY.
bindings-GLFW = dontCheck super.bindings-GLFW;
@ -652,6 +657,8 @@ self: super: builtins.intersectAttrs super {
# tests require working stack installation with all-cabal-hashes cloned in $HOME
stackage-curator = dontCheck super.stackage-curator;
stack = self.generateOptparseApplicativeCompletions [ "stack" ] super.stack;
# hardcodes /usr/bin/tr: https://github.com/snapframework/io-streams/pull/59
io-streams = enableCabalFlag "NoInteractiveTests" super.io-streams;
@ -791,6 +798,7 @@ self: super: builtins.intersectAttrs super {
substituteInPlace Test.hs \
--replace ', testCase "crypto" test_crypto' ""
'' + (drv.postPatch or "");
# Ensure git-annex uses the exact same coreutils it saw at build-time.
# This is especially important on Darwin but also in Linux environments
# where non-GNU coreutils are used by default.
@ -801,6 +809,19 @@ self: super: builtins.intersectAttrs super {
buildTools = [
pkgs.buildPackages.makeWrapper
] ++ (drv.buildTools or []);
# Git annex provides a restricted login shell. Setting
# passthru.shellPath here allows a user's login shell to be set to
# `git-annex-shell` by making `shell = haskellPackages.git-annex`.
# https://git-annex.branchable.com/git-annex-shell/
passthru.shellPath = "/bin/git-annex-shell";
# Install man pages which is no longer done by Setup.hs
# TODO(@sternenseemann): figure out why install-desktops wants to create /usr
# and run that, too.
postInstall = drv.postInstall or "" + ''
make install-mans "DESTDIR=$out" PREFIX=
'';
}) (super.git-annex.override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
@ -1082,7 +1103,7 @@ self: super: builtins.intersectAttrs super {
rel8 = pkgs.lib.pipe super.rel8 [
(addTestToolDepend pkgs.postgresql)
# https://github.com/NixOS/nixpkgs/issues/198495
(overrideCabal { doCheck = pkgs.postgresql.doCheck; })
(dontCheckIf (!pkgs.postgresql.doCheck))
];
# Wants running postgresql database accessible over ip, so postgresqlTestHook
@ -1157,10 +1178,7 @@ self: super: builtins.intersectAttrs super {
# Some hash implementations are x86 only, but part of the test suite.
# So executing and building it on non-x86 platforms will always fail.
hashes = overrideCabal {
doCheck = with pkgs.stdenv; hostPlatform == buildPlatform
&& buildPlatform.isx86;
} super.hashes;
hashes = dontCheckIf (!pkgs.stdenv.hostPlatform.isx86) super.hashes;
# Tries to access network
aws-sns-verify = dontCheck super.aws-sns-verify;
@ -1198,11 +1216,9 @@ self: super: builtins.intersectAttrs super {
{
fourmolu = fourmoluTestFix super.fourmolu;
fourmolu_0_14_0_0 = fourmoluTestFix super.fourmolu_0_14_0_0;
fourmolu_0_14_1_0 = fourmoluTestFix super.fourmolu_0_14_1_0;
})
fourmolu
fourmolu_0_14_0_0
fourmolu_0_14_1_0
;
@ -1339,6 +1355,10 @@ self: super: builtins.intersectAttrs super {
webkit2gtk3-javascriptcore
gi-webkit2
gi-webkit2webextension
gi-gtk_4_0_8
gi-gdk_4_0_7
gi-gsk
gi-adwaita
;
# Makes the mpi-hs package respect the choice of mpi implementation in Nixpkgs.
@ -1360,4 +1380,12 @@ self: super: builtins.intersectAttrs super {
mpi-hs-cereal
mpi-hs-binary
;
postgresql-libpq = overrideCabal (drv: {
# Using use-pkg-config flag, because pg_config won't work when cross-compiling.
configureFlags = drv.configureFlags or [] ++ [ "-fuse-pkg-config" ];
# Move postgresql from SystemDepends to PkgconfigDepends
libraryPkgconfigDepends = drv.librarySystemDepends;
librarySystemDepends = [];
}) super.postgresql-libpq;
}

View File

@ -27,10 +27,10 @@ in
, buildFlags ? []
, haddockFlags ? []
, description ? null
, doCheck ? !isCross && lib.versionOlder "7.4" ghc.version
, doCheck ? !isCross
, doBenchmark ? false
, doHoogle ? true
, doHaddockQuickjump ? doHoogle && lib.versionAtLeast ghc.version "8.6"
, doHaddockQuickjump ? doHoogle
, doInstallIntermediates ? false
, editedCabalFile ? null
, enableLibraryProfiling ? !(ghc.isGhcjs or false)
@ -41,7 +41,7 @@ in
, enableSharedLibraries ? !stdenv.hostPlatform.isStatic && (ghc.enableShared or false)
, enableDeadCodeElimination ? (!stdenv.isDarwin) # TODO: use -dead_strip for darwin
, enableStaticLibraries ? !(stdenv.hostPlatform.isWindows or stdenv.hostPlatform.isWasm)
, enableHsc2hsViaAsm ? stdenv.hostPlatform.isWindows && lib.versionAtLeast ghc.version "8.4"
, enableHsc2hsViaAsm ? stdenv.hostPlatform.isWindows
, extraLibraries ? [], librarySystemDepends ? [], executableSystemDepends ? []
# On macOS, statically linking against system frameworks is not supported;
# see https://developer.apple.com/library/content/qa/qa1118/_index.html
@ -125,23 +125,17 @@ assert stdenv.hostPlatform.isWasm -> enableStaticLibraries == false;
let
inherit (lib) optional optionals optionalString versionOlder versionAtLeast
inherit (lib) optional optionals optionalString versionAtLeast
concatStringsSep enableFeature optionalAttrs;
isGhcjs = ghc.isGhcjs or false;
isHaLVM = ghc.isHaLVM or false;
packageDbFlag = if isGhcjs || isHaLVM || versionOlder "7.6" ghc.version
then "package-db"
else "package-conf";
# GHC used for building Setup.hs
#
# Same as our GHC, unless we're cross, in which case it is native GHC with the
# same version, or ghcjs, in which case its the ghc used to build ghcjs.
nativeGhc = buildHaskellPackages.ghc;
nativePackageDbFlag = if versionOlder "7.6" nativeGhc.version
then "package-db"
else "package-conf";
# the target dir for haddock documentation
docdir = docoutput: docoutput + "/share/doc/" + pname + "-" + version;
@ -233,23 +227,20 @@ let
(optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
(optionalString enableParallelBuilding "--ghc-options=${parallelBuildingFlags}")
(optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp")
(enableFeature (enableDeadCodeElimination && !stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isAarch64 && (versionAtLeast "8.0.1" ghc.version)) "split-objs")
(enableFeature enableLibraryProfiling "library-profiling")
(optionalString ((enableExecutableProfiling || enableLibraryProfiling) && versionOlder "8" ghc.version) "--profiling-detail=${profilingDetail}")
(enableFeature enableExecutableProfiling (if versionOlder ghc.version "8" then "executable-profiling" else "profiling"))
(optionalString (enableExecutableProfiling || enableLibraryProfiling) "--profiling-detail=${profilingDetail}")
(enableFeature enableExecutableProfiling "profiling")
(enableFeature enableSharedLibraries "shared")
(optionalString (versionAtLeast ghc.version "7.10") (enableFeature doCoverage "coverage"))
(optionalString (versionOlder "8.4" ghc.version) (enableFeature enableStaticLibraries "static"))
(optionalString (isGhcjs || versionOlder "7.4" ghc.version) (enableFeature enableSharedExecutables "executable-dynamic"))
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature doCheck "tests"))
(enableFeature doCoverage "coverage")
(enableFeature enableStaticLibraries "static")
(enableFeature enableSharedExecutables "executable-dynamic")
(enableFeature doCheck "tests")
(enableFeature doBenchmark "benchmarks")
"--enable-library-vanilla" # TODO: Should this be configurable?
(enableFeature enableLibraryForGhci "library-for-ghci")
] ++ optionals (enableDeadCodeElimination && (lib.versionOlder "8.0.1" ghc.version)) [
"--ghc-option=-split-sections"
] ++ optionals dontStrip [
"--disable-library-stripping"
"--disable-executable-stripping"
(enableFeature enableDeadCodeElimination "split-sections")
(enableFeature (!dontStrip) "library-stripping")
(enableFeature (!dontStrip) "executable-stripping")
] ++ optionals isGhcjs [
"--ghcjs"
] ++ optionals isCross ([
@ -264,7 +255,7 @@ let
postPhases = optional doInstallIntermediates "installIntermediatesPhase";
setupCompileFlags = [
(optionalString (!coreSetup) "-${nativePackageDbFlag}=$setupPackageConfDir")
(optionalString (!coreSetup) "-package-db=$setupPackageConfDir")
(optionalString enableParallelBuilding parallelBuildingFlags)
"-threaded" # https://github.com/haskell/cabal/issues/2398
"-rtsopts" # allow us to pass RTS flags to the generated Setup executable
@ -433,7 +424,7 @@ stdenv.mkDerivation ({
for p in "''${pkgsBuildBuild[@]}" "''${pkgsBuildHost[@]}" "''${pkgsBuildTarget[@]}"; do
${buildPkgDb nativeGhc "$setupPackageConfDir"}
done
${nativeGhcCommand}-pkg --${nativePackageDbFlag}="$setupPackageConfDir" recache
${nativeGhcCommand}-pkg --package-db="$setupPackageConfDir" recache
''
# For normal components
+ ''
@ -445,9 +436,6 @@ stdenv.mkDerivation ({
if [ -d "$p/lib" ]; then
configureFlags+=" --extra-lib-dirs=$p/lib"
fi
''
# It is not clear why --extra-framework-dirs does work fine on Linux
+ optionalString (!stdenv.buildPlatform.isDarwin || versionAtLeast nativeGhc.version "8.0") ''
if [[ -d "$p/Library/Frameworks" ]]; then
configureFlags+=" --extra-framework-dirs=$p/Library/Frameworks"
fi
@ -490,7 +478,7 @@ stdenv.mkDerivation ({
sed -i "s,dynamic-library-dirs: .*,dynamic-library-dirs: $dynamicLinksDir," "$f"
done
'') + ''
${ghcCommand}-pkg --${packageDbFlag}="$packageConfDir" recache
${ghcCommand}-pkg --package-db="$packageConfDir" recache
runHook postSetupCompilerEnvironment
'';
@ -622,11 +610,6 @@ stdenv.mkDerivation ({
done
''}
${optionalString doCoverage "mkdir -p $out/share && cp -r dist/hpc $out/share"}
${optionalString (enableSharedExecutables && isExecutable && !isGhcjs && stdenv.isDarwin && lib.versionOlder ghc.version "7.10") ''
for exe in "${binDir}/"* ; do
install_name_tool -add_rpath "$out/${ghcLibdir}/${pname}-${version}" "$exe"
done
''}
${optionalString enableSeparateDocOutput ''
for x in ${docdir "$doc"}"/html/src/"*.html; do

File diff suppressed because it is too large Load Diff

View File

@ -1,66 +0,0 @@
{ mkDerivation, aeson, async, attoparsec, base, base64-bytestring
, bifunctors, binary, binary-conduit, boost, bytestring, Cabal
, cabal-pkg-config-version-hook, cachix, cachix-api, conduit
, conduit-extra, containers, directory, dlist, exceptions, filepath
, hercules-ci-api, hercules-ci-api-agent, hercules-ci-api-core
, hercules-ci-cnix-expr, hercules-ci-cnix-store, hostname, hspec
, hspec-discover, http-client, http-client-tls, http-conduit, HUnit
, inline-c, inline-c-cpp, katip, lens, lens-aeson, lib
, lifted-async, lifted-base, monad-control, mtl, network
, network-uri, nix, optparse-applicative, process, process-extras
, profunctors, protolude, QuickCheck, safe-exceptions, scientific
, servant, servant-auth-client, servant-client, servant-client-core
, stm, tagged, temporary, text, time, tls, tomland, transformers
, transformers-base, unbounded-delays, unix, unliftio
, unliftio-core, unordered-containers, uuid, vector, websockets
, wuss
}:
mkDerivation {
pname = "hercules-ci-agent";
version = "0.10.1";
sha256 = "a87e1b9ee650c493137d98370df8b3a9d842eea5b3a4c935c34275267ccf94d5";
isLibrary = true;
isExecutable = true;
enableSeparateDataOutput = true;
setupHaskellDepends = [ base Cabal cabal-pkg-config-version-hook ];
libraryHaskellDepends = [
aeson async base binary binary-conduit bytestring conduit
containers directory dlist exceptions filepath
hercules-ci-api-agent hercules-ci-api-core hercules-ci-cnix-expr
hercules-ci-cnix-store katip lens lens-aeson lifted-async
lifted-base monad-control mtl network network-uri process
process-extras protolude safe-exceptions stm tagged temporary text
time tls transformers transformers-base unbounded-delays unix
unliftio unliftio-core uuid vector websockets wuss
];
executableHaskellDepends = [
aeson async attoparsec base base64-bytestring bifunctors binary
binary-conduit bytestring cachix cachix-api conduit conduit-extra
containers directory dlist exceptions filepath hercules-ci-api
hercules-ci-api-agent hercules-ci-api-core hercules-ci-cnix-expr
hercules-ci-cnix-store hostname http-client http-client-tls
http-conduit inline-c inline-c-cpp katip lens lens-aeson
lifted-async lifted-base monad-control mtl network network-uri
optparse-applicative process process-extras profunctors protolude
safe-exceptions scientific servant servant-auth-client
servant-client servant-client-core stm temporary text time tomland
transformers transformers-base unix unliftio unliftio-core
unordered-containers uuid vector websockets wuss
];
executableSystemDepends = [ boost ];
executablePkgconfigDepends = [ nix ];
testHaskellDepends = [
aeson async attoparsec base bifunctors binary binary-conduit
bytestring conduit containers exceptions filepath
hercules-ci-api-agent hercules-ci-api-core hercules-ci-cnix-store
hspec HUnit katip lens lens-aeson lifted-async lifted-base
monad-control mtl process profunctors protolude QuickCheck
safe-exceptions scientific stm tagged temporary text tomland
transformers transformers-base unliftio-core unordered-containers
uuid vector
];
testToolDepends = [ hspec-discover ];
homepage = "https://docs.hercules-ci.com";
description = "Runs Continuous Integration tasks on your machines";
license = lib.licenses.asl20;
}

View File

@ -1,27 +0,0 @@
{ mkDerivation, aeson, base, base64-bytestring-type, bytestring
, containers, cookie, deepseq, exceptions, hashable
, hercules-ci-api-core, hspec, http-api-data, http-media, lens
, lens-aeson, lib, memory, network-uri, profunctors, QuickCheck
, quickcheck-classes, servant, servant-auth, string-conv, swagger2
, text, time, unordered-containers, uuid, vector
}:
mkDerivation {
pname = "hercules-ci-api-agent";
version = "0.5.1.0";
sha256 = "4d98e5a3824b09e3989251787dc0e3c9724011282eec343065c70ba9f1565ee6";
libraryHaskellDepends = [
aeson base base64-bytestring-type bytestring containers cookie
deepseq exceptions hashable hercules-ci-api-core http-api-data
http-media lens lens-aeson memory servant servant-auth string-conv
swagger2 text time unordered-containers uuid vector
];
testHaskellDepends = [
aeson base bytestring containers cookie exceptions hashable
hercules-ci-api-core hspec http-api-data http-media lens memory
network-uri profunctors QuickCheck quickcheck-classes servant
servant-auth string-conv swagger2 text time uuid vector
];
homepage = "https://github.com/hercules-ci/hercules-ci-agent#readme";
description = "API definition for Hercules CI Agent to talk to hercules-ci.com or Hercules CI Enterprise";
license = lib.licenses.asl20;
}

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