Redirect 302 redirect from GET @entry_comment_create (85944a)

Components

24 Twig Components
82 Render Count
286 ms Render Time
12.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 10.27ms
date
"App\Twig\Components\DateComponent"
components/date.html.twig
8 1.76ms
user_inline
"App\Twig\Components\UserInlineComponent"
components/user_inline.html.twig
7 5.44ms
date_edited
"App\Twig\Components\DateEditedComponent"
components/date_edited.html.twig
6 6.61ms
vote
"App\Twig\Components\VoteComponent"
components/vote.html.twig
6 3.45ms
boost
"App\Twig\Components\BoostComponent"
components/boost.html.twig
6 5.68ms
entry_comment
"App\Twig\Components\EntryCommentComponent"
components/entry_comment.html.twig
5 184.39ms
user_avatar
"App\Twig\Components\UserAvatarComponent"
components/user_avatar.html.twig
5 40.07ms
entry_comments_nested
"App\Twig\Components\EntryCommentsNestedComponent"
components/_cached.html.twig
5 5.51ms
user_settings_row_switch
"App\Twig\Components\UserSettingsRowSwitchComponent"
components/_user_settings_row_switch.html.twig
4 1.85ms
settings_row_enum
"App\Twig\Components\SettingsRowEnumComponent"
components/_settings_row_enum.html.twig
2 0.68ms
entry
"App\Twig\Components\EntryComponent"
components/_cached.html.twig
1 27.38ms
entries_cross
"App\Twig\Components\EntriesCrossComponent"
components/_cached.html.twig
1 2.71ms
editor_toolbar
"App\Twig\Components\EditorToolbarComponent"
components/editor_toolbar.html.twig
1 0.28ms
user_actions
"App\Twig\Components\UserActionsComponent"
components/user_actions.html.twig
1 1.08ms
magazine_box
"App\Twig\Components\MagazineBoxComponent"
components/magazine_box.html.twig
1 40.36ms
magazine_sub
"App\Twig\Components\MagazineSubComponent"
components/magazine_sub.html.twig
1 0.56ms
related_magazines
"App\Twig\Components\RelatedMagazinesComponent"
components/_cached.html.twig
1 2.47ms
active_users
"App\Twig\Components\ActiveUsersComponent"
components/_cached.html.twig
1 0.35ms
related_categories
"App\Twig\Components\RelatedCategoriesComponent"
components/_cached.html.twig
1 3.93ms
related_posts
"App\Twig\Components\RelatedPostsComponent"
components/_cached.html.twig
1 2.19ms
related_entries
"App\Twig\Components\RelatedEntriesComponent"
components/_cached.html.twig
1 3.84ms
support_us_block
"App\Twig\Components\SupportUsBlock"
components/_cached.html.twig
1 1.34ms
featured_magazines
"App\Twig\Components\FeaturedMagazinesComponent"
components/_cached.html.twig
1 2.83ms

Render calls

