diff --git a/conf/Alias/alias.nix b/conf/Alias/alias.nix new file mode 100644 index 0000000..bfe2736 --- /dev/null +++ b/conf/Alias/alias.nix @@ -0,0 +1,13 @@ +{ config, lib, inputs, pkgs, ... }: { + + programs.fish.shellAliases = { + # upd = "sudo nix flake update --flake /etc/nixos && sudo nixos-rebuild switch --flake path:/etc/nixos#Alfa"; + upd = "nh os switch -a -u && nh home switch -a -u"; + updhome = "nh home switch -a -u"; + updsystem = "nh os switch -a -u"; + nixcf = "kate /etc/nixos/configuration.nix"; + nixfk = "kate /etc/nixos/flake.nix"; + nixpkg = "kate /etc/nixos/conf/Pkgs/pkgs.nix"; + nixalias = "kate /etc/nixos/conf/Alias/alias.nix"; + }; +} \ No newline at end of file diff --git a/conf/Audio/audio.nix b/conf/Audio/audio.nix new file mode 100644 index 0000000..14fbae1 --- /dev/null +++ b/conf/Audio/audio.nix @@ -0,0 +1,14 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Configuração de áudio com Pipewire (desativa PulseAudio) + services.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + #jack.enable = true; # Descomente se usar aplicações JACK + }; + +} diff --git a/conf/CfStorage/CfStorage.nix b/conf/CfStorage/CfStorage.nix new file mode 100644 index 0000000..587e80c --- /dev/null +++ b/conf/CfStorage/CfStorage.nix @@ -0,0 +1,19 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## compressao brtfs + fileSystems = { + "/" = { + options = [ "compress=zstd:3" ]; + }; + }; + + ## zram + zramSwap = { + enable = true; + memoryPercent = 70; + algorithm = "zstd"; + }; + + ## preload + services.preload.enable = true; +} diff --git a/conf/DistroBox/distrobox.nix b/conf/DistroBox/distrobox.nix new file mode 100644 index 0000000..91607ea --- /dev/null +++ b/conf/DistroBox/distrobox.nix @@ -0,0 +1,14 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## distro box + virtualisation.podman = { + enable = true; + #dockerCompat = true; + }; + + users.users.gui.extraGroups = [ "docker" ]; + users.groups.docker.gid = 131; + virtualisation.docker = { + enable = true; + }; +} diff --git a/conf/Fish/fish.nix b/conf/Fish/fish.nix new file mode 100644 index 0000000..8764412 --- /dev/null +++ b/conf/Fish/fish.nix @@ -0,0 +1,25 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## config fish + environment.systemPackages = with pkgs; [ + fishPlugins.done + fishPlugins.fzf-fish + fishPlugins.forgit + fishPlugins.hydro + fzf + fishPlugins.grc + grc + ]; + + programs.fish.enable = true; + + ## auto start fish com bash + programs.bash = { + interactiveShellInit = + '' if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] + then + shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION="" + exec ${pkgs.fish}/bin/fish $LOGIN_OPTION + fi ''; + }; +} diff --git a/conf/Flakes/flakeconfig.nix b/conf/Flakes/flakeconfig.nix new file mode 100644 index 0000000..ee7a687 --- /dev/null +++ b/conf/Flakes/flakeconfig.nix @@ -0,0 +1,11 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Ativar recursos experimentais do Nix, como flakes + nix.settings.experimental-features = ["nix-command" "flakes"]; + + ## chaotic-nix + nix.nixPath = lib.mapAttrsToList (key: _: "${key}=flake:${key}") config.nix.registry; + nix.registry = lib.mapAttrs (_: value: {flake = value;}) (lib.filterAttrs (_: value: lib.isType "flake" value) inputs); + nix.settings.flake-registry = ""; + +} diff --git a/conf/Flatpak/flatpak.nix b/conf/Flatpak/flatpak.nix new file mode 100644 index 0000000..a1c55c8 --- /dev/null +++ b/conf/Flatpak/flatpak.nix @@ -0,0 +1,11 @@ +{ config, lib, inputs, pkgs, ... }: { + + services.flatpak.enable = true; + + xdg.portal = { + enable = true; + extraPortals = [pkgs.kdePackages.xdg-desktop-portal-kde]; + config.common.default = "*"; + }; + +} diff --git a/conf/Fontes/fontes.nix b/conf/Fontes/fontes.nix new file mode 100644 index 0000000..2d2daa8 --- /dev/null +++ b/conf/Fontes/fontes.nix @@ -0,0 +1,11 @@ +{config, pkgs, ...}: { +fonts.fontconfig.enable = true; +home.packages = with pkgs; [ + nerd-fonts.jetbrains-mono + nerd-fonts.ubuntu-mono + nerd-fonts.ubuntu-sans + nerd-fonts.dejavu-sans-mono + nerd-fonts.fira-code + nerd-fonts.overpass +]; +} \ No newline at end of file diff --git a/conf/Kde/kde.nix b/conf/Kde/kde.nix new file mode 100644 index 0000000..c78286a --- /dev/null +++ b/conf/Kde/kde.nix @@ -0,0 +1,10 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Ativar ambiente gráfico KDE Plasma 6 e gerenciador de login SDDM + services = { + displayManager.sddm.enable = true; + desktopManager.plasma6.enable = true; + }; + programs.kdeconnect.enable = true; + +} diff --git a/conf/NixHelper/nixhelper.nix b/conf/NixHelper/nixhelper.nix new file mode 100644 index 0000000..5d38042 --- /dev/null +++ b/conf/NixHelper/nixhelper.nix @@ -0,0 +1,19 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## nixLD + programs.nix-ld.enable = true; + programs.nix-ld.libraries = with pkgs; []; + + ## nixNH + programs.nh = { + enable = true; + clean.enable = true; + clean.extraArgs = "--keep-since 4d --keep 3"; + flake = "/etc/nixos"; # sets NH_OS_FLAKE variable for you + }; + + ## Configuração do gerenciador nix + nix.package = pkgs.lixPackageSets.latest.lix; + #nix.package = inputs.nixpkgs-master.legacyPackages.${pkgs.system}.lix; + +} diff --git a/conf/Nvidia/nvidia.nix b/conf/Nvidia/nvidia.nix new file mode 100644 index 0000000..2b4c1de --- /dev/null +++ b/conf/Nvidia/nvidia.nix @@ -0,0 +1,10 @@ +{ config, lib, inputs, pkgs, ... }: { + + services.xserver.videoDrivers = [ "nvidia" ]; + hardware = { + graphics.enable = true; + nvidia.open = false; + nvidia.package = config.boot.kernelPackages.nvidiaPackages.production; + #nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta; + }; +} diff --git a/conf/Obs/obs.nix b/conf/Obs/obs.nix new file mode 100644 index 0000000..8e9c4c9 --- /dev/null +++ b/conf/Obs/obs.nix @@ -0,0 +1,20 @@ +{ config, lib, inputs, pkgs, ... }: { + + programs.obs-studio = { + enable = true; + # optional Nvidia hardware acceleration + package = ( + pkgs.obs-studio.override { + cudaSupport = true; + } + ); + plugins = with pkgs.obs-studio-plugins; [ + wlrobs + obs-backgroundremoval + obs-pipewire-audio-capture + obs-gstreamer + obs-vkcapture + ]; + }; + programs.obs-studio.enableVirtualCamera = true; +} diff --git a/conf/PatchJogos/patch.nix b/conf/PatchJogos/patch.nix new file mode 100644 index 0000000..56c1318 --- /dev/null +++ b/conf/PatchJogos/patch.nix @@ -0,0 +1,22 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Config da steam + programs.steam = { + enable = true; + remotePlay.openFirewall = true; + dedicatedServer.openFirewall = true; + localNetworkGameTransfers.openFirewall = true; + }; + nixpkgs.config.allowUnfreePredicate = pkg: lib.elem (lib.getName pkg) [ + "steam" + "steam-original" + "steam-unwrapped" + "steam-run" + ]; + + ## patch jogos + programs = { + gamescope.enable = true; + gamemode.enable = true; + }; +} diff --git a/conf/Pkgs/pkgs.nix b/conf/Pkgs/pkgs.nix new file mode 100644 index 0000000..21502d0 --- /dev/null +++ b/conf/Pkgs/pkgs.nix @@ -0,0 +1,47 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Permitir pacotes não-livres + nixpkgs.config.allowUnfree = true; + + environment.systemPackages = with pkgs; [ + ## Aplicativos sociais + inputs.zen-browser.packages.${system}.default + + ## jogos + lsfg-vk + lsfg-vk-ui + + ## Utilitários do sistema e dev tools + nh + home-manager + vulkan-tools-lunarg + vulkan-loader + vulkan-utility-libraries + gcc + preload + ethtool + kdePackages.partitionmanager + kdePackages.filelight + kdePackages.dolphin + kdePackages.ark + xdg-desktop-portal-gnome + winetricks + wineWowPackages.staging + kdePackages.qtmultimedia + efibootmgr + distrobox + docker-compose + podman + distroshelf + freerdp + kdePackages.krfb + dmidecode + inputs.winboat.packages.x86_64-linux.default + gitFull + + ## repositorio 25.05 + inputs.nixpkgs-stable.legacyPackages.${pkgs.system}.vulkan-tools + ]; + +} + diff --git a/conf/Pkgs/pkgshome.nix b/conf/Pkgs/pkgshome.nix new file mode 100644 index 0000000..02843b4 --- /dev/null +++ b/conf/Pkgs/pkgshome.nix @@ -0,0 +1,34 @@ +{ config, lib, inputs, pkgs, ... }: { + ## pacotes home-manager + home.packages = with pkgs; [ + + ## aplicativos sociais + (discord.override {withVencord = true;}) + telegram-desktop + + ## Jogos + lutris + heroic + prismlauncher + steam + ryubing + xclicker + mangojuice + mangohud + protonplus + + ## Utilitários do sistema e dev tools + fastfetch + cpu-x + git + btop-cuda + vscodium + flatpak + appimage-run + wget + lact + kitty + vlc + + ]; +} \ No newline at end of file diff --git a/conf/configidioma/configidioma.nix b/conf/configidioma/configidioma.nix new file mode 100644 index 0000000..51d18fe --- /dev/null +++ b/conf/configidioma/configidioma.nix @@ -0,0 +1,26 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Definir fuso horário + time.timeZone = "America/Bahia"; + + ## Configurações de idioma e localidade + i18n.defaultLocale = "pt_BR.UTF-8"; + i18n.extraLocaleSettings = { + LC_ADDRESS = "pt_BR.UTF-8"; + LC_IDENTIFICATION = "pt_BR.UTF-8"; + LC_MEASUREMENT = "pt_BR.UTF-8"; + LC_MONETARY = "pt_BR.UTF-8"; + LC_NAME = "pt_BR.UTF-8"; + LC_NUMERIC = "pt_BR.UTF-8"; + LC_PAPER = "pt_BR.UTF-8"; + LC_TELEPHONE = "pt_BR.UTF-8"; + LC_TIME = "pt_BR.UTF-8"; + }; + ## Configurar layout do teclado no X11 e console + services.xserver.xkb = { + layout = "br"; + variant = ""; + }; + console.keyMap = "br-abnt2"; + +} diff --git a/conf/environmentvariables/variables.nix b/conf/environmentvariables/variables.nix new file mode 100644 index 0000000..865b37d --- /dev/null +++ b/conf/environmentvariables/variables.nix @@ -0,0 +1,7 @@ +{ config, lib, inputs, pkgs, ... }: { + + environment.variables = { + __GL_SHADER_DISK_CACHE_SIZE = "12000000000"; + VK_LAYER_PATH = "${pkgs.vulkan-validation-layers}/share/vulkan/explicit_layer.d"; + }; +} diff --git a/conf/git/git.nix b/conf/git/git.nix new file mode 100644 index 0000000..add8179 --- /dev/null +++ b/conf/git/git.nix @@ -0,0 +1,11 @@ +{pkgs, config, lib, ...}: { + + programs.git = { + enable = true; + userName = "DarkGui"; + userEmail = "guihermando13@gmail.com"; + extraConfig = { + credential.helper = "store"; + }; + }; +} \ No newline at end of file diff --git a/conf/gnome/gnome.nix b/conf/gnome/gnome.nix new file mode 100644 index 0000000..70fadff --- /dev/null +++ b/conf/gnome/gnome.nix @@ -0,0 +1,42 @@ +{ config, lib, inputs, pkgs, ... }: { + + services = { + displayManager.gdm.enable = true; + desktopManager.gnome.enable = true; + # Para desabilitar a instalação do conjunto de aplicativos do GNOME e ficar apenas com o shell do GNOME. + gnome.core-apps.enable = false; + gnome.core-developer-tools.enable = false; + gnome.games.enable = false; + udev.packages = [ pkgs.gnome-settings-daemon ]; + }; + + environment.systemPackages = with pkgs; [ + gnomeExtensions.blur-my-shell + gnomeExtensions.dash-to-dock + gnomeExtensions.just-perfection + gnomeExtensions.arc-menu + gnomeExtensions.appindicator + gnomeExtensions.valent + xdg-desktop-portal-gnome + valent + gnome-tweaks + gnome-shell + gnome-extension-manager + refine + alacarte + nautilus + ]; + environment.gnome.excludePackages = with pkgs; [ gnome-tour gnome-user-docs ]; + + qt = { + enable = true; + platformTheme = "gnome"; + style = "adwaita-dark"; + }; + + programs.kdeconnect = { + enable = true; + package = pkgs.valent; +}; +} + diff --git a/conf/kitty/kitty.conf b/conf/kitty/kitty.conf new file mode 100644 index 0000000..edc0224 --- /dev/null +++ b/conf/kitty/kitty.conf @@ -0,0 +1,69 @@ +include ./theme.conf + +wayland_enable_ime no + +font_size 10 +underline_exclusion 0 + +cursor_shape beam +cursor_blink_interval 0.3 +cursor_trail 3 +cursor_trail_decay 0.1 0.4 + +scrollback_lines 5000 +scrollback_pager_history_size 100 + +show_hyperlink_targets yes + +repaint_delay 15 + +tab_bar_edge top +tab_bar_style powerline +tab_powerline_style slanted +tab_bar_align left +tab_bar_min_tabs 1 +active_tab_font_style normal + +enabled_layouts fat:bias=60,stack +window_margin_width 2.5 +window_border_width 1 +draw_minimal_borders no + +background_opacity 0.9 + +allow_remote_control yes + +map alt+f5 load_config_file +map alt+minus resize_window narrower +map alt+underline resize_window shorter +map ctrl+alt+minus change_font_size all -0.5 +map alt+equal resize_window wider +map alt+plus resize_window taller +map ctrl+alt+equal change_font_size all +0.5 +map alt+q close_window_with_confirmation ignore-shell +map alt+shift+q close_tab +map alt+r set_window_title +map alt+shift+r set_tab_title +map alt+u scroll_line_up +map alt+shift+u scroll_to_prompt -1 +map alt+p previous_tab +map alt+shift+p detach_window tab-left +map alt+d scroll_line_down +map alt+shift+d scroll_to_prompt 1 +map alt+h neighboring_window left +map alt+shift+h move_window left +map alt+j neighboring_window bottom +map alt+shift+j move_window bottom +map alt+k neighboring_window top +map alt+shift+k move_window top +map alt+l neighboring_window right +map alt+shift+l move_window right +map alt+z toggle_layout stack +map ctrl+c copy_or_interrupt +map ctrl+v paste_from_clipboard +map alt+n next_tab +map alt+shift+n detach_window tab-right +map alt+t new_window +map alt+shift+t new_tab + +# TODO: detach window to tab-left, and if tab-left doesn't exist create it diff --git a/conf/kitty/kitty.nix b/conf/kitty/kitty.nix new file mode 100644 index 0000000..a901edf --- /dev/null +++ b/conf/kitty/kitty.nix @@ -0,0 +1,15 @@ +{ config, lib, inputs, pkgs, ... }: { + + options.mods.kitty = { + enable = lib.mkEnableOption "Enable Kitty."; + }; + + config = lib.mkIf config.mods.kitty.enable { + programs.kitty = { + enable = true; + extraConfig = "include ${config.mods.flakePath}/conf/kitty/kitty.conf"; + settings.clear_all_shortcuts = "yes"; + }; + }; +} + diff --git a/conf/kitty/theme.conf b/conf/kitty/theme.conf new file mode 100644 index 0000000..d8c94a8 --- /dev/null +++ b/conf/kitty/theme.conf @@ -0,0 +1,37 @@ +cursor #f4dbe2 +cursor_text_color background + +url_color #eec6e9 +url_style dotted + +active_border_color #f4dbe2 +inactive_border_color #121622 +bell_border_color #efd286 + +active_tab_foreground #f4dbe2 +active_tab_background #121622 +inactive_tab_foreground #aeb8d4 +inactive_tab_background #060810 + +foreground #ced4e6 +background #060810 +transparent_background_colors #121622 #1c2232 #272d41 #313950 #46516f +selection_foreground none +selection_background #46516f +color0 #121622 +color1 #ea8f80 +color2 #6ac27f +color3 #c7a84d +color4 #92a8eb +color5 #db8ad4 +color6 #52bcce +color7 #aeb8d4 +color8 #7683a8 +color9 #f5b3a7 +color10 #7ae092 +color11 #e5c25f +color12 #b3c4f5 +color13 #eaafe4 +color14 #6bd8ea +color15 #ced4e6 + diff --git a/conf/wireless/wireless.nix b/conf/wireless/wireless.nix new file mode 100644 index 0000000..d14b541 --- /dev/null +++ b/conf/wireless/wireless.nix @@ -0,0 +1,13 @@ +{ config, lib, inputs, pkgs, ... }: { + + ## Configuração da internet + networking.networkmanager.enable = true; + networking.interfaces.enp9s0.wakeOnLan.enable = true; + + ## Ativar Bluetooth + hardware.bluetooth.enable = true; + + ## Ativar CUPS para impressão + services.printing.enable = true; + +} diff --git a/configuration.nix b/configuration.nix new file mode 100644 index 0000000..1fa2d02 --- /dev/null +++ b/configuration.nix @@ -0,0 +1,40 @@ +{ config, lib, inputs, pkgs, ... }: +{ + imports = + [ # Importa a configuração de hardware detectada + ./hardware-configuration.nix + ./imp.nix + ]; + + ## Configuração do bootloader + boot.loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + systemd-boot.configurationLimit = 10; + }; + + boot.kernelPackages = pkgs.linuxPackages_cachyos; # Kernel customizado + #boot.kernelPackages = pkgs.linuxPackagesFor pkgs.linux_cachyos-gcc; + #boot.kernelPackages = pkgs.linuxPackages_latest; + + networking.hostName = "Alfa"; # Defina o nome da sua máquina + + services = { + xserver.enable = false; # Ativar sistema gráfico X11 + displayManager.autoLogin.enable = true; + displayManager.autoLogin.user = "gui"; + }; + + ## Definição do usuário normal + users.users.gui = { + isNormalUser = true; + description = "Gui"; + extraGroups = [ "networkmanager" "wheel"]; + packages = with pkgs; [ + kdePackages.kate + kdePackages.kcalc + ]; + }; + + system.stateVersion = "25.05"; # versao do nix +} diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..e90c520 --- /dev/null +++ b/flake.lock @@ -0,0 +1,464 @@ +{ + "nodes": { + "aagl": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs": "nixpkgs", + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1758557465, + "narHash": "sha256-SeDqOZQoARl/xxEMdej09IScCf77SEQfRAjED7lBgMY=", + "owner": "ezKEa", + "repo": "aagl-gtk-on-nix", + "rev": "944f9903859ad16db762fbe573fb6f05f7367e16", + "type": "github" + }, + "original": { + "owner": "ezKEa", + "repo": "aagl-gtk-on-nix", + "type": "github" + } + }, + "chaotic": { + "inputs": { + "flake-schemas": "flake-schemas", + "home-manager": "home-manager", + "jovian": "jovian", + "nixpkgs": "nixpkgs_3", + "rust-overlay": "rust-overlay_2" + }, + "locked": { + "lastModified": 1758642505, + "narHash": "sha256-056XfEHlYdBKU2RtN4R+9m2nzL588TCZ8AsIviWONRg=", + "owner": "chaotic-cx", + "repo": "nyx", + "rev": "0fe60fa161631289a051fef36dfaab28465ddc7b", + "type": "github" + }, + "original": { + "owner": "chaotic-cx", + "ref": "nyxpkgs-unstable", + "repo": "nyx", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "nur", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-schemas": { + "locked": { + "lastModified": 1721999734, + "narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=", + "rev": "0a5c42297d870156d9c57d8f99e476b738dcd982", + "revCount": 75, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz" + } + }, + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "home-manager": { + "inputs": { + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1758464306, + "narHash": "sha256-i56XRXqjwJRdVYmpzVUQ0ktqBBHqNzQHQMQvFRF/acQ=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "939e91e1cff1f99736c5b02529658218ed819a2a", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "home-manager_2": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1758648381, + "narHash": "sha256-/rp5KlIAH3OxRxS3jbyEAz5gK9l2vvHNEK+TVOjvYJ0=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "5468c92a2350ca76e15ee6617a083c0e6ce7ade7", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "home-manager_3": { + "inputs": { + "nixpkgs": [ + "zen-browser", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1752603129, + "narHash": "sha256-S+wmHhwNQ5Ru689L2Gu8n1OD6s9eU9n9mD827JNR+kw=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "e8c19a3cec2814c754f031ab3ae7316b64da085b", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "jovian": { + "inputs": { + "nix-github-actions": "nix-github-actions", + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1757230583, + "narHash": "sha256-4uqu7sFPOaVTCogsxaGMgbzZ2vK40GVGMfUmrvK3/LY=", + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "rev": "fc3960e6c32c9d4f95fff2ef84444284d24d3bea", + "type": "github" + }, + "original": { + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "type": "github" + } + }, + "nix-github-actions": { + "inputs": { + "nixpkgs": [ + "chaotic", + "jovian", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1729697500, + "narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=", + "owner": "zhaofengli", + "repo": "nix-github-actions", + "rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf", + "type": "github" + }, + "original": { + "owner": "zhaofengli", + "ref": "matrix-name", + "repo": "nix-github-actions", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1758277210, + "narHash": "sha256-iCGWf/LTy+aY0zFu8q12lK8KuZp7yvdhStehhyX1v8w=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "8eaee110344796db060382e15d3af0a9fc396e0e", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-master": { + "locked": { + "lastModified": 1758648169, + "narHash": "sha256-fLoIGEcw4mYHGhqCnnTGQxcyvUwYE9k3i0i0KnUm70c=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "0a0ca83a9589213c9ffb28e242bb1456773629fd", + "type": "github" + }, + "original": { + "owner": "nixos", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1758346548, + "narHash": "sha256-afXE7AJ7MY6wY1pg/Y6UPHNYPy5GtUKeBkrZZ/gC71E=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "b2a3852bd078e68dd2b3dfa8c00c67af1f0a7d20", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-25.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1744536153, + "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1758633633, + "narHash": "sha256-20FVSEcXWV0P1A/1EDMUH7UVFvktg/ltBNqHJmoQTO8=", + "owner": "PedroHLC", + "repo": "nixpkgs", + "rev": "36740bcdb7ea5625132575da3c627032b812c236", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1758427187, + "narHash": "sha256-pHpxZ/IyCwoTQPtFIAG2QaxuSm8jWzrzBGjwQZIttJc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "554be6495561ff07b6c724047bdd7e0716aa7b46", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { + "locked": { + "lastModified": 1756787288, + "narHash": "sha256-rw/PHa1cqiePdBxhF66V7R+WAP8WekQ0mCDG4CFqT8Y=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d0fc30899600b9b3466ddb260fd83deb486c32f1", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nur": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1758648600, + "narHash": "sha256-2+9rHquPi4uU4XsBW5AaLiQydhXASoXmdGSaMwzUWs0=", + "owner": "nix-community", + "repo": "NUR", + "rev": "5485cb562f16cc5c92ec0046620c7eaf5fe31f8d", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NUR", + "type": "github" + } + }, + "root": { + "inputs": { + "aagl": "aagl", + "chaotic": "chaotic", + "home-manager": "home-manager_2", + "nixpkgs": "nixpkgs_4", + "nixpkgs-master": "nixpkgs-master", + "nixpkgs-stable": "nixpkgs-stable", + "nur": "nur", + "winboat": "winboat", + "zen-browser": "zen-browser" + } + }, + "rust-overlay": { + "inputs": { + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1758508617, + "narHash": "sha256-kx2uELmVnAbiekj/YFfWR26OXqXedImkhe2ocnbumTA=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "d2bac276ac7e669a1f09c48614538a37e3eb6d0f", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_2": { + "inputs": { + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1758422215, + "narHash": "sha256-JvF5SXhp1wBHbfEVAWgJCDVSO8iknfDqXfqMch5YWg0=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "6f3988eb5885f1e2efa874a480d91de09a7f9f0b", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "winboat": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs_5" + }, + "locked": { + "lastModified": 1758641699, + "narHash": "sha256-l73zmxPSOZfpC2QgVjtziikdQmNL1KF0KrvcdJyo/J4=", + "owner": "TibixDev", + "repo": "winboat", + "rev": "1dc8c00f3920848a17ea32ed27bc7cf327b8132f", + "type": "github" + }, + "original": { + "owner": "TibixDev", + "repo": "winboat", + "type": "github" + } + }, + "zen-browser": { + "inputs": { + "home-manager": "home-manager_3", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1758601360, + "narHash": "sha256-pvkHU7dAKt4kFXWsIz9PyJiZCJkiO3wR2xPRccPwsfc=", + "owner": "0xc000022070", + "repo": "zen-browser-flake", + "rev": "a3a511b4d7a2f1d729a10e97fd7cb038a41adbd4", + "type": "github" + }, + "original": { + "owner": "0xc000022070", + "repo": "zen-browser-flake", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..087e481 --- /dev/null +++ b/flake.nix @@ -0,0 +1,45 @@ +{ + description = "A very basic flake"; + inputs = { + nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-25.05"; + nixpkgs-master.url = "github:nixos/nixpkgs"; + chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; + aagl.url = "github:ezKEa/aagl-gtk-on-nix"; + winboat.url = "github:TibixDev/winboat"; + home-manager = { + url = "github:nix-community/home-manager/"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + nur = { + url = "github:nix-community/NUR"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + zen-browser = { + url = "github:0xc000022070/zen-browser-flake"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + outputs = { self,nixpkgs,nixpkgs-stable,nixpkgs-master,home-manager,chaotic, zen-browser,nur, aagl, winboat, ...} @ inputs: { + nixosConfigurations = { + "Alfa" = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + specialArgs = { inherit inputs; }; + modules = [ + ./configuration.nix + chaotic.nixosModules.default + nur.modules.nixos.default + {imports = [ aagl.nixosModules.default ]; + nix.settings = aagl.nixConfig; # Set up Cachix + programs.anime-game-launcher.enable = true; + programs.sleepy-launcher.enable = true; + } + ]; + }; + }; + homeConfigurations."gui@Alfa" = home-manager.lib.homeManagerConfiguration { + pkgs = nixpkgs.legacyPackages.x86_64-linux; + modules = [ ./home.nix ]; + }; + }; + } diff --git a/home.nix b/home.nix new file mode 100644 index 0000000..da82822 --- /dev/null +++ b/home.nix @@ -0,0 +1,34 @@ +{pkgs, config, lib, ...}: { + + imports = [ + ./conf/Fontes/fontes.nix + ./conf/Pkgs/pkgshome.nix + ./conf/kitty/kitty.nix + ./conf/git/git.nix + {options.mods = {flakePath = lib.mkOption {type = lib.types.str; default = lib.mkError "Option 'mods.flakePath' must be explicitly set."; description = "The absolute path of this flake. Must be explicitly set.";};};} +]; + + mods = { + kitty.enable = true; + flakePath = "/etc/nixos"; + }; + + home = { + username = "gui"; + homeDirectory = "/home/gui"; + stateVersion = "25.11"; + }; + + programs = { + home-manager.enable = true; + fish.enable = true; + }; + + nixpkgs.config.allowUnfree = true; + + ## config gnome + #dconf = { + # enable = true; + # settings."org/gnome/desktop/interface".color-scheme = "prefer-dark"; + #}; +} \ No newline at end of file diff --git a/imp.nix b/imp.nix new file mode 100644 index 0000000..56aaca4 --- /dev/null +++ b/imp.nix @@ -0,0 +1,23 @@ +{ config, lib, inputs, pkgs, ... }: { + + imports = [ + ./hardware-configuration.nix + ./conf/Pkgs/pkgs.nix + ./conf/Alias/alias.nix + ./conf/CfStorage/CfStorage.nix + ./conf/PatchJogos/patch.nix + ./conf/environmentvariables/variables.nix + ./conf/Flatpak/flatpak.nix + ./conf/Flakes/flakeconfig.nix + ./conf/Nvidia/nvidia.nix + ./conf/NixHelper/nixhelper.nix + ./conf/Audio/audio.nix + ./conf/configidioma/configidioma.nix + ./conf/wireless/wireless.nix + ./conf/Fish/fish.nix + ./conf/DistroBox/distrobox.nix + ./conf/Obs/obs.nix + #./conf/gnome/gnome.nix #gnome + ./conf/Kde/kde.nix #kde + ]; +} diff --git a/nixos b/nixos deleted file mode 120000 index 8fbdcc8..0000000 --- a/nixos +++ /dev/null @@ -1 +0,0 @@ -/etc/nixos/ \ No newline at end of file