Compare commits

..

No commits in common. "1251054fd6af7324919e28f1893eb8c6accfc4a8" and "7ca03bacd47adaff68c129edf3d1ae3ca41788c1" have entirely different histories.

6 changed files with 92 additions and 154 deletions

90
flake.lock generated
View file

@ -128,11 +128,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1740872218, "lastModified": 1738453229,
"narHash": "sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo=", "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "3876f6b87db82f33775b1ef5ea343986105db764", "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -150,11 +150,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1738453229, "lastModified": 1736143030,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -188,11 +188,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1740870877, "lastModified": 1737465171,
"narHash": "sha256-LWDIJvKWMW0tiih1jTcAK0ncTi3S9IF3gOhpCT1ydik=", "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "25d4946dfc2021584f5bde1fbd2aa97353384a95", "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -232,11 +232,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1739595404, "lastModified": 1738237977,
"narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=", "narHash": "sha256-oJN/yvRL7G0WlR/hTkQIjFbPkzCV+sFnNB/38Tb9RL4=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "hercules-ci-effects", "repo": "hercules-ci-effects",
"rev": "06519cec8fb32d219006da6eacd255504a9996af", "rev": "6d1b6d5d59758b4f5f05745f774fc13cdc59da43",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -252,11 +252,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1739757849, "lastModified": 1736373539,
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=", "narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe", "rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -277,11 +277,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1740874225, "lastModified": 1739060572,
"narHash": "sha256-sdBT6Njf1MDVnb4kLbGhCpXQ2P7E+50TRW1mIdujFEE=", "narHash": "sha256-b66lHmfaZ4lKAG5VW8wC7fba2vUs6OMRlJumO4xMEfc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "ee3854351ae89ad79eb148d4253263aeaa936913", "rev": "4452574d52632a36458cd9c80f6303f556460221",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -293,11 +293,11 @@
"neovim-src": { "neovim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1740870130, "lastModified": 1739058097,
"narHash": "sha256-nrKnJhmplq4QMcenY/bpD6SHOsiN3VS2toUtsO9NfII=", "narHash": "sha256-QNlqRh8BnmSgJ6e5CRII9og+Z7fBfMAUbL3g66O8ZXg=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "13513835798c732554de277229d4c6744df11502", "rev": "59edd7c88a13d793501b88c55803da8a0ba7c739",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -313,11 +313,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1740755725, "lastModified": 1739034224,
"narHash": "sha256-amZbqP84H/ApugaT+TADXTB3NbjkVHI9Vac1saIk0kE=", "narHash": "sha256-Mj/8jDzh1KNmUhWqEeVlW3hO9MZkxqioJGnmR7rivaE=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "5d6e0851b60508cffd66b4a6982440a40720338d", "rev": "0b6f96a6b9efcfa8d3cc8023008bcbcd1b9bc1a4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -381,11 +381,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1740947705, "lastModified": 1737057290,
"narHash": "sha256-Co2kAD2SZalOm+5zoxmzEVZNvZ17TyafuFsD46BwSdY=", "narHash": "sha256-3Pe0yKlCc7EOeq1X/aJVDH0CtNL+tIBm49vpepwL1MQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-generators", "repo": "nixos-generators",
"rev": "507911df8c35939050ae324caccc7cf4ffb76565", "rev": "d002ce9b6e7eb467cd1c6bb9aef9c35d191b5453",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -396,11 +396,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1740791350, "lastModified": 1739019272,
"narHash": "sha256-igS2Z4tVw5W/x3lCZeeadt0vcU9fxtetZ/RyrqsCRQ0=", "narHash": "sha256-7Fu7oazPoYCbDzb9k8D/DdbKrC3aU1zlnc39Y8jy/s8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "199169a2135e6b864a888e89a2ace345703c025d", "rev": "fa35a3c8e17a3de613240fea68f876e5b4896aec",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -412,11 +412,11 @@
}, },
"nixpkgsSmall": { "nixpkgsSmall": {
"locked": { "locked": {
"lastModified": 1740932899, "lastModified": 1739055578,
"narHash": "sha256-F0qDu2egq18M3edJwEOAE+D+VQ+yESK6YWPRQBfOqq8=", "narHash": "sha256-2MhC2Bgd06uI1A0vkdNUyDYsMD0SLNGKtD8600mZ69A=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "1546c45c538633ae40b93e2d14e0bb6fd8f13347", "rev": "a45fa362d887f4d4a7157d95c28ca9ce2899b70e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -428,11 +428,11 @@
}, },
"nixpkgsUnstable": { "nixpkgsUnstable": {
"locked": { "locked": {
"lastModified": 1740828860, "lastModified": 1739020877,
"narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=", "narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "303bd8071377433a2d8f76e684ec773d70c5b642", "rev": "a79cfe0ebd24952b580b1cf08cd906354996d547",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -444,11 +444,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1740865531, "lastModified": 1738843498,
"narHash": "sha256-h00vGIh/jxcGl8aWdfnVRD74KuLpyY3mZgMFMy7iKIc=", "narHash": "sha256-7x+Q4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i+jBHE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5ef6c425980847c78a80d759abc476e941a9bf42", "rev": "f5a32fa27df91dfc4b762671a0e0a859a8a0058f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -512,11 +512,11 @@
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1739262228, "lastModified": 1738291974,
"narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=", "narHash": "sha256-wkwYJc8cKmmQWUloyS9KwttBnja2ONRuJQDEsmef320=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975", "rev": "4c1251904d8a08c86ac6bc0d72cc09975e89aef7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -548,11 +548,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1739829690, "lastModified": 1738953846,
"narHash": "sha256-mL1szCeIsjh6Khn3nH2cYtwO5YXG6gBiTw1A30iGeDU=", "narHash": "sha256-yrK3Hjcr8F7qS/j2F+r7C7o010eVWWlm4T1PrbKBOxQ=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "3d0579f5cc93436052d94b73925b48973a104204", "rev": "4f09b473c936d41582dd744e19f34ec27592c5fd",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -1,11 +1,4 @@
{ { config, pkgs, lib, osConfig, inputs, ... }:
config,
pkgs,
lib,
osConfig,
inputs,
...
}:
{ {
# Home Manager needs a bit of information about you and the paths it should # Home Manager needs a bit of information about you and the paths it should
@ -22,11 +15,9 @@
# release notes. # release notes.
home.stateVersion = "24.05"; # Please read the comment before changing. home.stateVersion = "24.05"; # Please read the comment before changing.
nixpkgs.config.allowUnfreePredicate = nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
pkg: "vscode"
builtins.elem (lib.getName pkg) [ ];
"vscode"
];
# The home.packages option allows you to install Nix packages into your # The home.packages option allows you to install Nix packages into your
# environment. # environment.
@ -34,13 +25,14 @@
# # Adds the 'hello' command to your environment. It prints a friendly # # Adds the 'hello' command to your environment. It prints a friendly
# # "Hello, world!" when run. # # "Hello, world!" when run.
# pkgs.hello # pkgs.hello
# # It is sometimes useful to fine-tune packages, for example, by applying # # It is sometimes useful to fine-tune packages, for example, by applying
# # overrides. You can do that directly here, just don't forget the # # overrides. You can do that directly here, just don't forget the
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of # # parentheses. Maybe you want to install Nerd Fonts with a limited number of
# # fonts? # # fonts?
(pkgs.nerdfonts.override { fonts = [ "CodeNewRoman" ]; }) (pkgs.nerdfonts.override { fonts = [ "CodeNewRoman" ]; })
pkgs.dm-sans pkgs.dm-sans
pkgs.zoxide pkgs.zoxide
pkgs.btop pkgs.btop
@ -92,12 +84,8 @@
pkgs.libsixel pkgs.libsixel
pkgs.walker pkgs.walker
pkgs.unzip
pkgs.p7zip
pkgs.nixfmt-rfc-style
# # You can also create simple shell scripts directly inside your # # You can also create simple shell scripts directly inside your
# # configuration. For example, this adds a command 'my-hello' to your # # configuration. For example, this adds a command 'my-hello' to your
# # environment: # # environment:
# (pkgs.writeShellScriptBin "my-hello" '' # (pkgs.writeShellScriptBin "my-hello" ''
# echo "Hello, ${config.home.username}!" # echo "Hello, ${config.home.username}!"
@ -136,7 +124,7 @@
}; };
programs.zoxide.enable = true; programs.zoxide.enable = true;
programs.zoxide.enableBashIntegration = true; programs.zoxide.enableBashIntegration= true;
programs.zoxide.options = [ programs.zoxide.options = [
"--cmd cd" "--cmd cd"
]; ];
@ -177,15 +165,15 @@
name = "miku-cursor-linux"; name = "miku-cursor-linux";
size = 32; size = 32;
gtk.enable = true; gtk.enable = true;
package = pkgs.callPackage ../packages/miku-cursor.nix { }; package = pkgs.callPackage ../packages/miku-cursor.nix {};
}; };
programs.git = { programs.git = {
userName = "harry123"; userName = "harry123";
userEmail = "harryh@ik.me"; userEmail = "harryh@ik.me";
enable = true; enable = true;
extraConfig = { extraConfig = {
credential.helper = "${pkgs.git.override { withLibsecret = true; }}/bin/git-credential-libsecret"; credential.helper = "${pkgs.git.override { withLibsecret = true; }}/bin/git-credential-libsecret";
}; };
}; };
@ -195,19 +183,19 @@
latitude = 49.0; latitude = 49.0;
longitude = 8.4; longitude = 8.4;
}; };
/* /*
xdg.mimeApps = { xdg.mimeApps = {
enable = true; enable = true;
defaultApplications = { defaultApplications = {
"text/html" = "firefox.desktop"; "text/html" = "firefox.desktop";
"x-scheme-handler/http" = "firefox.desktop"; "x-scheme-handler/http" = "firefox.desktop";
"x-scheme-handler/https" = "firefox.desktop"; "x-scheme-handler/https" = "firefox.desktop";
"x-scheme-handler/about" = "firefox.desktop"; "x-scheme-handler/about" = "firefox.desktop";
"x-scheme-handler/unknown" = "firefox.desktop"; "x-scheme-handler/unknown" = "firefox.desktop";
"application/pdf" = "org.pwmt.zathura-pdf-mupdf.desktop"; "application/pdf" = "org.pwmt.zathura-pdf-mupdf.desktop";
};
}; };
*/ };
*/
programs.foot = { programs.foot = {
enable = true; enable = true;
server.enable = true; server.enable = true;

View file

@ -2,39 +2,32 @@
# your system. Help is available in the configuration.nix(5) man page, on # your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). # https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ { config, lib, pkgs, inputs, ... }:
config,
lib,
pkgs,
inputs,
...
}:
{ {
imports = [ imports =
# Include the results of the hardware scan. [ # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
../../features/client/tailscale.nix ../../features/client/tailscale.nix
../../features/client/sway.nix ../../features/client/sway.nix
./features/default.nix ./features/default.nix
./overlays/foot-overlay.nix ];
];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
boot.loader = { boot.loader = {
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
grub = { grub = {
enable = true; enable = true;
devices = [ "nodev" ]; devices = ["nodev"];
efiSupport = true; efiSupport = true;
useOSProber = true; useOSProber = true;
}; };
}; };
time.hardwareClockInLocalTime = true; time.hardwareClockInLocalTime = true;
networking.hostName = "goober"; # Define your hostname. networking.hostName = "goober"; # Define your hostname.
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
# Set your time zone. # Set your time zone.
time.timeZone = "Europe/Paris"; time.timeZone = "Europe/Paris";
@ -44,27 +37,21 @@
console = { console = {
font = "Lat2-Terminus16"; font = "Lat2-Terminus16";
keyMap = "fr"; keyMap = "fr";
# useXkbConfig = true; # use xkb.options in tty. # useXkbConfig = true; # use xkb.options in tty.
}; };
# mount compression # mount compression
fileSystems = { fileSystems = {
"/".options = [ "compress=zstd" ]; "/".options = ["compress=zstd"];
"/home".options = [ "compress=zstd" ]; "/home".options = ["compress=zstd"];
"/nix".options = [ "/nix".options = ["compress=zstd" "noatime"];
"compress=zstd"
"noatime"
];
#"/swap".options = ["compress=zstd"]; #"/swap".options = ["compress=zstd"];
}; };
services.btrfs.autoScrub.enable = true; services.btrfs.autoScrub.enable = true;
services.btrfs.autoScrub.interval = "weekly"; services.btrfs.autoScrub.interval = "weekly";
nix.settings.experimental-features = [ nix.settings.experimental-features = ["nix-command" "flakes"];
"nix-command"
"flakes"
];
# Configure keymap in X11 # Configure keymap in X11
# services.xserver.xkb.layout = "us"; # services.xserver.xkb.layout = "us";
# services.xserver.xkb.options = "eurosign:e,caps:escape"; # services.xserver.xkb.options = "eurosign:e,caps:escape";
@ -78,11 +65,7 @@
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users.harry123 = { users.users.harry123 = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ extraGroups = [ "wheel" "audio" "video" ]; # Enable sudo for the user.
"wheel"
"audio"
"video"
]; # Enable sudo for the user.
packages = with pkgs; [ packages = with pkgs; [
firefox firefox
tailscale tailscale
@ -113,9 +96,10 @@
enableSSHSupport = true; enableSSHSupport = true;
}; };
services.udisks2.enable = true; services.udisks2.enable = true ;
security.pam.services.swaylock = { };
security.pam.services.swaylock = {};
# cleaning old builds # cleaning old builds
nix.gc = { nix.gc = {
@ -123,7 +107,6 @@
randomizedDelaySec = "14m"; randomizedDelaySec = "14m";
options = "--delete-older-than 10d"; options = "--delete-older-than 10d";
}; };
# List services that you want to enable: # List services that you want to enable:
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
@ -155,3 +138,4 @@
system.stateVersion = "24.05"; # Did you read the comment? system.stateVersion = "24.05"; # Did you read the comment?
} }

View file

@ -1,9 +1,8 @@
{ config, ... }: {config, ...}:
{ {
imports = [ imports = [
./bluetooth.nix ./bluetooth.nix
./pipewire.nix ./pipewire.nix
./nvidia.nix ./nvidia.nix
./ios-phone-support.nix
]; ];
} }

View file

@ -1,14 +0,0 @@
{ config, pkgs, ... }:
{
services.usbmuxd = {
enable = true;
package = pkgs.usbmuxd2;
};
environment.systemPackages = with pkgs; [
libimobiledevice
usbutils
ifuse # optional, to mount using 'ifuse'
];
}

View file

@ -1,19 +0,0 @@
{ config, lib, pkgs, ... }:
{
let foot-next = pkgs.foot.overrideAttrs (oldAttrs: rec {
inherit (oldAttrs) name;
version = "1.20.2";
src = pkgs.fetchFromGitea {
domain = "codeberg.org";
owner = "dnkl";
repo = "foot";
rev = version;
hash = "sha256-tnBoRRKHcuvBSnqvJ/772UWuepvpUiSg6t+gx4MZ0VQ=";
};
}) in
nixpkgs.overlays = [(
final: previous: {
foot = foot-next;
}
)];
}