Udrulning af desktop-appen

Sådan installerer du Antimatter desktop-appen på computerne i et firma eller en skole, og centraliserer indstillingerne for servere, brugernavne og opdateringskontroller på Windows, macOS og Linux.

Download appen

Desktop-appens releases findes på GitHub på github.com/AntimatterChat/desktop-app/releases. Ligesom serveren er appen i beta: en release, hvis version har en suffiks efter en bindestreg, er markeret som Pre-release. Hver release har en SHA256SUMS-fil med checksum for hver fil. Tjek en download med sha256sum --check --ignore-missing SHA256SUMS på Linux, eller sammenlign outputtet fra Get-FileHash <file> -Algorithm SHA256 i PowerShell med linjen i SHA256SUMS.

  • Windows (x64 og arm64): .exe-installationsprogrammet, .msi-pakken eller et .zip-arkiv. For eksempel antimatter-desktop-<version>-win-x64.exe og antimatter-desktop-<version>-win-x64.msi.
  • macOS: et .dmg-diskimage eller et .zip-arkiv, til Apple silicon (arm64), Intel Macs (x64) eller begge (universal).
  • Linux (x64 og arm64): en .deb- eller .rpm-pakke, en AppImage, en Flatpak-bundle eller et .tar.gz-arkiv.

Hvilket Windows-installationsprogram der skal bruges

.exe-installationsprogrammet.msi-pakken
TilPersoner, der installerer appen selvFirmaer, der udrulerer den til deres computere
InstallationKun for den aktuelle Windows-konto, i %LOCALAPPDATA%\Programs\antimatter-desktop, uden administratorrettighederFor alle brugere af computeren, i C:\Program Files\Antimatter, med administratorrettigheder
OpdateringerAppen tjekker efter nye versioner og foreslår at downloade den nye .exe, som opdaterer den installerede kopi på stedetAppen tjekker ikke efter nye versioner: du udrulerer dem

Appen tjekker for nye versioner på GitHub, hver time mens den kører, og ser kun på fulde udgaver, ikke forududgaver. Når den finder en, fortæller den det til brugeren og tilbyder et link til at downloade den. En kopi installeret med MSI tjekker ikke som standard, fordi de personer, der bruger den, normalt ikke kan installere software. Du kan slå tjekket til for den med indstillingen EnableAutoUpdater: den download, den derefter tilbyder, er den nye .msi, som kræver administratorrettigheder.

Brug MSI til en styret udrulning med SCCM (Configuration Manager), Intune eller softwareinstallation via gruppepolitik. Installation af MSI fjerner .exe-kopien af den konto, der kører installationen, hvis der er en.

De indstillinger, du kan administrere

De samme indstillinger findes på alle systemer. På Windows er de registryværdier under SOFTWARE\Policies\Antimatter, i HKEY_LOCAL_MACHINE (for computeren) eller HKEY_CURRENT_USER (for én bruger). På macOS og Linux er de nøgler i de administrerede præferencer eller i policyfilen.

IndstillingPå WindowsPå macOS og LinuxHvad den gør
DefaultServerListEn undernøgle med én strengværdi pr. server: værdinavnet er navnet på dens fane, dataen er dens URLEt array af ordbøger (objekter på Linux) med name og urlTilføjer servere til appen. Brugere kan ikke redigere eller fjerne dem.
DefaultUsernameEn strengEn strengUdfylder brugernavnet på login-siden for disse servere.
EnableServerManagementEn DWORD, 0 eller 1En boolsk værdi0 eller false: brugere kan kun bruge serverne sat med DefaultServerList, og appen skjuler mulighederne for at tilføje, redigere og fjerne servere. Ikke sat: brugere kan tilføje deres egne servere.
EnableAutoUpdaterEn DWORD, 0 eller 1En boolsk værdi0 eller false: appen tjekker aldrig for nye versioner og skjuler Tjek for opdateringer. 1 eller true: den tjekker, også når den er installeret med MSI. Ikke sat: .exe-kopien tjekker, MSI-kopien gør det ikke.
TrustedEmbeddedMediaOriginsEn undernøgle med strengværdier, hvor hver er et JSON-objekt med serverOrigin og embeddedOriginEt array af ordbøger med serverOrigin og embeddedOriginLader indlejret indhold på en servers sider, såsom en videomødeside, bruge kamera- og mikrofonrettighederne tildelt til den server.
  • Brugernavnet udfyldes kun på login-siden for de servere, der er angivet i en politik, aldrig på en server, som en person har tilføjet, og aldrig ovenover det, som nogen har tastet. Personer kan stadig ændre det. Miljøvariabler mellem procenttegn erstattes, så én værdi passer til alle: %USERNAME% på Windows eller %USER% på macOS og Linux giver kontonavnet, og %USERNAME%@example.com en e-mailadresse, der følger dette mønster. Hvis en variabel ikke er sat, udfylder appen intet.
  • Hvis du slår serverhåndtering fra, skal du angive mindst én server i DefaultServerList.
  • På Windows har en computerpolitik (HKEY_LOCAL_MACHINE) forrang over en brugerpolitik (HKEY_CURRENT_USER). Serverlistene fra begge kombineres.
  • Appen læser indstillingerne ved start: efter en ændring skal personer lukke og genåbne den.

