dank-calendar: init (#2381)

Link: https://github.com/nix-community/stylix/pull/2378
Link: https://github.com/nix-community/stylix/pull/2381

Tested-by: Thomas Bemme <thomas.bemme@gmail.com>
Tested-by: Noah Biewesch <dev@noahbiewesch.com>
Reviewed-by: Noah Biewesch <dev@noahbiewesch.com>
This commit is contained in:
Thomas Bemme 2026-06-29 23:06:30 +02:00 committed by GitHub
parent a04ba47b73
commit a1fdfdcd52
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 111 additions and 0 deletions

21
flake/dev/flake.lock generated
View file

@ -1,5 +1,25 @@
{
"nodes": {
"dank-calendar": {
"inputs": {
"nixpkgs": [
"dev-nixpkgs"
]
},
"locked": {
"lastModified": 1782499261,
"narHash": "sha256-W+tmdccdHqFL1v9WUmSIx12aXdzGsQDgtvvY7FLPhoE=",
"owner": "AvengeMedia",
"repo": "dankcalendar",
"rev": "9596d9645002dcc6403bf2226445af2309edc6f4",
"type": "github"
},
"original": {
"owner": "AvengeMedia",
"repo": "dankcalendar",
"type": "github"
}
},
"dankMaterialShell": {
"inputs": {
"flake-compat": [
@ -275,6 +295,7 @@
},
"root": {
"inputs": {
"dank-calendar": "dank-calendar",
"dankMaterialShell": "dankMaterialShell",
"dev-flake-parts": "dev-flake-parts",
"dev-nixpkgs": "dev-nixpkgs",

View file

@ -130,6 +130,11 @@
dev-systems.url = "github:nix-systems/default";
# keep-sorted start block=yes newline_separated=yes
dank-calendar = {
url = "github:AvengeMedia/dankcalendar";
inputs.nixpkgs.follows = "dev-nixpkgs";
};
dankMaterialShell = {
url = "github:AvengeMedia/DankMaterialShell";
inputs = {

View file

@ -243,6 +243,13 @@
githubId = 19377854;
name = "jamie";
};
thbemme = {
email = "thomas.bemme@googlemail.com";
github = "thbemme";
githubId = 14074615;
matrix = "@riza:chaos.jetzt";
name = "Thomas Bemme";
};
trueNAHO = {
email = "nix@noahbiewesch.com";
github = "trueNAHO";

View file

@ -0,0 +1,49 @@
{
mkTarget,
lib,
options,
pkgs,
...
}:
mkTarget {
config = lib.optionals (options.programs ? dank-calendar) [
(
{ colors }:
{
programs.dank-calendar.settings = {
colorSource = "custom";
customThemeFile =
let
theme = with colors.withHashtag; {
name = "Stylix";
primary = base0D;
primaryText = base00;
primaryContainer = base0C;
secondary = base0E;
surface = base01;
surfaceText = base05;
surfaceVariant = base02;
surfaceVariantText = base04;
surfaceTint = base0D;
background = base00;
backgroundText = base05;
outline = base03;
surfaceContainer = base01;
surfaceContainerHigh = base02;
surfaceContainerHighest = base03;
error = base08;
warning = base0A;
info = base0C;
};
in
pkgs.writeText "dank-calendar-stylix-color-theme.json" (
builtins.toJSON {
dark = theme;
light = theme;
}
);
};
}
)
];
}

View file

@ -0,0 +1,6 @@
{ lib, ... }:
{
name = "DankCalendar";
homepage = "https://github.com/AvengeMedia/dankcalendar";
maintainers = [ lib.maintainers.thbemme ];
}

View file

@ -0,0 +1,12 @@
{ lib, ... }:
{
stylix.testbed.ui = {
graphicalEnvironment = "hyprland";
command.text = "dcal";
sendNotifications = true;
};
home-manager.sharedModules = lib.singleton {
programs.dank-calendar.enable = true;
};
}

View file

@ -89,6 +89,13 @@
github = "skiletro";
githubId = 19377854;
};
thbemme = {
email = "thomas.bemme@googlemail.com";
github = "thbemme";
githubId = 14074615;
matrix = "@riza:chaos.jetzt";
name = "Thomas Bemme";
};
vidhanio = {
email = "me@vidhan.io";
name = "Vidhan Bhatt";

View file

@ -35,6 +35,10 @@ let
{
inherit (inputs.spicetify-nix.nixosModules) spicetify;
dank-calendar.home-manager.sharedModules = [
inputs.dank-calendar.homeModules.default
];
dank-material-shell.home-manager.sharedModules = [
inputs.dankMaterialShell.homeModules.dank-material-shell
];