this post was submitted on 30 Jun 2024
203 points (98.1% liked)

Linux

48143 readers
756 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Are we Wayland yet? Are we JPEGXL yet? Are we Rust yet?

I’ve gathered a meta-tracker for the adoption state of futuristic technologies.

top 34 comments
sorted by: hot top controversial new old
[–] [email protected] 35 points 4 months ago (3 children)
[–] [email protected] 11 points 4 months ago (1 children)

What exactly is the advantage of codeberg over gitlab and github? People just say "miscellaneous privacy benefits"

[–] [email protected] 40 points 4 months ago* (last edited 4 months ago) (1 children)

Using free software to create free software is already a good reason.

But if you need more:

  • owned by Microsoft, it is a US-based megacorporate product with value to deliver to shareholders first
  • never forget EEE as we see a new form of it with Microsoft trying to control the entire developer experience from the server hosting to the editor/AI on folks’ machines; under-litigation Copilot is a straight exploitation of the Commons selling our hardwork back to us
  • proprietary means you can’t fork or fix the numerous bugs in the platform nor is there a real issue tracker so you beg on their forums for fixes (anti-free software mentality)
  • lock-in issues since aside from specifically the Git part, every one of those proprietary features you buy into will dig a further trench to make it hard to migrate elsewhere
  • yes, privacy benefits of not just you but all potential contributors as well since it is a locked ecosystem that requires an account
  • not everyone thinks software forges should double as a social media platform with upvotes, FOMO, commit anxiety with employers imploring you have metrics on a closed platform with knock-on issues like star-hacking where projects try to inflate their star numbers in this popularity contest instead of judging projects on merit
  • related, the README used to be a file you could read without rendering but now instead they are full of trash markup, emoji, & the repository is filled with binary blobs of images or worse videos for your demo ballooing cloning all wrapped in a Microsoft UI not your own; setting up a separate site isn’t hard (nor is it easy either) but at least you get to own your look & keep assets out of your repository
  • there are literally ads & upsells all over the platform
  • you can’t use search or see the collapsed comments without authentication
  • censorship is not uncommon--especially when it mess with the corporate status quo (see Nintendo Switch emulator dev, youtube-dl, etc.)
  • being US-based & big enough for scrutiny, MS GitHub is required to follow US sanctions which prohibit some of your potential users/contributors from even accessing your code (and/or issue tracker and/or forum and/or wiki and/or donations if using MS GitHub)
  • …& there already is a host of good alternatives out there for code forges with better performance & features, some of them aren’t locked to Git either; ‘network effect’ be damned
[–] [email protected] 18 points 4 months ago (3 children)

So, everything you mentioned are reasons I've heard for people to switch from GitHub to GitLab, which is why I explicitly mentioned them both in the question.

So far no one has given me any advantage specific to codeberg. (Keeping in mind that GitLab is already open source, self-hosted, and federated via ActivityPub).

[–] [email protected] 3 points 4 months ago* (last edited 4 months ago)

GitLab isn't open source, and certainly isn't an open project first — they have a sales team, a marketing team, and a budget who does not account for getting new dev users

[–] [email protected] 6 points 4 months ago (1 children)

If ForgeFed gets up & running you should be able to self-host your own compatible VCS repository & send pull/merge requests from it instead of needing to create an account then for & use up space on another’s forge. The Forgejo lineage has a strong interest in this technology. Currently the only decentralized+popular way to send patches is via email so this will help put the D back in distributed version control system (DVCS). This would not only be great for users getting to keep their private data, but the distributed nature adds a layer of resilience for downed Microsoft servers (happens often) or censorship/sancations as with even a little momentum, your project will have mirrors in multiple jurisdictions.

GitLab is open core, which is a step up from fully-closed, but isn’t fully open (nothing inherently wrong with that, but it is of note). The bigger issues with GitLab to me are twofold: 1) it’s slow built on Ruby & React (I think) where it can’t run on a potato requiring both excessive CPU as well as data usage while also requiring JavaScript & 2) GitLab is publicly traded which means there are shareholder requirements for them that can easily get in the way of what is good for users (or even what will be or continue to be licensed with a free software license).

