GET https://kbin.spritesserver.nl/u/@Whooping_Seal@sh.itjust.works/threads/top

Components

18 Twig Components
37 Render Count
49 ms Render Time
16.0 MiB Memory Usage

Components

Name Metadata Render Count Render Time
settings_row_switch
"App\Twig\Components\SettingsRowSwitchComponent"
components/_settings_row_switch.html.twig
15 8.04ms
user_settings_row_switch
"App\Twig\Components\UserSettingsRowSwitchComponent"
components/_user_settings_row_switch.html.twig
4 0.65ms
date
"App\Twig\Components\DateComponent"
components/date.html.twig
2 2.19ms
settings_row_enum
"App\Twig\Components\SettingsRowEnumComponent"
components/_settings_row_enum.html.twig
2 0.56ms
entry
"App\Twig\Components\EntryComponent"
components/_cached.html.twig
1 23.47ms
user_inline
"App\Twig\Components\UserInlineComponent"
components/user_inline.html.twig
1 0.30ms
date_edited
"App\Twig\Components\DateEditedComponent"
components/date_edited.html.twig
1 0.26ms
magazine_inline
"App\Twig\Components\MagazineInlineComponent"
components/magazine_inline.html.twig
1 0.31ms
vote
"App\Twig\Components\VoteComponent"
components/vote.html.twig
1 1.19ms
boost
"App\Twig\Components\BoostComponent"
components/boost.html.twig
1 1.86ms
user_actions
"App\Twig\Components\UserActionsComponent"
components/user_actions.html.twig
1 0.45ms
related_magazines
"App\Twig\Components\RelatedMagazinesComponent"
components/_cached.html.twig
1 2.39ms
active_users
"App\Twig\Components\ActiveUsersComponent"
components/_cached.html.twig
1 0.20ms
related_categories
"App\Twig\Components\RelatedCategoriesComponent"
components/_cached.html.twig
1 1.35ms
related_posts
"App\Twig\Components\RelatedPostsComponent"
components/_cached.html.twig
1 1.31ms
related_entries
"App\Twig\Components\RelatedEntriesComponent"
components/_cached.html.twig
1 2.32ms
support_us_block
"App\Twig\Components\SupportUsBlock"
components/_cached.html.twig
1 0.24ms
featured_magazines
"App\Twig\Components\FeaturedMagazinesComponent"
components/_cached.html.twig
1 7.21ms

Render calls

