I think it's about time I improved a bit on my Nix and NixOS knowledge, and I guess the best way is having someone more experienced critique my monstrosity of a setup.
Maybe it's too modular?
Not modular enough?
Convoluted?
Complete garbage altogether?
Go to the repo and find out! Just be sure to let me know after.
Recently, I've been interested in self-hosting various services after coming across Futo's "How to Self Host Your
Life Guide" on their Wiki. They recommend using OpenVPN, but I opted for WireGuard instead as I wanted to learn
more about it. After investing many hours into setting up my WireGuard configuration in my Nix config, I planned
to replace Tailscale with WireGuard and make the setup declarative.
For context, this computer is located at my residence, and I want to be able to VPN into my home network and
access my services. Initially, it was quite straightforward; I forwarded a UDP port on my router to my computer,
which responded correctly when using the correct WireGuard keys and established a VPN connection. Everywhere
online suggests forwarding only UDP as WireGuard doesn't respond unless the correct key is used.
Does anyone have advice on installing 32bit packages on 64bit systems?
I have tried several times to setup Rocksmith 2014 with wineasio using this guide (and a couple of others, but this seemed like the best one), but it seems to be a little out-of-date. After rebuilding my system wineasio is installed, but only the 64 bit version of the library is installed (the 32 and 64 bit windows dlls are both present, but I assume that those are just copied over for either version of the wineasio package). The script linked in this section fails to find i386-unix/wineasio32.dll.so , and I have not been able to locate it or figure out a way to install it.
I've particularly focused on this section of my nix config:
I have tried to allow unfree packages to install steam and discord but nothing worked here are some of the things I have tried;
1.
{
allowUnfree = true;
allowUnfreePredicate = pkg: true;
}
{
nixpkgs.config.allowUnfree = true;
}
( config, pkgs, allow unfree=true)
Every time I tried to rebuild something would go wrong so I tried temporary stuff like NIXPKGS_ALLOW_UNFREE=1 nix-shell
And
--impure
But nothing worked
Nix is a tool that takes a unique approach to package management and system configuration. Learn how to make reproducible, declarative and reliable systems.
I have a program that I wrote, maybe I didn't package it appropriately, but I cannot got it to run. I wrote it on a manjaro install, and tested it on another manjaro install, both were fine. I packaged it with poetry and copied the wheel over.
Today I tried to install it on my nixos surface tablet I use at work. I get this error on installation:
undefined
Traceback (most recent call last): File "/home/gzuh/.local/bin/willcallgui", line 5, in <module>
from willcallgui import willcallgui
File "/home/gzuh/.local/share/pipx/venvs/willcallgui/lib/python3.11/site-packages/willcallgui/willcallgui.py", line 12, in <module>
import tkinter as tk
File "/nix/store/h723hb9m43lybmvfxkk6n7j4v664qy7b-python3-3.11.9/lib/python3.11/tkinter/__init__.py", line 38, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named '_tkinter'
I have been using pass but since i am experimenting with selfhosting and wanted to store passkeys inside my password manager i wanted to selfhost Vaultwarden (a Bitwarden server implementation) server but i didn’t wanted to expose it to internet so i wanted to use my Tailscale network.
so i added re...
Working in a Virtualbox VM using the standard KDE version of the .iso. I get locked out due to inactivity during a live environment session. Trying to enter the empty password doesn't help me. How do I deal with this graciously?
Nix is a tool that takes a unique approach to package management and system configuration. Learn how to make reproducible, declarative and reliable systems.
Dear NixOS Community, We are thrilled to announce a unique partnership between the Framework community and the NixOS community! This collaboration aims to foster innovation in hardware enablement, enhance user experience, and strengthen our collective commitment to open-source hardware and software...
I want to reset my server soon and I'm toying with the idea of using a different operating system. I am currently using Ubuntu Server LTS. However, I have been toying with the idea of using Fedora Server (I use Fedora on my laptop and made good experiences with it) or even Fedora CoreOS. I also recently installed NixOS on my desktop computer and find the declarativeness pretty cool (but I'm still a complete beginner) and could imagine that it would fit well into a server setup.
I have quite a few services running on my server, such as Nextcloud, Conduit (Matrix), Jellyfin, etc. and all in containers. I would also rather not install programs without containers, because 1. compose is super easy to maintain and set up, 2. it remains very clear with containers (and compose) and 3. I believe that containers are more secure. But since I also want to make the services inside the containers available, I currently have Nginx installe
It took me some time to work out how to get my ssh agent set up in Niri so I though I would share what I did. I'm using NixOS and Home Manager. I put this in my Home Manager config:
I'm using GDM according to NixOS' default configuration which I think runs gnome-keyring (I thought I saw it in the process list before I set up the user unit), and I think that configuration is automatically unlocking gnome-keyring when I log in via PAM integration. But apparently I need to run gnome-keyring again in my window manager session. Home Manager's services.gnome-keyring adds a systemd user unit that does that.
A few weeks ago I ran nix flake update to get the latest versions of CLI tools that I regularly use from nixos-unstable.
atuin is one of those tools which I started using relatively recently and quickly became a huge fan of.
I run it on all of my machines, and I can’t overstate how amazing it is to ...
After learning how to add an unstable overlay to nixpkgs, being able to override individual service modules from unstable was something that I still struggled with until fairly recently. Hopefully this helps someone else looking to do common-but-not-very-obvious operation.