move home configs to root
This commit is contained in:
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 5.9 KiB |
@@ -6,6 +6,7 @@
|
|||||||
moco = import ./moco;
|
moco = import ./moco;
|
||||||
};
|
};
|
||||||
extraSpecialArgs = { inherit ksoloti-pr inputs; };
|
extraSpecialArgs = { inherit ksoloti-pr inputs; };
|
||||||
|
sharedModules = [ (import ./common) ];
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
};
|
};
|
||||||
@@ -1,8 +1,6 @@
|
|||||||
{ pkgs, ksoloti-pr, inputs, ... }:
|
{ pkgs, ksoloti-pr, ... }:
|
||||||
{
|
{
|
||||||
imports = [ ../common ];
|
|
||||||
config = {
|
config = {
|
||||||
_module.args.inputs = inputs;
|
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
# manage.
|
# manage.
|
||||||
home.username = "jokke";
|
home.username = "jokke";
|
||||||
201
home/moco/default.nix
Normal file
201
home/moco/default.nix
Normal file
@@ -0,0 +1,201 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
let
|
||||||
|
homeDirectory = "/home/moco";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
|
# manage.
|
||||||
|
home = {
|
||||||
|
username = "moco";
|
||||||
|
inherit homeDirectory;
|
||||||
|
packages = with pkgs; [
|
||||||
|
(slack.overrideAttrs (oldAttrs: {
|
||||||
|
fixupPhase = ''
|
||||||
|
sed -i -e 's/,"WebRTCPipeWireCapturer"/,"LebRTCPipeWireCapturer"/' $out/lib/slack/resources/app.asar
|
||||||
|
|
||||||
|
rm $out/bin/slack
|
||||||
|
makeWrapper $out/lib/slack/slack $out/bin/slack \
|
||||||
|
--prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
|
||||||
|
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
|
||||||
|
--add-flags "--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations,WebRTCPipeWireCapturer"
|
||||||
|
'';
|
||||||
|
}))
|
||||||
|
kooha
|
||||||
|
gnome-pomodoro
|
||||||
|
mitmproxy
|
||||||
|
(writeShellScriptBin "moco-admin-pw" ''
|
||||||
|
password=$(op item get fkj74ou6jfex7a6gcinac6o5oe --reveal --fields label=Kennwort)
|
||||||
|
otp=$(ykman oath accounts code -s 'MOCO:Admin')
|
||||||
|
echo "''${password}''${otp}" | wl-copy -n
|
||||||
|
'')
|
||||||
|
(writeShellScriptBin "moco-reto-otp" ''
|
||||||
|
ykman oath accounts code -s 'MOCO Reto' | wl-copy -n
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
gnome = {
|
||||||
|
profilePicture = ../assets/profile-pictures/moco.png;
|
||||||
|
calendar.showWeekNumbers = true;
|
||||||
|
extensions.paperwm.winprops = [
|
||||||
|
{ wm_class = "gnome-pomodoro"; scratch_layer = true; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.poetry = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
virtualenvs = {
|
||||||
|
create = true;
|
||||||
|
inProject = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.zsh = {
|
||||||
|
cdpath = [
|
||||||
|
"${homeDirectory}/Code/mocoapp"
|
||||||
|
"${homeDirectory}/Code/mocoapp-promo"
|
||||||
|
"${homeDirectory}/Code/mocoapp-llama"
|
||||||
|
];
|
||||||
|
dirHashes = {
|
||||||
|
moco = "${homeDirectory}/Code/mocoapp";
|
||||||
|
promo = "${homeDirectory}/Code/mocoapp-promo";
|
||||||
|
llama = "${homeDirectory}/Code/mocoapp-llama";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.git.extraConfig.user.email = "joakim.repomaa@mocoapp.com";
|
||||||
|
|
||||||
|
programs.neovim = {
|
||||||
|
withTreesitterPlugins = p: [
|
||||||
|
p.ruby
|
||||||
|
p.javascript
|
||||||
|
p.typescript
|
||||||
|
p.graphql
|
||||||
|
];
|
||||||
|
formatters = [
|
||||||
|
{
|
||||||
|
filetypes = [ "ruby" ];
|
||||||
|
globs = [ "*.rb" "Gemfile" "*.rake" ];
|
||||||
|
exe = "bundle";
|
||||||
|
args = file: [ "exec" "rufo" "-x" "--filename" file ];
|
||||||
|
stdin = true;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
filetypes = [ "javascript" "typescript" "javascriptreact" "typescriptreact" ];
|
||||||
|
globs = [ "*.js" "*.jsx" "*.ts" "*.tsx" ];
|
||||||
|
exe = "npx";
|
||||||
|
args = file: [ "prettier" "--stdin-filepath" file ];
|
||||||
|
stdin = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
lsp.servers = with pkgs; [
|
||||||
|
{
|
||||||
|
name = "ruby_lsp";
|
||||||
|
config = {
|
||||||
|
init_options = {
|
||||||
|
formatter = "auto";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
package = ruby-lsp;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "graphql";
|
||||||
|
package = nodePackages.graphql-language-service-cli;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.ssh.matchBlocks =
|
||||||
|
let
|
||||||
|
aliases = [ "moco" "mocoapp" "mocoapp.com" ];
|
||||||
|
matcher = subdomains:
|
||||||
|
builtins.concatStringsSep " " (
|
||||||
|
map
|
||||||
|
(alias: builtins.concatStringsSep " " (
|
||||||
|
map (subdomain: "*.${subdomain}.${alias} ${subdomain}.${alias}") subdomains
|
||||||
|
))
|
||||||
|
aliases);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
"console.*.moco" = {
|
||||||
|
extraOptions = {
|
||||||
|
RequestTTY = "force";
|
||||||
|
RemoteCommand = "./rails-console.sh";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"${matcher ["reto" "reto.intern"]}" = {
|
||||||
|
hostname = "reto.intern.mocoapp.com";
|
||||||
|
user = "jokke";
|
||||||
|
};
|
||||||
|
|
||||||
|
"${matcher ["web"]}" = {
|
||||||
|
hostname = "mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["prod-inc"]}" = {
|
||||||
|
hostname = "prod-inc.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["prod"]}" = {
|
||||||
|
hostname = "web02.mocoapp";
|
||||||
|
};
|
||||||
|
"${matcher ["pfg" "primeforcegroup"]}" = {
|
||||||
|
hostname = "primeforcegroup.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["crafft"]}" = {
|
||||||
|
hostname = "crafft.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["bd" "businessdecision"]}" = {
|
||||||
|
hostname = "businessdecision.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["festland"]}" = {
|
||||||
|
hostname = "festland.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["oi" "one-inside"]}" = {
|
||||||
|
hostname = "one-inside.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["se" "scope-engineering"]}" = {
|
||||||
|
hostname = "scope-engineering.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["cpc" "cpc-ag"]}" = {
|
||||||
|
hostname = "cpc-ag.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["weareact3"]}" = {
|
||||||
|
hostname = "weareact3.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["avenit"]}" = {
|
||||||
|
hostname = "avenit.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["staging"]}" = {
|
||||||
|
hostname = "staging.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["staging-v2"]}" = {
|
||||||
|
hostname = "staging-v2.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["staging-v3"]}" = {
|
||||||
|
hostname = "staging-v3.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["staging-v4"]}" = {
|
||||||
|
hostname = "staging-v4.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["staging-v5"]}" = {
|
||||||
|
hostname = "staging-v5.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["staging-v6"]}" = {
|
||||||
|
hostname = "staging-v6.mocoapp.com";
|
||||||
|
};
|
||||||
|
"${matcher ["prod-db" "production-db"]}" = {
|
||||||
|
hostname = "production-db.mocoapp";
|
||||||
|
};
|
||||||
|
"${matcher ["pdf-renderer"]}" = {
|
||||||
|
hostname = "mocoapp-pdf-renderer01.mocoapp.com";
|
||||||
|
};
|
||||||
|
"*.moco *.mocoapp *.mocoapp.com" = {
|
||||||
|
forwardAgent = true;
|
||||||
|
};
|
||||||
|
"*.moco !reto.moco *.mocoapp.com !reto.mocoapp.com" = {
|
||||||
|
user = "butler";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -9,6 +9,6 @@
|
|||||||
./containers.nix
|
./containers.nix
|
||||||
./desktop.nix
|
./desktop.nix
|
||||||
./users.nix
|
./users.nix
|
||||||
./home
|
../home
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,206 +0,0 @@
|
|||||||
{ pkgs, inputs, ... }:
|
|
||||||
{
|
|
||||||
imports = [ ../common ];
|
|
||||||
config =
|
|
||||||
let
|
|
||||||
homeDirectory = "/home/moco";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
_module.args.inputs = inputs;
|
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
|
||||||
# manage.
|
|
||||||
home = {
|
|
||||||
username = "moco";
|
|
||||||
inherit homeDirectory;
|
|
||||||
packages = with pkgs; [
|
|
||||||
(slack.overrideAttrs (oldAttrs: {
|
|
||||||
fixupPhase = ''
|
|
||||||
sed -i -e 's/,"WebRTCPipeWireCapturer"/,"LebRTCPipeWireCapturer"/' $out/lib/slack/resources/app.asar
|
|
||||||
|
|
||||||
rm $out/bin/slack
|
|
||||||
makeWrapper $out/lib/slack/slack $out/bin/slack \
|
|
||||||
--prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
|
|
||||||
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
|
|
||||||
--add-flags "--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations,WebRTCPipeWireCapturer"
|
|
||||||
'';
|
|
||||||
}))
|
|
||||||
kooha
|
|
||||||
gnome-pomodoro
|
|
||||||
mitmproxy
|
|
||||||
(writeShellScriptBin "moco-admin-pw" ''
|
|
||||||
password=$(op item get fkj74ou6jfex7a6gcinac6o5oe --reveal --fields label=Kennwort)
|
|
||||||
otp=$(ykman oath accounts code -s 'MOCO:Admin')
|
|
||||||
echo "''${password}''${otp}" | wl-copy -n
|
|
||||||
'')
|
|
||||||
(writeShellScriptBin "moco-reto-otp" ''
|
|
||||||
ykman oath accounts code -s 'MOCO Reto' | wl-copy -n
|
|
||||||
'')
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
gnome = {
|
|
||||||
profilePicture = ../assets/profile-pictures/moco.png;
|
|
||||||
calendar.showWeekNumbers = true;
|
|
||||||
extensions.paperwm.winprops = [
|
|
||||||
{ wm_class = "gnome-pomodoro"; scratch_layer = true; }
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.poetry = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
virtualenvs = {
|
|
||||||
create = true;
|
|
||||||
inProject = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.zsh = {
|
|
||||||
cdpath = [
|
|
||||||
"${homeDirectory}/Code/mocoapp"
|
|
||||||
"${homeDirectory}/Code/mocoapp-promo"
|
|
||||||
"${homeDirectory}/Code/mocoapp-llama"
|
|
||||||
];
|
|
||||||
dirHashes = {
|
|
||||||
moco = "${homeDirectory}/Code/mocoapp";
|
|
||||||
promo = "${homeDirectory}/Code/mocoapp-promo";
|
|
||||||
llama = "${homeDirectory}/Code/mocoapp-llama";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.git.extraConfig.user.email = "joakim.repomaa@mocoapp.com";
|
|
||||||
|
|
||||||
programs.neovim = {
|
|
||||||
withTreesitterPlugins = p: [
|
|
||||||
p.ruby
|
|
||||||
p.javascript
|
|
||||||
p.typescript
|
|
||||||
p.graphql
|
|
||||||
];
|
|
||||||
formatters = [
|
|
||||||
{
|
|
||||||
filetypes = [ "ruby" ];
|
|
||||||
globs = [ "*.rb" "Gemfile" "*.rake" ];
|
|
||||||
exe = "bundle";
|
|
||||||
args = file: [ "exec" "rufo" "-x" "--filename" file ];
|
|
||||||
stdin = true;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
filetypes = [ "javascript" "typescript" "javascriptreact" "typescriptreact" ];
|
|
||||||
globs = [ "*.js" "*.jsx" "*.ts" "*.tsx" ];
|
|
||||||
exe = "npx";
|
|
||||||
args = file: [ "prettier" "--stdin-filepath" file ];
|
|
||||||
stdin = true;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
lsp.servers = with pkgs; [
|
|
||||||
{
|
|
||||||
name = "ruby_lsp";
|
|
||||||
config = {
|
|
||||||
init_options = {
|
|
||||||
formatter = "auto";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
package = ruby-lsp;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "graphql";
|
|
||||||
package = nodePackages.graphql-language-service-cli;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.ssh.matchBlocks =
|
|
||||||
let
|
|
||||||
aliases = [ "moco" "mocoapp" "mocoapp.com" ];
|
|
||||||
matcher = subdomains:
|
|
||||||
builtins.concatStringsSep " " (
|
|
||||||
map
|
|
||||||
(alias: builtins.concatStringsSep " " (
|
|
||||||
map (subdomain: "*.${subdomain}.${alias} ${subdomain}.${alias}") subdomains
|
|
||||||
))
|
|
||||||
aliases);
|
|
||||||
in
|
|
||||||
{
|
|
||||||
"console.*.moco" = {
|
|
||||||
extraOptions = {
|
|
||||||
RequestTTY = "force";
|
|
||||||
RemoteCommand = "./rails-console.sh";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
"${matcher ["reto" "reto.intern"]}" = {
|
|
||||||
hostname = "reto.intern.mocoapp.com";
|
|
||||||
user = "jokke";
|
|
||||||
};
|
|
||||||
|
|
||||||
"${matcher ["web"]}" = {
|
|
||||||
hostname = "mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["prod-inc"]}" = {
|
|
||||||
hostname = "prod-inc.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["prod"]}" = {
|
|
||||||
hostname = "web02.mocoapp";
|
|
||||||
};
|
|
||||||
"${matcher ["pfg" "primeforcegroup"]}" = {
|
|
||||||
hostname = "primeforcegroup.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["crafft"]}" = {
|
|
||||||
hostname = "crafft.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["bd" "businessdecision"]}" = {
|
|
||||||
hostname = "businessdecision.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["festland"]}" = {
|
|
||||||
hostname = "festland.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["oi" "one-inside"]}" = {
|
|
||||||
hostname = "one-inside.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["se" "scope-engineering"]}" = {
|
|
||||||
hostname = "scope-engineering.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["cpc" "cpc-ag"]}" = {
|
|
||||||
hostname = "cpc-ag.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["weareact3"]}" = {
|
|
||||||
hostname = "weareact3.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["avenit"]}" = {
|
|
||||||
hostname = "avenit.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["staging"]}" = {
|
|
||||||
hostname = "staging.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["staging-v2"]}" = {
|
|
||||||
hostname = "staging-v2.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["staging-v3"]}" = {
|
|
||||||
hostname = "staging-v3.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["staging-v4"]}" = {
|
|
||||||
hostname = "staging-v4.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["staging-v5"]}" = {
|
|
||||||
hostname = "staging-v5.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["staging-v6"]}" = {
|
|
||||||
hostname = "staging-v6.mocoapp.com";
|
|
||||||
};
|
|
||||||
"${matcher ["prod-db" "production-db"]}" = {
|
|
||||||
hostname = "production-db.mocoapp";
|
|
||||||
};
|
|
||||||
"${matcher ["pdf-renderer"]}" = {
|
|
||||||
hostname = "mocoapp-pdf-renderer01.mocoapp.com";
|
|
||||||
};
|
|
||||||
"*.moco *.mocoapp *.mocoapp.com" = {
|
|
||||||
forwardAgent = true;
|
|
||||||
};
|
|
||||||
"*.moco !reto.moco *.mocoapp.com !reto.mocoapp.com" = {
|
|
||||||
user = "butler";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user