Clean on IDE deps and add paneru
This commit is contained in:
@@ -55,10 +55,10 @@
|
|||||||
nixos = nixpkgs.lib.nixosSystem {
|
nixos = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
self = self;
|
self = self;
|
||||||
import-tree = import-tree;
|
|
||||||
home-manager = home-manager;
|
|
||||||
nixpkgs = nixpkgs;
|
nixpkgs = nixpkgs;
|
||||||
nixpkgs-unstable = nixpkgs-unstable;
|
nixpkgs-unstable = nixpkgs-unstable;
|
||||||
|
import-tree = import-tree;
|
||||||
|
home-manager = home-manager;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/nixos/overlays.nix
|
./hosts/nixos/overlays.nix
|
||||||
@@ -93,9 +93,10 @@
|
|||||||
(import-tree ./hosts/darwin/system)
|
(import-tree ./hosts/darwin/system)
|
||||||
]
|
]
|
||||||
++ [
|
++ [
|
||||||
(import-tree ./hosts/darwin/overlays)
|
(import-tree ./overlays/darwin)
|
||||||
home-manager.darwinModules.home-manager
|
(import-tree ./modules/system/darwin)
|
||||||
|
|
||||||
|
home-manager.darwinModules.home-manager
|
||||||
(import-tree ./hosts/common)
|
(import-tree ./hosts/common)
|
||||||
(import-tree ./hosts/darwin/home)
|
(import-tree ./hosts/darwin/home)
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
{ import-tree, pkgs, ... }:
|
{ import-tree, ... }:
|
||||||
{
|
{
|
||||||
home-manager.users.alistreaza = {
|
home-manager.users.alistreaza = {
|
||||||
imports = [
|
imports = [
|
||||||
pkgs.paneru.homeModules.paneru
|
|
||||||
(import-tree ../../../modules/home/common)
|
(import-tree ../../../modules/home/common)
|
||||||
|
(import-tree ./partials)
|
||||||
];
|
];
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
@@ -30,10 +30,6 @@
|
|||||||
targets.darwin.linkApps.enable = false;
|
targets.darwin.linkApps.enable = false;
|
||||||
targets.darwin.copyApps.enable = false;
|
targets.darwin.copyApps.enable = false;
|
||||||
|
|
||||||
services.paneru = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# The state version is required and should stay at the version you
|
# The state version is required and should stay at the version you
|
||||||
# originally installed.
|
# originally installed.
|
||||||
home.stateVersion = "25.11";
|
home.stateVersion = "25.11";
|
||||||
|
|||||||
@@ -0,0 +1,37 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.paneru = {
|
||||||
|
enable = true;
|
||||||
|
# Equivalent to what you would put into `~/.paneru` (See Configuration options below).
|
||||||
|
settings = {
|
||||||
|
options = {
|
||||||
|
preset_column_widths = [
|
||||||
|
0.25
|
||||||
|
0.33
|
||||||
|
0.5
|
||||||
|
0.66
|
||||||
|
0.75
|
||||||
|
];
|
||||||
|
swipe_gesture_fingers = 4;
|
||||||
|
animation_speed = 4000;
|
||||||
|
};
|
||||||
|
bindings = {
|
||||||
|
window_focus_west = "cmd - h";
|
||||||
|
window_focus_east = "cmd - l";
|
||||||
|
window_focus_north = "cmd - k";
|
||||||
|
window_focus_south = "cmd - j";
|
||||||
|
window_swap_west = "alt - h";
|
||||||
|
window_swap_east = "alt - l";
|
||||||
|
window_swap_first = "alt + shift - h";
|
||||||
|
window_swap_last = "alt + shift - l";
|
||||||
|
window_center = "alt - c";
|
||||||
|
window_resize = "alt - r";
|
||||||
|
window_fullwidth = "alt - f";
|
||||||
|
window_manage = "ctrl + alt - t";
|
||||||
|
window_stack = "alt - ]";
|
||||||
|
window_unstack = "alt + shift - ]";
|
||||||
|
quit = "ctrl + alt - q";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
nixpkgs.overlays = [
|
|
||||||
(final: prev: {
|
|
||||||
paneru = prev.callPackage ../packages/paneru.nix { };
|
|
||||||
})
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,125 +0,0 @@
|
|||||||
{
|
|
||||||
self,
|
|
||||||
fetchFromGitHub,
|
|
||||||
nixpkgs,
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
pkgs = import nixpkgs { system = "aarch64-darwin"; };
|
|
||||||
package = pkgs.rustPlatform.buildRustPackage {
|
|
||||||
pname = "paneru";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "karinushka";
|
|
||||||
repo = "paneru";
|
|
||||||
sha256 = "sha256-ZPnuAjieJM+C/ebNEr04ZN3Iw+J/mquHekJXXMNHelI=";
|
|
||||||
};
|
|
||||||
postPatch = ''
|
|
||||||
substituteInPlace build.rs --replace-fail \
|
|
||||||
'let sdk_dir = "/Library/Developer/CommandLineTools/SDKs";' \
|
|
||||||
'let sdk_dir = "${pkgs.apple-sdk}/Platforms/MacOSX.platform/Developer/SDKs";'
|
|
||||||
'';
|
|
||||||
cargoLock.lockFile = ./Cargo.lock;
|
|
||||||
buildInputs = [
|
|
||||||
pkgs.apple-sdk.privateFrameworksHook
|
|
||||||
];
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
|
||||||
packages.aarch64-darwin.default = self.packages.aarch64-darwin.paneru;
|
|
||||||
packages.aarch64-darwin.paneru = package;
|
|
||||||
homeModules.paneru =
|
|
||||||
{ config, lib, ... }:
|
|
||||||
let
|
|
||||||
cfg = config.services.paneru;
|
|
||||||
tomlFormat = pkgs.formats.toml { };
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.services.paneru = {
|
|
||||||
enable = lib.mkEnableOption ''
|
|
||||||
Install paneru and configure the launchd agent.
|
|
||||||
|
|
||||||
The first time this is enabled, macOS will prompt you to allow this background
|
|
||||||
item in System Settings.
|
|
||||||
|
|
||||||
You can verify the service is running correctly from your terminal.
|
|
||||||
Run: `launchctl list | grep paneru`
|
|
||||||
|
|
||||||
In case of failure, check the logs with `cat /tmp/paneru.err.log`.
|
|
||||||
'';
|
|
||||||
|
|
||||||
package = lib.mkOption {
|
|
||||||
type = lib.types.package;
|
|
||||||
default = package;
|
|
||||||
description = "The paneru package to use.";
|
|
||||||
};
|
|
||||||
|
|
||||||
settings = lib.mkOption {
|
|
||||||
type = lib.types.nullOr lib.types.attrs;
|
|
||||||
default = null;
|
|
||||||
description = "Configuration to put in `~/.paneru.toml`.";
|
|
||||||
example = {
|
|
||||||
options = {
|
|
||||||
focus_follows_mouse = true;
|
|
||||||
preset_column_widths = [
|
|
||||||
0.25
|
|
||||||
0.33
|
|
||||||
0.5
|
|
||||||
0.66
|
|
||||||
0.75
|
|
||||||
];
|
|
||||||
swipe_gesture_fingers = 4;
|
|
||||||
animation_speed = 4000;
|
|
||||||
};
|
|
||||||
bindings = {
|
|
||||||
window_focus_west = "cmd - h";
|
|
||||||
window_focus_east = "cmd - l";
|
|
||||||
window_focus_north = "cmd - k";
|
|
||||||
window_focus_south = "cmd - j";
|
|
||||||
window_swap_west = "alt - h";
|
|
||||||
window_swap_east = "alt - l";
|
|
||||||
window_swap_first = "alt + shift - h";
|
|
||||||
window_swap_last = "alt + shift - l";
|
|
||||||
window_center = "alt - c";
|
|
||||||
window_resize = "alt - r";
|
|
||||||
window_manage = "ctrl + alt - t";
|
|
||||||
window_stack = "alt - ]";
|
|
||||||
window_unstack = "alt + shift - ]";
|
|
||||||
quit = "ctrl + alt - q";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
assertions = [ (lib.hm.assertions.assertPlatform "services.paneru" pkgs lib.platforms.darwin) ];
|
|
||||||
launchd.agents.paneru = {
|
|
||||||
enable = true;
|
|
||||||
config = {
|
|
||||||
KeepAlive = {
|
|
||||||
Crashed = true;
|
|
||||||
SuccessfulExit = false;
|
|
||||||
};
|
|
||||||
Label = "Paneru";
|
|
||||||
Nice = -20;
|
|
||||||
ProcessType = "Interactive";
|
|
||||||
EnvironmentVariables = {
|
|
||||||
NO_COLOR = "1";
|
|
||||||
XDG_CONFIG_HOME =
|
|
||||||
if config.xdg.enable then config.xdg.configHome else "${config.home.homeDirectory}/.config";
|
|
||||||
};
|
|
||||||
RunAtLoad = true;
|
|
||||||
StandardOutPath = "/tmp/paneru.log";
|
|
||||||
StandardErrorPath = "/tmp/paneru.err.log";
|
|
||||||
Program = cfg.package + /bin/paneru;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.configFile."paneru/paneru.toml" = lib.mkIf (config.xdg.enable && cfg.settings != null) {
|
|
||||||
source = tomlFormat.generate "paneru.toml" cfg.settings;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.file.".paneru.toml" = lib.mkIf (!config.xdg.enable && cfg.settings != null) {
|
|
||||||
source = tomlFormat.generate ".paneru.toml" cfg.settings;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,100 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.services.paneru;
|
||||||
|
tomlFormat = pkgs.formats.toml { };
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.services.paneru = {
|
||||||
|
enable = lib.mkEnableOption ''
|
||||||
|
Install paneru and configure the launchd agent.
|
||||||
|
|
||||||
|
The first time this is enabled, macOS will prompt you to allow this background
|
||||||
|
item in System Settings.
|
||||||
|
|
||||||
|
You can verify the service is running correctly from your terminal.
|
||||||
|
Run: `launchctl list | grep paneru`
|
||||||
|
|
||||||
|
In case of failure, check the logs with `cat /tmp/paneru.err.log`.
|
||||||
|
'';
|
||||||
|
|
||||||
|
package = lib.mkOption {
|
||||||
|
type = lib.types.package;
|
||||||
|
default = pkgs.paneru;
|
||||||
|
description = "The paneru package to use.";
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = lib.mkOption {
|
||||||
|
type = lib.types.nullOr lib.types.attrs;
|
||||||
|
default = null;
|
||||||
|
description = "Configuration to put in `~/.paneru.toml`.";
|
||||||
|
example = {
|
||||||
|
options = {
|
||||||
|
focus_follows_mouse = true;
|
||||||
|
preset_column_widths = [
|
||||||
|
0.25
|
||||||
|
0.33
|
||||||
|
0.5
|
||||||
|
0.66
|
||||||
|
0.75
|
||||||
|
];
|
||||||
|
swipe_gesture_fingers = 4;
|
||||||
|
animation_speed = 4000;
|
||||||
|
};
|
||||||
|
bindings = {
|
||||||
|
window_focus_west = "cmd - h";
|
||||||
|
window_focus_east = "cmd - l";
|
||||||
|
window_focus_north = "cmd - k";
|
||||||
|
window_focus_south = "cmd - j";
|
||||||
|
window_swap_west = "alt - h";
|
||||||
|
window_swap_east = "alt - l";
|
||||||
|
window_swap_first = "alt + shift - h";
|
||||||
|
window_swap_last = "alt + shift - l";
|
||||||
|
window_center = "alt - c";
|
||||||
|
window_resize = "alt - r";
|
||||||
|
window_manage = "ctrl + alt - t";
|
||||||
|
window_stack = "alt - ]";
|
||||||
|
window_unstack = "alt + shift - ]";
|
||||||
|
quit = "ctrl + alt - q";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
assertions = [ (lib.hm.assertions.assertPlatform "services.paneru" pkgs lib.platforms.darwin) ];
|
||||||
|
launchd.agents.paneru = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
KeepAlive = {
|
||||||
|
Crashed = true;
|
||||||
|
SuccessfulExit = false;
|
||||||
|
};
|
||||||
|
Label = "Paneru";
|
||||||
|
Nice = -20;
|
||||||
|
ProcessType = "Interactive";
|
||||||
|
EnvironmentVariables = {
|
||||||
|
NO_COLOR = "1";
|
||||||
|
XDG_CONFIG_HOME =
|
||||||
|
if config.xdg.enable then config.xdg.configHome else "${config.home.homeDirectory}/.config";
|
||||||
|
};
|
||||||
|
RunAtLoad = true;
|
||||||
|
StandardOutPath = "/tmp/paneru.log";
|
||||||
|
StandardErrorPath = "/tmp/paneru.err.log";
|
||||||
|
Program = cfg.package + /bin/paneru;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.configFile."paneru/paneru.toml" = lib.mkIf (config.xdg.enable && cfg.settings != null) {
|
||||||
|
source = tomlFormat.generate "paneru.toml" cfg.settings;
|
||||||
|
};
|
||||||
|
|
||||||
|
home.file.".paneru.toml" = lib.mkIf (!config.xdg.enable && cfg.settings != null) {
|
||||||
|
source = tomlFormat.generate ".paneru.toml" cfg.settings;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.clion;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.clion = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.clion
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.datagrip;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.datagrip = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.datagrip
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.dataspell;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.dataspell = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.dataspell
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.goland;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.goland = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.goland
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.idea;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.idea = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.idea
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.phpstorm;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.phpstorm = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.phpstorm
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.pycharm;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.pycharm = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.pycharm
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.rider;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.rider = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.rider
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.rubymine;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.rubymine = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.ruby-mine
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.rustrover;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.rustrover = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.rust-rover
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
let
|
|
||||||
cfg = config.home.ide.jetbrains.webstorm;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.home.ide.jetbrains.webstorm = {
|
|
||||||
enable = mkEnableOption "JetBrains options";
|
|
||||||
};
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
home.packages = with pkgs.unstable; [
|
|
||||||
jetbrains.webstorm
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
let
|
||||||
|
package = pkgs.rustPlatform.buildRustPackage {
|
||||||
|
pname = "paneru";
|
||||||
|
version = "0.3.0";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "karinushka";
|
||||||
|
repo = "paneru";
|
||||||
|
rev = "66c94493cc99ee7715b4beb1e5cf455ada60213a";
|
||||||
|
sha256 = "sha256-VyKzfnXfnIkyjbg1RQTDaIbMdPQjNBD5dxVL6OZQf2U=";
|
||||||
|
};
|
||||||
|
cargoHash = "sha256-nVOhtPbX7pN5K/xqv0Nlx7MZDg9ASTxfgdTy/Kagui8=";
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace build.rs --replace-fail \
|
||||||
|
'let sdk_dir = "/Library/Developer/CommandLineTools/SDKs";' \
|
||||||
|
'let sdk_dir = "${pkgs.apple-sdk}/Platforms/MacOSX.platform/Developer/SDKs";'
|
||||||
|
'';
|
||||||
|
buildInputs = [ pkgs.apple-sdk.privateFrameworksHook ];
|
||||||
|
doCheck = false;
|
||||||
|
meta = {
|
||||||
|
platforms = [ "aarch64-darwin" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(final: prev: {
|
||||||
|
paneru = package;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user