parent
58e6e1609a
commit
24309ae774
8 changed files with 265 additions and 68 deletions
116
flake.lock
generated
116
flake.lock
generated
|
@ -192,7 +192,7 @@
|
|||
},
|
||||
"devshell_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1735644329,
|
||||
|
@ -502,6 +502,21 @@
|
|||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"locked": {
|
||||
"lastModified": 1659877975,
|
||||
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"locked": {
|
||||
"lastModified": 1631561581,
|
||||
"narHash": "sha256-3VQMV5zvxaVLvqqUrNz3iJelLw30mIVSfZmAaauM3dA=",
|
||||
|
@ -516,7 +531,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"flake-utils_5": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
},
|
||||
|
@ -796,6 +811,25 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixgl": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1713543440,
|
||||
"narHash": "sha256-lnzZQYG0+EXl/6NkGpyIz+FEOc/DSEG57AP1VsdeNrM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixGL",
|
||||
"rev": "310f8e49a149e4c9ea52f1adf70cdc768ec53f8a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixGL",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-anywhere": {
|
||||
"inputs": {
|
||||
"disko": "disko_2",
|
||||
|
@ -803,7 +837,7 @@
|
|||
"nix-vm-test": "nix-vm-test",
|
||||
"nixos-images": "nixos-images",
|
||||
"nixos-stable": "nixos-stable",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"treefmt-nix": "treefmt-nix_3"
|
||||
},
|
||||
"locked": {
|
||||
|
@ -1001,6 +1035,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1722073938,
|
||||
"narHash": "sha256-OpX0StkL8vpXyWOGUD6G+MA26wAXK6SpT94kLJXo6B4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e36e9f57337d0ff0cf77aceb58af4c805472bfae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1722073938,
|
||||
|
@ -1033,6 +1083,21 @@
|
|||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1660551188,
|
||||
"narHash": "sha256-a1LARMMYQ8DPx1BgoI/UN4bXe12hhZkCNqdxNi6uS0g=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "441dc5d512153039f19ef198e662e4f3dbb9fd65",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1748719291,
|
||||
"narHash": "sha256-lD4C9HmTBrSZjjAd9o/PlVF4tchH2LKDHPG/qc89wHY=",
|
||||
|
@ -1048,7 +1113,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1748856973,
|
||||
"narHash": "sha256-RlTsJUvvr8ErjPBsiwrGbbHYW8XbB/oek0Gi78XdWKg=",
|
||||
|
@ -1064,7 +1129,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1632855891,
|
||||
"narHash": "sha256-crW76mt9/kbUBiKy/KiSnsQ9JEYgD3StDuYAMVkTbM0=",
|
||||
|
@ -1078,7 +1143,7 @@
|
|||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1749032651,
|
||||
"narHash": "sha256-1RLgqmQnvTD1F1BCxu70F2z3LtyHfi+JDy97eklH2E0=",
|
||||
|
@ -1094,7 +1159,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1748460289,
|
||||
"narHash": "sha256-7doLyJBzCllvqX4gszYtmZUToxKvMUrg45EUWaUYmBg=",
|
||||
|
@ -1110,22 +1175,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1722073938,
|
||||
"narHash": "sha256-OpX0StkL8vpXyWOGUD6G+MA26wAXK6SpT94kLJXo6B4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e36e9f57337d0ff0cf77aceb58af4c805472bfae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
|
@ -1174,8 +1223,8 @@
|
|||
},
|
||||
"polygon-art": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
"flake-utils": "flake-utils_4",
|
||||
"nixpkgs": "nixpkgs_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1688766095,
|
||||
|
@ -1233,12 +1282,12 @@
|
|||
"rev": "0a4e7e258e95b844a9f0a4271b5fe2fc53d4b34d",
|
||||
"revCount": 107,
|
||||
"type": "git",
|
||||
"url": "ssh://forgejo@git.ingolf-wagner.de:2222/palo/nixos-private-parts.git"
|
||||
"url": "https://git.ingolf-wagner.de/palo/nixos-private-parts.git"
|
||||
},
|
||||
"original": {
|
||||
"ref": "main",
|
||||
"type": "git",
|
||||
"url": "ssh://forgejo@git.ingolf-wagner.de:2222/palo/nixos-private-parts.git"
|
||||
"url": "https://git.ingolf-wagner.de/palo/nixos-private-parts.git"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
|
@ -1252,9 +1301,10 @@
|
|||
"home-manager-utils": "home-manager-utils",
|
||||
"landingpage": "landingpage",
|
||||
"nix-topology": "nix-topology",
|
||||
"nixgl": "nixgl",
|
||||
"nixos-anywhere": "nixos-anywhere",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nixpkgs-unstable-small": "nixpkgs-unstable-small",
|
||||
"permown": "permown",
|
||||
"polygon-art": "polygon-art",
|
||||
|
@ -1282,12 +1332,12 @@
|
|||
"rev": "053268c75d347c4d7322a6a7753f635ec47bd008",
|
||||
"revCount": 7,
|
||||
"type": "git",
|
||||
"url": "ssh://forgejo@git.ingolf-wagner.de:2222/palo/share-host.git"
|
||||
"url": "https://git.ingolf-wagner.de/palo/share-host.git"
|
||||
},
|
||||
"original": {
|
||||
"ref": "main",
|
||||
"type": "git",
|
||||
"url": "ssh://forgejo@git.ingolf-wagner.de:2222/palo/share-host.git"
|
||||
"url": "https://git.ingolf-wagner.de/palo/share-host.git"
|
||||
}
|
||||
},
|
||||
"sops-nix": {
|
||||
|
@ -1313,7 +1363,7 @@
|
|||
},
|
||||
"srvos": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_7"
|
||||
"nixpkgs": "nixpkgs_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1749085476,
|
||||
|
@ -1430,7 +1480,7 @@
|
|||
},
|
||||
"taskshell": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_4",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nixpkgs": [
|
||||
"taskwarrior",
|
||||
"nixpkgs"
|
||||
|
@ -1453,7 +1503,7 @@
|
|||
"taskwarrior": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_8",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"taskshell": "taskshell",
|
||||
"treefmt-nix": "treefmt-nix_7"
|
||||
},
|
||||
|
|
55
flake.nix
55
flake.nix
|
@ -20,6 +20,7 @@
|
|||
landingpage.url = "github:mrVanDalo/landingpage";
|
||||
nix-topology.inputs.nixpkgs.follows = "nixpkgs";
|
||||
nix-topology.url = "github:oddlama/nix-topology";
|
||||
nixgl.url = "github:nix-community/nixGL";
|
||||
nixos-anywhere.url = "github:nix-community/nixos-anywhere";
|
||||
nixos-hardware.url = "github:nixos/nixos-hardware";
|
||||
nixpkgs-unstable-small.url = "github:nixos/nixpkgs/nixos-unstable-small";
|
||||
|
@ -28,10 +29,11 @@
|
|||
permown.url = "github:mrVanDalo/module.permown";
|
||||
polygon-art.url = "git+https://git.ingolf-wagner.de/palo/polygon-art.git";
|
||||
private-parts.inputs.nixpkgs.follows = "nixpkgs"; # only private input
|
||||
private-parts.url = "git+ssh://forgejo@git.ingolf-wagner.de:2222/palo/nixos-private-parts.git?ref=main";
|
||||
private-parts.url = "git+https://git.ingolf-wagner.de/palo/nixos-private-parts.git?ref=main";
|
||||
#private-parts.url = "git+ssh://forgejo@git.ingolf-wagner.de:2222/palo/nixos-private-parts.git?ref=main";
|
||||
#private-parts.url = "git+file:///home/palo/dev/nixos/nixos-private-parts";
|
||||
share-http.inputs.nixpkgs.follows = "nixpkgs"; # only private input
|
||||
share-http.url = "git+ssh://forgejo@git.ingolf-wagner.de:2222/palo/share-host.git?ref=main";
|
||||
share-http.url = "git+https://git.ingolf-wagner.de/palo/share-host.git?ref=main";
|
||||
srvos.url = "github:nix-community/srvos";
|
||||
stylix.inputs.home-manager.follows = "home-manager";
|
||||
stylix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -64,6 +66,7 @@
|
|||
home-manager-utils,
|
||||
landingpage,
|
||||
nix-topology,
|
||||
nixgl,
|
||||
nixos-anywhere,
|
||||
nixos-hardware,
|
||||
nixpkgs,
|
||||
|
@ -107,6 +110,7 @@
|
|||
inherit allowUnfree permittedInsecurePackages;
|
||||
};
|
||||
overlays = [
|
||||
nixgl.overlay
|
||||
(_self: _super: {
|
||||
unstable-small = import nixpkgs-unstable-small {
|
||||
inherit system;
|
||||
|
@ -396,8 +400,55 @@
|
|||
./nix/devshells.nix
|
||||
./nix/packages
|
||||
./nix/topology
|
||||
|
||||
home-manager.flakeModules.home-manager
|
||||
];
|
||||
|
||||
flake = {
|
||||
# Define home-manager configurations
|
||||
homeConfigurations.ingolf-wagner = home-manager.lib.homeManagerConfiguration {
|
||||
pkgs = meta.pkgs;
|
||||
extraSpecialArgs = {
|
||||
osConfig = {
|
||||
networking.hostName = "jobrad-laptop";
|
||||
};
|
||||
};
|
||||
modules = [
|
||||
./homes/ingolf-wagner
|
||||
|
||||
stylix.homeModules.stylix
|
||||
taskwarrior.hmModules.bugwarrior
|
||||
|
||||
(
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
|
||||
home.packages = [ pkgs.nixgl.nixGLIntel ];
|
||||
|
||||
#home-manager-utils.hmModule
|
||||
# { home-manager.users.mainUser.gui.enable = true; }
|
||||
stylix.enable = true;
|
||||
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-light-medium.yaml";
|
||||
stylix.image = ./assets/wallpaper.png;
|
||||
|
||||
# no need for hyperland
|
||||
# https://github.com/danth/stylix/issues/543
|
||||
stylix.targets.hyprpaper.enable = lib.mkForce false;
|
||||
stylix.targets.hyprland.enable = lib.mkForce false;
|
||||
stylix.targets.swaylock.enable = lib.mkForce false;
|
||||
stylix.targets.qt.platform = "qtct";
|
||||
|
||||
# running into strange problems
|
||||
# fixme: remove if possible
|
||||
stylix.targets.vim.enable = lib.mkForce false;
|
||||
stylix.targets.mako.enable = lib.mkForce false;
|
||||
}
|
||||
)
|
||||
];
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
# Define your clan
|
||||
clan = {
|
||||
# Clan wide settings.
|
||||
|
|
35
homes/ingolf-wagner/default.nix
Normal file
35
homes/ingolf-wagner/default.nix
Normal file
|
@ -0,0 +1,35 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [
|
||||
../palo
|
||||
./keymapper.nix
|
||||
./taskwarrior.nix
|
||||
];
|
||||
|
||||
gui.enable = true;
|
||||
gui.bugwarrior.enable = false;
|
||||
|
||||
home.username = "ingolf-wagner";
|
||||
home.homeDirectory = "/home/ingolf-wagner";
|
||||
|
||||
home.packages = [
|
||||
pkgs.home-manager
|
||||
pkgs.silver-searcher
|
||||
pkgs.arandr
|
||||
pkgs.xterm # just in case
|
||||
];
|
||||
|
||||
home.shellAliases = {
|
||||
ll = "ls -lah";
|
||||
};
|
||||
|
||||
# todo check home-manager nixGL options
|
||||
# we need nixGL to run kitty, because it depends on GL it's not nice, but not to bad either
|
||||
xsession.windowManager.i3.config.terminal = lib.mkForce "nixGLIntel kitty";
|
||||
|
||||
programs.git = {
|
||||
signing.signByDefault = lib.mkForce false;
|
||||
userEmail = lib.mkForce "ingolf-wagner@jobrad.org";
|
||||
};
|
||||
|
||||
}
|
23
homes/ingolf-wagner/keymapper.nix
Normal file
23
homes/ingolf-wagner/keymapper.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
# [keymapper](https://github.com/houmain/keymapper)
|
||||
# - install system-wide by the provided releases
|
||||
# - don't install pkgs.keymapper to avoid version incompatibilities
|
||||
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
|
||||
xdg.configFile."keymapper.conf".text = ''
|
||||
CapsLock >> Escape
|
||||
AltLeft{I} >> ArrowUp
|
||||
AltLeft{K} >> ArrowDown
|
||||
AltLeft{J} >> ArrowLeft
|
||||
AltLeft{L} >> ArrowRight
|
||||
'';
|
||||
|
||||
xsession.windowManager.i3.config.startup = [
|
||||
{
|
||||
command = "keymapper";
|
||||
always = true;
|
||||
}
|
||||
|
||||
];
|
||||
}
|
13
homes/ingolf-wagner/taskwarrior.nix
Normal file
13
homes/ingolf-wagner/taskwarrior.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.taskwarrior = {
|
||||
enable = true;
|
||||
package = pkgs.taskwarrior3;
|
||||
config = {
|
||||
uda.taskwarrior-tui = {
|
||||
keyconfig.delete = "X";
|
||||
keyconfig.done = "D";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -8,4 +8,8 @@
|
|||
./packages.nix
|
||||
./social.nix
|
||||
];
|
||||
|
||||
# todo update all stuff
|
||||
programs.hwatch.enable = true; # instead of `watch`
|
||||
programs.numbat.enable = true; # instead of `units`
|
||||
}
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
{ pkgs, config, ... }:
|
||||
{
|
||||
|
||||
stylix.enable = true;
|
||||
|
||||
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-light-medium.yaml";
|
||||
|
||||
stylix.fonts = {
|
||||
|
|
|
@ -15,40 +15,59 @@ in
|
|||
|
||||
{
|
||||
|
||||
config = mkIf config.gui.enable {
|
||||
|
||||
bugwarrior.enable = true;
|
||||
|
||||
home.packages = [
|
||||
|
||||
pkgs.timewarrior
|
||||
pkgs.bugwarrior
|
||||
|
||||
taskwarrior
|
||||
pkgs.tasksh
|
||||
pkgs.taskwarrior-hooks
|
||||
(pkgs.writeShellScriptBin "tsak" ''${taskwarrior}/bin/task "$@"'')
|
||||
|
||||
pkgs.vit
|
||||
taskwarrior-tui
|
||||
(pkgs.writers.writeBashBin "active" "${taskwarrior-tui}/bin/taskwarrior-tui -r active")
|
||||
(pkgs.writers.writeBashBin "todo" "${taskwarrior-tui}/bin/taskwarrior-tui -r todo")
|
||||
|
||||
(pkgs.writers.writeBashBin "calendar" ''
|
||||
${taskwarrior}/bin/task calendar
|
||||
${taskwarrior}/bin/task calendar_report
|
||||
'')
|
||||
|
||||
# todo : belongs to calendar.nix
|
||||
pkgs.vdirsyncer
|
||||
pkgs.khal
|
||||
(pkgs.writers.writeBashBin "kalendar" ''
|
||||
${pkgs.vdirsyncer}/bin/vdirsyncer sync
|
||||
${pkgs.khal}/bin/ikhal
|
||||
'')
|
||||
|
||||
];
|
||||
options.gui = {
|
||||
taskwarrior.enable = mkOption {
|
||||
type = lib.types.bool;
|
||||
default = config.gui.enable;
|
||||
};
|
||||
|
||||
bugwarrior.enable = mkOption {
|
||||
type = lib.types.bool;
|
||||
default = config.gui.taskwarrior.enable;
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkMerge [
|
||||
|
||||
(lib.mkIf config.gui.bugwarrior.enable {
|
||||
bugwarrior.enable = true;
|
||||
home.packages = [
|
||||
pkgs.bugwarrior
|
||||
];
|
||||
})
|
||||
|
||||
(lib.mkIf config.gui.taskwarrior.enable {
|
||||
|
||||
home.packages = [
|
||||
|
||||
pkgs.timewarrior
|
||||
|
||||
taskwarrior
|
||||
pkgs.tasksh
|
||||
pkgs.taskwarrior-hooks
|
||||
(pkgs.writeShellScriptBin "tsak" ''${taskwarrior}/bin/task "$@"'')
|
||||
|
||||
pkgs.vit
|
||||
taskwarrior-tui
|
||||
(pkgs.writers.writeBashBin "active" "${taskwarrior-tui}/bin/taskwarrior-tui -r active")
|
||||
(pkgs.writers.writeBashBin "todo" "${taskwarrior-tui}/bin/taskwarrior-tui -r todo")
|
||||
|
||||
(pkgs.writers.writeBashBin "calendar" ''
|
||||
${taskwarrior}/bin/task calendar
|
||||
${taskwarrior}/bin/task calendar_report
|
||||
'')
|
||||
|
||||
# todo : belongs to calendar.nix
|
||||
pkgs.vdirsyncer
|
||||
pkgs.khal
|
||||
(pkgs.writers.writeBashBin "kalendar" ''
|
||||
${pkgs.vdirsyncer}/bin/vdirsyncer sync
|
||||
${pkgs.khal}/bin/ikhal
|
||||
'')
|
||||
|
||||
];
|
||||
|
||||
})
|
||||
];
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue