lingo.lol is one of the many independent Mastodon servers you can use to participate in the fediverse.
A place for linguists, philologists, and other lovers of languages.

Server stats:

64
active users

#forums

2 posts2 participants0 posts today
Replied in thread

@zstg@fedia.social

That is one of the cool things about NixOS, is you can do things differently. True, the documentation is poorly written and seldom kept up to date. But the underline ability to make it your own is there.

The problem is their support community suffers, a common problem many Linux Support Communities suffer from. Far too many jerks who are unhelpful and gate keep. You spend a good amount of your time trying to figure something out, going to the forums as a last resort, and you damn regret doing so shortly after submitting your post.

#Linux #Forums #SupportForums

Continued thread

I am likely going to be banned from the NixOs Community Forum, as I posted this as my reply to someone. - I do not even care.

Why?

If you look at my post history, I solved my own problems. All I ever got was people criticizing and never actually providing solutions. Which is what most people looking of help want - A solution (or at best a working tip, beyond a vague cryptic statement).

#NixOs #Nix #Forums #SupportForums #Foss

The golden rule for support forums should be, if you have nothing to actually add to help someone achieve their goal, then you should shut the fuck up.

If all you're going to do is criticize someone's efforts, without offering a working solution, you should shut the fuck up.

If you add no value to the conversation, you most certainly should, shut the fuck up.

#Linux #Forums #SupportForums

Continued thread

Here is the full version. The commands are update, logs and break up the logs daily, and clean (both old logs and the system). I wanted the logs broken up into their own independent daily logs as not to be greeted with a wall of text.

Part of this code was me (my work), and part of this was ChatGPT.

#  ----------------------------------------
#  🔄 Automatic NixOS Upgrades.
#  ----------------------------------------

# Automatically checks for and installs system updates daily at 3:00 AM.
# It runs `nixos-rebuild switch --upgrade` and saves the output to a log file.
#
# ✅ What it does:
# • Downloads the latest NixOS packages.
# • Rebuilds your system with updates applied immediately (no reboot needed).
# • Saves upgrade logs to: /var/log/nixos-upgrade.log
#
# ⚠️ What it *doesn't* do:
# • ❌ Won't reboot your system — you'll need to restart manually.
# • ❌ Doesn't update Flatpak or home-manager apps.
#
# 📝 Tip: Change the time below if 3 AM doesn’t suit your schedule.

system.autoUpgrade = {
  enable = true;             # Enable automatic system upgrades.
  persistent = true;         # Remember missed upgrades and run ASAP after reboot.
  dates = "03:00";           # When upgrades run daily — customize this time.
};

systemd.services.nixos-upgrade.serviceConfig = {
  StandardOutput = "file:/var/log/nixos-upgrade.log";  # Logs upgrade output here.
  StandardError = "inherit";                           # Shows errors in system logs.
};

systemd.timers.nixos-upgrade.timerConfig.WakeSystem = true;  # Wake system to run upgrades if asleep.


#  ----------------------------------------
#  📑 Logrotate for Upgrade Logs.
#  ----------------------------------------

#  Rotates `/var/log/nixos-upgrade.log` daily to keep logs manageable.
#  Keeps the last 7 days of logs (you can change `rotate 7` below).
#
#  📁 Logrotate state is stored at: /var/lib/logrotate/status
#  Rotation runs daily at 4:30 AM — 90 minutes after the system upgrade.

#  🧾 Define logrotate rules.
#  Change "rotate 7" below to keep more or fewer days.
    environment.etc."logrotate.d/nixos-upgrade".text = ''
       /var/log/nixos-upgrade.log {
       daily
       missingok
       rotate 7
       compress
       delaycompress
       notifempty
       create 644 root root
      }
   '';


#  🛠️ Define the logrotate service.
    systemd.services.logrotate-nixos-upgrade = {
        description = "Logrotate for NixOS upgrade logs.";
        enable = true;
        serviceConfig = {
        Type = "oneshot";
        ExecStart = "${pkgs.logrotate}/bin/logrotate /etc/logrotate.d/nixos-upgrade --state /var/lib/logrotate/status";
      };
    };


#  ⏰ Set the daily timer.
    systemd.timers.logrotate-nixos-upgrade = {
        description = "Daily Logrotate for NixOS upgrade logs.";
        wantedBy = [ "timers.target" ];
        timerConfig = {
        OnCalendar = "*-*-* 04:30:00"; # Log rotation happens 90 minutes after the upgrade to avoid overlap.
        Persistent = true;
        WakeSystem = true;
      };
    };


#  ----------------------------------------
#  🗑️ Weekly Garbage Collection.
#  ----------------------------------------

# Cleans unused packages every Monday at 4 PM, waiting 24+ hours after updates to avoid issues.
#
#  ✅ What it does:
#  • Runs: "nix-collect-garbage -d".
#  • Deletes unused system generations and packages.
#  • Frees up disk space safely.
#
#  ⚠️ What it doesn't do:
#  • ❌ Won't remove your currently active or booted system configuration.
#  • ❌ Doesn't reboot your machine.

