Skip to content

Commit 0e094fa

Browse files
committed
first commit
0 parents  commit 0e094fa

29 files changed

Lines changed: 705 additions & 0 deletions

.github/workflows/test.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
on:
2+
pull_request:
3+
push:
4+
concurrency:
5+
group: ${{ github.workflow }}-${{ github.ref }}
6+
cancel-in-progress: true
7+
jobs:
8+
flake-check:
9+
strategy:
10+
matrix:
11+
os: [ubuntu-latest, macos-latest]
12+
name: Nix flake check ${{matrix.os}}
13+
runs-on: ${{matrix.os}}
14+
steps:
15+
- uses: wimpysworld/nothing-but-nix@main
16+
if: matrix.os == 'ubuntu-latest'
17+
- uses: DeterminateSystems/nix-installer-action@main
18+
- uses: DeterminateSystems/magic-nix-cache-action@main
19+
- uses: actions/checkout@v5
20+
- run: nix flake metadata
21+
- run: |
22+
cat <<-EOF > modules/ci-runtime.nix
23+
{
24+
_module.args.CI = true;
25+
}
26+
EOF
27+
- run: nix flake check

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*.qcow2

README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Getting Started Guide
2+
3+
- Be sure to read the [den documentation](https://vic.github.io/den)
4+
5+
- Update den input.
6+
7+
```console
8+
nix flake update den
9+
```
10+
11+
- Build
12+
13+
```console
14+
# default action is build
15+
nix run .#deck
16+
17+
# pass any other nh action
18+
nix run .#deck -- switch
19+
```
20+
21+
- Run the VM
22+
23+
See [modules/vm.nix](modules/vm.nix)
24+
25+
```console
26+
nix run .#vm
27+
```

flake.lock

Lines changed: 133 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# DO-NOT-EDIT. This file was auto-generated using github:vic/flake-file.
2+
# Use `nix run .#write-flake` to regenerate it.
3+
{
4+
5+
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules);
6+
7+
inputs = {
8+
den.url = "github:vic/den";
9+
flake-aspects.url = "github:vic/flake-aspects";
10+
flake-file.url = "github:vic/flake-file";
11+
flake-parts = {
12+
inputs.nixpkgs-lib.follows = "nixpkgs-lib";
13+
url = "github:hercules-ci/flake-parts";
14+
};
15+
home-manager = {
16+
inputs.nixpkgs.follows = "nixpkgs";
17+
url = "github:nix-community/home-manager";
18+
};
19+
import-tree.url = "github:vic/import-tree";
20+
nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz";
21+
nixpkgs-lib.follows = "nixpkgs";
22+
};
23+
24+
}

modules/astra.nix

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{ den, ... }:
2+
{
3+
# user aspect
4+
den.aspects.astra = {
5+
includes = [
6+
den.provides.primary-user
7+
(den.provides.user-shell "bash")
8+
9+
den.aspects.git
10+
];
11+
12+
homeManager =
13+
{ pkgs, ... }:
14+
{
15+
home.packages = [ pkgs.btop ];
16+
};
17+
18+
# user can provide NixOS configurations
19+
# to any host it is included on
20+
# nixos = { pkgs, ... }: { };
21+
};
22+
}

modules/core/audio.nix

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
den.aspects.audio = {
3+
nixos = {
4+
security.rtkit.enable = true;
5+
services.pipewire = {
6+
enable = true;
7+
alsa.enable = true;
8+
alsa.support32Bit = true;
9+
pulse.enable = true;
10+
};
11+
};
12+
};
13+
}

modules/core/localization.nix

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
den.aspects.localization = {
3+
includes = [
4+
5+
];
6+
7+
nixos = {
8+
time.timeZone = "America/Chicago";
9+
i18n = {
10+
defaultLocale = "en_US.UTF-8";
11+
extraLocaleSettings = {
12+
LC_ADDRESS = "en_US.UTF-8";
13+
LC_IDENTIFICATION = "en_US.UTF-8";
14+
LC_MEASUREMENT = "en_US.UTF-8";
15+
LC_MONETARY = "en_US.UTF-8";
16+
LC_NAME = "en_US.UTF-8";
17+
LC_NUMERIC = "en_US.UTF-8";
18+
LC_PAPER = "en_US.UTF-8";
19+
LC_TELEPHONE = "en_US.UTF-8";
20+
LC_TIME = "en_US.UTF-8";
21+
};
22+
};
23+
};
24+
25+
homeManager = {
26+
27+
};
28+
};
29+
}

modules/core/network.nix

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
den.aspects.network = {
3+
nixos = {
4+
networking = {
5+
networkmanager.enable = true;
6+
firewall.enable = false;
7+
};
8+
};
9+
};
10+
}

modules/core/ssh.nix

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
den.aspects.ssh = {
3+
includes = [
4+
5+
];
6+
7+
nixos = {
8+
services.openssh = {
9+
enable = true;
10+
openFirewall = true;
11+
settings = {
12+
PasswordAuthentication = true;
13+
PermitRootLogin = "no";
14+
X11Forwarding = true;
15+
X11UseLocalhost = true;
16+
};
17+
};
18+
};
19+
20+
homeManager = {
21+
22+
};
23+
};
24+
}

0 commit comments

Comments
 (0)