entry App\Twig\Components\EntryComponent 16.0 MiB 23.47 ms
Input props
[
  "entry" => App\Entity\Entry {#1562
    +user: App\Entity\User {#265
      +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
      +cover: Proxies\__CG__\App\Entity\Image {#247 …}
      +email: "Whooping_Seal@sh.itjust.works"
      +username: "@Whooping_Seal@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Your friendly neighbourhood sh.it.head\n
        \n
        A Reddit refugee after 8 years of Reddit-ing
        """
      +lastActive: DateTime @1700673232 {#275
        date: 2023-11-22 18:13:52.0 +01:00
      }
      +markedForDeletionAt: null
      +fields: null
      +oauthGithubId: null
      +oauthGoogleId: null
      +oauthFacebookId: null
      +oauthKeycloakId: null
      +hideAdult: true
      +showSubscribedUsers: true
      +showSubscribedMagazines: true
      +showSubscribedDomains: true
      +preferredLanguages: []
      +featuredMagazines: null
      +showProfileSubscriptions: true
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: false
      +notifyOnNewEntryCommentReply: false
      +notifyOnNewPost: false
      +notifyOnNewPostReply: false
      +notifyOnNewPostCommentReply: false
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
      +posts: Doctrine\ORM\PersistentCollection {#67 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
      +follows: Doctrine\ORM\PersistentCollection {#1809 …}
      +followers: Doctrine\ORM\PersistentCollection {#2390 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
      +reports: Doctrine\ORM\PersistentCollection {#2480 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
      +violations: Doctrine\ORM\PersistentCollection {#2413 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
      +awards: Doctrine\ORM\PersistentCollection {#1867 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
      +categories: Doctrine\ORM\PersistentCollection {#1395 …}
      -id: 4720
      -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
      +apId: "Whooping_Seal@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
      +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "Whooping_Seal"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728334394 {#269
        date: 2024-10-07 22:53:14.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687143801 {#268
        date: 2023-06-19 05:03:21.0 +02:00
      }
    }
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
      +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
      +name: "linux@lemmy.ml"
      +title: "linux"
      +description: """
        From Wikipedia, the free encyclopedia\n
        \n
        Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
        \n
        Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
        \n
        ### Rules\n
        \n
        - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
        - No misinformation\n
        - No NSFW content\n
        - No hate speech, bigotry, etc\n
        \n
        ### Related Communities\n
        \n
        - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
        - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
        - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
        - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
        \n
        Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 1406
      +entryCommentCount: 28632
      +postCount: 6
      +postCommentCount: 214
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729583542 {#2319
        date: 2024-10-22 09:52:22.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
      +entries: Doctrine\ORM\PersistentCollection {#2281 …}
      +posts: Doctrine\ORM\PersistentCollection {#2280 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
      +bans: Doctrine\ORM\PersistentCollection {#2220 …}
      +reports: Doctrine\ORM\PersistentCollection {#2194 …}
      +badges: Doctrine\ORM\PersistentCollection {#2209 …}
      +logs: Doctrine\ORM\PersistentCollection {#2271 …}
      +awards: Doctrine\ORM\PersistentCollection {#2206 …}
      +categories: Doctrine\ORM\PersistentCollection {#2262 …}
      -id: 73
      +apId: "linux@lemmy.ml"
      +apProfileId: "https://lemmy.ml/c/linux"
      +apPublicUrl: "https://lemmy.ml/c/linux"
      +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
      +apInboxUrl: "https://lemmy.ml/inbox"
      +apDomain: "lemmy.ml"
      +apPreferredUsername: "linux"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729583596 {#2317
        date: 2024-10-22 09:53:16.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1698929468 {#2318
        date: 2023-11-02 13:51:08.0 +01:00
      }
      +__isInitialized__: true
       …2
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1629 …}
    +slug: "Syncthing-podman-container-on-Immutable-OSes"
    +title: "Syncthing podman container on Immutable OSes"
    +url: null
    +body: """
      **Update**: The guide on github has been updated and has addopted a different method. Notably, it: A) still accomplishing my goal of avoiding running the process inside as root. B) uses the linuxserver.io image rather than the syncthing/syncthing one (my method does not allow for the linuxserver.io image to run), the linuxserver one is based on alpine, I truly forget what the other one is based on.\n
      \n
      An archived version of the guide I followed to create my setup has been placed bellow, the updated (and all subsequent version) can be found [here](https://mmarco94.github.io/linux-guides/immutable-os/syncthing)\n
      \n
      I saw [this guide](https://web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing) discussing how to run Syncthing in a podman container on immutable OSes and decided to try and create a better solution that avoids running the process inside as root. I am new to podman and it’s been a few years since I used docker so I am a novice in this side of system administration and I guess I am writing this as a “sanity check” for what I have done.\n
      \n
      Below is the podman run arguments I used in place of the ones found in the article, I also manage it with systemd as shown in the article.\n
      \n
      ```\n
      \n
      <span style="color:#323232;">\n
      </span><span style="color:#323232;">podman run -d \n
      </span><span style="color:#323232;">  --name=syncthing \n
      </span><span style="color:#323232;">  --hostname=syncpod \n
      </span><span style="color:#323232;">  --label io.containers.autoupdate=registry \n
      </span><span style="color:#323232;">  --userns keep-id \n
      </span><span style="color:#323232;">  -p 127.0.0.1:8384:8384 \n
      </span><span style="color:#323232;">  -p 22000:22000/tcp \n
      </span><span style="color:#323232;">  -p 22000:22000/udp \n
      </span><span style="color:#323232;">  -p 21027:21027/udp \n
      </span><span style="color:#323232;">  -v ~/.config/syncthing:/var/syncthing/config:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs/:/SyncedDirs:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs2/:/var/syncthing/SyncedDirs2:Z \n
      </span><span style="color:#323232;">  docker.io/syncthing/syncthing:latest\n
      </span><span style="color:#323232;">\n
      </span>\n
      ```\n
      \n
      *Note: I feel the original guide does *not* explain what the :Z flag does very well, it should at least emphasize unknowing users that it is telling podman to change the SELinux label of a dir to match that of the container.*\n
      \n
      The notable changes in my arguments is the `–userns keep-id` option and switching from the linuxserver.io version to the syncthing image. The keep-id option from my understanding tells Podman to create a user namespace where the user and container map to the same UID:GID values. Allowing all files the container touches to still be used by me, the user. I had to switch from the linuxserver.io version to the syncthing official one because the former did not allow the `–userns keep-id` option to work (perhaps because it is based on Alpine Linux? I have to investigate more. It failed on running an add-user command if I recall)\n
      \n
      *Below is an excerpt from a RedHat article describing the `–userns keep-id` option, square brackets are mine:*\n
      \n
      User namespace modes\n
      --------------------\n
      \n
      I can change this default mapping using the –userns option, which is described in the podman run man page. This list shows the different modes you can pass to the –userns option.\n
      \n
      - Key: “” (Unset) [Effectively what the original guide did]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: 0 (Default User account mapped to root user in container.) (Default)\n
          </span>\n
          ```\n
      - Key: keep-id [What I am doing]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: $UID (Map user account to the same UID within the container.)\n
          </span>\n
          ```\n
      \n
      [(Source)](https://www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)\n
      \n
      So far this method seems to work quite well, and has replaced the `syncthing` package I had layered for a while. Is this the best way to run it on an OS like Silverblue / Kinoite, or is there a more sensible route to go? Any feedback is appreciated!\n
      \n
      Edit: Clarity and grammar, and some more detail in a few spots.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 0
    +favouriteCount: 0
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1689437075 {#1567
      date: 2023-07-15 18:04:35.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1628 …}
    +votes: Doctrine\ORM\PersistentCollection {#1599 …}
    +reports: Doctrine\ORM\PersistentCollection {#1597 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2447 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2464 …}
    +badges: Doctrine\ORM\PersistentCollection {#2468 …}
    +children: []
    -id: 14256
    -titleTs: "'contain':3 'immut':5 'ose':6 'podman':2 'syncth':1"
    -bodyTs: "'/.config/syncthing':232 '/linux-guides/immutable-os/syncthing)':96 '/synceddirs':236,237 '/synceddirs2':240 '/syncthing/syncthing:latest':245 '/sysadmin/rootless-podman-user-namespace-modes)':509 '/var/syncthing/config':233 '/var/syncthing/synceddirs2':241 '/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':103 '0':471 '127.0.0.1':219 '21027':229 '21027/udp':230 '22000':223,226 '22000/tcp':224 '22000/udp':227 '8384':220,221 'accomplish':19 'account':474,498 'add':398 'add-us':397 'addopt':11 'administr':159 'allow':44,338,370 'alpin':57,385 'also':194 'appreci':557 'archiv':69 'argument':181,293 'articl':192,203,411 'avoid':23,126 'b':30 'base':55,66,383 'bellow':83 'best':534 'better':123 'bracket':420 'chang':275,290,428 'check':170 'clariti':559 'command':400 'contain':112,287,330,342,469,480,493,505 'creat':77,121,322 'd':206 'decid':117 'default':430,472,481 'describ':412,438 'detail':565 'differ':13,449 'dir':281 'discuss':104 'docker':148 'docker.io':244 'docker.io/syncthing/syncthing:latest':243 'done':175 'edit':558 'effect':460 'emphas':266 'excerpt':407 'explain':254 'fail':393 'far':511 'feedback':555 'feel':248 'file':340 'flag':258 'follow':75 'forget':60 'former':367 'found':92,189 'gid':336 'github':5 'go':553 'goal':21 'grammar':561 'guess':162 'guid':3,73,100,251,464 'host':466,490 'hostnam':209 'id':217,299,314,375,417,485 'imag':34,48,310 'immut':114 'insid':27,130 'investig':390 'io.containers.autoupdate':212 'keep':216,298,313,374,416,484 'keep-id':215,297,312,373,415,483 'key':458,482 'kinoit':544 'label':211,278 'layer':527 'least':265 'like':542 'linux':386 'linuxserv':52 'linuxserver.io':33,47,305,358 'list':446 'man':443 'manag':195 'map':331,431,475,496 'match':283 'method':14,41,513 'mine':422 'mmarco94.github.io':95 'mmarco94.github.io/linux-guides/immutable-os/syncthing)':94 'mode':425,450 'name':207 'namespac':325,424 'new':135 'notabl':15,289 'note':246 'novic':153 'offici':363 'one':39,53,64,188,364 'option':300,315,376,418,435,457 'origin':250,463 'os':541 'ose':115 'p':218,222,225,228 'packag':524 'page':444 'pass':453 'perhap':379 'place':82,185 'podman':111,137,179,204,273,320,441 'process':26,129 'quit':517 'rather':35 'recal':403 'redhat':410 'registri':213 'replac':521 'root':29,132,477 'rout':551 'run':24,50,107,127,180,205,395,442,537 'saniti':169 'saw':98 'seem':514 'selinux':277 'sensibl':550 'setup':79 'show':447 'shown':200 'side':156 'silverblu':543 'sinc':145 'solut':124 'sourc':506 'spot':569 'squar':419 'still':18,345 'subsequ':88 'switch':302,355 'syncpod':210 'syncth':108,208,309,362,523 'syncthing/syncthing':38 'system':158 'systemd':198 'tell':272,319 'touch':343 'tri':119 'truli':59 'uid':335,468,492,495,502 'understand':318 'unknow':267 'unset':459 'updat':1,8,85 'use':31,147,183,347,432 'user':268,324,328,351,399,423,467,470,473,478,491,494,497 'usern':214,296,372,414,434,456 'v':231,235,239 'valu':337 'version':70,89,306,359 'way':535 'web.archive.org':102 'web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':101 'well':261,518 'within':503 'work':378,516 'write':165 'www.redhat.com':508 'www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)':507 'year':144 'z':234,238,242,257"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 0
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/1163818"
    +editedAt: DateTimeImmutable @1700673245 {#1414
      date: 2023-11-22 18:14:05.0 +01:00
    }
    +createdAt: DateTimeImmutable @1689437075 {#1548
      date: 2023-07-15 18:04:35.0 +02:00
    }
  }
  "showMagazineName" => true
]
Attributes
[]
Component
App\Twig\Components\EntryComponent {#2045
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
  -newCommentMarkerCount: App\Kbin\NewCommentMarker\NewCommentMarkerCount {#2047 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
  +entry: App\Entity\Entry {#1562
    +user: App\Entity\User {#265
      +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
      +cover: Proxies\__CG__\App\Entity\Image {#247 …}
      +email: "Whooping_Seal@sh.itjust.works"
      +username: "@Whooping_Seal@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Your friendly neighbourhood sh.it.head\n
        \n
        A Reddit refugee after 8 years of Reddit-ing
        """
      +lastActive: DateTime @1700673232 {#275
        date: 2023-11-22 18:13:52.0 +01:00
      }
      +markedForDeletionAt: null
      +fields: null
      +oauthGithubId: null
      +oauthGoogleId: null
      +oauthFacebookId: null
      +oauthKeycloakId: null
      +hideAdult: true
      +showSubscribedUsers: true
      +showSubscribedMagazines: true
      +showSubscribedDomains: true
      +preferredLanguages: []
      +featuredMagazines: null
      +showProfileSubscriptions: true
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: false
      +notifyOnNewEntryCommentReply: false
      +notifyOnNewPost: false
      +notifyOnNewPostReply: false
      +notifyOnNewPostCommentReply: false
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
      +posts: Doctrine\ORM\PersistentCollection {#67 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
      +follows: Doctrine\ORM\PersistentCollection {#1809 …}
      +followers: Doctrine\ORM\PersistentCollection {#2390 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
      +reports: Doctrine\ORM\PersistentCollection {#2480 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
      +violations: Doctrine\ORM\PersistentCollection {#2413 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
      +awards: Doctrine\ORM\PersistentCollection {#1867 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
      +categories: Doctrine\ORM\PersistentCollection {#1395 …}
      -id: 4720
      -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
      +apId: "Whooping_Seal@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
      +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "Whooping_Seal"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728334394 {#269
        date: 2024-10-07 22:53:14.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687143801 {#268
        date: 2023-06-19 05:03:21.0 +02:00
      }
    }
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
      +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
      +name: "linux@lemmy.ml"
      +title: "linux"
      +description: """
        From Wikipedia, the free encyclopedia\n
        \n
        Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
        \n
        Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
        \n
        ### Rules\n
        \n
        - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
        - No misinformation\n
        - No NSFW content\n
        - No hate speech, bigotry, etc\n
        \n
        ### Related Communities\n
        \n
        - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
        - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
        - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
        - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
        \n
        Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 1406
      +entryCommentCount: 28632
      +postCount: 6
      +postCommentCount: 214
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729583542 {#2319
        date: 2024-10-22 09:52:22.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
      +entries: Doctrine\ORM\PersistentCollection {#2281 …}
      +posts: Doctrine\ORM\PersistentCollection {#2280 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
      +bans: Doctrine\ORM\PersistentCollection {#2220 …}
      +reports: Doctrine\ORM\PersistentCollection {#2194 …}
      +badges: Doctrine\ORM\PersistentCollection {#2209 …}
      +logs: Doctrine\ORM\PersistentCollection {#2271 …}
      +awards: Doctrine\ORM\PersistentCollection {#2206 …}
      +categories: Doctrine\ORM\PersistentCollection {#2262 …}
      -id: 73
      +apId: "linux@lemmy.ml"
      +apProfileId: "https://lemmy.ml/c/linux"
      +apPublicUrl: "https://lemmy.ml/c/linux"
      +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
      +apInboxUrl: "https://lemmy.ml/inbox"
      +apDomain: "lemmy.ml"
      +apPreferredUsername: "linux"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729583596 {#2317
        date: 2024-10-22 09:53:16.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1698929468 {#2318
        date: 2023-11-02 13:51:08.0 +01:00
      }
      +__isInitialized__: true
       …2
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1629 …}
    +slug: "Syncthing-podman-container-on-Immutable-OSes"
    +title: "Syncthing podman container on Immutable OSes"
    +url: null
    +body: """
      **Update**: The guide on github has been updated and has addopted a different method. Notably, it: A) still accomplishing my goal of avoiding running the process inside as root. B) uses the linuxserver.io image rather than the syncthing/syncthing one (my method does not allow for the linuxserver.io image to run), the linuxserver one is based on alpine, I truly forget what the other one is based on.\n
      \n
      An archived version of the guide I followed to create my setup has been placed bellow, the updated (and all subsequent version) can be found [here](https://mmarco94.github.io/linux-guides/immutable-os/syncthing)\n
      \n
      I saw [this guide](https://web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing) discussing how to run Syncthing in a podman container on immutable OSes and decided to try and create a better solution that avoids running the process inside as root. I am new to podman and it’s been a few years since I used docker so I am a novice in this side of system administration and I guess I am writing this as a “sanity check” for what I have done.\n
      \n
      Below is the podman run arguments I used in place of the ones found in the article, I also manage it with systemd as shown in the article.\n
      \n
      ```\n
      \n
      <span style="color:#323232;">\n
      </span><span style="color:#323232;">podman run -d \n
      </span><span style="color:#323232;">  --name=syncthing \n
      </span><span style="color:#323232;">  --hostname=syncpod \n
      </span><span style="color:#323232;">  --label io.containers.autoupdate=registry \n
      </span><span style="color:#323232;">  --userns keep-id \n
      </span><span style="color:#323232;">  -p 127.0.0.1:8384:8384 \n
      </span><span style="color:#323232;">  -p 22000:22000/tcp \n
      </span><span style="color:#323232;">  -p 22000:22000/udp \n
      </span><span style="color:#323232;">  -p 21027:21027/udp \n
      </span><span style="color:#323232;">  -v ~/.config/syncthing:/var/syncthing/config:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs/:/SyncedDirs:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs2/:/var/syncthing/SyncedDirs2:Z \n
      </span><span style="color:#323232;">  docker.io/syncthing/syncthing:latest\n
      </span><span style="color:#323232;">\n
      </span>\n
      ```\n
      \n
      *Note: I feel the original guide does *not* explain what the :Z flag does very well, it should at least emphasize unknowing users that it is telling podman to change the SELinux label of a dir to match that of the container.*\n
      \n
      The notable changes in my arguments is the `–userns keep-id` option and switching from the linuxserver.io version to the syncthing image. The keep-id option from my understanding tells Podman to create a user namespace where the user and container map to the same UID:GID values. Allowing all files the container touches to still be used by me, the user. I had to switch from the linuxserver.io version to the syncthing official one because the former did not allow the `–userns keep-id` option to work (perhaps because it is based on Alpine Linux? I have to investigate more. It failed on running an add-user command if I recall)\n
      \n
      *Below is an excerpt from a RedHat article describing the `–userns keep-id` option, square brackets are mine:*\n
      \n
      User namespace modes\n
      --------------------\n
      \n
      I can change this default mapping using the –userns option, which is described in the podman run man page. This list shows the different modes you can pass to the –userns option.\n
      \n
      - Key: “” (Unset) [Effectively what the original guide did]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: 0 (Default User account mapped to root user in container.) (Default)\n
          </span>\n
          ```\n
      - Key: keep-id [What I am doing]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: $UID (Map user account to the same UID within the container.)\n
          </span>\n
          ```\n
      \n
      [(Source)](https://www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)\n
      \n
      So far this method seems to work quite well, and has replaced the `syncthing` package I had layered for a while. Is this the best way to run it on an OS like Silverblue / Kinoite, or is there a more sensible route to go? Any feedback is appreciated!\n
      \n
      Edit: Clarity and grammar, and some more detail in a few spots.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 0
    +favouriteCount: 0
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1689437075 {#1567
      date: 2023-07-15 18:04:35.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1628 …}
    +votes: Doctrine\ORM\PersistentCollection {#1599 …}
    +reports: Doctrine\ORM\PersistentCollection {#1597 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2447 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2464 …}
    +badges: Doctrine\ORM\PersistentCollection {#2468 …}
    +children: []
    -id: 14256
    -titleTs: "'contain':3 'immut':5 'ose':6 'podman':2 'syncth':1"
    -bodyTs: "'/.config/syncthing':232 '/linux-guides/immutable-os/syncthing)':96 '/synceddirs':236,237 '/synceddirs2':240 '/syncthing/syncthing:latest':245 '/sysadmin/rootless-podman-user-namespace-modes)':509 '/var/syncthing/config':233 '/var/syncthing/synceddirs2':241 '/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':103 '0':471 '127.0.0.1':219 '21027':229 '21027/udp':230 '22000':223,226 '22000/tcp':224 '22000/udp':227 '8384':220,221 'accomplish':19 'account':474,498 'add':398 'add-us':397 'addopt':11 'administr':159 'allow':44,338,370 'alpin':57,385 'also':194 'appreci':557 'archiv':69 'argument':181,293 'articl':192,203,411 'avoid':23,126 'b':30 'base':55,66,383 'bellow':83 'best':534 'better':123 'bracket':420 'chang':275,290,428 'check':170 'clariti':559 'command':400 'contain':112,287,330,342,469,480,493,505 'creat':77,121,322 'd':206 'decid':117 'default':430,472,481 'describ':412,438 'detail':565 'differ':13,449 'dir':281 'discuss':104 'docker':148 'docker.io':244 'docker.io/syncthing/syncthing:latest':243 'done':175 'edit':558 'effect':460 'emphas':266 'excerpt':407 'explain':254 'fail':393 'far':511 'feedback':555 'feel':248 'file':340 'flag':258 'follow':75 'forget':60 'former':367 'found':92,189 'gid':336 'github':5 'go':553 'goal':21 'grammar':561 'guess':162 'guid':3,73,100,251,464 'host':466,490 'hostnam':209 'id':217,299,314,375,417,485 'imag':34,48,310 'immut':114 'insid':27,130 'investig':390 'io.containers.autoupdate':212 'keep':216,298,313,374,416,484 'keep-id':215,297,312,373,415,483 'key':458,482 'kinoit':544 'label':211,278 'layer':527 'least':265 'like':542 'linux':386 'linuxserv':52 'linuxserver.io':33,47,305,358 'list':446 'man':443 'manag':195 'map':331,431,475,496 'match':283 'method':14,41,513 'mine':422 'mmarco94.github.io':95 'mmarco94.github.io/linux-guides/immutable-os/syncthing)':94 'mode':425,450 'name':207 'namespac':325,424 'new':135 'notabl':15,289 'note':246 'novic':153 'offici':363 'one':39,53,64,188,364 'option':300,315,376,418,435,457 'origin':250,463 'os':541 'ose':115 'p':218,222,225,228 'packag':524 'page':444 'pass':453 'perhap':379 'place':82,185 'podman':111,137,179,204,273,320,441 'process':26,129 'quit':517 'rather':35 'recal':403 'redhat':410 'registri':213 'replac':521 'root':29,132,477 'rout':551 'run':24,50,107,127,180,205,395,442,537 'saniti':169 'saw':98 'seem':514 'selinux':277 'sensibl':550 'setup':79 'show':447 'shown':200 'side':156 'silverblu':543 'sinc':145 'solut':124 'sourc':506 'spot':569 'squar':419 'still':18,345 'subsequ':88 'switch':302,355 'syncpod':210 'syncth':108,208,309,362,523 'syncthing/syncthing':38 'system':158 'systemd':198 'tell':272,319 'touch':343 'tri':119 'truli':59 'uid':335,468,492,495,502 'understand':318 'unknow':267 'unset':459 'updat':1,8,85 'use':31,147,183,347,432 'user':268,324,328,351,399,423,467,470,473,478,491,494,497 'usern':214,296,372,414,434,456 'v':231,235,239 'valu':337 'version':70,89,306,359 'way':535 'web.archive.org':102 'web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':101 'well':261,518 'within':503 'work':378,516 'write':165 'www.redhat.com':508 'www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)':507 'year':144 'z':234,238,242,257"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 0
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/1163818"
    +editedAt: DateTimeImmutable @1700673245 {#1414
      date: 2023-11-22 18:14:05.0 +01:00
    }
    +createdAt: DateTimeImmutable @1689437075 {#1548
      date: 2023-07-15 18:04:35.0 +02:00
    }
  }
  +isSingle: false
  +showShortSentence: true
  +showBody: false
  +showMagazineName: true
  +canSeeTrash: false
  +newComments: 0
}
user_inline App\Twig\Components\UserInlineComponent 16.0 MiB 0.30 ms
Input props
[
  "user" => App\Entity\User {#265
    +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
    +cover: Proxies\__CG__\App\Entity\Image {#247 …}
    +email: "Whooping_Seal@sh.itjust.works"
    +username: "@Whooping_Seal@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Your friendly neighbourhood sh.it.head\n
      \n
      A Reddit refugee after 8 years of Reddit-ing
      """
    +lastActive: DateTime @1700673232 {#275
      date: 2023-11-22 18:13:52.0 +01:00
    }
    +markedForDeletionAt: null
    +fields: null
    +oauthGithubId: null
    +oauthGoogleId: null
    +oauthFacebookId: null
    +oauthKeycloakId: null
    +hideAdult: true
    +showSubscribedUsers: true
    +showSubscribedMagazines: true
    +showSubscribedDomains: true
    +preferredLanguages: []
    +featuredMagazines: null
    +showProfileSubscriptions: true
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: false
    +notifyOnNewEntryCommentReply: false
    +notifyOnNewPost: false
    +notifyOnNewPostReply: false
    +notifyOnNewPostCommentReply: false
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
    +posts: Doctrine\ORM\PersistentCollection {#67 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
    +follows: Doctrine\ORM\PersistentCollection {#1809 …}
    +followers: Doctrine\ORM\PersistentCollection {#2390 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
    +reports: Doctrine\ORM\PersistentCollection {#2480 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
    +violations: Doctrine\ORM\PersistentCollection {#2413 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
    +awards: Doctrine\ORM\PersistentCollection {#1867 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
    +categories: Doctrine\ORM\PersistentCollection {#1395 …}
    -id: 4720
    -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
    +apId: "Whooping_Seal@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
    +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "Whooping_Seal"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728334394 {#269
      date: 2024-10-07 22:53:14.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687143801 {#268
      date: 2023-06-19 05:03:21.0 +02:00
    }
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#2512
  +user: App\Entity\User {#265
    +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
    +cover: Proxies\__CG__\App\Entity\Image {#247 …}
    +email: "Whooping_Seal@sh.itjust.works"
    +username: "@Whooping_Seal@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Your friendly neighbourhood sh.it.head\n
      \n
      A Reddit refugee after 8 years of Reddit-ing
      """
    +lastActive: DateTime @1700673232 {#275
      date: 2023-11-22 18:13:52.0 +01:00
    }
    +markedForDeletionAt: null
    +fields: null
    +oauthGithubId: null
    +oauthGoogleId: null
    +oauthFacebookId: null
    +oauthKeycloakId: null
    +hideAdult: true
    +showSubscribedUsers: true
    +showSubscribedMagazines: true
    +showSubscribedDomains: true
    +preferredLanguages: []
    +featuredMagazines: null
    +showProfileSubscriptions: true
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: false
    +notifyOnNewEntryCommentReply: false
    +notifyOnNewPost: false
    +notifyOnNewPostReply: false
    +notifyOnNewPostCommentReply: false
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
    +posts: Doctrine\ORM\PersistentCollection {#67 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
    +follows: Doctrine\ORM\PersistentCollection {#1809 …}
    +followers: Doctrine\ORM\PersistentCollection {#2390 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
    +reports: Doctrine\ORM\PersistentCollection {#2480 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
    +violations: Doctrine\ORM\PersistentCollection {#2413 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
    +awards: Doctrine\ORM\PersistentCollection {#1867 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
    +categories: Doctrine\ORM\PersistentCollection {#1395 …}
    -id: 4720
    -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
    +apId: "Whooping_Seal@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
    +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "Whooping_Seal"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728334394 {#269
      date: 2024-10-07 22:53:14.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687143801 {#268
      date: 2023-06-19 05:03:21.0 +02:00
    }
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 16.0 MiB 0.51 ms
Input props
[
  "date" => DateTimeImmutable @1689437075 {#1548
    date: 2023-07-15 18:04:35.0 +02:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#2579
  +date: DateTimeImmutable @1689437075 {#1548
    date: 2023-07-15 18:04:35.0 +02:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 16.0 MiB 0.26 ms
Input props
[
  "createdAt" => DateTimeImmutable @1689437075 {#1548
    date: 2023-07-15 18:04:35.0 +02:00
  }
  "editedAt" => DateTimeImmutable @1700673245 {#1414
    date: 2023-11-22 18:14:05.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#2643
  +createdAt: DateTimeImmutable @1689437075 {#1548
    date: 2023-07-15 18:04:35.0 +02:00
  }
  +editedAt: DateTimeImmutable @1700673245 {#1414
    date: 2023-11-22 18:14:05.0 +01:00
  }
}
magazine_inline App\Twig\Components\MagazineInlineComponent 16.0 MiB 0.31 ms
Input props
[
  "magazine" => Proxies\__CG__\App\Entity\Magazine {#1719
    +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
    +name: "linux@lemmy.ml"
    +title: "linux"
    +description: """
      From Wikipedia, the free encyclopedia\n
      \n
      Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
      \n
      Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
      \n
      ### Rules\n
      \n
      - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
      - No misinformation\n
      - No NSFW content\n
      - No hate speech, bigotry, etc\n
      \n
      ### Related Communities\n
      \n
      - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
      - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
      - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
      - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
      \n
      Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 1406
    +entryCommentCount: 28632
    +postCount: 6
    +postCommentCount: 214
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583542 {#2319
      date: 2024-10-22 09:52:22.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
    +entries: Doctrine\ORM\PersistentCollection {#2281 …}
    +posts: Doctrine\ORM\PersistentCollection {#2280 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
    +bans: Doctrine\ORM\PersistentCollection {#2220 …}
    +reports: Doctrine\ORM\PersistentCollection {#2194 …}
    +badges: Doctrine\ORM\PersistentCollection {#2209 …}
    +logs: Doctrine\ORM\PersistentCollection {#2271 …}
    +awards: Doctrine\ORM\PersistentCollection {#2206 …}
    +categories: Doctrine\ORM\PersistentCollection {#2262 …}
    -id: 73
    +apId: "linux@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/linux"
    +apPublicUrl: "https://lemmy.ml/c/linux"
    +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "linux"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1729583596 {#2317
      date: 2024-10-22 09:53:16.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1698929468 {#2318
      date: 2023-11-02 13:51:08.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\MagazineInlineComponent {#2708
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
    +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
    +name: "linux@lemmy.ml"
    +title: "linux"
    +description: """
      From Wikipedia, the free encyclopedia\n
      \n
      Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
      \n
      Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
      \n
      ### Rules\n
      \n
      - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
      - No misinformation\n
      - No NSFW content\n
      - No hate speech, bigotry, etc\n
      \n
      ### Related Communities\n
      \n
      - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
      - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
      - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
      - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
      \n
      Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 1406
    +entryCommentCount: 28632
    +postCount: 6
    +postCommentCount: 214
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583542 {#2319
      date: 2024-10-22 09:52:22.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
    +entries: Doctrine\ORM\PersistentCollection {#2281 …}
    +posts: Doctrine\ORM\PersistentCollection {#2280 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
    +bans: Doctrine\ORM\PersistentCollection {#2220 …}
    +reports: Doctrine\ORM\PersistentCollection {#2194 …}
    +badges: Doctrine\ORM\PersistentCollection {#2209 …}
    +logs: Doctrine\ORM\PersistentCollection {#2271 …}
    +awards: Doctrine\ORM\PersistentCollection {#2206 …}
    +categories: Doctrine\ORM\PersistentCollection {#2262 …}
    -id: 73
    +apId: "linux@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/linux"
    +apPublicUrl: "https://lemmy.ml/c/linux"
    +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "linux"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1729583596 {#2317
      date: 2024-10-22 09:53:16.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1698929468 {#2318
      date: 2023-11-02 13:51:08.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +showTitle: true
  +fullName: false
  +stretchedLink: false
  +showAvatar: false
}
vote App\Twig\Components\VoteComponent 16.0 MiB 1.19 ms
Input props
[
  "subject" => App\Entity\Entry {#1562
    +user: App\Entity\User {#265
      +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
      +cover: Proxies\__CG__\App\Entity\Image {#247 …}
      +email: "Whooping_Seal@sh.itjust.works"
      +username: "@Whooping_Seal@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Your friendly neighbourhood sh.it.head\n
        \n
        A Reddit refugee after 8 years of Reddit-ing
        """
      +lastActive: DateTime @1700673232 {#275
        date: 2023-11-22 18:13:52.0 +01:00
      }
      +markedForDeletionAt: null
      +fields: null
      +oauthGithubId: null
      +oauthGoogleId: null
      +oauthFacebookId: null
      +oauthKeycloakId: null
      +hideAdult: true
      +showSubscribedUsers: true
      +showSubscribedMagazines: true
      +showSubscribedDomains: true
      +preferredLanguages: []
      +featuredMagazines: null
      +showProfileSubscriptions: true
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: false
      +notifyOnNewEntryCommentReply: false
      +notifyOnNewPost: false
      +notifyOnNewPostReply: false
      +notifyOnNewPostCommentReply: false
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
      +posts: Doctrine\ORM\PersistentCollection {#67 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
      +follows: Doctrine\ORM\PersistentCollection {#1809 …}
      +followers: Doctrine\ORM\PersistentCollection {#2390 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
      +reports: Doctrine\ORM\PersistentCollection {#2480 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
      +violations: Doctrine\ORM\PersistentCollection {#2413 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
      +awards: Doctrine\ORM\PersistentCollection {#1867 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
      +categories: Doctrine\ORM\PersistentCollection {#1395 …}
      -id: 4720
      -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
      +apId: "Whooping_Seal@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
      +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "Whooping_Seal"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728334394 {#269
        date: 2024-10-07 22:53:14.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687143801 {#268
        date: 2023-06-19 05:03:21.0 +02:00
      }
    }
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
      +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
      +name: "linux@lemmy.ml"
      +title: "linux"
      +description: """
        From Wikipedia, the free encyclopedia\n
        \n
        Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
        \n
        Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
        \n
        ### Rules\n
        \n
        - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
        - No misinformation\n
        - No NSFW content\n
        - No hate speech, bigotry, etc\n
        \n
        ### Related Communities\n
        \n
        - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
        - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
        - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
        - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
        \n
        Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 1406
      +entryCommentCount: 28632
      +postCount: 6
      +postCommentCount: 214
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729583542 {#2319
        date: 2024-10-22 09:52:22.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
      +entries: Doctrine\ORM\PersistentCollection {#2281 …}
      +posts: Doctrine\ORM\PersistentCollection {#2280 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
      +bans: Doctrine\ORM\PersistentCollection {#2220 …}
      +reports: Doctrine\ORM\PersistentCollection {#2194 …}
      +badges: Doctrine\ORM\PersistentCollection {#2209 …}
      +logs: Doctrine\ORM\PersistentCollection {#2271 …}
      +awards: Doctrine\ORM\PersistentCollection {#2206 …}
      +categories: Doctrine\ORM\PersistentCollection {#2262 …}
      -id: 73
      +apId: "linux@lemmy.ml"
      +apProfileId: "https://lemmy.ml/c/linux"
      +apPublicUrl: "https://lemmy.ml/c/linux"
      +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
      +apInboxUrl: "https://lemmy.ml/inbox"
      +apDomain: "lemmy.ml"
      +apPreferredUsername: "linux"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729583596 {#2317
        date: 2024-10-22 09:53:16.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1698929468 {#2318
        date: 2023-11-02 13:51:08.0 +01:00
      }
      +__isInitialized__: true
       …2
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1629 …}
    +slug: "Syncthing-podman-container-on-Immutable-OSes"
    +title: "Syncthing podman container on Immutable OSes"
    +url: null
    +body: """
      **Update**: The guide on github has been updated and has addopted a different method. Notably, it: A) still accomplishing my goal of avoiding running the process inside as root. B) uses the linuxserver.io image rather than the syncthing/syncthing one (my method does not allow for the linuxserver.io image to run), the linuxserver one is based on alpine, I truly forget what the other one is based on.\n
      \n
      An archived version of the guide I followed to create my setup has been placed bellow, the updated (and all subsequent version) can be found [here](https://mmarco94.github.io/linux-guides/immutable-os/syncthing)\n
      \n
      I saw [this guide](https://web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing) discussing how to run Syncthing in a podman container on immutable OSes and decided to try and create a better solution that avoids running the process inside as root. I am new to podman and it’s been a few years since I used docker so I am a novice in this side of system administration and I guess I am writing this as a “sanity check” for what I have done.\n
      \n
      Below is the podman run arguments I used in place of the ones found in the article, I also manage it with systemd as shown in the article.\n
      \n
      ```\n
      \n
      <span style="color:#323232;">\n
      </span><span style="color:#323232;">podman run -d \n
      </span><span style="color:#323232;">  --name=syncthing \n
      </span><span style="color:#323232;">  --hostname=syncpod \n
      </span><span style="color:#323232;">  --label io.containers.autoupdate=registry \n
      </span><span style="color:#323232;">  --userns keep-id \n
      </span><span style="color:#323232;">  -p 127.0.0.1:8384:8384 \n
      </span><span style="color:#323232;">  -p 22000:22000/tcp \n
      </span><span style="color:#323232;">  -p 22000:22000/udp \n
      </span><span style="color:#323232;">  -p 21027:21027/udp \n
      </span><span style="color:#323232;">  -v ~/.config/syncthing:/var/syncthing/config:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs/:/SyncedDirs:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs2/:/var/syncthing/SyncedDirs2:Z \n
      </span><span style="color:#323232;">  docker.io/syncthing/syncthing:latest\n
      </span><span style="color:#323232;">\n
      </span>\n
      ```\n
      \n
      *Note: I feel the original guide does *not* explain what the :Z flag does very well, it should at least emphasize unknowing users that it is telling podman to change the SELinux label of a dir to match that of the container.*\n
      \n
      The notable changes in my arguments is the `–userns keep-id` option and switching from the linuxserver.io version to the syncthing image. The keep-id option from my understanding tells Podman to create a user namespace where the user and container map to the same UID:GID values. Allowing all files the container touches to still be used by me, the user. I had to switch from the linuxserver.io version to the syncthing official one because the former did not allow the `–userns keep-id` option to work (perhaps because it is based on Alpine Linux? I have to investigate more. It failed on running an add-user command if I recall)\n
      \n
      *Below is an excerpt from a RedHat article describing the `–userns keep-id` option, square brackets are mine:*\n
      \n
      User namespace modes\n
      --------------------\n
      \n
      I can change this default mapping using the –userns option, which is described in the podman run man page. This list shows the different modes you can pass to the –userns option.\n
      \n
      - Key: “” (Unset) [Effectively what the original guide did]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: 0 (Default User account mapped to root user in container.) (Default)\n
          </span>\n
          ```\n
      - Key: keep-id [What I am doing]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: $UID (Map user account to the same UID within the container.)\n
          </span>\n
          ```\n
      \n
      [(Source)](https://www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)\n
      \n
      So far this method seems to work quite well, and has replaced the `syncthing` package I had layered for a while. Is this the best way to run it on an OS like Silverblue / Kinoite, or is there a more sensible route to go? Any feedback is appreciated!\n
      \n
      Edit: Clarity and grammar, and some more detail in a few spots.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 0
    +favouriteCount: 0
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1689437075 {#1567
      date: 2023-07-15 18:04:35.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1628 …}
    +votes: Doctrine\ORM\PersistentCollection {#1599 …}
    +reports: Doctrine\ORM\PersistentCollection {#1597 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2447 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2464 …}
    +badges: Doctrine\ORM\PersistentCollection {#2468 …}
    +children: []
    -id: 14256
    -titleTs: "'contain':3 'immut':5 'ose':6 'podman':2 'syncth':1"
    -bodyTs: "'/.config/syncthing':232 '/linux-guides/immutable-os/syncthing)':96 '/synceddirs':236,237 '/synceddirs2':240 '/syncthing/syncthing:latest':245 '/sysadmin/rootless-podman-user-namespace-modes)':509 '/var/syncthing/config':233 '/var/syncthing/synceddirs2':241 '/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':103 '0':471 '127.0.0.1':219 '21027':229 '21027/udp':230 '22000':223,226 '22000/tcp':224 '22000/udp':227 '8384':220,221 'accomplish':19 'account':474,498 'add':398 'add-us':397 'addopt':11 'administr':159 'allow':44,338,370 'alpin':57,385 'also':194 'appreci':557 'archiv':69 'argument':181,293 'articl':192,203,411 'avoid':23,126 'b':30 'base':55,66,383 'bellow':83 'best':534 'better':123 'bracket':420 'chang':275,290,428 'check':170 'clariti':559 'command':400 'contain':112,287,330,342,469,480,493,505 'creat':77,121,322 'd':206 'decid':117 'default':430,472,481 'describ':412,438 'detail':565 'differ':13,449 'dir':281 'discuss':104 'docker':148 'docker.io':244 'docker.io/syncthing/syncthing:latest':243 'done':175 'edit':558 'effect':460 'emphas':266 'excerpt':407 'explain':254 'fail':393 'far':511 'feedback':555 'feel':248 'file':340 'flag':258 'follow':75 'forget':60 'former':367 'found':92,189 'gid':336 'github':5 'go':553 'goal':21 'grammar':561 'guess':162 'guid':3,73,100,251,464 'host':466,490 'hostnam':209 'id':217,299,314,375,417,485 'imag':34,48,310 'immut':114 'insid':27,130 'investig':390 'io.containers.autoupdate':212 'keep':216,298,313,374,416,484 'keep-id':215,297,312,373,415,483 'key':458,482 'kinoit':544 'label':211,278 'layer':527 'least':265 'like':542 'linux':386 'linuxserv':52 'linuxserver.io':33,47,305,358 'list':446 'man':443 'manag':195 'map':331,431,475,496 'match':283 'method':14,41,513 'mine':422 'mmarco94.github.io':95 'mmarco94.github.io/linux-guides/immutable-os/syncthing)':94 'mode':425,450 'name':207 'namespac':325,424 'new':135 'notabl':15,289 'note':246 'novic':153 'offici':363 'one':39,53,64,188,364 'option':300,315,376,418,435,457 'origin':250,463 'os':541 'ose':115 'p':218,222,225,228 'packag':524 'page':444 'pass':453 'perhap':379 'place':82,185 'podman':111,137,179,204,273,320,441 'process':26,129 'quit':517 'rather':35 'recal':403 'redhat':410 'registri':213 'replac':521 'root':29,132,477 'rout':551 'run':24,50,107,127,180,205,395,442,537 'saniti':169 'saw':98 'seem':514 'selinux':277 'sensibl':550 'setup':79 'show':447 'shown':200 'side':156 'silverblu':543 'sinc':145 'solut':124 'sourc':506 'spot':569 'squar':419 'still':18,345 'subsequ':88 'switch':302,355 'syncpod':210 'syncth':108,208,309,362,523 'syncthing/syncthing':38 'system':158 'systemd':198 'tell':272,319 'touch':343 'tri':119 'truli':59 'uid':335,468,492,495,502 'understand':318 'unknow':267 'unset':459 'updat':1,8,85 'use':31,147,183,347,432 'user':268,324,328,351,399,423,467,470,473,478,491,494,497 'usern':214,296,372,414,434,456 'v':231,235,239 'valu':337 'version':70,89,306,359 'way':535 'web.archive.org':102 'web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':101 'well':261,518 'within':503 'work':378,516 'write':165 'www.redhat.com':508 'www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)':507 'year':144 'z':234,238,242,257"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 0
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/1163818"
    +editedAt: DateTimeImmutable @1700673245 {#1414
      date: 2023-11-22 18:14:05.0 +01:00
    }
    +createdAt: DateTimeImmutable @1689437075 {#1548
      date: 2023-07-15 18:04:35.0 +02:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#2774
  +subject: App\Entity\Entry {#1562
    +user: App\Entity\User {#265
      +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
      +cover: Proxies\__CG__\App\Entity\Image {#247 …}
      +email: "Whooping_Seal@sh.itjust.works"
      +username: "@Whooping_Seal@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Your friendly neighbourhood sh.it.head\n
        \n
        A Reddit refugee after 8 years of Reddit-ing
        """
      +lastActive: DateTime @1700673232 {#275
        date: 2023-11-22 18:13:52.0 +01:00
      }
      +markedForDeletionAt: null
      +fields: null
      +oauthGithubId: null
      +oauthGoogleId: null
      +oauthFacebookId: null
      +oauthKeycloakId: null
      +hideAdult: true
      +showSubscribedUsers: true
      +showSubscribedMagazines: true
      +showSubscribedDomains: true
      +preferredLanguages: []
      +featuredMagazines: null
      +showProfileSubscriptions: true
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: false
      +notifyOnNewEntryCommentReply: false
      +notifyOnNewPost: false
      +notifyOnNewPostReply: false
      +notifyOnNewPostCommentReply: false
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
      +posts: Doctrine\ORM\PersistentCollection {#67 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
      +follows: Doctrine\ORM\PersistentCollection {#1809 …}
      +followers: Doctrine\ORM\PersistentCollection {#2390 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
      +reports: Doctrine\ORM\PersistentCollection {#2480 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
      +violations: Doctrine\ORM\PersistentCollection {#2413 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
      +awards: Doctrine\ORM\PersistentCollection {#1867 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
      +categories: Doctrine\ORM\PersistentCollection {#1395 …}
      -id: 4720
      -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
      +apId: "Whooping_Seal@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
      +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "Whooping_Seal"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728334394 {#269
        date: 2024-10-07 22:53:14.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687143801 {#268
        date: 2023-06-19 05:03:21.0 +02:00
      }
    }
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
      +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
      +name: "linux@lemmy.ml"
      +title: "linux"
      +description: """
        From Wikipedia, the free encyclopedia\n
        \n
        Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
        \n
        Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
        \n
        ### Rules\n
        \n
        - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
        - No misinformation\n
        - No NSFW content\n
        - No hate speech, bigotry, etc\n
        \n
        ### Related Communities\n
        \n
        - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
        - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
        - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
        - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
        \n
        Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 1406
      +entryCommentCount: 28632
      +postCount: 6
      +postCommentCount: 214
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729583542 {#2319
        date: 2024-10-22 09:52:22.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
      +entries: Doctrine\ORM\PersistentCollection {#2281 …}
      +posts: Doctrine\ORM\PersistentCollection {#2280 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
      +bans: Doctrine\ORM\PersistentCollection {#2220 …}
      +reports: Doctrine\ORM\PersistentCollection {#2194 …}
      +badges: Doctrine\ORM\PersistentCollection {#2209 …}
      +logs: Doctrine\ORM\PersistentCollection {#2271 …}
      +awards: Doctrine\ORM\PersistentCollection {#2206 …}
      +categories: Doctrine\ORM\PersistentCollection {#2262 …}
      -id: 73
      +apId: "linux@lemmy.ml"
      +apProfileId: "https://lemmy.ml/c/linux"
      +apPublicUrl: "https://lemmy.ml/c/linux"
      +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
      +apInboxUrl: "https://lemmy.ml/inbox"
      +apDomain: "lemmy.ml"
      +apPreferredUsername: "linux"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729583596 {#2317
        date: 2024-10-22 09:53:16.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1698929468 {#2318
        date: 2023-11-02 13:51:08.0 +01:00
      }
      +__isInitialized__: true
       …2
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1629 …}
    +slug: "Syncthing-podman-container-on-Immutable-OSes"
    +title: "Syncthing podman container on Immutable OSes"
    +url: null
    +body: """
      **Update**: The guide on github has been updated and has addopted a different method. Notably, it: A) still accomplishing my goal of avoiding running the process inside as root. B) uses the linuxserver.io image rather than the syncthing/syncthing one (my method does not allow for the linuxserver.io image to run), the linuxserver one is based on alpine, I truly forget what the other one is based on.\n
      \n
      An archived version of the guide I followed to create my setup has been placed bellow, the updated (and all subsequent version) can be found [here](https://mmarco94.github.io/linux-guides/immutable-os/syncthing)\n
      \n
      I saw [this guide](https://web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing) discussing how to run Syncthing in a podman container on immutable OSes and decided to try and create a better solution that avoids running the process inside as root. I am new to podman and it’s been a few years since I used docker so I am a novice in this side of system administration and I guess I am writing this as a “sanity check” for what I have done.\n
      \n
      Below is the podman run arguments I used in place of the ones found in the article, I also manage it with systemd as shown in the article.\n
      \n
      ```\n
      \n
      <span style="color:#323232;">\n
      </span><span style="color:#323232;">podman run -d \n
      </span><span style="color:#323232;">  --name=syncthing \n
      </span><span style="color:#323232;">  --hostname=syncpod \n
      </span><span style="color:#323232;">  --label io.containers.autoupdate=registry \n
      </span><span style="color:#323232;">  --userns keep-id \n
      </span><span style="color:#323232;">  -p 127.0.0.1:8384:8384 \n
      </span><span style="color:#323232;">  -p 22000:22000/tcp \n
      </span><span style="color:#323232;">  -p 22000:22000/udp \n
      </span><span style="color:#323232;">  -p 21027:21027/udp \n
      </span><span style="color:#323232;">  -v ~/.config/syncthing:/var/syncthing/config:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs/:/SyncedDirs:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs2/:/var/syncthing/SyncedDirs2:Z \n
      </span><span style="color:#323232;">  docker.io/syncthing/syncthing:latest\n
      </span><span style="color:#323232;">\n
      </span>\n
      ```\n
      \n
      *Note: I feel the original guide does *not* explain what the :Z flag does very well, it should at least emphasize unknowing users that it is telling podman to change the SELinux label of a dir to match that of the container.*\n
      \n
      The notable changes in my arguments is the `–userns keep-id` option and switching from the linuxserver.io version to the syncthing image. The keep-id option from my understanding tells Podman to create a user namespace where the user and container map to the same UID:GID values. Allowing all files the container touches to still be used by me, the user. I had to switch from the linuxserver.io version to the syncthing official one because the former did not allow the `–userns keep-id` option to work (perhaps because it is based on Alpine Linux? I have to investigate more. It failed on running an add-user command if I recall)\n
      \n
      *Below is an excerpt from a RedHat article describing the `–userns keep-id` option, square brackets are mine:*\n
      \n
      User namespace modes\n
      --------------------\n
      \n
      I can change this default mapping using the –userns option, which is described in the podman run man page. This list shows the different modes you can pass to the –userns option.\n
      \n
      - Key: “” (Unset) [Effectively what the original guide did]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: 0 (Default User account mapped to root user in container.) (Default)\n
          </span>\n
          ```\n
      - Key: keep-id [What I am doing]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: $UID (Map user account to the same UID within the container.)\n
          </span>\n
          ```\n
      \n
      [(Source)](https://www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)\n
      \n
      So far this method seems to work quite well, and has replaced the `syncthing` package I had layered for a while. Is this the best way to run it on an OS like Silverblue / Kinoite, or is there a more sensible route to go? Any feedback is appreciated!\n
      \n
      Edit: Clarity and grammar, and some more detail in a few spots.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 0
    +favouriteCount: 0
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1689437075 {#1567
      date: 2023-07-15 18:04:35.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1628 …}
    +votes: Doctrine\ORM\PersistentCollection {#1599 …}
    +reports: Doctrine\ORM\PersistentCollection {#1597 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2447 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2464 …}
    +badges: Doctrine\ORM\PersistentCollection {#2468 …}
    +children: []
    -id: 14256
    -titleTs: "'contain':3 'immut':5 'ose':6 'podman':2 'syncth':1"
    -bodyTs: "'/.config/syncthing':232 '/linux-guides/immutable-os/syncthing)':96 '/synceddirs':236,237 '/synceddirs2':240 '/syncthing/syncthing:latest':245 '/sysadmin/rootless-podman-user-namespace-modes)':509 '/var/syncthing/config':233 '/var/syncthing/synceddirs2':241 '/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':103 '0':471 '127.0.0.1':219 '21027':229 '21027/udp':230 '22000':223,226 '22000/tcp':224 '22000/udp':227 '8384':220,221 'accomplish':19 'account':474,498 'add':398 'add-us':397 'addopt':11 'administr':159 'allow':44,338,370 'alpin':57,385 'also':194 'appreci':557 'archiv':69 'argument':181,293 'articl':192,203,411 'avoid':23,126 'b':30 'base':55,66,383 'bellow':83 'best':534 'better':123 'bracket':420 'chang':275,290,428 'check':170 'clariti':559 'command':400 'contain':112,287,330,342,469,480,493,505 'creat':77,121,322 'd':206 'decid':117 'default':430,472,481 'describ':412,438 'detail':565 'differ':13,449 'dir':281 'discuss':104 'docker':148 'docker.io':244 'docker.io/syncthing/syncthing:latest':243 'done':175 'edit':558 'effect':460 'emphas':266 'excerpt':407 'explain':254 'fail':393 'far':511 'feedback':555 'feel':248 'file':340 'flag':258 'follow':75 'forget':60 'former':367 'found':92,189 'gid':336 'github':5 'go':553 'goal':21 'grammar':561 'guess':162 'guid':3,73,100,251,464 'host':466,490 'hostnam':209 'id':217,299,314,375,417,485 'imag':34,48,310 'immut':114 'insid':27,130 'investig':390 'io.containers.autoupdate':212 'keep':216,298,313,374,416,484 'keep-id':215,297,312,373,415,483 'key':458,482 'kinoit':544 'label':211,278 'layer':527 'least':265 'like':542 'linux':386 'linuxserv':52 'linuxserver.io':33,47,305,358 'list':446 'man':443 'manag':195 'map':331,431,475,496 'match':283 'method':14,41,513 'mine':422 'mmarco94.github.io':95 'mmarco94.github.io/linux-guides/immutable-os/syncthing)':94 'mode':425,450 'name':207 'namespac':325,424 'new':135 'notabl':15,289 'note':246 'novic':153 'offici':363 'one':39,53,64,188,364 'option':300,315,376,418,435,457 'origin':250,463 'os':541 'ose':115 'p':218,222,225,228 'packag':524 'page':444 'pass':453 'perhap':379 'place':82,185 'podman':111,137,179,204,273,320,441 'process':26,129 'quit':517 'rather':35 'recal':403 'redhat':410 'registri':213 'replac':521 'root':29,132,477 'rout':551 'run':24,50,107,127,180,205,395,442,537 'saniti':169 'saw':98 'seem':514 'selinux':277 'sensibl':550 'setup':79 'show':447 'shown':200 'side':156 'silverblu':543 'sinc':145 'solut':124 'sourc':506 'spot':569 'squar':419 'still':18,345 'subsequ':88 'switch':302,355 'syncpod':210 'syncth':108,208,309,362,523 'syncthing/syncthing':38 'system':158 'systemd':198 'tell':272,319 'touch':343 'tri':119 'truli':59 'uid':335,468,492,495,502 'understand':318 'unknow':267 'unset':459 'updat':1,8,85 'use':31,147,183,347,432 'user':268,324,328,351,399,423,467,470,473,478,491,494,497 'usern':214,296,372,414,434,456 'v':231,235,239 'valu':337 'version':70,89,306,359 'way':535 'web.archive.org':102 'web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':101 'well':261,518 'within':503 'work':378,516 'write':165 'www.redhat.com':508 'www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)':507 'year':144 'z':234,238,242,257"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 0
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/1163818"
    +editedAt: DateTimeImmutable @1700673245 {#1414
      date: 2023-11-22 18:14:05.0 +01:00
    }
    +createdAt: DateTimeImmutable @1689437075 {#1548
      date: 2023-07-15 18:04:35.0 +02:00
    }
  }
  +formDest: "entry"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 16.0 MiB 1.86 ms
Input props
[
  "subject" => App\Entity\Entry {#1562
    +user: App\Entity\User {#265
      +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
      +cover: Proxies\__CG__\App\Entity\Image {#247 …}
      +email: "Whooping_Seal@sh.itjust.works"
      +username: "@Whooping_Seal@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Your friendly neighbourhood sh.it.head\n
        \n
        A Reddit refugee after 8 years of Reddit-ing
        """
      +lastActive: DateTime @1700673232 {#275
        date: 2023-11-22 18:13:52.0 +01:00
      }
      +markedForDeletionAt: null
      +fields: null
      +oauthGithubId: null
      +oauthGoogleId: null
      +oauthFacebookId: null
      +oauthKeycloakId: null
      +hideAdult: true
      +showSubscribedUsers: true
      +showSubscribedMagazines: true
      +showSubscribedDomains: true
      +preferredLanguages: []
      +featuredMagazines: null
      +showProfileSubscriptions: true
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: false
      +notifyOnNewEntryCommentReply: false
      +notifyOnNewPost: false
      +notifyOnNewPostReply: false
      +notifyOnNewPostCommentReply: false
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
      +posts: Doctrine\ORM\PersistentCollection {#67 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
      +follows: Doctrine\ORM\PersistentCollection {#1809 …}
      +followers: Doctrine\ORM\PersistentCollection {#2390 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
      +reports: Doctrine\ORM\PersistentCollection {#2480 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
      +violations: Doctrine\ORM\PersistentCollection {#2413 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
      +awards: Doctrine\ORM\PersistentCollection {#1867 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
      +categories: Doctrine\ORM\PersistentCollection {#1395 …}
      -id: 4720
      -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
      +apId: "Whooping_Seal@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
      +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "Whooping_Seal"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728334394 {#269
        date: 2024-10-07 22:53:14.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687143801 {#268
        date: 2023-06-19 05:03:21.0 +02:00
      }
    }
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
      +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
      +name: "linux@lemmy.ml"
      +title: "linux"
      +description: """
        From Wikipedia, the free encyclopedia\n
        \n
        Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
        \n
        Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
        \n
        ### Rules\n
        \n
        - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
        - No misinformation\n
        - No NSFW content\n
        - No hate speech, bigotry, etc\n
        \n
        ### Related Communities\n
        \n
        - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
        - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
        - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
        - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
        \n
        Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 1406
      +entryCommentCount: 28632
      +postCount: 6
      +postCommentCount: 214
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729583542 {#2319
        date: 2024-10-22 09:52:22.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
      +entries: Doctrine\ORM\PersistentCollection {#2281 …}
      +posts: Doctrine\ORM\PersistentCollection {#2280 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
      +bans: Doctrine\ORM\PersistentCollection {#2220 …}
      +reports: Doctrine\ORM\PersistentCollection {#2194 …}
      +badges: Doctrine\ORM\PersistentCollection {#2209 …}
      +logs: Doctrine\ORM\PersistentCollection {#2271 …}
      +awards: Doctrine\ORM\PersistentCollection {#2206 …}
      +categories: Doctrine\ORM\PersistentCollection {#2262 …}
      -id: 73
      +apId: "linux@lemmy.ml"
      +apProfileId: "https://lemmy.ml/c/linux"
      +apPublicUrl: "https://lemmy.ml/c/linux"
      +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
      +apInboxUrl: "https://lemmy.ml/inbox"
      +apDomain: "lemmy.ml"
      +apPreferredUsername: "linux"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729583596 {#2317
        date: 2024-10-22 09:53:16.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1698929468 {#2318
        date: 2023-11-02 13:51:08.0 +01:00
      }
      +__isInitialized__: true
       …2
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1629 …}
    +slug: "Syncthing-podman-container-on-Immutable-OSes"
    +title: "Syncthing podman container on Immutable OSes"
    +url: null
    +body: """
      **Update**: The guide on github has been updated and has addopted a different method. Notably, it: A) still accomplishing my goal of avoiding running the process inside as root. B) uses the linuxserver.io image rather than the syncthing/syncthing one (my method does not allow for the linuxserver.io image to run), the linuxserver one is based on alpine, I truly forget what the other one is based on.\n
      \n
      An archived version of the guide I followed to create my setup has been placed bellow, the updated (and all subsequent version) can be found [here](https://mmarco94.github.io/linux-guides/immutable-os/syncthing)\n
      \n
      I saw [this guide](https://web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing) discussing how to run Syncthing in a podman container on immutable OSes and decided to try and create a better solution that avoids running the process inside as root. I am new to podman and it’s been a few years since I used docker so I am a novice in this side of system administration and I guess I am writing this as a “sanity check” for what I have done.\n
      \n
      Below is the podman run arguments I used in place of the ones found in the article, I also manage it with systemd as shown in the article.\n
      \n
      ```\n
      \n
      <span style="color:#323232;">\n
      </span><span style="color:#323232;">podman run -d \n
      </span><span style="color:#323232;">  --name=syncthing \n
      </span><span style="color:#323232;">  --hostname=syncpod \n
      </span><span style="color:#323232;">  --label io.containers.autoupdate=registry \n
      </span><span style="color:#323232;">  --userns keep-id \n
      </span><span style="color:#323232;">  -p 127.0.0.1:8384:8384 \n
      </span><span style="color:#323232;">  -p 22000:22000/tcp \n
      </span><span style="color:#323232;">  -p 22000:22000/udp \n
      </span><span style="color:#323232;">  -p 21027:21027/udp \n
      </span><span style="color:#323232;">  -v ~/.config/syncthing:/var/syncthing/config:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs/:/SyncedDirs:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs2/:/var/syncthing/SyncedDirs2:Z \n
      </span><span style="color:#323232;">  docker.io/syncthing/syncthing:latest\n
      </span><span style="color:#323232;">\n
      </span>\n
      ```\n
      \n
      *Note: I feel the original guide does *not* explain what the :Z flag does very well, it should at least emphasize unknowing users that it is telling podman to change the SELinux label of a dir to match that of the container.*\n
      \n
      The notable changes in my arguments is the `–userns keep-id` option and switching from the linuxserver.io version to the syncthing image. The keep-id option from my understanding tells Podman to create a user namespace where the user and container map to the same UID:GID values. Allowing all files the container touches to still be used by me, the user. I had to switch from the linuxserver.io version to the syncthing official one because the former did not allow the `–userns keep-id` option to work (perhaps because it is based on Alpine Linux? I have to investigate more. It failed on running an add-user command if I recall)\n
      \n
      *Below is an excerpt from a RedHat article describing the `–userns keep-id` option, square brackets are mine:*\n
      \n
      User namespace modes\n
      --------------------\n
      \n
      I can change this default mapping using the –userns option, which is described in the podman run man page. This list shows the different modes you can pass to the –userns option.\n
      \n
      - Key: “” (Unset) [Effectively what the original guide did]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: 0 (Default User account mapped to root user in container.) (Default)\n
          </span>\n
          ```\n
      - Key: keep-id [What I am doing]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: $UID (Map user account to the same UID within the container.)\n
          </span>\n
          ```\n
      \n
      [(Source)](https://www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)\n
      \n
      So far this method seems to work quite well, and has replaced the `syncthing` package I had layered for a while. Is this the best way to run it on an OS like Silverblue / Kinoite, or is there a more sensible route to go? Any feedback is appreciated!\n
      \n
      Edit: Clarity and grammar, and some more detail in a few spots.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 0
    +favouriteCount: 0
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1689437075 {#1567
      date: 2023-07-15 18:04:35.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1628 …}
    +votes: Doctrine\ORM\PersistentCollection {#1599 …}
    +reports: Doctrine\ORM\PersistentCollection {#1597 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2447 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2464 …}
    +badges: Doctrine\ORM\PersistentCollection {#2468 …}
    +children: []
    -id: 14256
    -titleTs: "'contain':3 'immut':5 'ose':6 'podman':2 'syncth':1"
    -bodyTs: "'/.config/syncthing':232 '/linux-guides/immutable-os/syncthing)':96 '/synceddirs':236,237 '/synceddirs2':240 '/syncthing/syncthing:latest':245 '/sysadmin/rootless-podman-user-namespace-modes)':509 '/var/syncthing/config':233 '/var/syncthing/synceddirs2':241 '/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':103 '0':471 '127.0.0.1':219 '21027':229 '21027/udp':230 '22000':223,226 '22000/tcp':224 '22000/udp':227 '8384':220,221 'accomplish':19 'account':474,498 'add':398 'add-us':397 'addopt':11 'administr':159 'allow':44,338,370 'alpin':57,385 'also':194 'appreci':557 'archiv':69 'argument':181,293 'articl':192,203,411 'avoid':23,126 'b':30 'base':55,66,383 'bellow':83 'best':534 'better':123 'bracket':420 'chang':275,290,428 'check':170 'clariti':559 'command':400 'contain':112,287,330,342,469,480,493,505 'creat':77,121,322 'd':206 'decid':117 'default':430,472,481 'describ':412,438 'detail':565 'differ':13,449 'dir':281 'discuss':104 'docker':148 'docker.io':244 'docker.io/syncthing/syncthing:latest':243 'done':175 'edit':558 'effect':460 'emphas':266 'excerpt':407 'explain':254 'fail':393 'far':511 'feedback':555 'feel':248 'file':340 'flag':258 'follow':75 'forget':60 'former':367 'found':92,189 'gid':336 'github':5 'go':553 'goal':21 'grammar':561 'guess':162 'guid':3,73,100,251,464 'host':466,490 'hostnam':209 'id':217,299,314,375,417,485 'imag':34,48,310 'immut':114 'insid':27,130 'investig':390 'io.containers.autoupdate':212 'keep':216,298,313,374,416,484 'keep-id':215,297,312,373,415,483 'key':458,482 'kinoit':544 'label':211,278 'layer':527 'least':265 'like':542 'linux':386 'linuxserv':52 'linuxserver.io':33,47,305,358 'list':446 'man':443 'manag':195 'map':331,431,475,496 'match':283 'method':14,41,513 'mine':422 'mmarco94.github.io':95 'mmarco94.github.io/linux-guides/immutable-os/syncthing)':94 'mode':425,450 'name':207 'namespac':325,424 'new':135 'notabl':15,289 'note':246 'novic':153 'offici':363 'one':39,53,64,188,364 'option':300,315,376,418,435,457 'origin':250,463 'os':541 'ose':115 'p':218,222,225,228 'packag':524 'page':444 'pass':453 'perhap':379 'place':82,185 'podman':111,137,179,204,273,320,441 'process':26,129 'quit':517 'rather':35 'recal':403 'redhat':410 'registri':213 'replac':521 'root':29,132,477 'rout':551 'run':24,50,107,127,180,205,395,442,537 'saniti':169 'saw':98 'seem':514 'selinux':277 'sensibl':550 'setup':79 'show':447 'shown':200 'side':156 'silverblu':543 'sinc':145 'solut':124 'sourc':506 'spot':569 'squar':419 'still':18,345 'subsequ':88 'switch':302,355 'syncpod':210 'syncth':108,208,309,362,523 'syncthing/syncthing':38 'system':158 'systemd':198 'tell':272,319 'touch':343 'tri':119 'truli':59 'uid':335,468,492,495,502 'understand':318 'unknow':267 'unset':459 'updat':1,8,85 'use':31,147,183,347,432 'user':268,324,328,351,399,423,467,470,473,478,491,494,497 'usern':214,296,372,414,434,456 'v':231,235,239 'valu':337 'version':70,89,306,359 'way':535 'web.archive.org':102 'web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':101 'well':261,518 'within':503 'work':378,516 'write':165 'www.redhat.com':508 'www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)':507 'year':144 'z':234,238,242,257"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 0
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/1163818"
    +editedAt: DateTimeImmutable @1700673245 {#1414
      date: 2023-11-22 18:14:05.0 +01:00
    }
    +createdAt: DateTimeImmutable @1689437075 {#1548
      date: 2023-07-15 18:04:35.0 +02:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#2841
  +formDest: "entry"
  +subject: App\Entity\Entry {#1562
    +user: App\Entity\User {#265
      +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
      +cover: Proxies\__CG__\App\Entity\Image {#247 …}
      +email: "Whooping_Seal@sh.itjust.works"
      +username: "@Whooping_Seal@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Your friendly neighbourhood sh.it.head\n
        \n
        A Reddit refugee after 8 years of Reddit-ing
        """
      +lastActive: DateTime @1700673232 {#275
        date: 2023-11-22 18:13:52.0 +01:00
      }
      +markedForDeletionAt: null
      +fields: null
      +oauthGithubId: null
      +oauthGoogleId: null
      +oauthFacebookId: null
      +oauthKeycloakId: null
      +hideAdult: true
      +showSubscribedUsers: true
      +showSubscribedMagazines: true
      +showSubscribedDomains: true
      +preferredLanguages: []
      +featuredMagazines: null
      +showProfileSubscriptions: true
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: false
      +notifyOnNewEntryCommentReply: false
      +notifyOnNewPost: false
      +notifyOnNewPostReply: false
      +notifyOnNewPostCommentReply: false
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
      +posts: Doctrine\ORM\PersistentCollection {#67 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
      +follows: Doctrine\ORM\PersistentCollection {#1809 …}
      +followers: Doctrine\ORM\PersistentCollection {#2390 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
      +reports: Doctrine\ORM\PersistentCollection {#2480 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
      +violations: Doctrine\ORM\PersistentCollection {#2413 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
      +awards: Doctrine\ORM\PersistentCollection {#1867 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
      +categories: Doctrine\ORM\PersistentCollection {#1395 …}
      -id: 4720
      -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
      +apId: "Whooping_Seal@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
      +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "Whooping_Seal"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728334394 {#269
        date: 2024-10-07 22:53:14.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687143801 {#268
        date: 2023-06-19 05:03:21.0 +02:00
      }
    }
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1719
      +icon: Proxies\__CG__\App\Entity\Image {#2313 …}
      +name: "linux@lemmy.ml"
      +title: "linux"
      +description: """
        From Wikipedia, the free encyclopedia\n
        \n
        Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).\n
        \n
        Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.\n
        \n
        ### Rules\n
        \n
        - Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.\n
        - No misinformation\n
        - No NSFW content\n
        - No hate speech, bigotry, etc\n
        \n
        ### Related Communities\n
        \n
        - [!opensource@lemmy.ml](https://lemmy.ml/c/opensource)\n
        - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
        - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
        - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
        \n
        Community icon by [Alpár-Etele Méder](https://www.iconfinder.com/pocike), licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 1406
      +entryCommentCount: 28632
      +postCount: 6
      +postCommentCount: 214
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729583542 {#2319
        date: 2024-10-22 09:52:22.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#2316 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#2294 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#2296 …}
      +entries: Doctrine\ORM\PersistentCollection {#2281 …}
      +posts: Doctrine\ORM\PersistentCollection {#2280 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#2278 …}
      +bans: Doctrine\ORM\PersistentCollection {#2220 …}
      +reports: Doctrine\ORM\PersistentCollection {#2194 …}
      +badges: Doctrine\ORM\PersistentCollection {#2209 …}
      +logs: Doctrine\ORM\PersistentCollection {#2271 …}
      +awards: Doctrine\ORM\PersistentCollection {#2206 …}
      +categories: Doctrine\ORM\PersistentCollection {#2262 …}
      -id: 73
      +apId: "linux@lemmy.ml"
      +apProfileId: "https://lemmy.ml/c/linux"
      +apPublicUrl: "https://lemmy.ml/c/linux"
      +apFollowersUrl: "https://lemmy.ml/c/linux/followers"
      +apInboxUrl: "https://lemmy.ml/inbox"
      +apDomain: "lemmy.ml"
      +apPreferredUsername: "linux"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729583596 {#2317
        date: 2024-10-22 09:53:16.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1698929468 {#2318
        date: 2023-11-02 13:51:08.0 +01:00
      }
      +__isInitialized__: true
       …2
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1629 …}
    +slug: "Syncthing-podman-container-on-Immutable-OSes"
    +title: "Syncthing podman container on Immutable OSes"
    +url: null
    +body: """
      **Update**: The guide on github has been updated and has addopted a different method. Notably, it: A) still accomplishing my goal of avoiding running the process inside as root. B) uses the linuxserver.io image rather than the syncthing/syncthing one (my method does not allow for the linuxserver.io image to run), the linuxserver one is based on alpine, I truly forget what the other one is based on.\n
      \n
      An archived version of the guide I followed to create my setup has been placed bellow, the updated (and all subsequent version) can be found [here](https://mmarco94.github.io/linux-guides/immutable-os/syncthing)\n
      \n
      I saw [this guide](https://web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing) discussing how to run Syncthing in a podman container on immutable OSes and decided to try and create a better solution that avoids running the process inside as root. I am new to podman and it’s been a few years since I used docker so I am a novice in this side of system administration and I guess I am writing this as a “sanity check” for what I have done.\n
      \n
      Below is the podman run arguments I used in place of the ones found in the article, I also manage it with systemd as shown in the article.\n
      \n
      ```\n
      \n
      <span style="color:#323232;">\n
      </span><span style="color:#323232;">podman run -d \n
      </span><span style="color:#323232;">  --name=syncthing \n
      </span><span style="color:#323232;">  --hostname=syncpod \n
      </span><span style="color:#323232;">  --label io.containers.autoupdate=registry \n
      </span><span style="color:#323232;">  --userns keep-id \n
      </span><span style="color:#323232;">  -p 127.0.0.1:8384:8384 \n
      </span><span style="color:#323232;">  -p 22000:22000/tcp \n
      </span><span style="color:#323232;">  -p 22000:22000/udp \n
      </span><span style="color:#323232;">  -p 21027:21027/udp \n
      </span><span style="color:#323232;">  -v ~/.config/syncthing:/var/syncthing/config:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs/:/SyncedDirs:Z \n
      </span><span style="color:#323232;">  -v ~/SyncedDirs2/:/var/syncthing/SyncedDirs2:Z \n
      </span><span style="color:#323232;">  docker.io/syncthing/syncthing:latest\n
      </span><span style="color:#323232;">\n
      </span>\n
      ```\n
      \n
      *Note: I feel the original guide does *not* explain what the :Z flag does very well, it should at least emphasize unknowing users that it is telling podman to change the SELinux label of a dir to match that of the container.*\n
      \n
      The notable changes in my arguments is the `–userns keep-id` option and switching from the linuxserver.io version to the syncthing image. The keep-id option from my understanding tells Podman to create a user namespace where the user and container map to the same UID:GID values. Allowing all files the container touches to still be used by me, the user. I had to switch from the linuxserver.io version to the syncthing official one because the former did not allow the `–userns keep-id` option to work (perhaps because it is based on Alpine Linux? I have to investigate more. It failed on running an add-user command if I recall)\n
      \n
      *Below is an excerpt from a RedHat article describing the `–userns keep-id` option, square brackets are mine:*\n
      \n
      User namespace modes\n
      --------------------\n
      \n
      I can change this default mapping using the –userns option, which is described in the podman run man page. This list shows the different modes you can pass to the –userns option.\n
      \n
      - Key: “” (Unset) [Effectively what the original guide did]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: 0 (Default User account mapped to root user in container.) (Default)\n
          </span>\n
          ```\n
      - Key: keep-id [What I am doing]\n
          \n
          ```\n
          \n
          <span style="color:#323232;">  Host user: $UID\n
          </span><span style="color:#323232;">  Container user: $UID (Map user account to the same UID within the container.)\n
          </span>\n
          ```\n
      \n
      [(Source)](https://www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)\n
      \n
      So far this method seems to work quite well, and has replaced the `syncthing` package I had layered for a while. Is this the best way to run it on an OS like Silverblue / Kinoite, or is there a more sensible route to go? Any feedback is appreciated!\n
      \n
      Edit: Clarity and grammar, and some more detail in a few spots.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 0
    +favouriteCount: 0
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1689437075 {#1567
      date: 2023-07-15 18:04:35.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1628 …}
    +votes: Doctrine\ORM\PersistentCollection {#1599 …}
    +reports: Doctrine\ORM\PersistentCollection {#1597 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2447 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2464 …}
    +badges: Doctrine\ORM\PersistentCollection {#2468 …}
    +children: []
    -id: 14256
    -titleTs: "'contain':3 'immut':5 'ose':6 'podman':2 'syncth':1"
    -bodyTs: "'/.config/syncthing':232 '/linux-guides/immutable-os/syncthing)':96 '/synceddirs':236,237 '/synceddirs2':240 '/syncthing/syncthing:latest':245 '/sysadmin/rootless-podman-user-namespace-modes)':509 '/var/syncthing/config':233 '/var/syncthing/synceddirs2':241 '/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':103 '0':471 '127.0.0.1':219 '21027':229 '21027/udp':230 '22000':223,226 '22000/tcp':224 '22000/udp':227 '8384':220,221 'accomplish':19 'account':474,498 'add':398 'add-us':397 'addopt':11 'administr':159 'allow':44,338,370 'alpin':57,385 'also':194 'appreci':557 'archiv':69 'argument':181,293 'articl':192,203,411 'avoid':23,126 'b':30 'base':55,66,383 'bellow':83 'best':534 'better':123 'bracket':420 'chang':275,290,428 'check':170 'clariti':559 'command':400 'contain':112,287,330,342,469,480,493,505 'creat':77,121,322 'd':206 'decid':117 'default':430,472,481 'describ':412,438 'detail':565 'differ':13,449 'dir':281 'discuss':104 'docker':148 'docker.io':244 'docker.io/syncthing/syncthing:latest':243 'done':175 'edit':558 'effect':460 'emphas':266 'excerpt':407 'explain':254 'fail':393 'far':511 'feedback':555 'feel':248 'file':340 'flag':258 'follow':75 'forget':60 'former':367 'found':92,189 'gid':336 'github':5 'go':553 'goal':21 'grammar':561 'guess':162 'guid':3,73,100,251,464 'host':466,490 'hostnam':209 'id':217,299,314,375,417,485 'imag':34,48,310 'immut':114 'insid':27,130 'investig':390 'io.containers.autoupdate':212 'keep':216,298,313,374,416,484 'keep-id':215,297,312,373,415,483 'key':458,482 'kinoit':544 'label':211,278 'layer':527 'least':265 'like':542 'linux':386 'linuxserv':52 'linuxserver.io':33,47,305,358 'list':446 'man':443 'manag':195 'map':331,431,475,496 'match':283 'method':14,41,513 'mine':422 'mmarco94.github.io':95 'mmarco94.github.io/linux-guides/immutable-os/syncthing)':94 'mode':425,450 'name':207 'namespac':325,424 'new':135 'notabl':15,289 'note':246 'novic':153 'offici':363 'one':39,53,64,188,364 'option':300,315,376,418,435,457 'origin':250,463 'os':541 'ose':115 'p':218,222,225,228 'packag':524 'page':444 'pass':453 'perhap':379 'place':82,185 'podman':111,137,179,204,273,320,441 'process':26,129 'quit':517 'rather':35 'recal':403 'redhat':410 'registri':213 'replac':521 'root':29,132,477 'rout':551 'run':24,50,107,127,180,205,395,442,537 'saniti':169 'saw':98 'seem':514 'selinux':277 'sensibl':550 'setup':79 'show':447 'shown':200 'side':156 'silverblu':543 'sinc':145 'solut':124 'sourc':506 'spot':569 'squar':419 'still':18,345 'subsequ':88 'switch':302,355 'syncpod':210 'syncth':108,208,309,362,523 'syncthing/syncthing':38 'system':158 'systemd':198 'tell':272,319 'touch':343 'tri':119 'truli':59 'uid':335,468,492,495,502 'understand':318 'unknow':267 'unset':459 'updat':1,8,85 'use':31,147,183,347,432 'user':268,324,328,351,399,423,467,470,473,478,491,494,497 'usern':214,296,372,414,434,456 'v':231,235,239 'valu':337 'version':70,89,306,359 'way':535 'web.archive.org':102 'web.archive.org/web/20220613082829/https://mmarco94.github.io/linux-guides/immutable-os/syncthing)':101 'well':261,518 'within':503 'work':378,516 'write':165 'www.redhat.com':508 'www.redhat.com/sysadmin/rootless-podman-user-namespace-modes)':507 'year':144 'z':234,238,242,257"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 0
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/1163818"
    +editedAt: DateTimeImmutable @1700673245 {#1414
      date: 2023-11-22 18:14:05.0 +01:00
    }
    +createdAt: DateTimeImmutable @1689437075 {#1548
      date: 2023-07-15 18:04:35.0 +02:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
settings_row_enum App\Twig\Components\SettingsRowEnumComponent 16.0 MiB 0.36 ms
Input props
[
  "label" => "Sidebar position"
  "settingsKey" => "KBIN_GENERAL_SIDEBAR_POSITION"
  "values" => [
    [
      "name" => "Left"
      "value" => "LEFT"
    ]
    [
      "name" => "Right"
      "value" => "RIGHT"
    ]
  ]
  "defaultValue" => "RIGHT"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowEnumComponent {#3201
  +label: "Sidebar position"
  +help: ""
  +settingsKey: "KBIN_GENERAL_SIDEBAR_POSITION"
  +values: [
    [
      "name" => "Left"
      "value" => "LEFT"
    ]
    [
      "name" => "Right"
      "value" => "RIGHT"
    ]
  ]
  +defaultValue: "RIGHT"
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.29 ms
Input props
[
  "label" => "Dynamic lists"
  "settingsKey" => "KBIN_GENERAL_DYNAMIC_LISTS"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3243
  +label: "Dynamic lists"
  +help: ""
  +settingsKey: "KBIN_GENERAL_DYNAMIC_LISTS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 5.65 ms
Input props
[
  "label" => "Rounded edges"
  "settingsKey" => "KBIN_GENERAL_ROUNDED_EDGES"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3329
  +label: "Rounded edges"
  +help: ""
  +settingsKey: "KBIN_GENERAL_ROUNDED_EDGES"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.26 ms
Input props
[
  "label" => "Infinite scrolling"
  "help" => "Automatically load more content when you reach the bottom of the page."
  "settingsKey" => "KBIN_GENERAL_INFINITE_SCROLL"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3385
  +label: "Infinite scrolling"
  +help: "Automatically load more content when you reach the bottom of the page."
  +settingsKey: "KBIN_GENERAL_INFINITE_SCROLL"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.21 ms
Input props
[
  "label" => "Sticky navbar"
  "help" => "The navbar will stick to the top of the page when you scroll down."
  "settingsKey" => "KBIN_GENERAL_FIXED_NAVBAR"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3444
  +label: "Sticky navbar"
  +help: "The navbar will stick to the top of the page when you scroll down."
  +settingsKey: "KBIN_GENERAL_FIXED_NAVBAR"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.21 ms
Input props
[
  "label" => "Show top bar"
  "settingsKey" => "KBIN_GENERAL_TOPBAR"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3500
  +label: "Show top bar"
  +help: ""
  +settingsKey: "KBIN_GENERAL_TOPBAR"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.22 ms
Input props
[
  "label" => "Turbo mode (experimental)"
  "settingsKey" => "KBIN_GENERAL_TURBO"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3556
  +label: "Turbo mode (experimental)"
  +help: ""
  +settingsKey: "KBIN_GENERAL_TURBO"
  +defaultValue: false
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 16.0 MiB 0.23 ms
Input props
[
  "label" => "Mark new comments"
  "settingsKey" => "KBIN_MARK_NEW_COMMENTS"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#3614
  +label: "Mark new comments"
  +help: ""
  +settingsKey: "KBIN_MARK_NEW_COMMENTS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.13 ms
Input props
[
  "label" => "Show "Support Us" block"
  "settingsKey" => "KBIN_GENERAL_SUPPORT_US_BLOCK"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3677
  +label: "Show "Support Us" block"
  +help: ""
  +settingsKey: "KBIN_GENERAL_SUPPORT_US_BLOCK"
  +defaultValue: true
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 16.0 MiB 0.14 ms
Input props
[
  "label" => "Show subscribed users"
  "settingsKey" => "KBIN_SUB_CHANNEL_USERS"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#3735
  +label: "Show subscribed users"
  +help: ""
  +settingsKey: "KBIN_SUB_CHANNEL_USERS"
  +defaultValue: false
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 16.0 MiB 0.14 ms
Input props
[
  "label" => "Show subscribed magazines"
  "settingsKey" => "KBIN_SUB_CHANNEL_MAGAZINES"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#3791
  +label: "Show subscribed magazines"
  +help: ""
  +settingsKey: "KBIN_SUB_CHANNEL_MAGAZINES"
  +defaultValue: false
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 16.0 MiB 0.14 ms
Input props
[
  "label" => "Show subscribed domains"
  "settingsKey" => "KBIN_SUB_CHANNEL_DOMAINS"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#3847
  +label: "Show subscribed domains"
  +help: ""
  +settingsKey: "KBIN_SUB_CHANNEL_DOMAINS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.12 ms
Input props
[
  "label" => "Auto media preview"
  "help" => "Automatically expand media previews."
  "settingsKey" => "KBIN_ENTRIES_SHOW_PREVIEW"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3903
  +label: "Auto media preview"
  +help: "Automatically expand media previews."
  +settingsKey: "KBIN_ENTRIES_SHOW_PREVIEW"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.12 ms
Input props
[
  "label" => "Compact view"
  "settingsKey" => "KBIN_ENTRIES_COMPACT"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#3959
  +label: "Compact view"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_COMPACT"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.13 ms
Input props
[
  "label" => "Show users’ avatars"
  "settingsKey" => "KBIN_ENTRIES_SHOW_USERS_AVATARS"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#4015
  +label: "Show users’ avatars"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_SHOW_USERS_AVATARS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.13 ms
Input props
[
  "label" => "Show magazines’ icons"
  "settingsKey" => "KBIN_ENTRIES_SHOW_MAGAZINES_ICONS"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#4071
  +label: "Show magazines’ icons"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_SHOW_MAGAZINES_ICONS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.13 ms
Input props
[
  "label" => "Show thumbnails"
  "settingsKey" => "KBIN_ENTRIES_SHOW_THUMBNAILS"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#4127
  +label: "Show thumbnails"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_SHOW_THUMBNAILS"
  +defaultValue: true
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.16 ms
Input props
[
  "label" => "Auto media preview"
  "help" => "Automatically expand media previews."
  "settingsKey" => "KBIN_POSTS_SHOW_PREVIEW"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#4183
  +label: "Auto media preview"
  +help: "Automatically expand media previews."
  +settingsKey: "KBIN_POSTS_SHOW_PREVIEW"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.13 ms
Input props
[
  "label" => "Show users’ avatars"
  "settingsKey" => "KBIN_POSTS_SHOW_USERS_AVATARS"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#4239
  +label: "Show users’ avatars"
  +help: ""
  +settingsKey: "KBIN_POSTS_SHOW_USERS_AVATARS"
  +defaultValue: true
  +reloadRequired: true
}
settings_row_enum App\Twig\Components\SettingsRowEnumComponent 16.0 MiB 0.21 ms
Input props
[
  "label" => "Comment reply position"
  "help" => "Display the comment reply form either at the top or bottom of the page. When 'infinite scroll' is enabled the position will always appear at the top."
  "settingsKey" => "KBIN_COMMENTS_REPLY_POSITION"
  "values" => [
    [
      "name" => "top"
      "value" => "TOP"
    ]
    [
      "name" => "bottom"
      "value" => "BOTTOM"
    ]
  ]
  "defaultValue" => "TOP"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowEnumComponent {#4295
  +label: "Comment reply position"
  +help: "Display the comment reply form either at the top or bottom of the page. When 'infinite scroll' is enabled the position will always appear at the top."
  +settingsKey: "KBIN_COMMENTS_REPLY_POSITION"
  +values: [
    [
      "name" => "top"
      "value" => "TOP"
    ]
    [
      "name" => "bottom"
      "value" => "BOTTOM"
    ]
  ]
  +defaultValue: "TOP"
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 16.0 MiB 0.13 ms
Input props
[
  "label" => "Show Comment Avatars"
  "help" => "Display/hide user avatars when viewing comments on a single thread or post."
  "settingsKey" => "KBIN_COMMENTS_SHOW_USER_AVATAR"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#4353
  +label: "Show Comment Avatars"
  +help: "Display/hide user avatars when viewing comments on a single thread or post."
  +settingsKey: "KBIN_COMMENTS_SHOW_USER_AVATAR"
  +defaultValue: true
  +reloadRequired: true
}
user_actions App\Twig\Components\UserActionsComponent 16.0 MiB 0.45 ms
Input props
[
  "user" => App\Entity\User {#265
    +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
    +cover: Proxies\__CG__\App\Entity\Image {#247 …}
    +email: "Whooping_Seal@sh.itjust.works"
    +username: "@Whooping_Seal@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Your friendly neighbourhood sh.it.head\n
      \n
      A Reddit refugee after 8 years of Reddit-ing
      """
    +lastActive: DateTime @1700673232 {#275
      date: 2023-11-22 18:13:52.0 +01:00
    }
    +markedForDeletionAt: null
    +fields: null
    +oauthGithubId: null
    +oauthGoogleId: null
    +oauthFacebookId: null
    +oauthKeycloakId: null
    +hideAdult: true
    +showSubscribedUsers: true
    +showSubscribedMagazines: true
    +showSubscribedDomains: true
    +preferredLanguages: []
    +featuredMagazines: null
    +showProfileSubscriptions: true
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: false
    +notifyOnNewEntryCommentReply: false
    +notifyOnNewPost: false
    +notifyOnNewPostReply: false
    +notifyOnNewPostCommentReply: false
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
    +posts: Doctrine\ORM\PersistentCollection {#67 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
    +follows: Doctrine\ORM\PersistentCollection {#1809 …}
    +followers: Doctrine\ORM\PersistentCollection {#2390 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
    +reports: Doctrine\ORM\PersistentCollection {#2480 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
    +violations: Doctrine\ORM\PersistentCollection {#2413 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
    +awards: Doctrine\ORM\PersistentCollection {#1867 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
    +categories: Doctrine\ORM\PersistentCollection {#1395 …}
    -id: 4720
    -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
    +apId: "Whooping_Seal@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
    +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "Whooping_Seal"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728334394 {#269
      date: 2024-10-07 22:53:14.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687143801 {#268
      date: 2023-06-19 05:03:21.0 +02:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\UserActionsComponent {#4431
  +user: App\Entity\User {#265
    +avatar: Proxies\__CG__\App\Entity\Image {#246 …}
    +cover: Proxies\__CG__\App\Entity\Image {#247 …}
    +email: "Whooping_Seal@sh.itjust.works"
    +username: "@Whooping_Seal@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Your friendly neighbourhood sh.it.head\n
      \n
      A Reddit refugee after 8 years of Reddit-ing
      """
    +lastActive: DateTime @1700673232 {#275
      date: 2023-11-22 18:13:52.0 +01:00
    }
    +markedForDeletionAt: null
    +fields: null
    +oauthGithubId: null
    +oauthGoogleId: null
    +oauthFacebookId: null
    +oauthKeycloakId: null
    +hideAdult: true
    +showSubscribedUsers: true
    +showSubscribedMagazines: true
    +showSubscribedDomains: true
    +preferredLanguages: []
    +featuredMagazines: null
    +showProfileSubscriptions: true
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: false
    +notifyOnNewEntryCommentReply: false
    +notifyOnNewPost: false
    +notifyOnNewPostReply: false
    +notifyOnNewPostCommentReply: false
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#236 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#151 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#124 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#94 …}
    +posts: Doctrine\ORM\PersistentCollection {#67 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#82 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1372 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1594 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1873 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1769 …}
    +follows: Doctrine\ORM\PersistentCollection {#1809 …}
    +followers: Doctrine\ORM\PersistentCollection {#2390 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1860 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1857 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1791 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#2401 …}
    +reports: Doctrine\ORM\PersistentCollection {#2480 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1373 …}
    +violations: Doctrine\ORM\PersistentCollection {#2413 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1884 …}
    +awards: Doctrine\ORM\PersistentCollection {#1867 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1920 …}
    +categories: Doctrine\ORM\PersistentCollection {#1395 …}
    -id: 4720
    -password: "$2y$13$YT0TA7X5YxP1wH9wI7QJJuAHGfgiTjMJ3mszoPSVXlgv0ok2MyGYO"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1953 …}
    +apId: "Whooping_Seal@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/Whooping_Seal"
    +apPublicUrl: "https://sh.itjust.works/u/Whooping_Seal"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "Whooping_Seal"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728334394 {#269
      date: 2024-10-07 22:53:14.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687143801 {#268
      date: 2023-06-19 05:03:21.0 +02:00
    }
  }
}
date App\Twig\Components\DateComponent 16.0 MiB 1.69 ms
Input props
[
  "date" => DateTimeImmutable @1687143801 {#268
    date: 2023-06-19 05:03:21.0 +02:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#4492
  +date: DateTimeImmutable @1687143801 {#268
    date: 2023-06-19 05:03:21.0 +02:00
  }
}
related_magazines App\Twig\Components\RelatedMagazinesComponent 16.0 MiB 2.39 ms
Input props
[
  "magazine" => null
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedMagazinesComponent {#4579
  +limit: 4
  +tag: null
  +magazine: null
  +type: "random"
  +title: "random_magazines"
  +refreshedRandom: false
  -repository: App\Repository\MagazineRepository {#2446 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
active_users App\Twig\Components\ActiveUsersComponent 16.0 MiB 0.20 ms
Input props
[
  "magazine" => null
]
Attributes
[]
Component
App\Twig\Components\ActiveUsersComponent {#4644
  +magazine: null
  -userRepository: App\Repository\UserRepository {#603 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
related_categories App\Twig\Components\RelatedCategoriesComponent 16.0 MiB 1.35 ms
Input props
[
  "magazine" => null
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedCategoriesComponent {#4703
  +limit: 4
  +tag: null
  +magazine: null
  +type: "random"
  +title: "random_categories"
  +refreshedRandom: false
  -repository: App\Repository\CategoryRepository {#4704 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
related_posts App\Twig\Components\RelatedPostsComponent 16.0 MiB 1.31 ms
Input props
[
  "magazine" => null
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedPostsComponent {#4774
  +limit: 4
  +tag: null
  +magazine: null
  +type: "random"
  +post: null
  +title: "random_posts"
  +refreshedRandom: false
  -repository: App\Repository\PostRepository {#4773 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -mentionManager: App\Service\MentionManager {#1536 …}
}
related_entries App\Twig\Components\RelatedEntriesComponent 16.0 MiB 2.32 ms
Input props
[
  "magazine" => null
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedEntriesComponent {#4843
  +limit: 4
  +tag: null
  +magazine: null
  +type: "random"
  +entry: null
  +title: "random_entries"
  +refreshedRandom: false
  -repository: App\Repository\EntryRepository {#1474 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -mentionManager: App\Service\MentionManager {#1536 …}
}
support_us_block App\Twig\Components\SupportUsBlock 16.0 MiB 0.24 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\SupportUsBlock {#4912
  +subject: ? App\Entity\Contracts\VotableInterface
  +url: ? string
  -twig: Twig\Environment {#1252 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -partnerBlockRepository: App\Repository\PartnerBlockRepository {#4913 …}
}
featured_magazines App\Twig\Components\FeaturedMagazinesComponent 16.0 MiB 7.21 ms
Input props
[
  "magazine" => null
]
Attributes
[]
Component
App\Twig\Components\FeaturedMagazinesComponent {#5005
  +magazine: null
  -twig: Twig\Environment {#1252 …}
  -repository: App\Repository\MagazineRepository {#2446 …}
}