changed login shell to fern, added fern configuration
This commit is contained in:
253
flake.lock
generated
253
flake.lock
generated
@@ -107,11 +107,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771354440,
|
||||
"narHash": "sha256-WuwTJAZh1Sot89h63kKWIMhy8ComS+sv1BsijvYhX5E=",
|
||||
"lastModified": 1771523612,
|
||||
"narHash": "sha256-ScRqXJaqDTonQ1cs7VKxPw5pO0TQ/OnErfjOKCHX4Ps=",
|
||||
"owner": "9001",
|
||||
"repo": "copyparty",
|
||||
"rev": "f1a433a61718947853162043d3dd66905adc2657",
|
||||
"rev": "6f1d6647546832c6640cbad88817e28fb63ea3ec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -125,11 +125,11 @@
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771355198,
|
||||
"narHash": "sha256-89m5VKxIs8QNiIvLsxHu5NpyhDsoXTtoN801IAurnW4=",
|
||||
"lastModified": 1771469470,
|
||||
"narHash": "sha256-GnqdqhrguKNN3HtVfl6z+zbV9R9jhHFm3Z8nu7R6ml0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "92fceb111901a6f13e81199be4fab95fce86a5c9",
|
||||
"rev": "4707eec8d1d2db5182ea06ed48c820a86a42dc13",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -138,6 +138,25 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fern": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771568980,
|
||||
"narHash": "sha256-/qbVs2dZVibeg9mDfeKIapmJ3glHgCOYxUuOf8pRKcQ=",
|
||||
"owner": "km-clay",
|
||||
"repo": "fern",
|
||||
"rev": "9b8c8d704b5e1485e15e29d7340cf8a62aa8fb52",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "km-clay",
|
||||
"repo": "fern",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -227,6 +246,24 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fromYaml": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -291,11 +328,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771422582,
|
||||
"narHash": "sha256-xK5kl3OBZaF1VwziVMX+SZ2LT9Fbu5o8vRDt78uR7no=",
|
||||
"lastModified": 1771531206,
|
||||
"narHash": "sha256-1R3Wx6KUkMb4x4E5UOhW9p6rqiexzSGGWxZqSHqW5n0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b3ccd4bb262f4e6d3248b46cede92b90c4a42094",
|
||||
"rev": "91be7cce763fa4022c7cf025a71b0c366d1b6e77",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -306,14 +343,14 @@
|
||||
},
|
||||
"hypr-contrib": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771266242,
|
||||
"narHash": "sha256-ubwGVNkVs/AqOypM+aOSVNBcJqu6p11H/M0cO03mc64=",
|
||||
"lastModified": 1771502235,
|
||||
"narHash": "sha256-aH8h5ZOiyEGtHmEyuE/eFxx8TN7a+NGDnl4V+dbzJ6E=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "contrib",
|
||||
"rev": "36b79e54887b9a8a1211a327f1653c6308a52a16",
|
||||
"rev": "918f266dddae39fa4184a1b8bf51ec5381cf29f7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -391,17 +428,17 @@
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"hyprwire": "hyprwire",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems",
|
||||
"systems": "systems_2",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771426136,
|
||||
"narHash": "sha256-wx/Ev7U6MlDzd2HyGlSjoXcTlkaO7s8fk1g5BSlov54=",
|
||||
"lastModified": 1771522877,
|
||||
"narHash": "sha256-dqnkEwXPWuI8MW38kKjs880qaVA+WEWziz5liznzLYA=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "184af52f24c3267a4210239aba45a998404bb073",
|
||||
"revCount": 6898,
|
||||
"rev": "9ea6d0e15fddccf321c035e83b007a55d6829dd9",
|
||||
"revCount": 6902,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland"
|
||||
@@ -516,8 +553,8 @@
|
||||
"inputs": {
|
||||
"hyprutils": "hyprutils_2",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner_2",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"systems": "systems_2"
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770751064,
|
||||
@@ -731,11 +768,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1771177547,
|
||||
"narHash": "sha256-trTtk3WTOHz7hSw89xIIvahkgoFJYQ0G43IlqprFoMA=",
|
||||
"lastModified": 1771207753,
|
||||
"narHash": "sha256-b9uG8yN50DRQ6A7JdZBfzq718ryYrlmGgqkRm9OOwCE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ac055f38c798b0d87695240c7b761b82fc7e5bc2",
|
||||
"rev": "d1c15b7d5806069da59e819999d70e1cec0760bf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -746,54 +783,6 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1712163089,
|
||||
"narHash": "sha256-Um+8kTIrC19vD4/lUCN9/cU9kcOsD1O1m+axJqQPyMM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fd281bd6b7d3e32ddfa399853946f782553163b5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1770841267,
|
||||
"narHash": "sha256-9xejG0KoqsoKEGp2kVbXRlEYtFFcDTHjidiuX8hGO44=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ec7c70d12ce2fc37cb92aff673dcdca89d187bae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1748929857,
|
||||
"narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c2a03962b8e24e669fb37b7df10e7c79531ff1a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1771369470,
|
||||
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
|
||||
@@ -809,7 +798,71 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1712163089,
|
||||
"narHash": "sha256-Um+8kTIrC19vD4/lUCN9/cU9kcOsD1O1m+axJqQPyMM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fd281bd6b7d3e32ddfa399853946f782553163b5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1770841267,
|
||||
"narHash": "sha256-9xejG0KoqsoKEGp2kVbXRlEYtFFcDTHjidiuX8hGO44=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ec7c70d12ce2fc37cb92aff673dcdca89d187bae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1748929857,
|
||||
"narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c2a03962b8e24e669fb37b7df10e7c79531ff1a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1771369470,
|
||||
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0182a361324364ae3f436a63005877674cf45efb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1770380644,
|
||||
"narHash": "sha256-P7dWMHRUWG5m4G+06jDyThXO7kwSk46C1kgjEWcybkE=",
|
||||
@@ -825,7 +878,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1767767207,
|
||||
"narHash": "sha256-Mj3d3PfwltLmukFal5i3fFt27L6NiKXdBezC1EBuZs4=",
|
||||
@@ -844,8 +897,8 @@
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"systems": "systems_3"
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771135771,
|
||||
@@ -913,11 +966,12 @@
|
||||
"inputs": {
|
||||
"copyparty": "copyparty",
|
||||
"disko": "disko",
|
||||
"fern": "fern",
|
||||
"home-manager": "home-manager",
|
||||
"hypr-contrib": "hypr-contrib",
|
||||
"hyprland": "hyprland",
|
||||
"hyprpicker": "hyprpicker",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixvim": "nixvim",
|
||||
"spicetify-nix": "spicetify-nix",
|
||||
"stylix": "stylix"
|
||||
@@ -928,7 +982,7 @@
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems_4"
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771268051,
|
||||
@@ -953,9 +1007,9 @@
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"nur": "nur",
|
||||
"systems": "systems_5",
|
||||
"systems": "systems_6",
|
||||
"tinted-foot": "tinted-foot",
|
||||
"tinted-kitty": "tinted-kitty",
|
||||
"tinted-schemes": "tinted-schemes",
|
||||
@@ -963,11 +1017,11 @@
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771428844,
|
||||
"narHash": "sha256-rTzo6bZEsdT7yHUZ0B4BYe32XQZzm8SiWKvWLJnxerE=",
|
||||
"lastModified": 1771541829,
|
||||
"narHash": "sha256-jtrIUcFoZuS6R4P18907H0pPyHaGoF5Tomez7j3KIHs=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "801843d10e9e22d7a00f660d069e2de70aa2980a",
|
||||
"rev": "cb73f89d3ecef7e790c42f828e2228ff82975de5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -978,16 +1032,16 @@
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
@@ -1008,16 +1062,16 @@
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
@@ -1051,6 +1105,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_6": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-foot": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
||||
28
flake.nix
28
flake.nix
@@ -8,6 +8,7 @@
|
||||
hyprpicker.url = "github:hyprwm/hyprpicker";
|
||||
stylix.url = "github:danth/stylix";
|
||||
disko.url = "github:nix-community/disko";
|
||||
fern.url = "github:km-clay/fern";
|
||||
|
||||
nixvim.url = "github:nix-community/nixvim";
|
||||
|
||||
@@ -41,17 +42,6 @@
|
||||
hostDir = "desktop";
|
||||
kind = "both";
|
||||
}
|
||||
{
|
||||
host = "phosphorous";
|
||||
hostDir = "work";
|
||||
kind = "both";
|
||||
extraNixosModules = [
|
||||
inputs.copyparty.nixosModules.default
|
||||
];
|
||||
extraOverlays = [
|
||||
inputs.copyparty.overlays.default
|
||||
];
|
||||
}
|
||||
{
|
||||
host = "mercury";
|
||||
hostDir = "laptop";
|
||||
@@ -65,6 +55,22 @@
|
||||
./modules/server
|
||||
];
|
||||
}
|
||||
{
|
||||
host = "phosphorous";
|
||||
hostDir = "work";
|
||||
kind = "both";
|
||||
extraNixosModules = [
|
||||
inputs.fern.nixosModules.fern
|
||||
inputs.copyparty.nixosModules.default
|
||||
];
|
||||
extraHomeModules = [
|
||||
inputs.fern.homeModules.fern
|
||||
];
|
||||
extraOverlays = [
|
||||
inputs.fern.overlays.default
|
||||
inputs.copyparty.overlays.default
|
||||
];
|
||||
}
|
||||
];
|
||||
in {
|
||||
inherit (hosts) nixosConfigurations homeConfigurations;
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{ slash, pkgs, username, ... }:
|
||||
{ inputs, pkgs, username, ... }:
|
||||
|
||||
let
|
||||
fern = inputs.fern.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
in
|
||||
{
|
||||
imports = [ ./hardware.nix ];
|
||||
|
||||
@@ -39,7 +42,7 @@
|
||||
${username} = {
|
||||
isNormalUser = true;
|
||||
initialPassword = "1234";
|
||||
shell = pkgs.zsh;
|
||||
shell = fern;
|
||||
extraGroups = [ "input" "wheel" "persist" "libvirtd" ];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
{ slash, pkgs, username, ... }:
|
||||
{ inputs, pkgs, username, ... }:
|
||||
|
||||
let
|
||||
fern = inputs.fern.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./hardware.nix
|
||||
@@ -33,6 +37,8 @@
|
||||
shells = [ pkgs.myPkgs.slash pkgs.zsh pkgs.bash ];
|
||||
};
|
||||
|
||||
programs.fern.enable = true;
|
||||
|
||||
users = {
|
||||
groups.persist = { };
|
||||
groups.davfs2 = { };
|
||||
@@ -41,7 +47,7 @@
|
||||
${username} = {
|
||||
isNormalUser = true;
|
||||
initialPassword = "1234";
|
||||
shell = pkgs.zsh;
|
||||
shell = pkgs.fern;
|
||||
extraGroups = [ "davfs2" "input" "wheel" "persist" "libvirtd" ];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
./starship.nix
|
||||
./userpkgs.nix
|
||||
./zsh
|
||||
./fern
|
||||
./swaync.nix
|
||||
./hyprland.nix
|
||||
./waybar.nix
|
||||
|
||||
32
modules/home/environment/fern/aliases.nix
Normal file
32
modules/home/environment/fern/aliases.nix
Normal file
@@ -0,0 +1,32 @@
|
||||
{ lib, config, self, ... }:
|
||||
{
|
||||
programs.fern = {
|
||||
aliases = {
|
||||
mv = "mv -v";
|
||||
cp = "cp -vr";
|
||||
gt = "gtrash";
|
||||
gtp = "playshellsound ${self}/assets/sound/rm.wav";
|
||||
sr = "source ~/.fernrc";
|
||||
psg = "ps aux | grep -v grep | grep -i -e VSZ -e";
|
||||
mkdir = "mkdir -p";
|
||||
pk = "pkill -9 -f";
|
||||
svc = "sudo systemctl";
|
||||
svcu = "systemctl --user";
|
||||
iv = "invoke";
|
||||
cfgfilecount = ''find ".\.nix" $FLAKEPATH | wc -l | toilet -f 3d | lolcat'';
|
||||
vide = "neovide";
|
||||
vi = "nvim";
|
||||
mkexe = "chmod +x";
|
||||
shortdate = "date +%m-%d-%y";
|
||||
suvi = "sudoedit";
|
||||
suvide = "EDITOR=neovide; suvi";
|
||||
rustdev = "nix develop github:km-clay/devshells#rust";
|
||||
|
||||
ga = "playshellsound ${self}/assets/sound/gitadd.wav; git add";
|
||||
gcomm = "gitcommit_sfx";
|
||||
gpush = "gitpush_sfx";
|
||||
gpull = "gitpull_sfx";
|
||||
grebase = "gitrebase_sfx";
|
||||
};
|
||||
};
|
||||
}
|
||||
10
modules/home/environment/fern/default.nix
Normal file
10
modules/home/environment/fern/default.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./env.nix
|
||||
./aliases.nix
|
||||
./extraconfig.nix
|
||||
./options.nix
|
||||
];
|
||||
}
|
||||
18
modules/home/environment/fern/env.nix
Normal file
18
modules/home/environment/fern/env.nix
Normal file
@@ -0,0 +1,18 @@
|
||||
{ lib, config, ... }:
|
||||
{
|
||||
programs.fern = {
|
||||
environmentVars = {
|
||||
SOUNDS_ENABLED = "true";
|
||||
EDITOR = "nvim";
|
||||
SUDO_EDITOR = "nvim";
|
||||
VISUAL = "nvim";
|
||||
LANG = "en_US.UTF-8";
|
||||
BROWSER = "firefox";
|
||||
FLAKEPATH = "$HOME/.sysflake";
|
||||
STEAMPATH = "$HOME/.local/share/Steam";
|
||||
|
||||
FZF_DEFAULT_COMMAND = "fd";
|
||||
FZF_DEFAULT_OPTS = "--height 40% --layout=reverse --border";
|
||||
};
|
||||
};
|
||||
}
|
||||
174
modules/home/environment/fern/extraconfig.nix
Normal file
174
modules/home/environment/fern/extraconfig.nix
Normal file
@@ -0,0 +1,174 @@
|
||||
{ lib, config, self, pkgs, ... }:
|
||||
let
|
||||
shellsound = "${pkgs.myScripts.playshellsound}/bin/playshellsound";
|
||||
color-commit = "${pkgs.myScripts.color-commit}/bin/color-commit";
|
||||
sndpath = "${self}/assets/sound";
|
||||
in
|
||||
{
|
||||
programs.fern = {
|
||||
settings.extraPreConfig = ''
|
||||
prompt_topline() {
|
||||
if [ "$?" -eq "0" ]; then
|
||||
last_cmd_status="\e[1;32m\e[0m"
|
||||
else
|
||||
last_cmd_status="\e[1;31m\e[0m"
|
||||
fi
|
||||
user_and_host="\e[1m$USER\e[1;36m@\e[1;31m$HOST\e[0m"
|
||||
last_runtime_raw="$(echo -p "\t")"
|
||||
if [ -z "$last_runtime_raw" ]; then
|
||||
last_cmd_runtime=""
|
||||
last_cmd_status=""
|
||||
else
|
||||
last_cmd_runtime="\e[1;38;2;249;226;175m $(echo -p "\T")\e[0m"
|
||||
fi
|
||||
echo -n "$user_and_host $last_cmd_runtime $last_cmd_status\n"
|
||||
}
|
||||
|
||||
prompt_midline() {
|
||||
git rev-parse --is-inside-work-tree > /dev/null 2>&1 || return
|
||||
|
||||
status="$(git status --porcelain 2>/dev/null)"
|
||||
gitsigns=""
|
||||
|
||||
[ -n "$status" ] && echo "$status" | command grep -q '^ [MADR]' && gitsigns="$gitsigns!"
|
||||
[ -n "$status" ] && echo "$status" | command grep -q '^??' && gitsigns="$gitsigns?"
|
||||
[ -n "$status" ] && echo "$status" | command grep -q '^[MADR]' && gitsigns="$gitsigns+"
|
||||
|
||||
ahead="$(git rev-list --count @{upstream}..HEAD 2>/dev/null)"
|
||||
behind="$(git rev-list --count HEAD..@{upstream} 2>/dev/null)"
|
||||
[ $ahead -gt 0 ] && gitsigns="$gitsigns↑"
|
||||
[ $behind -gt 0 ] && gitsigns="$gitsigns↓"
|
||||
|
||||
branch="$(git branch --show-current 2>/dev/null)"
|
||||
|
||||
if [ -n "$gitsigns" ] || [ -n "$branch" ]; then
|
||||
if [ -n "$gitsigns" ]; then
|
||||
gitsigns="\e[1;31m[$gitsigns]"
|
||||
fi
|
||||
echo -n "\e[0mon \e[1;35m ''${branch}$gitsigns\e[0m\n"
|
||||
fi
|
||||
}
|
||||
|
||||
prompt_botline() {
|
||||
echo -p "\e[1;36m\W\e[1;32m/"
|
||||
}
|
||||
|
||||
prompt() {
|
||||
top="$(prompt_topline)"
|
||||
mid="$(prompt_midline)"
|
||||
bot="$(prompt_botline)"
|
||||
dollar="$(echo -p "\$ ")"
|
||||
dollar="$(echo -e "\e[1;32m$dollar\e[0m")"
|
||||
echo -en "$top$mid$bot\n$dollar"
|
||||
}
|
||||
|
||||
export PS1="\n\!prompt "
|
||||
'';
|
||||
settings.extraPostConfig = ''
|
||||
encrypt() {
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: encrypt <text> [recipient]"
|
||||
return 1
|
||||
fi
|
||||
if [ -z "$2" ]; then
|
||||
gpg --encrypt --armor -r "$1"
|
||||
else
|
||||
echo "$1" | gpg --encrypt --armor -r "$2"
|
||||
fi
|
||||
}
|
||||
decrypt() {
|
||||
if [ -z "$1" ]; then
|
||||
gpg --decrypt --quiet 2>/dev/null
|
||||
else
|
||||
echo "$1" | gpg --decrypt --quiet
|
||||
fi
|
||||
}
|
||||
|
||||
viflake() {
|
||||
(
|
||||
while ! [ -f ./flake.nix ]; do
|
||||
builtin cd ..
|
||||
if [ "$PWD" = "/" ]; then
|
||||
echo "No flake.nix found in this directory or any parent directories."
|
||||
return 1
|
||||
fi
|
||||
done
|
||||
nvim ./flake.nix
|
||||
)
|
||||
}
|
||||
|
||||
nvim() {
|
||||
${shellsound} ${sndpath}/nvim.wav
|
||||
command nvim "$@"
|
||||
}
|
||||
neovide() {
|
||||
${shellsound} ${sndpath}/nvim.wav
|
||||
command neovide "$@"
|
||||
}
|
||||
grimblast() {
|
||||
if command grimblast "$@"; then
|
||||
${shellsound} ${sndpath}/screenshot.wav
|
||||
fi
|
||||
}
|
||||
gitcheckout_sfx() {
|
||||
if git checkout "$@"; then
|
||||
${shellsound} ${sndpath}/gitcheckout.wav
|
||||
else
|
||||
${shellsound} ${sndpath}/error.wav
|
||||
fi
|
||||
}
|
||||
gitrebase_sfx() {
|
||||
if git rebase "$@"; then
|
||||
${shellsound} ${sndpath}/gitrebase.wav
|
||||
else
|
||||
${shellsound} ${sndpath}/error.wav
|
||||
fi
|
||||
}
|
||||
gitcommit_sfx() {
|
||||
output="$(git commit "$@")"
|
||||
if [ "$?" -eq "0" ]; then
|
||||
${shellsound} ${sndpath}/gitcommit.wav
|
||||
echo "$output" | ${color-commit}
|
||||
return 0
|
||||
else
|
||||
${shellsound} ${sndpath}/error.wav
|
||||
echo "$output"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
gitpush_sfx() {
|
||||
if git push "$@"; then
|
||||
${shellsound} ${sndpath}/gitpush.wav
|
||||
else
|
||||
${shellsound} ${sndpath}/error.wav
|
||||
fi
|
||||
}
|
||||
gitpull_sfx() {
|
||||
if git pull "$@"; then
|
||||
${shellsound} ${sndpath}/gitpull.wav
|
||||
else
|
||||
${shellsound} ${sndpath}/error.wav
|
||||
fi
|
||||
}
|
||||
|
||||
ls() {
|
||||
eza -1 --group-directories-first --icons "$@"
|
||||
${shellsound} ${sndpath}/ls.wav
|
||||
}
|
||||
|
||||
mkcd() {
|
||||
command mkdir -p "$1" && builtin cd "$1"
|
||||
}
|
||||
|
||||
cd() {
|
||||
eza -1 --group-directories-first --icons "$@" 2> /dev/null
|
||||
builtin cd "$@"
|
||||
${shellsound} ${sndpath}/cd.wav
|
||||
}
|
||||
|
||||
if [ "$0" = "-fern" ]; then
|
||||
${shellsound} $FLAKEPATH/assets/sound/login.wav
|
||||
fi
|
||||
'';
|
||||
};
|
||||
}
|
||||
12
modules/home/environment/fern/options.nix
Normal file
12
modules/home/environment/fern/options.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{ lib, config, ... }:
|
||||
|
||||
{
|
||||
programs.fern = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
autocd = true;
|
||||
autoHistory = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -43,7 +43,7 @@ in {
|
||||
config = lib.mkIf config.movOpts.envConfig.hyprlandConfig.enable {
|
||||
home.packages = with pkgs; [
|
||||
swaybg
|
||||
inputs.hypr-contrib.packages.${pkgs.system}.grimblast
|
||||
inputs.hypr-contrib.packages.${pkgs.stdenv.hostPlatform.system}.grimblast
|
||||
hyprpicker
|
||||
grim
|
||||
slurp
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{ lib, config, pkgs, inputs, ... }:
|
||||
let
|
||||
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
||||
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system};
|
||||
scheme = config.lib.stylix.colors;
|
||||
in {
|
||||
imports = [ inputs.spicetify-nix.homeManagerModules.default ];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, config, pkgs, self, ... }:
|
||||
{ inputs, lib, config, pkgs, self, ... }:
|
||||
|
||||
let
|
||||
scripts = with pkgs; [
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, config, pkgs, ... }: {
|
||||
{ self, lib, config, pkgs, ... }: {
|
||||
options = {
|
||||
movOpts.programConfigs.kittyConfig.enable =
|
||||
lib.mkEnableOption "enables my kitty configuration";
|
||||
@@ -16,9 +16,10 @@
|
||||
confirm_os_window_close = 0;
|
||||
window_padding_width = 4;
|
||||
scrollback_lines = 10000;
|
||||
enable_audio_bell = false;
|
||||
enable_audio_bell = true;
|
||||
allow_remote_control = true;
|
||||
mouse_hide_wait = 60;
|
||||
command_on_bell = "${pkgs.myScripts.playshellsound}/bin/playshellsound ${self}/assets/sound/bell.wav";
|
||||
|
||||
## Tabs
|
||||
tab_title_template = "{index}";
|
||||
|
||||
@@ -41,6 +41,12 @@ in {
|
||||
|
||||
vim.g.vimwiki_list = {{path = '~/vimwiki/', syntax = 'markdown', ext = '.md'}}
|
||||
|
||||
vim.filetype.add({
|
||||
filename = {
|
||||
[".fernrc"] = "sh",
|
||||
}
|
||||
})
|
||||
|
||||
vim.opt.number = true
|
||||
vim.opt.autochdir = false
|
||||
vim.opt.relativenumber = true
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
shellWrapperName = "y";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -3,11 +3,16 @@
|
||||
movOpts.softwareCfg.sysPkgs.enable =
|
||||
lib.mkEnableOption "enables default system packages";
|
||||
};
|
||||
config = lib.mkIf config.movOpts.softwareCfg.sysPkgs.enable {
|
||||
config =
|
||||
let
|
||||
fern = inputs.fern.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
in
|
||||
lib.mkIf config.movOpts.softwareCfg.sysPkgs.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
dotnetCorePackages.sdk_8_0_4xx
|
||||
alsa-lib
|
||||
xwayland
|
||||
fern
|
||||
wayland
|
||||
alsa-utils
|
||||
bc
|
||||
@@ -33,7 +38,7 @@
|
||||
nixos-option
|
||||
nix-search-cli
|
||||
nix-template
|
||||
nixfmt-classic
|
||||
nixfmt
|
||||
sshfs
|
||||
nvd
|
||||
pamixer
|
||||
|
||||
@@ -29,6 +29,7 @@ pkgs.writeShellApplication {
|
||||
|
||||
hooray() { playshellsound "${self}/assets/sound/update.wav"; }
|
||||
damn() { playshellsound "${self}/assets/sound/error.wav"; }
|
||||
start() { playshellsound "${self}/assets/sound/nixswitch-start.wav"; }
|
||||
|
||||
usage="\033[1;4;38;2;243;139;168mUsage\033[0m: rebuild -h for home config, rebuild -s for sys config, rebuild -a for both. Including 'n' with the flag does a dry run, i.e. rebuild -nh"
|
||||
|
||||
@@ -42,8 +43,8 @@ pkgs.writeShellApplication {
|
||||
dry_flag=""
|
||||
[ "$dry" = true ] && dry_flag="-n"
|
||||
|
||||
[ "$all" = true ] && if sudo sleep 0.1 && nh os switch $dry_flag -H "${host}" "$FLAKEPATH" && nh home switch $dry_flag -c "${host}Home" "$FLAKEPATH"; then hooray; else damn; fi
|
||||
[ "$system" = true ] && if nh os switch $dry_flag -H "${host}" "$FLAKEPATH"; then hooray; else damn; fi
|
||||
[ "$home" = true ] && if nh home switch $dry_flag -c "${host}Home" "$FLAKEPATH"; then hooray; else damn; fi
|
||||
[ "$all" = true ] && if sudo sleep 0.1 && start && nh os switch $dry_flag -H "${host}" "$FLAKEPATH" && nh home switch $dry_flag -c "${host}Home" "$FLAKEPATH"; then hooray; else damn; fi
|
||||
[ "$system" = true ] && start && if nh os switch $dry_flag -H "${host}" "$FLAKEPATH"; then hooray; else damn; fi
|
||||
[ "$home" = true ] && start && if nh home switch $dry_flag -c "${host}Home" "$FLAKEPATH"; then hooray; else damn; fi
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ pkgs.writeShellApplication {
|
||||
exit 1
|
||||
fi
|
||||
if scheck; then
|
||||
runbg aplay "$1"
|
||||
runbg aplay "$1" > /dev/null 2>&1
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user