Windows: stille installation med MSI

MSI'en tager offentlige egenskaber, der skriver indstillingerne som computerpolitikker i HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Antimatter. Brug dem i en SCCM-applikation, en Intune-app eller et script. I PowerShell:

msiexec /i antimatter-desktop-<version>-win-x64.msi /qn SERVERURL=https://chat.example.com SERVERNAME=Chat DEFAULTUSERNAME='%USERNAME%' AUTOUPDATE=0 SERVERMANAGEMENT=0
EgenskabSkriverHvis ikke angivet
SERVERURLEn server i DefaultServerList med denne URLIngen server
SERVERNAMENavnet på fanen for den serverAntimatter
DEFAULTUSERNAMEDefaultUsernameIntet
AUTOUPDATEEnableAutoUpdater, 0 eller 1Intet: MSI-kopien tjekker ikke efter opdateringer
SERVERMANAGEMENTEnableServerManagement, 0 eller 1Intet: personer kan tilføje servere
  • En egenskab, der ikke er angivet, skriver intet, så den overskriver ikke en værdi sat af Group Policy. AUTOUPDATE og SERVERMANAGEMENT accepterer kun 0 eller 1. MSI'en sætter én server: brug Group Policy for flere.
  • DEFAULTUSERNAME skal nå installatøren som teksten %USERNAME%, så appen kan erstatte den for hver person. Ellers erstatter skallen, der kører installationen, den med sit eget kontonavn. I PowerShell skal du beholde de enkelte anførselstegn. I en .bat-fil skal du skrive %%USERNAME%%. Efter en testinstallation skal du kontrollere i registeret, at DefaultUsername indeholder %USERNAME%.
  • Angiv egenskaberne igen ved hver opgradering. Installation af en ny version af MSI'en fjerner den gamle, med de værdier den skrev, og skriver derefter værdierne fra den nye kommandolinje. SCCM og Intune beholder kommandolinjen for en applikation: genbrug den for hver ny version. Eller sæt politikkerne med Group Policy eller Intune i stedet, som opgraderinger ikke rører.
  • MSI og gruppepolitik skriver de samme registreringsværdier. For hver indstilling skal du bruge enten den ene eller den anden: Hvis du afinstallerer MSI, slettes de værdier, den skrev, selvom gruppepolitik også har sat dem.
  • MSI registrerer også installationsmappen i HKEY_LOCAL_MACHINE\SOFTWARE\Antimatter\Desktop (InstallDir). Det er sådan, at appen ved, at den blev installeret med MSI.

For at afinstallere: msiexec /x antimatter-desktop-<version>-win-x64.msi /qn. I Intune tager typen "Windows app (Win32)" de samme kommandolinjer. For typen "Line-of-business app" skal du tilføje egenskaberne til dens kommandolinjeargumenter.

Windows: Gruppepolitik og Intune

Administrative skabeloner, antimatter.admx og en-US\antimatter.adml, findes i gpo-mappen i den installerede app (C:\Program Files\Antimatter\gpo for MSI) og i resources/windows/gpo-mappen i appens repository. De viser disse politikker under Administrative Templates › Antimatter:

PolitikRegistreringsværdiKonfiguration
Servers (DefaultServerList)DefaultServerList-undernøglecomputer og bruger
Brugernavn til forudfyldning (DefaultUsername)DefaultUsernamecomputer og bruger
Lad folk tilføje og fjerne servere (EnableServerManagement)EnableServerManagementcomputer og bruger
Giv besked om nye versioner (EnableAutoUpdater)EnableAutoUpdaterkun computer
Trustede indlejrede medieophav (TrustedEmbeddedMediaOrigins)TrustedEmbeddedMediaOrigins-undernøglecomputer og bruger

Gruppepolitik i et domæne

  1. Kopiér antimatter.admx til det centrale lager, \\<domain>\SYSVOL\<domain>\Policies\PolicyDefinitions, og antimatter.adml til dets en-US-mappe.
  2. I Group Policy Management Editor åbner du Computer Configuration (eller User Configuration) › Policies › Administrative Templates › Antimatter.
  3. Rediger en politik, vælg Aktiveret og udfyld den. For Servers klikker du på Vis og tilføjer én linje pr. server: værdinavnet er fanebladets navn, og værdien er serverens URL, f.eks. https://chat.example.com.

Hvis du aktiverer Lad folk tilføje og fjerne servere eller Giv besked om nye versioner, skrives 1; hvis du deaktiverer dem, skrives 0.

Intune

I Enheder › Konfiguration bruger du Importér ADMX til at importere antimatter.admx med en-US\antimatter.adml. Opret derefter en profil fra Skabeloner › Importerede administrative skabeloner, og sæt Antimatter-politikkerne i den.

En enkelt computer, eller et script

