Merge master into staging-next
This commit is contained in:
@@ -18588,6 +18588,14 @@
|
||||
githubId = 30374463;
|
||||
name = "Michal S.";
|
||||
};
|
||||
Notarin = {
|
||||
name = "Notarin Steele";
|
||||
email = "424c414e4b@gmail.com";
|
||||
github = "Notarin";
|
||||
githubId = 25104390;
|
||||
keys = [ { fingerprint = "4E15 9433 48D9 7BA7 E8B8 B0FF C38F D346 AE36 36FB"; } ];
|
||||
matrix = "@notarin:matrix.org";
|
||||
};
|
||||
NotAShelf = {
|
||||
name = "NotAShelf";
|
||||
email = "raf@notashelf.dev";
|
||||
@@ -21517,6 +21525,15 @@
|
||||
githubId = 337811;
|
||||
name = "Rehno Lindeque";
|
||||
};
|
||||
rein = {
|
||||
email = "rein@rein.icu";
|
||||
github = "re1n0";
|
||||
githubId = 227051429;
|
||||
name = "rein";
|
||||
keys = [
|
||||
{ fingerprint = "66A8 1706 2227 9BD9 586A CEDD 5B29 A881 3F47 65C4"; }
|
||||
];
|
||||
};
|
||||
relrod = {
|
||||
email = "ricky@elrod.me";
|
||||
github = "relrod";
|
||||
|
||||
@@ -504,13 +504,14 @@ class Editor:
|
||||
)
|
||||
_prefetch = functools.partial(prefetch, cache=cache)
|
||||
|
||||
to_update_for_filter = [x.replace(".", "-") for x in to_update]
|
||||
plugins_to_update = (
|
||||
current_plugin_specs
|
||||
if len(to_update) == 0
|
||||
else [
|
||||
description
|
||||
for description in current_plugin_specs
|
||||
if self.filter_plugins_to_update(description, to_update)
|
||||
if self.filter_plugins_to_update(description, to_update_for_filter)
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
@@ -124,7 +124,19 @@ in
|
||||
type = lib.types.separatedString " ";
|
||||
default = "-C";
|
||||
description = ''
|
||||
Command line options for pg_dump or pg_dumpall.
|
||||
Command line options for pg_dump. This options is not used if
|
||||
`config.services.postgresqlBackup.backupAll` is enabled. Note that
|
||||
config.services.postgresqlBackup.backupAll is also active, when no
|
||||
databases where specified.
|
||||
'';
|
||||
};
|
||||
|
||||
pgdumpAllOptions = lib.mkOption {
|
||||
type = lib.types.separatedString " ";
|
||||
default = "";
|
||||
description = ''
|
||||
Command line options for pg_dumpall. This options is not used if
|
||||
`config.services.postgresqlBackup.backupAll` is disabled.
|
||||
'';
|
||||
};
|
||||
|
||||
@@ -175,7 +187,7 @@ in
|
||||
}
|
||||
|
||||
(lib.mkIf cfg.backupAll {
|
||||
systemd.services.postgresqlBackup = postgresqlBackupService "all" "pg_dumpall ${cfg.pgdumpOptions}";
|
||||
systemd.services.postgresqlBackup = postgresqlBackupService "all" "pg_dumpall ${cfg.pgdumpAllOptions}";
|
||||
})
|
||||
|
||||
(lib.mkIf (!cfg.backupAll) {
|
||||
|
||||
@@ -42,12 +42,14 @@ let
|
||||
instanceSettings = name: {
|
||||
freeformType =
|
||||
with lib.types;
|
||||
nullOr (oneOf [
|
||||
int
|
||||
str
|
||||
path
|
||||
package
|
||||
]);
|
||||
attrsOf (
|
||||
nullOr (oneOf [
|
||||
int
|
||||
str
|
||||
path
|
||||
package
|
||||
])
|
||||
);
|
||||
# override defaults:
|
||||
# inject instance name into paths,
|
||||
# also avoid conflicts between user names and special dirs
|
||||
|
||||
@@ -20,7 +20,7 @@ let
|
||||
nixosBreezePlymouth = pkgs.kdePackages.breeze-plymouth.override {
|
||||
logoFile = cfg.logo;
|
||||
logoName = "nixos";
|
||||
osName = "NixOS";
|
||||
osName = config.system.nixos.distroName;
|
||||
osVersion = config.system.nixos.release;
|
||||
};
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
@@ -55,11 +54,8 @@ in
|
||||
boot.extraModulePackages = [ prl-tools ];
|
||||
|
||||
boot.kernelModules = [
|
||||
"prl_fs"
|
||||
"prl_fs_freeze"
|
||||
"prl_tg"
|
||||
]
|
||||
++ optional (pkgs.stdenv.hostPlatform.system == "aarch64-linux") "prl_notifier";
|
||||
];
|
||||
|
||||
services.timesyncd.enable = false;
|
||||
|
||||
@@ -114,15 +110,6 @@ in
|
||||
WorkingDirectory = "${prl-tools}/bin";
|
||||
};
|
||||
};
|
||||
prlsga = {
|
||||
description = "Parallels Shared Guest Applications Tool";
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
path = [ prl-tools ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${prl-tools}/bin/prlsga";
|
||||
WorkingDirectory = "${prl-tools}/bin";
|
||||
};
|
||||
};
|
||||
prlshprof = {
|
||||
description = "Parallels Shared Profile Tool";
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
@@ -133,6 +120,5 @@ in
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
@@ -66,6 +66,7 @@ let
|
||||
enable = true;
|
||||
databases = lib.optional (!backupAll) "postgres";
|
||||
pgdumpOptions = "--restrict-key=ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
pgdumpAllOptions = "--restrict-key=ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -24,8 +24,8 @@ let
|
||||
sha256Hash = "sha256-3LkcpvuoUhY/kRpoqYnwfx1cdPvvdBMEFXtRLYmqTk4=";
|
||||
};
|
||||
latestVersion = {
|
||||
version = "2025.1.4.1"; # "Android Studio Narwhal 4 Feature Drop | 2025.1.4 Canary 1"
|
||||
sha256Hash = "sha256-OGnBf0LrfbN7WpO9skT8+ltAeKejyqHobxFvrzLp3EY=";
|
||||
version = "2025.1.4.3"; # "Android Studio Narwhal 4 Feature Drop | 2025.1.4 Canary 3"
|
||||
sha256Hash = "sha256-YYacdZ7YdmmrTSsKtCfmSSrrZV+/GGPK34KnlO0+aKQ=";
|
||||
};
|
||||
in
|
||||
{
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -66,12 +66,12 @@
|
||||
};
|
||||
arduino = buildGrammar {
|
||||
language = "arduino";
|
||||
version = "0.0.0+rev=3b5ddcd";
|
||||
version = "0.0.0+rev=2f0c122";
|
||||
src = fetchFromGitHub {
|
||||
owner = "tree-sitter-grammars";
|
||||
repo = "tree-sitter-arduino";
|
||||
rev = "3b5ddcdbcac43c6084358d3d14a30e10e2d36b88";
|
||||
hash = "sha256-qoVN/84BbuvhTb+WuwmTtNGqf9mKelViHMIVjMqyvG4=";
|
||||
rev = "2f0c1223c50aa4b754136db544204c6fc99ffc77";
|
||||
hash = "sha256-t0EtibjsMJpiTbwhkgZGv9lUdpI6gg2VoSEUDXswEMA=";
|
||||
};
|
||||
meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-arduino";
|
||||
};
|
||||
@@ -652,12 +652,12 @@
|
||||
};
|
||||
elixir = buildGrammar {
|
||||
language = "elixir";
|
||||
version = "0.0.0+rev=b848e63";
|
||||
version = "0.0.0+rev=d24cece";
|
||||
src = fetchFromGitHub {
|
||||
owner = "elixir-lang";
|
||||
repo = "tree-sitter-elixir";
|
||||
rev = "b848e63e9f2a68accff0332392f07582c046295a";
|
||||
hash = "sha256-kMsGDHFGBclpyk9n01JJsoqInEWLEcyIUSgcWJ2Jpzk=";
|
||||
rev = "d24cecee673c4c770f797bac6f87ae4b6d7ddec5";
|
||||
hash = "sha256-nSXXMPneL/sTdkpcsxUz73DiXVuNxVHnf8b2LTbAUs8=";
|
||||
};
|
||||
meta.homepage = "https://github.com/elixir-lang/tree-sitter-elixir";
|
||||
};
|
||||
@@ -1413,12 +1413,12 @@
|
||||
};
|
||||
inko = buildGrammar {
|
||||
language = "inko";
|
||||
version = "0.0.0+rev=f58a87a";
|
||||
version = "0.0.0+rev=74cbd0f";
|
||||
src = fetchFromGitHub {
|
||||
owner = "inko-lang";
|
||||
repo = "tree-sitter-inko";
|
||||
rev = "f58a87ac4dc6a7955c64c9e4408fbd693e804686";
|
||||
hash = "sha256-hZdbF9lw7fR5K8UfUaESS7/c4v9u7vEcSylEEbc6//4=";
|
||||
rev = "74cbd0f69053b4a9ad4fed8831dee983ec7e4990";
|
||||
hash = "sha256-nrhouUE2vjHiTlLquCJf2IUF3vy9vlBL6LuAmeKcB8M=";
|
||||
};
|
||||
meta.homepage = "https://github.com/inko-lang/tree-sitter-inko";
|
||||
};
|
||||
@@ -1457,12 +1457,12 @@
|
||||
};
|
||||
javadoc = buildGrammar {
|
||||
language = "javadoc";
|
||||
version = "0.0.0+rev=77afe93";
|
||||
version = "0.0.0+rev=384952d";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rmuir";
|
||||
repo = "tree-sitter-javadoc";
|
||||
rev = "77afe93bc6fc10f2cf4935857b8e055b2a47bb94";
|
||||
hash = "sha256-HkhVHPYe+IgVkRlJu72Y+3eNZnPPpDqs6UJ0ej0PZrI=";
|
||||
rev = "384952d91ebc176fcf8f1933dff93b9c32430911";
|
||||
hash = "sha256-IH1LUPO+18vDC83jcrC0DihTYt6aXV1w/u0iTm5jgK4=";
|
||||
};
|
||||
meta.homepage = "https://github.com/rmuir/tree-sitter-javadoc";
|
||||
};
|
||||
@@ -1735,12 +1735,12 @@
|
||||
};
|
||||
llvm = buildGrammar {
|
||||
language = "llvm";
|
||||
version = "0.0.0+rev=470886d";
|
||||
version = "0.0.0+rev=2914786";
|
||||
src = fetchFromGitHub {
|
||||
owner = "benwilliamgraham";
|
||||
repo = "tree-sitter-llvm";
|
||||
rev = "470886ddd635e0ee48a4cb169e33d0c6d9bff32e";
|
||||
hash = "sha256-1Fv1r644UfHXC4x4mbMetC0ThroYHwYDtKTSX3Nd4fo=";
|
||||
rev = "2914786ae6774d4c4e25a230f4afe16aa68fe1c1";
|
||||
hash = "sha256-jBSotMFsBUcgQrWH5p8EiywG00+v9QqePcUTI6ZqAkw=";
|
||||
};
|
||||
meta.homepage = "https://github.com/benwilliamgraham/tree-sitter-llvm";
|
||||
};
|
||||
@@ -1880,12 +1880,12 @@
|
||||
};
|
||||
mlir = buildGrammar {
|
||||
language = "mlir";
|
||||
version = "0.0.0+rev=b209a18";
|
||||
version = "0.0.0+rev=09666ce";
|
||||
src = fetchFromGitHub {
|
||||
owner = "artagnon";
|
||||
repo = "tree-sitter-mlir";
|
||||
rev = "b209a18d1a0f440acd3a85b6d633dac2660114e1";
|
||||
hash = "sha256-aAfrn3my/qfEy9uK/WPCxSefBOsekJ+rT04K9UmDVvs=";
|
||||
rev = "09666cead2c001cbbfc82b395007f6d8158113a5";
|
||||
hash = "sha256-toH/pG8CKI4UFdBQqkgIer5tfpIWkWoCP+fU0OByxQg=";
|
||||
};
|
||||
generate = true;
|
||||
meta.homepage = "https://github.com/artagnon/tree-sitter-mlir";
|
||||
@@ -2104,12 +2104,12 @@
|
||||
};
|
||||
perl = buildGrammar {
|
||||
language = "perl";
|
||||
version = "0.0.0+rev=e95676f";
|
||||
version = "0.0.0+rev=0c24d00";
|
||||
src = fetchFromGitHub {
|
||||
owner = "tree-sitter-perl";
|
||||
repo = "tree-sitter-perl";
|
||||
rev = "e95676fa54559c71f15ad73e871c1e44db8a9b05";
|
||||
hash = "sha256-VABlYn+OwgR+aD6dFI1bxa/JhwHV0KigsAcug3gze1c=";
|
||||
rev = "0c24d001dd1921e418fb933d208a7bd7dd3f923a";
|
||||
hash = "sha256-rKu3CGHckXlQnI/bvrQDq40jRO4PAueWKNZJADjmv5A=";
|
||||
};
|
||||
meta.homepage = "https://github.com/tree-sitter-perl/tree-sitter-perl";
|
||||
};
|
||||
@@ -2927,12 +2927,12 @@
|
||||
};
|
||||
superhtml = buildGrammar {
|
||||
language = "superhtml";
|
||||
version = "0.0.0+rev=0daae52";
|
||||
version = "0.0.0+rev=8cb16ba";
|
||||
src = fetchFromGitHub {
|
||||
owner = "kristoff-it";
|
||||
repo = "superhtml";
|
||||
rev = "0daae5239bd9366dda0c28c7540d7503b0c104d4";
|
||||
hash = "sha256-dfH7/i/xnjQRMAhzNPkDMhre+lR+pJ/s8aDxXhPqyic=";
|
||||
rev = "8cb16babb0c66b6512d6aeb4cbc37ed90641d980";
|
||||
hash = "sha256-lLZqyqVEUCn9z++9lPnrK8R2uDvht5v+5Y8KOZDgPs0=";
|
||||
};
|
||||
location = "tree-sitter-superhtml";
|
||||
meta.homepage = "https://github.com/kristoff-it/superhtml";
|
||||
@@ -3365,12 +3365,12 @@
|
||||
};
|
||||
vhdl = buildGrammar {
|
||||
language = "vhdl";
|
||||
version = "0.0.0+rev=73ff9d3";
|
||||
version = "0.0.0+rev=02523d7";
|
||||
src = fetchFromGitHub {
|
||||
owner = "jpt13653903";
|
||||
repo = "tree-sitter-vhdl";
|
||||
rev = "73ff9d3e7bc42b8cc123bf5f0b2db12a900ee9b7";
|
||||
hash = "sha256-8Fp/x3TC+bq4nJdbeVdBrnz7QnBSD1sc5CC0TRh0mGc=";
|
||||
rev = "02523d7fb0321344c19c1f3f4ec6b83424c7d6c8";
|
||||
hash = "sha256-TI1R2L8/9QwpKuTz18ayOeGXqRhYgbd0X6Rpj8kgsfw=";
|
||||
};
|
||||
meta.homepage = "https://github.com/jpt13653903/tree-sitter-vhdl";
|
||||
};
|
||||
@@ -3498,12 +3498,12 @@
|
||||
};
|
||||
xresources = buildGrammar {
|
||||
language = "xresources";
|
||||
version = "0.0.0+rev=6113943";
|
||||
version = "0.0.0+rev=f40778f";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ValdezFOmar";
|
||||
repo = "tree-sitter-xresources";
|
||||
rev = "6113943ab0847a307f3f3c38ff91d9cdfce9d0d9";
|
||||
hash = "sha256-ZqJvLw475e/5KBcJzx0w+aPbGCIAFfdig9cpZ5oaat8=";
|
||||
rev = "f40778ff42f2119aebacd46d4b6d785a4181a9ba";
|
||||
hash = "sha256-9vqVBsErlbFXzTd7QmMItd5GW2F9kE04HQFjq/vtrTc=";
|
||||
};
|
||||
meta.homepage = "https://github.com/ValdezFOmar/tree-sitter-xresources";
|
||||
};
|
||||
@@ -3564,12 +3564,12 @@
|
||||
};
|
||||
ziggy = buildGrammar {
|
||||
language = "ziggy";
|
||||
version = "0.0.0+rev=e95c85c";
|
||||
version = "0.0.0+rev=4353b20";
|
||||
src = fetchFromGitHub {
|
||||
owner = "kristoff-it";
|
||||
repo = "ziggy";
|
||||
rev = "e95c85cb58773c43e9d94c0b9422ae84697e68a1";
|
||||
hash = "sha256-6vqUPY/fpGuM1K4HfgpL/dRy7Na6fJ/t+Pe/12b1wqE=";
|
||||
rev = "4353b20ef2ac750e35c6d68e4eb2a07c2d7cf901";
|
||||
hash = "sha256-7XZNKUrOkpPMge6nDSiEBlUAf7dZLDcVcJ7fHT8fPh4=";
|
||||
};
|
||||
location = "tree-sitter-ziggy";
|
||||
meta.homepage = "https://github.com/kristoff-it/ziggy";
|
||||
|
||||
@@ -190,6 +190,7 @@ in
|
||||
checkInputs = with self; [
|
||||
lualine-nvim
|
||||
telescope-nvim
|
||||
fzf-lua
|
||||
];
|
||||
};
|
||||
|
||||
@@ -2902,7 +2903,6 @@ in
|
||||
(replaceVars ./patches/openscad.nvim/program_paths.patch {
|
||||
htop = lib.getExe htop;
|
||||
openscad = lib.getExe openscad;
|
||||
zathura = lib.getExe zathura;
|
||||
})
|
||||
];
|
||||
};
|
||||
|
||||
@@ -2,18 +2,9 @@ diff --git a/autoload/health/openscad_nvim.vim b/autoload/health/openscad_nvim.v
|
||||
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
|
||||
endfunction
|
||||
|
||||
function! s:check_zathura_installed() abort
|
||||
- if !executable('zathura')
|
||||
+ if !executable('@zathura@')
|
||||
call v:lua.vim.health.error('has(zathura)','install zathura')
|
||||
else
|
||||
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@')
|
||||
@@ -24,15 +15,6 @@ diff --git a/lua/openscad.lua b/lua/openscad.lua
|
||||
index 0a26d08..1264989 100644
|
||||
--- a/lua/openscad.lua
|
||||
+++ b/lua/openscad.lua
|
||||
@@ -101,7 +101,7 @@ end
|
||||
|
||||
function M.manual()
|
||||
local path = U.openscad_nvim_root_dir .. U.path_sep .. "help_source" .. U.path_sep .. "openscad-manual.pdf"
|
||||
- api.nvim_command('silent !zathura --fork ' .. path)
|
||||
+ api.nvim_command('silent !@zathura@ --fork ' .. path)
|
||||
end
|
||||
|
||||
function M.help()
|
||||
@@ -126,7 +126,7 @@ function M.exec_openscad()
|
||||
jobCommand = '/Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD ' .. filename
|
||||
else
|
||||
@@ -40,5 +22,5 @@ index 0a26d08..1264989 100644
|
||||
- jobCommand = 'openscad ' .. filename
|
||||
+ jobCommand = '@openscad@ ' .. filename
|
||||
end
|
||||
|
||||
|
||||
vim.fn.jobstart(jobCommand)
|
||||
|
||||
@@ -626,49 +626,49 @@ https://github.com/lsig/messenger.nvim/,HEAD,
|
||||
https://github.com/xero/miasma.nvim/,,
|
||||
https://github.com/dasupradyumna/midnight.nvim/,,
|
||||
https://github.com/hadronized/mind.nvim/,HEAD,
|
||||
https://github.com/echasnovski/mini-git/,HEAD,
|
||||
https://github.com/echasnovski/mini.ai/,HEAD,
|
||||
https://github.com/echasnovski/mini.align/,HEAD,
|
||||
https://github.com/echasnovski/mini.animate/,HEAD,
|
||||
https://github.com/echasnovski/mini.base16/,HEAD,
|
||||
https://github.com/echasnovski/mini.basics/,HEAD,
|
||||
https://github.com/echasnovski/mini.bracketed/,HEAD,
|
||||
https://github.com/echasnovski/mini.bufremove/,HEAD,
|
||||
https://github.com/echasnovski/mini.clue/,HEAD,
|
||||
https://github.com/echasnovski/mini.colors/,HEAD,
|
||||
https://github.com/echasnovski/mini.comment/,HEAD,
|
||||
https://github.com/echasnovski/mini.completion/,HEAD,
|
||||
https://github.com/echasnovski/mini.cursorword/,HEAD,
|
||||
https://github.com/echasnovski/mini.deps/,HEAD,
|
||||
https://github.com/echasnovski/mini.diff/,HEAD,
|
||||
https://github.com/echasnovski/mini.doc/,HEAD,
|
||||
https://github.com/echasnovski/mini.extra/,HEAD,
|
||||
https://github.com/echasnovski/mini.files/,HEAD,
|
||||
https://github.com/echasnovski/mini.fuzzy/,HEAD,
|
||||
https://github.com/echasnovski/mini.hipatterns/,HEAD,
|
||||
https://github.com/echasnovski/mini.hues/,HEAD,
|
||||
https://github.com/echasnovski/mini.icons/,HEAD,
|
||||
https://github.com/echasnovski/mini.indentscope/,HEAD,
|
||||
https://github.com/echasnovski/mini.jump/,HEAD,
|
||||
https://github.com/echasnovski/mini.jump2d/,HEAD,
|
||||
https://github.com/echasnovski/mini.keymap/,HEAD,
|
||||
https://github.com/echasnovski/mini.map/,HEAD,
|
||||
https://github.com/echasnovski/mini.misc/,HEAD,
|
||||
https://github.com/echasnovski/mini.move/,HEAD,
|
||||
https://github.com/echasnovski/mini.notify/,HEAD,
|
||||
https://github.com/echasnovski/mini.nvim/,,
|
||||
https://github.com/echasnovski/mini.operators/,HEAD,
|
||||
https://github.com/echasnovski/mini.pairs/,HEAD,
|
||||
https://github.com/echasnovski/mini.pick/,HEAD,
|
||||
https://github.com/echasnovski/mini.sessions/,HEAD,
|
||||
https://github.com/echasnovski/mini.snippets/,HEAD,
|
||||
https://github.com/echasnovski/mini.splitjoin/,HEAD,
|
||||
https://github.com/echasnovski/mini.starter/,HEAD,
|
||||
https://github.com/echasnovski/mini.statusline/,HEAD,
|
||||
https://github.com/echasnovski/mini.surround/,HEAD,
|
||||
https://github.com/echasnovski/mini.tabline/,HEAD,
|
||||
https://github.com/echasnovski/mini.trailspace/,HEAD,
|
||||
https://github.com/echasnovski/mini.visits/,HEAD,
|
||||
https://github.com/nvim-mini/mini-git/,HEAD,
|
||||
https://github.com/nvim-mini/mini.ai/,HEAD,
|
||||
https://github.com/nvim-mini/mini.align/,HEAD,
|
||||
https://github.com/nvim-mini/mini.animate/,HEAD,
|
||||
https://github.com/nvim-mini/mini.base16/,HEAD,
|
||||
https://github.com/nvim-mini/mini.basics/,HEAD,
|
||||
https://github.com/nvim-mini/mini.bracketed/,HEAD,
|
||||
https://github.com/nvim-mini/mini.bufremove/,HEAD,
|
||||
https://github.com/nvim-mini/mini.clue/,HEAD,
|
||||
https://github.com/nvim-mini/mini.colors/,HEAD,
|
||||
https://github.com/nvim-mini/mini.comment/,HEAD,
|
||||
https://github.com/nvim-mini/mini.completion/,HEAD,
|
||||
https://github.com/nvim-mini/mini.cursorword/,HEAD,
|
||||
https://github.com/nvim-mini/mini.deps/,HEAD,
|
||||
https://github.com/nvim-mini/mini.diff/,HEAD,
|
||||
https://github.com/nvim-mini/mini.doc/,HEAD,
|
||||
https://github.com/nvim-mini/mini.extra/,HEAD,
|
||||
https://github.com/nvim-mini/mini.files/,HEAD,
|
||||
https://github.com/nvim-mini/mini.fuzzy/,HEAD,
|
||||
https://github.com/nvim-mini/mini.hipatterns/,HEAD,
|
||||
https://github.com/nvim-mini/mini.hues/,HEAD,
|
||||
https://github.com/nvim-mini/mini.icons/,HEAD,
|
||||
https://github.com/nvim-mini/mini.indentscope/,HEAD,
|
||||
https://github.com/nvim-mini/mini.jump/,HEAD,
|
||||
https://github.com/nvim-mini/mini.jump2d/,HEAD,
|
||||
https://github.com/nvim-mini/mini.keymap/,HEAD,
|
||||
https://github.com/nvim-mini/mini.map/,HEAD,
|
||||
https://github.com/nvim-mini/mini.misc/,HEAD,
|
||||
https://github.com/nvim-mini/mini.move/,HEAD,
|
||||
https://github.com/nvim-mini/mini.notify/,HEAD,
|
||||
https://github.com/nvim-mini/mini.nvim/,,
|
||||
https://github.com/nvim-mini/mini.operators/,HEAD,
|
||||
https://github.com/nvim-mini/mini.pairs/,HEAD,
|
||||
https://github.com/nvim-mini/mini.pick/,HEAD,
|
||||
https://github.com/nvim-mini/mini.sessions/,HEAD,
|
||||
https://github.com/nvim-mini/mini.snippets/,HEAD,
|
||||
https://github.com/nvim-mini/mini.splitjoin/,HEAD,
|
||||
https://github.com/nvim-mini/mini.starter/,HEAD,
|
||||
https://github.com/nvim-mini/mini.statusline/,HEAD,
|
||||
https://github.com/nvim-mini/mini.surround/,HEAD,
|
||||
https://github.com/nvim-mini/mini.tabline/,HEAD,
|
||||
https://github.com/nvim-mini/mini.trailspace/,HEAD,
|
||||
https://github.com/nvim-mini/mini.visits/,HEAD,
|
||||
https://github.com/wfxr/minimap.vim/,,
|
||||
https://github.com/milanglacier/minuet-ai.nvim/,HEAD,
|
||||
https://github.com/jghauser/mkdir.nvim/,main,
|
||||
|
||||
@@ -19,6 +19,10 @@ stdenv.mkDerivation rec {
|
||||
hash = "sha256-C1a47pWtjb38bnwmZ2Zq7/LlW3+BF5BGNMRFi97/ngU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./gettext-0.25.patch
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -40,16 +44,16 @@ stdenv.mkDerivation rec {
|
||||
++ [ libxml2 ];
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace ocaml-dep.sh.in --replace '#!/bin/bash' '#!${stdenv.shell}'
|
||||
substituteInPlace ocaml-link.sh.in --replace '#!/bin/bash' '#!${stdenv.shell}'
|
||||
substituteInPlace ocaml-dep.sh.in --replace-fail '#!/bin/bash' '#!${stdenv.shell}'
|
||||
substituteInPlace ocaml-link.sh.in --replace-fail '#!/bin/bash' '#!${stdenv.shell}'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Top-like utility for showing stats of virtualized domains";
|
||||
homepage = "https://people.redhat.com/~rjones/virt-top/";
|
||||
license = licenses.gpl2Only;
|
||||
license = lib.licenses.gpl2Only;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.linux;
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "virt-top";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
--- a/configure.ac.orig 2025-08-23 01:41:53
|
||||
+++ b/configure.ac 2025-08-23 01:42:14
|
||||
@@ -123,6 +123,7 @@
|
||||
|
||||
dnl Check for gettext.
|
||||
AM_GNU_GETTEXT([external])
|
||||
+AM_GNU_GETTEXT_VERSION([0.25])
|
||||
|
||||
dnl Write gettext modules for the programs.
|
||||
dnl http://www.le-gall.net/sylvain+violaine/documentation/ocaml-gettext/html/reference-manual/ch03s04.html
|
||||
@@ -146,12 +146,8 @@ stdenv.mkDerivation {
|
||||
makeShellWrapper $out/share/1password/1password $out/bin/1password \
|
||||
"''${gappsWrapperArgs[@]}" \
|
||||
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ udev ]}
|
||||
# Currently half broken on wayland (e.g. no copy functionality)
|
||||
# See: https://github.com/NixOS/nixpkgs/pull/232718#issuecomment-1582123406
|
||||
# Remove this comment when upstream fixes:
|
||||
# https://1password.community/discussion/comment/624011/#Comment_624011
|
||||
#--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ udev ]} \
|
||||
--add-flags "\''${NIXOS_OZONE_WL:+--ozone-platform-hint=auto}"
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
diff --git a/crates/server/src/notification/dummy.rs b/crates/server/src/notification/dummy.rs
|
||||
index f85dda0..7489f22 100644
|
||||
--- a/crates/server/src/notification/dummy.rs
|
||||
+++ b/crates/server/src/notification/dummy.rs
|
||||
@@ -1,6 +1,9 @@
|
||||
+#[cfg(test)]
|
||||
use crate::notification::traits;
|
||||
|
||||
+#[cfg(test)]
|
||||
#[derive(Clone, Copy, Debug, Default)]
|
||||
pub struct Notification {}
|
||||
|
||||
+#[cfg(test)]
|
||||
impl traits::Notification for Notification {}
|
||||
@@ -5,6 +5,7 @@
|
||||
rustPlatform,
|
||||
protobuf,
|
||||
installShellFiles,
|
||||
writableTmpDirAsHomeHook,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
@@ -20,9 +21,20 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
cargoHash = "sha256-UA+NTtZ2qffUPUmvCidnTHwFzD3WOPTlxHR2e2vKwPQ=";
|
||||
|
||||
patches = [
|
||||
# Fix compilation errors caused by stricter restrictions on unused code in Rust 1.89.
|
||||
# TODO: remove this patch after upstream fix it.
|
||||
./dummy.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
protobuf
|
||||
installShellFiles
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
# fix following error on darwin:
|
||||
# objc/notify.h:1:9: fatal error: could not build module 'Cocoa'
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
checkFlags = [
|
||||
|
||||
@@ -30,14 +30,14 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "debian-devscripts";
|
||||
version = "2.25.18";
|
||||
version = "2.25.15+deb13u1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "salsa.debian.org";
|
||||
owner = "debian";
|
||||
repo = "devscripts";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-POmUwNYKfdWda80T44S6x2Dg2TpezMirXuiI95Z077Q=";
|
||||
hash = "sha256-szyVLpeIQozPXwBgL4nIYog4znUzweIt8q7nczo5q+g=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fastnetmon-advanced";
|
||||
version = "2.0.371";
|
||||
version = "2.0.372";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://repo.fastnetmon.com/fastnetmon_ubuntu_jammy/pool/fastnetmon/f/fastnetmon/fastnetmon_${version}_amd64.deb";
|
||||
hash = "sha256-/qCUeo/2AYIT9Yl6QjoTBPfmg8Lk2efDU5Axv4JU+t8=";
|
||||
hash = "sha256-FwYAbTBkk+AciDVxTIimswsB0M3gbzKX+03PD0fLMsY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -12,16 +12,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "git-lfs";
|
||||
version = "3.6.1";
|
||||
version = "3.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "git-lfs";
|
||||
repo = "git-lfs";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-zZ9VYWVV+8G3gojj1m74syvsYM1mX0YT4hKnpkdMAQk=";
|
||||
hash = "sha256-EFuuyD83aYe6XMKbRfAykVMfGFOQ4I6ORvMRm0Q8vfM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-JT0r/hs7ZRtsYh4aXy+v8BjwiLvRJ10e4yRirqmWVW0=";
|
||||
vendorHash = "sha256-6H0KpLin+DqwEg5bdzaxj2CoNSneZ/ET43MTrrdF3h8=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
asciidoctor
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "glab";
|
||||
version = "1.65.0";
|
||||
version = "1.67.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "cli";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-LqcUrF1CkNshsZBl9PdYByQKzMr5lWw5+BwCXs+yml0=";
|
||||
hash = "sha256-d0pElHlfElqnlXbbAaIGzLtWpuAdIOVfdmTD6+2nNX4=";
|
||||
leaveDotGit = true;
|
||||
postFetch = ''
|
||||
cd "$out"
|
||||
@@ -28,7 +28,7 @@ buildGoModule (finalAttrs: {
|
||||
'';
|
||||
};
|
||||
|
||||
vendorHash = "sha256-2lC55LaMOrDy8F+IOqB4aujYlKKgpJmhZw6kl2yN/GM=";
|
||||
vendorHash = "sha256-/nFdlC1gg08vEGuiq9qoUar8EGuYddxvTvFuGxQKnYA=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
@@ -85,6 +85,7 @@ buildGoModule (finalAttrs: {
|
||||
maintainers = with lib.maintainers; [
|
||||
freezeboy
|
||||
luftmensch-luftmensch
|
||||
anthonyroussel
|
||||
];
|
||||
mainProgram = "glab";
|
||||
};
|
||||
|
||||
@@ -70,6 +70,9 @@ python3Packages.buildPythonApplication rec {
|
||||
|
||||
substituteInPlace src/hhd/plugins/plugin.py \
|
||||
--replace-fail '"id"' '"${lib.getExe' coreutils "id"}"'
|
||||
|
||||
substituteInPlace usr/lib/udev/rules.d/83-hhd.rules \
|
||||
--replace-fail '/bin/chmod' '${lib.getExe' coreutils "chmod"}'
|
||||
'';
|
||||
|
||||
build-system = with python3Packages; [
|
||||
@@ -89,8 +92,8 @@ python3Packages.buildPythonApplication rec {
|
||||
doCheck = false;
|
||||
|
||||
postInstall = ''
|
||||
install -Dm644 $src/usr/lib/udev/rules.d/83-hhd.rules -t $out/lib/udev/rules.d/
|
||||
install -Dm644 $src/usr/lib/udev/hwdb.d/83-hhd.hwdb -t $out/lib/udev/hwdb.d/
|
||||
install -Dm644 usr/lib/udev/rules.d/83-hhd.rules -t $out/lib/udev/rules.d/
|
||||
install -Dm644 usr/lib/udev/hwdb.d/83-hhd.hwdb -t $out/lib/udev/hwdb.d/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -7,14 +7,14 @@
|
||||
vulkan-loader,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "hayabusa";
|
||||
version = "unstable-2023-11-29";
|
||||
version = "0.3.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "notarin";
|
||||
repo = "hayabusa";
|
||||
rev = "1d6b8cfd301d60ff9f6946970b51818c036083b0";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-w9vXC7L7IP4QLPFS1IgPOKSm7fT7W0R+NsHTdAfIupg=";
|
||||
};
|
||||
|
||||
@@ -43,9 +43,9 @@ rustPlatform.buildRustPackage {
|
||||
meta = {
|
||||
description = "Swift rust fetch program";
|
||||
homepage = "https://github.com/notarin/hayabusa";
|
||||
license = lib.licenses.cc-by-nc-nd-40;
|
||||
maintainers = with lib.maintainers; [ ];
|
||||
license = lib.licenses.agpl3Only;
|
||||
maintainers = with lib.maintainers; [ Notarin ];
|
||||
mainProgram = "hayabusa";
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
autoreconfHook,
|
||||
gtk-doc,
|
||||
glib,
|
||||
intltool,
|
||||
menu-cache,
|
||||
@@ -21,25 +23,21 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = if extraOnly then "libfm-extra" else "libfm";
|
||||
version = "1.3.2";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/pcmanfm/libfm-${finalAttrs.version}.tar.xz";
|
||||
sha256 = "sha256-pQQmMDBM+OXYz/nVZca9VG8ii0jJYBU+02ajTofK0eU=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "libfm";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-dmu5ygPuZe2YWAzIVPx5zskQeB51hXcLbMczxWgCr78=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Add casts to fix -Werror=incompatible-pointer-types
|
||||
(fetchpatch {
|
||||
url = "https://github.com/lxde/libfm/commit/fbcd183335729fa3e8dd6a837c13a23ff3271000.patch";
|
||||
hash = "sha256-RbX8jkP/5ao6NWEnv8Pgy4zwZaiDsslGlRRWdoV3enA=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
vala
|
||||
pkg-config
|
||||
intltool
|
||||
gtk-doc
|
||||
];
|
||||
buildInputs = [
|
||||
glib
|
||||
@@ -56,11 +54,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
installFlags = [ "sysconfdir=${placeholder "out"}/etc" ];
|
||||
|
||||
postPatch = ''
|
||||
# Ensure the files are re-generated from Vala sources.
|
||||
rm src/actions/*.c
|
||||
'';
|
||||
|
||||
# libfm-extra is pulled in by menu-cache and thus leads to a collision for libfm
|
||||
postInstall = optionalString (!extraOnly) ''
|
||||
rm $out/lib/libfm-extra.so $out/lib/libfm-extra.so.* $out/lib/libfm-extra.la $out/lib/pkgconfig/libfm-extra.pc
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "libretro-shaders-slang";
|
||||
version = "0-unstable-2025-08-14";
|
||||
version = "0-unstable-2025-08-26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "slang-shaders";
|
||||
rev = "69e3dbb8947e749156ff1f70e32c88f3c37e6793";
|
||||
hash = "sha256-C+qO/B3Lb8vtQUV3u6ZqiVZlg2prytR+9IbTnvyQGMg=";
|
||||
rev = "c9303dcc4d11fe5d37db9ef9a24c8eab4087c0c3";
|
||||
hash = "sha256-k/th5Ze/x48mTFZxEsSWCE4STnMSFXl3I0uMVmdMSxc=";
|
||||
};
|
||||
|
||||
dontConfigure = true;
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
automake,
|
||||
autoconf,
|
||||
autoreconfHook,
|
||||
intltool,
|
||||
pkg-config,
|
||||
gtk3,
|
||||
@@ -26,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "lxde";
|
||||
repo = "lxterminal";
|
||||
tag = finalAttrs.version;
|
||||
sha256 = "sha256-oDWh0U4QWJ84hTfq1oaAmDJM+IY0eJqOUey0qBgZN5U=";
|
||||
hash = "sha256-oDWh0U4QWJ84hTfq1oaAmDJM+IY0eJqOUey0qBgZN5U=";
|
||||
};
|
||||
|
||||
configureFlags = [
|
||||
@@ -35,8 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
automake
|
||||
autoconf
|
||||
autoreconfHook
|
||||
intltool
|
||||
pkg-config
|
||||
wrapGAppsHook3
|
||||
@@ -57,10 +55,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
./respect-xml-catalog-files-var.patch
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru.tests.test = nixosTests.terminal-emulators.lxterminal;
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "3.0.2";
|
||||
version = "3.1.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mealie-recipes";
|
||||
repo = "mealie";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-0GlHfyoVEqmfTDSN9BGXrLRkStRjWjv2qzZac2oYu7Q=";
|
||||
hash = "sha256-8ZLXXA4NKR7GaCdgk8XDMjAssQsKP1wZpEZPYWpglwk=";
|
||||
};
|
||||
|
||||
frontend = callPackage (import ./mealie-frontend.nix src version) { };
|
||||
@@ -102,7 +102,10 @@ pythonpkgs.buildPythonApplication rec {
|
||||
--set OUT "$out"
|
||||
'';
|
||||
|
||||
nativeCheckInputs = with pythonpkgs; [ pytestCheckHook ];
|
||||
nativeCheckInputs = with pythonpkgs; [
|
||||
pytestCheckHook
|
||||
pytest-asyncio
|
||||
];
|
||||
|
||||
# Needed for tests
|
||||
preCheck = ''
|
||||
|
||||
@@ -1,44 +1,41 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchpatch,
|
||||
fetchFromGitHub,
|
||||
glib,
|
||||
pkg-config,
|
||||
libfm-extra,
|
||||
autoreconfHook,
|
||||
gtk-doc,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "menu-cache";
|
||||
version = "1.1.0";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/lxde/menu-cache-${version}.tar.xz";
|
||||
sha256 = "1iry4zlpppww8qai2cw4zid4081hh7fz8nzsp5lqyffbkm2yn0pd";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "menu-cache";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-5Vp2btrflimy+Hq+3MLpic/quZMJ3uwsMq12G7s4DGI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Pull patch pending upstream inclusion for -fno-common toolchain support:
|
||||
# https://github.com/lxde/menu-cache/pull/19
|
||||
(fetchpatch {
|
||||
name = "fno-common.patch";
|
||||
url = "https://github.com/lxde/menu-cache/commit/1ce739649b4d66339a03fc0ec9ee7a2f7c141780.patch";
|
||||
sha256 = "08x3h0w2pl8ifj83v9jkf4j3zxcwsyzh251divlhhnwx0rw1pyn7";
|
||||
})
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
gtk-doc
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
libfm-extra
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Library to read freedesktop.org menu files";
|
||||
homepage = "https://blog.lxde.org/tag/menu-cache/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = [ maintainers.ttuegel ];
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
platforms = lib.platforms.linux ++ lib.platforms.darwin;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -27,13 +27,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "niri";
|
||||
version = "25.05.1";
|
||||
version = "25.08";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "YaLTeR";
|
||||
repo = "niri";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-z4viQZLgC2bIJ3VrzQnR+q2F3gAOEQpU1H5xHtX/2fs=";
|
||||
hash = "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
@@ -47,7 +47,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
--replace-fail '/usr/bin' "$out/bin"
|
||||
'';
|
||||
|
||||
cargoHash = "sha256-8ltuI94yIhff7JxIfe1mog4bDJ/7VFgLooMWOnSTREs=";
|
||||
cargoHash = "sha256-lR0emU2sOnlncN00z6DwDIE2ljI+D2xoKqG3rS45xG0=";
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
@@ -81,7 +81,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
|
||||
postInstall = ''
|
||||
install -Dm0644 README.md resources/default-config.kdl -t $doc/share/doc/niri
|
||||
mv wiki $doc/share/doc/niri/wiki
|
||||
mv docs/wiki $doc/share/doc/niri/wiki
|
||||
|
||||
install -Dm0644 resources/niri.desktop -t $out/share/wayland-sessions
|
||||
''
|
||||
@@ -122,6 +122,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
NIRI_BUILD_COMMIT = "Nixpkgs";
|
||||
};
|
||||
|
||||
checkFlags = [ "--skip=::egl" ];
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
|
||||
@@ -3,22 +3,25 @@
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
nixf,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "nixf-diagnose";
|
||||
version = "0.1.2";
|
||||
version = "0.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "inclyc";
|
||||
repo = "nixf-diagnose";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-gkeU3EwAl9810eRRp5/ddf1h0qpV6FrBBdntNBpBtsM=";
|
||||
hash = "sha256-8kcA2/ZMREKtXUM5rlAWRQL/C8+JNocZegq2ZHqbiSA=";
|
||||
};
|
||||
|
||||
env.NIXF_TIDY_PATH = lib.getExe nixf;
|
||||
|
||||
cargoHash = "sha256-nrr2/lTWPyH7MsG2hSMJjbFCpHsKWINEP8jwSYPhocg=";
|
||||
cargoHash = "sha256-9rWQfoaMXFs83cYHtJPL0ogA9hPh7q3mK1DG4Q4CCq0=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "CLI wrapper for nixf-tidy with fancy diagnostic output";
|
||||
|
||||
@@ -74,6 +74,16 @@ stdenv.mkDerivation rec {
|
||||
url = "https://github.com/openscad/openscad/commit/cc49ad8dac24309f5452d5dea9abd406615a52d9.patch";
|
||||
hash = "sha256-B3i+o6lR5osRcVXTimDZUFQmm12JhmbFgG9UwOPebF4=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "fix-application-icon-not-shown-on-wayland.patch";
|
||||
url = "https://github.com/openscad/openscad/commit/5ea83e5117f5f3ac2197c63db69f523721b8fa85.patch";
|
||||
hash = "sha256-nfeUv0R+J95fyqnVC0HNeBVZnxVoisY1pcdII82qUSU=";
|
||||
|
||||
# upstream's formatting conventions changed between 2021 and this patch
|
||||
postFetch = ''
|
||||
sed -i 's/& / \&/g;s/\*\*/\0 /g;s/^\(.\) /\1\t/' "$out"
|
||||
'';
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -15,14 +15,14 @@ let
|
||||
in
|
||||
ocamlPackages.buildDunePackage rec {
|
||||
pname = "owi";
|
||||
version = "0.2-unstable-2025-08-18";
|
||||
version = "0.2-unstable-2025-08-22";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocamlpro";
|
||||
repo = "owi";
|
||||
rev = "40c6434ecdb0cf7248b98670526e18dc007b425b";
|
||||
rev = "daad8163dec12abc8fe7f3384adc37e51f0994e9";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-N/DO3vml7vzOjPi81LPOL+ZuI8CewAhANM9j4nuRbyU=";
|
||||
hash = "sha256-C28YoUbovSEk9/RW0iYWNVB7/ETlDnY+vPTfQZPOerE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with ocamlPackages; [
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "panoply";
|
||||
version = "5.6.2";
|
||||
version = "5.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.giss.nasa.gov/tools/panoply/download/PanoplyJ-${version}.tgz";
|
||||
hash = "sha256-DxQjIUv2Gkb3VnaorphMDTo+GlM/NoCZ6y/ogHSs07c=";
|
||||
hash = "sha256-R3hzqYytQ0k2dhmJAOIKy+zbEYQ6et/q3b0NEQkAGt4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pgmodeler";
|
||||
version = "1.2.0";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pgmodeler";
|
||||
repo = "pgmodeler";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-q0XoShp+XERvyERLxi9uh//dNxVEtfL+UY9uVKqX4fI=";
|
||||
sha256 = "sha256-DIyqUewP8q9O6O/v82a2DNgyrBffWkBmyhBm3pA1qVY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
qt6,
|
||||
wrapGAppsHook4,
|
||||
testers,
|
||||
util-linux,
|
||||
writeShellScriptBin,
|
||||
xz,
|
||||
gnutls,
|
||||
zstd,
|
||||
@@ -20,35 +20,35 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "rpi-imager";
|
||||
version = "1.9.4";
|
||||
version = "1.9.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "raspberrypi";
|
||||
repo = "rpi-imager";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-Ih7FeAKTKSvuwsrMgKQ0VEUYHHT6L99shxfAIjAzErk=";
|
||||
hash = "sha256-HJLl0FOseZgW3DMi8M3SqIN/UHBDkIc09vKcenhSnO8=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/src";
|
||||
|
||||
# By default, the builder checks for JSON support in lsblk by running "lsblk --json",
|
||||
# but that throws an error, as /sys/dev doesn't exist in the sandbox.
|
||||
# This patch removes the check.
|
||||
# remove-vendoring.patch from
|
||||
# https://gitlab.archlinux.org/archlinux/packaging/packages/rpi-imager/-/raw/main/remove-vendoring.patch
|
||||
patches = [ ./remove-vendoring-and-lsblk-check.patch ];
|
||||
patches = [ ./remove-vendoring.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace ../debian/org.raspberrypi.rpi-imager.desktop \
|
||||
substituteInPlace debian/org.raspberrypi.rpi-imager.desktop \
|
||||
--replace-fail "/usr/bin/" ""
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
cd src
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
qt6.wrapQtAppsHook
|
||||
wrapGAppsHook4
|
||||
util-linux
|
||||
# Fool upstream's cmake lsblk check a bit
|
||||
(writeShellScriptBin "lsblk" ''
|
||||
echo "our lsblk has --json support but it doesn't work in our sandbox"
|
||||
'')
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -67,16 +67,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
qt6.qtwayland
|
||||
];
|
||||
|
||||
cmakeFlags =
|
||||
# Disable vendoring
|
||||
[
|
||||
(lib.cmakeBool "ENABLE_VENDORING" false)
|
||||
]
|
||||
# Disable telemetry and update check.
|
||||
++ lib.optionals (!enableTelemetry) [
|
||||
(lib.cmakeBool "ENABLE_CHECK_VERSION" false)
|
||||
(lib.cmakeBool "ENABLE_TELEMETRY" false)
|
||||
];
|
||||
cmakeFlags = [
|
||||
# Isn't relevant for Nix
|
||||
(lib.cmakeBool "ENABLE_CHECK_VERSION" false)
|
||||
(lib.cmakeBool "ENABLE_TELEMETRY" enableTelemetry)
|
||||
];
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--unset QT_QPA_PLATFORMTHEME"
|
||||
@@ -105,8 +100,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
ymarkus
|
||||
anthonyroussel
|
||||
];
|
||||
platforms = lib.platforms.all;
|
||||
# does not build on darwin
|
||||
broken = stdenv.hostPlatform.isDarwin;
|
||||
platforms = lib.platforms.linux ++ lib.platforms.darwin;
|
||||
# could not find xz
|
||||
badPlatforms = lib.platforms.darwin;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -1,575 +0,0 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -4,6 +4,7 @@
|
||||
cmake_minimum_required(VERSION 3.22)
|
||||
OPTION (ENABLE_CHECK_VERSION "Check for version updates" ON)
|
||||
OPTION (ENABLE_TELEMETRY "Enable sending telemetry" ON)
|
||||
+OPTION (ENABLE_VENDORING "Use vendored dependencies" ON)
|
||||
|
||||
# We use FetchContent_Populate() instead of FetchContent_MakeAvailable() to allow EXCLUDE_FROM_ALL
|
||||
# This prevents the dependencies from being built by default, which is our desired behavior
|
||||
@@ -58,410 +59,156 @@ if (APPLE)
|
||||
endforeach()
|
||||
endif(APPLE)
|
||||
|
||||
+## Preferentially build the bundled code. Full vendoring is to follow in a later version.
|
||||
+
|
||||
# Bundled code will occasionally use identical options - eg, BUILD_TESTING.
|
||||
set(BUILD_TESTING OFF)
|
||||
set(BUILD_STATIC_LIBS ON)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
-include(FetchContent)
|
||||
-
|
||||
-# Bundled liblzma
|
||||
-set(LIBLZMA_VERSION "5.8.1")
|
||||
-FetchContent_Declare(xz
|
||||
- GIT_REPOSITORY https://github.com/tukaani-project/xz.git
|
||||
- GIT_TAG v${LIBLZMA_VERSION}
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-set(XZ_MICROLZMA_DECODER OFF CACHE BOOL "" FORCE)
|
||||
-set(XZ_MICROLZMA_ENCODER OFF CACHE BOOL "" FORCE)
|
||||
-set(XZ_LZIP_DECODER OFF CACHE BOOL "" FORCE)
|
||||
-set(XZ_ENABLE_SANDBOX OFF CACHE BOOL "" FORCE)
|
||||
-set(XZ_BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
|
||||
-set(XZ_ENABLE_DOXYGEN OFF CACHE BOOL "" FORCE)
|
||||
-set(XZ_DECODERS
|
||||
- lzma1
|
||||
- lzma2
|
||||
- delta
|
||||
-)
|
||||
-set(XZ_ENCODERS
|
||||
- lzma1
|
||||
- lzma2
|
||||
- delta
|
||||
-)
|
||||
-set(CREATE_LZMA_SYMLINKS OFF CACHE BOOL "" FORCE)
|
||||
-set(CREATE_XZ_SYMLINKS OFF CACHE BOOL "" FORCE)
|
||||
-FetchContent_GetProperties(xz)
|
||||
-if(NOT xz_POPULATED)
|
||||
- FetchContent_Populate(xz)
|
||||
- add_subdirectory(${xz_SOURCE_DIR} ${xz_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
-endif()
|
||||
-unset(XZ_MICROLZMA_DECODER)
|
||||
-unset(XZ_MICROLZMA_ENCODER)
|
||||
-unset(XZ_LZIP_DECODER)
|
||||
-unset(XZ_ENABLE_SANDBOX)
|
||||
-unset(XZ_BUILD_SHARED_LIBS)
|
||||
-unset(XZ_ENABLE_DOXYGEN)
|
||||
-unset(CREATE_LZMA_SYMLINKS)
|
||||
-unset(CREATE_XZ_SYMLINKS)
|
||||
-set(LIBLZMA_FOUND true CACHE BOOL "" FORCE)
|
||||
-set(LIBLZMA_INCLUDE_DIR ${xz_SOURCE_DIR}/src/liblzma/api CACHE PATH "" FORCE)
|
||||
-set(LIBLZMA_INCLUDE_DIRS ${xz_SOURCE_DIR}/src/liblzma/api CACHE PATH "" FORCE)
|
||||
-set(LIBLZMA_LIBRARY liblzma CACHE FILEPATH "" FORCE)
|
||||
-set(LIBLZMA_LIBRARIES ${xz_BINARY_DIR}/liblzma.a CACHE FILEPATH "" FORCE)
|
||||
-set(LIBLZMA_HAS_AUTO_DECODER true CACHE BOOL "" FORCE)
|
||||
-set(LIBLZMA_HAS_EASY_ENCODER true CACHE BOOL "" FORCE)
|
||||
-set(LIBLZMA_HAS_LZMA_PRESET true CACHE BOOL "" FORCE)
|
||||
-
|
||||
-# Bundled zstd
|
||||
-set(ZSTD_VERSION "1.5.7")
|
||||
-FetchContent_Declare(zstd
|
||||
- GIT_REPOSITORY https://github.com/facebook/zstd.git
|
||||
- GIT_TAG v${ZSTD_VERSION}
|
||||
- SOURCE_SUBDIR build/cmake
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-set(ZSTD_BUILD_PROGRAMS OFF CACHE BOOL "" FORCE)
|
||||
-set(ZSTD_BUILD_SHARED OFF CACHE BOOL "" FORCE)
|
||||
-set(ZSTD_BUILD_STATIC ON CACHE BOOL "" FORCE)
|
||||
-set(ZSTD_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||||
-set(ZSTD_BUILD_DICTBUILDER OFF CACHE BOOL "" FORCE)
|
||||
-FetchContent_GetProperties(zstd)
|
||||
-if(NOT zstd_POPULATED)
|
||||
- FetchContent_Populate(zstd)
|
||||
- add_subdirectory(${zstd_SOURCE_DIR}/build/cmake ${zstd_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
-endif()
|
||||
-unset(ZSTD_BUILD_PROGRAMS)
|
||||
-unset(ZSTD_BUILD_SHARED)
|
||||
-unset(ZSTD_BUILD_STATIC)
|
||||
-unset(ZSTD_BUILD_TESTS)
|
||||
-unset(ZSTD_BUILD_DICTBUILDER)
|
||||
-set(ZSTD_FOUND true CACHE BOOL "" FORCE)
|
||||
-set(Zstd_VERSION ${ZSTD_VERSION} CACHE STRING "" FORCE)
|
||||
-set(Zstd_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-src/lib CACHE PATH "" FORCE)
|
||||
-set(ZSTD_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-src/lib CACHE PATH "" FORCE)
|
||||
-set(Zstd_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-src/lib CACHE PATH "" FORCE)
|
||||
-set(ZSTD_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-src/lib CACHE PATH "" FORCE)
|
||||
-set(Zstd_LIBRARIES libzstd_static CACHE FILEPATH "" FORCE)
|
||||
-set(ZSTD_LIBRARIES libzstd_static CACHE FILEPATH "" FORCE)
|
||||
-set(ZSTD_LIBRARY ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-build/lib/libzstd.a CACHE FILEPATH "" FORCE)
|
||||
-
|
||||
-# Remote nghttp2
|
||||
-set(NGHTTP2_VERSION "1.65.0")
|
||||
-FetchContent_Declare(nghttp2
|
||||
- GIT_REPOSITORY https://github.com/nghttp2/nghttp2.git
|
||||
- GIT_TAG v${NGHTTP2_VERSION}
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-set(BUILD_EXAMPLES OFF)
|
||||
-set(ENABLE_LIB_ONLY ON)
|
||||
-set(ENABLE_FAILMALLOC OFF)
|
||||
-FetchContent_GetProperties(nghttp2)
|
||||
-if(NOT nghttp2_POPULATED)
|
||||
- FetchContent_Populate(nghttp2)
|
||||
- add_subdirectory(${nghttp2_SOURCE_DIR} ${nghttp2_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
-endif()
|
||||
-unset(ENABLE_LIB_ONLY)
|
||||
-unset(ENABLE_FAILMALLOC)
|
||||
-unset(BUILD_EXAMPLES)
|
||||
-set(NGHTTP2_LIBRARIES nghttp2_static CACHE FILEPATH "" FORCE)
|
||||
-set(NGHTTP2_LIBRARY nghttp2_static CACHE FILEPATH "" FORCE)
|
||||
-set(NGHTTP2_INCLUDE_DIR ${nghttp2_SOURCE_DIR}/lib CACHE PATH "" FORCE)
|
||||
-set(NGHTTP2_INCLUDE_DIRS ${nghttp2_SOURCE_DIR}/lib CACHE PATH "" FORCE)
|
||||
-set(NGHTTP2_FOUND true CACHE BOOL "" FORCE)
|
||||
-
|
||||
-
|
||||
-# Bundled zlib
|
||||
-set(ZLIB_VERSION "1.4.1.1")
|
||||
-set(ZLIB_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
-set(ZLIB_BUILD_SHARED OFF CACHE BOOL "" FORCE)
|
||||
-set(ZLIB_BUILD_STATIC ON CACHE BOOL "" FORCE)
|
||||
-set(ZLIB_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||||
-set(SKIP_INSTALL_ALL ON CACHE BOOL "" FORCE)
|
||||
-FetchContent_Declare(zlib
|
||||
- GIT_REPOSITORY https://github.com/madler/zlib.git
|
||||
- GIT_TAG 5a82f71ed1dfc0bec044d9702463dbdf84ea3b71 # v1.4.1.1, as of 27/05/2025
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-FetchContent_GetProperties(zlib)
|
||||
-if(NOT zlib_POPULATED)
|
||||
- FetchContent_Populate(zlib)
|
||||
- add_subdirectory(${zlib_SOURCE_DIR} ${zlib_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
-endif()
|
||||
-unset(ZLIB_BUILD_EXAMPLES)
|
||||
-unset(ZLIB_BUILD_SHARED)
|
||||
-unset(ZLIB_BUILD_STATIC)
|
||||
-unset(ZLIB_BUILD_TESTS)
|
||||
-unset(SKIP_INSTALL_ALL)
|
||||
-# Set zlib variables that libarchive's CMake will use
|
||||
-set(ZLIB_USE_STATIC_LIBS ON CACHE BOOL "" FORCE) # This is to help FindZlib.cmake find the static library over the shared one
|
||||
-set(ZLIB_ROOT ${zlib_SOURCE_DIR} CACHE PATH "" FORCE)
|
||||
-
|
||||
-# On Windows with MinGW, zlib builds with .a extension, not .lib
|
||||
-# Set the correct library path before find_package
|
||||
-if (WIN32 AND CMAKE_COMPILER_IS_GNUCXX)
|
||||
- set(ZLIB_LIBRARY ${zlib_BINARY_DIR}/libzlibstatic.a CACHE FILEPATH "" FORCE)
|
||||
- set(ZLIB_LIBRARIES ${zlib_BINARY_DIR}/libzlibstatic.a CACHE STRING "" FORCE)
|
||||
-else()
|
||||
- set(ZLIB_LIBRARY ${zlib_BINARY_DIR}/libz.a CACHE FILEPATH "" FORCE)
|
||||
- set(ZLIB_LIBRARIES ${zlib_BINARY_DIR}/libz.a CACHE STRING "" FORCE)
|
||||
-endif()
|
||||
-
|
||||
-# Since we're building zlib ourselves with EXCLUDE_FROM_ALL, we don't need find_package
|
||||
-# Instead, we'll create the ZLIB::ZLIB target manually and set all required variables
|
||||
-set(ZLIB_INCLUDE_DIR ${zlib_SOURCE_DIR} CACHE PATH "" FORCE)
|
||||
-set(ZLIB_INCLUDE_DIRS ${zlib_SOURCE_DIR} CACHE PATH "" FORCE)
|
||||
-
|
||||
-# Create ZLIB::ZLIB target manually since we're not using find_package
|
||||
-# Set zlib variables that other packages expect
|
||||
-set(ZLIB_FOUND TRUE CACHE BOOL "" FORCE)
|
||||
-add_library(ZLIB::ZLIB STATIC IMPORTED)
|
||||
-if (WIN32 AND CMAKE_COMPILER_IS_GNUCXX)
|
||||
- set_target_properties(ZLIB::ZLIB PROPERTIES
|
||||
- IMPORTED_LOCATION "${zlib_BINARY_DIR}/libzlibstatic.a"
|
||||
- INTERFACE_INCLUDE_DIRECTORIES "${zlib_SOURCE_DIR};${zlib_BINARY_DIR}"
|
||||
- )
|
||||
- add_dependencies(ZLIB::ZLIB zlibstatic)
|
||||
-else()
|
||||
- set_target_properties(ZLIB::ZLIB PROPERTIES
|
||||
- IMPORTED_LOCATION "${zlib_BINARY_DIR}/libz.a"
|
||||
- INTERFACE_INCLUDE_DIRECTORIES "${zlib_SOURCE_DIR};${zlib_BINARY_DIR}"
|
||||
+if(ENABLE_VENDORING)
|
||||
+ # Bundled liblzma
|
||||
+ set(XZ_MICROLZMA_DECODER OFF)
|
||||
+ set(XZ_MICROLZMA_ENCODER OFF)
|
||||
+ set(XZ_LZIP_DECODER OFF)
|
||||
+ set(XZ_ENABLE_SANDBOX OFF)
|
||||
+ set(XZ_BUILD_SHARED_LIBS OFF)
|
||||
+ set(XZ_ENABLE_DOXYGEN OFF)
|
||||
+ set(XZ_DECODERS
|
||||
+ lzma1
|
||||
+ lzma2
|
||||
+ delta
|
||||
)
|
||||
- add_dependencies(ZLIB::ZLIB zlibstatic)
|
||||
-endif()
|
||||
-
|
||||
-# Debug output
|
||||
-message(STATUS "ZLIB_LIBRARY set to: ${ZLIB_LIBRARY}")
|
||||
-message(STATUS "ZLIB_LIBRARIES set to: ${ZLIB_LIBRARIES}")
|
||||
-message(STATUS "ZLIB_INCLUDE_DIRS set to: ${ZLIB_INCLUDE_DIRS}")
|
||||
-
|
||||
-# Bundled libarchive
|
||||
-
|
||||
-set(ENABLE_WERROR OFF CACHE BOOL "")
|
||||
-set(ENABLE_INSTALL OFF CACHE BOOL "")
|
||||
-set(ENABLE_TEST OFF CACHE BOOL "")
|
||||
-set(ENABLE_CNG OFF CACHE BOOL "")
|
||||
-set(ENABLE_MBEDTLS OFF CACHE BOOL "")
|
||||
-set(ENABLE_NETTLE OFF CACHE BOOL "")
|
||||
-set(ENABLE_OPENSSL OFF CACHE BOOL "")
|
||||
-# Configure libarchive with explicit zlib support
|
||||
-set(ENABLE_ZLIB ON CACHE BOOL "")
|
||||
-set(ENABLE_BZip2 OFF CACHE BOOL "")
|
||||
-set(ENABLE_LZ4 OFF CACHE BOOL "")
|
||||
-set(ENABLE_LZO OFF CACHE BOOL "")
|
||||
-set(ENABLE_LIBB2 OFF CACHE BOOL "")
|
||||
-set(ENABLE_LIBXML2 OFF CACHE BOOL "")
|
||||
-set(ENABLE_EXPAT OFF CACHE BOOL "")
|
||||
-set(ENABLE_PCREPOSIX OFF CACHE BOOL "")
|
||||
-set(ENABLE_PCRE2POSIX OFF CACHE BOOL "")
|
||||
-set(ENABLE_LIBGCC OFF CACHE BOOL "")
|
||||
-set(ENABLE_TAR OFF CACHE BOOL "")
|
||||
-set(ENABLE_CPIO OFF CACHE BOOL "")
|
||||
-set(ENABLE_CAT OFF CACHE BOOL "")
|
||||
-set(BUILD_SHARED_LIBS OFF CACHE BOOL "")
|
||||
-set(ARCHIVE_BUILD_STATIC_LIBS ON CACHE BOOL "")
|
||||
-set(ARCHIVE_BUILD_EXAMPLES OFF CACHE BOOL "")
|
||||
-set(ENABLE_ZSTD ON CACHE BOOL "")
|
||||
-set(POSIX_REGEX_LIB "libc" CACHE STRING "" FORCE)
|
||||
-set(LIBARCHIVE_VERSION "3.8.0")
|
||||
-
|
||||
-# Create a patch script to fix ZSTD detection in libarchive
|
||||
-set(LIBARCHIVE_PATCH_FILE "${CMAKE_CURRENT_BINARY_DIR}/libarchive_zstd_patch.cmake")
|
||||
-file(WRITE ${LIBARCHIVE_PATCH_FILE} "
|
||||
-# Read the original CMakeLists.txt
|
||||
-file(READ \"\${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt\" CONTENT)
|
||||
-
|
||||
-# Find the start and end of the ZSTD section
|
||||
-string(FIND \"\${CONTENT}\" \"IF(ZSTD_FOUND)\" ZSTD_START)
|
||||
-string(FIND \"\${CONTENT}\" \"MARK_AS_ADVANCED(CLEAR ZSTD_INCLUDE_DIR)\" ZSTD_END)
|
||||
-
|
||||
-if(ZSTD_START GREATER -1 AND ZSTD_END GREATER -1)
|
||||
- # Calculate positions
|
||||
- math(EXPR ZSTD_END \"\${ZSTD_END} + 40\") # Length of \"MARK_AS_ADVANCED(CLEAR ZSTD_INCLUDE_DIR)\"
|
||||
-
|
||||
- # Extract parts before and after the ZSTD section
|
||||
- string(SUBSTRING \"\${CONTENT}\" 0 \${ZSTD_START} BEFORE_ZSTD)
|
||||
- string(SUBSTRING \"\${CONTENT}\" \${ZSTD_END} -1 AFTER_ZSTD)
|
||||
-
|
||||
- # Create the new ZSTD section
|
||||
- set(NEW_ZSTD_SECTION \"IF(ZSTD_FOUND)
|
||||
- SET(HAVE_ZSTD_H 1)
|
||||
- INCLUDE_DIRECTORIES(\\\${ZSTD_INCLUDE_DIR})
|
||||
- LIST(APPEND ADDITIONAL_LIBS \\\${ZSTD_LIBRARY})
|
||||
-
|
||||
- # Check if ZSTD variables were provided externally (indicating static build)
|
||||
- get_property(ZSTD_LIB_IS_CACHE CACHE ZSTD_LIBRARY PROPERTY TYPE)
|
||||
- get_property(ZSTD_INC_IS_CACHE CACHE ZSTD_INCLUDE_DIR PROPERTY TYPE)
|
||||
- if(ZSTD_LIB_IS_CACHE AND ZSTD_INC_IS_CACHE)
|
||||
- # Skip function checks for static builds and assume all functions are available
|
||||
- message(STATUS \\\"Using provided ZSTD library: \\\${ZSTD_LIBRARY}\\\")
|
||||
- SET(HAVE_LIBZSTD 1)
|
||||
- SET(HAVE_ZSTD_compressStream 1)
|
||||
- SET(HAVE_ZSTD_minCLevel 1)
|
||||
- else()
|
||||
- # Original function checks for dynamic builds
|
||||
- CMAKE_PUSH_CHECK_STATE()
|
||||
- SET(CMAKE_REQUIRED_LIBRARIES \\\${ZSTD_LIBRARY})
|
||||
- SET(CMAKE_REQUIRED_INCLUDES \\\${ZSTD_INCLUDE_DIR})
|
||||
- CHECK_FUNCTION_EXISTS(ZSTD_decompressStream HAVE_LIBZSTD)
|
||||
- CHECK_FUNCTION_EXISTS(ZSTD_compressStream HAVE_ZSTD_compressStream)
|
||||
- CHECK_FUNCTION_EXISTS(ZSTD_minCLevel HAVE_ZSTD_minCLevel)
|
||||
- CMAKE_POP_CHECK_STATE()
|
||||
- endif()
|
||||
-ENDIF(ZSTD_FOUND)
|
||||
-MARK_AS_ADVANCED(CLEAR ZSTD_INCLUDE_DIR)\")
|
||||
-
|
||||
- # Combine the parts
|
||||
- set(NEW_CONTENT \"\${BEFORE_ZSTD}\${NEW_ZSTD_SECTION}\")
|
||||
-
|
||||
- # Write the modified content back
|
||||
- file(WRITE \"\${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt\" \"\${NEW_CONTENT}\${AFTER_ZSTD}\")
|
||||
- message(STATUS \"Patched libarchive CMakeLists.txt for static ZSTD support\")
|
||||
-else()
|
||||
- message(WARNING \"Could not find ZSTD section in libarchive CMakeLists.txt\")
|
||||
-endif()
|
||||
-")
|
||||
-
|
||||
-FetchContent_Declare(libarchive
|
||||
- GIT_REPOSITORY https://github.com/libarchive/libarchive.git
|
||||
- GIT_TAG v${LIBARCHIVE_VERSION}
|
||||
- PATCH_COMMAND ${CMAKE_COMMAND} -P ${LIBARCHIVE_PATCH_FILE}
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-FetchContent_GetProperties(libarchive)
|
||||
-if(NOT libarchive_POPULATED)
|
||||
- FetchContent_Populate(libarchive)
|
||||
- add_subdirectory(${libarchive_SOURCE_DIR} ${libarchive_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
-endif()
|
||||
-
|
||||
-# Ensure libarchive is built after zlib
|
||||
-if (TARGET archive_static AND TARGET ZLIB::ZLIB)
|
||||
- add_dependencies(archive_static ZLIB::ZLIB)
|
||||
-endif()
|
||||
-
|
||||
-unset(POSIX_REGEX_LIB)
|
||||
-unset(ENABLE_WERROR)
|
||||
-unset(ENABLE_INSTALL)
|
||||
-unset(ENABLE_TEST)
|
||||
-unset(ENABLE_CNG)
|
||||
-unset(ENABLE_MBEDTLS)
|
||||
-unset(ENABLE_NETTLE)
|
||||
-unset(ENABLE_OPENSSL)
|
||||
-unset(ENABLE_ZLIB)
|
||||
-unset(ENABLE_BZip2)
|
||||
-unset(ENABLE_LZ4)
|
||||
-unset(ENABLE_LZO)
|
||||
-unset(ENABLE_LIBB2)
|
||||
-unset(ENABLE_LIBXML2)
|
||||
-unset(ENABLE_EXPAT)
|
||||
-unset(ENABLE_PCREPOSIX)
|
||||
-unset(ENABLE_PCRE2POSIX)
|
||||
-unset(ENABLE_LIBGCC)
|
||||
-unset(ENABLE_TAR)
|
||||
-unset(ENABLE_CPIO)
|
||||
-unset(ENABLE_CAT)
|
||||
-unset(ARCHIVE_BUILD_SHARED_LIBS)
|
||||
-unset(ENABLE_ZSTD)
|
||||
-set(LibArchive_FOUND true CACHE BOOL "" FORCE)
|
||||
-set(LibArchive_LIBRARIES archive_static CACHE FILEPATH "" FORCE)
|
||||
-set(LibArchive_INCLUDE_DIR ${libarchive_SOURCE_DIR}/libarchive CACHE PATH "" FORCE)
|
||||
-set(LibArchive_INCLUDE_DIRS ${libarchive_SOURCE_DIR}/libarchive CACHE PATH "" FORCE)
|
||||
-
|
||||
-# Bundled libcurl
|
||||
-set(CURL_VERSION "8.13.0")
|
||||
-string(REPLACE "." "_" CURL_TAG ${CURL_VERSION})
|
||||
-FetchContent_Declare(curl
|
||||
- GIT_REPOSITORY https://github.com/curl/curl.git
|
||||
- GIT_TAG curl-${CURL_TAG}
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-set(BUILD_CURL_EXE OFF CACHE BOOL "" FORCE)
|
||||
-set(BUILD_LIBCURL_DOCS OFF CACHE BOOL "" FORCE)
|
||||
-set(BUILD_MISC_DOCS OFF CACHE BOOL "" FORCE)
|
||||
-set(ENABLE_CURL_MANUAL OFF CACHE BOOL "" FORCE)
|
||||
-set(BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
-set(CURL_USE_LIBPSL OFF CACHE BOOL "" FORCE)
|
||||
-set(CURL_USE_LIBSSH2 OFF CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_ALTSVC ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_KERBEROS_AUTH ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_DICT ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_DISABLE_FORM_API ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_FTP ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_GOPHER ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_IMAP ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_LDAPS ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_MQTT ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_NETRC ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_POP3 ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_RTSP ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_SMTP ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_TELNET ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_TFTP ON CACHE BOOL "" FORCE)
|
||||
-set(CURL_ZSTD ON)
|
||||
-set(CURL_ENABLE_EXPORT_TARGET OFF CACHE BOOL "" FORCE)
|
||||
-set(CURL_DISABLE_INSTALL ON)
|
||||
-if (APPLE)
|
||||
- # TODO: SecureTransport is a deprecated API in macOS, supporting
|
||||
- # only up to TLS v1.2. cURL has not implemented the replacement,
|
||||
- # Network.framework, and so we will need to select an alternative.
|
||||
- # Best recommendation: Libressl, as used by Apple in the curl binary
|
||||
- # on macOS.
|
||||
- set(CURL_USE_SECTRANSP ON)
|
||||
- set(CURL_DEFAULT_SSL_BACKEND "secure-transport")
|
||||
- set(USE_APPLE_IDN ON)
|
||||
-else()
|
||||
- if (WIN32)
|
||||
- set(CURL_USE_SCHANNEL ON)
|
||||
- set(CURL_DEFAULT_SSL_BACKEND "schannel")
|
||||
- else ()
|
||||
- set(CURL_USE_GNUTLS ON)
|
||||
- set(CURL_DEFAULT_SSL_BACKEND "gnutls")
|
||||
- endif(WIN32)
|
||||
-endif(APPLE)
|
||||
-
|
||||
-FetchContent_GetProperties(curl)
|
||||
-if(NOT curl_POPULATED)
|
||||
- FetchContent_Populate(curl)
|
||||
- add_subdirectory(${curl_SOURCE_DIR} ${curl_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
+ set(XZ_ENCODERS "")
|
||||
+ set(CREATE_LZMA_SYMLINKS OFF)
|
||||
+ set(CREATE_XZ_SYMLINKS OFF)
|
||||
+ add_subdirectory(dependencies/xz-5.8.1)
|
||||
+ set(LIBLZMA_FOUND true)
|
||||
+ set(LIBLZMA_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/xz-5.8.1/src/liblzma/api FORCE)
|
||||
+ set(LIBLZMA_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/xz-5.8.1/src/liblzma/api FORCE)
|
||||
+ set(LIBLZMA_LIBRARY liblzma)
|
||||
+ set(LIBLZMA_LIBRARIES liblzma)
|
||||
+
|
||||
+ # Bundled zstd
|
||||
+ set(ZSTD_BUILD_PROGRAMS OFF CACHE BOOL "" FORCE)
|
||||
+ set(ZSTD_BUILD_SHARED OFF CACHE BOOL "" FORCE)
|
||||
+ set(ZSTD_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||||
+ set(ZSTD_BUILD_DICTBUILDER OFF CACHE BOOL "" FORCE)
|
||||
+ add_subdirectory(dependencies/zstd-1.5.7/build/cmake)
|
||||
+ set(Zstd_FOUND true)
|
||||
+ set(ZSTD_FOUND true)
|
||||
+ set(Zstd_VERSION "1.5.7")
|
||||
+ set(ZSTD_VERSION "1.5.7")
|
||||
+ set(Zstd_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.7/lib)
|
||||
+ set(ZSTD_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.7/lib)
|
||||
+ set(Zstd_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.7/lib)
|
||||
+ set(ZSTD_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.7/lib)
|
||||
+ set(Zstd_LIBRARIES libzstd_static)
|
||||
+ set(ZSTD_LIBRARIES libzstd_static)
|
||||
+ set(ZSTD_LIBRARY libzstd_static)
|
||||
+
|
||||
+ # Bundled zlib
|
||||
+ set(ZLIB_BUILD_EXAMPLES OFF)
|
||||
+ set(SKIP_INSTALL_ALL ON)
|
||||
+ add_subdirectory(dependencies/zlib-1.4.1.1)
|
||||
+ set(ZLIB_FOUND TRUE)
|
||||
+ set(ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/zlib-1.4.1.1 CACHE PATH "zlib include dir")
|
||||
+ set(ZLIB_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/zlib-1.4.1.1 CACHE PATH "zlib include dir")
|
||||
+ set(ZLIB_LIBRARY zlibstatic)
|
||||
+ set(ZLIB_LIBRARIES zlibstatic)
|
||||
+
|
||||
+ # Bundled libarchive
|
||||
+ set(ARCHIVE_ENABLE_WERROR OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_INSTALL OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_TEST OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_CNG OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_MBEDTLS OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_NETTLE OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_OPENSSL OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_BZip2 OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_LZ4 OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_LZO OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_LIBB2 OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_LIBXML2 OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_EXPAT OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_PCREPOSIX OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_PCRE2POSIX OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_LIBGCC OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_TAR OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_CPIO OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_ENABLE_CAT OFF CACHE BOOL "")
|
||||
+ set(ARCHIVE_BUILD_SHARED_LIBS OFF CACHE BOOL "")
|
||||
+ add_subdirectory(dependencies/libarchive-3.7.7)
|
||||
+ set(LibArchive_FOUND true)
|
||||
+ set(LibArchive_LIBRARIES archive_static)
|
||||
+ set(LibArchive_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/libarchive-3.7.8/libarchive)
|
||||
+
|
||||
+ # Bundled libcurl
|
||||
+ set(CMAKE_CURL_INCLUDES)
|
||||
+ set(BUILD_CURL_EXE OFF CACHE BOOL "" FORCE)
|
||||
+ set(BUILD_LIBCURL_DOCS OFF CACHE BOOL "" FORCE)
|
||||
+ set(ENABLE_CURL_MANUAL OFF CACHE BOOL "" FORCE)
|
||||
+ set(CURL_USE_LIBPSL OFF)
|
||||
+ set(CURL_USE_LIBSSH2 OFF)
|
||||
+ set(CURL_DISABLE_ALTSVC ON)
|
||||
+ set(CURL_DISABLE_KERBEROS_AUTH ON)
|
||||
+ set(CURL_DISABLE_DICT ON)
|
||||
+ set(CURL_DISABLE_DISABLE_FORM_API ON)
|
||||
+ set(CURL_DISABLE_FTP ON)
|
||||
+ set(CURL_DISABLE_GOPHER ON)
|
||||
+ set(CURL_DISABLE_IMAP ON)
|
||||
+ set(CURL_DISABLE_LDAP ON)
|
||||
+ set(CURL_DISABLE_LDAPS ON)
|
||||
+ set(CURL_DISABLE_MQTT ON)
|
||||
+ set(CURL_DISABLE_NETRC ON)
|
||||
+ set(CURL_DISABLE_POP3 ON)
|
||||
+ set(CURL_DISABLE_RTSP ON)
|
||||
+ set(CURL_DISABLE_SMTP ON)
|
||||
+ set(CURL_DISABLE_TELNET ON)
|
||||
+ set(CURL_DISABLE_TFTP ON)
|
||||
+ set(CURL_ZSTD ON)
|
||||
+ set(CURL_ENABLE_EXPORT_TARGET OFF CACHE BOOL "" FORCE)
|
||||
+ set(CURL_DISABLE_INSTALL ON)
|
||||
+ if (APPLE)
|
||||
+ # TODO: SecureTransport is a deprecated API in macOS, supporting
|
||||
+ # only up to TLS v1.2. cURL has not implemented the replacement,
|
||||
+ # Network.framework, and so we will need to select an alternative.
|
||||
+ # Best recommendation: Libressl, as used by Apple in the curl binary
|
||||
+ # on macOS.
|
||||
+ set(CURL_USE_SECTRANSP ON)
|
||||
+ set(CURL_DEFAULT_SSL_BACKEND "secure-transport")
|
||||
+ set(USE_APPLE_IDN ON)
|
||||
+ else()
|
||||
+ if (WIN32)
|
||||
+ set(CURL_USE_SCHANNEL ON)
|
||||
+ set(CURL_DEFAULT_SSL_BACKEND "schannel")
|
||||
+ else ()
|
||||
+ set(CURL_USE_GNUTLS ON)
|
||||
+ set(CURL_DEFAULT_SSL_BACKEND "gnutls")
|
||||
+ endif(WIN32)
|
||||
+ endif(APPLE)
|
||||
+
|
||||
+ add_subdirectory(dependencies/curl-8.13.0)
|
||||
+ set(CURL_FOUND true)
|
||||
+ set(CURL_LIBRARIES libcurl_static)
|
||||
+ set(CURL_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/curl-8.13.0/include)
|
||||
+ set(CURL_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/curl-8.13.0/include)
|
||||
+
|
||||
+elseif (NOT ENABLE_VENDORING AND UNIX)
|
||||
+ # Find the libraries that were subject to vendoring in the system instead,
|
||||
+ # To keep the possibility of delivery via Linux distro packages
|
||||
+ find_package(ZLIB)
|
||||
+ if(ZLIB_FOUND)
|
||||
+ set(EXTRALIBS ${EXTRALIBS} ZLIB::ZLIB)
|
||||
+ endif()
|
||||
+ find_package(LibLZMA)
|
||||
+ if(LIBLZMA_FOUND)
|
||||
+ set(EXTRALIBS ${EXTRALIBS} LibLZMA::LibLZMA)
|
||||
+ endif()
|
||||
+ find_package(CURL 8.13.0 REQUIRED)
|
||||
+ find_package(LibArchive 3.7.8 REQUIRED)
|
||||
endif()
|
||||
|
||||
-unset(BUILD_CURL_EXE)
|
||||
-unset(BUILD_LIBCURL_DOCS)
|
||||
-unset(BUILD_MISC_DOCS)
|
||||
-unset(ENABLE_CURL_MANUAL)
|
||||
-unset(BUILD_EXAMPLES)
|
||||
-unset(CURL_USE_LIBPSL)
|
||||
-unset(CURL_USE_LIBSSH2)
|
||||
-unset(CURL_DISABLE_ALTSVC)
|
||||
-unset(CURL_DISABLE_KERBEROS_AUTH)
|
||||
-unset(CURL_DISABLE_DICT)
|
||||
-unset(CURL_DISABLE_DISABLE_FORM_API)
|
||||
-unset(CURL_DISABLE_FTP)
|
||||
-unset(CURL_DISABLE_GOPHER)
|
||||
-unset(CURL_DISABLE_IMAP)
|
||||
-unset(CURL_DISABLE_LDAP)
|
||||
-unset(CURL_DISABLE_LDAPS)
|
||||
-unset(CURL_DISABLE_MQTT)
|
||||
-unset(CURL_DISABLE_NETRC)
|
||||
-unset(CURL_DISABLE_POP3)
|
||||
-unset(CURL_DISABLE_RTSP)
|
||||
-unset(CURL_DISABLE_SMTP)
|
||||
-unset(CURL_DISABLE_TELNET)
|
||||
-unset(CURL_DISABLE_TFTP)
|
||||
-unset(CURL_ZSTD)
|
||||
-unset(CURL_ENABLE_EXPORT_TARGET)
|
||||
-unset(CURL_DISABLE_INSTALL)
|
||||
-unset(CURL_USE_SECTRANSP)
|
||||
-unset(CURL_DEFAULT_SSL_BACKEND)
|
||||
-unset(USE_APPLE_IDN)
|
||||
-unset(CURL_USE_SCHANNEL)
|
||||
-unset(CURL_USE_GNUTLS)
|
||||
-
|
||||
-set(CURL_FOUND true CACHE BOOL "" FORCE)
|
||||
-set(CURL_LIBRARIES libcurl_static CACHE FILEPATH "" FORCE)
|
||||
-set(CURL_INCLUDE_DIR ${curl_SOURCE_DIR}/include CACHE PATH "" FORCE)
|
||||
-set(CURL_INCLUDE_DIRS ${curl_SOURCE_DIR}/include CACHE PATH "" FORCE)
|
||||
-
|
||||
# Adding headers explicity so they are displayed in Qt Creator
|
||||
set(HEADERS config.h imagewriter.h networkaccessmanagerfactory.h nan.h drivelistitem.h drivelistmodel.h drivelistmodelpollthread.h driveformatthread.h powersaveblocker.h cli.h
|
||||
devicewrapper.h devicewrapperblockcacheentry.h devicewrapperpartition.h devicewrapperstructs.h devicewrapperfatpartition.h wlancredentials.h
|
||||
@@ -928,11 +675,6 @@ else()
|
||||
if (NOT LSBLK)
|
||||
message(FATAL_ERROR "Unable to locate lsblk (used for disk enumeration)")
|
||||
endif()
|
||||
-
|
||||
- execute_process(COMMAND "${LSBLK}" "--json" OUTPUT_QUIET RESULT_VARIABLE ret)
|
||||
- if (ret EQUAL "1")
|
||||
- message(FATAL_ERROR "util-linux package too old. lsblk does not support --json (used for disk enumeration)")
|
||||
- endif()
|
||||
endif()
|
||||
|
||||
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
|
||||
@@ -0,0 +1,94 @@
|
||||
diff --git c/src/CMakeLists.txt w/src/CMakeLists.txt
|
||||
index f9e020ce..c5f71914 100644
|
||||
--- c/src/CMakeLists.txt
|
||||
+++ w/src/CMakeLists.txt
|
||||
@@ -68,6 +68,10 @@ set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
include(FetchContent)
|
||||
|
||||
+find_package(LibLZMA)
|
||||
+if(LIBLZMA_FOUND)
|
||||
+ set(EXTRALIBS ${EXTRALIBS} LibLZMA::LibLZMA)
|
||||
+else()
|
||||
# Bundled liblzma
|
||||
set(LIBLZMA_VERSION "5.8.1")
|
||||
FetchContent_Declare(xz
|
||||
@@ -114,7 +118,10 @@ set(LIBLZMA_LIBRARIES ${xz_BINARY_DIR}/liblzma.a CACHE FILEPATH "" FORCE)
|
||||
set(LIBLZMA_HAS_AUTO_DECODER true CACHE BOOL "" FORCE)
|
||||
set(LIBLZMA_HAS_EASY_ENCODER true CACHE BOOL "" FORCE)
|
||||
set(LIBLZMA_HAS_LZMA_PRESET true CACHE BOOL "" FORCE)
|
||||
+endif()
|
||||
|
||||
+find_package(zstd ${ZSTD_VERSION})
|
||||
+if(NOT zstd_FOUND)
|
||||
# Bundled zstd
|
||||
set(ZSTD_VERSION "1.5.7")
|
||||
FetchContent_Declare(zstd
|
||||
@@ -147,32 +154,12 @@ set(ZSTD_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-src/lib CACHE PATH
|
||||
set(Zstd_LIBRARIES libzstd_static CACHE FILEPATH "" FORCE)
|
||||
set(ZSTD_LIBRARIES libzstd_static CACHE FILEPATH "" FORCE)
|
||||
set(ZSTD_LIBRARY ${CMAKE_CURRENT_BINARY_DIR}/_deps/zstd-build/lib/libzstd.a CACHE FILEPATH "" FORCE)
|
||||
-
|
||||
-# Remote nghttp2
|
||||
-set(NGHTTP2_VERSION "1.66.0")
|
||||
-FetchContent_Declare(nghttp2
|
||||
- GIT_REPOSITORY https://github.com/nghttp2/nghttp2.git
|
||||
- GIT_TAG v${NGHTTP2_VERSION}
|
||||
- ${USE_OVERRIDE_FIND_PACKAGE}
|
||||
-)
|
||||
-set(BUILD_EXAMPLES OFF)
|
||||
-set(ENABLE_LIB_ONLY ON)
|
||||
-set(ENABLE_FAILMALLOC OFF)
|
||||
-FetchContent_GetProperties(nghttp2)
|
||||
-if(NOT nghttp2_POPULATED)
|
||||
- FetchContent_Populate(nghttp2)
|
||||
- add_subdirectory(${nghttp2_SOURCE_DIR} ${nghttp2_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
-unset(ENABLE_LIB_ONLY)
|
||||
-unset(ENABLE_FAILMALLOC)
|
||||
-unset(BUILD_EXAMPLES)
|
||||
-set(NGHTTP2_LIBRARIES nghttp2_static CACHE FILEPATH "" FORCE)
|
||||
-set(NGHTTP2_LIBRARY nghttp2_static CACHE FILEPATH "" FORCE)
|
||||
-set(NGHTTP2_INCLUDE_DIR ${nghttp2_SOURCE_DIR}/lib CACHE PATH "" FORCE)
|
||||
-set(NGHTTP2_INCLUDE_DIRS ${nghttp2_SOURCE_DIR}/lib CACHE PATH "" FORCE)
|
||||
-set(NGHTTP2_FOUND true CACHE BOOL "" FORCE)
|
||||
-
|
||||
|
||||
+find_package(ZLIB)
|
||||
+if(ZLIB_FOUND)
|
||||
+ set(EXTRALIBS ${EXTRALIBS} ZLIB::ZLIB)
|
||||
+else()
|
||||
# Bundled zlib
|
||||
set(ZLIB_VERSION "1.4.1.1")
|
||||
set(ZLIB_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
@@ -236,7 +223,10 @@ endif()
|
||||
message(STATUS "ZLIB_LIBRARY set to: ${ZLIB_LIBRARY}")
|
||||
message(STATUS "ZLIB_LIBRARIES set to: ${ZLIB_LIBRARIES}")
|
||||
message(STATUS "ZLIB_INCLUDE_DIRS set to: ${ZLIB_INCLUDE_DIRS}")
|
||||
+endif()
|
||||
|
||||
+find_package(LibArchive)
|
||||
+if(NOT LibArchive_FOUND)
|
||||
# Bundled libarchive
|
||||
|
||||
set(ENABLE_WERROR OFF CACHE BOOL "")
|
||||
@@ -368,8 +358,11 @@ set(LibArchive_FOUND true CACHE BOOL "" FORCE)
|
||||
set(LibArchive_LIBRARIES archive_static CACHE FILEPATH "" FORCE)
|
||||
set(LibArchive_INCLUDE_DIR ${libarchive_SOURCE_DIR}/libarchive CACHE PATH "" FORCE)
|
||||
set(LibArchive_INCLUDE_DIRS ${libarchive_SOURCE_DIR}/libarchive CACHE PATH "" FORCE)
|
||||
+endif()
|
||||
|
||||
# Bundled libcurl
|
||||
+find_package(CURL)
|
||||
+if(NOT CURL_FOUND)
|
||||
set(CURL_VERSION "8.14.1")
|
||||
string(REPLACE "." "_" CURL_TAG ${CURL_VERSION})
|
||||
FetchContent_Declare(curl
|
||||
@@ -516,6 +509,7 @@ set(CURL_FOUND true CACHE BOOL "" FORCE)
|
||||
set(CURL_LIBRARIES libcurl_static CACHE FILEPATH "" FORCE)
|
||||
set(CURL_INCLUDE_DIR ${curl_SOURCE_DIR}/include CACHE PATH "" FORCE)
|
||||
set(CURL_INCLUDE_DIRS ${curl_SOURCE_DIR}/include CACHE PATH "" FORCE)
|
||||
+endif()
|
||||
|
||||
# Adding headers explicity so they are displayed in Qt Creator
|
||||
set(HEADERS config.h imagewriter.h networkaccessmanagerfactory.h nan.h drivelistitem.h drivelistmodel.h drivelistmodelpollthread.h driveformatthread.h powersaveblocker.h cli.h
|
||||
@@ -7,8 +7,8 @@
|
||||
cpp-utilities,
|
||||
mp4v2,
|
||||
libid3tag,
|
||||
libsForQt5,
|
||||
qt5,
|
||||
kdePackages,
|
||||
qt6,
|
||||
tagparser,
|
||||
}:
|
||||
|
||||
@@ -26,21 +26,26 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
cmake
|
||||
qt5.wrapQtAppsHook
|
||||
qt6.wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
mp4v2
|
||||
libid3tag
|
||||
qt5.qtbase
|
||||
qt5.qttools
|
||||
qt5.qtx11extras
|
||||
qt5.qtwebengine
|
||||
cpp-utilities
|
||||
libsForQt5.qtutilities
|
||||
kdePackages.qtutilities
|
||||
qt6.qtbase
|
||||
qt6.qttools
|
||||
qt6.qtwebengine
|
||||
tagparser
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DQT_PACKAGE_PREFIX=Qt6"
|
||||
"-DQt6_DIR=${qt6.qtbase}/lib/cmake/Qt6"
|
||||
"-DQt6WebEngineWidgets_DIR=${qt6.qtwebengine}/lib/cmake/Qt6WebEngineWidgets"
|
||||
];
|
||||
|
||||
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
mkdir -p $out/Applications
|
||||
mv $out/bin/*.app $out/Applications
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
pkg-config,
|
||||
writableTmpDirAsHomeHook,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "tukai";
|
||||
version = "0.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hlsxx";
|
||||
repo = "tukai";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-YJtna4NIk9mmwymepFSZB8viUSPDU4XouRE5GCujSmk=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-1V1DrewPGDJWmOoYdtK1HS/t83zFac/tgatfDTKxAmA=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Terminal-based touch typing application";
|
||||
homepage = "https://github.com/hlsxx/tukai";
|
||||
changelog = "https://github.com/hlsxx/tukai/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
rein
|
||||
];
|
||||
mainProgram = "tukai";
|
||||
};
|
||||
})
|
||||
+63
-96
@@ -1,55 +1,17 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
buildPythonApplication,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
# python requirements
|
||||
beautifulsoup4,
|
||||
boto3,
|
||||
faker,
|
||||
fonttools,
|
||||
h5py,
|
||||
importlib-metadata,
|
||||
lxml,
|
||||
matplotlib,
|
||||
numpy,
|
||||
odfpy,
|
||||
openpyxl,
|
||||
pandas,
|
||||
pdfminer-six,
|
||||
praw,
|
||||
psutil,
|
||||
psycopg2,
|
||||
pyarrow,
|
||||
pyshp,
|
||||
pypng,
|
||||
msgpack,
|
||||
brotli,
|
||||
python-dateutil,
|
||||
pyyaml,
|
||||
requests,
|
||||
seaborn,
|
||||
setuptools,
|
||||
sh,
|
||||
tabulate,
|
||||
urllib3,
|
||||
vobject,
|
||||
wcwidth,
|
||||
xlrd,
|
||||
xlwt,
|
||||
zstandard,
|
||||
zulip,
|
||||
# other
|
||||
gitMinimal,
|
||||
withPcap ? true,
|
||||
dpkt,
|
||||
dnslib,
|
||||
withXclip ? stdenv.hostPlatform.isLinux,
|
||||
xclip,
|
||||
testers,
|
||||
visidata,
|
||||
stdenv,
|
||||
}:
|
||||
buildPythonApplication rec {
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "visidata";
|
||||
version = "3.2";
|
||||
format = "setuptools";
|
||||
@@ -61,64 +23,69 @@ buildPythonApplication rec {
|
||||
hash = "sha256-kOg9OypWNGStNYFctPIwzVa1CsZBySY2IpA3eDrS7eY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
# from visidata/requirements.txt
|
||||
# packages not (yet) present in nixpkgs are commented
|
||||
python-dateutil
|
||||
pandas
|
||||
requests
|
||||
lxml
|
||||
openpyxl
|
||||
xlrd
|
||||
xlwt
|
||||
h5py
|
||||
psycopg2
|
||||
boto3
|
||||
pyshp
|
||||
#mapbox-vector-tile
|
||||
pypng
|
||||
#pyconll
|
||||
msgpack
|
||||
brotli
|
||||
#fecfile
|
||||
fonttools
|
||||
#sas7bdat
|
||||
#xport
|
||||
#savReaderWriter
|
||||
pyyaml
|
||||
#namestand
|
||||
#datapackage
|
||||
pdfminer-six
|
||||
#tabula
|
||||
vobject
|
||||
tabulate
|
||||
wcwidth
|
||||
zstandard
|
||||
odfpy
|
||||
urllib3
|
||||
pyarrow
|
||||
seaborn
|
||||
matplotlib
|
||||
sh
|
||||
psutil
|
||||
numpy
|
||||
propagatedBuildInputs =
|
||||
with python3Packages;
|
||||
[
|
||||
# from visidata/requirements.txt
|
||||
# packages not (yet) present in nixpkgs are commented
|
||||
python-dateutil
|
||||
pandas
|
||||
requests
|
||||
lxml
|
||||
openpyxl
|
||||
xlrd
|
||||
xlwt
|
||||
h5py
|
||||
psycopg2
|
||||
boto3
|
||||
pyshp
|
||||
#mapbox-vector-tile
|
||||
pypng
|
||||
#pyconll
|
||||
msgpack
|
||||
brotli
|
||||
#fecfile
|
||||
fonttools
|
||||
#sas7bdat
|
||||
#xport
|
||||
#savReaderWriter
|
||||
pyyaml
|
||||
#namestand
|
||||
#datapackage
|
||||
pdfminer-six
|
||||
#tabula
|
||||
vobject
|
||||
tabulate
|
||||
wcwidth
|
||||
zstandard
|
||||
odfpy
|
||||
urllib3
|
||||
pyarrow
|
||||
seaborn
|
||||
matplotlib
|
||||
sh
|
||||
psutil
|
||||
numpy
|
||||
|
||||
#requests_cache
|
||||
beautifulsoup4
|
||||
#requests_cache
|
||||
beautifulsoup4
|
||||
|
||||
faker
|
||||
praw
|
||||
zulip
|
||||
#pyairtable
|
||||
faker
|
||||
praw
|
||||
zulip
|
||||
#pyairtable
|
||||
|
||||
setuptools
|
||||
importlib-metadata
|
||||
]
|
||||
++ lib.optionals withPcap [
|
||||
dpkt
|
||||
dnslib
|
||||
]
|
||||
++ lib.optional withXclip xclip;
|
||||
setuptools
|
||||
importlib-metadata
|
||||
]
|
||||
++ lib.optionals withPcap (
|
||||
with python3Packages;
|
||||
[
|
||||
dpkt
|
||||
dnslib
|
||||
]
|
||||
)
|
||||
++ lib.optional withXclip xclip;
|
||||
|
||||
nativeCheckInputs = [
|
||||
gitMinimal
|
||||
@@ -26,25 +26,21 @@ let
|
||||
|
||||
pname = "wire-desktop";
|
||||
|
||||
versions = builtins.fromJSON (builtins.readFile ./versions.json);
|
||||
|
||||
version =
|
||||
let
|
||||
x86_64-darwin = "3.39.5211";
|
||||
in
|
||||
{
|
||||
inherit x86_64-darwin;
|
||||
aarch64-darwin = x86_64-darwin;
|
||||
x86_64-linux = "3.39.3653";
|
||||
x86_64-darwin = versions.macos.version;
|
||||
aarch64-darwin = versions.macos.version;
|
||||
x86_64-linux = versions.linux.version;
|
||||
}
|
||||
.${system} or throwSystem;
|
||||
|
||||
hash =
|
||||
let
|
||||
x86_64-darwin = "sha256-k6CIqHt67AFL70zdK0/91aQcpbb00OIggk5TF7y1IOY=";
|
||||
in
|
||||
{
|
||||
inherit x86_64-darwin;
|
||||
aarch64-darwin = x86_64-darwin;
|
||||
x86_64-linux = "sha256-BbY+7fGAWW5CR/z4GeoBl5aOewCRuWzQjpQX4x1rzls=";
|
||||
x86_64-darwin = versions.macos.hash;
|
||||
aarch64-darwin = versions.macos.hash;
|
||||
x86_64-linux = versions.linux.hash;
|
||||
}
|
||||
.${system} or throwSystem;
|
||||
|
||||
@@ -75,8 +71,21 @@ let
|
||||
hydraPlatforms = [ ];
|
||||
};
|
||||
|
||||
passthru.updateScript = {
|
||||
command = [
|
||||
./update.sh
|
||||
./.
|
||||
];
|
||||
supportedFeatures = [ "commit" ];
|
||||
};
|
||||
|
||||
linux = stdenv.mkDerivation rec {
|
||||
inherit pname version meta;
|
||||
inherit
|
||||
pname
|
||||
version
|
||||
meta
|
||||
passthru
|
||||
;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://wire-app.wire.com/linux/debian/pool/main/Wire-${version}_amd64.deb";
|
||||
@@ -151,7 +160,12 @@ let
|
||||
};
|
||||
|
||||
darwin = stdenv.mkDerivation {
|
||||
inherit pname version meta;
|
||||
inherit
|
||||
pname
|
||||
version
|
||||
meta
|
||||
passthru
|
||||
;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/wireapp/wire-desktop/releases/download/macos%2F${version}/Wire.pkg";
|
||||
|
||||
Executable
+89
@@ -0,0 +1,89 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl jq
|
||||
|
||||
set -e
|
||||
|
||||
cd $1
|
||||
|
||||
releases=$(curl -L \
|
||||
-H "Accept: application/vnd.github+json" \
|
||||
-H "X-GitHub-Api-Version: 2022-11-28" \
|
||||
"https://api.github.com/repos/wireapp/wire-desktop/releases" \
|
||||
)
|
||||
|
||||
latest=$(jq --argjson suffix '{ "linux": ".deb", "macos": ".pkg" }' \
|
||||
--slurpfile versions versions.json '
|
||||
def platform_latest(platform):
|
||||
map(select(.tag_name | startswith(platform)))
|
||||
| max_by(.tag_name)
|
||||
| { version: .tag_name | ltrimstr(platform + "/")
|
||||
, url: .assets.[]
|
||||
| .browser_download_url
|
||||
| select(endswith($suffix.[platform]))
|
||||
};
|
||||
|
||||
. as $releases
|
||||
| $versions.[] as $old
|
||||
| $old
|
||||
| with_entries( .key as $key
|
||||
| { key: $key, value: $releases | platform_latest($key) }
|
||||
| select(.value.version != $old.[$key].version)
|
||||
)
|
||||
' <<< "$releases"
|
||||
)
|
||||
|
||||
urlHashes=$(
|
||||
printf '{ '
|
||||
function entries () {
|
||||
local sep=''
|
||||
for url in $(jq --raw-output '.[].url' <<< "$latest"); do
|
||||
hash=$(nix-hash --to-sri --type sha256 $(nix-prefetch-url $url))
|
||||
if [ -z "$hash" ]; then
|
||||
printf 'Failed to retrieve hash for %s\n' "$url" 2>&1
|
||||
fi
|
||||
printf '%s"%s": "%s"\n' "$sep" "$url" "$hash"
|
||||
sep=', '
|
||||
done
|
||||
}
|
||||
entries
|
||||
printf '}'
|
||||
)
|
||||
|
||||
commit=$(jq --arg versionJSON "$(printf '%s/versions.json' "$1")" \
|
||||
--slurpfile versions versions.json '
|
||||
$versions.[] as $old
|
||||
| to_entries
|
||||
| map("\(.key) \($old.[.key].version) -> \(.value.version)")
|
||||
| join(", ")
|
||||
| [ if . == ""
|
||||
then empty
|
||||
else { attrPath: "wire-desktop"
|
||||
, oldVersion: "A"
|
||||
, newVersion: "B"
|
||||
, files: [ $versionJSON ]
|
||||
, commitMessage: "wire-desktop: \(.)"
|
||||
}
|
||||
end
|
||||
]
|
||||
' <<< "$latest"
|
||||
)
|
||||
|
||||
tempfile=$(mktemp)
|
||||
|
||||
updated=$(jq --argjson hashes "$urlHashes" --slurpfile versions versions.json '
|
||||
$versions.[] as $old
|
||||
| $old + map_values(with_entries(if .key == "url"
|
||||
then { key: "hash"
|
||||
, value: $hashes.[.value]
|
||||
}
|
||||
else .
|
||||
end
|
||||
)
|
||||
)
|
||||
' <<< "$latest" > $tempfile
|
||||
)
|
||||
|
||||
mv $tempfile versions.json
|
||||
|
||||
printf '%s' "$commit"
|
||||
exit 0
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"linux": {
|
||||
"version": "3.40.3718",
|
||||
"hash": "sha256-1jBhF+Rnys8C3DaVbCKHDiylox2WG1qRvwnDbQrp1Mk="
|
||||
},
|
||||
"macos": {
|
||||
"version": "3.40.5285",
|
||||
"hash": "sha256-pcWB3irdPyDj55dWmNyc+oThVGgHtIu//EAk1k/56is="
|
||||
}
|
||||
}
|
||||
@@ -1,29 +1,39 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchFromGitHub,
|
||||
autoreconfHook,
|
||||
intltool,
|
||||
pkg-config,
|
||||
libX11,
|
||||
gtk2,
|
||||
gtk3,
|
||||
libxslt,
|
||||
docbook_xsl,
|
||||
wrapGAppsHook3,
|
||||
withGtk3 ? true,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lxappearance";
|
||||
version = "0.6.3";
|
||||
version = "0.6.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/lxde/LXAppearance/${pname}-${version}.tar.xz";
|
||||
sha256 = "0f4bjaamfxxdr9civvy55pa6vv9dx1hjs522gjbbgx7yp1cdh8kj";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "lxappearance";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-t5P3JYGZzhTaJ3s23r6yrAQoFcCV5uteHh67sWY1KrI=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
intltool
|
||||
wrapGAppsHook3
|
||||
autoreconfHook
|
||||
libxslt
|
||||
docbook_xsl
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -35,14 +45,16 @@ stdenv.mkDerivation rec {
|
||||
./lxappearance-0.6.3-xdg.system.data.dirs.patch
|
||||
];
|
||||
|
||||
env.XSLTPROC = lib.getExe' libxslt "xsltproc";
|
||||
|
||||
configureFlags = lib.optional withGtk3 "--enable-gtk3";
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Lightweight program for configuring the theme and fonts of gtk applications";
|
||||
mainProgram = "lxappearance";
|
||||
homepage = "https://lxde.org/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ romildo ];
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ romildo ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,20 +1,30 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchFromGitHub,
|
||||
autoreconfHook,
|
||||
intltool,
|
||||
pkg-config,
|
||||
glib,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lxmenu-data";
|
||||
version = "0.1.5";
|
||||
version = "0.1.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/lxde/${pname}-${version}.tar.xz";
|
||||
sha256 = "9fe3218d2ef50b91190162f4f923d6524c364849f87bcda8b4ed8eb59b80bab8";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "lxmenu-data";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-5QdQ+7nzj7wDrfdt4GT8VW4+sHgZdE7h3cReY2pmcak=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ intltool ];
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
intltool
|
||||
pkg-config
|
||||
glib
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://lxde.org/";
|
||||
@@ -22,4 +32,4 @@ stdenv.mkDerivation rec {
|
||||
description = "Freedesktop.org desktop menus for LXDE";
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchpatch2,
|
||||
fetchFromGitHub,
|
||||
autoreconfHook,
|
||||
pkg-config,
|
||||
gettext,
|
||||
m4,
|
||||
@@ -32,29 +32,26 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lxpanel";
|
||||
version = "0.10.1";
|
||||
version = "0.11.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/lxde/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
|
||||
sha256 = "sha256-HjGPV9fja2HCOlBNA9JDDHja0ULBgERRBh8bPqVEHug=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "lxpanel";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-jpe5AfRkyTVKQ9biOJiWKv0OVqP8gRCzfhSLDjnrEPc=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# fix build with gcc14
|
||||
# https://github.com/lxde/lxpanel/commit/0853b0fc981285ebd2ac52f8dfc2a09b1090748c
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/lxde/lxpanel/commit/0853b0fc981285ebd2ac52f8dfc2a09b1090748c.patch?full_index=1";
|
||||
hash = "sha256-lj4CWdiUQhEc9J8UNKcP7/tmsGnPjA5pwXAok5YFW4M=";
|
||||
})
|
||||
];
|
||||
enableParallelBuilding = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
gettext
|
||||
m4
|
||||
intltool
|
||||
libxmlxx
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
(if withGtk3 then keybinder3 else keybinder)
|
||||
(if withGtk3 then gtk3 else gtk2)
|
||||
@@ -74,13 +71,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
]
|
||||
++ lib.optional supportAlsa alsa-lib;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/Makefile.in \
|
||||
--replace "@PACKAGE_CFLAGS@" "@PACKAGE_CFLAGS@ -I${gdk-pixbuf-xlib.dev}/include/gdk-pixbuf-2.0"
|
||||
substituteInPlace plugins/Makefile.in \
|
||||
--replace "@PACKAGE_CFLAGS@" "@PACKAGE_CFLAGS@ -I${gdk-pixbuf-xlib.dev}/include/gdk-pixbuf-2.0"
|
||||
'';
|
||||
|
||||
configureFlags = lib.optional withGtk3 "--enable-gtk3";
|
||||
|
||||
meta = {
|
||||
@@ -89,5 +79,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = [ lib.maintainers.ryneeverett ];
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "lxpanel";
|
||||
};
|
||||
})
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchFromGitHub,
|
||||
pkg-config,
|
||||
intltool,
|
||||
gtk2,
|
||||
@@ -9,35 +9,53 @@
|
||||
xrandr,
|
||||
withGtk3 ? false,
|
||||
gtk3,
|
||||
autoreconfHook,
|
||||
libxslt,
|
||||
docbook_xsl,
|
||||
docbook_xml_dtd_412,
|
||||
libxml2,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lxrandr";
|
||||
version = "0.3.2";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/lxde/${pname}-${version}.tar.xz";
|
||||
sha256 = "04n3vgh3ix12p8jfs4w0dyfq3anbjy33h7g53wbbqqc0f74xyplb";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "lxrandr";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-EGUnvV1FqQUJkjGwxgVecXOohAu8Qa8Prgk6xZfJBe4=";
|
||||
};
|
||||
|
||||
configureFlags = lib.optional withGtk3 "--enable-gtk3";
|
||||
configureFlags = [
|
||||
"--enable-man"
|
||||
]
|
||||
++ lib.optional withGtk3 "--enable-gtk3";
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
intltool
|
||||
libxslt
|
||||
libxml2
|
||||
docbook_xml_dtd_412
|
||||
docbook_xsl
|
||||
];
|
||||
|
||||
patches = [ ./respect-xml-catalog-files-var.patch ];
|
||||
|
||||
buildInputs = [
|
||||
libX11
|
||||
xrandr
|
||||
(if withGtk3 then gtk3 else gtk2)
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Standard screen manager of LXDE";
|
||||
mainProgram = "lxrandr";
|
||||
homepage = "https://lxde.org/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ rawkode ];
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = with lib.maintainers; [ rawkode ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
diff --git a/acinclude.m4 b/acinclude.m4
|
||||
index be626c5..b449b1b 100644
|
||||
--- a/acinclude.m4
|
||||
+++ b/acinclude.m4
|
||||
@@ -40,8 +40,8 @@ AC_DEFUN([JH_CHECK_XML_CATALOG],
|
||||
[
|
||||
AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl
|
||||
AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog])
|
||||
- if $jh_found_xmlcatalog && \
|
||||
- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then
|
||||
+ # empty argument forces libxml to use XML_CATALOG_FILES variable
|
||||
+ if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then
|
||||
AC_MSG_RESULT([found])
|
||||
ifelse([$3],,,[$3
|
||||
])dnl
|
||||
@@ -1,10 +1,8 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchpatch,
|
||||
fetchFromGitHub,
|
||||
autoconf,
|
||||
automake,
|
||||
autoreconfHook,
|
||||
docbook_xml_dtd_412,
|
||||
docbook_xsl,
|
||||
intltool,
|
||||
@@ -18,39 +16,26 @@
|
||||
vala,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lxsession";
|
||||
version = "0.5.5";
|
||||
version = "0.5.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "lxsession";
|
||||
rev = version;
|
||||
sha256 = "17sqsx57ymrimm5jfmcyrp7b0nzi41bcvpxsqckmwbhl19g6c17d";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-3RnRF4oMCtZbIraHVqEPnkviAkELq7uYqyHY0uCf/lU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./xmlcatalog_patch.patch
|
||||
|
||||
# lxsession compilation is broken upstream as of GCC 14
|
||||
# https://sourceforge.net/p/lxde/bugs/973/
|
||||
(fetchpatch {
|
||||
name = "0001-Fix-build-on-GCC-14.patch";
|
||||
url = "https://sourceforge.net/p/lxde/bugs/973/attachment/0001-Fix-build-on-GCC-14.patch";
|
||||
hash = "sha256-lxF3HZy5uLK7Cfu8W1A03syZf7OWXpHiU2Fk+xBl39g=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
docbook_xml_dtd_412
|
||||
docbook_xsl
|
||||
autoreconfHook
|
||||
intltool
|
||||
libxml2
|
||||
libxslt
|
||||
pkg-config
|
||||
wrapGAppsHook3
|
||||
docbook_xml_dtd_412
|
||||
docbook_xsl
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -64,16 +49,20 @@ stdenv.mkDerivation rec {
|
||||
"--enable-man"
|
||||
"--disable-buildin-clipboard"
|
||||
"--disable-buildin-polkit"
|
||||
"--with-xml-catalog=${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml"
|
||||
];
|
||||
|
||||
preConfigure = "./autogen.sh";
|
||||
postPatch = ''
|
||||
mkdir -p m4
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
patches = [ ./repect-xml-catalog-file-var.patch ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://wiki.lxde.org/en/LXSession";
|
||||
description = "Classic LXDE session manager";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = [ maintainers.shamilton ];
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = [ lib.maintainers.shamilton ];
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "lxsession";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
--- a/acinclude.m4 2025-08-24 00:39:08.807857027 +0200
|
||||
+++ b/acinclude.m4 2025-08-24 00:49:23.043780737 +0200
|
||||
@@ -40,8 +40,8 @@
|
||||
[
|
||||
AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl
|
||||
AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog])
|
||||
- if $jh_found_xmlcatalog && \
|
||||
- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then
|
||||
+ # empty argument forces libxml to use XML_CATALOG_FILES variable
|
||||
+ if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then
|
||||
AC_MSG_RESULT([found])
|
||||
ifelse([$3],,,[$3
|
||||
])dnl
|
||||
@@ -1,23 +0,0 @@
|
||||
diff --color -ur a/configure.ac b/configure.ac
|
||||
--- a/configure.ac 2021-01-18 12:39:19.556844678 +0100
|
||||
+++ b/configure.ac 2021-01-18 17:26:47.989410501 +0100
|
||||
@@ -167,18 +167,7 @@
|
||||
AM_GLIB_GNU_GETTEXT
|
||||
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
|
||||
|
||||
-if test x"$enable_man" = x"yes"; then
|
||||
- AC_PATH_PROG([XSLTPROC], [xsltproc])
|
||||
- if test -z "$XSLTPROC"; then
|
||||
- enable_man=no
|
||||
- fi
|
||||
-
|
||||
- dnl check for DocBook DTD and stylesheets in the local catalog.
|
||||
- JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
|
||||
- [DocBook XML DTD V4.1.2], [], enable_man=no)
|
||||
- JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
|
||||
- [DocBook XSL Stylesheets >= 1.70.1], [], enable_man=no)
|
||||
-fi
|
||||
+AC_PATH_PROG([XSLTPROC], [xsltproc])
|
||||
|
||||
AM_CONDITIONAL(ENABLE_REGENERATE_MAN, test "x$enable_man" != "xno")
|
||||
|
||||
@@ -10,14 +10,14 @@
|
||||
gitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lxtask";
|
||||
version = "0.1.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxde";
|
||||
repo = "lxtask";
|
||||
rev = version;
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-BI50jV/17jGX91rcmg98+gkoy35oNpdSSaVDLyagbIc=";
|
||||
};
|
||||
|
||||
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://lxde.sourceforge.net/";
|
||||
description = "Lightweight and desktop independent task manager";
|
||||
mainProgram = "lxtask";
|
||||
@@ -47,8 +47,8 @@ stdenv.mkDerivation rec {
|
||||
Desktop Environment, it's totally desktop independent and only
|
||||
requires pure GTK.
|
||||
'';
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.romildo ];
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ lib.maintainers.romildo ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
stdenv,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
|
||||
# build-system
|
||||
setuptools,
|
||||
@@ -40,6 +41,15 @@ buildPythonPackage rec {
|
||||
hash = "sha256-IAEh+rB26Zqv7j5g2YIRZRCAtFbBngoh+w8Z4e2bY+M=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Remove delete event_loop fixture to fix test with pytest-asyncio 1.x
|
||||
(fetchpatch {
|
||||
name = "remove-delete-event-loop-fixture.patch";
|
||||
url = "https://github.com/opensearch-project/opensearch-py/commit/2f9eeaad3f7bd38518b23a59659ccf02fff19577.patch";
|
||||
hash = "sha256-ljg9GiXPOokrIRS+gF+W9DnZ71AzH8WmLeb3G7rLeK8=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@@ -83,7 +93,7 @@ buildPythonPackage rec {
|
||||
"test_basicauth_in_request_session"
|
||||
"test_callable_in_request_session"
|
||||
]
|
||||
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86) [
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
# Flaky tests: OSError: [Errno 48] Address already in use
|
||||
"test_redirect_failure_when_allow_redirect_false"
|
||||
"test_redirect_success_when_allow_redirect_true"
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
aiohttp,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
loguru,
|
||||
numpy,
|
||||
setuptools,
|
||||
unasync,
|
||||
urllib3,
|
||||
writableTmpDirAsHomeHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyosoenergyapi";
|
||||
version = "1.2.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "osohotwateriot";
|
||||
repo = "apyosohotwaterapi";
|
||||
tag = version;
|
||||
hash = "sha256-hpbmiSOLawKVSh7BGV70bRi45HCDKmdxEEhCOdJuIww=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
unasync
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
aiohttp
|
||||
loguru
|
||||
numpy
|
||||
urllib3
|
||||
];
|
||||
|
||||
# Module has no tests
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "pyosoenergyapi" ];
|
||||
|
||||
meta = {
|
||||
description = "Python library to interface with the OSO Energy API";
|
||||
homepage = "https://github.com/osohotwateriot/apyosohotwaterapi";
|
||||
changelog = "https://github.com/osohotwateriot/apyosohotwaterapi/releases/tag/${version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.jamiemagee ];
|
||||
};
|
||||
}
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "rubicon-objc";
|
||||
version = "0.5.1";
|
||||
version = "0.5.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -19,13 +19,12 @@ buildPythonPackage rec {
|
||||
owner = "beeware";
|
||||
repo = "rubicon-objc";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-HnPp7VUrcTfkl5XdXYasydMqxhp7eb7r5RW/7yRWmko=";
|
||||
hash = "sha256-ahlsY4eU9n+BRexE4wNVXMcgSiGW7pU25zJif9lGTUs=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "setuptools==75.7.0" "setuptools" \
|
||||
--replace-fail "setuptools_scm==8.1.0" "setuptools_scm"
|
||||
sed -i 's/"setuptools==.*"/"setuptools"/' pyproject.toml
|
||||
sed -i 's/"setuptools_scm==.*"/"setuptools_scm"/' pyproject.toml
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
tree-sitter-glimmer = lib.importJSON ./tree-sitter-glimmer.json;
|
||||
tree-sitter-glsl = lib.importJSON ./tree-sitter-glsl.json;
|
||||
tree-sitter-go = lib.importJSON ./tree-sitter-go.json;
|
||||
tree-sitter-go-template = lib.importJSON ./tree-sitter-go-template.json;
|
||||
tree-sitter-godot-resource = lib.importJSON ./tree-sitter-godot-resource.json;
|
||||
tree-sitter-gomod = lib.importJSON ./tree-sitter-gomod.json;
|
||||
tree-sitter-gowork = lib.importJSON ./tree-sitter-gowork.json;
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"url": "https://github.com/ngalaiko/tree-sitter-go-template",
|
||||
"rev": "5f19a36bb1eebb30454e277b222b278ceafed0dd",
|
||||
"date": "2025-01-29T18:19:22Z",
|
||||
"path": "/nix/store/lcgn1hzzsf5jhliy7454lxx7phkmrjfb-tree-sitter-go-template",
|
||||
"sha256": "1nm9ybwb4if6g7cs911i6msb3q2f1plbl70k2y4icbxk2p57k5ka",
|
||||
"hash": "sha256-apZ5yhWzLxaJFxMcuugNTuCxdDUxhKTZecZFsvjyqdo=",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"fetchTags": false,
|
||||
"leaveDotGit": false,
|
||||
"rootDir": ""
|
||||
}
|
||||
@@ -344,6 +344,10 @@ let
|
||||
orga = "blessanabraham";
|
||||
repo = "tree-sitter-gemini";
|
||||
};
|
||||
"tree-sitter-go-template" = {
|
||||
orga = "ngalaiko";
|
||||
repo = "tree-sitter-go-template";
|
||||
};
|
||||
"tree-sitter-godot-resource" = {
|
||||
orga = "prestonknopp";
|
||||
repo = "tree-sitter-godot-resource";
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
fetchurl,
|
||||
autoPatchelfHook,
|
||||
dbus,
|
||||
directx-shader-compiler,
|
||||
fontconfig,
|
||||
freetype,
|
||||
glib,
|
||||
@@ -18,21 +19,23 @@
|
||||
libxcb,
|
||||
libXi,
|
||||
libxkbcommon,
|
||||
libxml2_13,
|
||||
ncurses,
|
||||
wayland,
|
||||
xcbutil,
|
||||
zlib,
|
||||
}:
|
||||
|
||||
let
|
||||
buildNum = "2024-09-26-1411";
|
||||
buildNum = "2025-06-12-1681";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "rgp";
|
||||
version = "2.3";
|
||||
version = "2.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gpuopen.com/download/radeon-developer-tool-suite/RadeonDeveloperToolSuite-${buildNum}.tgz";
|
||||
hash = "sha256-mgIFDStgat4E+67TaSLrcwgWTu7zLf7Nkn6zBlgeVcQ=";
|
||||
hash = "sha256-e7IxoaZi77klrihRO6vDh1o2Clj5lNsVlzQ7btgLsu4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -42,6 +45,7 @@ stdenv.mkDerivation {
|
||||
|
||||
buildInputs = [
|
||||
dbus
|
||||
directx-shader-compiler
|
||||
fontconfig
|
||||
freetype
|
||||
glib
|
||||
@@ -55,8 +59,10 @@ stdenv.mkDerivation {
|
||||
libxcb
|
||||
libXi
|
||||
libxkbcommon
|
||||
libxml2_13
|
||||
ncurses
|
||||
wayland
|
||||
xcbutil
|
||||
zlib
|
||||
];
|
||||
|
||||
|
||||
@@ -0,0 +1,128 @@
|
||||
{
|
||||
buildPackages,
|
||||
fetchFromGitHub,
|
||||
lib,
|
||||
openssl,
|
||||
pkgsCross,
|
||||
stdenv,
|
||||
|
||||
# Warning: this blob (hdcp.bin) runs on the main CPU (not the GPU) at
|
||||
# privilege level EL3, which is above both the kernel and the
|
||||
# hypervisor.
|
||||
#
|
||||
# This parameter applies only to platforms which are believed to use
|
||||
# hdcp.bin. On all other platforms, or if unfreeIncludeHDCPBlob=false,
|
||||
# hdcp.bin will be deleted before building.
|
||||
unfreeIncludeHDCPBlob ? true,
|
||||
}:
|
||||
|
||||
lib.extendMkDerivation {
|
||||
constructDrv = stdenv.mkDerivation;
|
||||
|
||||
excludeDrvArgNames = [ "extraMeta" ];
|
||||
|
||||
extendDrvArgs =
|
||||
finalAttrs:
|
||||
{
|
||||
filesToInstall,
|
||||
installDir ? "$out",
|
||||
platform ? null,
|
||||
platformCanUseHDCPBlob ? false, # set this to true if the platform is able to use hdcp.bin
|
||||
...
|
||||
}@args:
|
||||
|
||||
# delete hdcp.bin if either: the platform is thought to
|
||||
# not need it or unfreeIncludeHDCPBlob is false
|
||||
let
|
||||
deleteHDCPBlobBeforeBuild = !platformCanUseHDCPBlob || !unfreeIncludeHDCPBlob;
|
||||
in
|
||||
{
|
||||
pname = "arm-trusted-firmware${lib.optionalString (platform != null) "-${platform}"}";
|
||||
version = args.version or "2.13.0";
|
||||
|
||||
src =
|
||||
args.src or (fetchFromGitHub {
|
||||
owner = "ARM-software";
|
||||
repo = "arm-trusted-firmware";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-rxm5RCjT/MyMCTxiEC8jQeFMrCggrb2DRbs/qDPXb20=";
|
||||
});
|
||||
|
||||
patches =
|
||||
lib.optionals deleteHDCPBlobBeforeBuild [
|
||||
# this is a rebased version of https://gitlab.com/vicencb/kevinboot/-/blob/master/atf.patch
|
||||
./remove-hdcp-blob.patch
|
||||
]
|
||||
++ args.patches or [ ];
|
||||
|
||||
postPatch =
|
||||
lib.optionalString deleteHDCPBlobBeforeBuild ''
|
||||
rm plat/rockchip/rk3399/drivers/dp/hdcp.bin
|
||||
''
|
||||
+ args.postPatch or "";
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ] ++ args.depsBuildBuild or [ ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgsCross.arm-embedded.stdenv.cc # For Cortex-M0 firmware in RK3399
|
||||
openssl # For fiptool
|
||||
]
|
||||
++ args.nativeBuildInputs or [ ];
|
||||
|
||||
# Make the new toolchain guessing (from 2.11+) happy
|
||||
# https://github.com/ARM-software/arm-trusted-firmware/blob/4ec2948fe3f65dba2f19e691e702f7de2949179c/make_helpers/toolchains/rk3399-m0.mk#L21-L22
|
||||
rk3399-m0-oc = "${pkgsCross.arm-embedded.stdenv.cc.targetPrefix}objcopy";
|
||||
|
||||
buildInputs = [ openssl ] ++ args.buildInputs or [ ];
|
||||
|
||||
makeFlags = [
|
||||
"HOSTCC=$(CC_FOR_BUILD)"
|
||||
"M0_CROSS_COMPILE=${pkgsCross.arm-embedded.stdenv.cc.targetPrefix}"
|
||||
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
|
||||
# Make the new toolchain guessing (from 2.11+) happy
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
"LD=${stdenv.cc.targetPrefix}cc"
|
||||
"AS=${stdenv.cc.targetPrefix}cc"
|
||||
"OC=${stdenv.cc.targetPrefix}objcopy"
|
||||
"OD=${stdenv.cc.targetPrefix}objdump"
|
||||
# Passing OpenSSL path according to docs/design/trusted-board-boot-build.rst
|
||||
"OPENSSL_DIR=${openssl}"
|
||||
]
|
||||
++ (lib.optional (platform != null) "PLAT=${platform}")
|
||||
++ args.makeFlags or [ ]
|
||||
++ (lib.warnIf (args ? extraMakeFlags)
|
||||
"buildArmTrustedFirmware now accepts `makeFlags`, please switch from using `extraMakeFlags` to `makeFlags`"
|
||||
args.extraMakeFlags or [ ]
|
||||
);
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p ${installDir}
|
||||
cp ${lib.concatStringsSep " " filesToInstall} ${installDir}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
hardeningDisable = [ "all" ];
|
||||
dontStrip = true;
|
||||
|
||||
# breaks secondary CPU bringup on at least RK3588, maybe others
|
||||
env.NIX_CFLAGS_COMPILE = "-fomit-frame-pointer";
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/ARM-software/arm-trusted-firmware";
|
||||
description = "Reference implementation of secure world software for ARMv8-A";
|
||||
license = [
|
||||
lib.licenses.bsd3
|
||||
]
|
||||
++ lib.optionals (!deleteHDCPBlobBeforeBuild) [ lib.licenses.unfreeRedistributable ];
|
||||
maintainers = [ lib.maintainers.lopsided98 ];
|
||||
}
|
||||
// (args.meta or { })
|
||||
// (lib.warnIf (args ? extraMeta)
|
||||
"buildArmTrustedFirmware now accepts `meta`, please switch from using `extraMeta` to `meta`"
|
||||
args.extraMeta or { }
|
||||
);
|
||||
};
|
||||
}
|
||||
@@ -1,134 +1,8 @@
|
||||
{ buildArmTrustedFirmware, stdenv }:
|
||||
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchFromGitLab,
|
||||
openssl,
|
||||
pkgsCross,
|
||||
buildPackages,
|
||||
|
||||
# Warning: this blob (hdcp.bin) runs on the main CPU (not the GPU) at
|
||||
# privilege level EL3, which is above both the kernel and the
|
||||
# hypervisor.
|
||||
#
|
||||
# This parameter applies only to platforms which are believed to use
|
||||
# hdcp.bin. On all other platforms, or if unfreeIncludeHDCPBlob=false,
|
||||
# hdcp.bin will be deleted before building.
|
||||
unfreeIncludeHDCPBlob ? true,
|
||||
}:
|
||||
|
||||
let
|
||||
buildArmTrustedFirmware = lib.makeOverridable (
|
||||
{
|
||||
filesToInstall,
|
||||
installDir ? "$out",
|
||||
platform ? null,
|
||||
platformCanUseHDCPBlob ? false, # set this to true if the platform is able to use hdcp.bin
|
||||
extraMakeFlags ? [ ],
|
||||
extraMeta ? { },
|
||||
...
|
||||
}@args:
|
||||
|
||||
# delete hdcp.bin if either: the platform is thought to
|
||||
# not need it or unfreeIncludeHDCPBlob is false
|
||||
let
|
||||
deleteHDCPBlobBeforeBuild = !platformCanUseHDCPBlob || !unfreeIncludeHDCPBlob;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (
|
||||
rec {
|
||||
|
||||
pname = "arm-trusted-firmware${lib.optionalString (platform != null) "-${platform}"}";
|
||||
version = "2.13.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ARM-software";
|
||||
repo = "arm-trusted-firmware";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-rxm5RCjT/MyMCTxiEC8jQeFMrCggrb2DRbs/qDPXb20=";
|
||||
};
|
||||
|
||||
patches = lib.optionals deleteHDCPBlobBeforeBuild [
|
||||
# this is a rebased version of https://gitlab.com/vicencb/kevinboot/-/blob/master/atf.patch
|
||||
./remove-hdcp-blob.patch
|
||||
];
|
||||
|
||||
postPatch = lib.optionalString deleteHDCPBlobBeforeBuild ''
|
||||
rm plat/rockchip/rk3399/drivers/dp/hdcp.bin
|
||||
'';
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgsCross.arm-embedded.stdenv.cc # For Cortex-M0 firmware in RK3399
|
||||
openssl # For fiptool
|
||||
];
|
||||
|
||||
# Make the new toolchain guessing (from 2.11+) happy
|
||||
# https://github.com/ARM-software/arm-trusted-firmware/blob/4ec2948fe3f65dba2f19e691e702f7de2949179c/make_helpers/toolchains/rk3399-m0.mk#L21-L22
|
||||
rk3399-m0-oc = "${pkgsCross.arm-embedded.stdenv.cc.targetPrefix}objcopy";
|
||||
|
||||
buildInputs = [ openssl ];
|
||||
|
||||
makeFlags = [
|
||||
"HOSTCC=$(CC_FOR_BUILD)"
|
||||
"M0_CROSS_COMPILE=${pkgsCross.arm-embedded.stdenv.cc.targetPrefix}"
|
||||
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
|
||||
# Make the new toolchain guessing (from 2.11+) happy
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
"LD=${stdenv.cc.targetPrefix}cc"
|
||||
"AS=${stdenv.cc.targetPrefix}cc"
|
||||
"OC=${stdenv.cc.targetPrefix}objcopy"
|
||||
"OD=${stdenv.cc.targetPrefix}objdump"
|
||||
# Passing OpenSSL path according to docs/design/trusted-board-boot-build.rst
|
||||
"OPENSSL_DIR=${openssl}"
|
||||
]
|
||||
++ (lib.optional (platform != null) "PLAT=${platform}")
|
||||
++ extraMakeFlags;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p ${installDir}
|
||||
cp ${lib.concatStringsSep " " filesToInstall} ${installDir}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
hardeningDisable = [ "all" ];
|
||||
dontStrip = true;
|
||||
|
||||
# breaks secondary CPU bringup on at least RK3588, maybe others
|
||||
env.NIX_CFLAGS_COMPILE = "-fomit-frame-pointer";
|
||||
|
||||
meta =
|
||||
with lib;
|
||||
{
|
||||
homepage = "https://github.com/ARM-software/arm-trusted-firmware";
|
||||
description = "Reference implementation of secure world software for ARMv8-A";
|
||||
license = [
|
||||
licenses.bsd3
|
||||
]
|
||||
++ lib.optionals (!deleteHDCPBlobBeforeBuild) [ licenses.unfreeRedistributable ];
|
||||
maintainers = with maintainers; [ lopsided98 ];
|
||||
}
|
||||
// extraMeta;
|
||||
}
|
||||
// builtins.removeAttrs args [ "extraMeta" ]
|
||||
)
|
||||
);
|
||||
|
||||
in
|
||||
{
|
||||
inherit buildArmTrustedFirmware;
|
||||
|
||||
armTrustedFirmwareTools = buildArmTrustedFirmware {
|
||||
# Normally, arm-trusted-firmware builds the build tools for buildPlatform
|
||||
# using CC_FOR_BUILD (or as it calls it HOSTCC). Since want to build them
|
||||
# for the hostPlatform here, we trick it by overriding the HOSTCC setting
|
||||
# and, to be safe, remove CC_FOR_BUILD from the environment.
|
||||
depsBuildBuild = [ ];
|
||||
extraMakeFlags = [
|
||||
makeFlags = [
|
||||
"HOSTCC=${stdenv.cc.targetPrefix}gcc"
|
||||
"fiptool"
|
||||
"certtool"
|
||||
@@ -143,67 +17,67 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
armTrustedFirmwareAllwinner = buildArmTrustedFirmware rec {
|
||||
armTrustedFirmwareAllwinner = buildArmTrustedFirmware (finalAttrs: {
|
||||
platform = "sun50i_a64";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31.bin" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31.bin" ];
|
||||
});
|
||||
|
||||
armTrustedFirmwareAllwinnerH616 = buildArmTrustedFirmware rec {
|
||||
armTrustedFirmwareAllwinnerH616 = buildArmTrustedFirmware (finalAttrs: {
|
||||
platform = "sun50i_h616";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31.bin" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31.bin" ];
|
||||
});
|
||||
|
||||
armTrustedFirmwareAllwinnerH6 = buildArmTrustedFirmware rec {
|
||||
armTrustedFirmwareAllwinnerH6 = buildArmTrustedFirmware (finalAttrs: {
|
||||
platform = "sun50i_h6";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31.bin" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31.bin" ];
|
||||
});
|
||||
|
||||
armTrustedFirmwareQemu = buildArmTrustedFirmware rec {
|
||||
armTrustedFirmwareQemu = buildArmTrustedFirmware (finalAttrs: {
|
||||
platform = "qemu";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [
|
||||
"build/${platform}/release/bl1.bin"
|
||||
"build/${platform}/release/bl2.bin"
|
||||
"build/${platform}/release/bl31.bin"
|
||||
"build/${finalAttrs.platform}/release/bl1.bin"
|
||||
"build/${finalAttrs.platform}/release/bl2.bin"
|
||||
"build/${finalAttrs.platform}/release/bl31.bin"
|
||||
];
|
||||
};
|
||||
});
|
||||
|
||||
armTrustedFirmwareRK3328 = buildArmTrustedFirmware rec {
|
||||
extraMakeFlags = [ "bl31" ];
|
||||
armTrustedFirmwareRK3328 = buildArmTrustedFirmware (finalAttrs: {
|
||||
makeFlags = [ "bl31" ];
|
||||
platform = "rk3328";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31/bl31.elf" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31/bl31.elf" ];
|
||||
});
|
||||
|
||||
armTrustedFirmwareRK3399 = buildArmTrustedFirmware rec {
|
||||
extraMakeFlags = [ "bl31" ];
|
||||
armTrustedFirmwareRK3399 = buildArmTrustedFirmware (finalAttrs: {
|
||||
makeFlags = [ "bl31" ];
|
||||
platform = "rk3399";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31/bl31.elf" ];
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31/bl31.elf" ];
|
||||
platformCanUseHDCPBlob = true;
|
||||
};
|
||||
});
|
||||
|
||||
armTrustedFirmwareRK3568 = buildArmTrustedFirmware rec {
|
||||
extraMakeFlags = [ "bl31" ];
|
||||
armTrustedFirmwareRK3568 = buildArmTrustedFirmware (finalAttrs: {
|
||||
makeFlags = [ "bl31" ];
|
||||
platform = "rk3568";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31/bl31.elf" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31/bl31.elf" ];
|
||||
});
|
||||
|
||||
armTrustedFirmwareRK3588 = buildArmTrustedFirmware rec {
|
||||
extraMakeFlags = [ "bl31" ];
|
||||
armTrustedFirmwareRK3588 = buildArmTrustedFirmware (finalAttrs: {
|
||||
makeFlags = [ "bl31" ];
|
||||
platform = "rk3588";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31/bl31.elf" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31/bl31.elf" ];
|
||||
});
|
||||
|
||||
armTrustedFirmwareS905 = buildArmTrustedFirmware rec {
|
||||
extraMakeFlags = [ "bl31" ];
|
||||
armTrustedFirmwareS905 = buildArmTrustedFirmware (finalAttrs: {
|
||||
makeFlags = [ "bl31" ];
|
||||
platform = "gxbb";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${platform}/release/bl31.bin" ];
|
||||
};
|
||||
meta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "build/${finalAttrs.platform}/release/bl31.bin" ];
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Version=@version@
|
||||
Encoding=UTF-8
|
||||
Name=@description@
|
||||
Type=Application
|
||||
Exec=@exec@
|
||||
X-KDE-autostart-phase=1
|
||||
GenericName[en_US]=
|
||||
@@ -43,13 +43,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "prl-tools";
|
||||
version = "20.4.1-55996";
|
||||
version = "26.0.0-57238";
|
||||
|
||||
# We download the full distribution to extract prl-tools-lin.iso from
|
||||
# => ${dmg}/Parallels\ Desktop.app/Contents/Resources/Tools/prl-tools-lin.iso
|
||||
src = fetchurl {
|
||||
url = "https://download.parallels.com/desktop/v${lib.versions.major finalAttrs.version}/${finalAttrs.version}/ParallelsDesktop-${finalAttrs.version}.dmg";
|
||||
hash = "sha256-CEyP8YZPLzjVAAjOaUqwQ4Ilzk9ybAtTTZUGZbSRrKQ=";
|
||||
hash = "sha256-UuQGW1qYLGVLqAzApPKBqfOZdS23mCPsID4D0HATHNw=";
|
||||
};
|
||||
|
||||
hardeningDisable = [
|
||||
@@ -118,9 +118,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
( # kernel modules
|
||||
cd kmods
|
||||
mkdir -p $out/lib/modules/${kernelVersion}/extra
|
||||
cp prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze/prl_fs_freeze.ko $out/lib/modules/${kernelVersion}/extra
|
||||
cp prl_tg/Toolgate/Guest/Linux/prl_tg/prl_tg.ko $out/lib/modules/${kernelVersion}/extra
|
||||
${lib.optionalString stdenv.hostPlatform.isAarch64 "cp prl_notifier/Installation/lnx/prl_notifier/prl_notifier.ko $out/lib/modules/${kernelVersion}/extra"}
|
||||
)
|
||||
|
||||
( # tools
|
||||
|
||||
@@ -6,23 +6,36 @@ set -eu -o pipefail
|
||||
nixpkgs="$(git rev-parse --show-toplevel)"
|
||||
path="$nixpkgs/pkgs/os-specific/linux/prl-tools/default.nix"
|
||||
|
||||
# Currently this script only supports Parallels 20
|
||||
# Currently this script only supports Parallels 26
|
||||
# Please change the knowledge base url after each major release
|
||||
kb_url="https://kb.parallels.com/en/130212"
|
||||
kb_url="https://kb.parallels.com/en/131014"
|
||||
content="$(curl -s "$kb_url")"
|
||||
|
||||
# Parse HTML content and retrieve og:description for header metadata
|
||||
description=$(echo "$content" | xmllint --recover --html --xpath 'string(//meta[@property="og:description"]/@content)' - 2>/dev/null)
|
||||
regex='[^0-9]+([0-9]+\.[0-9]+\.[0-9]+)[^\(]+\(([0-9]+)\)'
|
||||
if [[ $description =~ $regex ]]; then
|
||||
version="${BASH_REMATCH[1]}-${BASH_REMATCH[2]}"
|
||||
echo "Found latest version: $version"
|
||||
else
|
||||
echo "Failed to extract version from $kb_url" >&2
|
||||
echo "Retrived description: $description" >&2
|
||||
exit 1
|
||||
# Extract all version/build pairs and select the latest (by semver, then build)
|
||||
# Prefer the article content; fallback to whole body text
|
||||
article_text="$(echo "$content" | xmllint --recover --html --xpath 'string(//div[@id="article-content"])' - 2>/dev/null || true)"
|
||||
if [[ -z "${article_text:-}" ]]; then
|
||||
article_text="$(echo "$content" | xmllint --recover --html --xpath 'string(//body)' - 2>/dev/null || echo "$content")"
|
||||
fi
|
||||
|
||||
# Find all "X.Y.Z (BUILD)" occurrences like "20.4.1 (55996)"
|
||||
mapfile -t candidates < <(echo "$article_text" \
|
||||
| grep -Eo '[0-9]+\.[0-9]+\.[0-9]+[[:space:]]*\(([0-9]+)\)' \
|
||||
| sed -E 's/([0-9]+\.[0-9]+\.[0-9]+)[[:space:]]*\(([0-9]+)\)/\1 \2/' \
|
||||
| sort -u)
|
||||
|
||||
if [[ ${#candidates[@]} -eq 0 ]]; then
|
||||
echo "Failed to extract any version from $kb_url" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Sort by version then build and pick the highest
|
||||
latest_pair="$(printf '%s\n' "${candidates[@]}" | sort -V -k1,1 -k2,2n | tail -n1)"
|
||||
latest_ver="$(awk '{print $1}' <<< "$latest_pair")"
|
||||
latest_build="$(awk '{print $2}' <<< "$latest_pair")"
|
||||
version="${latest_ver}-${latest_build}"
|
||||
echo "Found latest version: $version"
|
||||
|
||||
# Extract and compare current version
|
||||
old_version="$(grep -o 'version = ".*"' "$path" | awk -F'"' '{print $2}')"
|
||||
if [[ "$old_version" > "$version" || "$old_version" == "$version" ]]; then
|
||||
@@ -31,9 +44,9 @@ if [[ "$old_version" > "$version" || "$old_version" == "$version" ]]; then
|
||||
fi
|
||||
|
||||
# Update version and hash
|
||||
major_version=$(echo $version | cut -d. -f1)
|
||||
major_version="$(echo "$version" | cut -d. -f1)"
|
||||
dmg_url="https://download.parallels.com/desktop/v${major_version}/${version}/ParallelsDesktop-${version}.dmg"
|
||||
sha256="$(nix store prefetch-file $dmg_url --json | jq -r '.hash')"
|
||||
sha256="$(nix store prefetch-file "$dmg_url" --json | jq -r '.hash')"
|
||||
sed -i -e "s,version = \"$old_version\",version = \"$version\"," \
|
||||
-e "s,hash = \"sha256-.*\",hash = \"$sha256\"," "$path"
|
||||
|
||||
|
||||
@@ -4319,7 +4319,8 @@
|
||||
];
|
||||
"osoenergy" =
|
||||
ps: with ps; [
|
||||
]; # missing inputs: pyosoenergyapi
|
||||
pyosoenergyapi
|
||||
];
|
||||
"osramlightify" =
|
||||
ps: with ps; [
|
||||
lightify
|
||||
@@ -7530,6 +7531,7 @@
|
||||
"opnsense"
|
||||
"opower"
|
||||
"oralb"
|
||||
"osoenergy"
|
||||
"otbr"
|
||||
"otp"
|
||||
"ourgroceries"
|
||||
|
||||
@@ -4381,8 +4381,6 @@ with pkgs;
|
||||
|
||||
vimwiki-markdown = python3Packages.callPackage ../tools/misc/vimwiki-markdown { };
|
||||
|
||||
visidata = python3Packages.callPackage ../applications/misc/visidata { };
|
||||
|
||||
vkbasalt = callPackage ../tools/graphics/vkbasalt {
|
||||
vkbasalt32 = pkgsi686Linux.vkbasalt;
|
||||
};
|
||||
@@ -10328,9 +10326,12 @@ with pkgs;
|
||||
fftw = fftwFloat;
|
||||
};
|
||||
|
||||
buildArmTrustedFirmware =
|
||||
callPackage ../misc/arm-trusted-firmware/build-arm-trusted-firmware.nix
|
||||
{ };
|
||||
|
||||
arm-trusted-firmware = callPackage ../misc/arm-trusted-firmware { };
|
||||
inherit (arm-trusted-firmware)
|
||||
buildArmTrustedFirmware
|
||||
armTrustedFirmwareTools
|
||||
armTrustedFirmwareAllwinner
|
||||
armTrustedFirmwareAllwinnerH616
|
||||
|
||||
@@ -13590,6 +13590,8 @@ self: super: with self; {
|
||||
|
||||
pyosmium = callPackage ../development/python-modules/pyosmium { inherit (pkgs) lz4; };
|
||||
|
||||
pyosoenergyapi = callPackage ../development/python-modules/pyosoenergyapi { };
|
||||
|
||||
pyosohotwaterapi = callPackage ../development/python-modules/pyosohotwaterapi { };
|
||||
|
||||
pyotb = callPackage ../development/python-modules/pyotb { };
|
||||
@@ -18533,6 +18535,7 @@ self: super: with self; {
|
||||
lib.filterAttrs (
|
||||
name: value:
|
||||
!(builtins.elem name [
|
||||
"tree-sitter-go-template"
|
||||
"tree-sitter-sql"
|
||||
"tree-sitter-templ"
|
||||
])
|
||||
|
||||
Reference in New Issue
Block a user