We should also keep in mind that Gitea was hostilely taken away from the community by a for-profit corporation that made Gitea open-core by hiding a way features behind a paywall in a cloud.
𝘋𝘪𝘳𝘬
Somewhere between Linux woes, gaming, open source, 3D printing, recreational coding, and occasional ranting.
🇬🇧 / 🇩🇪
- 3 Posts
- 137 Comments
cgit always feels last century. Even with so-called “modern CSS” it’s just ancient.
𝘋𝘪𝘳𝘬@lemmy.mlto
Selfhosted@lemmy.world•GitLab Act 2 - A letter to our customers and our investors.English
1·3 months ago2018 when Microsroft acquired GitHub it was the largest competitor with similar functionality as far as I know. I used if for a few years before switching to selfhosted Forgejo because selfhosted GitLab back then was painfully annoying and complicated to setup and used enormous amounts of resources and also felt more aimed towards corporate users.
𝘋𝘪𝘳𝘬@lemmy.mlto
Selfhosted@lemmy.world•GitLab Act 2 - A letter to our customers and our investors.English
127·3 months agoThey once were a promising alternative to MS GitHub but now they’re going down the same route.
AI data centers need RAM. HDDs are used for “the cloud”. 1 terabyte per user need to be stored somewhere.
𝘋𝘪𝘳𝘬@lemmy.mlOPto
Selfhosted@lemmy.world•What’s the currently best way to manage TOTP tokens?English
2·5 months agoThank you! 2FAuth looks very promising. Especially with the Android app! I need to check out the repo and history when I’m back home, though. It seems to be a one-man show.
𝘋𝘪𝘳𝘬@lemmy.mlOPto
Selfhosted@lemmy.world•What’s the currently best way to manage TOTP tokens?English
1·5 months agoAegis seems to be just an app. The thing is, that I see an app as second option for accessing the data. I’d like to have a selfhosted service that is accessible independent from a device and – for convenience – has an app, too.
This a good idea?
This sounds like a fun project that needs some customization, like styling and templating everything to make it look like a blog with federation and comments and not like a Lemmy instance.
Edit: You could also setup GoToSocial for example and set maximum character size to 5000 or so.
This will give you a place to blog and get comments. Readers need a front-end and for them it just looks like a Mastodon account, but you could use styling and template magic to convert the back-end into a nice looking blog front-end.
It’s easy to setup, host, and maintain and runs on fairly low resources.
Lemmy or Piefed? Which is easier to host
Can’t say anything about Piefed, but from what I tried quite some time ago, Lemmy is absurdly annoying to properly set up in an already existing Docker environment with an already existing reverse proxy, because it wants to basically handle everything on it’s own.
It might be actually easier to use another machine or a VM and install Docker there and let Lemmy do whatever it wants to do und just proxy from your main setup to the Lemmy setup.
I gave up.
𝘋𝘪𝘳𝘬@lemmy.mlto
Selfhosted@lemmy.world•Finding a new registrar/name server for .atEnglish
15·7 months agoselfhost.eu offers dynamic DNS which works perfectly fine with my router, using their API access as documented by them. It also works perfectly well with Let’s Encrypt integrated in Nginx Proxy Manager.
- can handle .at domains
- is not Cloudflare
- is registrar and name server
- is European (Germany)
- supports Nginx Proxy Manager
They’re in the market since 2001, I use them since ca. 2010 and never had any issues. Their website looks ancient, almost historic. But it’s functional.
𝘋𝘪𝘳𝘬@lemmy.mlto
Selfhosted@lemmy.world•Google flags Immich sites as dangerousEnglish
571·10 months agoThe URLs mentioned in their blog article all have a wrong certificate (different host name).
I am sure if they fix it Google’s system would reclassify the sites as safe.
𝘋𝘪𝘳𝘬@lemmy.mlto
Selfhosted@lemmy.world•What external services do you use for your selfhosting setup?English
1·1 year ago- Mail with all the bells and whistles (been there, done that – but I just want this to work and not care about details).
- Dynamic DNS because I just need to tell someone my non-static IP so they can connect that with my domain name.
𝘋𝘪𝘳𝘬@lemmy.mlto
Fediverse@lemmy.world•I made a Firefox fork with Fediverse integration - Now with standalone FF extension.English
2·1 year agoThanks! I just prefer simple UIs.
𝘋𝘪𝘳𝘬@lemmy.mlto
Fediverse@lemmy.world•I made a Firefox fork with Fediverse integration - Now with standalone FF extension.English
2·1 year ago(Screenshots resized due to not wasting too much space.
Here’s a small one of how a website would look like.

Here’s a larger one of how my new tab page looks like (including multiple tabs to show how the tab bar looks like).

𝘋𝘪𝘳𝘬@lemmy.mlto
Fediverse@lemmy.world•I made a Firefox fork with Fediverse integration - Now with standalone FF extension.English
5·1 year ago// Enable userChrome.css user_pref('toolkit.legacyUserProfileCustomizations.stylesheets', true); // Warnings user_pref('browser.aboutConfig.showWarning', false); // Style user_pref('browser.tabs.inTitlebar', 0); user_pref('browser.theme.content-theme', 1); user_pref('browser.theme.toolbar-theme', 1); // Extensions user_pref('extensions.activeThemeID', 'firefox-compact-light@mozilla.org'); user_pref('extensions.pocket.enabled', false); user_pref('extensions.screenshots.disabled', true); user_pref('extensions.getAddons.showPane', false); user_pref('extensions.htmlaboutaddons.recommendations.enabled', false); // Zoom user_pref('toolkit.zoomManager.zoomValues', '.5,.3,1,1.2,1.3,1.5'); user_pref('devtools.toolbox.zoomValue', '1.4'); user_pref('browser.zoom.siteSpecific', false); // Privacy // // Basically do not leak URLs, IPs, etc. to external services user_pref('browser.safebrowsing.malware.enabled', false); user_pref('browser.safebrowsing.phishing.enabled', false); user_pref('security.OCSP.enabled', 0); user_pref('browser.contentblocking.category', 'custom'); user_pref('app.shield.optoutstudies.enabled', false); user_pref('browser.urlbar.trending.featureGate', false); // DoH explicitly off user_pref('network.trr.mode', 5); user_pref('network.trr.default_provider_uri', ''); // Cookies user_pref('network.cookie.cookieBehavior', 2); // AdBlock user_pref('browser.newtabpage.activity-stream.showSponsoredTopSites', false); user_pref('browser.newtabpage.activity-stream.feeds.section.topstories', false); user_pref('browser.newtabpage.activity-stream.feeds.topsites', false); // Remove weird URLS user_pref('toolkit.shopping.ohttpConfigURL', ''); user_pref('toolkit.shopping.ohttpRelayURL', ''); user_pref('browser.partnerlink.attributionURL', ''); user_pref('browser.privatebrowsing.vpnpromourl', ''); // Do not track user_pref('privacy.trackingprotection.enabled', false); user_pref('privacy.trackingprotection.emailtracking.enabled', false); user_pref('privacy.trackingprotection.socialtracking.enabled', false); user_pref('privacy.trackingprotection.cryptomining.enabled', false); user_pref('privacy.trackingprotection.fingerprinting.enabled', false); user_pref('privacy.donottrackheader.enabled', true); // Beahvior user_pref('general.smoothScroll', false); user_pref('signon.autofillForms', true); user_pref('signon.firefoxRelay.feature', 'disabled'); user_pref('browser.download.manager.addToRecentDocs', false); user_pref('security.tls.version.min', 1); user_pref('browser.profiles.enabled', false); // UI features // // https://github.com/yokoffing/Betterfox/blob/main/user.js user_pref('browser.discovery.enabled', false); user_pref('browser.shell.checkDefaultBrowser', false); user_pref('browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons', false); user_pref('browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features', false); user_pref('browser.preferences.moreFromMozilla', false); user_pref('browser.tabs.tabmanager.enabled', false); user_pref('browser.aboutConfig.showWarning', false); user_pref('browser.aboutwelcome.enabled', false); user_pref('browser.uidensity', 0); user_pref('browser.urlbar.trimURLs', false); user_pref('browser.urlbar.showSearchTerms.enabled', false); // Telemetry // // https://github.com/yokoffing/Betterfox/blob/main/user.js user_pref('datareporting.policy.dataSubmissionEnabled', false); user_pref('datareporting.healthreport.uploadEnabled', false); user_pref('toolkit.telemetry.unified', false); user_pref('toolkit.telemetry.enabled', false); user_pref('toolkit.telemetry.server', 'data:,'); user_pref('toolkit.telemetry.archive.enabled', false); user_pref('toolkit.telemetry.newProfilePing.enabled', false); user_pref('toolkit.telemetry.shutdownPingSender.enabled', false); user_pref('toolkit.telemetry.updatePing.enabled', false); user_pref('toolkit.telemetry.bhrPing.enabled', false); user_pref('toolkit.telemetry.firstShutdownPing.enabled', false); user_pref('toolkit.telemetry.coverage.opt-out', true); user_pref('toolkit.coverage.opt-out', true); user_pref('toolkit.coverage.endpoint.base', ''); user_pref('browser.ping-centre.telemetry', false); user_pref('browser.newtabpage.activity-stream.feeds.telemetry', false); user_pref('browser.newtabpage.activity-stream.telemetry', false); user_pref('breakpad.reportURL', ''); user_pref('browser.tabs.crashReporting.sendReport', false); user_pref('browser.crashReports.unsubmittedCheck.autoSubmit2', false); user_pref('app.shield.optoutstudies.enabled', false); user_pref('app.normandy.enabled', false); user_pref('app.normandy.api_url', ''); // Disable AI bullshit // user_pref('browser.ml.enable', false); user_pref('browser.ml.chat.enabled', false); user_pref('browser.ml.chat.shortcuts', false); user_pref('browser.ml.chat.sidebar', false); user_pref('pdfjs.enableAltText', false); user_pref('pdfjs.enableUpdatedAddImage', false);and
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* Tabs styling */ #TabsToolbar { background-color: #cccccc !important; --toolbarbutton-inner-padding: 0 !important; } .tabbrowser-tab { padding: 0 !important; } .tab-background { margin: 0 !important; border-radius: 0 !important; background-color: var(--toolbar-bgcolor) !important; box-shadow: none !important; } #alltabs-button { display: none !important; } #tabbrowser-tabs { min-height: unset !important; } /* secondary label indicators */ @font-face { /* copy font file to same directory as this CSS file */ font-family: 'SymbolsNerdFont'; src: url('SymbolsNerdFont.ttf') format('truetype'); } .tab-secondary-label { display: none; } .tab-text::before { font-family: SymbolsNerdFont; padding-right: 0.25em; } .tabbrowser-tab[soundplaying] .tab-text::before { content: ''; } .tabbrowser-tab[muted] .tab-text::before { content: ''; } .tabbrowser-tab[activemedia-blocked] .tab-text::before { content: ''; } /* unselected tabs */ .tab-background:not([selected]), .tab-icon-image:not([selected]) { opacity: 0.4 !important; } .tab-text:not([selected]) { color: #555753 !important; } #tabbrowser-arrowscrollbox { min-height: var(--tab-min-height) !important; max-height: var(--tab-min-height) !important; } scrollbox[part="scrollbox"] { gap: 2px; }and
/* Style about:home and about:newtab */ @-moz-document url-prefix(about:home), url-prefix(about:newtab) { .logo-and-wordmark { background-image: url(REPLACE_ME_WITH_YOUR_FAVORITE_IMAGE.jpg); background-size: cover; background-position: center; aspect-ratio: 16/9; border-radius: 1em; position: relative; width: auto; height: auto; max-width: 80%; max-height: 60vh; margin: 0 auto; } .logo-and-wordmark .logo { display: none !important; } .logo-and-wordmark .wordmark { position: absolute; right: 2em; bottom: 0.5em; --newtab-wordmark-color: #eb8819; } }
𝘋𝘪𝘳𝘬@lemmy.mlto
Fediverse@lemmy.world•I made a Firefox fork with Fediverse integration - Now with standalone FF extension.English
327·1 year agoSo … Basically just another preconfigured Firefox with extensions?
𝘋𝘪𝘳𝘬@lemmy.mlto
Selfhosted@lemmy.world•The future is NOT Self-Hosted, but Self-SovereignEnglish
162·1 year agoI’m going to voluntarily read other people’s AI slop.
The IPv6 range is barely even used.
Yet.
Also I imagine that there will be a secondary market for IPv6 at some point.
Like there already is one for IPv4 addresses?
I stand by my point:
No-one will ever need a /48 range.
The ranges will become larger over time because “we have it”, and companies will get thousands of sections with figuratively unlimited IP addresses in them each.
With this huge ranges we’ll have the same problem with IPv6 in a few years that we already have with IPv4.

FACT
The corporation basically stole the project from the community and started hiding features behind a paywall.
It is completely irrelevant if you need the features that are closed and behind a paywall and are not part of the open core.