setup walker and elephant
This commit is contained in:
@@ -13,6 +13,7 @@
|
|||||||
./dnote.nix
|
./dnote.nix
|
||||||
../modules/zed
|
../modules/zed
|
||||||
../modules/voxtype
|
../modules/voxtype
|
||||||
|
../modules/elephant
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
inputs.hastebin.nixosModules.hm
|
inputs.hastebin.nixosModules.hm
|
||||||
inputs.agenix.homeManagerModules.default
|
inputs.agenix.homeManagerModules.default
|
||||||
@@ -81,12 +82,11 @@
|
|||||||
pkgs-unstable.devbox
|
pkgs-unstable.devbox
|
||||||
pkgs-unstable.feishin
|
pkgs-unstable.feishin
|
||||||
openscad
|
openscad
|
||||||
pkgs-unstable.walker
|
|
||||||
pkgs-unstable.shairport-sync-airplay2
|
pkgs-unstable.shairport-sync-airplay2
|
||||||
(writeShellScriptBin "pw" ''
|
(writeShellScriptBin "pw" ''
|
||||||
${lib.getExe rbw} ls --fields 'id,folder,name' | \
|
${lib.getExe rbw} ls --fields 'id,folder,name' | \
|
||||||
${lib.getExe gawk} -F '\t' '{print $1 "\t" ($2 == "" ? "" : $2 "/") $3}' | \
|
${lib.getExe gawk} -F '\t' '{print $1 "\t" ($2 == "" ? "" : $2 "/") $3}' | \
|
||||||
${lib.getExe pkgs-unstable.walker} -d -l 2 | \
|
${lib.getExe config.services.walker.package} -d -l 2 | \
|
||||||
xargs ${lib.getExe rbw} get "$@" | ${lib.getExe' wl-clipboard "wl-copy"}
|
xargs ${lib.getExe rbw} get "$@" | ${lib.getExe' wl-clipboard "wl-copy"}
|
||||||
'')
|
'')
|
||||||
(google-fonts.override { fonts = [ "Tajawal" ]; })
|
(google-fonts.override { fonts = [ "Tajawal" ]; })
|
||||||
@@ -653,10 +653,36 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
services.gpg-agent = with pkgs; {
|
services.gpg-agent = with pkgs; {
|
||||||
|
|
||||||
|
services.walker = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableSshSupport = true;
|
package = pkgs.symlinkJoin {
|
||||||
pinentry.package = pinentry-gnome3;
|
inherit (pkgs-unstable.walker) name meta;
|
||||||
|
paths = [ pkgs-unstable.walker ];
|
||||||
|
nativeBuildInputs = [ pkgs.makeBinaryWrapper ];
|
||||||
|
postBuild = ''
|
||||||
|
wrapProgram $out/bin/walker \
|
||||||
|
--prefix PATH : ${lib.makeBinPath [ config.services.elephant.package ]}
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
systemd = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
providers = {
|
||||||
|
default = [
|
||||||
|
"desktopapplications"
|
||||||
|
"calc"
|
||||||
|
"websearch"
|
||||||
|
"bitwarden"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.elephant.enable = true;
|
||||||
|
|
||||||
|
systemd.user.services.walker.Install.WantedBy = lib.mkForce [ "graphical-session.target" ];
|
||||||
|
|
||||||
systemd.user.services.shairport-sync = {
|
systemd.user.services.shairport-sync = {
|
||||||
Unit = {
|
Unit = {
|
||||||
|
|||||||
43
home/modules/elephant/default.nix
Normal file
43
home/modules/elephant/default.nix
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
pkgs-unstable,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.services.elephant;
|
||||||
|
wrappedPackage = pkgs.symlinkJoin {
|
||||||
|
inherit (cfg.package) name meta;
|
||||||
|
paths = [ cfg.package ];
|
||||||
|
nativeBuildInputs = [ pkgs.makeBinaryWrapper ];
|
||||||
|
postBuild = ''
|
||||||
|
wrapProgram $out/bin/elephant \
|
||||||
|
--prefix PATH : ${lib.makeBinPath [ pkgs.bash ]}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.services.elephant = {
|
||||||
|
enable = lib.mkEnableOption "Enable Elephant";
|
||||||
|
package = lib.mkOption {
|
||||||
|
type = lib.types.package;
|
||||||
|
default = pkgs-unstable.elephant;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
systemd.user.services.elephant = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Elephant";
|
||||||
|
After = [ "niri.service" ];
|
||||||
|
Wants = [ "niri.service" ];
|
||||||
|
};
|
||||||
|
Service = {
|
||||||
|
ExecStart = lib.getExe wrappedPackage;
|
||||||
|
Restart = "on-failure";
|
||||||
|
};
|
||||||
|
Install.WantedBy = [ "graphical-session.target" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user