entry App\Twig\Components\EntryComponent 12.0 MiB 27.38 ms
Input props
[
  "entry" => App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
  "isSingle" => true
  "showShortSentence" => false
  "showBody" => true
]
Attributes
[
  "class" => "entry--single section--top"
]
Component
App\Twig\Components\EntryComponent {#2955
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
  -newCommentMarkerCount: App\Kbin\NewCommentMarker\NewCommentMarkerCount {#2956 …}
  -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 {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
  +isSingle: true
  +showShortSentence: false
  +showBody: true
  +showMagazineName: false
  +canSeeTrash: false
  +newComments: 0
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 0.35 ms
Input props
[
  "user" => Proxies\__CG__\App\Entity\User {#1978
    +avatar: null
    +cover: null
    +email: "crschnick@sh.itjust.works"
    +username: "@crschnick@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728484533 {#1515
      date: 2024-10-09 16:35:33.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
    +entries: Doctrine\ORM\PersistentCollection {#1406 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
    +posts: Doctrine\ORM\PersistentCollection {#1745 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
    +follows: Doctrine\ORM\PersistentCollection {#1409 …}
    +followers: Doctrine\ORM\PersistentCollection {#1624 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
    +reports: Doctrine\ORM\PersistentCollection {#1416 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
    +violations: Doctrine\ORM\PersistentCollection {#1694 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
    +awards: Doctrine\ORM\PersistentCollection {#1434 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
    +categories: Doctrine\ORM\PersistentCollection {#1640 …}
    -id: 93143
    -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
    +apId: "crschnick@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/crschnick"
    +apPublicUrl: "https://sh.itjust.works/u/crschnick"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "crschnick"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727870872 {#1516
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1727870872 {#1518
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#3327
  +user: Proxies\__CG__\App\Entity\User {#1978
    +avatar: null
    +cover: null
    +email: "crschnick@sh.itjust.works"
    +username: "@crschnick@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728484533 {#1515
      date: 2024-10-09 16:35:33.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
    +entries: Doctrine\ORM\PersistentCollection {#1406 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
    +posts: Doctrine\ORM\PersistentCollection {#1745 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
    +follows: Doctrine\ORM\PersistentCollection {#1409 …}
    +followers: Doctrine\ORM\PersistentCollection {#1624 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
    +reports: Doctrine\ORM\PersistentCollection {#1416 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
    +violations: Doctrine\ORM\PersistentCollection {#1694 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
    +awards: Doctrine\ORM\PersistentCollection {#1434 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
    +categories: Doctrine\ORM\PersistentCollection {#1640 …}
    -id: 93143
    -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
    +apId: "crschnick@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/crschnick"
    +apPublicUrl: "https://sh.itjust.works/u/crschnick"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "crschnick"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727870872 {#1516
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1727870872 {#1518
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 12.0 MiB 0.25 ms
Input props
[
  "date" => DateTimeImmutable @1705989137 {#2402
    date: 2024-01-23 06:52:17.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#3397
  +date: DateTimeImmutable @1705989137 {#2402
    date: 2024-01-23 06:52:17.0 +01:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 12.0 MiB 5.89 ms
Input props
[
  "createdAt" => DateTimeImmutable @1705989137 {#2402
    date: 2024-01-23 06:52:17.0 +01:00
  }
  "editedAt" => DateTimeImmutable @1727893691 {#1793
    date: 2024-10-02 20:28:11.0 +02:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#3461
  +createdAt: DateTimeImmutable @1705989137 {#2402
    date: 2024-01-23 06:52:17.0 +01:00
  }
  +editedAt: DateTimeImmutable @1727893691 {#1793
    date: 2024-10-02 20:28:11.0 +02:00
  }
}
vote App\Twig\Components\VoteComponent 12.0 MiB 0.56 ms
Input props
[
  "subject" => App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#3526
  +subject: App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
  +formDest: "entry"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 12.0 MiB 1.22 ms
Input props
[
  "subject" => App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#3597
  +formDest: "entry"
  +subject: App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
entries_cross App\Twig\Components\EntriesCrossComponent 12.0 MiB 2.71 ms
Input props
[
  "entry" => App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\EntriesCrossComponent {#3906
  +entry: App\Entity\Entry {#2400
    +user: Proxies\__CG__\App\Entity\User {#1978
      +avatar: null
      +cover: null
      +email: "crschnick@sh.itjust.works"
      +username: "@crschnick@sh.itjust.works"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728484533 {#1515
        date: 2024-10-09 16:35:33.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
      +entries: Doctrine\ORM\PersistentCollection {#1406 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
      +posts: Doctrine\ORM\PersistentCollection {#1745 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
      +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
      +follows: Doctrine\ORM\PersistentCollection {#1409 …}
      +followers: Doctrine\ORM\PersistentCollection {#1624 …}
      +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
      +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
      +reports: Doctrine\ORM\PersistentCollection {#1416 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
      +violations: Doctrine\ORM\PersistentCollection {#1694 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
      +awards: Doctrine\ORM\PersistentCollection {#1434 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
      +categories: Doctrine\ORM\PersistentCollection {#1640 …}
      -id: 93143
      -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
      +apId: "crschnick@sh.itjust.works"
      +apProfileId: "https://sh.itjust.works/u/crschnick"
      +apPublicUrl: "https://sh.itjust.works/u/crschnick"
      +apFollowersUrl: null
      +apInboxUrl: "https://sh.itjust.works/inbox"
      +apDomain: "sh.itjust.works"
      +apPreferredUsername: "crschnick"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727870872 {#1516
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1727870872 {#1518
        date: 2024-10-02 14:07:52.0 +02:00
      }
      +__isInitialized__: true
       …2
    }
    +magazine: App\Entity\Magazine {#265
      +icon: Proxies\__CG__\App\Entity\Image {#246 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#275
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#237 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
      +entries: Doctrine\ORM\PersistentCollection {#180 …}
      +posts: Doctrine\ORM\PersistentCollection {#138 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
      +bans: Doctrine\ORM\PersistentCollection {#117 …}
      +reports: Doctrine\ORM\PersistentCollection {#103 …}
      +badges: Doctrine\ORM\PersistentCollection {#81 …}
      +logs: Doctrine\ORM\PersistentCollection {#71 …}
      +awards: Doctrine\ORM\PersistentCollection {#1346 …}
      +categories: Doctrine\ORM\PersistentCollection {#1823 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#269
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#271
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
    +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
    +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
    +body: """
      I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
      \n
      Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
      \n
      ### Large connection sets\n
      \n
      A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
      \n
      You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
      \n
      ![Connections](https://i.imgur.com/689dpYJ.png)\n
      \n
      A new scripting system\n
      ----------------------\n
      \n
      XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
      \n
      You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
      \n
      As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
      \n
      ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
      \n
      ### Other news\n
      \n
      - You can now sync your connection configurations with your own remote git repository\n
      - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
      - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
      - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
      - Support for many more terminals and text editors across all platforms has been added\n
      - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
      - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
      - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
      - There are now ARM releases for Linux\n
      - Support for VMware desktop hypervisors has been added\n
      - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
      - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
      - Of course, a lot of bugs have been fixed across the board\n
      \n
      Going full-time\n
      ---------------\n
      \n
      A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
      \n
      This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
      \n
      Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
      \n
      Outlook\n
      -------\n
      \n
      So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
      \n
      Enjoy!
      """
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 11
    +favouriteCount: 123
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1728484533 {#2414
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 32535
    -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
    -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706075537
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13315382"
    +editedAt: DateTimeImmutable @1727893691 {#1793
      date: 2024-10-02 20:28:11.0 +02:00
    }
    +createdAt: DateTimeImmutable @1705989137 {#2402
      date: 2024-01-23 06:52:17.0 +01:00
    }
  }
  -repository: App\Repository\EntryRepository {#270 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
}
editor_toolbar App\Twig\Components\EditorToolbarComponent 12.0 MiB 0.28 ms
Input props
[
  "id" => "entry_comment_68221fec5b5041.64923285_body"
]
Attributes
[]
Component
App\Twig\Components\EditorToolbarComponent {#4003
  +id: "entry_comment_68221fec5b5041.64923285_body"
}
entry_comment App\Twig\Components\EntryCommentComponent 12.0 MiB 127.04 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
  "showNested" => true
  "dateAsUrl" => false
  "showMagazineName" => false
  "showEntryTitle" => false
]
Attributes
[]
Component
App\Twig\Components\EntryCommentComponent {#4635
  +comment: App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
  +showMagazineName: false
  +showEntryTitle: false
  +showNested: true
  +level: 1
  +canSeeTrash: false
  +dateAsUrl: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 0.22 ms
Input props
[
  "user" => App\Entity\User {#4163
    +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
    +cover: null
    +email: "SeeJayEmm@lemmy.procrastinati.org"
    +username: "@SeeJayEmm@lemmy.procrastinati.org"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
      \n
      Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
      """
    +lastActive: DateTime @1728418371 {#4223
      date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
    +entries: Doctrine\ORM\PersistentCollection {#4156 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
    +posts: Doctrine\ORM\PersistentCollection {#4146 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
    +follows: Doctrine\ORM\PersistentCollection {#4277 …}
    +followers: Doctrine\ORM\PersistentCollection {#4270 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
    +reports: Doctrine\ORM\PersistentCollection {#4276 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
    +violations: Doctrine\ORM\PersistentCollection {#4273 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
    +awards: Doctrine\ORM\PersistentCollection {#4262 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
    +categories: Doctrine\ORM\PersistentCollection {#4263 …}
    -id: 22728
    -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
    +apId: "SeeJayEmm@lemmy.procrastinati.org"
    +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
    +apDomain: "lemmy.procrastinati.org"
    +apPreferredUsername: "SeeJayEmm"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1729104417 {#4219
      date: 2024-10-16 20:46:57.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1689080109 {#4217
      date: 2023-07-11 14:55:09.0 +02:00
    }
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#4723
  +user: App\Entity\User {#4163
    +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
    +cover: null
    +email: "SeeJayEmm@lemmy.procrastinati.org"
    +username: "@SeeJayEmm@lemmy.procrastinati.org"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
      \n
      Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
      """
    +lastActive: DateTime @1728418371 {#4223
      date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
    +entries: Doctrine\ORM\PersistentCollection {#4156 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
    +posts: Doctrine\ORM\PersistentCollection {#4146 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
    +follows: Doctrine\ORM\PersistentCollection {#4277 …}
    +followers: Doctrine\ORM\PersistentCollection {#4270 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
    +reports: Doctrine\ORM\PersistentCollection {#4276 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
    +violations: Doctrine\ORM\PersistentCollection {#4273 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
    +awards: Doctrine\ORM\PersistentCollection {#4262 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
    +categories: Doctrine\ORM\PersistentCollection {#4263 …}
    -id: 22728
    -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
    +apId: "SeeJayEmm@lemmy.procrastinati.org"
    +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
    +apDomain: "lemmy.procrastinati.org"
    +apPreferredUsername: "SeeJayEmm"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1729104417 {#4219
      date: 2024-10-16 20:46:57.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1689080109 {#4217
      date: 2023-07-11 14:55:09.0 +02:00
    }
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 12.0 MiB 0.21 ms
Input props
[
  "date" => DateTimeImmutable @1706133229 {#4160
    date: 2024-01-24 22:53:49.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#4778
  +date: DateTimeImmutable @1706133229 {#4160
    date: 2024-01-24 22:53:49.0 +01:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 12.0 MiB 0.12 ms
Input props
[
  "createdAt" => DateTimeImmutable @1706133229 {#4160
    date: 2024-01-24 22:53:49.0 +01:00
  }
  "editedAt" => null
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#4832
  +createdAt: DateTimeImmutable @1706133229 {#4160
    date: 2024-01-24 22:53:49.0 +01:00
  }
  +editedAt: null
}
user_avatar App\Twig\Components\UserAvatarComponent 12.0 MiB 38.96 ms
Input props
[
  "user" => App\Entity\User {#4163
    +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
    +cover: null
    +email: "SeeJayEmm@lemmy.procrastinati.org"
    +username: "@SeeJayEmm@lemmy.procrastinati.org"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
      \n
      Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
      """
    +lastActive: DateTime @1728418371 {#4223
      date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
    +entries: Doctrine\ORM\PersistentCollection {#4156 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
    +posts: Doctrine\ORM\PersistentCollection {#4146 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
    +follows: Doctrine\ORM\PersistentCollection {#4277 …}
    +followers: Doctrine\ORM\PersistentCollection {#4270 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
    +reports: Doctrine\ORM\PersistentCollection {#4276 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
    +violations: Doctrine\ORM\PersistentCollection {#4273 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
    +awards: Doctrine\ORM\PersistentCollection {#4262 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
    +categories: Doctrine\ORM\PersistentCollection {#4263 …}
    -id: 22728
    -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
    +apId: "SeeJayEmm@lemmy.procrastinati.org"
    +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
    +apDomain: "lemmy.procrastinati.org"
    +apPreferredUsername: "SeeJayEmm"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1729104417 {#4219
      date: 2024-10-16 20:46:57.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1689080109 {#4217
      date: 2023-07-11 14:55:09.0 +02:00
    }
  }
  "width" => 40
  "height" => 40
  "asLink" => true
]
Attributes
[]
Component
App\Twig\Components\UserAvatarComponent {#4888
  +width: 40
  +height: 40
  +user: App\Entity\User {#4163
    +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
    +cover: null
    +email: "SeeJayEmm@lemmy.procrastinati.org"
    +username: "@SeeJayEmm@lemmy.procrastinati.org"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
      \n
      Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
      """
    +lastActive: DateTime @1728418371 {#4223
      date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
    +entries: Doctrine\ORM\PersistentCollection {#4156 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
    +posts: Doctrine\ORM\PersistentCollection {#4146 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
    +follows: Doctrine\ORM\PersistentCollection {#4277 …}
    +followers: Doctrine\ORM\PersistentCollection {#4270 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
    +reports: Doctrine\ORM\PersistentCollection {#4276 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
    +violations: Doctrine\ORM\PersistentCollection {#4273 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
    +awards: Doctrine\ORM\PersistentCollection {#4262 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
    +categories: Doctrine\ORM\PersistentCollection {#4263 …}
    -id: 22728
    -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
    +apId: "SeeJayEmm@lemmy.procrastinati.org"
    +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
    +apDomain: "lemmy.procrastinati.org"
    +apPreferredUsername: "SeeJayEmm"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1729104417 {#4219
      date: 2024-10-16 20:46:57.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1689080109 {#4217
      date: 2023-07-11 14:55:09.0 +02:00
    }
  }
  +asLink: true
}
vote App\Twig\Components\VoteComponent 12.0 MiB 0.90 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#4981
  +subject: App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
  +formDest: "entry_comment"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 12.0 MiB 1.20 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#5038
  +formDest: "entry_comment"
  +subject: App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
entry_comments_nested App\Twig\Components\EntryCommentsNestedComponent 12.0 MiB 3.86 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
  "level" => 1
  "showNested" => true
  "view" => "tree"
]
Attributes
[
  "showNested" => true
]
Component
App\Twig\Components\EntryCommentsNestedComponent {#5283
  +comment: App\Entity\EntryComment {#4215
    +user: App\Entity\User {#4163
      +avatar: Proxies\__CG__\App\Entity\Image {#4164 …}
      +cover: null
      +email: "SeeJayEmm@lemmy.procrastinati.org"
      +username: "@SeeJayEmm@lemmy.procrastinati.org"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        Mastodon: [@SeeJayEmm@noc.social](https://noc.social/users/SeeJayEmm)\n
        \n
        Blog: [@seejayemm@procrastinati.org](https://procrastinati.org/seejayemm/)
        """
      +lastActive: DateTime @1728418371 {#4223
        date: 2024-10-08 22:12:51.0 +02: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 {#4168 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4161 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4158 …}
      +entries: Doctrine\ORM\PersistentCollection {#4156 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4153 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4151 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4149 …}
      +posts: Doctrine\ORM\PersistentCollection {#4146 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4144 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4142 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4139 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4137 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4135 …}
      +follows: Doctrine\ORM\PersistentCollection {#4277 …}
      +followers: Doctrine\ORM\PersistentCollection {#4270 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4260 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4249 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4222 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4280 …}
      +reports: Doctrine\ORM\PersistentCollection {#4276 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4274 …}
      +violations: Doctrine\ORM\PersistentCollection {#4273 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4272 …}
      +awards: Doctrine\ORM\PersistentCollection {#4262 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4265 …}
      +categories: Doctrine\ORM\PersistentCollection {#4263 …}
      -id: 22728
      -password: "$2y$13$2UxkQudL0EOYVPK2mCsvguTrG08zmaNquZBddpzjz5k9ncJwTLFmm"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4261 …}
      +apId: "SeeJayEmm@lemmy.procrastinati.org"
      +apProfileId: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apPublicUrl: "https://lemmy.procrastinati.org/u/SeeJayEmm"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.procrastinati.org/inbox"
      +apDomain: "lemmy.procrastinati.org"
      +apPreferredUsername: "SeeJayEmm"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1729104417 {#4219
        date: 2024-10-16 20:46:57.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1689080109 {#4217
        date: 2023-07-11 14:55:09.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      I’m checking this out to see if it’s useful to me. I can see where being able to drop straight into a shell on a docker container would be handy. My only real gripe is that I can’t use it to connect to my free-tier oracle linux cloud VMs because they deploy OracleLinux out of the box.\n
      \n
      I don’t begrudge you wanting to make a living from your work. It’s just frustrating.\n
      \n
      I am going to try and live in it for a week or two and we’ll see if it sticks.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1728484533 {#4224
      date: 2024-10-09 16:35:33.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4213 …}
    +nested: Doctrine\ORM\PersistentCollection {#4211 …}
    +votes: Doctrine\ORM\PersistentCollection {#4209 …}
    +reports: Doctrine\ORM\PersistentCollection {#4207 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4175 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4179 …}
    -id: 337741
    -bodyTs: "'abl':19 'begrudg':66 'box':62 'check':3 'cloud':53 'connect':45 'contain':29 'deploy':57 'docker':28 'drop':21 'free':49 'free-tier':48 'frustrat':79 'go':82 'gripe':36 'handi':32 'linux':52 'live':72,86 'll':96 'm':2 'make':70 'oracl':51 'oraclelinux':58 'real':35 'see':7,16,97 'shell':25 'stick':100 'straight':22 'tier':50 'tri':84 'two':93 'use':11,42 'vms':54 'want':68 'week':91 'work':75 'would':30"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.procrastinati.org/comment/1427334"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706133229 {#4160
      date: 2024-01-24 22:53:49.0 +01:00
    }
  }
  +nestedComments: [
    338427 => App\Entity\EntryComment {#4610
      +user: Proxies\__CG__\App\Entity\User {#1978 …2}
      +entry: App\Entity\Entry {#2400}
      +magazine: App\Entity\Magazine {#265}
      +image: null
      +parent: App\Entity\EntryComment {#4215}
      +root: App\Entity\EntryComment {#4215}
      +body: "Yeah the commercialization model is not perfect yet. Ideally the community edition should include all normal features required for personal use. Would that only be like one machine to connect to or many? I was planning to experiment with allowing a few connections where a license would be required in the community version."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 1
      +score: 0
      +lastActive: DateTime @1706155317 {#4608
        date: 2024-01-25 05:01:57.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@crschnick@sh.itjust.works"
        "@SeeJayEmm@lemmy.procrastinati.org"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4611 …}
      +nested: Doctrine\ORM\PersistentCollection {#4613 …}
      +votes: Doctrine\ORM\PersistentCollection {#4615 …}
      +reports: Doctrine\ORM\PersistentCollection {#4617 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4619 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4621 …}
      -id: 338427
      -bodyTs: "'allow':40 'commerci':3 'communiti':11,52 'connect':30,43 'edit':12 'experi':38 'featur':17 'ideal':9 'includ':14 'licens':46 'like':26 'machin':28 'mani':33 'model':4 'normal':16 'one':27 'perfect':7 'person':20 'plan':36 'requir':18,49 'use':21 'version':53 'would':22,47 'yeah':1 'yet':8"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8010123"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706155317 {#4609
        date: 2024-01-25 05:01:57.0 +01:00
      }
    }
  ]
  +level: 1
  +view: "tree"
  -entryCommentRepository: App\Repository\EntryCommentRepository {#556 …}
  -twig: Twig\Environment {#1252 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
entry_comment App\Twig\Components\EntryCommentComponent 12.0 MiB 20.24 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
  "showNested" => true
  "dateAsUrl" => false
  "showMagazineName" => false
  "showEntryTitle" => false
]
Attributes
[]
Component
App\Twig\Components\EntryCommentComponent {#5362
  +comment: App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
  +showMagazineName: false
  +showEntryTitle: false
  +showNested: true
  +level: 1
  +canSeeTrash: false
  +dateAsUrl: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 0.30 ms
Input props
[
  "user" => App\Entity\User {#4235
    +avatar: null
    +cover: null
    +email: "maynarkh@feddit.nl"
    +username: "@maynarkh@feddit.nl"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1729203783 {#4257
      date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
    +entries: Doctrine\ORM\PersistentCollection {#4228 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
    +posts: Doctrine\ORM\PersistentCollection {#4288 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
    +follows: Doctrine\ORM\PersistentCollection {#4300 …}
    +followers: Doctrine\ORM\PersistentCollection {#4302 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
    +reports: Doctrine\ORM\PersistentCollection {#4312 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
    +violations: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    +awards: Doctrine\ORM\PersistentCollection {#4320 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
    +categories: Doctrine\ORM\PersistentCollection {#4324 …}
    -id: 505
    -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
    +apId: "maynarkh@feddit.nl"
    +apProfileId: "https://feddit.nl/u/maynarkh"
    +apPublicUrl: "https://feddit.nl/u/maynarkh"
    +apFollowersUrl: null
    +apInboxUrl: "https://feddit.nl/inbox"
    +apDomain: "feddit.nl"
    +apPreferredUsername: "maynarkh"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728717818 {#4254
      date: 2024-10-12 09:23:38.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1686930879 {#4247
      date: 2023-06-16 17:54:39.0 +02:00
    }
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#5407
  +user: App\Entity\User {#4235
    +avatar: null
    +cover: null
    +email: "maynarkh@feddit.nl"
    +username: "@maynarkh@feddit.nl"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1729203783 {#4257
      date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
    +entries: Doctrine\ORM\PersistentCollection {#4228 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
    +posts: Doctrine\ORM\PersistentCollection {#4288 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
    +follows: Doctrine\ORM\PersistentCollection {#4300 …}
    +followers: Doctrine\ORM\PersistentCollection {#4302 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
    +reports: Doctrine\ORM\PersistentCollection {#4312 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
    +violations: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    +awards: Doctrine\ORM\PersistentCollection {#4320 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
    +categories: Doctrine\ORM\PersistentCollection {#4324 …}
    -id: 505
    -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
    +apId: "maynarkh@feddit.nl"
    +apProfileId: "https://feddit.nl/u/maynarkh"
    +apPublicUrl: "https://feddit.nl/u/maynarkh"
    +apFollowersUrl: null
    +apInboxUrl: "https://feddit.nl/inbox"
    +apDomain: "feddit.nl"
    +apPreferredUsername: "maynarkh"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728717818 {#4254
      date: 2024-10-12 09:23:38.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1686930879 {#4247
      date: 2023-06-16 17:54:39.0 +02:00
    }
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 12.0 MiB 0.27 ms
Input props
[
  "date" => DateTimeImmutable @1706007939 {#4256
    date: 2024-01-23 12:05:39.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#5462
  +date: DateTimeImmutable @1706007939 {#4256
    date: 2024-01-23 12:05:39.0 +01:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 12.0 MiB 0.17 ms
Input props
[
  "createdAt" => DateTimeImmutable @1706007939 {#4256
    date: 2024-01-23 12:05:39.0 +01:00
  }
  "editedAt" => null
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#5516
  +createdAt: DateTimeImmutable @1706007939 {#4256
    date: 2024-01-23 12:05:39.0 +01:00
  }
  +editedAt: null
}
user_avatar App\Twig\Components\UserAvatarComponent 12.0 MiB 0.23 ms
Input props
[
  "user" => App\Entity\User {#4235
    +avatar: null
    +cover: null
    +email: "maynarkh@feddit.nl"
    +username: "@maynarkh@feddit.nl"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1729203783 {#4257
      date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
    +entries: Doctrine\ORM\PersistentCollection {#4228 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
    +posts: Doctrine\ORM\PersistentCollection {#4288 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
    +follows: Doctrine\ORM\PersistentCollection {#4300 …}
    +followers: Doctrine\ORM\PersistentCollection {#4302 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
    +reports: Doctrine\ORM\PersistentCollection {#4312 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
    +violations: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    +awards: Doctrine\ORM\PersistentCollection {#4320 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
    +categories: Doctrine\ORM\PersistentCollection {#4324 …}
    -id: 505
    -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
    +apId: "maynarkh@feddit.nl"
    +apProfileId: "https://feddit.nl/u/maynarkh"
    +apPublicUrl: "https://feddit.nl/u/maynarkh"
    +apFollowersUrl: null
    +apInboxUrl: "https://feddit.nl/inbox"
    +apDomain: "feddit.nl"
    +apPreferredUsername: "maynarkh"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728717818 {#4254
      date: 2024-10-12 09:23:38.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1686930879 {#4247
      date: 2023-06-16 17:54:39.0 +02:00
    }
  }
  "width" => 40
  "height" => 40
  "asLink" => true
]
Attributes
[]
Component
App\Twig\Components\UserAvatarComponent {#5570
  +width: 40
  +height: 40
  +user: App\Entity\User {#4235
    +avatar: null
    +cover: null
    +email: "maynarkh@feddit.nl"
    +username: "@maynarkh@feddit.nl"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1729203783 {#4257
      date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
    +entries: Doctrine\ORM\PersistentCollection {#4228 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
    +posts: Doctrine\ORM\PersistentCollection {#4288 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
    +follows: Doctrine\ORM\PersistentCollection {#4300 …}
    +followers: Doctrine\ORM\PersistentCollection {#4302 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
    +reports: Doctrine\ORM\PersistentCollection {#4312 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
    +violations: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    +awards: Doctrine\ORM\PersistentCollection {#4320 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
    +categories: Doctrine\ORM\PersistentCollection {#4324 …}
    -id: 505
    -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
    +apId: "maynarkh@feddit.nl"
    +apProfileId: "https://feddit.nl/u/maynarkh"
    +apPublicUrl: "https://feddit.nl/u/maynarkh"
    +apFollowersUrl: null
    +apInboxUrl: "https://feddit.nl/inbox"
    +apDomain: "feddit.nl"
    +apPreferredUsername: "maynarkh"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728717818 {#4254
      date: 2024-10-12 09:23:38.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1686930879 {#4247
      date: 2023-06-16 17:54:39.0 +02:00
    }
  }
  +asLink: true
}
vote App\Twig\Components\VoteComponent 12.0 MiB 0.70 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#5647
  +subject: App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
  +formDest: "entry_comment"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 12.0 MiB 0.88 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#5704
  +formDest: "entry_comment"
  +subject: App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
entry_comments_nested App\Twig\Components\EntryCommentsNestedComponent 12.0 MiB 0.57 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
  "level" => 1
  "showNested" => true
  "view" => "tree"
]
Attributes
[
  "showNested" => true
]
Component
App\Twig\Components\EntryCommentsNestedComponent {#5944
  +comment: App\Entity\EntryComment {#4252
    +user: App\Entity\User {#4235
      +avatar: null
      +cover: null
      +email: "maynarkh@feddit.nl"
      +username: "@maynarkh@feddit.nl"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1729203783 {#4257
        date: 2024-10-18 00:23:03.0 +02: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 {#4234 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4230 …}
      +entries: Doctrine\ORM\PersistentCollection {#4228 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4226 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4285 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4286 …}
      +posts: Doctrine\ORM\PersistentCollection {#4288 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4290 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4292 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4294 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4296 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4298 …}
      +follows: Doctrine\ORM\PersistentCollection {#4300 …}
      +followers: Doctrine\ORM\PersistentCollection {#4302 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4304 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4306 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4308 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4310 …}
      +reports: Doctrine\ORM\PersistentCollection {#4312 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4314 …}
      +violations: Doctrine\ORM\PersistentCollection {#4316 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
      +awards: Doctrine\ORM\PersistentCollection {#4320 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4322 …}
      +categories: Doctrine\ORM\PersistentCollection {#4324 …}
      -id: 505
      -password: "$2y$13$UcR5mKUZhujCM4.7DGLA.e8pib1PVTF2HmPJUuak/TZFgJCtEEdOG"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4326 …}
      +apId: "maynarkh@feddit.nl"
      +apProfileId: "https://feddit.nl/u/maynarkh"
      +apPublicUrl: "https://feddit.nl/u/maynarkh"
      +apFollowersUrl: null
      +apInboxUrl: "https://feddit.nl/inbox"
      +apDomain: "feddit.nl"
      +apPreferredUsername: "maynarkh"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728717818 {#4254
        date: 2024-10-12 09:23:38.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1686930879 {#4247
        date: 2023-06-16 17:54:39.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          > Any issues on the community? Report it using the report flag.\n
          \n
          > Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: """
      Would this let me do something like SSH to a bastion host, elevate privs with sudo, and SSH forward from there, then elevate privs again on the final target I’m trying to get to? Maybe do that on 100 servers at the same time?\n
      \n
      Back a half decade, I and my team of DBAs would have killed for something like that.\n
      \n
      Sorry if I’m the “can it do this weird and unnecessary thing” guy, but it really looks like a dream come true if it’s what I think it is
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 3
    +score: 0
    +lastActive: DateTime @1728037564 {#4258
      date: 2024-10-04 12:26:04.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4250 …}
    +nested: Doctrine\ORM\PersistentCollection {#4248 …}
    +votes: Doctrine\ORM\PersistentCollection {#4246 …}
    +reports: Doctrine\ORM\PersistentCollection {#4243 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4239 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4237 …}
    -id: 333889
    -bodyTs: "'100':40 'back':46 'bastion':11 'come':84 'dbas':55 'decad':49 'dream':83 'elev':13,23 'final':28 'forward':19 'get':34 'guy':76 'half':48 'host':12 'kill':58 'let':3 'like':7,61,81 'look':80 'm':31,66 'mayb':36 'priv':14,24 'realli':79 'server':41 'someth':6,60 'sorri':63 'ssh':8,18 'sudo':16 'target':29 'team':53 'thing':75 'think':91 'time':45 'tri':32 'true':85 'unnecessari':74 'weird':72 'would':1,56"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.nl/comment/6327518"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007939 {#4256
      date: 2024-01-23 12:05:39.0 +01:00
    }
  }
  +nestedComments: [
    334976 => App\Entity\EntryComment {#4647
      +user: App\Entity\User {#4235}
      +entry: App\Entity\Entry {#2400}
      +magazine: App\Entity\Magazine {#265}
      +image: null
      +parent: App\Entity\EntryComment {#4594
        +user: Proxies\__CG__\App\Entity\User {#4595 …}
        +entry: App\Entity\Entry {#2400}
        +magazine: App\Entity\Magazine {#265}
        +image: null
        +parent: App\Entity\EntryComment {#4252}
        +root: App\Entity\EntryComment {#4252}
        +body: """
          Honest question - why would you elevate privs on the bastion?\n
          \n
          You can automatically use a bastion host with an SSH config entry as well in case you didn’t know:\n
          \n
          ```\n
          \n
          <span style="color:#323232;">Host target.example.com\n
          </span><span style="color:#323232;">  User  username\n
          </span><span style="color:#323232;">  ProxyJump username@bastion.example.com\n
          </span>\n
          ```\n
          \n
          Then you just `ssh target.example.com`. Port forwarding is sent through as well.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 1
        +score: 0
        +lastActive: DateTime @1706025026 {#4592
          date: 2024-01-23 16:50:26.0 +01:00
        }
        +ip: null
        +tags: [
          "323232"
        ]
        +mentions: [
          "@crschnick@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4596 …}
        +nested: Doctrine\ORM\PersistentCollection {#4598 …}
        +votes: Doctrine\ORM\PersistentCollection {#4600 …}
        +reports: Doctrine\ORM\PersistentCollection {#4602 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4604 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4606 …}
        -id: 334328
        -bodyTs: "'automat':13 'bastion':10,16 'case':26 'config':21 'didn':28 'elev':6 'entri':22 'forward':43 'honest':1 'host':17,31 'know':30 'port':42 'priv':7 'proxyjump':35 'question':2 'sent':45 'ssh':20,40 'target.example.com':32,41 'use':14 'user':33 'usernam':34 'username@bastion.example.com':36 'well':24,48 'would':4"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/7944443"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706025026 {#4593
          date: 2024-01-23 16:50:26.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4252}
      +body: """
        You’re right it should work like that, but I remember trying it, and it didn’t because of some weird security policy.\n
        \n
        It is a very good tip though.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706039749 {#4645
        date: 2024-01-23 20:55:49.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@crschnick@sh.itjust.works"
        "@maynarkh@feddit.nl"
        "@atzanteol@sh.itjust.works"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4648 …}
      +nested: Doctrine\ORM\PersistentCollection {#4650 …}
      +votes: Doctrine\ORM\PersistentCollection {#4652 …}
      +reports: Doctrine\ORM\PersistentCollection {#4654 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4656 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4658 …}
      -id: 334976
      -bodyTs: "'didn':16 'good':28 'like':7 'polici':23 're':2 'rememb':11 'right':3 'secur':22 'though':30 'tip':29 'tri':12 'weird':21 'work':6"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://feddit.nl/comment/6338470"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706039749 {#4646
        date: 2024-01-23 20:55:49.0 +01:00
      }
    }
    333899 => App\Entity\EntryComment {#4579
      +user: Proxies\__CG__\App\Entity\User {#1978 …2}
      +entry: App\Entity\Entry {#2400}
      +magazine: App\Entity\Magazine {#265}
      +image: null
      +parent: App\Entity\EntryComment {#4252}
      +root: App\Entity\EntryComment {#4252}
      +body: """
        From your description I would say yes.\n
        \n
        You always have to fiddle around a bit with SSH jumps and fowards as there are two different ways in xpipe to handle that. You also have to take care of your authentication maybe with agent forwarding etc. if you use keys. But I’m confident that you can make this work with the new custom SSH connections in xpipe as that allows you to do basically anything with SSH.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706008450 {#4576
        date: 2024-01-23 12:14:10.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@crschnick@sh.itjust.works"
        "@maynarkh@feddit.nl"
        "@crschnick@sh.itjust.works"
        "@maynarkh@feddit.nl"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4580 …}
      +nested: Doctrine\ORM\PersistentCollection {#4582 …}
      +votes: Doctrine\ORM\PersistentCollection {#4584 …}
      +reports: Doctrine\ORM\PersistentCollection {#4586 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4588 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4590 …}
      -id: 333899
      -bodyTs: "'agent':43 'allow':70 'also':33 'alway':9 'anyth':75 'around':13 'authent':40 'basic':74 'bit':15 'care':37 'confid':53 'connect':65 'custom':63 'descript':3 'differ':25 'etc':45 'fiddl':12 'forward':44 'foward':20 'handl':30 'jump':18 'key':49 'm':52 'make':57 'mayb':41 'new':62 'say':6 'ssh':17,64,77 'take':36 'two':24 'use':48 'way':26 'work':59 'would':5 'xpipe':28,67 'yes':7"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/7937054"
      +editedAt: DateTimeImmutable @1727939912 {#4577
        date: 2024-10-03 09:18:32.0 +02:00
      }
      +createdAt: DateTimeImmutable @1706008450 {#4578
        date: 2024-01-23 12:14:10.0 +01:00
      }
    }
    334328 => App\Entity\EntryComment {#4594}
  ]
  +level: 1
  +view: "tree"
  -entryCommentRepository: App\Repository\EntryCommentRepository {#556 …}
  -twig: Twig\Environment {#1252 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
entry_comment App\Twig\Components\EntryCommentComponent 12.0 MiB 9.37 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
  "showNested" => true
  "dateAsUrl" => false
  "showMagazineName" => false
  "showEntryTitle" => false
]
Attributes
[]
Component
App\Twig\Components\EntryCommentComponent {#6012
  +comment: App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
  +showMagazineName: false
  +showEntryTitle: false
  +showNested: true
  +level: 1
  +canSeeTrash: false
  +dateAsUrl: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 0.40 ms
Input props
[
  "user" => App\Entity\User {#4346
    +avatar: null
    +cover: null
    +email: "solrize@lemmy.world"
    +username: "@solrize@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728759824 {#4330
      date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
    +entries: Doctrine\ORM\PersistentCollection {#4353 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
    +posts: Doctrine\ORM\PersistentCollection {#4361 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
    +follows: Doctrine\ORM\PersistentCollection {#4373 …}
    +followers: Doctrine\ORM\PersistentCollection {#4375 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
    +reports: Doctrine\ORM\PersistentCollection {#4385 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
    +violations: Doctrine\ORM\PersistentCollection {#4389 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
    +awards: Doctrine\ORM\PersistentCollection {#4393 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
    +categories: Doctrine\ORM\PersistentCollection {#4397 …}
    -id: 9413
    -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
    +apId: "solrize@lemmy.world"
    +apProfileId: "https://lemmy.world/u/solrize"
    +apPublicUrl: "https://lemmy.world/u/solrize"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "solrize"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728964416 {#4331
      date: 2024-10-15 05:53:36.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687540016 {#4332
      date: 2023-06-23 19:06:56.0 +02:00
    }
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#6057
  +user: App\Entity\User {#4346
    +avatar: null
    +cover: null
    +email: "solrize@lemmy.world"
    +username: "@solrize@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728759824 {#4330
      date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
    +entries: Doctrine\ORM\PersistentCollection {#4353 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
    +posts: Doctrine\ORM\PersistentCollection {#4361 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
    +follows: Doctrine\ORM\PersistentCollection {#4373 …}
    +followers: Doctrine\ORM\PersistentCollection {#4375 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
    +reports: Doctrine\ORM\PersistentCollection {#4385 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
    +violations: Doctrine\ORM\PersistentCollection {#4389 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
    +awards: Doctrine\ORM\PersistentCollection {#4393 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
    +categories: Doctrine\ORM\PersistentCollection {#4397 …}
    -id: 9413
    -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
    +apId: "solrize@lemmy.world"
    +apProfileId: "https://lemmy.world/u/solrize"
    +apPublicUrl: "https://lemmy.world/u/solrize"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "solrize"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728964416 {#4331
      date: 2024-10-15 05:53:36.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687540016 {#4332
      date: 2023-06-23 19:06:56.0 +02:00
    }
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 12.0 MiB 0.22 ms
Input props
[
  "date" => DateTimeImmutable @1705992824 {#4329
    date: 2024-01-23 07:53:44.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#6112
  +date: DateTimeImmutable @1705992824 {#4329
    date: 2024-01-23 07:53:44.0 +01:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 12.0 MiB 0.17 ms
Input props
[
  "createdAt" => DateTimeImmutable @1705992824 {#4329
    date: 2024-01-23 07:53:44.0 +01:00
  }
  "editedAt" => null
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#6166
  +createdAt: DateTimeImmutable @1705992824 {#4329
    date: 2024-01-23 07:53:44.0 +01:00
  }
  +editedAt: null
}
user_avatar App\Twig\Components\UserAvatarComponent 12.0 MiB 0.26 ms
Input props
[
  "user" => App\Entity\User {#4346
    +avatar: null
    +cover: null
    +email: "solrize@lemmy.world"
    +username: "@solrize@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728759824 {#4330
      date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
    +entries: Doctrine\ORM\PersistentCollection {#4353 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
    +posts: Doctrine\ORM\PersistentCollection {#4361 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
    +follows: Doctrine\ORM\PersistentCollection {#4373 …}
    +followers: Doctrine\ORM\PersistentCollection {#4375 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
    +reports: Doctrine\ORM\PersistentCollection {#4385 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
    +violations: Doctrine\ORM\PersistentCollection {#4389 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
    +awards: Doctrine\ORM\PersistentCollection {#4393 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
    +categories: Doctrine\ORM\PersistentCollection {#4397 …}
    -id: 9413
    -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
    +apId: "solrize@lemmy.world"
    +apProfileId: "https://lemmy.world/u/solrize"
    +apPublicUrl: "https://lemmy.world/u/solrize"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "solrize"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728964416 {#4331
      date: 2024-10-15 05:53:36.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687540016 {#4332
      date: 2023-06-23 19:06:56.0 +02:00
    }
  }
  "width" => 40
  "height" => 40
  "asLink" => true
]
Attributes
[]
Component
App\Twig\Components\UserAvatarComponent {#6220
  +width: 40
  +height: 40
  +user: App\Entity\User {#4346
    +avatar: null
    +cover: null
    +email: "solrize@lemmy.world"
    +username: "@solrize@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728759824 {#4330
      date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
    +entries: Doctrine\ORM\PersistentCollection {#4353 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
    +posts: Doctrine\ORM\PersistentCollection {#4361 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
    +follows: Doctrine\ORM\PersistentCollection {#4373 …}
    +followers: Doctrine\ORM\PersistentCollection {#4375 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
    +reports: Doctrine\ORM\PersistentCollection {#4385 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
    +violations: Doctrine\ORM\PersistentCollection {#4389 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
    +awards: Doctrine\ORM\PersistentCollection {#4393 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
    +categories: Doctrine\ORM\PersistentCollection {#4397 …}
    -id: 9413
    -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
    +apId: "solrize@lemmy.world"
    +apProfileId: "https://lemmy.world/u/solrize"
    +apPublicUrl: "https://lemmy.world/u/solrize"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "solrize"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728964416 {#4331
      date: 2024-10-15 05:53:36.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687540016 {#4332
      date: 2023-06-23 19:06:56.0 +02:00
    }
  }
  +asLink: true
}
vote App\Twig\Components\VoteComponent 12.0 MiB 0.38 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#6289
  +subject: App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
  +formDest: "entry_comment"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 12.0 MiB 0.64 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#6346
  +formDest: "entry_comment"
  +subject: App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
entry_comments_nested App\Twig\Components\EntryCommentsNestedComponent 12.0 MiB 0.43 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
  "level" => 1
  "showNested" => true
  "view" => "tree"
]
Attributes
[
  "showNested" => true
]
Component
App\Twig\Components\EntryCommentsNestedComponent {#6586
  +comment: App\Entity\EntryComment {#4333
    +user: App\Entity\User {#4346
      +avatar: null
      +cover: null
      +email: "solrize@lemmy.world"
      +username: "@solrize@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: null
      +lastActive: DateTime @1728759824 {#4330
        date: 2024-10-12 21:03:44.0 +02: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 {#4347 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4349 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4351 …}
      +entries: Doctrine\ORM\PersistentCollection {#4353 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4355 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4357 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4359 …}
      +posts: Doctrine\ORM\PersistentCollection {#4361 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4363 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4365 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4367 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4369 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4371 …}
      +follows: Doctrine\ORM\PersistentCollection {#4373 …}
      +followers: Doctrine\ORM\PersistentCollection {#4375 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4377 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4379 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4381 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4383 …}
      +reports: Doctrine\ORM\PersistentCollection {#4385 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4387 …}
      +violations: Doctrine\ORM\PersistentCollection {#4389 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4391 …}
      +awards: Doctrine\ORM\PersistentCollection {#4393 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4395 …}
      +categories: Doctrine\ORM\PersistentCollection {#4397 …}
      -id: 9413
      -password: "$2y$13$rsUjNYg/SM4QgvmnAxmGMOfDtPuN2zoCbLRKjo0c.Cbm3GG2V8lz6"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4399 …}
      +apId: "solrize@lemmy.world"
      +apProfileId: "https://lemmy.world/u/solrize"
      +apPublicUrl: "https://lemmy.world/u/solrize"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "solrize"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1728964416 {#4331
        date: 2024-10-15 05:53:36.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1687540016 {#4332
        date: 2023-06-23 19:06:56.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Some indication of how this is different from a VPN or remote file system would be helpful."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1727920619 {#4328
      date: 2024-10-03 03:56:59.0 +02:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4334 …}
    +nested: Doctrine\ORM\PersistentCollection {#4336 …}
    +votes: Doctrine\ORM\PersistentCollection {#4338 …}
    +reports: Doctrine\ORM\PersistentCollection {#4340 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4342 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4344 …}
    -id: 333569
    -bodyTs: "'differ':7 'file':13 'help':17 'indic':2 'remot':12 'system':14 'vpn':10 'would':15"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934992"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992824 {#4329
      date: 2024-01-23 07:53:44.0 +01:00
    }
  }
  +nestedComments: [
    333762 => App\Entity\EntryComment {#4629
      +user: App\Entity\User {#4346}
      +entry: App\Entity\Entry {#2400}
      +magazine: App\Entity\Magazine {#265}
      +image: null
      +parent: App\Entity\EntryComment {#4565
        +user: Proxies\__CG__\App\Entity\User {#1978 …2}
        +entry: App\Entity\Entry {#2400}
        +magazine: App\Entity\Magazine {#265}
        +image: null
        +parent: App\Entity\EntryComment {#4333}
        +root: App\Entity\EntryComment {#4333}
        +body: """
          It’s not really related at all.\n
          \n
          It is basically a graphical wrapper around your CLI tools like `ssh`, `docker`, `kubectl`, and more that gives you the features you know from tools like graphical SFTP clients but supports much more types of connections and allows you to use your favourite terminal and editor for your remote connections.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 4
        +score: 0
        +lastActive: DateTime @1705995178 {#4566
          date: 2024-01-23 08:32:58.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@crschnick@sh.itjust.works"
          "@solrize@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4561 …}
        +nested: Doctrine\ORM\PersistentCollection {#4556 …}
        +votes: Doctrine\ORM\PersistentCollection {#4560 …}
        +reports: Doctrine\ORM\PersistentCollection {#4570 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4572 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4574 …}
        -id: 333621
        -bodyTs: "'allow':45 'around':14 'basic':10 'cli':16 'client':36 'connect':43,57 'docker':20 'editor':53 'favourit':50 'featur':28 'give':25 'graphic':12,34 'know':30 'kubectl':21 'like':18,33 'much':39 'realli':4 'relat':5 'remot':56 'sftp':35 'ssh':19 'support':38 'termin':51 'tool':17,32 'type':41 'use':48 'wrapper':13"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/7928248"
        +editedAt: null
        +createdAt: DateTimeImmutable @1705995178 {#4569
          date: 2024-01-23 08:32:58.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4333}
      +body: "Ah thanks. I’m a fogey and am used to doing that stuff from the command line but that’s just me m. Good luck with the project!"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706001105 {#4628
        date: 2024-01-23 10:11:45.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@crschnick@sh.itjust.works"
        "@solrize@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4632 …}
      +nested: Doctrine\ORM\PersistentCollection {#4637 …}
      +votes: Doctrine\ORM\PersistentCollection {#4633 …}
      +reports: Doctrine\ORM\PersistentCollection {#4639 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4641 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4643 …}
      -id: 333762
      -bodyTs: "'ah':1 'command':16 'fogey':6 'good':24 'line':17 'luck':25 'm':4,23 'project':28 'stuff':13 'thank':2 'use':9"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/6937900"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706001105 {#4625
        date: 2024-01-23 10:11:45.0 +01:00
      }
    }
    333621 => App\Entity\EntryComment {#4565}
  ]
  +level: 1
  +view: "tree"
  -entryCommentRepository: App\Repository\EntryCommentRepository {#556 …}
  -twig: Twig\Environment {#1252 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
entry_comment App\Twig\Components\EntryCommentComponent 12.0 MiB 8.67 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
  "showNested" => true
  "dateAsUrl" => false
  "showMagazineName" => false
  "showEntryTitle" => false
]
Attributes
[]
Component
App\Twig\Components\EntryCommentComponent {#6654
  +comment: App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
  +showMagazineName: false
  +showEntryTitle: false
  +showNested: true
  +level: 1
  +canSeeTrash: false
  +dateAsUrl: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 0.22 ms
Input props
[
  "user" => App\Entity\User {#4419
    +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
    +cover: null
    +email: "Zuberi@lemmy.dbzer0.com"
    +username: "@Zuberi@lemmy.dbzer0.com"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      DRS GME and end the ponzi. Bleed the 1%\n
      \n
      [www.drsgme.org](https://www.drsgme.org/)\n
      \n
      wiki-user: Zuberi
      """
    +lastActive: DateTime @1728560839 {#4403
      date: 2024-10-10 13:47:19.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
    +entries: Doctrine\ORM\PersistentCollection {#4427 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
    +posts: Doctrine\ORM\PersistentCollection {#4435 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
    +follows: Doctrine\ORM\PersistentCollection {#4447 …}
    +followers: Doctrine\ORM\PersistentCollection {#4449 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
    +reports: Doctrine\ORM\PersistentCollection {#4459 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
    +violations: Doctrine\ORM\PersistentCollection {#4463 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
    +awards: Doctrine\ORM\PersistentCollection {#4467 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
    +categories: Doctrine\ORM\PersistentCollection {#4471 …}
    -id: 49698
    -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
    +apId: "Zuberi@lemmy.dbzer0.com"
    +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
    +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
    +apDomain: "lemmy.dbzer0.com"
    +apPreferredUsername: "Zuberi"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727091245 {#4404
      date: 2024-09-23 13:34:05.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696467024 {#4405
      date: 2023-10-05 02:50:24.0 +02:00
    }
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#6699
  +user: App\Entity\User {#4419
    +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
    +cover: null
    +email: "Zuberi@lemmy.dbzer0.com"
    +username: "@Zuberi@lemmy.dbzer0.com"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      DRS GME and end the ponzi. Bleed the 1%\n
      \n
      [www.drsgme.org](https://www.drsgme.org/)\n
      \n
      wiki-user: Zuberi
      """
    +lastActive: DateTime @1728560839 {#4403
      date: 2024-10-10 13:47:19.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
    +entries: Doctrine\ORM\PersistentCollection {#4427 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
    +posts: Doctrine\ORM\PersistentCollection {#4435 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
    +follows: Doctrine\ORM\PersistentCollection {#4447 …}
    +followers: Doctrine\ORM\PersistentCollection {#4449 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
    +reports: Doctrine\ORM\PersistentCollection {#4459 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
    +violations: Doctrine\ORM\PersistentCollection {#4463 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
    +awards: Doctrine\ORM\PersistentCollection {#4467 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
    +categories: Doctrine\ORM\PersistentCollection {#4471 …}
    -id: 49698
    -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
    +apId: "Zuberi@lemmy.dbzer0.com"
    +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
    +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
    +apDomain: "lemmy.dbzer0.com"
    +apPreferredUsername: "Zuberi"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727091245 {#4404
      date: 2024-09-23 13:34:05.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696467024 {#4405
      date: 2023-10-05 02:50:24.0 +02:00
    }
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 12.0 MiB 0.22 ms
Input props
[
  "date" => DateTimeImmutable @1706007527 {#4402
    date: 2024-01-23 11:58:47.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#6754
  +date: DateTimeImmutable @1706007527 {#4402
    date: 2024-01-23 11:58:47.0 +01:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 12.0 MiB 0.13 ms
Input props
[
  "createdAt" => DateTimeImmutable @1706007527 {#4402
    date: 2024-01-23 11:58:47.0 +01:00
  }
  "editedAt" => null
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#6808
  +createdAt: DateTimeImmutable @1706007527 {#4402
    date: 2024-01-23 11:58:47.0 +01:00
  }
  +editedAt: null
}
user_avatar App\Twig\Components\UserAvatarComponent 12.0 MiB 0.45 ms
Input props
[
  "user" => App\Entity\User {#4419
    +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
    +cover: null
    +email: "Zuberi@lemmy.dbzer0.com"
    +username: "@Zuberi@lemmy.dbzer0.com"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      DRS GME and end the ponzi. Bleed the 1%\n
      \n
      [www.drsgme.org](https://www.drsgme.org/)\n
      \n
      wiki-user: Zuberi
      """
    +lastActive: DateTime @1728560839 {#4403
      date: 2024-10-10 13:47:19.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
    +entries: Doctrine\ORM\PersistentCollection {#4427 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
    +posts: Doctrine\ORM\PersistentCollection {#4435 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
    +follows: Doctrine\ORM\PersistentCollection {#4447 …}
    +followers: Doctrine\ORM\PersistentCollection {#4449 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
    +reports: Doctrine\ORM\PersistentCollection {#4459 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
    +violations: Doctrine\ORM\PersistentCollection {#4463 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
    +awards: Doctrine\ORM\PersistentCollection {#4467 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
    +categories: Doctrine\ORM\PersistentCollection {#4471 …}
    -id: 49698
    -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
    +apId: "Zuberi@lemmy.dbzer0.com"
    +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
    +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
    +apDomain: "lemmy.dbzer0.com"
    +apPreferredUsername: "Zuberi"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727091245 {#4404
      date: 2024-09-23 13:34:05.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696467024 {#4405
      date: 2023-10-05 02:50:24.0 +02:00
    }
  }
  "width" => 40
  "height" => 40
  "asLink" => true
]
Attributes
[]
Component
App\Twig\Components\UserAvatarComponent {#6862
  +width: 40
  +height: 40
  +user: App\Entity\User {#4419
    +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
    +cover: null
    +email: "Zuberi@lemmy.dbzer0.com"
    +username: "@Zuberi@lemmy.dbzer0.com"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: """
      DRS GME and end the ponzi. Bleed the 1%\n
      \n
      [www.drsgme.org](https://www.drsgme.org/)\n
      \n
      wiki-user: Zuberi
      """
    +lastActive: DateTime @1728560839 {#4403
      date: 2024-10-10 13:47:19.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
    +entries: Doctrine\ORM\PersistentCollection {#4427 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
    +posts: Doctrine\ORM\PersistentCollection {#4435 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
    +follows: Doctrine\ORM\PersistentCollection {#4447 …}
    +followers: Doctrine\ORM\PersistentCollection {#4449 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
    +reports: Doctrine\ORM\PersistentCollection {#4459 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
    +violations: Doctrine\ORM\PersistentCollection {#4463 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
    +awards: Doctrine\ORM\PersistentCollection {#4467 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
    +categories: Doctrine\ORM\PersistentCollection {#4471 …}
    -id: 49698
    -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
    +apId: "Zuberi@lemmy.dbzer0.com"
    +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
    +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
    +apDomain: "lemmy.dbzer0.com"
    +apPreferredUsername: "Zuberi"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727091245 {#4404
      date: 2024-09-23 13:34:05.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696467024 {#4405
      date: 2023-10-05 02:50:24.0 +02:00
    }
  }
  +asLink: true
}
vote App\Twig\Components\VoteComponent 12.0 MiB 0.43 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#6937
  +subject: App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
  +formDest: "entry_comment"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 12.0 MiB 0.94 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#6994
  +formDest: "entry_comment"
  +subject: App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
entry_comments_nested App\Twig\Components\EntryCommentsNestedComponent 12.0 MiB 0.29 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
  "level" => 1
  "showNested" => true
  "view" => "tree"
]
Attributes
[
  "showNested" => true
]
Component
App\Twig\Components\EntryCommentsNestedComponent {#7234
  +comment: App\Entity\EntryComment {#4406
    +user: App\Entity\User {#4419
      +avatar: Proxies\__CG__\App\Entity\Image {#4420 …}
      +cover: null
      +email: "Zuberi@lemmy.dbzer0.com"
      +username: "@Zuberi@lemmy.dbzer0.com"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: """
        DRS GME and end the ponzi. Bleed the 1%\n
        \n
        [www.drsgme.org](https://www.drsgme.org/)\n
        \n
        wiki-user: Zuberi
        """
      +lastActive: DateTime @1728560839 {#4403
        date: 2024-10-10 13:47:19.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4421 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4423 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4425 …}
      +entries: Doctrine\ORM\PersistentCollection {#4427 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4429 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4431 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4433 …}
      +posts: Doctrine\ORM\PersistentCollection {#4435 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4437 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4439 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4441 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4443 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4445 …}
      +follows: Doctrine\ORM\PersistentCollection {#4447 …}
      +followers: Doctrine\ORM\PersistentCollection {#4449 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4451 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4453 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4455 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4457 …}
      +reports: Doctrine\ORM\PersistentCollection {#4459 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4461 …}
      +violations: Doctrine\ORM\PersistentCollection {#4463 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4465 …}
      +awards: Doctrine\ORM\PersistentCollection {#4467 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4469 …}
      +categories: Doctrine\ORM\PersistentCollection {#4471 …}
      -id: 49698
      -password: "$2y$13$wP9xnxh79oDBR8B0Fco//exwMAHTrsclrhyEFP213zdupwMBnvubC"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4473 …}
      +apId: "Zuberi@lemmy.dbzer0.com"
      +apProfileId: "https://lemmy.dbzer0.com/u/Zuberi"
      +apPublicUrl: "https://lemmy.dbzer0.com/u/Zuberi"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.dbzer0.com/inbox"
      +apDomain: "lemmy.dbzer0.com"
      +apPreferredUsername: "Zuberi"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1727091245 {#4404
        date: 2024-09-23 13:34:05.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1696467024 {#4405
        date: 2023-10-05 02:50:24.0 +02:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "***Yo***"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 0
    +score: 0
    +lastActive: DateTime @1706007527 {#4401
      date: 2024-01-23 11:58:47.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4407 …}
    +nested: Doctrine\ORM\PersistentCollection {#4409 …}
    +votes: Doctrine\ORM\PersistentCollection {#4411 …}
    +reports: Doctrine\ORM\PersistentCollection {#4413 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4415 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4417 …}
    -id: 333878
    -bodyTs: "'yo':1"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.dbzer0.com/comment/7036752"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706007527 {#4402
      date: 2024-01-23 11:58:47.0 +01:00
    }
  }
  +nestedComments: []
  +level: 1
  +view: "tree"
  -entryCommentRepository: App\Repository\EntryCommentRepository {#556 …}
  -twig: Twig\Environment {#1252 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
entry_comment App\Twig\Components\EntryCommentComponent 12.0 MiB 19.07 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
  "showNested" => true
  "dateAsUrl" => false
  "showMagazineName" => false
  "showEntryTitle" => false
]
Attributes
[]
Component
App\Twig\Components\EntryCommentComponent {#7302
  +comment: App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
  +showMagazineName: false
  +showEntryTitle: false
  +showNested: true
  +level: 1
  +canSeeTrash: false
  +dateAsUrl: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -authorizationChecker: Symfony\Component\Security\Core\Authorization\AuthorizationChecker {#931 …}
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 0.19 ms
Input props
[
  "user" => App\Entity\User {#4493
    +avatar: null
    +cover: null
    +email: "MorganCS@lemmy.world"
    +username: "@MorganCS@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: "I’m an Experience"
    +lastActive: DateTime @1727883775 {#4477
      date: 2024-10-02 17:42:55.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
    +entries: Doctrine\ORM\PersistentCollection {#4500 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
    +posts: Doctrine\ORM\PersistentCollection {#4508 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
    +follows: Doctrine\ORM\PersistentCollection {#4520 …}
    +followers: Doctrine\ORM\PersistentCollection {#4522 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
    +reports: Doctrine\ORM\PersistentCollection {#4532 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
    +violations: Doctrine\ORM\PersistentCollection {#4536 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
    +awards: Doctrine\ORM\PersistentCollection {#4540 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
    +categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -id: 76542
    -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
    +apId: "MorganCS@lemmy.world"
    +apProfileId: "https://lemmy.world/u/MorganCS"
    +apPublicUrl: "https://lemmy.world/u/MorganCS"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "MorganCS"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1701005692 {#4478
      date: 2023-11-26 14:34:52.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700275251 {#4479
      date: 2023-11-18 03:40:51.0 +01:00
    }
  }
  "showAvatar" => false
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#7347
  +user: App\Entity\User {#4493
    +avatar: null
    +cover: null
    +email: "MorganCS@lemmy.world"
    +username: "@MorganCS@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: "I’m an Experience"
    +lastActive: DateTime @1727883775 {#4477
      date: 2024-10-02 17:42:55.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
    +entries: Doctrine\ORM\PersistentCollection {#4500 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
    +posts: Doctrine\ORM\PersistentCollection {#4508 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
    +follows: Doctrine\ORM\PersistentCollection {#4520 …}
    +followers: Doctrine\ORM\PersistentCollection {#4522 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
    +reports: Doctrine\ORM\PersistentCollection {#4532 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
    +violations: Doctrine\ORM\PersistentCollection {#4536 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
    +awards: Doctrine\ORM\PersistentCollection {#4540 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
    +categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -id: 76542
    -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
    +apId: "MorganCS@lemmy.world"
    +apProfileId: "https://lemmy.world/u/MorganCS"
    +apPublicUrl: "https://lemmy.world/u/MorganCS"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "MorganCS"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1701005692 {#4478
      date: 2023-11-26 14:34:52.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700275251 {#4479
      date: 2023-11-18 03:40:51.0 +01:00
    }
  }
  +showAvatar: false
}
date App\Twig\Components\DateComponent 12.0 MiB 0.14 ms
Input props
[
  "date" => DateTimeImmutable @1705992111 {#4476
    date: 2024-01-23 07:41:51.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#7402
  +date: DateTimeImmutable @1705992111 {#4476
    date: 2024-01-23 07:41:51.0 +01:00
  }
}
date_edited App\Twig\Components\DateEditedComponent 12.0 MiB 0.12 ms
Input props
[
  "createdAt" => DateTimeImmutable @1705992111 {#4476
    date: 2024-01-23 07:41:51.0 +01:00
  }
  "editedAt" => null
]
Attributes
[]
Component
App\Twig\Components\DateEditedComponent {#7456
  +createdAt: DateTimeImmutable @1705992111 {#4476
    date: 2024-01-23 07:41:51.0 +01:00
  }
  +editedAt: null
}
user_avatar App\Twig\Components\UserAvatarComponent 12.0 MiB 0.17 ms
Input props
[
  "user" => App\Entity\User {#4493
    +avatar: null
    +cover: null
    +email: "MorganCS@lemmy.world"
    +username: "@MorganCS@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: "I’m an Experience"
    +lastActive: DateTime @1727883775 {#4477
      date: 2024-10-02 17:42:55.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
    +entries: Doctrine\ORM\PersistentCollection {#4500 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
    +posts: Doctrine\ORM\PersistentCollection {#4508 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
    +follows: Doctrine\ORM\PersistentCollection {#4520 …}
    +followers: Doctrine\ORM\PersistentCollection {#4522 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
    +reports: Doctrine\ORM\PersistentCollection {#4532 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
    +violations: Doctrine\ORM\PersistentCollection {#4536 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
    +awards: Doctrine\ORM\PersistentCollection {#4540 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
    +categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -id: 76542
    -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
    +apId: "MorganCS@lemmy.world"
    +apProfileId: "https://lemmy.world/u/MorganCS"
    +apPublicUrl: "https://lemmy.world/u/MorganCS"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "MorganCS"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1701005692 {#4478
      date: 2023-11-26 14:34:52.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700275251 {#4479
      date: 2023-11-18 03:40:51.0 +01:00
    }
  }
  "width" => 40
  "height" => 40
  "asLink" => true
]
Attributes
[]
Component
App\Twig\Components\UserAvatarComponent {#7510
  +width: 40
  +height: 40
  +user: App\Entity\User {#4493
    +avatar: null
    +cover: null
    +email: "MorganCS@lemmy.world"
    +username: "@MorganCS@lemmy.world"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: "I’m an Experience"
    +lastActive: DateTime @1727883775 {#4477
      date: 2024-10-02 17:42:55.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
    +entries: Doctrine\ORM\PersistentCollection {#4500 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
    +posts: Doctrine\ORM\PersistentCollection {#4508 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
    +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
    +follows: Doctrine\ORM\PersistentCollection {#4520 …}
    +followers: Doctrine\ORM\PersistentCollection {#4522 …}
    +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
    +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
    +reports: Doctrine\ORM\PersistentCollection {#4532 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
    +violations: Doctrine\ORM\PersistentCollection {#4536 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
    +awards: Doctrine\ORM\PersistentCollection {#4540 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
    +categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -id: 76542
    -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
    +apId: "MorganCS@lemmy.world"
    +apProfileId: "https://lemmy.world/u/MorganCS"
    +apPublicUrl: "https://lemmy.world/u/MorganCS"
    +apFollowersUrl: null
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "MorganCS"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1701005692 {#4478
      date: 2023-11-26 14:34:52.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700275251 {#4479
      date: 2023-11-18 03:40:51.0 +01:00
    }
  }
  +asLink: true
}
vote App\Twig\Components\VoteComponent 12.0 MiB 0.48 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\VoteComponent {#7579
  +subject: App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
  +formDest: "entry_comment"
  +showDownvote: true
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
boost App\Twig\Components\BoostComponent 12.0 MiB 0.79 ms
Input props
[
  "subject" => App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\BoostComponent {#3275
  +formDest: "entry_comment"
  +subject: App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
}
entry_comments_nested App\Twig\Components\EntryCommentsNestedComponent 12.0 MiB 0.37 ms
Input props
[
  "comment" => App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
  "level" => 1
  "showNested" => true
  "view" => "tree"
]
Attributes
[
  "showNested" => true
]
Component
App\Twig\Components\EntryCommentsNestedComponent {#3752
  +comment: App\Entity\EntryComment {#4480
    +user: App\Entity\User {#4493
      +avatar: null
      +cover: null
      +email: "MorganCS@lemmy.world"
      +username: "@MorganCS@lemmy.world"
      +roles: []
      +followersCount: 0
      +homepage: "front"
      +about: "I’m an Experience"
      +lastActive: DateTime @1727883775 {#4477
        date: 2024-10-02 17:42:55.0 +02: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: false
      +showProfileFollowings: true
      +markNewComments: false
      +notifyOnNewEntry: false
      +notifyOnNewEntryReply: true
      +notifyOnNewEntryCommentReply: true
      +notifyOnNewPost: false
      +notifyOnNewPostReply: true
      +notifyOnNewPostCommentReply: true
      +addMentionsEntries: false
      +addMentionsPosts: true
      +isBanned: false
      +isVerified: false
      +isDeleted: false
      +isBot: false
      +spamProtection: true
      +customCss: null
      +ignoreMagazinesCustomCss: false
      +moderatorTokens: Doctrine\ORM\PersistentCollection {#4494 …}
      +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#4496 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#4498 …}
      +entries: Doctrine\ORM\PersistentCollection {#4500 …}
      +entryVotes: Doctrine\ORM\PersistentCollection {#4502 …}
      +entryComments: Doctrine\ORM\PersistentCollection {#4504 …}
      +entryCommentVotes: Doctrine\ORM\PersistentCollection {#4506 …}
      +posts: Doctrine\ORM\PersistentCollection {#4508 …}
      +postVotes: Doctrine\ORM\PersistentCollection {#4510 …}
      +postComments: Doctrine\ORM\PersistentCollection {#4512 …}
      +postCommentVotes: Doctrine\ORM\PersistentCollection {#4514 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#4516 …}
      +subscribedDomains: Doctrine\ORM\PersistentCollection {#4518 …}
      +follows: Doctrine\ORM\PersistentCollection {#4520 …}
      +followers: Doctrine\ORM\PersistentCollection {#4522 …}
      +blocks: Doctrine\ORM\PersistentCollection {#4524 …}
      +blockers: Doctrine\ORM\PersistentCollection {#4526 …}
      +blockedMagazines: Doctrine\ORM\PersistentCollection {#4528 …}
      +blockedDomains: Doctrine\ORM\PersistentCollection {#4530 …}
      +reports: Doctrine\ORM\PersistentCollection {#4532 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4534 …}
      +violations: Doctrine\ORM\PersistentCollection {#4536 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4538 …}
      +awards: Doctrine\ORM\PersistentCollection {#4540 …}
      +subscribedCategories: Doctrine\ORM\PersistentCollection {#4542 …}
      +categories: Doctrine\ORM\PersistentCollection {#4544 …}
      -id: 76542
      -password: "$2y$13$tGOkm3WK1lHn5Z0Glvg39u3q3BuYVE/Fx5UYRf7yY1RIeJBBN8lye"
      -totpSecret: null
      -totpBackupCodes: []
      -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#4546 …}
      +apId: "MorganCS@lemmy.world"
      +apProfileId: "https://lemmy.world/u/MorganCS"
      +apPublicUrl: "https://lemmy.world/u/MorganCS"
      +apFollowersUrl: null
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "MorganCS"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: false
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1701005692 {#4478
        date: 2023-11-26 14:34:52.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700275251 {#4479
        date: 2023-11-18 03:40:51.0 +01:00
      }
    }
    +entry: App\Entity\Entry {#2400
      +user: Proxies\__CG__\App\Entity\User {#1978
        +avatar: null
        +cover: null
        +email: "crschnick@sh.itjust.works"
        +username: "@crschnick@sh.itjust.works"
        +roles: []
        +followersCount: 0
        +homepage: "front"
        +about: null
        +lastActive: DateTime @1728484533 {#1515
          date: 2024-10-09 16:35:33.0 +02: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: false
        +showProfileFollowings: true
        +markNewComments: false
        +notifyOnNewEntry: false
        +notifyOnNewEntryReply: true
        +notifyOnNewEntryCommentReply: true
        +notifyOnNewPost: false
        +notifyOnNewPostReply: true
        +notifyOnNewPostCommentReply: true
        +addMentionsEntries: false
        +addMentionsPosts: true
        +isBanned: false
        +isVerified: false
        +isDeleted: false
        +isBot: false
        +spamProtection: true
        +customCss: null
        +ignoreMagazinesCustomCss: false
        +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
        +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
        +entries: Doctrine\ORM\PersistentCollection {#1406 …}
        +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
        +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
        +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
        +posts: Doctrine\ORM\PersistentCollection {#1745 …}
        +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
        +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
        +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
        +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
        +follows: Doctrine\ORM\PersistentCollection {#1409 …}
        +followers: Doctrine\ORM\PersistentCollection {#1624 …}
        +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
        +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
        +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
        +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
        +reports: Doctrine\ORM\PersistentCollection {#1416 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
        +violations: Doctrine\ORM\PersistentCollection {#1694 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
        +awards: Doctrine\ORM\PersistentCollection {#1434 …}
        +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
        +categories: Doctrine\ORM\PersistentCollection {#1640 …}
        -id: 93143
        -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
        -totpSecret: null
        -totpBackupCodes: []
        -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
        +apId: "crschnick@sh.itjust.works"
        +apProfileId: "https://sh.itjust.works/u/crschnick"
        +apPublicUrl: "https://sh.itjust.works/u/crschnick"
        +apFollowersUrl: null
        +apInboxUrl: "https://sh.itjust.works/inbox"
        +apDomain: "sh.itjust.works"
        +apPreferredUsername: "crschnick"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: false
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1727870872 {#1516
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1727870872 {#1518
          date: 2024-10-02 14:07:52.0 +02:00
        }
        +__isInitialized__: true
         …2
      }
      +magazine: App\Entity\Magazine {#265
        +icon: Proxies\__CG__\App\Entity\Image {#246 …}
        +name: "selfhosted@lemmy.world"
        +title: "selfhosted"
        +description: """
          A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
          \n
          Rules:\n
          \n
          - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
          - No spam posting.\n
          - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
          - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
          - No trolling.\n
          \n
          Resources:\n
          \n
          - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
          - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
          - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
          \n
          &gt; Any issues on the community? Report it using the report flag.\n
          \n
          &gt; Questions? DM the mods!
          """
        +rules: null
        +subscriptionsCount: 1
        +entryCount: 222
        +entryCommentCount: 3916
        +postCount: 0
        +postCommentCount: 0
        +isAdult: false
        +customCss: null
        +lastActive: DateTime @1729582735 {#275
          date: 2024-10-22 09:38:55.0 +02:00
        }
        +markedForDeletionAt: null
        +tags: null
        +moderators: Doctrine\ORM\PersistentCollection {#237 …}
        +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
        +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
        +entries: Doctrine\ORM\PersistentCollection {#180 …}
        +posts: Doctrine\ORM\PersistentCollection {#138 …}
        +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
        +bans: Doctrine\ORM\PersistentCollection {#117 …}
        +reports: Doctrine\ORM\PersistentCollection {#103 …}
        +badges: Doctrine\ORM\PersistentCollection {#81 …}
        +logs: Doctrine\ORM\PersistentCollection {#71 …}
        +awards: Doctrine\ORM\PersistentCollection {#1346 …}
        +categories: Doctrine\ORM\PersistentCollection {#1823 …}
        -id: 120
        +apId: "selfhosted@lemmy.world"
        +apProfileId: "https://lemmy.world/c/selfhosted"
        +apPublicUrl: "https://lemmy.world/c/selfhosted"
        +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
        +apInboxUrl: "https://lemmy.world/inbox"
        +apDomain: "lemmy.world"
        +apPreferredUsername: "selfhosted"
        +apDiscoverable: true
        +apManuallyApprovesFollowers: null
        +privateKey: null
        +publicKey: null
        +apFetchedAt: DateTime @1703473826 {#269
          date: 2023-12-25 04:10:26.0 +01:00
        }
        +apDeletedAt: null
        +apTimeoutAt: null
        +visibility: "visible             "
        +createdAt: DateTimeImmutable @1703473826 {#271
          date: 2023-12-25 04:10:26.0 +01:00
        }
      }
      +image: null
      +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
      +slug: "XPipe-status-update-New-scripting-system-advanced-SSH-support-performance"
      +title: "XPipe status update: New scripting system, advanced SSH support, performance improvements, and many bug fixes"
      +url: "https://sh.itjust.works/pictrs/image/3c9e8b2c-a651-43cc-a4b9-333a6e6965e4.png"
      +body: """
        I’m proud to share a status update of [XPipe](https://github.com/xpipe-io/xpipe), a shell connection hub and remote file manager that allows you to access your entire server infrastructure from your local machine. It works on top of your installed command-line programs and does not require any setup on your remote systems. So if you normally use CLI tools like `ssh`, `docker`, `kubectl`, etc. to connect to your servers, you can just use XPipe on top of that.\n
        \n
        Since the [last status update](https://sh.itjust.works/post/3144020) some months ago, a lot of things have changed thanks to the community sharing a lot of feedback and reporting issues. Overall, the project is now in a much more stable state as all the accumulated issues have been fixed. Furthermore, many feature requests have been implemented.\n
        \n
        ### Large connection sets\n
        \n
        A lot of work went into improving the application for large use cases when you’re managing hundreds of connections. This includes hierarchical organization features to group all your connections into different categories and subcategories. Furthermore, there have been multiple processing and memory optimizations to ensure that the user experience stays smooth all the time. As a side effect, the memory footprint also has gone down. For people who have to use a potato as their workstation, there’s also now a performance mode setting to disable any visual effects that are not required.\n
        \n
        You can also now tag connections by color for organizational purposes to help in situations when many connections are opened in the file browser and terminals at the same time. These colors will be shown to identify tabs everywhere within XPipe and also outside of XPipe, for example in terminal titles using unicode color symbols.\n
        \n
        ![Connections](https://i.imgur.com/689dpYJ.png)\n
        \n
        A new scripting system\n
        ----------------------\n
        \n
        XPipe 1.7 comes with a new scripting system, so now you can take your shell environment everywhere. The idea is to create modular and reusable shell scripts in XPipe that you can then use for various different use cases.\n
        \n
        You can set certain scripts to be run on init for every connection independently of your profile files, allowing you to set up a consistent environment across all remote systems without any manual setup. In addition, you can choose to bring scripts to all your remote systems. This will make XPipe automatically copy and update these scripts to a target system if needed and put them in your PATH so that you’re able to call them from anywhere.\n
        \n
        As of now, there is one set of predefined scripts included for enabling the starship prompt in your shells, mainly as a proof of concept. What you will use the scripting system for is up to you. If you like, you can contribute scripts to be included by default.\n
        \n
        ![Scripts](https://i.imgur.com/ZV0THJS.png)\n
        \n
        ### Other news\n
        \n
        - You can now sync your connection configurations with your own remote git repository\n
        - You can create fully customized SSH connections by using the OpenSSH config format within XPipe\n
        - Additional actions for containers have been added, such as attaching to a container or printing the live logs of a container in a terminal session\n
        - A transparency slider has been added so that you can make all windows partially transparent just as you like\n
        - Support for many more terminals and text editors across all platforms has been added\n
        - Support for BSD systems and special login shells like pfSense and OPNsense has been added\n
        - There’s now support to open an SSH connection in your default installed SFTP client or Termius\n
        - The .deb and .rpm releases now correctly report all required dependencies. So you can install it on embedded systems or WSL2g without any hassle\n
        - There are now ARM releases for Linux\n
        - Support for VMware desktop hypervisors has been added\n
        - There have been many performance improvements to reduce the startup time, memory usage, file browser loading speed, and more\n
        - The homepage at [xpipe.io](https://xpipe.io/) got an upgrade\n
        - Of course, a lot of bugs have been fixed across the board\n
        \n
        Going full-time\n
        ---------------\n
        \n
        A few messages I received and the demand for XPipe so far convinced that there is a market for developing XPipe full-time and financing it by special commercial and enterprise plans for interested customers. It essentially encompasses support for enterprise systems and tools that you normally don’t find outside of enterprises.\n
        \n
        This will improve the development speed and quality as I can now fully focus on creating the best possible application. The scope is very small and only involves me, so no investors or other employees. This drastically lowers the break-even value compared to most other tools and allows me to implement a very lenient commercialization.\n
        \n
        Essentially, you can use most current features without any limitation for free. Furthermore, most upcoming features will also be included in the free version. The open-source model and license also won’t change. The only features that require a license are integrations for enterprise systems. For example, if you’re trying to connect to a licensed RHEL system or an OpenShift cluster, it will ask you to buy a license. Conversely, with a Rocky Linux system and a k3s cluster, you can use everything for free. These commercial-exclusive implementations will probably not be included in the repository though. Other than that, there are no restrictions.\n
        \n
        Outlook\n
        -------\n
        \n
        So if you gave this project a try a while ago or it sounds interesting to you, you can check it out [on GitHub](https://github.com/xpipe-io/xpipe)! There are still more features to come in the near future. I also appreciate any kind of feedback to guide me in the right development direction. There is also a [Discord](https://discord.gg/8y89vS8cRb) and [Slack workspace](https://join.slack.com/t/XPipe/shared_invite/zt-1awjq0t5j-5i4UjNJfNe1VN4b_auu6Cg) for any sort of talking.\n
        \n
        Enjoy!
        """
      +type: "image"
      +lang: "en"
      +isOc: false
      +hasEmbed: true
      +commentCount: 11
      +favouriteCount: 123
      +score: 0
      +isAdult: false
      +sticky: false
      +lastActive: DateTime @1728484533 {#2414
        date: 2024-10-09 16:35:33.0 +02:00
      }
      +ip: null
      +adaAmount: 0
      +tags: null
      +mentions: null
      +comments: Doctrine\ORM\PersistentCollection {#1688 …}
      +votes: Doctrine\ORM\PersistentCollection {#1966 …}
      +reports: Doctrine\ORM\PersistentCollection {#1965 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
      +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
      +badges: Doctrine\ORM\PersistentCollection {#2439 …}
      +children: []
      -id: 32535
      -titleTs: "'advanc':7 'bug':14 'fix':15 'improv':11 'mani':13 'new':4 'perform':10 'script':5 'ssh':8 'status':2 'support':9 'system':6 'updat':3 'xpipe':1"
      -bodyTs: "'/)':652 '/689dpyj.png)':292 '/8y89vs8crb)':953 '/post/3144020)':89 '/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':959 '/xpipe-io/xpipe)!':919 '/xpipe-io/xpipe),':13 '/zv0thjs.png)':467 '1.7':298 'abl':409 'access':26 'accumul':125 'across':362,550,665 'action':499 'ad':504,528,555,570,626 'addit':371,498 'ago':92,903 'allow':23,354,775 'also':202,219,236,276,800,814,932,948 'anywher':414 'applic':148,745 'appreci':933 'arm':615 'ask':849 'attach':507 'automat':387 'best':743 'board':667 'break':766 'break-even':765 'bring':376 'browser':257,641 'bsd':558 'bug':661 'buy':852 'call':411 'case':152,335 'categori':172 'certain':339 'chang':98,817 'check':912 'choos':374 'cli':61 'client':585 'cluster':846,864 'color':241,265,287 'come':299,926 'command':43 'command-lin':42 'commerci':701,782,873 'commercial-exclus':872 'communiti':102 'compar':769 'concept':439 'config':494 'configur':476 'connect':16,69,138,159,169,239,251,289,348,475,489,579,837 'consist':360 'contain':501,510,518 'contribut':457 'convers':855 'convinc':684 'copi':388 'correct':594 'cours':657 'creat':318,485,741 'current':788 'custom':487,707 'deb':589 'default':463,582 'demand':679 'depend':598 'desktop':622 'develop':691,730,944 'differ':171,333 'direct':945 'disabl':226 'discord':950 'discord.gg':952 'discord.gg/8y89vs8crb)':951 'docker':65 'drastic':762 'editor':549 'effect':198,229 'embed':605 'employe':760 'enabl':427 'encompass':710 'enjoy':965 'ensur':185 'enterpris':703,713,725,828 'entir':28 'environ':312,361 'essenti':709,783 'etc':67 'even':767 'everi':347 'everyth':868 'everywher':272,313 'exampl':281,831 'exclus':874 'experi':189 'far':683 'featur':132,164,789,798,820,924 'feedback':107,937 'file':20,256,353,640 'financ':697 'find':722 'fix':129,664 'focus':739 'footprint':201 'format':495 'free':794,805,870 'full':670,694 'full-tim':669,693 'fulli':486,738 'furthermor':130,175,795 'futur':930 'gave':896 'git':481 'github':916 'github.com':12,918 'github.com/xpipe-io/xpipe)!':917 'github.com/xpipe-io/xpipe),':11 'go':668 'gone':204 'got':653 'group':166 'guid':939 'hassl':611 'help':246 'hierarch':162 'homepag':647 'hub':17 'hundr':157 'hypervisor':623 'i.imgur.com':291,466 'i.imgur.com/689dpyj.png)':290 'i.imgur.com/zv0thjs.png)':465 'idea':315 'identifi':270 'implement':136,778,875 'improv':146,632,728 'includ':161,425,461,802,880 'independ':349 'infrastructur':30 'init':345 'instal':41,583,602 'integr':826 'interest':706,907 'investor':757 'involv':753 'issu':110,126 'join.slack.com':958 'join.slack.com/t/xpipe/shared_invite/zt-1awjq0t5j-5i4ujnjfne1vn4b_auu6cg)':957 'k3s':863 'kind':935 'kubectl':66 'larg':137,150 'last':84 'lenient':781 'licens':813,824,840,854 'like':63,454,541,564 'limit':792 'line':44 'linux':618,859 'live':514 'load':642 'local':33 'log':515 'login':562 'lot':94,105,141,659 'lower':763 'm':2 'machin':34 'main':434 'make':385,533 'manag':21,156 'mani':131,250,544,630 'manual':368 'market':689 'memori':182,200,638 'messag':674 'mode':223 'model':811 'modular':319 'month':91 'much':118 'multipl':179 'near':929 'need':398 'new':294,302 'news':469 'normal':59,719 'one':420 'open':253,576,809 'open-sourc':808 'openshift':845 'openssh':493 'opnsens':567 'optim':183 'organ':163 'organiz':243 'outlook':892 'outsid':277,723 'overal':111 'partial':536 'path':404 'peopl':207 'perform':222,631 'pfsens':565 'plan':704 'platform':552 'possibl':744 'potato':213 'predefin':423 'print':512 'probabl':877 'process':180 'profil':352 'program':45 'project':113,898 'prompt':430 'proof':437 'proud':3 'purpos':244 'put':400 'qualiti':733 're':155,408,834 'receiv':676 'reduc':634 'releas':592,616 'remot':19,54,364,381,480 'report':109,595 'repositori':482,883 'request':133 'requir':49,233,597,822 'restrict':891 'reusabl':321 'rhel':841 'right':943 'rocki':858 'rpm':591 'run':343 'scope':747 'script':295,303,323,340,377,392,424,445,458,464 'server':29,72 'session':522 'set':139,224,338,357,421 'setup':51,369 'sftp':584 'sh.itjust.works':88 'sh.itjust.works/post/3144020)':87 'share':5,103 'shell':15,311,322,433,563 'shown':268 'side':197 'sinc':82 'situat':248 'slack':955 'slider':525 'small':750 'smooth':191 'sort':962 'sound':906 'sourc':810 'special':561,700 'speed':643,731 'ssh':64,488,578 'stabl':120 'starship':429 'startup':636 'state':121 'status':7,85 'stay':190 'still':922 'subcategori':174 'support':542,556,574,619,711 'symbol':288 'sync':473 'system':55,296,304,365,382,396,446,559,606,714,829,842,860 'tab':271 'tag':238 'take':309 'talk':964 'target':395 'termin':259,283,521,546 'termius':587 'text':548 'thank':99 'thing':96 'though':884 'time':194,263,637,671,695 'titl':284 'tool':62,716,773 'top':38,79 'transpar':524,537 'tri':835,900 'unicod':286 'upcom':797 'updat':8,86,390 'upgrad':655 'usag':639 'use':60,76,151,211,285,330,334,443,491,786,867 'user':188 'valu':768 'various':332 'version':806 'visual':228 'vmware':621 'went':144 'window':535 'within':273,496 'without':366,609,790 'won':815 'work':36,143 'workspac':956 'workstat':216 'wsl2g':608 'xpipe':10,77,274,279,297,325,386,497,681,692 'xpipe.io':649,651 'xpipe.io/)':650"
      +cross: false
      +upVotes: 0
      +downVotes: 0
      +ranking: 1706075537
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/post/13315382"
      +editedAt: DateTimeImmutable @1727893691 {#1793
        date: 2024-10-02 20:28:11.0 +02:00
      }
      +createdAt: DateTimeImmutable @1705989137 {#2402
        date: 2024-01-23 06:52:17.0 +01:00
      }
    }
    +magazine: App\Entity\Magazine {#265}
    +image: null
    +parent: null
    +root: null
    +body: "Great software! And it keeps improving."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 2
    +score: 0
    +lastActive: DateTime @1705992111 {#4475
      date: 2024-01-23 07:41:51.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@crschnick@sh.itjust.works"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4481 …}
    +nested: Doctrine\ORM\PersistentCollection {#4483 …}
    +votes: Doctrine\ORM\PersistentCollection {#4485 …}
    +reports: Doctrine\ORM\PersistentCollection {#4487 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4489 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4491 …}
    -id: 333548
    -bodyTs: "'great':1 'improv':6 'keep':5 'softwar':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/6934732"
    +editedAt: null
    +createdAt: DateTimeImmutable @1705992111 {#4476
      date: 2024-01-23 07:41:51.0 +01:00
    }
  }
  +nestedComments: []
  +level: 1
  +view: "tree"
  -entryCommentRepository: App\Repository\EntryCommentRepository {#556 …}
  -twig: Twig\Environment {#1252 …}
  -security: Symfony\Bundle\SecurityBundle\Security {#1101 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
settings_row_enum App\Twig\Components\SettingsRowEnumComponent 12.0 MiB 0.25 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 {#7622
  +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 12.0 MiB 0.23 ms
Input props
[
  "label" => "Dynamic lists"
  "settingsKey" => "KBIN_GENERAL_DYNAMIC_LISTS"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#7694
  +label: "Dynamic lists"
  +help: ""
  +settingsKey: "KBIN_GENERAL_DYNAMIC_LISTS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.16 ms
Input props
[
  "label" => "Rounded edges"
  "settingsKey" => "KBIN_GENERAL_ROUNDED_EDGES"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#7757
  +label: "Rounded edges"
  +help: ""
  +settingsKey: "KBIN_GENERAL_ROUNDED_EDGES"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.15 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 {#7813
  +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 12.0 MiB 6.43 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 {#7872
  +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 12.0 MiB 0.20 ms
Input props
[
  "label" => "Show top bar"
  "settingsKey" => "KBIN_GENERAL_TOPBAR"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#7928
  +label: "Show top bar"
  +help: ""
  +settingsKey: "KBIN_GENERAL_TOPBAR"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.18 ms
Input props
[
  "label" => "Turbo mode (experimental)"
  "settingsKey" => "KBIN_GENERAL_TURBO"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#7984
  +label: "Turbo mode (experimental)"
  +help: ""
  +settingsKey: "KBIN_GENERAL_TURBO"
  +defaultValue: false
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 12.0 MiB 1.27 ms
Input props
[
  "label" => "Mark new comments"
  "settingsKey" => "KBIN_MARK_NEW_COMMENTS"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#8042
  +label: "Mark new comments"
  +help: ""
  +settingsKey: "KBIN_MARK_NEW_COMMENTS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.19 ms
Input props
[
  "label" => "Show "Support Us" block"
  "settingsKey" => "KBIN_GENERAL_SUPPORT_US_BLOCK"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8105
  +label: "Show "Support Us" block"
  +help: ""
  +settingsKey: "KBIN_GENERAL_SUPPORT_US_BLOCK"
  +defaultValue: true
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 12.0 MiB 0.22 ms
Input props
[
  "label" => "Show subscribed users"
  "settingsKey" => "KBIN_SUB_CHANNEL_USERS"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#8163
  +label: "Show subscribed users"
  +help: ""
  +settingsKey: "KBIN_SUB_CHANNEL_USERS"
  +defaultValue: false
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 12.0 MiB 0.18 ms
Input props
[
  "label" => "Show subscribed magazines"
  "settingsKey" => "KBIN_SUB_CHANNEL_MAGAZINES"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#8219
  +label: "Show subscribed magazines"
  +help: ""
  +settingsKey: "KBIN_SUB_CHANNEL_MAGAZINES"
  +defaultValue: false
  +reloadRequired: true
}
user_settings_row_switch App\Twig\Components\UserSettingsRowSwitchComponent 12.0 MiB 0.19 ms
Input props
[
  "label" => "Show subscribed domains"
  "settingsKey" => "KBIN_SUB_CHANNEL_DOMAINS"
]
Attributes
[]
Component
App\Twig\Components\UserSettingsRowSwitchComponent {#8275
  +label: "Show subscribed domains"
  +help: ""
  +settingsKey: "KBIN_SUB_CHANNEL_DOMAINS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.19 ms
Input props
[
  "label" => "Auto media preview"
  "help" => "Automatically expand media previews."
  "settingsKey" => "KBIN_ENTRIES_SHOW_PREVIEW"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8331
  +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 12.0 MiB 0.17 ms
Input props
[
  "label" => "Compact view"
  "settingsKey" => "KBIN_ENTRIES_COMPACT"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8387
  +label: "Compact view"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_COMPACT"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.18 ms
Input props
[
  "label" => "Show users’ avatars"
  "settingsKey" => "KBIN_ENTRIES_SHOW_USERS_AVATARS"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8443
  +label: "Show users’ avatars"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_SHOW_USERS_AVATARS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.78 ms
Input props
[
  "label" => "Show magazines’ icons"
  "settingsKey" => "KBIN_ENTRIES_SHOW_MAGAZINES_ICONS"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8499
  +label: "Show magazines’ icons"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_SHOW_MAGAZINES_ICONS"
  +defaultValue: false
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.23 ms
Input props
[
  "label" => "Show thumbnails"
  "settingsKey" => "KBIN_ENTRIES_SHOW_THUMBNAILS"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8555
  +label: "Show thumbnails"
  +help: ""
  +settingsKey: "KBIN_ENTRIES_SHOW_THUMBNAILS"
  +defaultValue: true
  +reloadRequired: true
}
settings_row_switch App\Twig\Components\SettingsRowSwitchComponent 12.0 MiB 0.15 ms
Input props
[
  "label" => "Auto media preview"
  "help" => "Automatically expand media previews."
  "settingsKey" => "KBIN_POSTS_SHOW_PREVIEW"
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8611
  +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 12.0 MiB 0.19 ms
Input props
[
  "label" => "Show users’ avatars"
  "settingsKey" => "KBIN_POSTS_SHOW_USERS_AVATARS"
  "defaultValue" => true
]
Attributes
[]
Component
App\Twig\Components\SettingsRowSwitchComponent {#8667
  +label: "Show users’ avatars"
  +help: ""
  +settingsKey: "KBIN_POSTS_SHOW_USERS_AVATARS"
  +defaultValue: true
  +reloadRequired: true
}
settings_row_enum App\Twig\Components\SettingsRowEnumComponent 12.0 MiB 0.43 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 {#8723
  +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 12.0 MiB 0.83 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 {#8781
  +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 12.0 MiB 1.08 ms
Input props
[
  "user" => Proxies\__CG__\App\Entity\User {#1978
    +avatar: null
    +cover: null
    +email: "crschnick@sh.itjust.works"
    +username: "@crschnick@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728484533 {#1515
      date: 2024-10-09 16:35:33.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
    +entries: Doctrine\ORM\PersistentCollection {#1406 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
    +posts: Doctrine\ORM\PersistentCollection {#1745 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
    +follows: Doctrine\ORM\PersistentCollection {#1409 …}
    +followers: Doctrine\ORM\PersistentCollection {#1624 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
    +reports: Doctrine\ORM\PersistentCollection {#1416 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
    +violations: Doctrine\ORM\PersistentCollection {#1694 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
    +awards: Doctrine\ORM\PersistentCollection {#1434 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
    +categories: Doctrine\ORM\PersistentCollection {#1640 …}
    -id: 93143
    -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
    +apId: "crschnick@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/crschnick"
    +apPublicUrl: "https://sh.itjust.works/u/crschnick"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "crschnick"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727870872 {#1516
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1727870872 {#1518
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
]
Attributes
[]
Component
App\Twig\Components\UserActionsComponent {#8858
  +user: Proxies\__CG__\App\Entity\User {#1978
    +avatar: null
    +cover: null
    +email: "crschnick@sh.itjust.works"
    +username: "@crschnick@sh.itjust.works"
    +roles: []
    +followersCount: 0
    +homepage: "front"
    +about: null
    +lastActive: DateTime @1728484533 {#1515
      date: 2024-10-09 16:35:33.0 +02: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: false
    +showProfileFollowings: true
    +markNewComments: false
    +notifyOnNewEntry: false
    +notifyOnNewEntryReply: true
    +notifyOnNewEntryCommentReply: true
    +notifyOnNewPost: false
    +notifyOnNewPostReply: true
    +notifyOnNewPostCommentReply: true
    +addMentionsEntries: false
    +addMentionsPosts: true
    +isBanned: false
    +isVerified: false
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#1519 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#1517 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#1623 …}
    +entries: Doctrine\ORM\PersistentCollection {#1406 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#1713 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#1710 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#1474 …}
    +posts: Doctrine\ORM\PersistentCollection {#1745 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#1485 …}
    +postComments: Doctrine\ORM\PersistentCollection {#1759 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#1637 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#1475 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#1636 …}
    +follows: Doctrine\ORM\PersistentCollection {#1409 …}
    +followers: Doctrine\ORM\PersistentCollection {#1624 …}
    +blocks: Doctrine\ORM\PersistentCollection {#1425 …}
    +blockers: Doctrine\ORM\PersistentCollection {#1441 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#1460 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#1439 …}
    +reports: Doctrine\ORM\PersistentCollection {#1416 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1430 …}
    +violations: Doctrine\ORM\PersistentCollection {#1694 …}
    +notifications: Doctrine\ORM\PersistentCollection {#1700 …}
    +awards: Doctrine\ORM\PersistentCollection {#1434 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#1610 …}
    +categories: Doctrine\ORM\PersistentCollection {#1640 …}
    -id: 93143
    -password: "$2y$13$zgWI5c0SIAaSi3m3LpDbdeFuroPx813A.b8mvinWF0q7Ew9mC6jhS"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#1669 …}
    +apId: "crschnick@sh.itjust.works"
    +apProfileId: "https://sh.itjust.works/u/crschnick"
    +apPublicUrl: "https://sh.itjust.works/u/crschnick"
    +apFollowersUrl: null
    +apInboxUrl: "https://sh.itjust.works/inbox"
    +apDomain: "sh.itjust.works"
    +apPreferredUsername: "crschnick"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: false
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727870872 {#1516
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1727870872 {#1518
      date: 2024-10-02 14:07:52.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
}
date App\Twig\Components\DateComponent 12.0 MiB 0.15 ms
Input props
[
  "date" => DateTimeImmutable @1705989137 {#2402
    date: 2024-01-23 06:52:17.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#8919
  +date: DateTimeImmutable @1705989137 {#2402
    date: 2024-01-23 06:52:17.0 +01:00
  }
}
magazine_box App\Twig\Components\MagazineBoxComponent 12.0 MiB 40.36 ms
Input props
[
  "magazine" => App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  "showSectionTitle" => true
]
Attributes
[]
Component
App\Twig\Components\MagazineBoxComponent {#8975
  +magazine: App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +showCover: true
  +showDescription: true
  +showRules: true
  +showSubscribeButton: true
  +showInfo: true
  +showMeta: true
  +showSectionTitle: true
  +stretchedLink: true
}
magazine_sub App\Twig\Components\MagazineSubComponent 12.0 MiB 0.56 ms
Input props
[
  "magazine" => App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\MagazineSubComponent {#9033
  +magazine: App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
}
date App\Twig\Components\DateComponent 12.0 MiB 0.30 ms
Input props
[
  "date" => DateTimeImmutable @1703473826 {#271
    date: 2023-12-25 04:10:26.0 +01:00
  }
]
Attributes
[]
Component
App\Twig\Components\DateComponent {#9193
  +date: DateTimeImmutable @1703473826 {#271
    date: 2023-12-25 04:10:26.0 +01:00
  }
}
user_inline App\Twig\Components\UserInlineComponent 12.0 MiB 3.77 ms
Input props
[
  "user" => Proxies\__CG__\App\Entity\User {#9252
    +avatar: null
    +cover: null
    +email: "kbin@j0h.nl"
    +username: "Sprite_tm"
    +roles: [
      "ROLE_ADMIN"
    ]
    +followersCount: 0
    +homepage: "front"
    +about: "Hi! I'm Sprite_tm. You may know me from sites like https://spritesmods.com."
    +lastActive: DateTime @1707547382 {#9299
      date: 2024-02-10 07:43:02.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: true
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#9301 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#9303 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#9305 …}
    +entries: Doctrine\ORM\PersistentCollection {#9307 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#9309 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#9311 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#9313 …}
    +posts: Doctrine\ORM\PersistentCollection {#9315 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#9317 …}
    +postComments: Doctrine\ORM\PersistentCollection {#9319 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#9321 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#9323 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#9325 …}
    +follows: Doctrine\ORM\PersistentCollection {#9327 …}
    +followers: Doctrine\ORM\PersistentCollection {#9329 …}
    +blocks: Doctrine\ORM\PersistentCollection {#9331 …}
    +blockers: Doctrine\ORM\PersistentCollection {#9333 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#9335 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#9337 …}
    +reports: Doctrine\ORM\PersistentCollection {#9339 …}
    +favourites: Doctrine\ORM\PersistentCollection {#9341 …}
    +violations: Doctrine\ORM\PersistentCollection {#9343 …}
    +notifications: Doctrine\ORM\PersistentCollection {#9345 …}
    +awards: Doctrine\ORM\PersistentCollection {#9347 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#9349 …}
    +categories: Doctrine\ORM\PersistentCollection {#9351 …}
    -id: 1
    -password: "$2y$13$ZX7Aou2QOPRGkHPp4y5x8OWfxZMoT1BGH7bRLlPP7mwZFTkfiaPGG"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#9353 …}
    +apId: null
    +apProfileId: null
    +apPublicUrl: null
    +apFollowersUrl: null
    +apInboxUrl: null
    +apDomain: null
    +apPreferredUsername: null
    +apDiscoverable: null
    +apManuallyApprovesFollowers: null
    +privateKey: """
      -----BEGIN PRIVATE KEY-----\r\n
      MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQDleeotz5TBiMlC\r\n
      YsJYJHVNxjvnvt0qsQA282B7vdqBTbARfD49iKPiMIwgU2yhCI0oTSQwc2Zy9AQ+\r\n
      31rwmvBx8VvcLgQvKpNzPVhMQjelK7k5iPiPc/W1soaauepq3YwQKgGod4c5Vh9f\r\n
      MInSANfOLOUSo3pUzfaQaGEvQc5DbKjDgIjsv/OKI1acbzu067KQzIThu+1BvcqQ\r\n
      Ypo2Ux5W23nNqkrRZ++z/r1MI2jS3vwi5OSwz4fWhLPJXE6lwokc6b/uAZe7sLT6\r\n
      QQtjevLnmMyRIVnmxbtHPMSfhLdz8ssQhoNCfAkMnBjDUX31SSs67pU8v5O3Fn2H\r\n
      d+qFWCjrREwSpBAd24INJqKsjSa6j3oLL8Xw8HZf+x6QRPJch/c3FNWRtM2b9n8V\r\n
      sAQiD985pafyeQ1TqIe4iSjI0iUgy2WgwO0C1Z0PNbQzQmRk0EOAlxIXjPmB229P\r\n
      V4+OcZxLT9phP/rid1Qt9Ro+2LdkS9Zqe8c2JHeJKc5Nv/8OOX5uQ/B82JXnuXYi\r\n
      /oVEJb5t42G8u3IIkYM5G/Gt033WU6dbyKOBmdnbXaPw9LC3M7oop3yyCb3UDLfg\r\n
      g/XnZVvZxSPCPlh5G1Lb0r47siKq/0k9YRua0AFsVg0dhqfuwsb6G9Hx5EicuPsu\r\n
      OIjXINBTjlnE4SdMz0ZJt7bLjwlKdQIDAQABAoICAAlWo8QHfYs+sMoF0Njbavam\r\n
      SYvNxZxWJacW0mdWu4ylh7O+dZ31cI3k4d7y5inLeksYkI90MsgczAtu9XlzJLPO\r\n
      WamlKcBtoCCBb5Vy4GbVV61SuKLF2krxn+6uAC8nIusJepXLf3JC4fXyuLkWFbIr\r\n
      O4s9od3Pn+gSh1nv+J/fzSJfmbLgwN1vQLgPAsQDD3o7CHFTP318ZsDnclUhnst0\r\n
      FQnckzzgWO3fQP7XNg3WyzX0UKYtW97L+bEJE55FQ2Us0gWyhOU7dLH2casztqzc\r\n
      F/8T91+fzlZAz9OaCAks6Tyb7L2I5KlhtNRF/bU8rAiy6tnVBgLeZG9d3upcQxX0\r\n
      L+SMPWg55qERGI5mO+BxFdUnVtcmswziKmySYtzgm+c4jmPS5cWhGB9HFCTW2S0x\r\n
      GoVA2cZGWjMTrbZQhgJjBqzp76fhLtXTufd328sYmX7fBYKEWFYNwrEJaWYUNl/V\r\n
      yEyl0aMQWKhVokx6eCqnuDZUc77LeuGuCleIdhQ53NYHrXMCmgVyLfmGdrOS3Uh6\r\n
      RrAYmnvvMkAUTOQajW2csC345PmgBOjE7vB7349ylKUkXvN4L+9xZCYaVjBt3O24\r\n
      aRoQSQDGhk+NIaYleiFx+u7dJSryxdx/6ut6dQ2S+jKlm1oN1qq6ppO5y/TFRQ1e\r\n
      qn7kjIGzUT80fANDFqdhAoIBAQD1+cGiWXRQhUrJc5X3ngH1zHoLWpmSZcUUDFn/\r\n
      bV/CChd2M43fOpneIQETZ1oS7BsU3y92kTw63ytYOUg7C5iT5/r9ZoBGq0HZSbll\r\n
      riRJWGiajr2aYCmIes++CrfUvCcD6+l8QMZ3s8eXdk80GX+vt1xEfRpWV9e9huJK\r\n
      K1e8wXfFmPAmxUi63IePscdc+SVQGeooMYDnMwLWvxpAtp5mGOaQc4D5dviWXjSE\r\n
      Z/PJa+gectpD1iDIPUXm3o17ivE2UYFia8/FCGUN6Yz7ucRKF+2SPO8hLefk5UvJ\r\n
      Lxlkh67MXKkneDqRU9C82Qmcfz5nQLQadC0nbE44YeXrnlIdAoIBAQDu1AWMIe6f\r\n
      7TZYCWnTa3nT6penJ9CMaGDPI/62dKTmGnI4oo3u9DGGrnuWbcFFCQA02vcYdpuw\r\n
      CVy6mkP/yqN5VSV3EHZiJUA0aKIxot3o3YOiobpVYn9hwvzzOdMZO4SOuevNfY1c\r\n
      qmnLGhYoDvR1c2yaudCf/BDwQqlLoSg9F5X57bRtwaRyUjhtXVKXWb59qtiwwrvp\r\n
      1vPjxciEIxAtgSXtIUQz3ljDRNUHjpyfYM3ska5jkxMIPNYUYFMX2x+Gxn9PZEG3\r\n
      Im391BRynZsnkvJO6i4i5N1xsPK5SyPiKBnlMxW/6ZLi5aAQHV3cc2KLzV+T+s2B\r\n
      v9LTAyO7nWo5AoIBAASA/jqqyKZwyl3F8AkIq6CEjfeHQSidFG65iyxSJF65MJTJ\r\n
      fN+Jgye+Evb3/X47NIO9UnEpV6D8VR7YbaonHDQZG09ogRDKMfp4jxx9g8yUAdZS\r\n
      psYc3KXTGdqw94y9pTk9KJlN1lR6xjzPvcOGdAATq2zVnZXXJewifCI/iOu73yWP\r\n
      F1aeZiaFwzWuW6goJ7a/wrnZrjKNjI/CEAj/TwcvjYk3lDT9KLAYKX4DKUOW5jko\r\n
      gTacxRzlglIn4Q9SC/iipWvX7YX+EVuf2yUA0cdJiOAUnYxN+uEGEc0tP5nHoju7\r\n
      tp0yZmAi2L+cecCT0+CwHpwdZHZEVWpS4JLf40ECggEBALFSZIgGDZlaU5YL7zHV\r\n
      Q5APRugKDLKjMPW7IPwxINnj2tioAL/hOQBpfkNTXEM4ipmz1fCo57FNUjcOINzD\r\n
      hJqqmHWNmIgIZmJDKeG2rhKenYTblXCeADwCvTKNxWmfoi0iZ6ybwqCBuqjcxoSZ\r\n
      jfHCcGl0+yw9yAnLRM1ta2XopCb70ZIIS2PCHjk9J/xN2ryNY/PhsgnN2ilMiTNq\r\n
      oTFYCWPF5lCojrj020KQJUPEaUBzbcpqwZ/FI6HfXvKAdCjqKk40/wHNI2Np2oC6\r\n
      +h7o4NWs0/J+gNhP6/edjZf19DwTsNtbvf6PRUeRtkXeudVY99T0Sy9B0HNxik9b\r\n
      cikCggEAM2wassiP1i0Gc3wrbNLHyQN+yqMaAp0xF+8l0fU3T8zPL/tYDcITnZPY\r\n
      pEFV/aodP9X7XFuQD0iGTOTGDXiMSLPOLI/ifmwbT41rgIN9x14MpU2EtWeVz7sx\r\n
      ZIFMt98rHx6BsZx/DnSFDQ8iqrKF3u+OOv7s6j+8odz4Rq53+16vMev5VUMOPq+E\r\n
      aQn8SDKkOjZzwb9QGB9bXS5s9yyj4pLyggQ0O5S2ugZjUcmCecNpktN8bUR3I9VQ\r\n
      KWkcQa9yCpidp/JYrQtlbqAPiIzptA4T4RNh+F6pKbmw7hNMIPipPzbQezEMaBOn\r\n
      Cgb38EldyAVGjCzRGfhu9SNU9B03bg==\r\n
      -----END PRIVATE KEY-----
      """
    +publicKey: """
      -----BEGIN PUBLIC KEY-----\r\n
      MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA5XnqLc+UwYjJQmLCWCR1\r\n
      TcY7577dKrEANvNge73agU2wEXw+PYij4jCMIFNsoQiNKE0kMHNmcvQEPt9a8Jrw\r\n
      cfFb3C4ELyqTcz1YTEI3pSu5OYj4j3P1tbKGmrnqat2MECoBqHeHOVYfXzCJ0gDX\r\n
      zizlEqN6VM32kGhhL0HOQ2yow4CI7L/ziiNWnG87tOuykMyE4bvtQb3KkGKaNlMe\r\n
      Vtt5zapK0Wfvs/69TCNo0t78IuTksM+H1oSzyVxOpcKJHOm/7gGXu7C0+kELY3ry\r\n
      55jMkSFZ5sW7RzzEn4S3c/LLEIaDQnwJDJwYw1F99UkrOu6VPL+TtxZ9h3fqhVgo\r\n
      60RMEqQQHduCDSairI0muo96Cy/F8PB2X/sekETyXIf3NxTVkbTNm/Z/FbAEIg/f\r\n
      OaWn8nkNU6iHuIkoyNIlIMtloMDtAtWdDzW0M0JkZNBDgJcSF4z5gdtvT1ePjnGc\r\n
      S0/aYT/64ndULfUaPti3ZEvWanvHNiR3iSnOTb//Djl+bkPwfNiV57l2Iv6FRCW+\r\n
      beNhvLtyCJGDORvxrdN91lOnW8ijgZnZ212j8PSwtzO6KKd8sgm91Ay34IP152Vb\r\n
      2cUjwj5YeRtS29K+O7Iiqv9JPWEbmtABbFYNHYan7sLG+hvR8eRInLj7LjiI1yDQ\r\n
      U45ZxOEnTM9GSbe2y48JSnUCAwEAAQ==\r\n
      -----END PUBLIC KEY-----
      """
    +apFetchedAt: null
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1686560440 {#9300
      date: 2023-06-12 11:00:40.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
]
Attributes
[]
Component
App\Twig\Components\UserInlineComponent {#9270
  +user: Proxies\__CG__\App\Entity\User {#9252
    +avatar: null
    +cover: null
    +email: "kbin@j0h.nl"
    +username: "Sprite_tm"
    +roles: [
      "ROLE_ADMIN"
    ]
    +followersCount: 0
    +homepage: "front"
    +about: "Hi! I'm Sprite_tm. You may know me from sites like https://spritesmods.com."
    +lastActive: DateTime @1707547382 {#9299
      date: 2024-02-10 07:43:02.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: true
    +isDeleted: false
    +isBot: false
    +spamProtection: true
    +customCss: null
    +ignoreMagazinesCustomCss: false
    +moderatorTokens: Doctrine\ORM\PersistentCollection {#9301 …}
    +magazineOwnershipRequests: Doctrine\ORM\PersistentCollection {#9303 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#9305 …}
    +entries: Doctrine\ORM\PersistentCollection {#9307 …}
    +entryVotes: Doctrine\ORM\PersistentCollection {#9309 …}
    +entryComments: Doctrine\ORM\PersistentCollection {#9311 …}
    +entryCommentVotes: Doctrine\ORM\PersistentCollection {#9313 …}
    +posts: Doctrine\ORM\PersistentCollection {#9315 …}
    +postVotes: Doctrine\ORM\PersistentCollection {#9317 …}
    +postComments: Doctrine\ORM\PersistentCollection {#9319 …}
    +postCommentVotes: Doctrine\ORM\PersistentCollection {#9321 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#9323 …}
    +subscribedDomains: Doctrine\ORM\PersistentCollection {#9325 …}
    +follows: Doctrine\ORM\PersistentCollection {#9327 …}
    +followers: Doctrine\ORM\PersistentCollection {#9329 …}
    +blocks: Doctrine\ORM\PersistentCollection {#9331 …}
    +blockers: Doctrine\ORM\PersistentCollection {#9333 …}
    +blockedMagazines: Doctrine\ORM\PersistentCollection {#9335 …}
    +blockedDomains: Doctrine\ORM\PersistentCollection {#9337 …}
    +reports: Doctrine\ORM\PersistentCollection {#9339 …}
    +favourites: Doctrine\ORM\PersistentCollection {#9341 …}
    +violations: Doctrine\ORM\PersistentCollection {#9343 …}
    +notifications: Doctrine\ORM\PersistentCollection {#9345 …}
    +awards: Doctrine\ORM\PersistentCollection {#9347 …}
    +subscribedCategories: Doctrine\ORM\PersistentCollection {#9349 …}
    +categories: Doctrine\ORM\PersistentCollection {#9351 …}
    -id: 1
    -password: "$2y$13$ZX7Aou2QOPRGkHPp4y5x8OWfxZMoT1BGH7bRLlPP7mwZFTkfiaPGG"
    -totpSecret: null
    -totpBackupCodes: []
    -oAuth2UserConsents: Doctrine\ORM\PersistentCollection {#9353 …}
    +apId: null
    +apProfileId: null
    +apPublicUrl: null
    +apFollowersUrl: null
    +apInboxUrl: null
    +apDomain: null
    +apPreferredUsername: null
    +apDiscoverable: null
    +apManuallyApprovesFollowers: null
    +privateKey: """
      -----BEGIN PRIVATE KEY-----\r\n
      MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQDleeotz5TBiMlC\r\n
      YsJYJHVNxjvnvt0qsQA282B7vdqBTbARfD49iKPiMIwgU2yhCI0oTSQwc2Zy9AQ+\r\n
      31rwmvBx8VvcLgQvKpNzPVhMQjelK7k5iPiPc/W1soaauepq3YwQKgGod4c5Vh9f\r\n
      MInSANfOLOUSo3pUzfaQaGEvQc5DbKjDgIjsv/OKI1acbzu067KQzIThu+1BvcqQ\r\n
      Ypo2Ux5W23nNqkrRZ++z/r1MI2jS3vwi5OSwz4fWhLPJXE6lwokc6b/uAZe7sLT6\r\n
      QQtjevLnmMyRIVnmxbtHPMSfhLdz8ssQhoNCfAkMnBjDUX31SSs67pU8v5O3Fn2H\r\n
      d+qFWCjrREwSpBAd24INJqKsjSa6j3oLL8Xw8HZf+x6QRPJch/c3FNWRtM2b9n8V\r\n
      sAQiD985pafyeQ1TqIe4iSjI0iUgy2WgwO0C1Z0PNbQzQmRk0EOAlxIXjPmB229P\r\n
      V4+OcZxLT9phP/rid1Qt9Ro+2LdkS9Zqe8c2JHeJKc5Nv/8OOX5uQ/B82JXnuXYi\r\n
      /oVEJb5t42G8u3IIkYM5G/Gt033WU6dbyKOBmdnbXaPw9LC3M7oop3yyCb3UDLfg\r\n
      g/XnZVvZxSPCPlh5G1Lb0r47siKq/0k9YRua0AFsVg0dhqfuwsb6G9Hx5EicuPsu\r\n
      OIjXINBTjlnE4SdMz0ZJt7bLjwlKdQIDAQABAoICAAlWo8QHfYs+sMoF0Njbavam\r\n
      SYvNxZxWJacW0mdWu4ylh7O+dZ31cI3k4d7y5inLeksYkI90MsgczAtu9XlzJLPO\r\n
      WamlKcBtoCCBb5Vy4GbVV61SuKLF2krxn+6uAC8nIusJepXLf3JC4fXyuLkWFbIr\r\n
      O4s9od3Pn+gSh1nv+J/fzSJfmbLgwN1vQLgPAsQDD3o7CHFTP318ZsDnclUhnst0\r\n
      FQnckzzgWO3fQP7XNg3WyzX0UKYtW97L+bEJE55FQ2Us0gWyhOU7dLH2casztqzc\r\n
      F/8T91+fzlZAz9OaCAks6Tyb7L2I5KlhtNRF/bU8rAiy6tnVBgLeZG9d3upcQxX0\r\n
      L+SMPWg55qERGI5mO+BxFdUnVtcmswziKmySYtzgm+c4jmPS5cWhGB9HFCTW2S0x\r\n
      GoVA2cZGWjMTrbZQhgJjBqzp76fhLtXTufd328sYmX7fBYKEWFYNwrEJaWYUNl/V\r\n
      yEyl0aMQWKhVokx6eCqnuDZUc77LeuGuCleIdhQ53NYHrXMCmgVyLfmGdrOS3Uh6\r\n
      RrAYmnvvMkAUTOQajW2csC345PmgBOjE7vB7349ylKUkXvN4L+9xZCYaVjBt3O24\r\n
      aRoQSQDGhk+NIaYleiFx+u7dJSryxdx/6ut6dQ2S+jKlm1oN1qq6ppO5y/TFRQ1e\r\n
      qn7kjIGzUT80fANDFqdhAoIBAQD1+cGiWXRQhUrJc5X3ngH1zHoLWpmSZcUUDFn/\r\n
      bV/CChd2M43fOpneIQETZ1oS7BsU3y92kTw63ytYOUg7C5iT5/r9ZoBGq0HZSbll\r\n
      riRJWGiajr2aYCmIes++CrfUvCcD6+l8QMZ3s8eXdk80GX+vt1xEfRpWV9e9huJK\r\n
      K1e8wXfFmPAmxUi63IePscdc+SVQGeooMYDnMwLWvxpAtp5mGOaQc4D5dviWXjSE\r\n
      Z/PJa+gectpD1iDIPUXm3o17ivE2UYFia8/FCGUN6Yz7ucRKF+2SPO8hLefk5UvJ\r\n
      Lxlkh67MXKkneDqRU9C82Qmcfz5nQLQadC0nbE44YeXrnlIdAoIBAQDu1AWMIe6f\r\n
      7TZYCWnTa3nT6penJ9CMaGDPI/62dKTmGnI4oo3u9DGGrnuWbcFFCQA02vcYdpuw\r\n
      CVy6mkP/yqN5VSV3EHZiJUA0aKIxot3o3YOiobpVYn9hwvzzOdMZO4SOuevNfY1c\r\n
      qmnLGhYoDvR1c2yaudCf/BDwQqlLoSg9F5X57bRtwaRyUjhtXVKXWb59qtiwwrvp\r\n
      1vPjxciEIxAtgSXtIUQz3ljDRNUHjpyfYM3ska5jkxMIPNYUYFMX2x+Gxn9PZEG3\r\n
      Im391BRynZsnkvJO6i4i5N1xsPK5SyPiKBnlMxW/6ZLi5aAQHV3cc2KLzV+T+s2B\r\n
      v9LTAyO7nWo5AoIBAASA/jqqyKZwyl3F8AkIq6CEjfeHQSidFG65iyxSJF65MJTJ\r\n
      fN+Jgye+Evb3/X47NIO9UnEpV6D8VR7YbaonHDQZG09ogRDKMfp4jxx9g8yUAdZS\r\n
      psYc3KXTGdqw94y9pTk9KJlN1lR6xjzPvcOGdAATq2zVnZXXJewifCI/iOu73yWP\r\n
      F1aeZiaFwzWuW6goJ7a/wrnZrjKNjI/CEAj/TwcvjYk3lDT9KLAYKX4DKUOW5jko\r\n
      gTacxRzlglIn4Q9SC/iipWvX7YX+EVuf2yUA0cdJiOAUnYxN+uEGEc0tP5nHoju7\r\n
      tp0yZmAi2L+cecCT0+CwHpwdZHZEVWpS4JLf40ECggEBALFSZIgGDZlaU5YL7zHV\r\n
      Q5APRugKDLKjMPW7IPwxINnj2tioAL/hOQBpfkNTXEM4ipmz1fCo57FNUjcOINzD\r\n
      hJqqmHWNmIgIZmJDKeG2rhKenYTblXCeADwCvTKNxWmfoi0iZ6ybwqCBuqjcxoSZ\r\n
      jfHCcGl0+yw9yAnLRM1ta2XopCb70ZIIS2PCHjk9J/xN2ryNY/PhsgnN2ilMiTNq\r\n
      oTFYCWPF5lCojrj020KQJUPEaUBzbcpqwZ/FI6HfXvKAdCjqKk40/wHNI2Np2oC6\r\n
      +h7o4NWs0/J+gNhP6/edjZf19DwTsNtbvf6PRUeRtkXeudVY99T0Sy9B0HNxik9b\r\n
      cikCggEAM2wassiP1i0Gc3wrbNLHyQN+yqMaAp0xF+8l0fU3T8zPL/tYDcITnZPY\r\n
      pEFV/aodP9X7XFuQD0iGTOTGDXiMSLPOLI/ifmwbT41rgIN9x14MpU2EtWeVz7sx\r\n
      ZIFMt98rHx6BsZx/DnSFDQ8iqrKF3u+OOv7s6j+8odz4Rq53+16vMev5VUMOPq+E\r\n
      aQn8SDKkOjZzwb9QGB9bXS5s9yyj4pLyggQ0O5S2ugZjUcmCecNpktN8bUR3I9VQ\r\n
      KWkcQa9yCpidp/JYrQtlbqAPiIzptA4T4RNh+F6pKbmw7hNMIPipPzbQezEMaBOn\r\n
      Cgb38EldyAVGjCzRGfhu9SNU9B03bg==\r\n
      -----END PRIVATE KEY-----
      """
    +publicKey: """
      -----BEGIN PUBLIC KEY-----\r\n
      MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA5XnqLc+UwYjJQmLCWCR1\r\n
      TcY7577dKrEANvNge73agU2wEXw+PYij4jCMIFNsoQiNKE0kMHNmcvQEPt9a8Jrw\r\n
      cfFb3C4ELyqTcz1YTEI3pSu5OYj4j3P1tbKGmrnqat2MECoBqHeHOVYfXzCJ0gDX\r\n
      zizlEqN6VM32kGhhL0HOQ2yow4CI7L/ziiNWnG87tOuykMyE4bvtQb3KkGKaNlMe\r\n
      Vtt5zapK0Wfvs/69TCNo0t78IuTksM+H1oSzyVxOpcKJHOm/7gGXu7C0+kELY3ry\r\n
      55jMkSFZ5sW7RzzEn4S3c/LLEIaDQnwJDJwYw1F99UkrOu6VPL+TtxZ9h3fqhVgo\r\n
      60RMEqQQHduCDSairI0muo96Cy/F8PB2X/sekETyXIf3NxTVkbTNm/Z/FbAEIg/f\r\n
      OaWn8nkNU6iHuIkoyNIlIMtloMDtAtWdDzW0M0JkZNBDgJcSF4z5gdtvT1ePjnGc\r\n
      S0/aYT/64ndULfUaPti3ZEvWanvHNiR3iSnOTb//Djl+bkPwfNiV57l2Iv6FRCW+\r\n
      beNhvLtyCJGDORvxrdN91lOnW8ijgZnZ212j8PSwtzO6KKd8sgm91Ay34IP152Vb\r\n
      2cUjwj5YeRtS29K+O7Iiqv9JPWEbmtABbFYNHYan7sLG+hvR8eRInLj7LjiI1yDQ\r\n
      U45ZxOEnTM9GSbe2y48JSnUCAwEAAQ==\r\n
      -----END PUBLIC KEY-----
      """
    +apFetchedAt: null
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1686560440 {#9300
      date: 2023-06-12 11:00:40.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
  +showAvatar: true
}
related_magazines App\Twig\Components\RelatedMagazinesComponent 12.0 MiB 2.47 ms
Input props
[
  "magazine" => "selfhosted@lemmy.world"
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedMagazinesComponent {#9461
  +limit: 4
  +tag: null
  +magazine: "selfhosted@lemmy.world"
  +type: "magazine"
  +title: "related_magazines"
  +refreshedRandom: false
  -repository: App\Repository\MagazineRepository {#333 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
active_users App\Twig\Components\ActiveUsersComponent 12.0 MiB 0.35 ms
Input props
[
  "magazine" => App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\ActiveUsersComponent {#9548
  +magazine: App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  -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 12.0 MiB 3.93 ms
Input props
[
  "magazine" => "selfhosted@lemmy.world"
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedCategoriesComponent {#9607
  +limit: 4
  +tag: null
  +magazine: "selfhosted@lemmy.world"
  +type: "related"
  +title: "related_categories"
  +refreshedRandom: false
  -repository: App\Repository\CategoryRepository {#9608 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
}
related_posts App\Twig\Components\RelatedPostsComponent 12.0 MiB 2.19 ms
Input props
[
  "magazine" => "selfhosted@lemmy.world"
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedPostsComponent {#9678
  +limit: 4
  +tag: null
  +magazine: "selfhosted@lemmy.world"
  +type: "magazine"
  +post: null
  +title: "related_posts"
  +refreshedRandom: false
  -repository: App\Repository\PostRepository {#9677 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -mentionManager: App\Service\MentionManager {#389 …}
}
related_entries App\Twig\Components\RelatedEntriesComponent 12.0 MiB 3.84 ms
Input props
[
  "magazine" => "selfhosted@lemmy.world"
  "tag" => null
]
Attributes
[]
Component
App\Twig\Components\RelatedEntriesComponent {#9747
  +limit: 4
  +tag: null
  +magazine: "selfhosted@lemmy.world"
  +type: "magazine"
  +entry: null
  +title: "related_entries"
  +refreshedRandom: false
  -repository: App\Repository\EntryRepository {#270 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter {#600 …}
  -twig: Twig\Environment {#1252 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#1328 …}
  -mentionManager: App\Service\MentionManager {#389 …}
}
support_us_block App\Twig\Components\SupportUsBlock 12.0 MiB 1.34 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\SupportUsBlock {#9816
  +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 {#9817 …}
}
featured_magazines App\Twig\Components\FeaturedMagazinesComponent 12.0 MiB 2.83 ms
Input props
[
  "magazine" => App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
]
Attributes
[]
Component
App\Twig\Components\FeaturedMagazinesComponent {#9905
  +magazine: App\Entity\Magazine {#265
    +icon: Proxies\__CG__\App\Entity\Image {#246 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      &gt; Any issues on the community? Report it using the report flag.\n
      \n
      &gt; Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#275
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#237 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#233 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#222 …}
    +entries: Doctrine\ORM\PersistentCollection {#180 …}
    +posts: Doctrine\ORM\PersistentCollection {#138 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#200 …}
    +bans: Doctrine\ORM\PersistentCollection {#117 …}
    +reports: Doctrine\ORM\PersistentCollection {#103 …}
    +badges: Doctrine\ORM\PersistentCollection {#81 …}
    +logs: Doctrine\ORM\PersistentCollection {#71 …}
    +awards: Doctrine\ORM\PersistentCollection {#1346 …}
    +categories: Doctrine\ORM\PersistentCollection {#1823 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#269
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#271
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  -twig: Twig\Environment {#1252 …}
  -repository: App\Repository\MagazineRepository {#333 …}
}