|
|
|
@ -0,0 +1,433 @@
|
|
|
|
|
# Edit this configuration file to define what should be installed on
|
|
|
|
|
# your system. Help is available in the configuration.nix(5) man page
|
|
|
|
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
|
|
|
|
|
|
|
|
|
{ config, pkgs, buildPythonPackage, ... }:
|
|
|
|
|
|
|
|
|
|
let
|
|
|
|
|
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
|
|
|
|
|
|
|
|
|
in
|
|
|
|
|
{
|
|
|
|
|
imports =
|
|
|
|
|
[ # Include the results of the hardware scan.
|
|
|
|
|
./hardware-configuration.nix
|
|
|
|
|
(import "${home-manager}/nixos")
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
# systemd.services = {
|
|
|
|
|
# create-swapfile = {
|
|
|
|
|
# serviceConfig.Type = "oneshot";
|
|
|
|
|
# wantedBy = [ "swap-swapfile.swap" ];
|
|
|
|
|
# script = ''
|
|
|
|
|
# ${pkgs.coreutils}/bin/truncate -s 0 /swap/swapfile
|
|
|
|
|
# ${pkgs.e2fsprogs}/bin/chattr +C /swap/swapfile
|
|
|
|
|
# ${pkgs.btrfs-progs}/bin/btrfs property set /swap/swapfile compression none
|
|
|
|
|
# '';
|
|
|
|
|
# };
|
|
|
|
|
# };
|
|
|
|
|
|
|
|
|
|
# Use the systemd-boot EFI boot loader.
|
|
|
|
|
boot.loader.grub.enable = true;
|
|
|
|
|
# boot.loader.efi.canTouchEfiVariables = true;
|
|
|
|
|
boot.loader.grub.efiInstallAsRemovable = true;
|
|
|
|
|
boot.loader.grub.efiSupport = true;
|
|
|
|
|
boot.loader.grub.device = "nodev";
|
|
|
|
|
boot.loader.grub.extraEntries = ''
|
|
|
|
|
menuentry 'Void GNU/Linux' --class void --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-71dcad6d-3c93-473d-ad60-0cea0d6d379c' {
|
|
|
|
|
load_video
|
|
|
|
|
set gfxpayload=keep
|
|
|
|
|
insmod gzio
|
|
|
|
|
insmod part_gpt
|
|
|
|
|
insmod fat
|
|
|
|
|
set root='hd0,gpt1'
|
|
|
|
|
if [ x$feature_platform_search_hint = xy ]; then
|
|
|
|
|
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 5977-60ED
|
|
|
|
|
else
|
|
|
|
|
search --no-floppy --fs-uuid --set=root 5977-60ED
|
|
|
|
|
fi
|
|
|
|
|
echo 'Loading Linux 5.15.19_1 ...'
|
|
|
|
|
linux /vmlinuz-5.15.19_1 root=UUID=71dcad6d-3c93-473d-ad60-0cea0d6d379c ro rootflags=subvol=@void loglevel=4 rd.vconsole.keymap=colemak rd.luks.uuid=luks-7e99abff-be7a-4fa7-aeeb-e54e5fa9d9a8 rootfstype=btrfs rootflags=rw,noatime,compress=zstd:3,subvol=@void
|
|
|
|
|
echo 'Loading initial ramdisk ...'
|
|
|
|
|
initrd /initramfs-5.15.19_1.img
|
|
|
|
|
}
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
#boot.kernelParams = [ "rd.vconsole.keymap=colemak" ];
|
|
|
|
|
|
|
|
|
|
# networking.hostName = "nixos"; # Define your hostname.
|
|
|
|
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
|
|
|
|
|
|
|
|
|
# Set your time zone.
|
|
|
|
|
time.timeZone = "America/Sao_Paulo";
|
|
|
|
|
|
|
|
|
|
# The global useDHCP flag is deprecated, therefore explicitly set to false here.
|
|
|
|
|
# Per-interface useDHCP will be mandatory in the future, so this generated config
|
|
|
|
|
# replicates the default behaviour.
|
|
|
|
|
networking.useDHCP = false;
|
|
|
|
|
#networking.interfaces.br-0990e9f22445.useDHCP = true;
|
|
|
|
|
# networking.interfaces.br-17830196a80a.useDHCP = true;
|
|
|
|
|
# networking.interfaces.docker0.useDHCP = true;
|
|
|
|
|
networking.interfaces.enp2s0.useDHCP = true;
|
|
|
|
|
networking.interfaces.wlan0.useDHCP = true;
|
|
|
|
|
|
|
|
|
|
# Configure network proxy if necessary
|
|
|
|
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
|
|
|
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
|
|
|
|
|
|
|
|
|
# Select internationalisation properties.
|
|
|
|
|
i18n.defaultLocale = "pt_BR.UTF-8";
|
|
|
|
|
console = {
|
|
|
|
|
# font = "Lat2-Terminus16";
|
|
|
|
|
keyMap = "colemak";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
fonts.fonts = with pkgs; [
|
|
|
|
|
(nerdfonts.override { fonts = [ "FiraCode" "Hack" ]; })
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
# Enable the X11 windowing system.
|
|
|
|
|
services.xserver.enable = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Configure keymap in X11
|
|
|
|
|
# services.xserver.layout = "colemak";
|
|
|
|
|
# services.xserver.xkbOptions = "eurosign:e";
|
|
|
|
|
|
|
|
|
|
# Enable CUPS to print documents.
|
|
|
|
|
# services.printing.enable = true;
|
|
|
|
|
|
|
|
|
|
# Enable sound.
|
|
|
|
|
sound.enable = true;
|
|
|
|
|
hardware.pulseaudio.enable = true;
|
|
|
|
|
nixpkgs.config.pulseaudio = true;
|
|
|
|
|
|
|
|
|
|
# Enable touchpad support (enabled default in most desktopManager).
|
|
|
|
|
services.xserver.libinput.enable = true;
|
|
|
|
|
|
|
|
|
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
|
|
|
|
users.users.lelgenio = {
|
|
|
|
|
isNormalUser = true;
|
|
|
|
|
extraGroups = [ "wheel" "audio" "video" "input" "docker" ]; # Enable ‘sudo’ for the user.
|
|
|
|
|
};
|
|
|
|
|
security.sudo.wheelNeedsPassword = false;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# programs.sway.enable = true;
|
|
|
|
|
# xdg.portal.wlr.enable = true;
|
|
|
|
|
services.pipewire.enable = true;
|
|
|
|
|
|
|
|
|
|
# Gnome
|
|
|
|
|
services.xserver.desktopManager.gnome.enable = true;
|
|
|
|
|
services.xserver.displayManager.gdm.enable = true;
|
|
|
|
|
services.gnome.tracker-miners.enable = false;
|
|
|
|
|
services.gnome.tracker.enable = false;
|
|
|
|
|
|
|
|
|
|
home-manager.users.lelgenio = {
|
|
|
|
|
/* Here goes your home-manager config, eg home.packages = [ pkgs.foo ]; */
|
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
|
|
|
|
|
|
# # missing
|
|
|
|
|
# # caffeinated
|
|
|
|
|
# # dotdrop
|
|
|
|
|
# # papirus-folders papirus-libreoffice-theme
|
|
|
|
|
# # tuxi-git
|
|
|
|
|
# # bluez bluez-utils bluez-plugins
|
|
|
|
|
# #thunar-vcs-plugin
|
|
|
|
|
# # clyrics
|
|
|
|
|
# # zathura-pdf-mupdf
|
|
|
|
|
# # libreoffice-fresh-pt-br hunspell-pt-br
|
|
|
|
|
# # neovim python-pynvim neovim-symlinks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# # Sway
|
|
|
|
|
sway swayidle swaylock waybar
|
|
|
|
|
bemenu j4-dmenu-desktop
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# # Utility
|
|
|
|
|
fusuma light mako kanshi udiskie
|
|
|
|
|
gammastep
|
|
|
|
|
wtype
|
|
|
|
|
# # Configuration manager
|
|
|
|
|
xsettingsd
|
|
|
|
|
|
|
|
|
|
# # Screenshot
|
|
|
|
|
grim slurp swappy wl-clipboard imagemagick wf-recorder
|
|
|
|
|
|
|
|
|
|
# # Dav
|
|
|
|
|
vdirsyncer khal khard
|
|
|
|
|
|
|
|
|
|
# Audio
|
|
|
|
|
# pulseaudio pulseaudio-rtp pulseaudio-alsa pulseaudio-bluetooth
|
|
|
|
|
pamixer pulsemixer pavucontrol
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# # # Fonts
|
|
|
|
|
# # # inter-font ttf-ms-fonts ttf-dejavu
|
|
|
|
|
# # # nerd-fonts-hack nerd-fonts-fira-code
|
|
|
|
|
|
|
|
|
|
# # # Icons
|
|
|
|
|
# # # otf-font-awesome ttf-font-awesome
|
|
|
|
|
|
|
|
|
|
# # Emoji and stuff
|
|
|
|
|
noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
papirus-icon-theme
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
capitaine-cursors
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# # Terminal
|
|
|
|
|
# # Emulators
|
|
|
|
|
kitty alacritty
|
|
|
|
|
# #Tools
|
|
|
|
|
|
|
|
|
|
translate-shell tealdeer so
|
|
|
|
|
ranger atool p7zip jq fzf
|
|
|
|
|
neofetch htop bpytop
|
|
|
|
|
inxi entr
|
|
|
|
|
#Prompt
|
|
|
|
|
starship
|
|
|
|
|
# Replacements
|
|
|
|
|
#ls cat rm -rf grep find sed diff cd fmt
|
|
|
|
|
exa bat trash-cli ripgrep fd sd diffr zoxide par
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Network
|
|
|
|
|
iwd dhcpcd
|
|
|
|
|
# Transfer
|
|
|
|
|
wget curl rsync rclone nmap
|
|
|
|
|
# Testing
|
|
|
|
|
# tor nettools
|
|
|
|
|
netcat-gnu mtr speedtest-cli
|
|
|
|
|
inetutils
|
|
|
|
|
# ssh
|
|
|
|
|
openssh sshfs fail2ban
|
|
|
|
|
# Bluetooth
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Browser
|
|
|
|
|
qutebrowser yt-dlp
|
|
|
|
|
|
|
|
|
|
# # Email
|
|
|
|
|
neomutt urlview isync
|
|
|
|
|
|
|
|
|
|
# # # Files
|
|
|
|
|
|
|
|
|
|
xfce.thunar-volman
|
|
|
|
|
xfce.thunar-archive-plugin mate.engrampa
|
|
|
|
|
syncthing xdg-user-dirs
|
|
|
|
|
transmission
|
|
|
|
|
python39Packages.deemix
|
|
|
|
|
|
|
|
|
|
# Media
|
|
|
|
|
pqiv mpv
|
|
|
|
|
mpd mpc_cli ncmpcpp mpdris2
|
|
|
|
|
playerctl
|
|
|
|
|
kdeconnect
|
|
|
|
|
blender gimp
|
|
|
|
|
zathura
|
|
|
|
|
|
|
|
|
|
# Office
|
|
|
|
|
libreoffice-fresh
|
|
|
|
|
|
|
|
|
|
# Programing
|
|
|
|
|
kakoune
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
shfmt nodePackages.bash-language-server
|
|
|
|
|
|
|
|
|
|
# web lsp
|
|
|
|
|
nodePackages.vscode-css-languageserver-bin
|
|
|
|
|
# vscode-html-languageserver
|
|
|
|
|
# vscode-css-languageserver
|
|
|
|
|
# vscode-json-languageserver
|
|
|
|
|
|
|
|
|
|
# # php lsp
|
|
|
|
|
# # nodejs-intelephense
|
|
|
|
|
|
|
|
|
|
# # Python
|
|
|
|
|
# # ipython bpython
|
|
|
|
|
|
|
|
|
|
# # Python lsp
|
|
|
|
|
# # python-language-server
|
|
|
|
|
# # python-pylint autopep8 pyls-mypy
|
|
|
|
|
# # python-mccabe python-rope python-pyflakes
|
|
|
|
|
# # python-pycodestyle python-pydocstyle
|
|
|
|
|
|
|
|
|
|
# rust lsp
|
|
|
|
|
rust-analyzer
|
|
|
|
|
|
|
|
|
|
# Compiled
|
|
|
|
|
# rustc
|
|
|
|
|
cargo
|
|
|
|
|
gcc
|
|
|
|
|
gdb
|
|
|
|
|
meson
|
|
|
|
|
|
|
|
|
|
# # work
|
|
|
|
|
# # mariadb
|
|
|
|
|
# # php7 php7-apache
|
|
|
|
|
# # phpmyadmin
|
|
|
|
|
# # lipsum-git emmet-cli
|
|
|
|
|
# # blade-formatter prettier
|
|
|
|
|
# # nodejs-less nodejs-less-plugin-clean-css
|
|
|
|
|
# # uglify-js
|
|
|
|
|
|
|
|
|
|
# Virt
|
|
|
|
|
qemu
|
|
|
|
|
|
|
|
|
|
# Power manager
|
|
|
|
|
tlp
|
|
|
|
|
|
|
|
|
|
# # Gtk
|
|
|
|
|
# # gtk3-nocsd-legacy-git
|
|
|
|
|
|
|
|
|
|
# Qt
|
|
|
|
|
# qt5-base
|
|
|
|
|
# qt5-wayland
|
|
|
|
|
qt5ct
|
|
|
|
|
# kvantum-qt5
|
|
|
|
|
libsForQt5.qtstyleplugins
|
|
|
|
|
|
|
|
|
|
# # X11
|
|
|
|
|
# #xorg-xwayland
|
|
|
|
|
|
|
|
|
|
# # codecs
|
|
|
|
|
# # gst-plugins-good gst-plugins-bad
|
|
|
|
|
|
|
|
|
|
# Tray
|
|
|
|
|
libappindicator-gtk3
|
|
|
|
|
# lib32-libappindicator-gtk2 lib32-libappindicator-gtk3
|
|
|
|
|
|
|
|
|
|
# # Chat
|
|
|
|
|
# discord telegram-desktop
|
|
|
|
|
# jitsi-meet-desktop-bin
|
|
|
|
|
#
|
|
|
|
|
# # Gaming
|
|
|
|
|
# steam
|
|
|
|
|
# lutris
|
|
|
|
|
#lutris-wine-meta wine wine-mono winetricks
|
|
|
|
|
|
|
|
|
|
# File thumbnails
|
|
|
|
|
# tumbler
|
|
|
|
|
ffmpegthumbnailer poppler
|
|
|
|
|
libgsf libgepub
|
|
|
|
|
# libopenraw freetype2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# # alacritty
|
|
|
|
|
|
|
|
|
|
any-nix-shell
|
|
|
|
|
capitaine-cursors
|
|
|
|
|
hack-font
|
|
|
|
|
htop
|
|
|
|
|
kakoune
|
|
|
|
|
neomutt
|
|
|
|
|
nerdfonts
|
|
|
|
|
nodejs
|
|
|
|
|
orchis-theme
|
|
|
|
|
pass-wayland
|
|
|
|
|
# php-with-extensions
|
|
|
|
|
python3
|
|
|
|
|
# python3.8-pip
|
|
|
|
|
tdesktop
|
|
|
|
|
xfce.thunar
|
|
|
|
|
thunderbird
|
|
|
|
|
vscodium
|
|
|
|
|
waybar
|
|
|
|
|
wl-clipboard
|
|
|
|
|
yarn
|
|
|
|
|
yarn2nix
|
|
|
|
|
|
|
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
virtualisation.docker.enable = true;
|
|
|
|
|
|
|
|
|
|
# List packages installed in system profile. To search, run:
|
|
|
|
|
# $ nix search wget
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
|
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
|
|
|
|
micro
|
|
|
|
|
wget
|
|
|
|
|
firefox
|
|
|
|
|
fish
|
|
|
|
|
iwd
|
|
|
|
|
|
|
|
|
|
jq
|
|
|
|
|
diffr
|
|
|
|
|
docker
|
|
|
|
|
docker-compose
|
|
|
|
|
git
|
|
|
|
|
gnumake
|
|
|
|
|
tmux
|
|
|
|
|
ripgrep
|
|
|
|
|
|
|
|
|
|
gnome3.gnome-tweaks
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
programs.fish.enable = true;
|
|
|
|
|
users.defaultUserShell = pkgs.fish;
|
|
|
|
|
# programs.fish.plugins = [
|
|
|
|
|
# {
|
|
|
|
|
# name = "nix-env.fish";
|
|
|
|
|
# src = pkgs.fetchFromGitHub {
|
|
|
|
|
# owner = "lilyball";
|
|
|
|
|
# repo = "nix-env.fish";
|
|
|
|
|
# rev = "7b65bd228429e852c8fdfa07601159130a818cfa";
|
|
|
|
|
# sha256 = "069ybzdj29s320wzdyxqjhmpm9ir5815yx6n522adav0z2nz8vs4";
|
|
|
|
|
# };
|
|
|
|
|
# }
|
|
|
|
|
# ];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# services.mysql.enable = true;
|
|
|
|
|
# services.mysql.package = pkgs.mariadb;
|
|
|
|
|
|
|
|
|
|
# Some programs need SUID wrappers, can be configured further or are
|
|
|
|
|
# started in user sessions.
|
|
|
|
|
programs.mtr.enable = true;
|
|
|
|
|
programs.gnupg.agent = {
|
|
|
|
|
enable = true;
|
|
|
|
|
enableSSHSupport = true;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
# List services that you want to enable:
|
|
|
|
|
|
|
|
|
|
# Enable the OpenSSH daemon.
|
|
|
|
|
# services.openssh.enable = true;
|
|
|
|
|
|
|
|
|
|
# Open ports in the firewall.
|
|
|
|
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
|
|
|
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
|
|
|
|
# Or disable the firewall altogether.
|
|
|
|
|
# networking.firewall.enable = false;
|
|
|
|
|
|
|
|
|
|
# This value determines the NixOS release from which the default
|
|
|
|
|
# settings for stateful data, like file locations and database versions
|
|
|
|
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
|
|
|
# this value at the release version of the first install of this system.
|
|
|
|
|
# Before changing this value read the documentation for this option
|
|
|
|
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
|
|
|
|
system.stateVersion = "22.05"; # Did you read the comment?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# nix = {
|
|
|
|
|
# package = pkgs.nixUnstable; # or versioned attributes like nix_2_4
|
|
|
|
|
# extraOptions = ''
|
|
|
|
|
# experimental-features = nix-command flakes
|
|
|
|
|
# '';
|
|
|
|
|
# };
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|