Skip Navigation
Decision of Next Os
  • That's because of users, not OS.. right?

    It's a factor, but constantly upgrading to the newest version of software does come with risks. I've had Arch and derivatives fail to boot on multiple devices plenty of times after an update.

    Some people say that they run arch for years without having any issues, but that's either extreme luck or bs.

    I love to deal with problems but I don't want to waste my time.

    You can usually just use a btrfs snapshot to rollback, boot, and try to update later. But there were situations when I had to use arch-chroot, and it can be problematic to install new packages in that situation.

    All setups have tradeoffs, but I'd wholeheartedly suggest a stable distro like MX and nix + home-manager. It avoids all of the previously mentioned issues, and comes with other benefits. Do note that you might need to make or copy a hyprland.desktop file because home-manager can only alter files in your ~.

  • Why FOSS projects are using proprietary, privacy invasive infrastructure?
  • Oh, yes we have. Gitlab, Codeberg, Notabug, etc. You can even host your own Gitea or Forgejo instance if you want.

    Self-hosting is right out for most people. It's pretty expensive to even get started without compromising your home network (router with VLAN, switch, multiple servers (at least thinclients)), and then on top of that you need to maintain it, and can't really ever max out your download/upload speeds because people are depending on your internet to interact with the repo.

    Gitlab is also for-profit, but also has blackouts and devs going rm -rf on the production DB. It's often in the news for bad things, so I've generally avoided it.

    Codeberg is great for personal repos, but most smaller git hosting services have horrible SEO. Like I've had issues finding repos when searching for their exact name, if I had to use general search terms I'd only see github repos.

  • Should I worry about referencing other people's code?
  • e.g. don’t touch AGPL code unless you also use AGPL

    Just to clear this up: copyleft licenses, GPL variants for example, require the license of your code to equally preserve the freedoms provided to your users, or in other words also be a copyleft license. There are some loopholes like GPL on a server, but be very careful when using copyleft code unless you want to use a copyleft license as well.

    It gets somewhat murkier when you use someone’s code and base yours on that. IANAL, and that’s very much the legal territory. If at all possible, just reuse the original copyright and license and then derive your work (given the license allows that).

    That all depends on the license AFAIK, but IANAL. Most FOSS licenses allow you to do whatever you want while preserving copyright claims, and that includes rewriting or changing the license. GPL forces copyleft, so even if you rewrote it from scratch, you could still be liable if you saw the original code.

    For example I've heard that corpos bootleg copyleft code by having completely separate teams doing design and implementation. The implementation team can't ever see any part of the original code, and they have limited communication with the design team. I think that would also go around the copyright claims as well.

    If at all possible, just reuse the original copyright and license and then derive your work (given the license allows that).

    Or just slap a GPL and subsume everything within a vortex of FREEDOM, and thusly become a true FOSS dude

  • Start learning at 50
  • there are very few “starter” Clojure jobs; they mostly expect you to have years of experience.

    That's because the language is made for people who wrote java for the last 10 years. It's cool and all, but it's horrible for learning programming when you compare it to cl or scheme. Neither of them break language uniformity and simplicity in order to accommodate java interop, while also having decades worth of excellent teaching material.

    It’s a Lisp language which is the oldest kind.

    Fortran, COBOL, ALGOL are older

    Instead of “object oriented”, I think if it as verb oriented. Each statement is a verb (function) possibly followed by all the nouns you want to apply it to. Easy peasy, right?

    I think you're over complicating the explanation, it's just a different notation:

    (1 + 2 + 3) == (+ 1 2 3)

    (1 + (2 * 3)) == (+ 1 (* 2 3))

    People complain that there’s “too many parentheses”. People like to complain about dumb stuff.

    I think it's got more to do with everything seemingly being completely different. Most languages have C-style syntax, and python is like the only popular exception. It's like knowing only latin and having to learn cyrilic or alphabet.

  • how can i share the same profile between root and my user?
  • wasn’t multi-user made exactly for managing the packages/profiles between different users?

    No, it's allow you to have a set of packages for each user, and to give you improved security and isolation.

    In this case nix download all of the packages to /nix/store, and then symlinks them to the appropriate ~/.nix-profile/

  • Start learning at 50
  • Julia, Clojure and Go. Are any of these good for a beginner or should I start with something else?

    That totally depends on what you want to do.

    Go should be easiest since it's purposefully simplified in order to make learning it easier. There are some more difficult concepts, but the start should be easy enough. I know about go with tests, but it's not really programming beginner friendly.

    I'd avoid clojure as a beginner. It's more for people who know java, but don't want to write java. Common lisp and schemes are good for learning programming, but they're not a popular group of languages and that can be a problem.

  • The genesis of a nixOS user
  • I’m going to have to come back to Nix/NixOS in a bit.

    Use nix + home-manager first for sure. It's far easier, and you can slowly get into it while making a list of bleeding edge packages.

    I’ll probably wait until the official docs catch up as it appears that they are quite a bit behind

    Skip them altogether when you're starting out. I gave up on trying nix the first few times due to how bad they are. zero-to-nix.com is better for learning the basics of nix.

    That and I’m not sure how I feel about a DSL for package management. I’d much rather use JSON or YAML, or even INI or TOML.

    The closest you can get is home-manager with a list of packages in a json-like format. It's really not practical to develop a declarative system without a programming language. A basic example would be variables, more advanced would be to write a wrapper that modifies the package so it automatically runs the required cli commands to use your dediated gpu and nixGL with specific packages (nvidia-run-mx nixVulkanNvidia-525.147.05 obs for example).

    It's sort of like IaC where you've got terraform (dsl), pulumi (various languages), and cloudformation (json/yaml). Can you guess which one is universally despised?

    Maybe if I were a LISP or Haskell guy.

    Then you'd use guix and a dsl made within an actual programming language (much better approach IMO).

  • Anyone else think this "portal" art installation in NYC looks a bit familiar?
  • Reports in the New York Post newspaper said that viewers in the US had seen people in Dublin exposing body parts, making inappropriate gestures and holding up footage of 9/11 since the installation opened last week.

    Based

  • The genesis of a nixOS user
  • In case you missed topic of the whole discussion:

    Nix has the same mix of conceptual simplicity and atrocious user interface as git,

    Nobody at any point compared the difficulty of learning the entirety of each of those systems, and my entire point is that the complexity of nix is not in the cli commands...

  • Does anyone use emacs as their main terminal emulator?
  • It's probably a configuration error.

    As far as I remember it was working fine like a year ago when I was trying to make my own config (just vterm and evil packages were required). At the time the Doom people were saying it was impossible due to how terminal emulation works. Now it's mostly working in Doom unless you go over 1 line. If you do, you're not in a good place since you can't use ESC to jump between words.

  • Does any distro read through 100% of the source-code of a package before adding it to its repo?
  • Aaah, so that's why it takes them so long to update packages.

    I'll bet you anything they're not reading the code for every random package and dependency. But yeah, with free distros it's at least possible to read everything that's on your machine.

  • The genesis of a nixOS user

    cross-posted from: https://programming.dev/post/14020506

    > The product of a chat with @QuazarOmega@lemy.lol

    5
    The genesis of a nixOS user

    The product of a chat with @QuazarOmega@lemy.lol

    27
    (partially solved, will update when completed) Please help with an xfce/powerup bug: black screen after suspend/hibernate

    MX Linux, Xfce 4.18

    Closing the laptop lid suspends the system, opening it resumes it, but the screen is black. I'm guessing it's related to powerup because suspending through the logout menu and systemctl suspend both work as expected. When it's black, switching to a different tty works, as well as C-M-Backspace to logout.

    Same results with both lightdm and sddm, when replacing suspend with hibernate, and I've tried a few solutions like disabling lock on sleep.

    Seems like this issue has been around for years, but had a whole bunch of different causes since every other thread has a different solution.

    XFSETTINGSD_DEBUG=1 xfsettingsd --replace --no-daemon > /tmp/xf.log 2>&1

    ps -ef | grep -E 'screen|lock'

    xfconf-query -c xfce4-power-manager -lv

    dmesg, cleared it before trying to suspend

    updates:

    I'm not seeing a black screen, instead it turns on the display and then turns it off.

    Additionally, I tried closing and opening the lid a few times, and it woke up correctly.

    I tried it in i3wm with the xfce power manager to suspend after closing the lid. It woke up correctly 10 times in a row.

    Solution: start an xrandr config and the monitor turns back on.

    22
    Non-general purpose posts

    This community is:

    > A general purpose programming community for English speakers

    Language specific posts like:

    and ide specific posts like:

    are not general purpose. Posts like that ruined /r/programming for me, and this community seems to be going down the same road. I'm here to read about programming concepts that can be applied to any/most languages, not patch notes for 10 different Js frameworks posted by karma farming bots. If I wanted to read posts like that, I'd have subbed to /c/javascript...

    Do you agree with me that they should be removed from /c/programming, and limited only to their respective communities? Or have I missed the point of this community?

    1
    InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)SH
    Shareni @programming.dev
    Posts 4
    Comments 611