# Xetup – Novinky oproti původní specifikaci (W11.pdf v3)

---

## A. Hlavní panel – pinnované aplikace (diferenciace admin vs user)

Nový požadavek: různé sady připnutých aplikací podle typu profilu.

**Admin profil – připnout na taskbar:**
- Nastavení (`ms-settings:`)
- Správa počítače (`compmgmt.msc`)
- Služby (`services.msc`)
- PowerShell (`pwsh.exe` nebo `powershell.exe`)
- Průzkumník Windows (`explorer.exe`)
- MS Edge (`msedge.exe`)

**User profil – připnout na taskbar:**
- Průzkumník Windows (`explorer.exe`)
- MS Edge (`msedge.exe`)

**Implementace:**

Přímé pinnování přes registry/PS je v moderním Win11 neoficiální – Microsoft odstranil `Pin-Application` cmdlet. Nejspolehlivější postup je XML layout policy:

```xml
<!-- TaskbarLayoutModification.xml – admin varianta -->
<?xml version="1.0" encoding="utf-8"?>
<LayoutModificationTemplate xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification"
    xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout" Version="1">
  <CustomTaskbarLayoutCollection PinListPlacement="Replace">
    <defaultlayout:TaskbarLayout xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout">
      <taskbar:TaskbarPinList>
        <taskbar:DesktopApp DesktopApplicationLinkPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\Windows PowerShell\Windows PowerShell.lnk"/>
        <taskbar:DesktopApp DesktopApplicationLinkPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\File Explorer.lnk"/>
        <taskbar:DesktopApp DesktopApplicationLinkPath="%PROGRAMDATA%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk"/>
      </taskbar:TaskbarPinList>
    </defaultlayout:TaskbarLayout>
  </CustomTaskbarLayoutCollection>
</LayoutModificationTemplate>
```

```powershell
# Aplikovat layout policy (HKLM = platí pro všechny uživatele)
# Admin varianta
$xmlPathAdmin = "C:\X9\TaskbarAdmin.xml"
$xmlPathUser  = "C:\X9\TaskbarUser.xml"

# Pro Default Profile (user) – zapsat před prvním přihlášením uživatele
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" `
    /v "LayoutXMLPath" /t REG_SZ /d $xmlPathUser /f
```

> **Upozornění:** `LayoutXMLPath` policy je dostupná ve Win11 22H2+. Před nasazením ověřit verzi. Shortcuty pro `compmgmt.msc` a `services.msc` je nutné vytvořit ručně jako `.lnk` soubory, protože XML přijímá pouze `.lnk` cesty.

---

## B. Průzkumník Windows – nastavení

Tři změny oproti původní specifikaci:

| Nastavení | Hodnota |
|---|---|
| Otevřít Průzkumník pro | Tento počítač (místo Rychlý přístup) |
| Nedávné soubory / složky / Office.com | Vše vypnuto |
| Zobrazit úplnou cestu v záhlaví | Zapnuto |

**Registry (aplikovat do Default Profile hive):**

```registry
; Otevřít pro "Tento počítač" místo Rychlého přístupu
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced
  - LaunchTo = 1 (DWORD)   ; 1 = Tento počítač, 2 = Rychlý přístup

; Vypnout historii posledních souborů a složek
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer
  - ShowRecent = 0 (DWORD)
  - ShowFrequent = 0 (DWORD)

; Zobrazit úplnou cestu v záhlaví
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\CabinetState
  - FullPath = 1 (DWORD)
```

```powershell
# Blok pro vložení do sekce reg load/unload (Default Profile)
$hive = "HKU\DefaultUser"

Set-ItemProperty "Registry::$hive\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" `
    -Name "LaunchTo" -Value 1 -Type DWord

Set-ItemProperty "Registry::$hive\Software\Microsoft\Windows\CurrentVersion\Explorer" `
    -Name "ShowRecent" -Value 0 -Type DWord
Set-ItemProperty "Registry::$hive\Software\Microsoft\Windows\CurrentVersion\Explorer" `
    -Name "ShowFrequent" -Value 0 -Type DWord

New-Item -Path "Registry::$hive\Software\Microsoft\Windows\CurrentVersion\Explorer\CabinetState" `
    -Force | Out-Null
Set-ItemProperty "Registry::$hive\Software\Microsoft\Windows\CurrentVersion\Explorer\CabinetState" `
    -Name "FullPath" -Value 1 -Type DWord
```

---

## C. Síťové zjišťování – zapnout ping, přepnout na privátní síť

Nový krok: po přejmenování/připojení do domény zapnout zjišťování sítě a přepnout profil sítě na privátní (bez toho nefunguje ping na stanici).

```powershell
# Zapnout Network Discovery a File Sharing
netsh advfirewall firewall set rule group="Network Discovery" new enable=Yes
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes

# Přepnout aktuální síťový profil na Private (= "Ne, chci síť změnit na privátní")
# Funguje pro první aktivní síťové rozhraní
$adapter = Get-NetConnectionProfile | Select-Object -First 1
Set-NetConnectionProfile -InterfaceIndex $adapter.InterfaceIndex -NetworkCategory Private
```

> **Scope:** Toto nastavení se aplikuje na aktuální síťové připojení v době spuštění skriptu – nelze předem uložit do Default Profile, protože se váže na konkrétní síťový adaptér/GUID. Skript musí být spuštěn po připojení k síti.

> **Závislost:** Pokud se stanice teprve připojuje do domény, spustit tento blok až po restartu a domain-join.

---

## D. Popis účtu adminx9

Nový krok: nastavit pole "Jméno a příjmení" u lokálního účtu `adminx9` na hodnotu `X9.cz s.r.o.`

Provádí se přes Správu počítače → Místní uživatelé a skupiny → Uživatelé → adminx9 → Vlastnosti → záložka Obecné.

**Automatizace:**

```powershell
# Nastavit Full Name pro lokální účet adminx9
$user = [ADSI]"WinNT://$env:COMPUTERNAME/adminx9,user"
$user.FullName = "X9.cz s.r.o."
$user.SetInfo()
```

> **Scope:** Platí pouze pro aktuální (admin) účet na tomto stroji – není součástí Default Profile. Spustit před předáním stanice klientovi.

---

## Integrace do hlavního skriptu

Nové kroky přidat do architektury spuštění:

```
Deploy-Windows.ps1
    ├── ... (existující kroky)
    ├── NEW: Popis účtu adminx9 = "X9.cz s.r.o."
    ├── NEW: Průzkumník – registry do Default Profile hive
    ├── NEW: Taskbar XML layout (admin nebo user varianta dle parametru)
    ├── 9. Přejmenování PC + restart
    └── NEW: Po restartu – zapnout síťové zjišťování + privátní profil
```

**Nový parametr skriptu:**

```powershell
[ValidateSet("admin","user")]
[string]$ProfileType = "user"   # řídí TaskbarLayout XML i zarovnání panelu
```