Kopiér skabelonerne til C:\Windows\PolicyDefinitions for at bruge dem i gpedit.msc (Windows Pro og Enterprise). Eller skriv registry-værdierne direkte, med en .reg-fil importeret som administrator (reg import antimatter-policies.reg), som f.eks. denne. Filen example-policies.reg i samme mappe har disse værdier med kommentarer.

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Antimatter]
"EnableServerManagement"=dword:00000000
"EnableAutoUpdater"=dword:00000000
"DefaultUsername"="%USERNAME%"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Antimatter\DefaultServerList]
"Chat"="https://chat.example.com"

macOS: en konfigurationsprofil

På macOS læser appen indstillingerne fra de administrerede præferencer for dens bundle-identifikator, chat.antimatter.desktop, med nøglerne fra indstillingstabellen. Udrul dem med din MDM (Jamf, Intune, Kandji, Mosyle m.fl.) som en konfigurationsprofil.

  • Mappen resources/mac/mdm i appens repository har en eksempelprofil, antimatter.mobileconfig. Rediger dens værdier, giv den dine egne PayloadIdentifier- og PayloadUUID-værdier (uuidgen genererer nye UUID'er), og upload den som en brugerdefineret profil.
  • De fleste MDM'er accepterer også kun nøglerne, som en "custom settings"- eller "preference domain"-payload for chat.antimatter.desktop. Samme mappe har dem i example-managed-preferences.plist.

Indstillingerne i profilens payload:

<key>PayloadType</key>
<string>chat.antimatter.desktop</string>
<key>DefaultServerList</key>
<array>
    <dict>
        <key>name</key>
        <string>Chat</string>
        <key>url</key>
        <string>https://chat.example.com</string>
    </dict>
</array>
<key>DefaultUsername</key>
<string>%USER%</string>
<key>EnableServerManagement</key>
<false/>
<key>EnableAutoUpdater</key>
<false/>

Booleske værdier kan også angives som heltallene 0 og 1.

Linux: policyfilen

På Linux læser appen /etc/antimatter-desktop/policies.json, et JSON-objekt med nøglerne fra indstillingstabellen:

{
    "DefaultServerList": [
        {"name": "Chat", "url": "https://chat.example.com"}
    ],
    "DefaultUsername": "%USER%",
    "EnableServerManagement": false,
    "EnableAutoUpdater": false,
    "TrustedEmbeddedMediaOrigins": []
}

Udrul den med dit konfigurationsstyringsværktøj (Ansible, Puppet, Salt m.fl.), ejet af root, læsbar for alle og kun skrivbar for root:

sudo install -d /etc/antimatter-desktop
sudo install -m 644 policies.json /etc/antimatter-desktop/policies.json

En fil, der ikke er gyldig JSON, ignoreres, med en advarsel i appens log. Flatpak-versionen kan ikke se værtens /etc: giv den læsetilgang, og den læser filen fra /run/host/etc/antimatter-desktop/policies.json:

sudo flatpak override --system --filesystem=host-etc:ro chat.antimatter.desktop

Politikker sat for Mattermost-desktopappen

På Windows læser appen også de politikker, der er sat til Mattermost-desktopappen, under SOFTWARE\Policies\Mattermost, som en fallback. Den læser dem efter placering: værdierne direkte under politiknøglen, DefaultServerList-undernøglen og TrustedEmbeddedMediaOrigins-undernøglen. For hver af disse tre placeringer læses Mattermost-nøglen kun, hvis Antimatter-nøglen ikke har værdier der, i enten hive. Når først én værdi er sat direkte under Antimatter-nøglen, for eksempel via MSI'ens AUTOUPDATE-egenskab, læses ingen af værdierne direkte under Mattermost-nøglen. Flyt alle dine politikker til Antimatter-nøglen på én gang.

På macOS læses de administrerede præferencer for Mattermost-desktopappen (com.mattermost.desktop) ikke: sæt dem i stedet for chat.antimatter.desktop.

Uunderskrevne builds

Desktopappens builds er ikke endnu underskrevet med et udgivercertifikat.

  • Windows. Når en person åbner et downloadet .exe eller .msi, melder Microsoft Defender SmartScreen, at Windows har beskyttet computeren, og nævner en ukendt udgiver. De vælger Mere info og derefter Kør alligevel. SmartScreen tjekker filer, som personer åbner efter et download, så personer ser ikke denne advarsel, når du udruller appen via SCCM, Intune eller gruppepolitik. Hvis dine computere kun kører software fra godkendte udgivere (AppLocker- eller App Control for Business-regler), tillad appen via installationsstien eller filhash i stedet.
  • macOS. Appen er ad hoc-underskrevet, men ikke notariseret af Apple. Første gang en person åbner en downloadet kopi, melder macOS, at den ikke kan verificere, at appen er fri for malware, og åbner den ikke. På macOS 15 og nyere åbner de Systemindstillinger › Privatliv & sikkerhed og vælger Åbn alligevel. På ældre versioner holder de Ctrl nede, klikker på appen og vælger Åbn. Gatekeeper tjekker kun filer, der er markeret som downloadet (med karantæneattributten): når du installerer appen med dine egne værktøjer, fjern markeringen i dit installationsskript med xattr -dr com.apple.quarantine /Applications/Antimatter.app.