• 2 Posts
  • 20 Comments
Joined 3 years ago
cake
Cake day: January 23rd, 2022

help-circle

  • vim isn’t required for any files, you just followed online tutorials for how to edit those files instead of RTFM

    terminal text editing is convoluted because it has to strike a balance between figuring out when a keypress is part of the text you’re typing, vs when it’s a command you’re using, and making sure that all the editor commands the designer wanted are accessible.

    vim is great because it allows for thousands more editing commands and macros, and much more customization of the editor, up to allowing plugins that emulate other functionality. As it stands, my setup basically functions as a full, lightweight-ish, multi-language IDE that rivals Emacs or Visual Studio.

    On top of all that, I don’t have to move my hands away from the homerow of keys to navigate or edit, which may not seem like much, but adds up to a lot of avoid typos and time saved from moving my hands to reach the arrows/delete/home/end/pgup/pgdn.

    Some examples:

    h, j,k,l move left, down, up, and right respectively, but they can be combined with a number to move that many rows or columns; e.g. 6j will move down 6 rows

    dd deletes a line, but using a number + d + a movement will delete that many characters/lines in the path of the cursor: e.g. 34dl will delete 34 characters to the right of the cursor, 12dk will delete 12 lines up.

    gg will take you to the first line, G will take you to the last, and number + either will take you to that line: e.g. 3275gg or 3275G will take you to line 3275

    and finally you can use /text or regex pattern you want to search for and Enter to search the document for the first occurence below your current location, and then use n to search for the next occurence, or N to search for the previous

    That doesn’t even scratch the surface (that’s just the cheatsheet, which only scratches the surface), but if you can get a handle on only what I’ve said, and switching between input and command mode (i and Esc respectively), the speedup to navigation alone will make it seem more sensible.

    And as always, don’t forget to :wq (write to file and quit)




  • On the Caveat Emptor (“Let the buyer beware”) side of things, I look at other metrics well before I rely on stars.

    How many contributors does it have? How many active forks? How many pull requests? How many issues are open and how many get solved and how often and how lively are the discussions? When was the last merge? How active is the maintainer?

    Stars might as well be facebook likes imo: when used as intended, they didn’t say much more than “this is what the majority of people like” (surprise, I’m on lemmy bc I have other priorities than what’s popular), now they mean nothing at all.



  • I will be using your example of Arch as a great stepping off point, because honestly imo the best way to learn is by having a project to work on

    1. RTFM - Read The Fucking Manual. Read the docs, read the code comments if need be. In the case of installing an OS, use the installation guide as a starting point; Arch’s is on their wiki, and links to several other sections that go more in-depth about what each step does and why it does it.

    2. DuckDuck it - if you don’t understand what something is or why you’re doing it, search it. If you understand it completely, search it anyway and check the docs because no you don’t, you just don’t know how little you know. If you know why we do something and what function it fulfills, but not how… Then you’re a power user.

    Using your example of commands from the internet, break the command down into as many parts as you can, and figure out what each part does. If there’s punctuation marks, don’t assume you know what those are doing. man [command's name] is your friend.

    1. Do all of the above as often as possible, no matter how slow it makes progress feel. Learning these things the proper way now will save you from days, weeks and months of troubleshooting in the future. I mean it, literally at every step of the process.

    2. secondary sources are invaluable, but for this it might help to get into the best way to self-educate. The only gospel are the docs and/or manual that were written by the code/OS maintainers - primary sources - everything else is opinion.

    Here’s a source i agree with on the best way to self-educate, but keep in mind even Artem is still just a secondary source.

    That being said, here’s a few secondary sources that helped me understand how OSes work and why:

    nand2tetris: build an operating system starting with logic gates and working your way up from there. It has a offshoot site that’s slowly being rolled out, that implements it all in a gamified interface: nandgame

    os-tutorial: build an OS from scratch

    Linux From Scratch: Learn everything about Linux by building your own distro from the kernel up.

    Unfortunately everything that taught about the behind-the-scenes aspects of OSes in general—and Linux in specific—were either projects like the above, or just seeing what came up in a DuckDuckGo, Youtube, forum, or wiki etc. search. Below are just resources that teach you about the “power user” level of knowledge, not “super user” but not your average user either.

    Fireships’ 100+ Linux Things you Need to Know: it’s not particularly good on its own, but it does introduce a lot of concepts and vocab for you to then look up elsewhere

    freeCodeCamp.org offers a lot of courses that will go over using Linux. None go too in-depth on the fundamentals of Operating Systems, but they will still introduce most of what you need to know for day-to-day use. I don’t want to link them all, but just search for linux freecodecamp on youtube and find one that piques your interest. The longer, the more in-depth—you don’t have to watch it all in one sitting.

    1. And of course, when all else fails: just ask. Participate in the community, don’t be afraid of looking stupid. The only people that get no respect are the ones who refuse to accept others’ help because they know better than those they’re asking to help them. (ignore the gatekeepers who want to project their own need for an identity onto you)


  • This reminds me of a manifesto I was reading for a proposed proletarian-run state. Comes from early 1900s, before the world went to shit because of the rise of fadcism. Particularly a few key points from their 25-point plan stood out to me:

    1. Abolition of unearned incomes [passive income, in today’s terms]. Breaking of debt (interest)-slavery.
    1. In consideration of the monstrous sacrifice of life and property that each war demands of the people, personal enrichment due to a war must be regarded as a crime against the nation. Therefore, we demand ruthless confiscation of all war profits.
    1. We demand nationalization of all businesses which have been up to the present formed into companies (trusts).
    1. We demand that the profits from wholesale trade shall be shared out.
    1. We demand an expansion on a large scale of old age welfare.
    1. We demand the creation of a healthy middle class and its conservation, immediate communalization of the great warehouses and their being leased at low cost to small firms, the utmost consideration of all small firms in contracts with the State, county or municipality.
    1. We demand a land reform suitable to our needs, provision of a law for the free expropriation of land for the purposes of public utility, abolition of land rent and prevention of all speculation in land.
    1. We demand struggle without consideration against those whose activity is injurious to the general interest. Common national criminals, usurers, profiteers and so forth are to be punished with death, without consideration of confession or race.

    […]

    1. The state is to be responsible for a fundamental reconstruction of our whole national education program, to enable every capable and industrious citizen to obtain higher education and subsequently introduction into leading positions. The plans of instruction of all educational institutions are to conform with the experiences of practical life. […] We demand the education at the expense of the state of outstanding intellectually gifted children of poor parents without consideration of position or profession.
    1. The state is to care for the elevating national health by protecting the mother and child, by outlawing child-labor, […]

    Oops, wait, that’s excerpted from The National Socialist Program

    Yeah, it turns out Nazis have always been willing to use socialist rhetoric to appeal to the working class. They know what they’re doing, but it’s only a matter of time before what’s determined to be for “the good of the workers” is coincidentally aligned with genocide and war and the greed of the ruling class…

    TL;DR Nazis were always on board with taxing the rich… Until they didn’t have any more competition, at which point it’s back to oligarchy (and genocide, lots and lots of genocide).



  • I came here because of the clickbait title, ready to lambast thunderbird for the empty promises… But it turns out that they’re pretty clear on the specifics of what separates them from Thunderbird.

    But I’m not gonna let that righteous indignation go to waste, so instead I’m gonma rip Sourav Rudra('s writing skill) a new one. Prepare your (writing skill’s) ass for a kicking Sourav.

    Betterbird: A Thunderbird Fork That Promises Better Features

    Better features?! Can I also have updated elements and improved aspects? Maybe superior components too??? Ah. A girl can dream.

    Vague buzzwords and nothing more. “Better features” is not only subjective, but also vague enough to be almost entirely meaningless. Let’s hope the rest of the article does better.

    Thankfully, the author included a shortlist of “Must-Know Bits.” I’m sure that’s a good summary of what’s to follow.

    — Features many long-requested features.

    I’m glad they’re finally listening to my request of compatibility with the Lovense remote control vibrator app’s API. Now I can feel good about receiving emails instead of stressed! They sure took their sweet time, it’s been long [time units] since I requested it!

    How long and who requested? Or better yet, what features??? Why should I care??? Please, give me somethinbg concrete to grip onto!

    — A more streamlined alternative to Thunderbird.

    Streamlined! Wow! Is it also more efficient, and higher quality? Will they make it sustainable? Maybe it can also be more ethically sourved.

    Could you be more vague please? This almost accidentally told me something about the changes they’ve made.

    — Highly customizable, thanks to Add-ons and Themes.

    Like Thunderbird? Like the addons you can find at the official Thunderbird site at addons.thunderbird.net?

    Do they also plan to send and receive email in betterbird? Will it work with a graphical desktop environment? Will it be computer software? Or does the failure to mention these assumed “features” imply that it will diverge from Thunderbird in these key aspects?


    Deeply shit lead-in. The rest of the article stands in stark contrast, being actually specific and informative. It’s like ol Sourav wrote an actually good article, then some idiot editor slapped it in ChatGPT and told it to fart out a title, subtitle, and highlights list. And then ChatGPT ignored all that and made the most generic tech article heading of all time.

    FWIW, itsfoss.com: you should fire that editor for being a completely incompetent moron.




  • BaumGeist@lemmy.mltoLinux@lemmy.mlWhat distro do you use and why?
    link
    fedilink
    arrow-up
    9
    arrow-down
    2
    ·
    2 months ago

    Debian. Because it’s the best about “Just Works” (yes, even moreso than Ubuntu, which I tried). It has broken once on me, and that was fixed by rolling back the kernel, then patched within the week.

    BUT I’m also not a “numbers go up” geek. I don’t give a shit about maxing out the benchmarks, and eking every last drop of performance out of the hardware; to me, that’s just a marketing gimmick so people associate dopamine with marginally improved spec numbers (that say nothing about longevity nor reliability).

    If you wanna waste something watching numbers go up, waste time playing cookie clicker, not money creating more e-waste so your Nvidia 4090 can burn through half a kilowatt of power to watch youtube in 8k.

    (/soapbox)

    My gpu is an nvidia 970 and my cpu is a 4th or 5th generation core i7. I just don’t play the latest games anyway, I’m a PatientGamer, and I don’t do multimedia stuff beyond simple meme edits in GIMP.

    It has plenty of power to run VMs, which I do use for my job and hobby, and I do coding as another hobby in NVIM (so I don’t have to deal with the performance penalty of MS Code or other big GUI IDEs).

    It all works fine, but one day I’ll upgrade (still a generation or two behind to get the best deals on used parts) and still not waste a ton of money on AAA games nor bleeding-edge DAWs


  • When does Debian update a package? And how does it decide when to?

    These both can be answered in depth at Debian’s releases page, but the short answer is:

    Debian developers work in a repo called “unstable” or “sid,” and you can get those packages if you so desire. They will be the most up to date, but also the most likely to introduce breaking changes.

    When the devs decide these packages are “stable enough,” (breaking changes are highly unlikely) they get moved into “testing” (the release candidate repo) where users can do QA for the community. Testing is the repo for the next version of debian.

    When the release cycle hits the ~1.5 year mark, debian maintainers introduce a series of incremental “freezes,” whereby new versions of packages will slowly stop being accepted into the testing repo. You can see a table that explains each freeze milestone for Trixie (Debian 13) here.

    After all the freezes have gone into effect, Debian migrates the current Testing version (currently Trixie, Debian 13) into the new Stable, and downgrades the current stable version to old-stable. Then the cycle begins again

    As for upgrades to packages in the stable/old-stable repos: see the other comments here. The gist is that they will not accept any changes other than security patches and minor bug fixes, except for business critical software that cannot just be patched (e.g. firefox).




  • The point of security isn’t just protecting yourself from the threats you’re aware of. Maybe there’s a compromise in your distro’s password hashing, maybe your password sucks, maybe there’s a kernel compromise. Maybe the torrent client isn’t a direct route to root, but one step in a convoluted chain of attack. Maybe there are “zero days” that are only called such because the clear web hasn’t been made aware yet, but they’re floating around on the dark web already. Maybe your passwords get leaked by a flaw in Lemmy’s security.

    You don’t know how much you don’t know, so you should be implementing as much good security practices as you can. It’s called the “Swiss Cheese” model of security: you layer enough so that the holes in one layer are blocked by a different layer.

    Plus, keeping strong security measures in place for something that’s almost always internet connected is a good idea regardless of how cautious you think you’re being. It’s why modern web-browsers are basically their own VM inside your pc anymore, and it’s why torrent clients shouldn’t have access to anything besides the download/upload folders and whatever minimal set of network perms they need.





  • The steamdeck is the first step to that future

    I’m sure people said the same about android

    I get that SteamOS is an actual desktop distro, and that’s closer to a daily driver than any android or bespoke *nix compatible SOC OS, but I doubt we’ll see this spread from steamdeck to daily drivers, unless…

    Unless linux can offer some feature windows/mac/ios do not, or at least market itself as doing so the way that Apple does, and get the overwhelming majority of tech consumers—who want nothing more than to keep up with the joneses and see the hardware specs numbers get bigger—to FOMO into it

    Unfortunately that would conflict with the most enticing features it does have that no one else does: a code of ethics that are inherently anti-capitalist and anti-authoritarian. And honestly, who wants every Linux community, online or off, flooded with consumers who only care about the newest Feature™ and have no care about maintaining software freedom?