Files
dotfiles/nixos/configuration.nix
T
2026-07-02 09:19:03 +01:00

99 lines
2.2 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{ config, lib, pkgs, ... }:
{
imports =
[
./hardware-configuration.nix
];
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "syedm";
# Configure network connections interactively with nmcli or nmtui.
networking.networkmanager.enable = true;
programs.fish.enable = true;
# Set your time zone.
time.timeZone = "Europe/London";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
console = {
font = "Lat2-Terminus16";
useXkbConfig = true;
};
# Define a user account. Don't forget to set a password with passwd.
users.users.me = {
isNormalUser = true;
shell = pkgs.fish;
extraGroups = [ "wheel" ];
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJFUwk54CNtSLUyXSTLsIs5KXgEsjOgE4HGlA4FacKjV syed@tardis"
];
packages = with pkgs; [];
};
# List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options).
environment.systemPackages = with pkgs; [
eza
yazi
gitui
bind
neovim
wget
curl
stow
unzip
git
];
# Enable the OpenSSH daemon.
services.openssh.enable = true;
services.caddy = {
enable = true;
virtualHosts."syedm.dev".extraConfig = ''
respond "Hello, world!"
'';
virtualHosts."git.syedm.dev".extraConfig = ''
reverse_proxy localhost:3000
'';
};
services.gitea = {
enable = true;
appName = "gitea: My personal projects.";
database.type = "sqlite3";
settings = {
server = {
DOMAIN = "git.syedm.dev";
ROOT_URL = "https://git.syedm.dev/";
HTTP_ADDR = "0.0.0.0";
HTTP_PORT = 3000;
SSH_DOMAIN = "git.syedm.dev";
SSH_PORT = 22;
};
service = {
DISABLE_REGISTRATION = true;
REQUIRE_SIGNIN_VIEW = true;
};
session.COOKIE_SECURE = true;
log.LEVEL = "Info";
};
lfs.enable = true;
};
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [ 22 80 443 ];
networking.firewall.allowedUDPPorts = [];
# DO NOT CHNAGE, EVER!
system.stateVersion = "26.05";
}