Codeberg is ran by a German nonprofit which means they aren’t trying to put profits in the way of users, but also being in the EU, they will have strict requirements for user data which means it’s safer. As far as I can tell, there are no ads & it runs fast & works well enough without JavaScript. I would rather see more self-hosting personally, but if it isn’t practical for you, this is a good option. With it being built with Forgejo, it should in theory introduce a lot less friction migrating from Codeberg to self-hosted Forgejo in the future.

Forgejo isn’t without flaws tho. One of the goals of Gitea (forked from Gogs) vs. Forgejo (forked from Gitea) is trying to be more compatible with Microsoft GitHub even moving its continuous integration (CI) to Forgejo Action to be compatible with all the bugs & YAML spaghetti that MS GitHub uses. They copy the generally-bad pull request model too which only is optimal in certain uses cases, bottlenecking review & having a UI that leads maintainers more to commenting on how to fix something rather than saying “thanks”, merging, then fixing small nits themselves to not waste the contributor’s time in review if they just want a small bugfix, not to learn your entire codebase + style + process. By copying MS GitHub too closely, you can up being a clone that is just FOSS while risking having something that is technically differentiating which is ironically counter to inspiriting migration since while it might be easier, the benefits seem moot (maybe even just philosophical) instead of providing something users want to leave for (which is what I think you might be getting at). Additionally being Git-based as well means Forgejo (& others) are stuck with snapshots that factor in time & patch order causing unnecessary merge conflicts with multiple users which is solved by choosing a better version control system (VCS).

[–] [email protected] 2 points 4 months ago (1 children)

You hinted at a possibly better version control system at the end there viz merge conflicts. Can you let us know which ones you think are better at this? The amount of time I waste on that at work is bonkers.

[–] [email protected] 3 points 4 months ago* (last edited 4 months ago)

Gerrit is probably the poster child for branchless, stack-based diffs in Git. It takes some get getting used to, but once adjust your thruput is really ramps up. In some sense tho, this is a hack by tagging changelist values in the commit message to help reconstruct what the heck is going on due to Git limitations, but it’s old & robust enough to trust that system & many of its users absolutely swear by it (I have limited exposure but have used it more recently I can feel the appeal). You should be able to slap it in front of any Git server—even just straight host HTTP if not something lightweight like cgit, gitweb, or Ayllu. (Jujutsu is the same commit hackery in a different package & I don’t think it moves the needle as much as folks think being ultimately shackled to Git’s design decisions).


If you look outside of snapshot-based tools like Git, Mercurial, & so on, patch-theory-based options offer refuge. Darcs & Pijul are the leading (D)VCSs in the space. Darcs is very mature & shows its age in many ways (but is still developed & works good enough). Pijul is largely based on Darcs but meant be faster (& is), but it is immature; some features are missing on purpose to avoid the swell of Git commands, but I am personally surprised theres no good story for sending patches nor rebase. That said its identity system is how VCS should do it. Both VCSs have a lot less tooling built around them. Darcs is still supported by tools like Nix (but not Flakes) as well as Opam for OCaml with darcs hub & Smederee for maintained public forges. Pijul isn’t supported by much at all unfortunately & while Nest is a public forge, its lacking in features & basic usability like being able to fetch a tarball (despite pijul archive). All the latter negativity may sound bad, but all tooling requires momentum. They would be prime candidates for the Gerrit workflow--just without the hacks needed. With the two being similar, I hope we see more tooling pop up to support them & just like trying a new paradigm of programming gives you insight on the ones you know, a new way to do VCS will teach you about version control. Do recommend.

[–] [email protected] 5 points 4 months ago

Well, if you're self-hosting GitLab, there might not be much of a difference. Codeberg is hosted by a non-profit organization, so you don't have to self-host it.

The open-source software that it uses, Forgejo, is also more so developed by the community, rather than just one corporation, who could change the license for future updates at any point.

[–] [email protected] 1 points 4 months ago
[–] [email protected] 1 points 4 months ago

very cool my man

[–] [email protected] 1 points 4 months ago

This is so cool. I will definitely be keeping an eye on this!

[–] [email protected] 50 points 4 months ago (3 children)

A reminder: Google added support for and then subsequently dropped JPEGXL support in Chrome. Fuck Google.

[–] [email protected] 9 points 4 months ago* (last edited 4 months ago) (3 children)

