Refactoring and adding emacs config

This commit is contained in:
Lyes Saadi 2025-03-28 16:29:37 +01:00
parent 49ad024034
commit 8c49e28ea3
Signed by: lyes
GPG key ID: 55A1D803917CF39A
10 changed files with 178 additions and 71 deletions

30
flake.lock generated
View file

@ -91,11 +91,11 @@
]
},
"locked": {
"lastModified": 1742234739,
"narHash": "sha256-zFL6zsf/5OztR1NSNQF33dvS1fL/BzVUjabZq4qrtY4=",
"lastModified": 1742655702,
"narHash": "sha256-jbqlw4sPArFtNtA1s3kLg7/A4fzP4GLk9bGbtUJg0JQ=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "f6af7280a3390e65c2ad8fd059cdc303426cbd59",
"rev": "0948aeedc296f964140d9429223c7e4a0702a1ff",
"type": "github"
},
"original": {
@ -123,11 +123,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1742631601,
"narHash": "sha256-yJ3OOAmsGAxSl0bTmKUp3+cEYtSS+V6hUPK2rYhIPr8=",
"lastModified": 1743167577,
"narHash": "sha256-I09SrXIO0UdyBFfh0fxDq5WnCDg8XKmZ1HQbaXzMA1k=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "380ed15bcd6440606c6856db44a99140d422b46f",
"rev": "0ed819e708af17bfc4bbc63ee080ef308a24aa42",
"type": "github"
},
"original": {
@ -155,11 +155,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1742422364,
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
"lastModified": 1742889210,
"narHash": "sha256-hw63HnwnqU3ZQfsMclLhMvOezpM7RSB0dMAtD5/sOiw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
"rev": "698214a32beb4f4c8e3942372c694f40848b360d",
"type": "github"
},
"original": {
@ -171,11 +171,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1742512142,
"narHash": "sha256-8XfURTDxOm6+33swQJu/hx6xw1Tznl8vJJN5HwVqckg=",
"lastModified": 1742937945,
"narHash": "sha256-lWc+79eZRyvHp/SqMhHTMzZVhpxkRvthsP1Qx6UCq0E=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7105ae3957700a9646cc4b766f5815b23ed0c682",
"rev": "d02d88f8de5b882ccdde0465d8fa2db3aa1169f7",
"type": "github"
},
"original": {
@ -233,11 +233,11 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1742614294,
"narHash": "sha256-bZbYlP/xqGyW2aVle742dFbc0npFnwJBzcEnXNywJgY=",
"lastModified": 1743132999,
"narHash": "sha256-cEqYQFxW8Uua64LckWpGrrqKIbPs/u+j2RnanhX35Js=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "7fa9ec4e14d89e568ebaac302049980df7cf0cc9",
"rev": "9c81e4bb852d4bcb1ba525fa20d7cd2778453d2d",
"type": "github"
},
"original": {

View file

@ -52,6 +52,7 @@
noto-fonts-lgc-plus
noto-fonts-emoji
cantarell-fonts
unstable.adwaita-fonts
twitter-color-emoji
twemoji-color-font
(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
@ -62,47 +63,10 @@
useEmbeddedBitmaps = true;
defaultFonts = {
sansSerif = [ "Cantarell" "Noto Sans" ];
sansSerif = [ "Adwaita" "Noto Sans" ];
monospace = [ "JetBrainsMono Nerd Font" ];
emoji = [ "Twitter Color Emoji" "Noto Color Emoji" ];
};
};
};
nixpkgs.overlays = [
# Version pins
(final: prev: {
# dolphin-emu = prev.dolphin-emu.overrideAttrs (super: {
# version = "2407";
# commit = "b92e354389bb7c0bd114a8631b8af110d3cb3a14";
# src = pkgs.fetchFromGitHub {
# owner = "dolphin-emu";
# repo = "dolphin";
# rev = "heads/refs/tags/${final.dolphin-emu.version}";
# hash = "sha256-8W4KyIj+rhDkWnQogjpzlEJVo3HJenfpWKimSyMGN7c=";
# fetchSubmodules = true;
# };
# cmakeFlags = [
# "-DDISTRIBUTOR=NixOS"
# "-DDOLPHIN_WC_BRANCH=${final.dolphin-emu.src.rev}"
# "-DDOLPHIN_WC_DESCRIBE=${final.dolphin-emu.version}"
# "-DDOLPHIN_WC_REVISION=${final.dolphin-emu.commit}"
# ];
# });
# mesa = final.mesa-24-2-4.mesa;
# mesa = prev.mesa.overrideAttrs (super: {
# version = "24.2.4";
# src = pkgs.fetchFromGitLab {
# domain = "gitlab.freedesktop.org";
# owner = "mesa";
# repo = "mesa";
# rev = "mesa-24.2.4";
# hash = "sha256-pgyvgMHImWO+b4vpCCe4+zOI98XCqcG8NRWpIcImGUk=";
# };
# });
})
];
}

View file

