aboutsummaryrefslogtreecommitdiff
path: root/bootstrap-win/git.ps1
diff options
context:
space:
mode:
authorThomas Schmucker <ts@its1.de>2026-08-12 09:22:12 +0200
committerThomas Schmucker <ts@its1.de>2026-08-12 09:22:12 +0200
commit189d244d36d4ebb2189b698adb21f51cf1c4176a (patch)
tree3a6a9847dafabea051997b1a9cbc124a242ec1d3 /bootstrap-win/git.ps1
parent6e5882a2fd02d30206ab9ca8aa5847b8ea09196c (diff)
downloaddotfiles-189d244d36d4ebb2189b698adb21f51cf1c4176a.tar.gz
dotfiles-189d244d36d4ebb2189b698adb21f51cf1c4176a.tar.bz2
dotfiles-189d244d36d4ebb2189b698adb21f51cf1c4176a.zip
Revert "Normalize line endings"
This reverts commit 6e5882a2fd02d30206ab9ca8aa5847b8ea09196c.
Diffstat (limited to 'bootstrap-win/git.ps1')
-rw-r--r--bootstrap-win/git.ps1150
1 files changed, 75 insertions, 75 deletions
diff --git a/bootstrap-win/git.ps1 b/bootstrap-win/git.ps1
index 8d63338..6accba4 100644
--- a/bootstrap-win/git.ps1
+++ b/bootstrap-win/git.ps1
@@ -1,75 +1,75 @@
1#Requires -Version 5.1 1#Requires -Version 5.1
2<# 2<#
3 Installiert Git und delta (Pager fuer git/config) per winget. 3 Installiert Git und delta (Pager fuer git/config) per winget.
4 4
5 Aufruf (keine Admin-Rechte noetig): 5 Aufruf (keine Admin-Rechte noetig):
6 .\bootstrap-win\git.ps1 6 .\bootstrap-win\git.ps1
7#> 7#>
8 8
9$ErrorActionPreference = "Stop" 9$ErrorActionPreference = "Stop"
10$script:Failures = @() 10$script:Failures = @()
11 11
12function Write-Ok($msg) { 12function Write-Ok($msg) {
13 Write-Host "OK $msg" -ForegroundColor Green 13 Write-Host "OK $msg" -ForegroundColor Green
14} 14}
15 15
16function Write-Step($msg) { 16function Write-Step($msg) {
17 Write-Host "==> $msg" -ForegroundColor Cyan 17 Write-Host "==> $msg" -ForegroundColor Cyan
18} 18}
19 19
20function Write-Skip($msg) { 20function Write-Skip($msg) {
21 Write-Host "- $msg bereits vorhanden" -ForegroundColor DarkGray 21 Write-Host "- $msg bereits vorhanden" -ForegroundColor DarkGray
22} 22}
23 23
24function Write-Warn($msg) { 24function Write-Warn($msg) {
25 Write-Host "! $msg" -ForegroundColor Yellow 25 Write-Host "! $msg" -ForegroundColor Yellow
26 $script:Failures += $msg 26 $script:Failures += $msg
27} 27}
28 28
29function Test-CommandExists([string]$Name) { 29function Test-CommandExists([string]$Name) {
30 return [bool](Get-Command $Name -ErrorAction SilentlyContinue) 30 return [bool](Get-Command $Name -ErrorAction SilentlyContinue)
31} 31}
32 32
33function Install-WingetPackage([string]$Binary, [string]$Id) { 33function Install-WingetPackage([string]$Binary, [string]$Id) {
34 if (Test-CommandExists $Binary) { 34 if (Test-CommandExists $Binary) {
35 Write-Skip $Binary 35 Write-Skip $Binary
36 return 36 return
37 } 37 }
38 38
39 Write-Step "winget install $Id" 39 Write-Step "winget install $Id"
40 $output = winget install --id $Id -e --source winget --accept-package-agreements --accept-source-agreements --silent 2>&1 40 $output = winget install --id $Id -e --source winget --accept-package-agreements --accept-source-agreements --silent 2>&1
41 41
42 if ($LASTEXITCODE -ne 0) { 42 if ($LASTEXITCODE -ne 0) {
43 $lastLine = ($output | Select-Object -Last 3) -join " / " 43 $lastLine = ($output | Select-Object -Last 3) -join " / "
44 Write-Warn "winget install $Id fehlgeschlagen (Binary '$Binary' nicht gefunden): $lastLine -- Pruefen mit: winget search $Id" 44 Write-Warn "winget install $Id fehlgeschlagen (Binary '$Binary' nicht gefunden): $lastLine -- Pruefen mit: winget search $Id"
45 return 45 return
46 } 46 }
47 47
48 Write-Ok $Id 48 Write-Ok $Id
49} 49}
50 50
51function Test-Prerequisites { 51function Test-Prerequisites {
52 if (-not (Test-CommandExists "winget")) { 52 if (-not (Test-CommandExists "winget")) {
53 Write-Host "Fehler: winget wurde nicht gefunden. 'App Installer' aus dem Microsoft Store installieren." -ForegroundColor Red 53 Write-Host "Fehler: winget wurde nicht gefunden. 'App Installer' aus dem Microsoft Store installieren." -ForegroundColor Red
54 exit 1 54 exit 1
55 } 55 }
56} 56}
57 57
58function Main { 58function Main {
59 Test-Prerequisites 59 Test-Prerequisites
60 60
61 Install-WingetPackage -Binary "git" -Id "Git.Git" 61 Install-WingetPackage -Binary "git" -Id "Git.Git"
62 Install-WingetPackage -Binary "delta" -Id "dandavison.delta" 62 Install-WingetPackage -Binary "delta" -Id "dandavison.delta"
63 63
64 Write-Host "" 64 Write-Host ""
65 if ($script:Failures.Count -eq 0) { 65 if ($script:Failures.Count -eq 0) {
66 Write-Host "Git-Bootstrap abgeschlossen." -ForegroundColor Green 66 Write-Host "Git-Bootstrap abgeschlossen." -ForegroundColor Green
67 } else { 67 } else {
68 Write-Host "Git-Bootstrap abgeschlossen, mit $($script:Failures.Count) Warnung(en):" -ForegroundColor Yellow 68 Write-Host "Git-Bootstrap abgeschlossen, mit $($script:Failures.Count) Warnung(en):" -ForegroundColor Yellow
69 foreach ($f in $script:Failures) { 69 foreach ($f in $script:Failures) {
70 Write-Host " - $f" -ForegroundColor Yellow 70 Write-Host " - $f" -ForegroundColor Yellow
71 } 71 }
72 } 72 }
73} 73}
74 74
75Main 75Main