Digitala banker utnyttjas för penningtvätt. Helt digitala banker som polisen och en rad andra myndigheter kallar neobanker i en rapport, löper enligt just polisen en betydande risk att utnyttjas för penningtvätt.
vkd3d 1.13 Released
vkd3d 1.13 · wine / vkd3d · GitLab
The vkd3d team is proud to announce that release 1.13 of vkd3d, the Direct3D to Vulkan translation library, is now available. This release contains improvements that...GitLab
like this
ShaunaTheDead likes this.
Asking for donations in Plasma
Asking for donations in Plasma
Why do we ask for donations so often? Because it’s important! As KDE becomes more successful and an increasing number of people use our software, our costs grow as well: Web and server hostin…Adventures in Linux and KDE
like this
ShaunaTheDead likes this.
Now this is much better than getting ads in your Start Menu.
Donate and support KDE
Help us create software that gives you full freedom and protects your privacy, and be a part of a great communityDonate and support KDE
like this
BlueKey likes this.
*checks if it's April 1*
no? just no. please don't open a door to Microsoft BS.
like this
PokyDokie likes this.
I do suspect a small but vocal crowd of people will spread doom and gloom about it on social media anyway, of course.
I see they're here already
like this
RandomStickman likes this.
I mean, at least I'm not paying $200* for the privilege of being advertised to... I'd like an option to disable it permanently in the popup but it seems mostly reasonable?
^* This is the first price I got for a Windows licence when I searched for it. I know you can probably get them cheaper, but that's the price they're advertising, so eh.^
like this
falseprophet likes this.
like this
falseprophet likes this.
Why?
People spend countless hours building the software you use for free. Now they need to buy actual hardware yo build and test that software and what? They have to pay with their own money besides all that time they spent already so that you can continue to use this for free?
You're not forced to pay anything, they're asking for small donations
like this
falseprophet likes this.
I personally think once a year is not enough. Every 6 months might be better. Also people already spend a lot during December that they might not prioritize donating to KDE.
For those complaining.... Well I don't know what to say to them. Such a big complex software which is 100% free should be allowed to remind us that they need money.
Don't forget they said it's running as a daemon specifically so you can easily disable it if it triggers you so much.
like this
falseprophet likes this.
It’s implemented as a KDE Daemon (KDED) module, which allows users and distributors to permanently disable it if they like.
Eh. I guess good enough.
But I'm still opposed on principle.
like this
sunzu2 likes this.
A lot of people here have such a bizarre stance.
People have put work into this, for free. And the moment they ask for support, you immediately bring the pitchforks out, over a singular pop-up you can permanently disable? That's just plain disrespectful, at the very least
like this
dhhyfddehhfyy4673, DaGeek247 and falseprophet like this.
Unfortunately, there has always been the issue that a not-insignificant percentage of users of FOSS software believe the FREE part means "free as in beer" and take umbrage when asked to contribute.
I've long been a proponent (and I know I'm in a minority) that has advocated for a shift in the marketing of FOSS applications from "donation based" to "value based". Meaning that the expectation is that if you enjoy the software, you pay an amount that you believe is commensurate to your use. This is voluntarily of course...if you can't pay, than please use it and enjoy it. But those who can pay, should pay...at least a little bit, to offset the costs for those who can't.
It's more or less that the wording of FOSS apps needs to change so that you are expected to contribute if you can.
Just my opinion. Like I said, I know I'm in the minority. Just not a fan of the percentage of users that has always existed that (falsely) think that asking for money for your project is somehow anathema to the Open Source ideal and whine whenever they're asked to contribute.
Maybe donate 50 cents for every hour you used the software and it was useful to you.
That would be 1000 €$ per year if you work with Linux full time.
Let’s see some commercial software:
Microsoft Office 365 is 70 $€ per year. Adobe Suite around 700 $€ per year. IntelliJ IDEA about 170 $€ per year. Affinity Suite is 170 $€ once. Reaper is 60 €$ for a discounted license. Full featured media player like Elmedia costs 20 $€. BBEdit costs 60.
The FOSS windows and Mac FTP client Cyberduck asks for a minimum 10 €$ donation. It won’t prompt you for a donation if you bought a license. The Duck applications are all pretty nice.
While I absolutely agree with what you are trying to say and donate to kde myself already. The issue with a lot of comments like yours is that the examples you use are almost always commercial software that already only see's limited use. I get value out of non commerical use applications such as dolphin, kate, konsole, and kdeconnect. Finding examples of popular paid versions of those applications would go a long way in my opinion because it would be something that more people can relate to.
The problem I see with the examples you are giving are the same problems I see when someone uses those examples as reasons why they can't switch to linux in the first place. And that is the fact that while those programs are popular. They aren't used by the vast majority of people who don't have a work related need to use them. Half the people that claim it as an excuse probably don't actually use those programs as well.
Your examples such as Cyberduc, Elmedia, and BBBedit are your stronger examples. Again just my opinion.
The Duck applications are all pretty nice.
They make more apps than just Cyberduck?
Also what the hell is up with everyone saying "free as beer"?
Beer isn't free!
The full saying is "Free as in Speech, not Free as in Beer"
Basically the "Free" in free means that it's free to do with as you please, modify, etc... But not free as in "here's a free product...like getting a free beer"
That's also confusing and it is not the full saying. The full saying is "free as in free speech, not free beer".
From the FSF website:
Free software is a matter of liberty, not price. Think of “free” as in “free speech”, not as in “free beer”. Free software is a matter of the users' freedom to run, copy, distribute, study, change and improve the software.
I have over €1500 donated to opensource projects.
I have only once bought a commercial software license worth €7/lifetime.
It's not complicated.
It's an ad.
There's no version of advertising I will ever be OK with.
Not an ad. No one is trying to sell you anything.
(If you get the notification) you're already using their product.
like this
Sickday and falseprophet like this.
Yes, it is an ad. Any call to action is an ad.
And its mere presence will ensure I don't give them any more money. The core concept of inserting any ad in an OS is not behavior I am willing to reward.
So, asking you to VOLUNTARILY donate IF YOU WANT to with a pop-up you can simply ignore and/or disable is advertising? I don't understand... I mean, they give you a product for free, full of good features and updated regularly, and the moment they ask you to donate, again, IF YOU WANT to, it's considered advertising...
You're so sad, dude.
like this
falseprophet likes this.
Yes. It is literally impossible for an organization asking for money not to be an ad.
And yes, showing me a single ad once means I never give them money again. I am not OK with ads.
Don't use KDE then🤷♂️
Those assholes! They should make an OS for free!!! How dare they ask for support?!?!
No one forces you to support them, if it's so annoying just disable it. I wonder if makes you happy work for someone for free... Hope it will happen to you so you'll understand how bad it is :)
Cya
like this
Sickday and falseprophet like this.
like this
falseprophet likes this.
This is not an OS behaviour. KDE is a desktop environment.
If it bothers you so much, remove the DE and use the command line, full time
like this
Sickday likes this.
Ads try to sell you something, there is no "call to action". Here, there is nothing to sell, so by definition it's not an ad.
They are just asking you if you'd like to help them in providing you the product you're already using.
like this
falseprophet likes this.
I'm not against the idea, but I do think it's a bit unfair. There are dozens of projects KDE relies on that never even get the chance to ask for donations this way, simply because they don't need a GUI.
I believe KDE should at least offer to share the donations with other projects, projects that would otherwise have no voice. Something like the old Humble Bundle donation method would work really well, and let users to choose how their money is allocated.
like this
falseprophet likes this.
The one change I would make would be adding a "never" button to the notification so you don't have to disable it in the settings if you don't want it
Or actually "Don't show again" would probably be better phrasing
I didn't get that notification yet,but when I do,l'll be sure as shit to donate as large amount as I can afford.
Edit: I know I can and have donated already,but just to highlight the idea
What are you talking about? Microsoft is charging for HEIF, HEIC, and looking to do it with AV1 and AVIF. Intel started development of EFI in the titanium days as a new standard for servers running unix before it became an open standard. Microsoft wasn't the only one involved in the standard but apple, redhat, hp, Intel, amd, and a laundry list of hardware/software manufacturers.
Most all the innovation happens in enterprise space with servers running unix/Linux. User operating systems are an afterthought when these features are initially conceived.
No problem... Once a year is fine. It's a non-profit based in Germany...
Thunderbird shows it once at every startup...
Thunderbird shows it for a at every startup
Honestly didn't realise till you pointed that out. I'm so used to seeing it that it doesn't register to me what it's saying anymore. Probably for the best that KDE only does it once a year; if it were daily I'm sure it wouldn't even register to people that it's asking for donations.
like this
falseprophet likes this.
Tumbleweed Monthly Update - August 2024
Tumbleweed Monthly Update - August 2024
Welcome to the monthly update for Tumbleweed for August 2024. This month has been a productive period with significant progress and updates. The rolling-rele...openSUSE News
like this
ShaunaTheDead likes this.
One Of The Rust Linux Kernel Maintainers Steps Down - Cites "Nontechnical Nonsense"
Wedson Almeida Filho is a Microsoft engineer who has been prolific in his contributions to the Rust for the Linux kernel code over the past several years. Wedson has worked on many Rust Linux kernel features and even did a experimental EXT2 file-system driver port to Rust. But he's had enough and is now stepping away from the Rust for Linux efforts.
From Wedon's post on the kernel mailing list:
I am retiring from the project. After almost 4 years, I find myself lacking the energy and enthusiasm I once had to respond to some of the nontechnical nonsense, so it's best to leave it up to those who still have it in them.
...
I truly believe the future of kernels is with memory-safe languages. I am no visionary but if Linux doesn't internalize this, I'm afraid some other kernel will do to it what it did to Unix.Lastly, I'll leave a small, 3min 30s, sample for context here: youtu.be/WiPp9YEBV0Q?t=1529 -- and to reiterate, no one is trying force anyone else to learn Rust nor prevent refactorings of C code."
One Of The Rust Linux Kernel Maintainers Steps Down - Cites "Nontechnical Nonsense"
One of the several Rust for Linux kernel maintainers has decided to step away from the projectwww.phoronix.com
"There's no compromise, I'M RIGHT AND YOU'RE WRONG!"
no wonder everyone hates rustphiles
I wouldn't say that. For primitives yeah, day or two. But if you want to build a proper program, it'll take time to get used to it. For my first few projects I just used clone everywhere. Passing by reference and managing lifetimes, specially when writing libraries is something that takes time to get used to. I still don't feel confident.
Besides that I do like Rust though. Sometimes I feel like "just let me do that, C let's me", but I know it's just adding safety where C wouldn't care.
A = 2
B = 22
C = 222
D = 3
...
Isn’t Linux still Linux even though probably a lot of the original code is gone?
The Kernel of Theseus.
You get used to the syntax and borrow checker in a day or two.
As someone who spent a couple months learning rust, this was half true for me. The syntax? Yeah. No problem. The borrow-checker (and Rust's concept of ownership and lifetimes in general)? Absolutely not. That was entirely new territory for me.
The first directory block is a hole. But type == DIRENT, so no error is reported. After that, we get a directory block without '.' and '..' but with a valid dentry. This may cause some code that relies on dot or dotdot (such as make_indexed_dir()) to crash
The problem isn't that the block is a hole. It's that the downstream function expects the directory block to contain .
and ..
, and it gets given one without because of incorrect error handling.
You can encode the invariant of "has dot and dot dot" using a refinement type and smart constructor. The refined type would be a directory block with a guarantee it meets that invariant, and an instance of it could only be created through a function that validates the invariant. If the invariant is met, you get the refined type. If it isn't, you only get an error.
This doesn't work in C, but in languages with stricter type systems, refinement types are a huge advantage.
Smart Constructors
(Photo by Michael Dziedzic on Unsplash) The validation problem At some point, every developer writing user-facing code has asked themselves the question “How should I validate input?”Andy G's Blog
What kind of type signature would prove the first block of any directory in an ext4 filesystem image isn’t a hole?
I don't know if the type system proves it's not a hole, but the type system certainly seems to force consumers to contend with the possibility by surfacing the outcomes at the type system level. That's what the Either
is doing in the example's return type, is it not?
fn get_or_create_inode(
&self,
ino: Ino
) -> Result<Either<ARef<Inode<T>>, inode::New<T>>>
Sublicense the Linux Mark | Linux Foundation
The Linux Foundation protects the public and Linux users from unauthorized and confusing uses of the trademark.www.linuxmark.org
That's disengenuous though.
- We're not forcing you to learn rust. We'll just place code in your security critical project in a language you don't know.
- Rust is a second class citizen, but we feel rust is the superior language and all code should eventually benefit from it's memory safety.
- We're not suggesting that code needs to be rewritten in rust, but the Linux kernel development must internalise the need for memory safe languages.
No other language community does what the rust community does. Haskellers don't go to the Emacs project and say "We'd like to write Emacs modules, but we think Haskell is a much nicer and safer functional language than Lisp, so how about we add the capability of using Haskell and Lisp?". Pythonistas didn't add Python support to Rails along side Ruby.
Rusties seem to want to convert everyone by Trojan horsing their way into communities. It's extremely damaging, both to those communities and to rust itself.
Arch people tell you "I use arch BTW"
Rust people make PRs rewriting your code in rust.
Rust people are worse.
There is no "your" new rust kernel. There is a gigantic ship of Theseus that is the Linux kernel, and many parts of it are being rewritten, refactored, removed an added all the time by god knows how many different people. Some of those things will be done in rust.
Can we stop reacting to this the way conservatives react to gay people? Just let some rust exist. Nobody is forcing everyone to be gay, and nobody is forcing everybody to immediately abandon C and rewrite everything in rust.
Of course. Rust isn't immune to logic errors, off-by-one mistakes, and other such issues. Nor is it memory safe in unsafe
blocks.
Just by virtue of how memory safety issues account for 50%+ of vulnerabilities, it's worth genuinely considering as long as the bindings don't cause maintainability issues.
Unless you're a functional programming purist or coming from a systems programming background, it takes a lot longer than a few days to get used to the borrow checker. If you're coming as someone who most often uses garbage-collected languages, it's even worse.
The problem isn't so much understanding what the compiler is bitching about, as it is understanding why the paradigm you used isn't safe and learning how to structure your code differently. That part takes the longest and only really starts to become easier when you learn to stop fighting the language.
Nobody can maintan a fork of the linux kernel on their own or even with a team. It's a HUGE task.
There already is rust in part of the linux kernel. It's not a fork.
But I agree with your first statement, people are dumb as hell, me included lol
There's always going to be pushback on new ideas. He's basically asking people questions like "Hey how does your thing work? I want to write it in rust." and gets the answer "I'm not going to learn rust.".
I think rust is generally a good thing and with a good amount of tests to enforce behavior it's possible to a functionally equivalent copy of the current code with no memory issues in future maintenance of it. Rewriting things in rust will also force people to clarify the behavior and all possible theoretical paths a software can take.
I'm not gonna lie though, if I would have worked on software for 20 years and people would introduce component that's written in another language my first reaction would be "this feels like a bad idea and doesn't seem necessary".
I really hope that the kernel starts taking rust seriously, it's a great tool and I think it's way easier to write correct code in rust than C. C is simple but lacks the guardrails of modern languages which rust has.
The process of moving to rust is happening but it's going to take a really long time. It's a timescale current maintainers don't really need to worry about since they'll be retired anyway.
I'll add that even when you're an expert in both languages, it's common to see WTF's in the original and not be sure if something is a bug or just weird behavior that's now expected. Especially when going from a looser to a more strict language.
I've translated huge projects and most of the risk is in "you know the original would do the wrong thing in these x circumstances -- I'm pretty sure that's not on purpose but.... Maybe? Or maybe now someone depends on it being wrong like this?"
From a developer standpoint you're taking someone's baby, cloning it into a language they don't understand and deprecating the original. Worse, if you're not actually interested in taking over the project you've now made it abandonware because the original developer lost heart and the person looking for commit counts on GitHub has moved on.
Obviously these extremes don't always apply, but a lot of open source relies on people taking a personal interest. If you destroy that, you might just destroy the project.
Schemes and Resources - The Redox Operating System
This book carefully describes the design, implementation, direction, and structure of Redox, the operating system.doc.redox-os.org
I am no visionary but if Linux doesn’t internalize this, I’m afraid some other kernel will do to it what it did to Unix.
Maybe that's not a bad thing? If you ask me the GNU people are missing a trick. Perhaps if they rewrote Hurd in Rust they could finally shed that "/Linux".
I see that my previous comment is not the common reality apparently.
I'm mainly a C# + js dev of a few years, and I would love to see what precisely other people here are having problems with, because I've had a completely different experience to most of the people replying.
I’d like to add that there’s a difference between unsafe and unspecified behavior. Sometimes I’d like the compiler to produce my unsafe code that has specified behavior. In this case, I want the compiler to produce exactly that unsafe behavior that was specified according to the language semantics.
Especially when developing a kernel or in an embedded system, an example would be code that references a pointer from a hardcoded constant address. Perhaps this code then performs pointer arithmetic to access other addresses. It’s clear what the code should literally do, but it’s quite an unsafe thing to do unless you as the developer have some special knowledge that you know the address is accessible and contains data that makes sense to be processed in such a manner. This can be the case when interacting directly with registers representing some physical device or peripheral, but of course, there’s nothing in the language that would suggest doing this is safe. It’s making dangerous assumptions that are not enforced as part of the program. Those assumptions are only true in the program is running on the hardware that makes this a valid thing to do, where that magical address and offsets to that address do represent something I can read in memory.
Of course, pointer arithmetic can be quite dangerous, but I think the point still stands that behavior can be specified and unsafe in a sense.
I'll try :) Looks like I still have my code from when I was grinding through The Book, and there's a couple spots that might be illuminating from a pedagogical standpoint. That being said, I'm sure my thought process, and "what was active code and what was commented out and when," will probably be hard to follow.
My first confusion was in ~~deref coercion~~ auto dereferencing (edit: see? it's still probably not 100% in my head :P), and my confusion pretty much matched this StackOverflow entry:
stackoverflow.com/questions/28…
It took me until Chapter 15 of The Book (on Boxes) to really get a feel for what was happening. My work and comments for Chapter 15:
use crate::List::{Cons, Nil};
use std::ops::Deref;
enum List {
Cons(i32, Box<List>),
Nil,
}
struct MyBox<T>(T);
impl<T> Deref for MyBox<T> {
type Target = T;
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl<T> MyBox<T> {
fn new(x: T) -> MyBox<T> {
MyBox(x)
}
}
\#[derive(Debug)]
struct CustomSmartPointer {
data: String,
}
impl Drop for CustomSmartPointer {
fn drop(&mut self) {
println!("Dropping CustomSmartPointer with data `{}`!", self.data);
}
}
fn main() {
let b = Box::new(5);
println!("b = {}", b);
let _list = Cons(1, Box::new(Cons(2, Box::new(Cons(3,Box::new(Nil))))));
let x = 5;
let y = MyBox::new(x);
assert_eq!(5,x);
assert_eq!(5, *y);
let m = MyBox::new(String::from("Rust"));
hello(&m);
hello(m.deref());
hello(m.deref().deref());
hello(&(*m)[..]);
hello(&(m.deref())[..]);
hello(&(*(m.deref()))[..]);
hello(&(*(m.deref())));
hello((*(m.deref())).deref());
// so many equivalent ways. I think I'm understanding what happens
// at various stages though, and why deref coercion was added to
// the language. Would cut down on arguing over which of these myriad
// cases is "idomatic." Instead, let the compiler figure out if there's
// a path to the desired end state (&str).
// drop stuff below ...
let _c = CustomSmartPointer {
data: String::from("my stuff"),
};
let _d = CustomSmartPointer {
data: String::from("other stuff"),
};
println!("CustomSmartPointers created.");
drop(_c);
println!("CustomSmartPointer dropped before the end of main.");
// this should fail.
//println!("{:?}", _c);
// yep, it does.
}
fn hello(name: &str) {
println!("Hello, {name}!");
}
Another thing that ended up biting me in the ass was Non-Lexical Lifetimes (NLLs). My code from Chapter 8 (on HashMaps):
use std::collections::HashMap;
fn print_type_of<T>(_: &T) {
println!("{}", std::any::type_name::<T>())
}
fn main() {
let mut scores = HashMap::new();
scores.insert(String::from("Red"), 10);
scores.insert(String::from("Blue"), 20);
let score1 = scores.get(&String::from("Blue")).unwrap_or(&0);
println!("score for blue is {score1}");
print_type_of(&score1); //&i32
let score2 = scores.get(&String::from("Blue")).copied().unwrap_or(0);
println!("score for blue is {score2}");
print_type_of(&score2); //i32
// hmmm... I'm thinking score1 is a "borrow" of memory "owned" by the
// hashmap. What if we modify the blue teams score now? My gut tells
// me the compiler would complain, since `score1` is no longer what
// we thought it was. But would touching the score of Red in the hash
// map still be valid? Let's find out.
// Yep! The below two lines barf!
//scores.insert(String::from("Blue"),15);
//println!("score for blue is {score1}");
// But can we fiddle with red independently?
// Nope. Not valid. So... the ownership must be on the HashMap as a whole,
// not pieces of its memory. I wonder if there's a way to make ownership
// more piecemeal than that.
//scores.insert(String::from("Red"),25);
//println!("score for blue is {score1}");
// And what if we pass in references/borrows for the value?
let mut refscores = HashMap::new();
let mut red_score:u32 = 11;
let mut blue_score:u32 = 21;
let default:u32 = 0;
refscores.insert(String::from("red"),&red_score);
refscores.insert(String::from("blue"),&blue_score);
let refscore1 = refscores.get(&String::from("red")).copied().unwrap_or(&default);
println!("refscore1 is {refscore1}");
// and then update the underlying value?
// Yep. This barfs, as expected. Can't mutate red_score because it's
// borrowed inside the HashMap.
//red_score = 12;
//println!("refscore1 is {refscore1}");
// what if we have mutable refs/borrows though? is that allowed?
let mut mutrefscores = HashMap::new();
let mut yellow_score:u32 = 12;
let mut green_score:u32 = 22;
let mut default2:u32 = 0;
mutrefscores.insert(String::from("yellow"),&mut yellow_score);
mutrefscores.insert(String::from("green"),&mut green_score);
//println!("{:?}", mutrefscores);
let mutrefscore1 = mutrefscores.get(&String::from("yellow")).unwrap();//.unwrap_or(&&default2);
//println!("{:?}",mutrefscore1);
println!("mutrefscore1 is {mutrefscore1}");
// so it's allowed. But do we have the same "can't mutate in two places"
// rule? I think so. Let's find out.
// yep. same failure as before. makes sense.
//yellow_score = 13;
//println!("mutrefscore1 is {mutrefscore1}");
// updating entries...
let mut update = HashMap::new();
update.insert(String::from("blue"),10);
//let redscore = update.entry(String::from("red")).or_insert(50);
update.entry(String::from("red")).or_insert(50);
//let bluescore = update.entry(String::from("blue")).or_insert(12);
update.entry(String::from("blue")).or_insert(12);
//println!("redscore is {redscore}");
//println!("bluescore is {bluescore}");
println!("{:?}",update);
// hmmm.... so we can iterate one by one and do the redscore/bluescore
// dance, but not in the same scope I guess.
let mut updatesingle = HashMap::new();
updatesingle.insert(String::from("blue"),10);
for i in "blue red".split_whitespace() {
let score = updatesingle.entry(String::from(i)).or_insert(99);
println!("score is {score}");
}
// update based on contents
let lolwut = "hello world wonderful world";
let mut lolmap = HashMap::new();
for word in lolwut.split_whitespace() {
let entry = lolmap.entry(word).or_insert(0);
*entry += 1;
}
println!("{:?}",lolmap);
// it seems like you can only borrow the HashMap as a whole.
// let's try updating entries outside the context of a forloop.
let mut test = HashMap::new();
test.insert(String::from("hello"),0);
test.insert(String::from("world"),0);
let hello = test.entry(String::from("hello")).or_insert(0);
*hello += 1;
let world = test.entry(String::from("world")).or_insert(0);
*world += 1;
println!("{:?}",test);
// huh? Why does this work? I'm borrowing two sections of the hashmap like before in the update
// section.
// what if i print the actual hello or world...
// nope. barfs still.
//println!("hello is {hello}");
// I *think* what is happening here has to do with lifetimes. E.g.,
// when I introduce the println macro for hello variable, the lifetime
// gets extended and "crosses over" the second borrow, violating the
// borrow checker rules. But, if there is no println macro for the hello
// variable, then the lifetime for each test.entry is just the line it
// happens on.
//
// Yeah. Looks like it has to do with Non-Lexical Lifetimes (NLLs), a
// feature since 2018. I've been thinking of lifetimes as lexical this
// whole time. And before 2018, that was correct. Now though, the compiler
// is "smarter."
//
// https://stackoverflow.com/questions/52909623/rust-multiple-mutable-borrowing
//
// https://stackoverflow.com/questions/50251487/what-are-non-lexical-lifetimes
//let
}
What are Rust's exact auto-dereferencing rules?
I'm learning/experimenting with Rust, and in all the elegance that I find in this language, there is one peculiarity that baffles me and seems totally out of place. Rust automatically dereferencesStack Overflow
I honestly like the cognitive load. Just not when I am at the workplace, having to deal with said load, with the office banter in the background and (not so) occasionally, being interrupted for other stuff.
And my cognitive load is not even about the memory allocations, most of the time.
Off topic:
I think, if one is seriously learning programming from a young age, it is better to start with C, make a project, big enough to feel the difficulty and understand what the cognitive load is all about and get used to it, hence increasing their mental capability. Then learn the memory safe language of their choice.
I never made a big enough project in C, but you can get to feel the load in C++ too.
The cognitive load of writing safe C, and the volume of extra code it requires, is the problem of C.
Oh no, i'm having a meltdown with all the cognitive load...
Build all the fancy tools you want. At the end of the day if you put a monkey at the wheel of a Ferrari you'll still have problems.
Nice that Rust is memory-safe, use it if you want, but why the insistence on selling Rust via C is crap? Doesn't earn you any points.
How about rustaceans fork the kernel and once it's fully Rust-only then try and get it to be used instead of the current one... win-win, eh?
No idea what you’re being downvoted. Just take a look at all the critical CVSS scored vulnerabilities in the Linux kernel over the past decade. They’re all overwhelmingly due to pitfalls of the C language - they’re rarely architectural issues but instead because some extra fluff wasn’t added to double check the size of an int or a struct etc resulting in memory corruption. Use after frees, out of bounds reads, etc.
These are pretty much wiped out entirely by Rust and caught at compile time (or at runtime with a panic).
The cognitive load of writing safe C, and the volume of extra code it requires, is the problem of C.
You can write safe C, if you know what you’re doing (but as shown by the volume of vulns, even the world’s best C programmers still make slip ups).
Rust forces safe(r) code without any of the cognitive load of C and without having to go out of your way to learn it and religiously implement it.
You've been blue pilled by null. Once over the hurdle, it's very eloquent.
Null is ugly. Tony Hoare apology for inventing it should be enough reason to learn to do better.
I admit I'm biased towards C-languages out of sheer personal preference and limited exposure to Rust but I am wondering, are there any major technical barriers to Rust replacing these languages in it's current form anymore?
I know there has been a lot of movement towards supporting Rust in the last 6 years since I've become aware of it, but I also get flashbacks from the the early 00's when I would hear about how Java was destined to replace C++, and the early 2010's when Python was destined to replace everything only to realize that the hype fundamentally misunderstood the use case limitations of the various languages.
Its mainly a matter of stabilizing existing features in the language - there are rust modules in the linux kernel as of 6.1 but they have to be compiled with the nightly compiler.
Rust is a very slow moving , get it right the first time esque, project. Important and relatively fundamental stuff is currently and has been useable and 99% unchanging for years but hasnt been included in the mainline compiler.
Also certain libraries would be fantastic to have integrated into the standard library, like tokio, anyhow, thiserror, crossbeam, rayon, and serde. If that ever happens though itll be in like a decade.
Some next level deaf going on. That's not what was being discussed.
The defensiveness proves just how out of touch and unqualified to comment some people are.
What compromise? Half code should be in rust?
What does this even have to do with rust developers,
The language rust gives us the ability to have more compile time checks, and why is that a bad thing. Do you like security issues in your OS because some dev forgot to handle pointers correctly?
That was what he was talking about at the conference, he literally asked for help about how things work, so he could write better APIs that they are more comfortable using.
But the response was we don't want to write rust.
If it were poorly designed and used exceptions, yes. The correct way to design smart constructors is to not actually use a constructor directly but instead use a static method that forces the caller to handle both cases (or explicitly ignore the failure case). The static method would have a return type that either indicates "success and here's the refined type" or "error and this is why."
In Rust terminology, that would be a Result<T, Error>
.
For Go, it would be (*RefinedType, error)
(where dereferencing the first value without checking it would be at your own peril).
C++ would look similar to Rust, but it doesn't come as part of the standard library last I checked.
C doesn't have the language-level features to be able to do this. You can't make a refined type that's accessible as a type while also making it impossible to construct arbitrarily.
Dude what are you on about, there is no rust programmer that want to teach fucking rust to anyone who doesn't want learn...
This has nothing to do with C vs Rust, this has to do with security and enabling more people to develop stuff for Linux.
These so called kernel maintainers you see in the conference are only mainting the parts that they use for their filesystem, they are mainting the API, they are paid by companies who have sold support for ext4, xfs or brtfs etc.. . Of course they don't want to make their jobs any harder by learning a new language.
And of course they obfuscate the API with random naming and undocumented usage, because they want to make it hard for anyone else using trying to use the APIs.
If they don't want to be part of the improvement, then go do something else. Yes rust is better than C for this, because guess what - there are still CVEs being made, because it's impossible to catch everything with you eyes.
That's insightful, thank you. It wasn't hard to follow, I did have these exact same "adventures" but I guess I forgot about them after I figured out the ways to do things.
Personally these kinds of things are exciting for me, trying to understand the constraints etc, so maybe that's also why I don't remember struggling with learning Rust, since it wasn't painful for me 😅 If someone has to learn by being forced to and not out of their own will, it's probably a lot harder
the crew on the Ship of Theseus would like a word with you. Because if you strip out every subsystem and replace them with a different language, everyone would still call it Linux and it would still work as Linux.
Linux isn't "a bunch of C code" it's an API, an ABI, and a bunch of drivers bundled into a monorepo.
You're going to need to cite that.
I'm not familiar with C23 or many of the compiler-specific extensions, but in all the previous versions I worked with, there is no type visibility other than "fully exposed" or opaque and dangerous (void*
).
You could try wrapping your Foo
in
typedef struct {
Foo validated
} ValidFoo;
But nothing stops someone from being an idiot about it and constructing it by hand:
ValidFoo trustMeBro;
trustMeBro.validated = someFoo;
otherFunction(trustMeBro);
Or even just casting it.
Foo* someFoo;
otherFunction((ValidFoo*) someFoo);
That's not the point, though. The point is to use a nominal type that asserts an invariant and make it impossible to create an instance of said type which violates the invariant.
Both validation functions and refinement types put the onus on the caller to ensure they're not passing invalid data around, but only refinement types can guarantee it. Humans are fallible, and it's easy to accidentally forget to put a check_if_valid()
function somewhere or assume that some function earlier in the call stack did it for you.
With smart constructors and refinement types, the developer literally can't pass an unvalidated type downstream by accident.
I hate how I can't do everything I imagine in rust.
But researching about why something isn't possible, makes me realize that the code should never be wroten like the way I did... so I can't blame rust for dissallowing me this.
Azure Linux In, CentOS Out: LinkedIn Switches its Server Operating System
As part of a massive migration campaign, LinkedIn has successfully moved their operations to Microsoft's Azure Linux as of April 2024, ditching CentOS 7 in the process and taking advantage of a more modern compute platform.As many of you might already know, back on June 30, 2024, CentOS 7 reached the end-of-life status, resulting in no new future updates for it, including fixes for critical security vulnerabilities.
...
The developers have gone with the high-performing XFS filesystem, which was made to work with Azure Linux to fit LinkedIn's use case. In their testing, they found that XFS was performing well for most of their applications, except Hadoop, which is used for their analytics workloads.When they compared the issues that cropped up, XFS came out as a more stable and reliable choice than the other candidate, Ext4.
...
Additionally, LinkedIn's MaaS (Metal-as-a-Service) team has developed a new Azure Linux Image Customizer tool for automating image generation, that takes an existing generic Azure Linux image, and modifies it to use with a given scenario. In this case, a tailored image for LinkedIn.
LinkedIn Engineering Blog: Navigating the transition: adopting Azure Linux as LinkedIn’s operating system
Azure Linux In, CentOS Out: LinkedIn Switches its Server Operating System
LinkedIn embraces Microsoft's Azure Linux for its hosting requirements.Sourav Rudra (It's FOSS News)
like this
originalucifer and ShaunaTheDead like this.
Microsoft has had an impressively positive impact on Linux, including the kernel directly. It started ramping up about 15 years ago. They were the 5th highest contributor to the 3.x kernel.
I recall reading about them working on improving Linux's MS related features, like fat32 support, samba, and things to make Linux run better in hyper-v that also helped performance overall.
Top Five Linux Contributor: Microsoft
While you shouldn't expect Windows to be open-sourced in your life-time, Microsoft—yes, Microsoft—is the fifth largest code contributor to Linux 3.0.Steven Vaughan-Nichols (ZDNET)
Depends how you define evil? If you mean they’re continuing to Linux in an effort to ensure it works well in their Azure platform which they can charge money for using, then yes?
They’re making all the right decisions though, they know that there is great demand for Linux in the server market, and are happy to allow it to run on their cloud platform to ensure viable competition with the other big players (AWS & Google).
Then in turn, their contributions benefit the open source community as a whole.
The fact they’ve also made .NET Core cross platform and another step in the right direction, as well as making VSCode cross platform too.
What would be nice is if they made desktop Office available. It’s one of the few subscription models that would probably work out well for them as many businesses would probably be happy to run Linux clients with native Office 365 support.
All valid points.
I believe in this instance, it’s mainly because they have figured out a way to profit off Linux and that is via their cloud hosting platform. As long as they’re making money, it’s probably fine.
So, somebody that was generating no revenue for Red Hat is not generating revenue for Red Het? Sounds like a real catastrophe for them.
Also, if I had to guess, I would say that Azure Linux is based on CentOS Stream. So, whatever “halo” they had before is mostly still in place.
Most importantly though, LinkedIn is owned by Microsoft as is Azure Linux. So I am not sure what kid of bellwether this is.
Are they most using Azure Linux? Or Azure? If Azure, no headline. If they are not using Azure, why not? That would be the headline here.
So, somebody that was generating no revenue for Red Hat is not generating revenue for Red Het? Sounds like a real catastrophe for them.
I'm sure that's how they're thinking. It will cause their platform to slowly fade into irrelevance though.
CentOS 7 reached the end-of-life status, resulting in no new future updates for it, including fixes for critical security vulnerabilities.
Wow are people dumb. We specifically chose the non-IBM source for continuing updates, so that's two counterexamples to whatever this chucklenuts is pushing.
But - speaking as someone who's used RHL since 98 and rhel since 3, el8 is so sketchy and el9 is just not worth it. I'll do Rocky if I have to do anything, as at least it uses the better packaging - albeit requiring to mimic RH's use in the dumbest way to date with a version-switching that pretends the method they fucking invented for doing that better doesn't exist, the same as PCLinuxOS that does it better every day also doesn't exist.
I just hope PCLinuxOS can get a good oVirt/pve template packered before it loses its opportunity to show off how insanely great it is.
reshared this
Tech Cyborg reshared this.
*Safer languages
Also both produce single binaries (as opposed to interpreted languages like php, python, js), which is so much easier to deal with for maintenance.
Also both produce single binaries (as opposed to interpreted languages like php, python, js), which is so much easier to deal with for maintenance.
This is the reason for me.
Whenever you have applications were implementations are plentiful the only real differentiation you can do without creating a different user experience is the technologies used to develop it. The importance of which in people's perspective is several things, mostly supporting technologies they like and want to see grow and possibly being skilled in the underlying technologies to actually contribute back.
Certain technologies are also just hot garbage, I swear to God if I have to install another electron app for some messaging platform I will shit myself.
like this
DaGeek247 likes this.
Actually... I do :/ Even though I have no idea of the programing realm, most of my self-hosted service via docker written in Go tend to be more "reliable", faster, easy to use?
I'm always happy to self-host somthing written in golang. But I do agree, its the new age "I use arch BTW" meme for programing language !
It's a sign of modern approach to solve a problem. Languages like Go and Rust have by definition and by principle less memory and security issues (not talking about other problems), which is otherwise a huge problem in C in example. So it's good to know the language being used.
The language itself can play a huge role for non programmers as well. In example Python can be a pain to use in some environments or it can get slow (although for something like RSS reader speed would be fine). For people using software from source in example, to compile themselves can have an impact too. It gets even more interesting for people who might want to look at the code itself, audit or edit it. In example if a program is written in Python, I know that I can read and make changes to it. In C, I would not be that confident.
Overall for most people it does not matter. That's true. For people like you, you can just ignore it. Not every title is for you. The title is for those who care about the language.
While I agree that there are not enough good local RSS readers, I also think that some kind of state syncing should exist. I understand why all these hosted server side RSS readers exist, but what I really want is some kind of standard way of doing local first RSS (and not just RSS, this could apply to everything we use «as a service», but let's keep this about RSS for now).
Imagine an RSS reader that keeps its state in a standard, well documented way, like having a folder where plaintext files keep a list of subscriptions, list of articles that are marked as read, tagged and starred articles etc., and you could just use syncthing or git to keep this folder in sync on all your devices, and you could use any RSS reader you want (be it on an android, windows, linux or anything else that follows the standard) and be able to seamlessly read your feeds and have the same state everywhere.
A man can dream I guess…
I don't use multiple users or ldap, but miniflux supports many users. And based on this pull request it seems to have the necessary interface for ldap?
github.com/miniflux/v2/pull/57…
I enjoy and recommend miniflux for rss reading.
I have used it for a long time now together with flux news android app. I also use save integration with wallabag sometimes.
Implement support for authentication via Auth Proxy by pborzenkov · Pull Request #570 · miniflux/v2
Auth Proxy allows to authenticate a user using an HTTP header provided by an external authentication service. This provides a way to authenticate users in miniflux using authentication schemes not ...GitHub
La verità sull’arresto politico di Pavel Durov | World Politics Blog
La verità sull’arresto politico di Pavel Durov
L’arresto di Pavel Durov in Francia sta suscitando una tempesta di polemiche internazionali, con numerose voci che denunciano la natura politica del caso. Tra accuse di censura e attacchi all…World Politics Blog
UltimaDark: Firefox Web Extension that uses agressive technique to get dark mode everywhere
GitHub - ThomazPom/Moz-Ext-UltimaDark: Web Extension that uses agressive technique to get dark mode everywhere
Web Extension that uses agressive technique to get dark mode everywhere - ThomazPom/Moz-Ext-UltimaDarkGitHub
like this
karashta and like this.
reshared this
Tech Cyborg reshared this.
I seriously loved dark reader & already used it for years but sometimes it render website into dark mode in weird ways
like this
VintageGenious likes this.
Interesting! I've recently struggled with dark reader memory leaks so I'll check this out
Edit: No scheduled/automatic follow system mode yet, but I'll keep watching for updates
like this
VintageGenious likes this.
Are you the developer? Because with the fact that you're hawking for this program everywhere on Lemmy (5 different communities) is making me think so
Which if that is the case, I can understand you wanting to get your work out there but you need to be transparent
Threads deepens its ties to the open social web, aka the ‘fediverse’
Threads deepens its ties to the open social web, aka the 'fediverse' | TechCrunch
Meta announced Wednesday that users on Threads will be able to see fediverse replies on other posts besides their own.Sarah Perez (TechCrunch)
threads.net
(and optionally all instances that do not do the same).like this
falseprophet and Kraiden like this.
A
is defederated from Threads, but federates with B
. And B
federates with Threads. Now Meta can cash out on your data via B
.like this
Kraiden likes this.
yes, I also get the feeling this would not work in a compliant setup but it seems like a good idea to test this in e.g. a federation test suite.
Maybe @evanprodromou would know how this should work, or would know of someone who might be testing this kind of scenario.
Now Meta can cash out on your data via B
.
Everything we're posting is public, anyone can cash in on it regardless of who you defederate.
like this
troed likes this.
Threads has about 200 million monthly users, 33 million daily users. The fediverse has just under 1 million monthly users. Do you really think that 0.5% has any relevance to Meta?
Also: What data do you think Meta will be able to use - and for what? They can't use this data to serve you ads, simply because they don't know you. They can't track you around the web because you don't have a Meta account.
Threads has about 200 million monthly users, 33 million daily users. The fediverse has just under 1 million monthly users. Do you really think that 0.5% has any relevance to Meta?
Do you really think they would care about those users when they extend and extinguish the Fediverse?
The 0.5% on fedi are more likely to be the technical users that actually produce usable content.
How many thread users are bots or passive consumers? They may be good for serving ads to, but they're not so food at retaining and attracting users
Exactly. Proudly presented by fedipact.veganism.social/ and fedipact.online/why among others.
You can read the human rights abuses that meta is facilitating above.
#Fedipact - The instances blocking Zuckerberg's Threads.net
An interactive list to see which ActivityPub (Matodon, Lemmy, FireFish, etc) instances are federating with Threads.netfedipact.veganism.social
So... Instances like lemmy.world, that this is posted to?
yes, I'm federated with them as well, but shit like this is why I dislike them being so big. In the end all the smaller instances can either have strong morals and integrity, or have access to the largest amount of content in the fediverse, but not both.
like this
troed likes this.
Also I think that one should ask the question, what Meta could do with the data and what it is doing with the data of their users. For their users they use the usage data to present them a feed that the users appreciate. Also they use it to place ads inside of their apps. Also they use the data to serve you ads outside of their system on ad networks that use data from Meta.
All of this is technically not possible for Fediverse users.
like this
troed likes this.
Public is not the same as public domain.
I'm not a lawyer, but Federation would probably imply consent to sharing the data. Whereas defederation would strongly imply you're not okay with sharing the data with that entity.
What I think or what they "may" do is irrelevant regarding public data. What matters is sending a clear signal what you are and are not okay with.
Whether you actively participate in helping them get your data or not might not effectively matter in them acquiring it, but it may heavily impact the fine they get for it afterwards. You might be okay with them getting your data for free, but I'm not, sweet summer child.
Who's the artist of the image? I like the art style
Also the scared Lemmy and mastodon :( I feel bad for them
Looks like Sepia (Peertube), 藍 'Ai' (Misskey), Mastodon, Fox Tan (Pleroma), and Lemmy.
peppercarrot.com/en/viewer/mis…
THE ENSHITIFICATION OF EVERYTHING MUST NOT INCLUDE THE FEDIVERSE PLEASE
thank you for coming to my Ted talk
Fuck the Zucc
This won't affect the Fedipact instances like dbzer0, right?
On a technical level, no. You're right. It would not be possible to capture the protocol entirely. But meta has serious cash to spend on marketing Threads. If they can capture enough of the ActivityPub market and were to collab with Bluesky and use their protocol (I forget the name), or make their own, it's only a matter of time before the drop activitypub and force users either to join threads or lose access to their users.
Threads and Bluesky are kind of an existential threat to ActivityPub given Meta and Twitter's track record with Open Graph, bootstrap, and public api's.
Unpopular opinion: Threads deepening ties to the fediverse is actually a really good thing for the fediverse as a whole.
I feel like realistically the fediverse will never gain mainstream adoption on its own. People like to believe in this beautiful future where the fediverse "wins out" and beats all the major social media networks, but I just don't see this happening. This is why I think Threads is actually really important for the growth of the fediverse and realistically one of the only paths to broad adoption.
Beyond this, I also separately really like the idea of being able to use a platform like Threads with my irl friends while still having access to open source clients etc. (ie. preventing situations like the Twitter API debacle which fucked over 3rd party clients)
Sure, to be pedantic, I could clarify: "I think the fediverse will realistically never gain mainstream adoption without a large organization with either a massive existing userbase or the ability to invest in large organized marketing efforts."
This could be technically through some Fediverse collective that receives a large amount of donations, but I don't see this as very likely to happen and even with organized marketing efforts there's no guarantee of effectively converting this into adoption.
It's awesome that Threads federate with Mastodon. I follow several accounts on Threads I otherwise wouldn't be able to, just as I bridge with Bluesky.
Me federating with Threads makes absolutely no difference whatsoever to what they could or could not do with my data.
troed:
It's problematic when people conflate their gut feelings for facts.
Also troed:
I understand activitypub better than creator of Lemmy
What has argument from authority to do with facts?
You only get posts from those you subscribe to. That's the "pull" part.
Other than general assumptions and track-record and being a business that sells user data, is there any actual evidence or clear and present ways that Meta could do harm to the Fediverse / its users?
All I've read is that it seems suspicious and we shouldn't trust them. I totally agree with that but I'd like someone to give some examples of what they could do as a member of the network. I've read how they could post advertising – how would that work?
I ask because, like the previous comment, the idea of following people from other, more popular, federated platforms from the comfort and security of "open source" (?) platforms is appealing. At the same time, if this is leaving me and my platform vulnerable to something specific, I'd like to either proceed with caution or not proceed at all.
The biggest loss for me when leaving Twitter was losing access to so much happening in my community and local news and government organizations. They're all still posting on Twitter and Facebook and Instagram and not moving to the open social web. More and more are moving to Threads though so it would be nice to maintain / regain exposure.
2023 lanserades ett tillägg som gjorde det möjligt för publiceringsverktyget WordPress att kommunicera med hjälp av ActivityPub-protokollet. Det innebär att en WordPress-sajt kan bli en instans i Fediversum på samma sätt som en exempelvis Mastodoninstans eller en Pixelfedinstans.
Åklagare har väckt åtal mot koranbrännaren Salwan Momika och hans kompanjon Salwan Najem för hets mot folkgrupp efter fyra koranbränningar på olika platser i Stockholm under sommaren 2023.
AlternativeTo: a resource I wish I would have had when I started using Linux
AlternativeTo is a site I use quite a bit. Personally I use it when I get fed up with an Android app having too many ads / creepy network behavior or want to find a self-hostable version of a freemium service.
It has filters for free, open source, platform type, etc. From my understanding it's all crowd sourced, so if you disagree with a rating put in a vote! Sharing this in hopes that others find it as useful as I do.
If you know of similar or better resources I would love to hear about them.
Edit: many people are noting that the comments and reviews are out of date. I agree! Despite that I still find it to he useful. It would be great if this little bit of visibility gets more folks engaged over there to improve it.
like this
themadcodger, VintageGenious, timlyo and floppingfish like this.
reshared this
Tech Cyborg reshared this.
like this
timlyo likes this.
I've also found great options in the awesome lists on github. Especially awesome self-hosted if we're talking software.
I thought I remember an alternativeto-like site geared towards cli, but I couldn't find it last time I looked. LMK if that rings a bell for anyone.
GitHub - sindresorhus/awesome: 😎 Awesome lists about all kinds of interesting topics
😎 Awesome lists about all kinds of interesting topics - sindresorhus/awesomeGitHub
Awesome Privacy
Awesome Privacy - A curated list of services and alternatives that respect your privacy because PRIVACY MATTERS.awesome-privacy
The best thing I have found on there:
How to navigate F-Droid and the huge number of apps.
alternativeto.net/list/28655/t…
*disclaimer: I am not the author of this list
privacyguides.org/en/android/o…
privsec.dev/posts/android/f-dr…
F-Droid Security Issues
F-Droid is a popular alternative app repository for Android, especially known for its main repository dedicated to free and open-source software.PrivSec.dev Contributors (PrivSec - A practical approach to Privacy and Security)
Thanks for the links, something I have not really thought about. I pretty much assume very low security/privacy on all modern smartphones anyway(commercial or FLOSS ecosystems).
F-Droid is a handy way to find and support devs who are sharing their expertise.
Certainly, use the download-channels that you are comfortable with.
As mentioned on that page, F-Droid and IzzyOnDroid can link you to many decent FLOSS apps. It's an easy way to be exposed to a large amount of free software.
I always thought this and all the other sites like it were just SEO bait. The quality of the alternatives is no better than random, though I guess you can discover software you didn't know existed. One example: I'm always looking for an alternative to Roon. Like Plex for music, plus you can add in tidal or qobuz, so you can essentially listen to anything on your own library, or the streaming services, from anywhere. It also has an incredible metadata system, letting you view for example, all the players on a jazz album, view bios of every one, and easily start to check out some new music that way. It's unbelievably flawed and poorly run though.
What is alternativeto.net's suggestion as a replacement? Fucking VLC Media player. The only real contender is PlexAmp, or if you want something similar but only for classical music (and without self hosting your own library), there's idagio. results like that make me think it's totally useless
like this
VintageGenious likes this.
VintageGenious likes this.
It's mostly that it's just an older site and the voting/review system goes back by over a decade. Much of the information you're gonna get on there is just dated, pure and simple, and that reflects in the rankings.
And as you said, the categories aren't curated well enough. Too many unrelated suggestions.
AlternativeTo is crowdsource, so one individual might find software A as suitable alternative, while others are not.
The same way that some people find GIMP enough to replace Photoshop, while others prefer Affinity Photo, Paint.NET, or Photopea.
I personally find so many cool underrated FOSS software, such as Inochi2D, AB Download Manager, Miria, OpenUTAU, Our Paint, Mihon, and Wick Editor.
Wikipedia can also be useful to find software - e.g.:
or look at the Wikipedia page for whatever you want to replace and see if it's in a category such as en.wikipedia.org/wiki/Category…
You can even do this with things that aren't software, e.g. Homebase -> UK home improvement stores -> Screwfix.
like this
VintageGenious and PandaInSpace like this.
It is actually useful?
In my experience it just looked like SEO farm that polluted my search results with irrelvant machine-generated content.
Totally. I often go directly to it to find applications.
It's how I found kdenlive, it's how I found audiobookshelf, etc.
Yep! There are so also many niche applications people never heard.
I regularly checking it for any FOSS alternative to any closed-source software. For example: Inochi2D, AB Download Manager, Miria, OpenUTAU, Our Paint, and Wick Editor.
Only issue with alternativeto is the comments and reviews are all dated, some by over 10 years, and often don't reflect the current state of the software.
A lot of the information on the site just feels very stale in general.
For that, one should test all the software personally.
Of course if you use something with only the old reviews, leave a new one! But the fact is, utility of the service is often dampened due to this fact.
That's not really how the comments on alternativeto work. They are relative.
If you got to spotifys page, it will list similar services, each with their own comments, and the comments under youtube music, for example, will be about how it compares to spotify.
So, to leave useful comments, you only have to know how a given piece of software compares to what you used before. You don't comment on how a given thing compares to everything else, only to one thing at a time.
Then, as other people browse the alternatives, they can use those individual comparisons to navigate their way to what they need. Stuff like "this can't replace that for this use-case, because reason, but it does this other stuff" is extremely useful when looking for something that does what you're looking for.
Find Open Source Alternatives to commercial software | Open Source Alternative - osalt.com
osalt.com helps recommend a open source software alternative or replacement for commercial products and even shareware. Remember that open source software is also a freeware alternative.www.osalt.com
Open Source Alternatives To Proprietary Software
The world's largest directory for open source software. Discover 500+ popular open source alternatives to proprietary software products. 100% free.www.opensourcealternative.to
Newly added to the Trade-Free Directory:
endoflife.date
End-of-life (EOL) and support information is often hard to track, or very badly presented. endoflife.date documents EOL dates and support lifecycles for various products.
endoflife.date aggregates data from various sources and presents it in an understandable and succinct manner. It also makes the data available using an easily accessible API and has iCalendar support.
endoflife.date currently tracks 328 products.
#informationAboutDatesAndSupportLifecyclesForVariousProducts
More here:
directory.trade-free.org/goods…
endoflife.date
End-of-life (EOL) and support information is often hard to track, or very badly presented. endoflife.date documents EOL dates and support lifecycles for various products. endoflife.Trade-Free Directory
TROM reshared this.
Paying for software is stupid… 10 free and open-source SaaS replacements
Remember, for every paid SaaS, there is a free open-source self-hosted alternative. Let's take a look at 10 FOSS tools designed to replace popular tools like MS Office, Notion, Heroku, Vercel, Zoom, Adobe, and more.
...
⭐ Repos mentioned
LibreOffice
LibreOffice related projects. LibreOffice has 26 repositories available. Follow their code on GitHub.GitHub
reshared this
Tech Cyborg reshared this.
like this
massive_bereavement and magic_lobster_party like this.
like this
TimeSquirrel likes this.
like this
magic_lobster_party likes this.
like this
massive_bereavement likes this.
Makes a post about FOSS alternatives
Links a YouTube video
Ironic.
I don't like statements like "paying for software is stupid". Developers for Free software have this long standing issue that many people don't want to pay them. Paying and using closed source proprietary software is stupid, especially if there is good free and open source libre alternatives.
We need to figure out a monetization plan how to make people want to pay for free software. This will not only incentivize doing Free software, it also makes it possible for people making a living out of it. Everyone benefits from it!
like this
KaRunChiy likes this.
Public Money, Public Code
Public Money, Public Code - A campaign for releasing publicly financed software as Free Softwarepubliccode.eu
aGPLv3 is a good business model. If companies are using your kit in their closed source projects, they need to pay you
donationware is abandonware. We brand it Apache2.0 or MIT
I just want you to know how much I appreciate the fact that you typed out the list of repos mentioned in the video, since you know many people are not going to watch the video but still want the information.
I mean this. Thank you. You are awesome and deserve cake.
eg LibreOffice and Adobe apps.
But I guess it only requires a different title as the list itself is useful
SAAS isn't about subscription perse although they have them of course. Its about "not needing to take care of".
It's software on "someone else's computer" just as with public cloud.
In a SAAS construct a provider does the hosting, computing, connection, install, configuration and maintenance. Absolving clients from that burden.
Comparing proprietary desktop applications (even with a subscription) with FOSS alternatives is useful, it's just not SAAS.
My understanding is roughly, for example:
- Microsoft Word desktop application: not SAAS.
- Microsoft Word online: SAAS (just like any other service accessible by browser but not a "localhost")
- Onedrive: SAAS, storage with local explorer integration.
- Exchange server on prem: not SAAS, increasingly diffucult to do.
- Exchange server by MS: SAAS
- Microsoft Outlook Classic for desktop: not SAAS.
- Microsoft Teams for desktop: SAAS although local install but its just another frontend instead of browser.
- Office365: SAAS but really a container for every tool in the MS online toolbox together.
Some caveats: Word handles spellchecker in their cloud and clippy 2024 (Copilot) integration blurs the line.
Paying for software is stupid… 10 free and open-source SaaS replacements
Find all the best dev content at https://daily.dev/fireshipOdysee
Remember, for every paid SaaS, there is a free open-source self-hosted alternative
CAD. Free solutions compared to commercial ones (SolidWorks, Inventor, Fusion360, Onshape) are like comparing Photoshop to an open source Paint clone.
like this
massive_bereavement and falseprophet like this.
An alternative video client. Mostly known for pulling add free youtube. But you can have several sources like patreon or nebula.
The app is free and source available but they ask you to buy a license if you like it.
It's made/supportes by futo
Edit: changed "open source" to "source available"
Ah thanks
A bit more context would have been nice but anyway
I was not aware of the distinction.
Grayjay is source available. But you are essentially not allowed to do anything with/to it.
Not triggered by this emotional outrage bait
it either costs your time or money or both. There is no situation where anything is free.
I'm currently fixing, not mine, repos. I have the skill level to fix other coders design issues. One at a time.
This is costing me time. Not just in doing the work, but all the time leading up to gaining the skillset to be at this level.
Put a price tag on that. (i'm not boasting; actually having to do this grind)
It’s very misleading to say “paying for software is stupid” and not consider the total cost of ownership. TCO includes things like infrastructure and maintenance. As an exec, I am constantly faced with two choices: free software that might do what I want or paid software that sort of does what I want. At face value, you would immediately tell me to get the free stuff. That’s where you miss TCO.
(Read the last paragraph if you think the business lens is bullshit)
Every FOSS solution I run requires me to deploy and maintain it. I only have so many hours in the day so at some threshold I have to hire more and more people to deploy and maintain. Integrating? That’s on me too because I’m using free software so now I need a resource to glue things together. My “free” option actually costs a portion of my engineering resources. I’m also on the hook for failures. Running my own ERP? I need to have support staff on-call to handle outages.
Every paid solution I run costs can require some of those things. Let’s ignore paid licenses and just focus on things I can completely outsource. This means I’m no longer on the hook for deployment and maintenance, so if I can show the cost of the paid software is less than my TCO, it’s a better deal. If I have a good relationship with the vendor, I might be able to delegate my integration needs to their product pipeline. I might be able to purchase a support contract that’s cheaper than running my own.
At some point every company will outgrow certain software. It’s a constant reevaluation of the costs of paid vs TCO of free and when I need to spend resources making it do something it doesn’t. A managed telemetry stack like Sumo or New Relic allows me to scale quickly but cheaply until I have the revenue to build an in-house team to instrument fucking everything.
The exact same logic applies to my time. I could run free everything. That comes with a higher TCO (usually). I say this as someone who has rebuilt dot files repos on the dot every three years and been running Linux since you could get it in a book at B Dalton at the indoor shopping mall so my tolerance for personal TCO is very high. However, I don’t change my own oil. It’s free! I could do it myself! I don’t want to. I buy certain things, like software, in my personal life because the TCO of FOSS is higher than I want to pay. I have outgrown Windows and Mac so I have some level required cost in Linux. I pay for some things like storage and routing solutions even though I could build and deploy and maintain all of that myself. Sometimes I just want my shit to work and not have to do it myself.
The problems and shortcomings of Cosmic (According to Hyprland Dev, Vaxry)
My first impressions with cosmic were terrible to say the least. Amongst the sea of complete dealbreaker issues (horrible stutter and lag, inability to use 240hz, mouse sensitivity not working, etc) the general implementations atm are janky to say the least, tons of empty menus, wasted space, small annoying bugs.I do realize it's an alpha, though, so I won't focus on the "small bugs" that can probably be fixed in 15 mins and will be fixed... in the future.
The current design language, IMO, is one of the worst I've seen in a while, but I don't wanna focus on this as it's all subjective, after all.
In this blogpost I want to focus on the broader ideology behind it, the direction and selling points.
...
Are we out of our minds? It's a barely functional alpha. All those quotes (and those are just a few) are at best running on "hopes and prayers" and not the actual experience. What foundation? Moving floating windows? MS Windows 3.0 had that. What potential? To... add more code? Just like to... anything at this stage?!
...
Cosmic is a desktop that, for now, to me, has no goal. Is not catchy. Has not much to offer. I don't know where System76 wants to take it, but if this doesn't change, it's not difficult for me to imagine a future where Cosmic ends up like Unity or Mir. Forgotten and barely used.It's receiving a lot of overly-positive reviews based on hopes and prayers, with little to be based on reality, or what we have right now.
This, adding to the aggresive marketing, makes the developers already quite hostile to negative feedback.
Cosmic is, in my opinion, on a not-so-good path at the moment, despite what those news outlets might claim.
...
Even though this is a quite negative blogpost, if any of the developers at Cosmic are reading this: Stop riding on the great reviews. Accept criticism, because you know full well Cosmic is very rough at the moment. Criticism is the thing that will drive your code forward.
reshared this
Tech Cyborg reshared this.
Vaxry is yes, and also is a nazi sympathizer.
Which is one of several reasons why FreeDesktopOrg banned him from using any resources
New information for Vaxry's toxicity: He is a Nazi · Issue #3775 · hyprwm/Hyprland
In the wayland discord server, Vaxry has just admitted that he thinks Nazis should be included. Do with this info what you will.GitHub
He was actually banned for condoning a toxic anti-trans culture on his Discord. Violating FreeDesktop's code of conduct.
He also once said "I do believe there could be arguments to sway my opinion towards genocide."
Hardly
Even on github, it doesn't take long to find an example of them just acting like an ass.
github.com/hyprwm/Hyprland/iss…
Counterpart for fakefullscreen · Issue #1817 · hyprwm/Hyprland
FakeFullscreen would currently send the fullscreen state but not alter the geometry. What I want is I want to alter the geometry to be fullscreened, but not the state. The main usage for this would...GitHub
I wouldn't consider that acting like an ass... users often make loads of super-niche requests that most people will never use, and then they're ungrateful when you don't do it, so I'm not really surprised at the tone of responses I read in that thread.
It's easy to judge someone when you haven't walked in their shoes.
This is a pretty clear cut case.
Vaxry is:
- a nazi sympathizer.
- openly supporting and giving space to hateful people
Edit: fixed first link
New information for Vaxry's toxicity: He is a Nazi · Issue #3775 · hyprwm/Hyprland
In the wayland discord server, Vaxry has just admitted that he thinks Nazis should be included. Do with this info what you will.GitHub
The first link doesn't show what you say it does.
I read the entire second link and I do not agree with your conclusions. Do you have any specific examples that illustrate them?
like this
sunzu2 likes this.
I'm not here to persuade you.
If the fact the FreeDesktop.org and Void linux have outright refused to interact with Hyprland over this is not enough and you still dont see how this is problematic to developers that might be alienated by how vaxry carries themselves, then you're not going to be convinced. Either that or you support the toxicity.
Edit: I fixed the link above now, but here it is directly
web.archive.org/web/2023110615…
New information for Vaxry's toxicity: He is a Nazi · Issue #3775 · hyprwm/Hyprland
In the wayland discord server, Vaxry has just admitted that he thinks Nazis should be included. Do with this info what you will.GitHub
I'm not here to persuade you
Then what was the point of your original comment? Saying "this person is awful because X" sounds an awful lot like persuasion to me...
That first link doesn't have anything like what you describe
Edit: they changed the link, the new one is at least relevant. The old link was just some random comment.
So basically "there weren't enough mean spirited reviews on Cosmic so I'll write my own". The OP can say he doesn't like it without making fun of the fanbase and trashing the company for checks notes reporting people's positive experiences.
Sooo... Cosmic is for the tiny sliver of users that want a DE... that tiles? Or those that buy a System76 machine and never change the DE?
Those that are fed up with GNOME and/or are looking for an alternative DE are a huge chunk of the Linux userbase. That's literally why they created it. With Gnome reducing customizability and having 5-year old bugs never get fixed and breaking necessary extensions every update, it was warranted.
it feels like the developers are already riding on the endorphins from all the praise and forget their software is after all in a rough state.
Why? They have public milestones and bug trackers while things seem to move at a good pace. At no point are they just sitting on praise doing nothing.
As you may know, I am the creator and lead developer of Hyprland and the entire ecosystem around it. You might say I'm biased, but I try to approach this from a quite objective side.Cosmic is not my direct competitor - Hyprland is a compositor for advanced users, Cosmic is (what it's meant to be, at least) a user-friendly DE.
The lady doth protest too much, methinks. Cosmic has Wayland and tiling, it has the backing of a profitable company, and he's very obviously salty about it.
like this
sunzu2 likes this.
like this
sunzu2 likes this.
The Hyprland devs (or one of them, I don't exactly know who) is toxic and known for it. Is that person this guy? But I give him his critique, regardless of who the person is. He even acknowledge his bias. Because we should look it from every angle; something we Linux should take this to heart and not forget in general.
I've seen a few posts / videos that criticize Cosmic get downvoted and bullied to hell, especially on Reddit.
As if it is a Cosmic only thing. This happens with everything.
System76 is not helping either, as they will proudly claim every 30 minutes that another person said "cosmic looks cool hehe!" and quote it on their twitter and website.
I don't understand this statement. What does he expect? That System76 talks shitty about Cosmic? What help does he refer to System76 should have done?
Are we out of our minds? It's a barely functional alpha.
Are you even a developer not recognizing what has been accomplished in such a short time? The team behind Cosmic not only works on a window manager, but on a whole desktop environment. And they needed to build the foundation by working on iced first (the GUI library behind Cosmic).
Basically, System76 will | grep "modern|cool|good" > ~/posts/newBlogpost.txt.
Ah, your toxic comments are so helpful. We are grateful for such a brain shit. (Commenters note: I just try to communicate with him, as that's the language he speaks.)
... At this point I have enough. I gave him the benefit of doubt, but was disappointed.
The Hyprland devs (or one of them, I don't exactly know who) is toxic and known for it. Is that person this guy?
Yes, it's this guy.
Couldn't finish it: too much whining, not enough substance.
I haven't tried hyprland yet but if this is the guy developing it than maybe I'm good.
Cosmic seems promising. Best of luck to system76, happy to see an alternative opinionated desktop getting some momentum.
like this
sunzu2 likes this.
I tried hyprland. It's okish and very (very) colorful.
For a tiling wm it's just over complex and does not integrate well with other tools. The configuration is a nightmare tbh.
If you want to get your fingers dirty on tiling WM using Wayland Sway is just fine. It's minimalistic and feels almost like i3.
There are valid criticism to be made about cosmic desktop, like
- their very liberal customization options that doesn't stop users from ruining the look of the desktop
- their insistent to theme libadwaita apps disregarding app developers wishes against supporting custom themes.
But those are just subjective criticism and it's still in alpha. All his "criticism" amounts to is whining about the software having glitches in alpha stage.
their very liberal customization options
That's a good point and makes it worth considering
There are valid criticism to be made about cosmic desktop, like*Lists two positives*
If that's the best example of criticism to be had about COSMIC, then it's practically flawless. Except of course, though, it isn't. Aside from the general lack of polish, I'd argue that there's not enough customization. E.g. things that should really be a slider or spin control (or better yet multiple sliders/spin controls) like corner radii are multiple choice button things (not to mention that the 'square' style is anything but.) Some of the sliders that do exist (particularly the size ones) have very few set points that make them essentially disguised drop downs. I could probably find dozens more things to criticize if I cared to sit down and nitpick everything.
their insistent to theme libadwaita apps disregarding app developers wishes against supporting custom themes
Libadwaita theming is not enabled by default. It involves going into experimental settings and I believe there is a warning about enabling it. This does not conflict with Don't Theme My App, that initiative's problem is that it's a problem when distros do it, not individual users who know the downsides.
I don't completely disagree with him on some points. Here's what I have to say:
Cosmic is not my direct competitor
Okay, I know what I just said but I completely disagree with this. COSMIC has tiling (sort of), has pretty much all the features of a tiling wm, is more user friendly to configure than Hyprland, is on Wayland so "modern", and has animations, rounded corners, etc so it's in direct competition with the main thing Hyprland brings to the table.
My first impressions with COSMIC were terrible
Umm.... alpha much? Or should I remind you of the sorry mess Hyprland was in its own early days?
I've seen a few posts / videos that criticize Cosmic get downvoted and bullied to hell, especially on Reddit.
It's Reddit. It's either tribalism or hivemind. Pick your poison. Eather way, the result is as you describe.
All those quotes (and those are just a few) are at best running on "hopes and prayers" and not the actual experience.
Man, I kinda wish nobody believed in Hyprland now. Those same points could have been applied to Hyprland but people believed and here we are. It almost sounds as if you're jealous of the team, or resources, or pace of development they have?
Someone might say "oh what are we supposed to say then", to which I say: simple. Say what you see. Claiming this is the next coming of God will hurt it more than help it.
Okay, I kinda agree. I think it's important not to be brutal to them. They have written not just a WM like you, they've written an f-ing Desktop! Apps, settings, and even the entire GUI library it's all written on, and based it on a completely new Compositor library, smithay, which they've also had to heavily contribute to. What you did can be done by any one person with enough drive, motivation and knowledge (except the independence rewrite, that would take an absolute doofus who can't simply apologise and treat humans normally. I often find myself hating people too, but I still give them the benefit of the doubt and a basic level of respect until they lose it. Maybe Hyprland could have been a leading force, a representative for tiling WMs in wlroots, pushing innovation forward and providing another point of view, but you fucking blew it. But I digress.)
Where do you go Cosmic? And why would you want to? So far, all I can see is three reasons: Rust, Tiling, "We'll implement what GNOME won't"
Is that any different to why other DEs exist? GNOME exists cuz simple, default, polished, GTK. KDE Plasma is powerful, modern, QT. Cinnamon is simple, more customisable, GTK. XFCE is minimal, customisable, GTK. COSMIC is Rust, Iced, Smithay, Tiling, customisable, Wayland-only (and thus Wayland-first), "We'll implement what GNOME won't". The way I see it, COSMIC has a lot going for it. But even if it didn't, wouldn't Tiling, A new voice for Wayland, and the first Wayland-only DE be enough?
Okay, I think I'll end it here, because I'm devolving into cheap bickering and personal insults. But what I see is that Vaxry is likely jealous and is trying to undermine what COSMIC has achieved.
Ignoring the original post, I wanted to pick up on what you said right at the end.
Something I've never understood is, what impact is using iced
going to have on app compatiblity? Are we going to need compatibility layers for GTK and QT, like with Cinnamon displaying QT apps, with the associated jankiness?
COSMIC is Rust, Iced, Smithay, Tiling, customisable, Wayland-only (and thus Wayland-first),
what is iced? i dont care about smithay, why should I? customisable as a feature? ever DE is except Gnome, I guess?
Vaxry tries to shit on another project.
The current design language, IMO, is one of the worst I've seen in a while, but
Qed. His posts should not get any attention. He is as narcissistic as toxic.
…he knows it’s an alpha, right? Right?
Can someone tell him that the main reason hyprland sucks is that there’s no metaphor for hiding a window, but leaving the app running? And tossing it to a not-currently-visible workspace isn’t a solution and is pretty damn asinine.
Also, create a settings GUI. This isn’t the 1960s.
Fedora KDE suddenly wont boot properly
I am running Fedora KDE 40 alongside Windows 11 23H2, (the PC in question is also sometimes used by a few other family members, which is the reason I still have Windows) When I tried restarting into Fedora today, everything appeared fine, I selected the normal boot fedora option in GRUB, and the normal loading screen showed up. to be then followed by the cursor appearing for a while before it simply disappears, the screen goes black & turns back on stuck on a screen which is completely black with a terminal-like cursor in the very top left, It will then stay stuck thet way until you forcibly turn off the power. This hasn't happened before. I tried a live boot and checked the partition... It dosen't seem any different than normal. One thing I did notice is that yesterday on the login screen the sleep and restart option where bugged out, but I wouldn't think that's relevant? Can anyone help. I'm not sure what could be happening.
EDIT: here are some pics of the logs, I still dont know why this happened or really what to do, I'm still fairly new to this
like this
ShaunaTheDead likes this.
That's not what I mean. You can just switch to a different tty console. Your default on boot is a graphical interface, but there are others ready and available.
dhiller.de/2020/02/13/switch-t…
dhiller.de | Homepage of Daniel Hiller
This article describes how to switch to console tty on Fedora Linux as the "normal" shortcuts don't seem to workwww.dhiller.de
Could be anything. Driver issues, memory issues, config issues..who knows.
Just check logs once you get logged in, and it should be easier to figure out.
alongside Windows 11 23H2
Wasn't there news of a Windows update breaking dual booting recently? Could be that?
Yeah but that broke GRUB and had a pretty specific error message associated with it. I don't think problems with grub look like what OP is describing (although I don't know enough to say for sure).
Anecdotally, I'm running a Fedora Atomic-based OS alongside Windows and that Windows update didn't cause any problems for me.
I checked the logs & found a few relevant entries. But it basically says that for some reason it cant initialise OpenGL backend, then stops wayland followed by all Qt processes failing causing any GUI elements to completely fail after that. What should i do now? I can't use dnf since the wifi isnt connected yet in the tty3 so should I try a repair from the live boot?
Are you using the rpm-fusion mesa drivers or Fedora's (assuming you use Intel / AMD card)?
You can connect to wifi via tty using nmcli command: nmcli --ask dev wifi connect CoolNetwork123
Laser
in reply to Leaflet • • •NoXPhasma
in reply to Laser • • •Laser
in reply to NoXPhasma • • •Maybe not, but doesn't really answer my question what this would be used for.
I'm not hating, just interested; my last knowledge was that if you wanted to play Direct3D 12 games, you'd need the proton fork. But I don't know many other things Direct3D is used for, so...
NoXPhasma
in reply to Laser • • •False
in reply to Laser • • •Laser
in reply to False • • •