alpha
Login
or
Join now
lass.pds.lassul.us
/
superconfig
Star
0
Fork
1
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
This repository has no description
Star
0
Fork
1
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
1
Pipelines
machines: move barnacle from darwin
author
lassulus
date
1 year ago
(Jun 16, 2025, 6:18 PM CEST)
commit
aa610dee
aa610dee6204956d6ee154a3dbb6a7a5054770cd
parent
b03eb1ca
b03eb1ca3dc904a1e6e4256e061dddfe2a7ecdff
+151
-140
3 changed files
Expand all
Collapse all
Unified
Split
darwin
barnacle
config.nix
flake.nix
machines
barnacle
configuration.nix
+8
-4
flake.nix
View file
Reviewed
···
83
83
"laptop"
84
84
"focus"
85
85
];
86
86
+
barnacle = {
87
87
+
machineClass = "darwin";
88
88
+
tags = [
89
89
+
"laptop"
90
90
+
"focus"
91
91
+
];
92
92
+
};
86
93
icarus.tags = [ "laptop" ];
87
94
prism.tags = [ "server" ];
88
95
neoprism.tags = [ "server" ];
···
120
127
);
121
128
flake.nixosConfigurations = clan.nixosConfigurations;
122
129
flake.clanInternals = clan.clanInternals;
130
130
+
flake.darwinConfigurations = clan.darwinConfigurations;
123
131
perSystem =
124
132
{
125
133
lib,
···
157
165
];
158
166
};
159
167
};
160
160
-
flake.darwinConfigurations.barnacle = inputs.nix-darwin.lib.darwinSystem {
161
161
-
specialArgs.self = self;
162
162
-
modules = [ ./darwin/barnacle/config.nix ];
163
163
-
};
164
168
flake.keys = {
165
169
pgp.yubi = {
166
170
key = ./keys/yubi.pgp;
-136
darwin/barnacle/config.nix
Reviewed
···
1
1
-
{ pkgs, self, ... }:
2
2
-
3
3
-
{
4
4
-
imports = [
5
5
-
# ./rosetta.nix
6
6
-
self.inputs.nix-index-database.darwinModules.nix-index
7
7
-
];
8
8
-
programs.nix-index-database.comma.enable = true;
9
9
-
10
10
-
nixpkgs.hostPlatform = "aarch64-darwin";
11
11
-
environment.systemPackages = [
12
12
-
self.packages.${pkgs.system}.nvim
13
13
-
self.packages.${pkgs.system}.pass
14
14
-
self.packages.${pkgs.system}.passmenu
15
15
-
16
16
-
# zsh dependencies
17
17
-
pkgs.fzf
18
18
-
pkgs.atuin
19
19
-
20
20
-
pkgs.gnupg
21
21
-
pkgs.pinentry_mac
22
22
-
pkgs.lazygit
23
23
-
pkgs.sshuttle
24
24
-
pkgs.git
25
25
-
pkgs.element-desktop
26
26
-
pkgs.iterm2
27
27
-
(pkgs.firefox-devedition-bin-unwrapped.overrideAttrs (o: {
28
28
-
meta = o.meta // {
29
29
-
license = pkgs.lib.licenses.free;
30
30
-
};
31
31
-
}))
32
32
-
pkgs.ripgrep
33
33
-
pkgs.alt-tab-macos
34
34
-
pkgs.zed-editor
35
35
-
pkgs.nixd
36
36
-
pkgs.nil
37
37
-
];
38
38
-
39
39
-
# Use a custom configuration.nix location.
40
40
-
# $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
41
41
-
# environment.darwinConfig = "$HOME/.config/nixpkgs/darwin/configuration.nix";
42
42
-
43
43
-
nix = {
44
44
-
package = pkgs.nix;
45
45
-
settings = {
46
46
-
extra-experimental-features = [
47
47
-
"nix-command"
48
48
-
"flakes"
49
49
-
];
50
50
-
};
51
51
-
};
52
52
-
53
53
-
# homebrew = {
54
54
-
# enable = true;
55
55
-
# casks = [
56
56
-
# "gpg-suite"
57
57
-
# ];
58
58
-
# };
59
59
-
60
60
-
# keyboard settings
61
61
-
system.keyboard = {
62
62
-
enableKeyMapping = true;
63
63
-
};
64
64
-
65
65
-
# Add skhd for keyboard shortcuts
66
66
-
services.skhd = {
67
67
-
enable = true;
68
68
-
skhdConfig = ''
69
69
-
# Open passmenu with Hyper-P
70
70
-
ctrl + shift + alt + cmd - p : /run/current-system/sw/bin/passmenu
71
71
-
'';
72
72
-
};
73
73
-
74
74
-
system.defaults = {
75
75
-
# minimal dock
76
76
-
dock = {
77
77
-
autohide = true;
78
78
-
orientation = "left";
79
79
-
show-process-indicators = false;
80
80
-
show-recents = false;
81
81
-
static-only = true;
82
82
-
};
83
83
-
# a finder that tells me what I want to know and lets me work
84
84
-
finder = {
85
85
-
AppleShowAllExtensions = true;
86
86
-
ShowPathbar = true;
87
87
-
FXEnableExtensionChangeWarning = false;
88
88
-
};
89
89
-
# Tab between form controls and F-row that behaves as F1-F12
90
90
-
NSGlobalDomain = {
91
91
-
AppleKeyboardUIMode = 3;
92
92
-
"com.apple.keyboard.fnState" = true;
93
93
-
};
94
94
-
};
95
95
-
96
96
-
nix.linux-builder.enable = true;
97
97
-
nix.linux-builder.supportedFeatures = [
98
98
-
"benchmark"
99
99
-
"big-parallel"
100
100
-
"kvm"
101
101
-
"nixos-test"
102
102
-
"uid-range"
103
103
-
];
104
104
-
nix.linux-builder.config = {
105
105
-
imports = [
106
106
-
../../2configs/container-tests.nix
107
107
-
];
108
108
-
};
109
109
-
110
110
-
# Create /etc/zshrc that loads the nix-darwin environment.
111
111
-
programs.zsh.enable = true; # default shell on catalina
112
112
-
programs.zsh.shellInit = self.packages.${pkgs.system}.zsh.zshrc;
113
113
-
114
114
-
# enable sudo touch
115
115
-
security.pam.services.sudo_local.touchIdAuth = true;
116
116
-
117
117
-
# disable natural scrolling
118
118
-
system.defaults.NSGlobalDomain."com.apple.swipescrolldirection" = false;
119
119
-
programs.direnv.enable = true;
120
120
-
programs.nix-index.enable = true;
121
121
-
programs.gnupg.agent = {
122
122
-
enable = true;
123
123
-
enableSSHSupport = true;
124
124
-
};
125
125
-
126
126
-
# Used for backwards compatibility, please read the changelog before changing.
127
127
-
# $ darwin-rebuild changelog
128
128
-
system.stateVersion = 6;
129
129
-
130
130
-
system.primaryUser = "lassulus";
131
131
-
# enable ssh in the macos system settings:
132
132
-
# apple -> system settings -> general -> sharing -> remote login
133
133
-
users.users.lassulus.openssh.authorizedKeys.keys = [
134
134
-
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIb3uuMqE/xSJ7WL/XpJ6QOj4aSmh0Ga+GtmJl3CDvljGuIeGCKh7YAoqZAi051k5j6ZWowDrcWYHIOU+h0eZCesgCf+CvunlXeUz6XShVMjyZo87f2JPs2Hpb+u/ieLx4wGQvo/Zw89pOly/vqpaX9ZwyIR+U81IAVrHIhqmrTitp+2FwggtaY4FtD6WIyf1hPtrrDecX8iDhnHHuGhATr8etMLwdwQ2kIBx5BBgCoiuW7wXnLUBBVYeO3II957XP/yU82c+DjSVJtejODmRAM/3rk+B7pdF5ShRVVFyB6JJR+Qd1g8iSH+2QXLUy3NM2LN5u5p2oTjUOzoEPWZo7lykZzmIWd/5hjTW9YiHC+A8xsCxQqs87D9HK9hLA6udZ6CGkq4hG/6wFwNjSMnv30IcHZzx6IBihNGbrisrJhLxEiKWpMKYgeemhIirefXA6UxVfiwHg3gJ8BlEBsj0tl/HVARifR2y336YINEn8AsHGhwrPTBFOnBTmfA/VnP1NlWHzXCfVimP6YVvdoGCCnAwvFuJ+ZuxmZ3UzBb2TenZZOzwzV0sUzZk0D1CaSBFJUU3oZNOkDIM6z5lIZgzsyKwb38S8Vs3HYE+Dqpkfsl4yeU5ldc6DwrlVwuSIa4vVus4eWD3gDGFrx98yaqOx17pc4CC9KXk/2TjtJY5xmQ== lass@yubikey"
135
135
-
];
136
136
-
}
+143
machines/barnacle/configuration.nix
View file
Reviewed
···
1
1
+
{ pkgs, self, ... }:
2
2
+
3
3
+
{
4
4
+
imports = [
5
5
+
# ./rosetta.nix
6
6
+
self.inputs.nix-index-database.darwinModules.nix-index
7
7
+
];
8
8
+
clan.core.networking.targetHost = "root@localhost";
9
9
+
programs.nix-index-database.comma.enable = true;
10
10
+
11
11
+
nixpkgs.hostPlatform = "aarch64-darwin";
12
12
+
environment.systemPackages = [
13
13
+
self.packages.${pkgs.system}.nvim
14
14
+
self.packages.${pkgs.system}.pass
15
15
+
self.packages.${pkgs.system}.passmenu
16
16
+
17
17
+
# zsh dependencies
18
18
+
pkgs.fzf
19
19
+
pkgs.atuin
20
20
+
21
21
+
pkgs.gnupg
22
22
+
pkgs.pinentry_mac
23
23
+
pkgs.lazygit
24
24
+
pkgs.sshuttle
25
25
+
pkgs.git
26
26
+
pkgs.element-desktop
27
27
+
pkgs.iterm2
28
28
+
(pkgs.firefox-devedition-bin-unwrapped.overrideAttrs (o: {
29
29
+
meta = o.meta // {
30
30
+
license = pkgs.lib.licenses.free;
31
31
+
};
32
32
+
}))
33
33
+
pkgs.ripgrep
34
34
+
pkgs.alt-tab-macos
35
35
+
pkgs.zed-editor
36
36
+
pkgs.nixd
37
37
+
pkgs.nil
38
38
+
];
39
39
+
40
40
+
# Use a custom configuration.nix location.
41
41
+
# $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
42
42
+
# environment.darwinConfig = "$HOME/.config/nixpkgs/darwin/configuration.nix";
43
43
+
44
44
+
nix = {
45
45
+
package = pkgs.nix;
46
46
+
settings = {
47
47
+
extra-experimental-features = [
48
48
+
"nix-command"
49
49
+
"flakes"
50
50
+
];
51
51
+
};
52
52
+
};
53
53
+
54
54
+
# homebrew = {
55
55
+
# enable = true;
56
56
+
# casks = [
57
57
+
# "gpg-suite"
58
58
+
# ];
59
59
+
# };
60
60
+
61
61
+
# keyboard settings
62
62
+
system.keyboard = {
63
63
+
enableKeyMapping = true;
64
64
+
};
65
65
+
66
66
+
# Add skhd for keyboard shortcuts
67
67
+
services.skhd = {
68
68
+
enable = true;
69
69
+
skhdConfig = ''
70
70
+
# Open passmenu with Hyper-P
71
71
+
ctrl + shift + alt + cmd - p : /run/current-system/sw/bin/passmenu
72
72
+
'';
73
73
+
};
74
74
+
75
75
+
system.defaults = {
76
76
+
# minimal dock
77
77
+
dock = {
78
78
+
autohide = true;
79
79
+
orientation = "left";
80
80
+
show-process-indicators = false;
81
81
+
show-recents = false;
82
82
+
static-only = true;
83
83
+
};
84
84
+
# a finder that tells me what I want to know and lets me work
85
85
+
finder = {
86
86
+
AppleShowAllExtensions = true;
87
87
+
ShowPathbar = true;
88
88
+
FXEnableExtensionChangeWarning = false;
89
89
+
};
90
90
+
# Tab between form controls and F-row that behaves as F1-F12
91
91
+
NSGlobalDomain = {
92
92
+
AppleKeyboardUIMode = 3;
93
93
+
"com.apple.keyboard.fnState" = true;
94
94
+
};
95
95
+
};
96
96
+
97
97
+
nix.linux-builder.enable = true;
98
98
+
nix.linux-builder.supportedFeatures = [
99
99
+
"benchmark"
100
100
+
"big-parallel"
101
101
+
"kvm"
102
102
+
"nixos-test"
103
103
+
"uid-range"
104
104
+
];
105
105
+
nix.linux-builder.config = {
106
106
+
imports = [
107
107
+
../../2configs/container-tests.nix
108
108
+
];
109
109
+
};
110
110
+
111
111
+
# Create /etc/zshrc that loads the nix-darwin environment.
112
112
+
programs.zsh.enable = true; # default shell on catalina
113
113
+
programs.zsh.shellInit = self.packages.${pkgs.system}.zsh.zshrc;
114
114
+
115
115
+
# enable sudo touch
116
116
+
security.pam.services.sudo_local.touchIdAuth = true;
117
117
+
118
118
+
# disable natural scrolling
119
119
+
system.defaults.NSGlobalDomain."com.apple.swipescrolldirection" = false;
120
120
+
programs.direnv.enable = true;
121
121
+
programs.nix-index.enable = true;
122
122
+
programs.gnupg.agent = {
123
123
+
enable = true;
124
124
+
enableSSHSupport = true;
125
125
+
};
126
126
+
127
127
+
# Used for backwards compatibility, please read the changelog before changing.
128
128
+
# $ darwin-rebuild changelog
129
129
+
system.stateVersion = 6;
130
130
+
131
131
+
system.primaryUser = "lassulus";
132
132
+
133
133
+
services.openssh.enable = true;
134
134
+
users.users =
135
135
+
let
136
136
+
key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIb3uuMqE/xSJ7WL/XpJ6QOj4aSmh0Ga+GtmJl3CDvljGuIeGCKh7YAoqZAi051k5j6ZWowDrcWYHIOU+h0eZCesgCf+CvunlXeUz6XShVMjyZo87f2JPs2Hpb+u/ieLx4wGQvo/Zw89pOly/vqpaX9ZwyIR+U81IAVrHIhqmrTitp+2FwggtaY4FtD6WIyf1hPtrrDecX8iDhnHHuGhATr8etMLwdwQ2kIBx5BBgCoiuW7wXnLUBBVYeO3II957XP/yU82c+DjSVJtejODmRAM/3rk+B7pdF5ShRVVFyB6JJR+Qd1g8iSH+2QXLUy3NM2LN5u5p2oTjUOzoEPWZo7lykZzmIWd/5hjTW9YiHC+A8xsCxQqs87D9HK9hLA6udZ6CGkq4hG/6wFwNjSMnv30IcHZzx6IBihNGbrisrJhLxEiKWpMKYgeemhIirefXA6UxVfiwHg3gJ8BlEBsj0tl/HVARifR2y336YINEn8AsHGhwrPTBFOnBTmfA/VnP1NlWHzXCfVimP6YVvdoGCCnAwvFuJ+ZuxmZ3UzBb2TenZZOzwzV0sUzZk0D1CaSBFJUU3oZNOkDIM6z5lIZgzsyKwb38S8Vs3HYE+Dqpkfsl4yeU5ldc6DwrlVwuSIa4vVus4eWD3gDGFrx98yaqOx17pc4CC9KXk/2TjtJY5xmQ== lass@yubikey";
137
137
+
in
138
138
+
{
139
139
+
lassulus.openssh.authorizedKeys.keys = [ key ];
140
140
+
root.openssh.authorizedKeys.keys = [ key ];
141
141
+
};
142
142
+
143
143
+
}