Store app configs under programs
This commit is contained in:
parent
95d079bcaf
commit
561ac46073
11 changed files with 80 additions and 72 deletions
|
@ -40,13 +40,13 @@ let
|
||||||
in {
|
in {
|
||||||
options = {
|
options = {
|
||||||
valhalla = {
|
valhalla = {
|
||||||
git = gitOption;
|
programs.git = gitOption;
|
||||||
|
|
||||||
users = mkOption {
|
users = mkOption {
|
||||||
type = types.attrsOf (types.submodule (
|
type = types.attrsOf (types.submodule (
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
options = {
|
options = {
|
||||||
git = gitOption;
|
programs.git = gitOption;
|
||||||
};
|
};
|
||||||
}));
|
}));
|
||||||
};
|
};
|
||||||
|
|
|
@ -25,7 +25,7 @@ in {
|
||||||
type = types.attrsOf (types.submodule (
|
type = types.attrsOf (types.submodule (
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
options = {
|
options = {
|
||||||
nextcloud = {
|
programs.nextcloud = {
|
||||||
folderSyncs = mkOption {
|
folderSyncs = mkOption {
|
||||||
type = types.listOf syncType;
|
type = types.listOf syncType;
|
||||||
description = "The folders to synchronize.";
|
description = "The folders to synchronize.";
|
||||||
|
|
|
@ -40,7 +40,7 @@ in {
|
||||||
type = types.attrsOf (types.submodule (
|
type = types.attrsOf (types.submodule (
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
options = {
|
options = {
|
||||||
oh-my-posh = mkOption {
|
programs.oh-my-posh = mkOption {
|
||||||
type = ompType;
|
type = ompType;
|
||||||
description = "The Oh My Posh configuration to apply.";
|
description = "The Oh My Posh configuration to apply.";
|
||||||
default = { };
|
default = { };
|
||||||
|
|
|
@ -23,7 +23,7 @@ in {
|
||||||
type = types.attrsOf (types.submodule (
|
type = types.attrsOf (types.submodule (
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
options = {
|
options = {
|
||||||
rclone = {
|
programs.rclone = {
|
||||||
configurations = mkOption {
|
configurations = mkOption {
|
||||||
type = types.attrsOf syncType;
|
type = types.attrsOf syncType;
|
||||||
description = "The configurations of the rclone mounts.";
|
description = "The configurations of the rclone mounts.";
|
||||||
|
|
|
@ -45,6 +45,7 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
git = let defaultBranch = "main";
|
git = let defaultBranch = "main";
|
||||||
in {
|
in {
|
||||||
inherit defaultBranch;
|
inherit defaultBranch;
|
||||||
|
@ -86,4 +87,5 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,12 +7,14 @@
|
||||||
displayName = "Manuel Thalmann";
|
displayName = "Manuel Thalmann";
|
||||||
mailAddress = "m@nuth.ch";
|
mailAddress = "m@nuth.ch";
|
||||||
|
|
||||||
|
programs = {
|
||||||
oh-my-posh = {
|
oh-my-posh = {
|
||||||
theme = {
|
theme = {
|
||||||
source = ./manuel.omp.json;
|
source = ./manuel.omp.json;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
linux.users.manuel = {
|
linux.users.manuel = {
|
||||||
defaultShell = "fish";
|
defaultShell = "fish";
|
||||||
|
@ -22,6 +24,7 @@
|
||||||
"nix-users"
|
"nix-users"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
programs = {
|
||||||
rclone = {
|
rclone = {
|
||||||
configurations = {
|
configurations = {
|
||||||
nextcloud = {
|
nextcloud = {
|
||||||
|
@ -35,8 +38,10 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
windows.users.manuel = {
|
windows.users.manuel = {
|
||||||
|
programs = {
|
||||||
nextcloud = {
|
nextcloud = {
|
||||||
folderSyncs = let
|
folderSyncs = let
|
||||||
localPath = "C:/tools/RetroArch-Win64";
|
localPath = "C:/tools/RetroArch-Win64";
|
||||||
|
@ -56,4 +61,5 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
$configArgs = @("--system");
|
$configArgs = @("--system");
|
||||||
}
|
}
|
||||||
|
|
||||||
$config = & $getConfig "git";
|
$config = & $getConfig "programs.git";
|
||||||
|
|
||||||
<#
|
<#
|
||||||
.SYNOPSIS
|
.SYNOPSIS
|
||||||
|
|
|
@ -23,7 +23,7 @@ Start-SoftwareInstaller @args `
|
||||||
)
|
)
|
||||||
|
|
||||||
$user = $Arguments.Name;
|
$user = $Arguments.Name;
|
||||||
$theme = Get-UserConfig -UserName "$user" "oh-my-posh.theme";
|
$theme = Get-UserConfig -UserName "$user" "programs.oh-my-posh.theme";
|
||||||
|
|
||||||
function New-Theme {
|
function New-Theme {
|
||||||
param($info)
|
param($info)
|
||||||
|
@ -52,7 +52,7 @@ Start-SoftwareInstaller @args `
|
||||||
return $path;
|
return $path;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($additionalTheme in (Get-UserConfig -UserName "$user" "oh-my-posh.additionalThemes")) {
|
foreach ($additionalTheme in (Get-UserConfig -UserName "$user" "programs.oh-my-posh.additionalThemes")) {
|
||||||
Write-Host "creating theme $additionalTheme";
|
Write-Host "creating theme $additionalTheme";
|
||||||
$null = New-Theme $additionalTheme;
|
$null = New-Theme $additionalTheme;
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,7 @@ begin
|
||||||
|
|
||||||
function userConfig -V dir -a name
|
function userConfig -V dir -a name
|
||||||
source "$dir/../../Scripts/config.fish"
|
source "$dir/../../Scripts/config.fish"
|
||||||
set -l key "rclone.configurations"
|
set -l key "programs.rclone.configurations"
|
||||||
set -l configs (getUserConfig "$name" "$key" --apply "builtins.attrNames" --json)
|
set -l configs (getUserConfig "$name" "$key" --apply "builtins.attrNames" --json)
|
||||||
|
|
||||||
if [ (echo "$configs" | jq "length") -gt 0 ]
|
if [ (echo "$configs" | jq "length") -gt 0 ]
|
||||||
|
|
|
@ -7,7 +7,7 @@ Start-SoftwareInstaller @args `
|
||||||
-Inherit "$PSScriptRoot/../../../Common/Software/git/Main.ps1" `
|
-Inherit "$PSScriptRoot/../../../Common/Software/git/Main.ps1" `
|
||||||
-Installer {
|
-Installer {
|
||||||
$params = "/WindowsTerminalProfile";
|
$params = "/WindowsTerminalProfile";
|
||||||
$defaultBranch = Get-OSConfig "git.defaultBranch";
|
$defaultBranch = Get-OSConfig "programs.git.defaultBranch";
|
||||||
|
|
||||||
if ($defaultBranch) {
|
if ($defaultBranch) {
|
||||||
$params += " /DefaultBranchName:`"$defaultBranch`"";
|
$params += " /DefaultBranchName:`"$defaultBranch`"";
|
||||||
|
|
|
@ -87,7 +87,7 @@
|
||||||
$user = $Arguments.Name;
|
$user = $Arguments.Name;
|
||||||
|
|
||||||
& {
|
& {
|
||||||
$syncs = Get-UserConfig -UserName $user "nextcloud.folderSyncs";
|
$syncs = Get-UserConfig -UserName $user "programs.nextcloud.folderSyncs";
|
||||||
$configExists = { (Test-Path (Get-ConfigFile) ) };
|
$configExists = { (Test-Path (Get-ConfigFile) ) };
|
||||||
|
|
||||||
if ($syncs.Count -gt 0) {
|
if ($syncs.Count -gt 0) {
|
||||||
|
|
Loading…
Reference in a new issue