Compare commits

..

3 commits

Author SHA1 Message Date
cato-001
2d11922807 feat: add nix flake 2026-01-19 13:20:24 +01:00
cato-001
e56caff408 feat: add readme 2026-01-19 13:20:17 +01:00
cato-001
6b507c849a feat: add default and golang nix templates 2026-01-19 13:19:44 +01:00
20 changed files with 317 additions and 1 deletions

1
.direnv/flake-profile Symbolic link
View file

@ -0,0 +1 @@
flake-profile-1-link

View file

@ -0,0 +1 @@
/nix/store/yhc48v456plfcphg7x5s13lnlkrg5vnc-nix-shell-env

5
.envrc Normal file
View file

@ -0,0 +1,5 @@
#!/usr/bin/env bash
watch_file flake.nix flake.lock devshell.nix
use flake
source_env_if_exists .envrc.local

6
.gitignore vendored Normal file
View file

@ -0,0 +1,6 @@
# direnv
.direnv/
# nix
result
result-*

View file

@ -1,2 +1,13 @@
# templates
# Project Templates
This repo contains some project, that I use quite often.
## Usage
> Default nix flake
>
> `nix flake init -t github:cato-001/templates`
> Golang nix flake
>
> `nix flake init -t github:cato-001/templates#golang`

5
devshell.nix Normal file
View file

@ -0,0 +1,5 @@
{ pkgs }:
pkgs.mkShell {
packages = [ ];
}

64
flake.lock generated Normal file
View file

@ -0,0 +1,64 @@
{
"nodes": {
"blueprint": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"systems": "systems"
},
"locked": {
"lastModified": 1763308703,
"narHash": "sha256-O9Y+Wer8wOh+N+4kcCK5p/VLrXyX+ktk0/s3HdZvJzk=",
"owner": "numtide",
"repo": "blueprint",
"rev": "5a9bba070f801d63e2af3c9ef00b86b212429f4f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "blueprint",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1767047869,
"narHash": "sha256-tzYsEzXEVa7op1LTnrLSiPGrcCY6948iD0EcNLWcmzo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "89dbf01df72eb5ebe3b24a86334b12c27d68016a",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"blueprint": "blueprint",
"nixpkgs": "nixpkgs"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

14
flake.nix Normal file
View file

@ -0,0 +1,14 @@
{
description = "My common project templates";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-25.11";
blueprint = {
url = "github:numtide/blueprint";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs: inputs.blueprint { inherit inputs; };
}

5
templates/default/.envrc Normal file
View file

@ -0,0 +1,5 @@
#!/usr/bin/env bash
watch_file flake.nix flake.lock devshell.nix
use flake
source_env_if_exists .envrc.local

6
templates/default/.gitignore vendored Normal file
View file

@ -0,0 +1,6 @@
# direnv
.direnv/
# nix
result
result-*

View file

@ -0,0 +1,7 @@
{ pkgs }:
pkgs.mkShell {
packages = [ ];
env = { };
}

View file

@ -0,0 +1,14 @@
{
description = "TODO: please replace";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-25.11";
blueprint = {
url = "github:numtide/blueprint";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs: inputs.blueprint { inherit inputs; };
}

5
templates/golang/.envrc Normal file
View file

@ -0,0 +1,5 @@
#!/usr/bin/env bash
watch_file flake.nix flake.lock devshell.nix
use flake
source_env_if_exists .envrc.local

6
templates/golang/.gitignore vendored Normal file
View file

@ -0,0 +1,6 @@
# direnv
.direnv/
# nix
result
result-*

View file

@ -0,0 +1,10 @@
{ pkgs, perSystem, ... }:
pkgs.mkShell {
packages = [
pkgs.go
perSystem.gomod2nix.default
];
env = { };
}

119
templates/golang/flake.lock generated Normal file
View file

@ -0,0 +1,119 @@
{
"nodes": {
"blueprint": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"systems": "systems"
},
"locked": {
"lastModified": 1763308703,
"narHash": "sha256-O9Y+Wer8wOh+N+4kcCK5p/VLrXyX+ktk0/s3HdZvJzk=",
"owner": "numtide",
"repo": "blueprint",
"rev": "5a9bba070f801d63e2af3c9ef00b86b212429f4f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "blueprint",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems_2"
},
"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"
}
},
"gomod2nix": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1767019875,
"narHash": "sha256-NodN+lhWTD59b44Q2bPjE1edINfjfRkQYdZsrxifCeU=",
"owner": "nix-community",
"repo": "gomod2nix",
"rev": "49662a44272806ff785df2990a420edaaca15db4",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "gomod2nix",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1767047869,
"narHash": "sha256-tzYsEzXEVa7op1LTnrLSiPGrcCY6948iD0EcNLWcmzo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "89dbf01df72eb5ebe3b24a86334b12c27d68016a",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"blueprint": "blueprint",
"gomod2nix": "gomod2nix",
"nixpkgs": "nixpkgs"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

View file

@ -0,0 +1,22 @@
{
description = "TODO: please replace";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-25.11";
blueprint = {
url = "github:numtide/blueprint";
inputs.nixpkgs.follows = "nixpkgs";
};
gomod2nix = {
url = "github:nix-community/gomod2nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs: inputs.blueprint {
inherit inputs;
nixpkgs.overlays = [ inputs.gomod2nix.overlays.default ];
};
}

View file

@ -0,0 +1,8 @@
{ pkgs, ... }:
pkgs.buildGoApplication {
pname = "";
version = "0.0.1";
src = ./src;
modules = ./src/gomod2nix.toml;
}

View file

View file

@ -0,0 +1,7 @@
package main
import "fmt"
func main() {
fmt.Println("Hello!")
}