Compare commits

..

3 commits

5 changed files with 83 additions and 9 deletions

View file

@ -31,3 +31,7 @@ alias gc := collectgarbage
[group('maintainence')] [group('maintainence')]
collectgarbage: collectgarbage:
nh clean all nh clean all
alias s := search
search this:
nh search {{this}}

View file

@ -1,8 +1,7 @@
{ {
description = "marleyOS"; description = "marleyOS";
outputs = outputs = inputs:
inputs:
inputs.snowfall-lib.mkFlake { inputs.snowfall-lib.mkFlake {
inherit inputs; inherit inputs;
src = ./.; src = ./.;
@ -72,7 +71,6 @@
marleyvim = { marleyvim = {
url = "git+https://codewith.babesonthe.net/punkfairie/marleyvim"; url = "git+https://codewith.babesonthe.net/punkfairie/marleyvim";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
inputs.unstable.follows = "unstable";
}; };
# Rose pine themes that aren't included in the above flake: # Rose pine themes that aren't included in the above flake:

View file

@ -2,11 +2,9 @@
lib, lib,
pkgs, pkgs,
... ...
}: }: let
let
inherit (lib.marleyos) enabled; inherit (lib.marleyos) enabled;
in in {
{
imports = [./autorandr.nix]; imports = [./autorandr.nix];
home.keyboard.options = ["apple:alupckeys"]; home.keyboard.options = ["apple:alupckeys"];
@ -72,6 +70,7 @@ in
}; };
services = { services = {
clipboard = enabled; clipboard = enabled;
kanata = enabled;
syncthing = enabled; syncthing = enabled;
}; };
xorg = { xorg = {

View file

@ -0,0 +1,30 @@
;; vim: ft=commonlisp
(defcfg
process-unmapped-keys yes
)
(defsrc
caps a s d f j k l ;
)
(defvar
tap-time 150
hold-time 200
)
(defalias
escctrl (tap-hold 100 100 esc caps)
a (tap-hold $tap-time $hold-time a lmet)
s (tap-hold $tap-time $hold-time s lalt)
d (tap-hold $tap-time $hold-time d lsft)
f (tap-hold $tap-time $hold-time f lctl)
j (tap-hold $tap-time $hold-time j rctl)
k (tap-hold $tap-time $hold-time k rsft)
l (tap-hold $tap-time $hold-time l ralt)
; (tap-hold $tap-time $hold-time ; rmet)
)
(deflayer base
@escctrl @a @s @d @f @j @k @l @;
)

View file

@ -0,0 +1,43 @@
{
lib,
config,
pkgs,
system,
...
}: let
inherit (lib) mkEnableOption mkIf getExe' getExe;
inherit (lib.snowfall.system) is-darwin;
cfg = config.marleyos.services.kanata;
isGenericLinux = config.targets.genericLinux.enable;
isNotNixOS = isGenericLinux || (is-darwin system);
in {
options.marleyos.services.kanata.enable = mkEnableOption "kanata";
# Kanata is available as a module for nixOS and that should be preferred when
# possible.
config = mkIf (cfg.enable && isNotNixOS) {
home.packages = with pkgs; [
kanata
];
systemd.user.services.kanata = {
Unit = {
Description = "Kanata keyboard remapper";
Documentation = "https://github.com/jtroo/kanata";
};
Service = {
Environment = [
"PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin"
"DISPLAY=:0"
];
Type = "simple";
ExecStart = "${getExe' pkgs.klibc "sh"} -c 'exec ${getExe pkgs.kanata} --cfg ${./config.kbd}'";
Restart = "no";
};
Install.WantedBy = ["default.target"];
};
};
}