dragnpkgs/lib/git-source/default.nix

15 lines
404 B
Nix
Raw Normal View History

2024-06-05 04:34:50 +00:00
{ lib }: { root, subdir ? null }:
2024-05-14 23:04:14 +00:00
let
fs = lib.fileset;
sourceFiles = fs.difference
(fs.gitTracked root)
(fs.fileFilter (file: file.hasExt "nix") root);
2024-06-05 04:34:50 +00:00
finalSourceFiles =
if subdir == null then
sourceFiles
else
fs.intersection sourceFiles subdir;
finalRoot = if subdir == null then root else subdir;
2024-05-14 23:04:14 +00:00
in
2024-06-05 04:38:33 +00:00
fs.toSource { root = finalRoot; fileset = finalSourceFiles; }