Something went wrong. Try again.
a krunner plugin to open projects in your editor
Something went wrong. Try again.
project-runner flake.nix
1.8 kB · 60 lines
Nix
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061{ description = "Project Runner a krunner plugin";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
outputs = { nixpkgs, ... }: let system = "x86_64-linux"; pkgs = import nixpkgs { inherit system; };
package = pkgs.rustPlatform.buildRustPackage { pname = "project-runner"; version = "0.1.0"; src = ./.; cargoLock.lockFile = ./Cargo.lock; }; in { packages.${system}.default = package;
homeModules.default = { lib, config, ... }: let cfg = config.services.project-runner; in { options.services.project-runner = { enable = lib.mkEnableOption "Project Runner a krunner plugin"; };
config = lib.mkIf cfg.enable { xdg.dataFile."krunner/dbusplugins/project-krunner.desktop".text = '' [Desktop Entry] Name=Project runner Comment=Open project folders in your editor Type=Service X-KDE-ServiceTypes=Plasma/Runner X-Plasma-API=DBus X-Plasma-DBusRunner-Service=dev.tobinio.ProjectRunner X-Plasma-DBusRunner-Path=/dev/tobinio/ProjectRunner '';
systemd.user.services.project-runner = { Unit = { Description = "Project Runner a krunner plugin"; After = [ "graphical-session.target" ]; PartOf = [ "graphical-session.target" ]; }; Service = { ExecStart = "${package}/bin/project-krunner"; Restart = "always"; RestartSec = 5; }; Install.WantedBy = [ "graphical-session.target" ]; }; }; }; };}