@ -1,10 +1,9 @@
{ pkgs, home-manager, ... }:
{ pkgs, ... }:
{
imports =
[
./packages.nix
home-manager.nixosModules.default
];
users.users.lyes = {
@ -15,18 +14,4 @@
extraGroups = [ "wheel" "networkmanager" ];
shell = pkgs.fish;
};
home-manager.useUserPackages = true;
home-manager.useGlobalPkgs = true;
home-manager.users.lyes = { ... }: {
imports =
[
./home.nix
];
home.username = "lyes";
home.homeDirectory = "/home/lyes";
home.stateVersion = "22.11";
};
}

View file

@ -4,5 +4,6 @@
imports =
[
./common
./home
];
}

View file

@ -1,8 +1,20 @@
{ ... }:
{ pkgs, ... }:
{
imports =
[
./packages.nix
];
# Keyboard
hardware.keyboard.qmk.enable = true;
services.udev = {
packages = with pkgs; [
qmk
qmk-udev-rules
qmk_hid
via
];
};
}

View file

@ -64,7 +64,7 @@ in {
parsec-bin
unstable.suyu
# suyu
# factorio
factorio
# Reading
# calibre
@ -109,6 +109,7 @@ in {
# Utilities
ghostty
via
# Proton
protonmail-bridge-gui
@ -121,4 +122,102 @@ in {
# pulseaudio
libopus
];
system.extraDependencies = with pkgs; [
factorio.src
];
nixpkgs.overlays = [
# Version pins
(final: prev: {
# factorio = prev.factorio.overrideAttrs (super: {
# version = "2.0.42";
# # src.name = "factorio_alpha_x64-2.0.42.tar.xz";
# # src.sha256 = "1zq6wcqkmn9bzys27v0jlk9m9m1jhaai1mybdv8hz7p2si4l76n9";
# src = "/nix/store/b9y0dwgxa6hpddrd8nn0g2fizxl3xss7-factorio_alpha_x64-2.0.42.tar.xz";
# });
# factorio = prev.factorio.overrideAttrs (super: {
# username = "ntlyes";
# token = "";
# src =
# (pkgs.fetchurl {
# name = super.src.name;
# url = super.src.url;
# sha256 = "sha256-83GCCvULfgEHBBLN3HUlw9jJR5jwQau2XsEo5PFeboc=";
# });
# preHook =
# ''
# echo -n "ntlyes" > username
# cp ${config.age.secrets.factorio.path} token
# '';
# # (lib.overrideDerivation
# # (fetchurl {
# # name = "alpha";
# # url = "";
# # inherit name url sha256;
# # curlOptsList = [
# # "--get"
# # "--data-urlencode"
# # "username@username"
# # "--data-urlencode"
# # "token@token"
# # ];
# # })
# # (_: {
# # # This preHook hides the credentials from /proc
# # preHook =
# # if username != "" && token != "" then
# # ''
# # echo -n "${username}" >username
# # echo -n "${token}" >token
# # ''
# # else
# # ''
# # # Deliberately failing since username/token was not provided, so we can't fetch.
# # # We can't use builtins.throw since we want the result to be used if the tar is in the store already.
# # exit 1
# # '';
# # failureHook = ''
# # cat <<EOF
# # ${helpMsg}
# # EOF
# # '';
# # })
# # );
# });
# dolphin-emu = prev.dolphin-emu.overrideAttrs (super: {
# version = "2407";
# commit = "b92e354389bb7c0bd114a8631b8af110d3cb3a14";
# src = pkgs.fetchFromGitHub {
# owner = "dolphin-emu";
# repo = "dolphin";
# rev = "heads/refs/tags/${final.dolphin-emu.version}";
# hash = "sha256-8W4KyIj+rhDkWnQogjpzlEJVo3HJenfpWKimSyMGN7c=";
# fetchSubmodules = true;
# };
# cmakeFlags = [
# "-DDISTRIBUTOR=NixOS"
# "-DDOLPHIN_WC_BRANCH=${final.dolphin-emu.src.rev}"
# "-DDOLPHIN_WC_DESCRIBE=${final.dolphin-emu.version}"
# "-DDOLPHIN_WC_REVISION=${final.dolphin-emu.commit}"
# ];
# });
# mesa = final.mesa-24-2-4.mesa;
# mesa = prev.mesa.overrideAttrs (super: {
# version = "24.2.4";
# src = pkgs.fetchFromGitLab {
# domain = "gitlab.freedesktop.org";
# owner = "mesa";
# repo = "mesa";
# rev = "mesa-24.2.4";
# hash = "sha256-pgyvgMHImWO+b4vpCCe4+zOI98XCqcG8NRWpIcImGUk=";
# };
# });
})
];
}

View file

@ -0,0 +1,23 @@
{ home-manager, ... }:
{
imports =
[
home-manager.nixosModules.default
];
home-manager.useUserPackages = true;
home-manager.useGlobalPkgs = true;
home-manager.users.lyes = { ... }: {
imports =
[
./editors
./home.nix
];
home.username = "lyes";
home.homeDirectory = "/home/lyes";
home.stateVersion = "22.11";
};
}

View file

@ -0,0 +1,8 @@
{ ... }:
{
imports =
[
./emacs.nix
];
}

View file

@ -0,0 +1,15 @@
{ pkgs, ... }:
{
programs.emacs = {
enable = true;
package = pkgs.emacs-nox;
extraPackages = p: with p; [
agda2-mode
gruvbox-theme
];
extraConfig = ''
(load-theme 'gruvbox-dark-hard)
'';
};
}