Tweaks and added some software

This commit is contained in:
Erwin Boskma 2021-11-25 17:18:13 +01:00
parent 0014961d3a
commit cd151029a1
Signed by: erwin
GPG key ID: 270B20D17394F7E5
15 changed files with 257 additions and 44 deletions

1
.gitignore vendored
View file

@ -1,2 +1,3 @@
/backup /backup
/result /result
/secrets.nix

View file

@ -17,7 +17,9 @@
}, },
"ha-now-playing": { "ha-now-playing": {
"inputs": { "inputs": {
"naersk": "naersk", "naersk": [
"naersk"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
@ -26,11 +28,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1637523547, "lastModified": 1637673792,
"narHash": "sha256-VIx3kWZ4VSub49NDbZiC0eWNY76+WeEnyHnT/FBPD/4=", "narHash": "sha256-4hbA3vng5ARWu/rg62h73bwSJeKeIYOLcTvZ2gxazhk=",
"ref": "main", "ref": "main",
"rev": "43de89c70b9f68b7d1e50ac303b29e3cfed9f280", "rev": "dd2894089ae666bdd7fabacf5b7de4dc24ecc7cb",
"revCount": 6, "revCount": 8,
"type": "git", "type": "git",
"url": "ssh://git@git.datarift.nl/erwin/ha-now-playing.git" "url": "ssh://git@git.datarift.nl/erwin/ha-now-playing.git"
}, },
@ -47,11 +49,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1637649415, "lastModified": 1637721183,
"narHash": "sha256-I82k+kFZuezkWPJypuqhqhChFbzDR4jpn89e2Fm2zRo=", "narHash": "sha256-4CAKKxrt9l0Hbl57Uypo7ol93Ko+5Yn+7xWWCMUyHQ8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "c4c761ba554bc674b0d5a89eb7e9f7a488a8859d", "rev": "df931a59a5864d6ff0c5d83598135816f8593647",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -63,21 +65,19 @@
"naersk": { "naersk": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"ha-now-playing",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1636968630, "lastModified": 1637576998,
"narHash": "sha256-/C8OVV8mo9M9MgQprHo4A5bM9waWMsw6PI4hb4DnGaA=", "narHash": "sha256-bGQ66hh4Dl78T9bd1pqdp6fprHMCkrkeKqED6sDUYqo=",
"owner": "nmattia", "owner": "nix-community",
"repo": "naersk", "repo": "naersk",
"rev": "55c4c0288ea3f115b5dd73af88052c4712994746", "rev": "b043f2447a4a761529254f4983cacd94b034a122",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nmattia", "owner": "nix-community",
"ref": "master",
"repo": "naersk", "repo": "naersk",
"type": "github" "type": "github"
} }
@ -100,6 +100,9 @@
}, },
"pamedia": { "pamedia": {
"inputs": { "inputs": {
"naersk": [
"naersk"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
@ -108,18 +111,18 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1637438696, "lastModified": 1637764576,
"narHash": "sha256-nhr2A0tf5afMIceNkHcRVO1lSeI/Ocu9RBfOXDuvaVE=", "narHash": "sha256-IJmGfpuapLcozRpGtgVooSrMVW9vROCLce49Wb9nboo=",
"ref": "main", "ref": "main",
"rev": "e9005826c19acc110c0e613a4cdba5d95715af61", "rev": "7c037fef4cdc5933a70694d8c743b5439c8354ea",
"revCount": 5, "revCount": 4,
"type": "git", "type": "git",
"url": "ssh://git@git.datarift.nl/erwin/pamedia.git" "url": "ssh://git@git.datarift.nl/erwin/pamedia-rs.git"
}, },
"original": { "original": {
"ref": "main", "ref": "main",
"type": "git", "type": "git",
"url": "ssh://git@git.datarift.nl/erwin/pamedia.git" "url": "ssh://git@git.datarift.nl/erwin/pamedia-rs.git"
} }
}, },
"root": { "root": {
@ -127,6 +130,7 @@
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"ha-now-playing": "ha-now-playing", "ha-now-playing": "ha-now-playing",
"home-manager": "home-manager", "home-manager": "home-manager",
"naersk": "naersk",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"pamedia": "pamedia" "pamedia": "pamedia"
} }

View file

@ -11,16 +11,23 @@
flake-utils.url = "github:numtide/flake-utils"; flake-utils.url = "github:numtide/flake-utils";
naersk = {
url = "github:nix-community/naersk";
inputs.nixpkgs.follows = "nixpkgs";
};
ha-now-playing = { ha-now-playing = {
url = "git+ssh://git@git.datarift.nl/erwin/ha-now-playing.git?ref=main"; url = "git+ssh://git@git.datarift.nl/erwin/ha-now-playing.git?ref=main";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
inputs.utils.follows = "flake-utils"; inputs.utils.follows = "flake-utils";
inputs.naersk.follows = "naersk";
}; };
pamedia = { pamedia = {
url = "git+ssh://git@git.datarift.nl/erwin/pamedia.git?ref=main"; url = "git+ssh://git@git.datarift.nl/erwin/pamedia-rs.git?ref=main";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
inputs.utils.follows = "flake-utils"; inputs.utils.follows = "flake-utils";
inputs.naersk.follows = "naersk";
}; };
}; };
@ -34,16 +41,16 @@
modules = [ modules = [
{ _module.args.inputs = inputs; } { _module.args.inputs = inputs; }
{ _module.args.self-overlay = self.overlay; } { _module.args.self-overlay = self.overlay; }
{ _module.args.pamedia-overlay = pamedia.overlay; } { _module.args.pamedia-overlay = pamedia.overlays.${system}; }
{ _module.args.ha-now-playing-overlay = ha-now-playing.overlay; } { _module.args.ha-now-playing-overlay = ha-now-playing.overlays.${system}; }
({ ... }: { ({ ... }: {
imports = builtins.attrValues self.nixosModules ++ [ imports = builtins.attrValues self.nixosModules ++ [
{ {
nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; nix.nixPath = [ "nixpkgs=${nixpkgs}" ];
nixpkgs.overlays = [ nixpkgs.overlays = [
self.overlay self.overlay
ha-now-playing.overlay ha-now-playing.overlays.${system}
pamedia.overlay pamedia.overlays.${system}
]; ];
} }
@ -102,8 +109,8 @@
inherit system; inherit system;
overlays = [ overlays = [
self.overlay self.overlay
ha-now-playing.overlay ha-now-playing.overlays.${system}
pamedia.overlay pamedia.overlays.${system}
]; ];
config = { config = {
allowUnsupportedSystem = true; allowUnsupportedSystem = true;
@ -114,12 +121,12 @@
rec { rec {
packages = flake-utils.lib.flattenTree { packages = flake-utils.lib.flattenTree {
rofi-wayland = pkgs.rofi-wayland; rofi-wayland = pkgs.rofi-wayland;
# pamedia = pkgs.pamedia; nix-plugins = pkgs.nix-plugins;
}; };
apps = { apps = {
rofi-wayland = flake-utils.lib.mkApp { drv = packages.rofi-wayland; }; rofi-wayland = flake-utils.lib.mkApp { drv = packages.rofi-wayland; };
# pamedia = flake-utils.lib.mkApp { drv = packages.pamedia; }; nix-plugins = flake-utils.lib.mkApp { drv = packages.nix-plugins; };
}; };
} }
); );

View file

@ -21,7 +21,7 @@ in
}; };
font = { font = {
normal = { normal = {
family = "CaskaydiaCove Nerd Font"; family = "Iosevka Nerd Font";
style = "Medium"; style = "Medium";
}; };
size = 10.0; size = 10.0;

View file

@ -0,0 +1,80 @@
{ pkgs, config, lib, ... }:
with lib;
let
cfg = config.eboskma.programs.dunst;
in
{
options.eboskma.programs.dunst = {
enable = mkEnableOption "activate dunst";
};
config = mkIf (cfg.enable) {
services.dunst = {
enable = true;
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
size = "symbolic";
};
settings = {
global = {
follow = "mouse";
width = "(10, 500)";
height = 200;
origin = "top-right";
offset = "25x25";
indicate_hidden = "yes";
shrink = false;
transparency = 15;
notification_limit = 0;
separator_height = 1;
padding = 15;
horizontal_padding = 20;
frame_width = 0;
frame_color = "#282a36";
separator_color = "frame";
sort = "yes";
idle_threshold = 120;
font = "Iosevka Nerd Font 10";
line_height = 0;
markup = "full";
format = "%s %p\\n%b";
alignment = "left";
vertical_alignment = "center";
show_age_threshold = 60;
word_wrap = "yes";
ellipsize = "middle";
ignore_newline = "no";
stack_duplicates = true;
hide_duplicate_count = false;
show_indicators = "yes";
icon_position = "left";
min_icon_size = 64;
max_icon_size = 64;
sticky_history = "yes";
history_length = 20;
corner_radius = 5;
};
experimental = {
per_monitor_dpi = false;
};
urgency_low = {
background = "#282a36";
foreground = "#6272a4";
timeout = 3;
};
urgency_normal = {
background = "#282a36";
foreground = "#bd93f9";
timeout = 3;
};
urgency_high = {
background = "#ff5555";
foreground = "#f8f8f2";
timeout = 0;
};
};
};
};
}

View file

@ -44,11 +44,18 @@ in
enableFishIntegration = true; enableFishIntegration = true;
settings = { settings = {
aws.disabled = true; aws.disabled = true;
directory.read_only = " ";
docker_context.symbol = " ";
elixir.symbol = " ";
git_branch.symbol = " "; git_branch.symbol = " ";
nix_shell.symbol = " ";
memory_usage.symbol = " "; memory_usage.symbol = " ";
package.symbol = " "; package.symbol = " ";
python.symbol = " "; python.symbol = " ";
rust.symbol = " "; rust.symbol = " ";
time.disabled = false; time.disabled = false;
status = { status = {
disabled = false; disabled = false;
@ -77,5 +84,10 @@ in
enable = true; enable = true;
nix-direnv.enable = true; nix-direnv.enable = true;
}; };
programs.zoxide = {
enable = true;
enableFishIntegration = true;
};
}; };
} }

View file

@ -10,6 +10,7 @@ configuration {
text: #efefef; text: #efefef;
text-alt: #c2c2c2; text-alt: #c2c2c2;
bg: #333333; bg: #333333;
bg-alt: #222222;
spacing: 0; spacing: 0;
background-color: transparent; background-color: transparent;
@ -30,7 +31,7 @@ window {
inputbar { inputbar {
enabled: true; enabled: true;
border: 1px; border: 1px;
border-color: @orange; border-color: @bg-alt;
border-radius: 5px; border-radius: 5px;
padding: 10px; padding: 10px;
margin: 0 5px; margin: 0 5px;
@ -68,7 +69,7 @@ element {
background-color: @bg; background-color: @bg;
border-radius: 5px; border-radius: 5px;
border: 1px; border: 1px;
border-color: @orange; border-color: @bg-alt;
} }
element-icon { element-icon {
size: 1em; size: 1em;

View file

@ -50,6 +50,7 @@ in
input = { input = {
"36125:40349:splitKB_Kyria" = { "36125:40349:splitKB_Kyria" = {
xkb_layout = "us";
xkb_options = "lv3:ralt_switch"; xkb_options = "lv3:ralt_switch";
}; };
"1133:49291:Logitech_G502_HERO_SE" = { "1133:49291:Logitech_G502_HERO_SE" = {
@ -153,9 +154,9 @@ in
"${mod}+Shift+Ctrl+Print" = "exec ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\" - | ${pkgs.wl-clipboard}/bin/wl-copy -t \"image/png\" -f"; "${mod}+Shift+Ctrl+Print" = "exec ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\" - | ${pkgs.wl-clipboard}/bin/wl-copy -t \"image/png\" -f";
"${mod}+Shift+Alt+Print" = "exec ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\""; "${mod}+Shift+Alt+Print" = "exec ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\"";
# "XF86AudioRaiseVolume" = "exec ${pkgs.pamedia}/bin/pamedia up"; "XF86AudioRaiseVolume" = "exec ${pkgs.pamedia}/bin/pamedia up";
# "XF86AudioLowerVolume" = "exec ${pkgs.pamedia}/bin/pamedia down"; "XF86AudioLowerVolume" = "exec ${pkgs.pamedia}/bin/pamedia down";
# "XF86AudioMute" = "exec ${pkgs.pamedia}/bin/pamedia mute"; "XF86AudioMute" = "exec ${pkgs.pamedia}/bin/pamedia mute";
"XF86Calculator" = "exec ${pkgs.gnome.gnome-calculator}/bin/gnome-calculator"; "XF86Calculator" = "exec ${pkgs.gnome.gnome-calculator}/bin/gnome-calculator";
}; };

View file

@ -2,6 +2,7 @@
with lib; with lib;
let let
cfg = config.eboskma.programs.waybar; cfg = config.eboskma.programs.waybar;
token = "";
in in
{ {
options.eboskma.programs.waybar.enable = mkEnableOption "Enable waybar"; options.eboskma.programs.waybar.enable = mkEnableOption "Enable waybar";
@ -90,12 +91,12 @@ in
# TODO: package as nix thingy # TODO: package as nix thingy
"custom/now_playing" = { "custom/now_playing" = {
exec = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token <TOKEN>"; exec = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token ${token}";
format = " {}"; format = " {}";
interval = 2; interval = 2;
on-click = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token <TOKEN> play-pause"; on-click = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token ${token} play-pause";
on-scroll-down = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token <TOKEN> volume-up"; on-scroll-down = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token ${token} volume-up";
on-scroll-up = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token <TOKEN> volume-down"; on-scroll-up = "${pkgs.ha-now-playing}/bin/ha-now-playing --host home.datarift.nl --entity media_player.sonos_woonkamer --token ${token} volume-down";
}; };
"sway/window" = { "sway/window" = {

View file

@ -41,6 +41,7 @@ in
programs = { programs = {
alacritty.enable = true; alacritty.enable = true;
bat.enable = true; bat.enable = true;
dunst.enable = true;
electron = { electron = {
enable = true; enable = true;
wayland = true; wayland = true;
@ -73,7 +74,9 @@ in
jetbrains.clion jetbrains.clion
neovim neovim
nomachine-client nomachine-client
pamedia
pass pass
procs
ripgrep ripgrep
signal-desktop signal-desktop
steam steam
@ -113,6 +116,7 @@ in
} }
../../home-manager/modules/alacritty ../../home-manager/modules/alacritty
../../home-manager/modules/bat ../../home-manager/modules/bat
../../home-manager/modules/dunst
../../home-manager/modules/electron ../../home-manager/modules/electron
../../home-manager/modules/firefox ../../home-manager/modules/firefox
../../home-manager/modules/fish ../../home-manager/modules/fish
@ -137,6 +141,8 @@ in
}; };
extraPackages = with pkgs; [ swaylock-effects swayidle ]; extraPackages = with pkgs; [ swaylock-effects swayidle ];
}; };
steam.enable = true;
}; };
xdg = { xdg = {
@ -157,11 +163,14 @@ in
dbus.packages = [ pkgs.gcr ]; dbus.packages = [ pkgs.gcr ];
}; };
security.pam.services.swaylock = { security = {
pam.services.swaylock = {
text = '' text = ''
auth include login auth include login
''; '';
}; };
pki.certificates = [ (builtins.readFile ./horus-ca.pem) ];
};
environment.sessionVariables = { environment.sessionVariables = {
_JAVA_AWT_WM_NONREPARENTING = "1"; _JAVA_AWT_WM_NONREPARENTING = "1";

View file

@ -0,0 +1,28 @@
-----BEGIN CERTIFICATE-----
MIIEzjCCAzagAwIBAgIRALYvLaV5FPil7/QCcCvA7CswDQYJKoZIhvcNAQELBQAw
fzEeMBwGA1UEChMVbWtjZXJ0IGRldmVsb3BtZW50IENBMSowKAYDVQQLDCFlcndp
bkBlcndpbi1wb3Atb3MgKEVyd2luIEJvc2ttYSkxMTAvBgNVBAMMKG1rY2VydCBl
cndpbkBlcndpbi1wb3Atb3MgKEVyd2luIEJvc2ttYSkwHhcNMjAwODEzMDkyNzEw
WhcNMzAwODEzMDkyNzEwWjB/MR4wHAYDVQQKExVta2NlcnQgZGV2ZWxvcG1lbnQg
Q0ExKjAoBgNVBAsMIWVyd2luQGVyd2luLXBvcC1vcyAoRXJ3aW4gQm9za21hKTEx
MC8GA1UEAwwobWtjZXJ0IGVyd2luQGVyd2luLXBvcC1vcyAoRXJ3aW4gQm9za21h
KTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAMomSPKouvAQ0XJSiSa+
jTngnhklN9Rwn/GV6//c4ABJrheoRTpZkvwy4JvR9cugwFhDZggG6k+xaX5Q45mm
PjJUqxz8/IPE9HlxjrbUdBxIY/BMtU4qCzvFAtRFcTlayIXU0DBM//vGPct8lYhR
ga6gmBZYWIzA4X5NIse5d68J/7rQzh0Y312VyOPmm1ji4e5sj1T5/EFiwUSJM6Qf
fTdjh72P3Cn41t8RTqubAKOmYqmJ/sWuWfOVLTWW7zYNZ9dnqrfK2K5ReoNQ+/N4
JfDaF3CgvmuOZ2xG5FY8B5/a6lt89HOwulnpX4Ha/w1rpWpO02FUMQigiEKMXFpS
memA+w8s5pCY2WIgsbrUuFWW7WUz6k6cgLbhiuiS1Aap5k6wh2nOYd40wSUjMj0E
HS+pH0bA63lCGhe7StLJcZr1q65Am923V4q1gXmhmnuG4Bafh0/OvcKtde61Hicv
FbPBKoqP6bT2eeMxqfxx5uTinREis+D1poCQ9mjQaGwDIQIDAQABo0UwQzAOBgNV
HQ8BAf8EBAMCAgQwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUIP6S2owE
aZyYi9mJJ1+RCkwLI2EwDQYJKoZIhvcNAQELBQADggGBADFDLz8tr5wzhx22VtSS
V3c5nopO6r4TeBSCqQg1m9D9Gthnnty2aR1dyDIcONBvG8l+uM319E+rLy4eFr6L
ioENPFg2bF6/VCvv9Mk3Uo2J7iLNtgeSWFaEWkQY4wNf0uLNyrsI5LipLQF++Hf8
Lqrm32YS091rUxpuboGADhdeX4dUWfoVLVB2pRUkr4/1c93d2w9phXGpTFDH+txk
9Gs0THeo8JvmKZ2qru6pyIu+AupblVIeztrmFL27pZP0EWvlpJ1t6qALVEojRixV
PQiDuAD6m38McPXDQY1ckpnmjP/SVJ7Phcta5cLHLSWhrHsX0HswZB7hM4R56APJ
cugN6z4F6VLfDYsFFaC/W/64PT7BiZ9fGl0auWG60KwoZ+HOburg89LDktANM23L
XFao9YymbgfJfmkQtP6WxMTU8dAp2hd1mqHSbfNCib7KWT4ESjgzjWPahbrYFqlu
P3glfoXn9Wyr00zwGNw6pn1qOJN9Id/rZc+u2AF47G3u3g==
-----END CERTIFICATE-----

View file

@ -8,10 +8,16 @@ in
config = mkIf (cfg.enable) { config = mkIf (cfg.enable) {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
gnomeExtensions.appindicator gnomeExtensions.appindicator
papirus-icon-theme
]; ];
services.udev.packages = with pkgs; [ services.udev.packages = with pkgs; [
gnome3.gnome-settings-daemon gnome3.gnome-settings-daemon
]; ];
services.gnome.gnome-keyring.enable = true; services.gnome.gnome-keyring.enable = true;
programs = {
evince.enable = true;
file-roller.enable = true;
};
}; };
} }

View file

@ -1,5 +1,7 @@
final: prev: { final: prev: {
rofi-wayland = prev.pkgs.callPackage ../pkgs/rofi-wayland { }; rofi-wayland = prev.pkgs.callPackage ../pkgs/rofi-wayland { };
nix-plugins = prev.pkgs.callPackage ../pkgs/nix-plugins { };
lunarvim = prev.pkgs.callPackage ../../pkgs/lunarvim { };
# pamedia = prev.pkgs.callPackage ../pkgs/pamedia { # pamedia = prev.pkgs.callPackage ../pkgs/pamedia {
# buildPythonPackage = prev.pkgs.python3.pkgs.buildPythonPackage; # buildPythonPackage = prev.pkgs.python3.pkgs.buildPythonPackage;
# pulsectl = prev.pkgs.python39Packages.pulsectl; # pulsectl = prev.pkgs.python39Packages.pulsectl;

37
pkgs/lunarvim/default.nix Normal file
View file

@ -0,0 +1,37 @@
{ pkgs, ... }:
with pkgs;
let
nvim-customized = wrapNeovim neovim-unwrapped { };
in
stdenv.mkDerivation rec {
pname = "lunarvim";
version = "0.0.1";
src = fetchFromGitHub {
owner = "LunarVim";
repo = "LunarVim";
rev = "0e531891b1dfd04fa02a22b48ce075120b512277";
sha256 = "0yfr3vh8p1s9wy21s6bgpp6kp6s9pqlb6k66s76sa22vz4sjiyxb";
};
nativeBuildInputs = [ makeWrapper nvim-customized ];
buildInputs = [ nvim-customized ];
buildPhase = ''
echo "hello"
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp -r $(pwd) $out/lvim
export shim="$out/lvim/utils/bin/lvim"
substituteInPlace "$shim" \
--replace "exec nvim" "exec ${nvim-customized}/bin/nvim"
chmod +x "$shim"
makeWrapper "$shim" "$out/bin/lvim" \
--set LUNARVIM_RUNTIME_DIR "$out" \
--prefix PATH : ${lib.makeBinPath [ fzf git ripgrep ]}
runHook postInstall
'';
}

View file

@ -0,0 +1,24 @@
{ lib, stdenv, fetchFromGitHub, nixUnstable, cmake, pkg-config, boost, nlohmann_json }:
stdenv.mkDerivation rec {
pname = "nix-plugins";
version = "d0df32b31f3054180741adf5865fd56d6731c572";
src = fetchFromGitHub {
owner = "shlevy";
repo = "nix-plugins";
rev = version;
sha256 = "sha256-Zbc0iq5ZAr73B+NJvpBHm9GIJhb9qrq0vFmV/ucNT5I=";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ nixUnstable boost nlohmann_json ];
meta = {
description = "Collection of miscellaneous plugins for the nix expression language";
homepage = "https://github.com/shlevy/nix-plugins";
license = lib.licenses.mit;
platforms = lib.platforms.all;
};
}