AlfheimOS icon indicating copy to clipboard operation
AlfheimOS copied to clipboard

cannot apply config

Open fishcat13 opened this issue 1 year ago • 6 comments

im completley new to nix so it might be it but i changed all the variables to mine and when i ran sudo nixos-rebuild switch --flake . i got

warning: Git tree '/home/fishcat/.dotfiles' is dirty
building the system configuration...
warning: Git tree '/home/fishcat/.dotfiles' is dirty
error: cached failure of attribute 'nixosConfigurations.nixos.config.system.build.toplevel'

warning: Git tree '/home/fishcat/.dotfiles' is dirty building the system configuration... warning: Git tree '/home/fishcat/.dotfiles' is dirty error: … while calling the 'head' builtin

     at /nix/store/bd4fmzws6n5542khxbifbkr6nrygi232-source/lib/attrsets.nix:1575:11:

     1574|         || pred here (elemAt values 1) (head values) then
     1575|           head values
         |           ^
     1576|         else

   … while evaluating the attribute 'value'

     at /nix/store/bd4fmzws6n5542khxbifbkr6nrygi232-source/lib/modules.nix:821:9:

      820|     in warnDeprecation opt //
      821|       { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
         |         ^
      822|         inherit (res.defsFinal') highestPrio;

   (stack trace truncated; use '--show-trace' to show the full trace)

   error:
   Failed assertions:
   - Exactly one of users.users.serpentian.isSystemUser and users.users.serpentian.isNormalUser must be set.

   - users.users.serpentian.group is unset. This used to default to
   nogroup, but this is unsafe. For example you can create a group
   for this user with:
   users.users.serpentian.group = "serpentian";
   users.groups.serpentian = {};

` im sorry if this is stupid but being new to nix this error massage is cryptic to me

fishcat13 avatar Sep 11 '24 15:09 fishcat13

The error is bc there is an assertion for the user Serpentian to exist. Remove the lock file -> then change the assertion to check for your user instead as well as the configuration file described in the README.

rashanana avatar Sep 11 '24 15:09 rashanana

Could you please show the diff of changes you done to the repo? Did you change the username in settings.nix?

I'll try to reproduce the issue

Serpentian avatar Sep 11 '24 16:09 Serpentian

The error is bc there is an assertion for the user Serpentian to exist. Remove the lock file -> then change the assertion to check for your user instead as well as the configuration file described in the README.

how do i do the first half ?

fishcat13 avatar Sep 11 '24 16:09 fishcat13

Could you please show the diff of changes you done to the repo? Did you change the username in settings.nix?

I'll try to reproduce the issue

yes i did that

fishcat13 avatar Sep 11 '24 16:09 fishcat13

Could you please show the diff of changes you done to the repo? Did you change the username in settings.nix?

I'll try to reproduce the issue

`{pkgs, ...}: rec { system = "x86_64-linux"; hostname = "nixos"; # Hostname username = "fishcat"; # Ssername profile = "desktop"; # Select from profiles directory timezone = "Asia/Jerusalem"; # Select timezone locale = "en_US.UTF-8"; # Select locale name = "fishcat13"; # Name (git config) email = ""; # Email (git config) dotfilesDir = "/home/${username}/.dotfiles"; # Absolute path of the local repo theme = "gruvbox"; # Selected theme from themes directory (./themes/) themeDetails = import (./. + "/themes/${theme}.nix") {dir = dotfilesDir;}; wm = ["hyprland" "kde"]; # Selected window manager or desktop environment; # must select one in both ./user/wm/ and ./system/wm/ # Note, that first WM is incldued included into work profile # second one includes both.

font = "JetBrains Mono"; # Selected font
fontPkg = (pkgs.nerdfonts.override { fonts = [ "JetBrainsMono"]; });
fontSize = 12; # Font size

icons = "Papirus";
iconsPkg = pkgs.papirus-icon-theme;

# Session variables.
editor = "nvim"; # Default editor
editorPkg = pkgs.neovim;
browser = "firefox"; # Default browser; must select one from ./user/app/browser/
browserPkg = pkgs.firefox;
term = "kitty"; # Default terminal command
termPkg = pkgs.kitty;

}`

fishcat13 avatar Sep 11 '24 16:09 fishcat13

just run : find . -type f -exec sed -i 's/serpentian/UR_USER_NAME_HERE/g' {} + and then : find . -type f -exec sed -i 's/serpenti/UR_USER_NAME_HERE_TOO/g' {} +

YoussefDevPro avatar Jun 21 '25 08:06 YoussefDevPro