From 1fbd820bf247c980d549d7ac0307fc311e960c14 Mon Sep 17 00:00:00 2001 From: Danilo Reyes Date: Sun, 30 Apr 2023 15:56:32 -0600 Subject: [PATCH] installed python packages --- configuration.nix | 811 ++++++++++++++++++++++++---------------------- configuration.org | 29 +- 2 files changed, 440 insertions(+), 400 deletions(-) diff --git a/configuration.nix b/configuration.nix index dec487b..0d1ad08 100644 --- a/configuration.nix +++ b/configuration.nix @@ -1,451 +1,470 @@ -{ config, pkgs, ... -}: { # Remember to close this bracket at the end of the document +{ config, pkgs, ... }: +{ # Remember to close this bracket at the end of the document - imports = [ ./hardware-configuration.nix ]; +imports = [ + ./hardware-configuration.nix + +]; - networking.hostName = "workstation"; +networking.hostName = "workstation"; - # networking.wireless.enable = true; - networking.networkmanager.enable = true; +# networking.wireless.enable = true; +networking.networkmanager.enable = true; - time.timeZone = "America/Mexico_City"; +time.timeZone = "America/Mexico_City"; - i18n = { - defaultLocale = "en_CA.UTF-8"; - extraLocaleSettings = { LC_MONETARY = "es_MX.UTF-8"; }; - }; - console = { - font = "Lat2-Terminus16"; - keyMap = "us"; - # useXkbConfig = true; # use xkbOptions in tty. +i18n = { + defaultLocale = "en_CA.UTF-8"; + extraLocaleSettings = { + LC_MONETARY = "es_MX.UTF-8"; }; +}; +console = { + font = "Lat2-Terminus16"; + keyMap = "us"; + # useXkbConfig = true; # use xkbOptions in tty. +}; - services = { - xserver = { - enable = true; - videoDrivers = [ "nvidia" ]; - displayManager.gdm.enable = true; - desktopManager.gnome.enable = true; - layout = "us"; - libinput.enable = true; # Wacom required? - }; - }; - - environment.gnome.excludePackages = (with pkgs; [ - gnome-photos - gnome-tour - gnome-text-editor - gnome-connections - baobab - ]) ++ (with pkgs.gnome; [ - totem - gedit - gnome-music - epiphany - gnome-characters - yelp - simple-scan - gnome-font-viewer - ]); - - hardware.pulseaudio.enable = false; - sound.enable = false; - security.rtkit.enable = true; - services.pipewire = { +services = { + xserver = { enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; + videoDrivers = [ "nvidia" ]; + displayManager.gdm.enable = true; + desktopManager.gnome.enable = true; + layout = "us"; + libinput.enable = true; # Wacom required? }; +}; - security.sudo = { - enable = true; - wheelNeedsPassword = false; - }; +environment.gnome.excludePackages = (with pkgs; [ + gnome-photos + gnome-tour + gnome-text-editor + gnome-connections + baobab +]) +++ (with pkgs.gnome; [ + totem + gedit + gnome-music + epiphany + gnome-characters + yelp + simple-scan + gnome-font-viewer +]); - # security.sudo.enable = false; - # security.doas.enable = true; - # security.doas.extraRules = [{ - # users = [ "jawz" ]; - # keepEnv = true; - # #persist = true; - # noPass = true; - # }]; +hardware.pulseaudio.enable = false; +sound.enable = false; +security.rtkit.enable = true; +services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; +}; - users.users.jawz = { - isNormalUser = true; - extraGroups = [ "wheel" "networkmanager" "docker" ]; - initialPassword = "password"; - shell = pkgs.fish; - packages = with pkgs; [ ]; - }; +security.sudo = { + enable = true; + wheelNeedsPassword = false; +}; - nixpkgs.config = { allowUnfree = true; }; +# security.sudo.enable = false; +# security.doas.enable = true; +# security.doas.extraRules = [{ +# users = [ "jawz" ]; +# keepEnv = true; +# #persist = true; +# noPass = true; +# }]; - fonts.fontconfig.enable = true; +users.users.jawz = { + isNormalUser = true; + extraGroups = [ "wheel" "networkmanager" "docker" ]; + initialPassword = "password"; + shell = pkgs.fish; + packages = with pkgs; [ ]; +}; - home-manager.useUserPackages = true; - home-manager.useGlobalPkgs = true; +nixpkgs.config = { allowUnfree = true; }; - home-manager.users.jawz = { config, pkgs, ... }: { +fonts.fontconfig.enable = true; + +home-manager.useUserPackages = true; +home-manager.useGlobalPkgs = true; + +home-manager.users.jawz = { config, pkgs, ... }:{ # imports = [ ./dotfiles/dconf.nix ]; home.stateVersion = "22.11"; - home.packages = with pkgs; [ + home.packages = (with pkgs; [ - # Art - blender # cgi animation and sculpting - godot # game development - krita # art to your heart desire! - drawpile # arty party with friends!! - mypaint # not the best art program - mypaint-brushes # but it's got some - mypaint-brushes1 # nice damn brushes +# Art +blender # cgi animation and sculpting +godot # game development +krita # art to your heart desire! +drawpile # arty party with friends!! +mypaint # not the best art program +mypaint-brushes # but it's got some +mypaint-brushes1 # nice damn brushes - # Gaming - lutris # game/emulator manager - grapejuice # roblox manager - minecraft # minecraft official launcher - parsec-bin # remote gaming with friends +# Gaming +lutris # game/emulator manager +grapejuice # roblox manager +minecraft # minecraft official launcher +parsec-bin # remote gaming with friends - # Productivity - libreoffice-fresh # office, but based - calibre # ugly af eBook library manager - foliate # gtk eBook reader - gnome.simple-scan # document scanner - gnome-feeds # feed reader, maybe will replace with nextcloud - tagger # tag music files +# Productivity +libreoffice-fresh # office, but based +calibre # ugly af eBook library manager +foliate # gtk eBook reader +gnome.simple-scan # document scanner +gnome-feeds # feed reader, maybe will replace with nextcloud +tagger # tag music files - # Misc - sequeler # friendly SQL client - blanket # background noise - czkawka # duplicate finder - # pika-backup # backups - tilix # terminal - gnome-obfuscate # censor private information - metadata-cleaner # remove any metadata and geolocation from files - # gnome-recipes # migrate these to mealie and delete +# Misc +sequeler # friendly SQL client +blanket # background noise +czkawka # duplicate finder +# pika-backup # backups +tilix # terminal +gnome-obfuscate # censor private information +metadata-cleaner # remove any metadata and geolocation from files +# gnome-recipes # migrate these to mealie and delete - # Multimedia - celluloid # video player - cozy # audiobooks player - gnome-podcasts # podcast player - handbrake # video converter, may be unnecessary - curtail # image compressor - pitivi # video editor - # identity # compare images or videos - mousai # poor man shazam - # bottles # wine prefix manager - obs-studio # screen recorder & streamer - shortwave # listen to world radio +# Multimedia +celluloid # video player +cozy # audiobooks player +gnome-podcasts # podcast player +handbrake # video converter, may be unnecessary +curtail # image compressor +pitivi # video editor +# identity # compare images or videos +mousai # poor man shazam +# bottles # wine prefix manager +obs-studio # screen recorder & streamer +shortwave # listen to world radio - # Web - discord # chat - google-chrome # web browser with spyware included - firefox # web browser that allows to disable spyware - librewolf # no spyware web browser - tor-browser-bundle-bin # dark web, so dark! - # hugo # website engine - nicotine-plus # remember Ares? - warp # never used, but supposedly cool for sharing files +# Web +discord # chat +google-chrome # web browser with spyware included +firefox # web browser that allows to disable spyware +librewolf # no spyware web browser +tor-browser-bundle-bin # dark web, so dark! +# hugo # website engine +nicotine-plus # remember Ares? +warp # never used, but supposedly cool for sharing files - gdu # disk-space utility, somewhat useful - gocryptfs # encrypted filesystem! shhh!!! - exa # like ls but with colors - trash-cli # oop! didn't meant to delete that - ffmpeg_5 # coolest video converter! - yt-dlp # downloads videos from most video websites - neofetch # use once for brag, never again - rmlint # probably my favourite app, amazing dupe finder that integrates well with BTRFS - tldr # man for retards - ffmpegthumbnailer # create video thumbnails for nautilus, in absence of totem - mediainfo # technical info about videos, needed by some of my scripts - tree-sitter # code parsing, required by Doom emacs - xdg-ninja # help declutter $HOME - torrenttools # create torrent files from the terminal! +gdu # disk-space utility, somewhat useful +gocryptfs # encrypted filesystem! shhh!!! +exa # like ls but with colors +trash-cli # oop! didn't meant to delete that +ffmpeg_5 # coolest video converter! +yt-dlp # downloads videos from most video websites +neofetch # use once for brag, never again +rmlint # probably my favourite app, amazing dupe finder that integrates well with BTRFS +tldr # man for retards +ffmpegthumbnailer # create video thumbnails for nautilus, in absence of totem +vcsi # video thumbnails for torrents, can I replace it with ^? +mediainfo # technical info about videos, needed by some of my scripts +tree-sitter # code parsing, required by Doom emacs +xdg-ninja # help declutter $HOME +torrenttools # create torrent files from the terminal! - # required by doom emacs, but still are rather useful. - fd # modern find, faster searches - fzf # fuzzy finder! super cool and useful - ripgrep # modern grep - languagetool # proofreader for English. check if works without the service +# required by doom emacs, but still are rather useful. +fd # modern find, faster searches +fzf # fuzzy finder! super cool and useful +ripgrep # modern grep +languagetool # proofreader for English. check if works without the service - # development environment - nix-direnv # nix implementation of direnv - exercism # learn to code +# development environment +nix-direnv # nix implementation of direnv +exercism # learn to code - # SH - bats # testing system, required by Exercism - bashdb # autocomplete - shellcheck # linting - shfmt # a shell parser and formatter - nodePackages.bash-language-server # LSP support +# SH +bats # testing system, required by Exercism +bashdb # autocomplete +shellcheck # linting +shfmt # a shell parser and formatter +nodePackages.bash-language-server # LSP support - # NIX - nixfmt # linting +# NIX +nixfmt # linting - # PYTHON. - python3 # base language - python310Packages.pipx +# PYTHON. +python3 # base language +pipenv # python development workflow for humans - # C# & Rust - omnisharp-roslyn +# C# & Rust +omnisharp-roslyn - # HASKELL - # cabal-install # haskell interface +# HASKELL +# cabal-install # haskell interface - # JS - # jq # linting - # Node-js - # nodePackages.pnpm +# JS +# jq # linting +# Node-js +# nodePackages.pnpm - gnome.gnome-tweaks +gnome.gnome-tweaks - gnomeExtensions.appindicator - gnomeExtensions.gsconnect +gnomeExtensions.appindicator +gnomeExtensions.gsconnect - hunspell - hunspellDicts.it_IT - hunspellDicts.es_MX - hunspellDicts.en_CA +hunspell +hunspellDicts.it_IT +hunspellDicts.es_MX +hunspellDicts.en_CA - # Themes - adwaita-qt +# Themes +adwaita-qt - # Fonts - (nerdfonts.override { - fonts = [ - "Agave" - "CascadiaCode" - "SourceCodePro" - "Ubuntu" - "FiraCode" - "Iosevka" - ]; - }) +# Fonts +(nerdfonts.override { + fonts = [ "Agave" "CascadiaCode" "SourceCodePro" "Ubuntu" "FiraCode" "Iosevka" ]; +}) - # (papirus-icon-theme.override { - # color = "grey"; - # }) - ]; +# (papirus-icon-theme.override { +# color = "grey"; +# }) - programs.starship.enable = true; - programs.fish = { - enable = true; - # useBabelfish = true; This setting doens't work from inside home-manager - shellAliases = { - ls = - "exa --icons --group-directories-first --no-permissions --no-user --no-time"; - edit = "emacsclient -t"; - comic = "download -u jawz -i (cat $lc | fzf --multi --exact -i)"; - gallery = "download -u jawz -i (cat $lw | fzf --multi --exact -i)"; - open_gallery = - "open (find /mnt/disk2/scrapping/JawZ/gallery-dl -type d | fzf)"; - unique_extensions = - "find . -type f | string match -r '([^./]+)$' | sort -u"; - cp = "cp -i"; - mv = "mv -i"; - mkdir = "mkdir -p"; - rm = "trash"; - ".." = "cd .."; - "..." = "cd ../.."; - ".3" = "cd ../../.."; - ".4" = "cd ../../../.."; - ".5" = "cd ../../../../.."; - }; - shellAbbrs = { - dl = "download -u jawz -i"; - ex = "ls"; - e = "edit"; - c = "cat"; - f = "fzf --multi --exact -i"; - sc = "systemctl --user"; - jc = "journalctl --user -xeu"; - }; - interactiveShellInit = '' - - set fish_greeting "pika pika chu!!!! also remember fisher!" - # Lists - set -l list_root ${config.home.homeDirectory}/.config/jawz/lists/jawz - set lw $list_root/watch.txt - set li $list_root/instant.txt - set lc $list_root/comic.txt - - set GPG_TTY (tty) - - # Set EMACS/VI mode - function fish_user_key_bindings - # fish_default_key_bindings - fish_vi_key_bindings - end - - ''; - - functions = { - nixos-magic = '' - - set -l nix_file "$HOME/Development/NixOS/configuration.nix" - echo $nix_file - nixfmt $nix_file - sudo nixos-rebuild switch -I nixos-config=$nix_file - - ''; - }; - }; - - programs.bat = { - enable = true; - config = { - # map-syntax = [ "*.jenkinsfile:Groovy" "*.props:Java Properties" ]; - pager = "less -FR"; - theme = "base16"; - }; - }; - - programs.git = { - enable = true; - userName = "Danilo Reyes"; - userEmail = "CaptainJawZ@outlook.com"; - }; - - programs.gpg = { - enable = true; - homedir = "${config.xdg.dataHome}/gnupg"; - }; - - programs.htop = { - enable = true; - package = pkgs.htop-vim; - }; - xdg.configFile."htop/htoprc".source = ./dotfiles/htop/htoprc; - - xdg = { enable = true; }; - xdg.userDirs = { - enable = true; - # createDirectories = true; - desktop = "${config.home.homeDirectory}"; - documents = "${config.home.homeDirectory}/Documents"; - download = "${config.home.homeDirectory}/Downloads"; - music = "${config.home.homeDirectory}/Music"; - pictures = "${config.home.homeDirectory}/Pictures"; - # publicShare = "${config.home.homeDirectory}/.local/hd/Public"; - templates = "${config.home.homeDirectory}/.local/share/Templates"; - videos = "${config.home.homeDirectory}/Videos"; - }; - - xdg.configFile = { - "wgetrc".source = ./dotfiles/wget/wgetrc; - "configstore/update-notifier-npm-check.json".source = - ./dotfiles/npm/update-notifier-npm-check.json; - "npm/npmrc".source = ./dotfiles/npm/npmrc; - "gallery-dl/config.json".source = ./dotfiles/gallery-dl/config.json; - }; - - # services.mpd-discord-rpc.enable = true; - # services.mpdris2 = { - # enable = true; - # multimediaKeys = true; - # mpd.host = "localhost"; - # }; +]) ++ (with pkgs.python310Packages; [ + black # Python code formatter + flake8 # wraper for pyflakes, pycodestyle and mccabe + gdtoolkit # gdscript parser + isort # sort Python imports + nose # testing and running python scripts + pipx # install python packages in a virtual environment + poetry # dependency management made easy + pyflakes # checks source code for errors + pylint # bug and style checker for python + pytest # framework for writing tests + speedtest-cli # check internet speed from the comand line +]); +programs.starship.enable = true; +programs.fish = { + enable = true; + # useBabelfish = true; This setting doens't work from inside home-manager + shellAliases = { + ls = "exa --icons --group-directories-first --no-permissions --no-user --no-time"; + edit = "emacsclient -t"; + comic = "download -u jawz -i (cat $lc | fzf --multi --exact -i)"; + gallery = "download -u jawz -i (cat $lw | fzf --multi --exact -i)"; + open_gallery = "open (find /mnt/disk2/scrapping/JawZ/gallery-dl -type d | fzf)"; + unique_extensions = "find . -type f | string match -r '([^.\/]+)\$' | sort -u"; + cp = "cp -i"; + mv = "mv -i"; + mkdir = "mkdir -p"; + rm = "trash"; + ".." = "cd .."; + "..." = "cd ../.."; + ".3" = "cd ../../.."; + ".4" = "cd ../../../.."; + ".5" = "cd ../../../../.."; }; - - environment.systemPackages = with pkgs; [ wget docker-compose ]; - - environment.sessionVariables = rec { - # PATH - XDG_CACHE_HOME = "\${HOME}/.cache"; - XDG_CONFIG_HOME = "\${HOME}/.config"; - XDG_BIN_HOME = "\${HOME}/.local/bin"; - XDG_DATA_HOME = "\${HOME}/.local/share"; - XDG_STATE_HOME = "\${HOME}/.local/state"; - - SCRIPTS = "\${HOME}/Development/Scripts"; - - # DEV PATH - CABAL_CONFIG = "\${XDG_CONFIG_HOME}/cabal/config"; - CABAL_DIR = "\${XDG_CACHE_HOME}/cabal"; - CARGO_HOME = "\${XDG_DATA_HOME}/cargo"; - GEM_HOME = "\${XDG_DATA_HOME}/ruby/gems"; - GEM_PATH = "\${XDG_DATA_HOME}/ruby/gems"; - GEM_SPEC_CACHE = "\${XDG_DATA_HOME}/ruby/specs"; - GOPATH = "\${XDG_DATA_HOME}/go"; - NPM_CONFIG_USERCONFIG = "\${XDG_CONFIG_HOME}/npm/npmrc"; - PNPM_HOME = "\${XDG_DATA_HOME}/pnpm"; - # OPTIONS - LESSHISTFILE = "-"; - GHCUP_USE_XDG_DIRS = "true"; - RIPGREP_CONFIG_PATH = "\${XDG_CONFIG_HOME}/ripgrep/ripgreprc"; - ELECTRUMDIR = "\${XDG_DATA_HOME}/electrum"; - VISUAL = "emacsclient -ca emacs"; - WGETRC = "\${XDG_CONFIG_HOME}/wgetrc"; - "_JAVA_OPTIONS" = "-Djava.util.prefs.userRoot=\${XDG_CONFIG_HOME}/java"; - # NVIDIA - CUDA_CACHE_PATH = "\${XDG_CACHE_HOME}/nv"; - # GBM_BACKEND = "nvidia-drm"; - # "__GLX_VENDOR_LIBRARY_NAME" = "nvidia"; - # FISH - fisher_path = "\${XDG_CONFIG_HOME}/fish/fisher"; - # Themes - # GTK_THEME = "Adwaita:light"; - # QT_QPA_PLATFORMTHEME = "adwaita-dark"; - # QT_STYLE_OVERRIDE = "adwaita"; - # CALIBRE_USE_SYSTEM_THEME = "1"; - - PATH = [ - "\${XDG_BIN_HOME}" - "\${XDG_CONFIG_HOME}/emacs/bin" - # "\${XDG_DATA_HOME}/npm/bin" - # "\${PNPM_HOME}" - # "\${SCRIPTS}" - ]; + shellAbbrs = { + dl = "download -u jawz -i"; + ex = "ls"; + e = "edit"; + c = "cat"; + f = "fzf --multi --exact -i"; + sc = "systemctl --user"; + jc = "journalctl --user -xeu"; }; + interactiveShellInit = '' - virtualisation.docker = { +set fish_greeting "pika pika chu!!!! also remember fisher!" +# Lists +set -l list_root ${config.home.homeDirectory}/.config/jawz/lists/jawz +set lw $list_root/watch.txt +set li $list_root/instant.txt +set lc $list_root/comic.txt + +set GPG_TTY (tty) + +# Set EMACS/VI mode +function fish_user_key_bindings + # fish_default_key_bindings + fish_vi_key_bindings +end + +''; + +functions = { + nixos-magic = '' + +set -l nix_file "$HOME/Development/NixOS/configuration.nix" +echo $nix_file +nixfmt $nix_file +sudo nixos-rebuild switch -I nixos-config=$nix_file + + ''; + }; +}; + +programs.bat = { + enable = true; + config = { + # map-syntax = [ "*.jenkinsfile:Groovy" "*.props:Java Properties" ]; + pager = "less -FR"; + theme = "base16"; }; +}; + +programs.git = { + enable = true; + userName = "Danilo Reyes"; + userEmail = "CaptainJawZ@outlook.com"; +}; + +programs.gpg = { + enable = true; + homedir = "${config.xdg.dataHome}/gnupg"; +}; + +programs.htop = { + enable = true; + package = pkgs.htop-vim; +}; +xdg.configFile."htop/htoprc".source = ./dotfiles/htop/htoprc; + +xdg = { + enable = true; +}; +xdg.userDirs = { + enable = true; + # createDirectories = true; + desktop = "${config.home.homeDirectory}"; + documents = "${config.home.homeDirectory}/Documents"; + download = "${config.home.homeDirectory}/Downloads"; + music = "${config.home.homeDirectory}/Music"; + pictures = "${config.home.homeDirectory}/Pictures"; + # publicShare = "${config.home.homeDirectory}/.local/hd/Public"; + templates = "${config.home.homeDirectory}/.local/share/Templates"; + videos = "${config.home.homeDirectory}/Videos"; +}; + +xdg.configFile = { + "wgetrc".source = ./dotfiles/wget/wgetrc; + "configstore/update-notifier-npm-check.json".source = ./dotfiles/npm/update-notifier-npm-check.json; + "npm/npmrc".source = ./dotfiles/npm/npmrc; + "gallery-dl/config.json".source = ./dotfiles/gallery-dl/config.json; +}; + +# services.mpd-discord-rpc.enable = true; +# services.mpdris2 = { +# enable = true; +# multimediaKeys = true; +# mpd.host = "localhost"; +# }; + +}; + +environment.systemPackages = with pkgs; [ + wget + docker-compose +]; + +environment.sessionVariables = rec { + # PATH + XDG_CACHE_HOME = "\${HOME}/.cache"; + XDG_CONFIG_HOME = "\${HOME}/.config"; + XDG_BIN_HOME = "\${HOME}/.local/bin"; + XDG_DATA_HOME = "\${HOME}/.local/share"; + XDG_STATE_HOME = "\${HOME}/.local/state"; + + SCRIPTS = "\${HOME}/Development/Scripts"; + + # DEV PATH + CABAL_CONFIG = "\${XDG_CONFIG_HOME}/cabal/config"; + CABAL_DIR = "\${XDG_CACHE_HOME}/cabal"; + CARGO_HOME = "\${XDG_DATA_HOME}/cargo"; + GEM_HOME = "\${XDG_DATA_HOME}/ruby/gems"; + GEM_PATH = "\${XDG_DATA_HOME}/ruby/gems"; + GEM_SPEC_CACHE = "\${XDG_DATA_HOME}/ruby/specs"; + GOPATH = "\${XDG_DATA_HOME}/go"; + NPM_CONFIG_USERCONFIG = "\${XDG_CONFIG_HOME}/npm/npmrc"; + PNPM_HOME = "\${XDG_DATA_HOME}/pnpm"; + # OPTIONS + LESSHISTFILE = "-"; + GHCUP_USE_XDG_DIRS = "true"; + RIPGREP_CONFIG_PATH = "\${XDG_CONFIG_HOME}/ripgrep/ripgreprc"; + ELECTRUMDIR = "\${XDG_DATA_HOME}/electrum"; + VISUAL = "emacsclient -ca emacs"; + WGETRC = "\${XDG_CONFIG_HOME}/wgetrc"; + "_JAVA_OPTIONS" = "-Djava.util.prefs.userRoot=\${XDG_CONFIG_HOME}/java"; + # NVIDIA + CUDA_CACHE_PATH = "\${XDG_CACHE_HOME}/nv"; + # GBM_BACKEND = "nvidia-drm"; + # "__GLX_VENDOR_LIBRARY_NAME" = "nvidia"; + # FISH + fisher_path = "\${XDG_CONFIG_HOME}/fish/fisher"; + # Themes + # GTK_THEME = "Adwaita:light"; + # QT_QPA_PLATFORMTHEME = "adwaita-dark"; + # QT_STYLE_OVERRIDE = "adwaita"; + # CALIBRE_USE_SYSTEM_THEME = "1"; + + PATH = [ + "\${XDG_BIN_HOME}" + "\${XDG_CONFIG_HOME}/emacs/bin" + # "\${XDG_DATA_HOME}/npm/bin" + # "\${PNPM_HOME}" + # "\${SCRIPTS}" + ]; +}; + +virtualisation.docker = { enable = true; storageDriver = "btrfs"; enableNvidia = true; +}; + +programs = { + mtr.enable = true; + gnupg.agent = { + enable = true; + enableSSHSupport = true; }; - - programs = { - mtr.enable = true; - gnupg.agent = { - enable = true; - enableSSHSupport = true; - }; - geary = { enable = true; }; - steam = { - enable = true; - remotePlay.openFirewall = true; - dedicatedServer.openFirewall = true; - }; + geary = { + enable = true; }; - - services = { - printing.enable = true; - emacs = { - enable = true; - defaultEditor = true; - package = pkgs.emacs; - }; - fstrim.enable = true; - btrfs.autoScrub = { - enable = true; - fileSystems = [ "/" "/mnt/disk1" "/mnt/disk2" ]; - }; - openssh = { - enable = true; - ports = [ 25152 ]; - }; - udev.packages = with pkgs; [ gnome.gnome-settings-daemon ]; + steam = { + enable = true; + remotePlay.openFirewall = true; + dedicatedServer.openFirewall = true; }; +}; - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - networking.firewall.enable = false; +services = { + printing.enable = true; + emacs = { + enable = true; + defaultEditor = true; + package = pkgs.emacs; + }; + fstrim.enable = true; + btrfs.autoScrub = { + enable = true; + fileSystems = [ + "/" + "/mnt/disk1" + "/mnt/disk2" + ]; + }; + openssh = { + enable = true; + ports = [ 25152 ]; + }; + udev.packages = with pkgs; [ gnome.gnome-settings-daemon ]; +}; - system.copySystemConfiguration = true; +# networking.firewall.allowedTCPPorts = [ ... ]; +# networking.firewall.allowedUDPPorts = [ ... ]; +# Or disable the firewall altogether. +networking.firewall.enable = false; - system.stateVersion = "22.11"; +system.copySystemConfiguration = true; + +system.stateVersion = "22.11"; } diff --git a/configuration.org b/configuration.org index c87d088..bac6931 100755 --- a/configuration.org +++ b/configuration.org @@ -264,10 +264,13 @@ necessary. home-manager.users.jawz = { config, pkgs, ... }:{ # imports = [ ./dotfiles/dconf.nix ]; home.stateVersion = "22.11"; - home.packages = with pkgs; [ + home.packages = (with pkgs; [ #+end_src -*** GUI PACKAGES +*** GUI PACKAGES :ATTACH: +:PROPERTIES: +:ID: d5a59b97-4c99-4813-9583-4bdbc978dbad +:END: #+begin_src nix # Art @@ -340,6 +343,7 @@ neofetch # use once for brag, never again rmlint # probably my favourite app, amazing dupe finder that integrates well with BTRFS tldr # man for retards ffmpegthumbnailer # create video thumbnails for nautilus, in absence of totem +vcsi # video thumbnails for torrents, can I replace it with ^? mediainfo # technical info about videos, needed by some of my scripts tree-sitter # code parsing, required by Doom emacs xdg-ninja # help declutter $HOME @@ -371,7 +375,7 @@ nixfmt # linting # PYTHON. python3 # base language -python310Packages.pipx +pipenv # python development workflow for humans # C# & Rust omnisharp-roslyn @@ -419,7 +423,24 @@ adwaita-qt # (papirus-icon-theme.override { # color = "grey"; # }) -]; +#+end_src + +** PYTHON + +#+begin_src nix +]) ++ (with pkgs.python310Packages; [ + black # Python code formatter + flake8 # wraper for pyflakes, pycodestyle and mccabe + gdtoolkit # gdscript parser + isort # sort Python imports + nose # testing and running python scripts + pipx # install python packages in a virtual environment + poetry # dependency management made easy + pyflakes # checks source code for errors + pylint # bug and style checker for python + pytest # framework for writing tests + speedtest-cli # check internet speed from the comand line +]); #+end_src ** DOTFILES