2022-05-14, 23:04
  #1
Medlem
Neolitikums avatar
r ny p macOS, men inte p andra OS. Hur fungerar appar motsvarande flatpak eller liknande namn p andra plattformar? Ubuntu Snap r smre s jag klagar inte, vill bara lra mig.

Mycket av det som man laddar ner utanfr Appstore r just denna formen av appar, som inte r helt fr mig logiska.

Hur fungerar de s jag lr mig f dem installerade korrekt och kunna finnas ltt igen. qbittorrent-4.4.2.dmg sg ut som en vanlig installationsapp tills jag skulle anvnda den igen och var inte ens installerad. Ja ni fattar problemet antagligen som nybrjare. Ibland funkar det, s jag vet inte vad som ska gras eller ej.
Citera
2022-05-15, 09:03
  #2
Medlem
Citat:
Ursprungligen postat av Neolitikum
r ny p macOS, men inte p andra OS. Hur fungerar appar motsvarande flatpak eller liknande namn p andra plattformar? Ubuntu Snap r smre s jag klagar inte, vill bara lra mig.

Mycket av det som man laddar ner utanfr Appstore r just denna formen av appar, som inte r helt fr mig logiska.

Hur fungerar de s jag lr mig f dem installerade korrekt och kunna finnas ltt igen. qbittorrent-4.4.2.dmg sg ut som en vanlig installationsapp tills jag skulle anvnda den igen och var inte ens installerad. Ja ni fattar problemet antagligen som nybrjare. Ibland funkar det, s jag vet inte vad som ska gras eller ej.

Jag r ingen expert men appar via AppStore r sandboxade tror jag.

https://developer.apple.com/document...ty/app_sandbox

https://www.maketecheasier.com/how-m...rotects-users/

Snap har egentligen mer likheter med Docker i det att den frser appen med en egen specialkonfad Linux-image, anvnder sig bl.a. app armour och Linux Namespaces fr att sandboxa appar. S gr inte macOS tror jag.
Citera
2022-05-15, 11:07
  #3
Moderator
Neksnors avatar
Innan Apple startade sin App Store var det vanligt att appar laddades ner som skivavbilder (.dmg). Nr du klickar p en sdan monteras skivavbilden och funkar sedan som en vanlig hrddisk, som innehller appen. Du kan kra appen direkt frn skivavbilden eller flytta den till valfri annan mapp. Skivavbilens mapp var ofta lite smyckad med ngon pil som pekade p en lnk till mappen /Applications. Om man drog appen lngs pilen till genvgen s kopierades appen till /Applications. Det sistnmnda kan jmfras med att "installera" appen.
Citera
2022-05-15, 15:36
  #4
Medlem
Citat:
Ursprungligen postat av Sviskonboll
Jag r ingen expert men appar via AppStore r sandboxade tror jag.

https://developer.apple.com/document...ty/app_sandbox

https://www.maketecheasier.com/how-m...rotects-users/

Snap har egentligen mer likheter med Docker i det att den frser appen med en egen specialkonfad Linux-image, anvnder sig bl.a. app armour och Linux Namespaces fr att sandboxa appar. S gr inte macOS tror jag.
Tyvrr har ju Flatpak och Snap nrmast noll sandboxing som standard. Om inte Wayland anvnds finns det inget som "tvingar" apparna att hlla sig sandboxade.

Finns ven dessvrre stllen som mnga appars sandboxar ger tkomst till som i praktiken innebr att de inte r sandboxade alls.
https://flatkill.org/
^ Inte riktigt s illa r det om du kr en skerhetsfokuserad dist ssom Silverblue, men Flatpak och Snap r inte drmmen som den frhoppningsvis en dag blir. S idag r MacOS verlgsen nr det gller sandboxing, tyvrr.
Citera
2022-05-16, 06:30
  #5
Medlem
Citat:
Ursprungligen postat av Batmanbegins
Tyvrr har ju Flatpak och Snap nrmast noll sandboxing som standard. Om inte Wayland anvnds finns det inget som "tvingar" apparna att hlla sig sandboxade.

Finns ven dessvrre stllen som mnga appars sandboxar ger tkomst till som i praktiken innebr att de inte r sandboxade alls.
https://flatkill.org/
^ Inte riktigt s illa r det om du kr en skerhetsfokuserad dist ssom Silverblue, men Flatpak och Snap r inte drmmen som den frhoppningsvis en dag blir. S idag r MacOS verlgsen nr det gller sandboxing, tyvrr.

Intressant. Kollade lnken lite snabbt (som iofs gllde flatpak som jag inte har s stor koll p). Du menar allts att sandbox finns, men en stor del av apparna som distribueras inte anvnder den?