Well of course. Those bastards want everyone to use their stupid WebP format.

On a related note, how does JPEGXL compare to PNG? Does it support layers?

[–] [email protected] 4 points 4 months ago (1 children)

What's wrong with webp if its Foss?

[–] [email protected] 6 points 4 months ago (1 children)

Because it's yet another example of Google's near-monopoly over the Web's architecture. It's not healthy for good web development. It's like the 90s and Microsoft all over again.

I mean, fuck, we're already getting websites that've been "optimized" for Chromium-based browsers—in other words, semi-broken for non-Chromium browsers.

[–] [email protected] 1 points 4 months ago (2 children)

If its FOSS, then it can't be a monopoly, by definition

[–] [email protected] 2 points 4 months ago* (last edited 4 months ago)

Google has discovered that FOSS software under their full control is better than pure proprietary software for monopoly abuse and rent seeking. With FOSS software, they enjoy the automatic popularity that they otherwise would have had to market very hard for. At the same time, none of Google's free software is truly free. Google devs regularly neglect and reject overwhelming user requirements (jpegxl in chrome is probably the best example of this) and choose designs that clearly favor the company monetarily. It isn't even practical for normal people to fork their projects.

Google often uses their 'FOSS' projects to twist open standards or the market to their advantage. Android and Chrome are very significant players in this regard. Using Chrome, Google even managed to make the W3C standard too complicated for others to make alternative browsers easily. Google has similar ambitions in the multimedia market. They want to replace the monopolistic media formats with quasi-monopolistic formats like webp and av1 instead of truly open ones like jpegxl.

[–] [email protected] 4 points 4 months ago* (last edited 4 months ago)

I said a near-monopoly. Also, even if it's foss, by creating the format, they established the baseline parameters of that format.

That gives them a significant degree of control.

 


Edit: I also hate it because so many of the programs I use don't support it, so I constantly have to copy > paste into image editor program > Save as PNG.

Though admittedly this is mostly an adoption thing. Still, it's a major problem.

[–] [email protected] 7 points 4 months ago (1 children)

What is it with this obsession with JPEG-XL? I keep seeing it mentioned on lots of threads, but as a user, the benefits seem marginal? Like: would be nice, but I'd expect more significant benefits from something that's brought up this often - so which benefits am I missing?

[–] [email protected] 5 points 4 months ago* (last edited 4 months ago) (1 children)

Honestly? I agree with you that the benefits seem kind of marginal. But I still think it's a fascinating thing. :)


Edit:

On doing some reading about it and trying it out for myself, the file size reductions are hardly marginal. It's actually quite impressive. Still, it seems for most people, including myself, that jpeg for lossy & png for lossless is more than adequate, especially with how cheap storage is nowadays.

(And, frankly, I appreciate seeing at a glance if an image is lossy or lossless, but I imagine that's a priority most people don't have. Lol.)

[–] [email protected] 3 points 4 months ago (1 children)

Yeah that's what I mean - it's not that the file size reduction is minimal, but that the benefits of that are fine, but not earth-shattering.

[–] [email protected] 1 points 4 months ago

Yeah, I can agree with that.

[–] [email protected] 15 points 4 months ago (2 children)

If google had a baby she would drop it on its head.

[–] [email protected] 3 points 4 months ago

If Google had a baby she would ~~drop it on its head~~ spike it at the ground

[–] [email protected] 13 points 4 months ago

Out of malicious boredom.

[–] [email protected] 12 points 4 months ago (2 children)

#8377 of useful thing Google killed.

RIP Stadia 🙏

[–] [email protected] 7 points 4 months ago (2 children)

Stadia wasn't that good. Change my mind.

[–] [email protected] 2 points 4 months ago

Well you have to state why it wasn't good. It was incredibly region-dependent, but if you live near one of their endpoints the latency wasn't noticeable and the quality was great, as it was for me.

In the end I got to play a bunch of games for free, and have an extra controller I still use, so there's that. They made us whole, at least, after they shut down (I even imported my into the breach save game into Steam with Google takeout after)

[–] [email protected] 7 points 4 months ago

I played high-end games I couldn't otherwise play, often at a discount, and then they refunded me at the end anyway. Pretty sweet deal

[–] [email protected] 7 points 4 months ago

Never even bothered with stadia after they killed inbox