#  📝 Tip: Adjust the times below to fit your schedule or preferences.


# Enable automatic garbage collection in Nix.
# This cleans up unused packages and old system generations regularly.
nix.gc = {
  automatic = true;
  dates = "Mon *-*-* 16:00"; # Monday, 4:00 PM - Change if you want a different day and time.
};

# Timer for running Nix's built-in automatic garbage collection
systemd.timers.nix-gc.timerConfig = {
  WakeSystem = true;
  Persistent = true;
};

# Custom service to wipe ALL old system generations manually.
# This is a more thorough cleanup, safely removing all old system snapshots.
systemd.services.nix-gc-wipe = {
  description = "Wipe all old system generations";
  serviceConfig = {
    Type = "oneshot";
    Environment = "PATH=/run/current-system/sw/bin";
    ExecStart = "/bin/sh -c 'nix-env --delete-generations old --profile /nix/var/nix/profiles/system && nix-collect-garbage -d'";
  };
};

# Timer to run the custom wipe service every Monday at 4:15 PM
systemd.timers.nix-gc-wipe = {
  wantedBy = [ "timers.target" ];
  timerConfig = {
    OnCalendar = "Mon *-*-* 16:15:00"; # Monday, 4:15 PM - Change if you want a different day and time.
    WakeSystem = true;
    Persistent = true;
  };
};

#NixOs #Nix #Linux #Forums #SupportForums #AI

Topic thumbnails, uploads, and media display

There have been some scattered feedback on a change I made for v4.0.0 that caught some people off-guard: Uploaded media is now shown in addition to topic thumbnails.

I'll start with why this change was made, and then solicit feedback.

The why

v4.0.0 introduced ActivityPub integration into NodeBB. This added dimension meant that content was consumed in a manner that was similar, but unfamiliar to NodeBB, and so much of the work involved normalizing that data into a format that made sense. (As an aside, I tell people that that's pretty much 99% of my job — glueing together APIs. I jest, but it's also basically true.)

One of those unfamiliar aspects was uploaded media in the form of attachments. NodeBB had discrete concepts of inline media and topic thumbnails, but attachments were something different entirely. Attachments were not inlined in the text (they tended to be added before or after the main content), and thumbnails were images only, while attachments could be lots of other things.

The second part was that a lot of the content I received relied on media to do the heavy lifting. Oftentimes the text would be minimal and in response to the attachment. After all, a picture's worth a thousand words.

Given those two things, I allowed NodeBB to consume and store attachments separately, and updated the topic thumbnail retrieval logic to pull media from both post attachments and inline media. That retrieval logic is what governs what you see next to the title. I also decided on the all-in approach because while NodeBB has multiple ways of slotting media, majority of ActivityPub software generally only uses attachments. This means both inline media and topic thumbnails were unceremoniously shoved into attachments when federating outward. There is movement toward changing this, and so this rationale may no longer make sense today.

I initially did have concerns that perhaps this would dilute the meaning and specificity of the "topic thumbnail", but I also wagered that the UX improvement of promoting any and all media found would be of greater benefit.

Your turn — feedback!

Maybe I'm wrong!

  • Perhaps the media row is best used to showcase topic thumbnails and post attachments only (not inlined media.)
  • Perhaps a configurable option would appease all folks (although I'm usually loathe to add options purely for that reason.)

community.nodebb.org/post/1046

NodeBB Community · Topic thumbnails, uploads, and media displayThere have been some scattered feedback on a change I made for v4.0.0 that caught some people off-guard: Uploaded media is now shown in addition to topic thu...

The silver lining of the "AI" hype is the increased aversion that more and more people are having to the overly shiny, phony mainstream internet and how all of that is pushing more underground, independent weirdo creators to thrive and to make REAL things of human value on the web, be they blogs, personal websites, indie services, or back to the small forums of old.

Researchers at the University of Zurich spammed the r/changemyview subreddit community with AI-generated comments in an effort to prove that LLMs could be used to persuade people to change their views. They did so without permission from Reddit, the moderators of the subreddit, or the members who were emotionally manipulated through their interaction with the comments.

A few points to follow.

reddit.com/r/changemyview/comm

The upcoming possibility of browsing to remote federated categories/communities has me thinking about interesting use cases for it.

Note that Lemmy, PieFed, mBin, and other "community-centric" software already do support this, so it's nothing new, I'm actually playing catch-up.

One interesting use case centers around NodeBB's /unread route, which tracks new topics since your last visit. Since ever, and even now in v4, this is only for local categories, but if you're able to "subscribe" to a remote category, then we could enable use of this page for that content too.

Think about waking up and seeing a self-curated feed of new content from your subscribed communities! There are some interesting parallels to RSS here, too.

What other forum-centric use cases do you think would be enhanced by the ability to browse remote categories?