mirror of
https://github.com/Xevion/dotfiles.git
synced 2025-12-09 14:07:02 -06:00
Chezmoi config generator, micro preference, chassis/core/threads detect
This commit is contained in:
35
.chezmoi.toml.tmpl
Normal file
35
.chezmoi.toml.tmpl
Normal file
@@ -0,0 +1,35 @@
|
||||
{{- $chassisType := "desktop" }}
|
||||
{{- if eq .chezmoi.os "darwin" }}
|
||||
{{- if contains "MacBook" (output "sysctl" "-n" "hw.model") }}
|
||||
{{- $chassisType = "laptop" }}
|
||||
{{- else }}
|
||||
{{- $chassisType = "desktop" }}
|
||||
{{- end }}
|
||||
{{- else if eq .chezmoi.os "linux" }}
|
||||
{{- $chassisType = (output "hostnamectl" "--json=short" | mustFromJson).Chassis }}
|
||||
{{- else if eq .chezmoi.os "windows" }}
|
||||
{{- $chassisType = (output "powershell.exe" "-NoProfile" "-NonInteractive" "-Command" "if ((Get-CimInstance -Class Win32_Battery | Measure-Object).Count -gt 0) { Write-Output 'laptop' } else { Write-Output 'desktop' }") | trim }}
|
||||
{{- end }}
|
||||
|
||||
{{- $cpuCores := 1 }}
|
||||
{{- $cpuThreads := 1 }}
|
||||
{{- if eq .chezmoi.os "darwin" }}
|
||||
{{- $cpuCores = (output "sysctl" "-n" "hw.physicalcpu_max") | trim | atoi }}
|
||||
{{- $cpuThreads = (output "sysctl" "-n" "hw.logicalcpu_max") | trim | atoi }}
|
||||
{{- else if eq .chezmoi.os "linux" }}
|
||||
{{- $cpuCores = (output "sh" "-c" "lscpu --online --parse | grep --invert-match '^#' | sort --field-separator=',' --key='2,4' --unique | wc --lines") | trim | atoi }}
|
||||
{{- $cpuThreads = (output "sh" "-c" "lscpu --online --parse | grep --invert-match '^#' | wc --lines") | trim | atoi }}
|
||||
{{- else if eq .chezmoi.os "windows" }}
|
||||
{{- $cpuCores = (output "powershell.exe" "-NoProfile" "-NonInteractive" "-Command" "(Get-CimInstance -ClassName 'Win32_Processor').NumberOfCores") | trim | atoi }}
|
||||
{{- $cpuThreads = (output "powershell.exe" "-NoProfile" "-NonInteractive" "-Command" "(Get-CimInstance -ClassName 'Win32_Processor').NumberOfLogicalProcessors") | trim | atoi }}
|
||||
{{- end -}}
|
||||
|
||||
[edit]
|
||||
command = "micro"
|
||||
|
||||
[data]
|
||||
chassis = "{{ $chassisType }}"
|
||||
|
||||
[data.cpu]
|
||||
cores = {{ $cpuCores }}
|
||||
threads = {{ $cpuThreads }}
|
||||
Reference in New Issue
Block a user