Jag kollade rtt ordentligt p Snap fr mnga r sedan nr det var ganska nytt. Med kollade p menar jag att jag grvde i koden fr att frst hur den var uppbyggd, byggde lite egna snaps fr att testa etc. Vad jag kunde se d var att sjlva sandldan utgjordes av appens egna filer, en mini-dist av Ubuntu, area fr appens filer instllningar. Sen kunde man begra access till t.ex. anvndarens katalog eller resten av filsystemet, ntverk, mm. Men enligt din lnk gllande flatpak s levereras mnga appar med allt pslaget. En stor besvikelse fr jag sga. Speciellt nr mnga Linux-anvndare gillar skerhet och kontroll.

Nu handlar trden om macOS iofs. Apple har under rens gng skrpt skerheten genom att begrnsa funktionen fr appar. Som standard mste alla appar (appstore och egna nedladdade) vara signerade fr att de ska kunna ppnas. Anvndaren kan naturligtvis sidostta detta.

Resurser som disk, kamera, mikrofon mm mste begras av appen. Viss funktionalitet r inte tillgnglig via AppStore. T.ex. s r viss hrdvarustatistik inte tillgnglig iStat Menus om den installeras via AppStore.
Citera
2022-05-16, 14:25
  #6
Medlem
Citat:
Ursprungligen postat av Neolitikum
Mycket av det som man laddar ner utanfr Appstore r just denna formen av appar, som inte r helt fr mig logiska.
Det r vl egentligen hur logiskt som helst? Appar i macOS bestr i huvudsakligen av kataloger som r namngiva efter "<Applikationsnamn>.app". I den katalogen finns sedan nra nog allt det aktuella programmet behver fr att kras.

Strukturen ser vanligtvis ut s hr:

<root>
Contents
- CodeResources
- MacOS
- Resources
- Info.plist
- PkgInfo
- _CodeSignature

Om katalogen (dvs appen) kopieras in i /Applications s dyker den ven upp i Launchpad automagiskt. Dremot finns det inget hinder fr ett macOS-program att starta frn valfri plats (finns ett ftal undantag).

Hgerklickar (eller control+vnsterklickar) du p en "Icon" fr ett macOS-program, s kan du vlja att se innehllet i katalogen. Det r ofta en barnlek att rensa ut ondiga resurser som sprkfiler och typsnitt frn ett program i macOS p detta sttet.

Skulle inte vilja jmfra detta alls med Snaps eller Flatpak som r mer likt Windows UWP. Dvs lngsamma, begrnsande, resurskrvande och allmnt dliga.

Kan inte komma p ngon nackdel alls med Apples .app-format.

Ang. dmg, s r det en "disk image" likt img eller iso som mountas automatiskt i datorn. Inte s konstigt att dessa frsvinner efter en eventuell omstart
__________________
Senast redigerad av Walkir 2022-05-16 kl. 14:29.
Citera
2022-05-23, 09:45
  #7
Medlem
Du fr skilja p self-contained och sandboxade applikationer.

I stort sett alla macOS appar r self-contained dvs precis som det sagts ovan s r en app egentligen en katalog som innehller de resurser applikationen behver (exkluderat systembibliotek), detta r fr att att appen inte ska behva ngot installationsprogram utan det gr dra och slppa dr man vill ha den.
Appar har fungerat s p macOS sedan tidernas begynnelse i stort sett, tidigare anvnde man ett multidimensionellt filsystem som hade olika "spr" i filerna dr den ena var data (som p 68k appar var oanvnt verlag, p powerpc sparades programkoden dr) den andra resurs spret som innehll olika delar av programmet. Detta var ett ganska elegant stt att frhindra att applikationer hade mngder med filer och blev ltt fr anvndaren att dra och slppa vart som frn/till vilken disk som helst, men det hade ocks ett stort problem det var direkt inkompatibelt med filsystem som inte hade std fr flera dimensioner vilket krnglade till det rejlt nr internet kom in i bilden. (Kan lsa mer om det hr om du r intresserad av tankegngarna osv... https://en.wikipedia.org/wiki/Resource_fork)

nr MacOS X lanserades s fortsatte det stdja detta ett par r men man adopterade OpenSteps motsvarighet som var att binrer osv sparades i "bundles" som r just bara en mapp med en viss ndelse beroende p typ, .app fr applikationer som exempel men det anvnds till en mngd olika "filformat".

Detta r vad self-contained innebr i vilket fall.

Det andra r sandboxed, fr det r ngot betydligt nyare p macOS och gr kortfattat ut p att en applikation kan innehlla en entitlements fil som ger den rttighet till olika APIer och delar av filsystemet, appar som sljs p AppStore mste ha detta, appar som du fr tag p andra vgar har n s lnge inget krav p det p macOS (vad jag knner till) men vissa APIer r onbara om din binr inte r signerad och har en entitlements fil. Sandboxningen i sig r forcerad p krnniv om den r aktiv fr den appen.
Detta r helt enkelt ett skerhetslager som r i komplement med self-contained.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in