Last active
June 5, 2025 19:50
-
-
Save ph4un00b/ddd0b5e29ecbae3706d6b0f4dcaa8941 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
description = "monterrelleno-mba17 nix-darwin system flake"; | |
inputs = { | |
# este ghostty es uno exclusivo para mocos monterrey, un crack el tipito | |
# TODO: apreder lo minimo de objetive-c para usar el libghostty y sentirme sexy | |
# @see: https://ghostty.org/docs/about#libghostty | |
ghostty = { | |
url = "github:fightingdreamer/ghostty/v1.1.2-macos-12"; | |
}; | |
android-nixpkgs.url = "github:tadfisher/android-nixpkgs"; | |
nix-homebrew.url = "github:zhaofengli-wip/nix-homebrew"; | |
homebrew-core = { | |
url = "github:homebrew/homebrew-core"; | |
flake = false; | |
}; | |
homebrew-cask = { | |
url = "github:homebrew/homebrew-cask"; | |
flake = false; | |
}; | |
homebrew-bundle = { | |
url = "github:homebrew/homebrew-bundle"; | |
flake = false; | |
}; | |
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; | |
nix-darwin.url = "github:LnL7/nix-darwin"; | |
nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; | |
nixpkgs-24-11.url = "github:NixOS/nixpkgs/nixos-24.11"; | |
}; | |
outputs = inputs @ { | |
self, | |
nix-darwin, | |
nixpkgs, | |
ghostty, | |
nixpkgs-24-11, | |
nix-homebrew, | |
homebrew-core, | |
homebrew-cask, | |
homebrew-bundle, | |
... | |
}: let | |
brew = | |
nix-homebrew.darwinModules.nix-homebrew | |
{ | |
# Install Homebrew under the default prefix | |
nix-homebrew.enable = true; | |
# Apple Silicon Only: Also install Homebrew under the default Intel prefix for Rosetta 2 | |
nix-homebrew.enableRosetta = false; | |
# User owning the Homebrew prefix | |
nix-homebrew.user = "phau"; | |
# Optional: Enable fully-declarative tap management | |
# | |
# With mutableTaps disabled, taps can no longer be added imperatively with `brew tap`. | |
mutableTaps = false; | |
nix-homebrew = { | |
# Optional: Declarative tap management | |
taps = { | |
"homebrew/homebrew-core" = homebrew-core; | |
"homebrew/homebrew-cask" = homebrew-cask; | |
"homebrew/homebrew-bundle" = homebrew-bundle; | |
}; | |
}; | |
}; | |
configuration = {pkgs, fetchPypi, lib, ...}: { | |
# List packages installed in system profile. To search by name, run: | |
# $ nix-env -qaP | grep wget | |
# TODO: checar como hacerlo granularmente para dejar de ser un trolazo | |
nixpkgs.config.allowUnfree = true; # por el vscode! | |
# e; broken te permite compilar al chile y ver que pasa | |
# nixpkgs.config.allowBroken = true; # por el ghostty trucho para mocos monterrey | |
nixpkgs.overlays = [ | |
(final: prev: { | |
# apple_sdk_10_15 = (import nixpkgs-24-11 { | |
# system = prev.system; | |
# config = { allowUnfree = true; }; | |
# }).darwin.apple_sdk_10_15; | |
# ghostty = | |
# if prev.ghostty == null then null | |
# else prev.ghostty.overrideAttrs (old: { | |
# meta = old.meta // { | |
# platforms = old.meta.platforms ++ ["x86_64-darwin" "aarch64-darwin"]; | |
# }; | |
# }); | |
podman_4_9_3 = prev.podman.overrideAttrs (oldAttrs: { | |
version = "4.9.3"; | |
src = prev.fetchFromGitHub { | |
owner = "containers"; | |
repo = "podman"; | |
rev = "v4.9.3"; | |
hash = "sha256-PdAXcXtc/Jl3ttWWB6TciiOwWescJ51Glhf2ZhOw550="; | |
}; | |
vendorHash = null; | |
patches = []; | |
}); | |
}) | |
]; | |
environment.systemPackages = [ | |
# pkgs.xcbuild # aqui anda el xcrun, pero mejor no, todos los mac-tools parece mejor manejarlos en global... el p@to padre milei!. | |
pkgs.neovim | |
pkgs.atuin | |
# pkgs.yt-dlp | |
pkgs.streamlink | |
pkgs.flameshot | |
pkgs.jdk17 | |
# TODO: checar como nixificar extensiones para vscode | |
pkgs.vscode | |
# [exeternal formatter] por que a linu le moja esta mina! | |
pkgs.alejandra | |
# browser | |
# pkgs.vivaldi no funka desde aquí! fallbackeando a brew | |
pkgs.cocoapods | |
# ponerle docker a esta mac, esta feo, probando un rato el podman :] | |
# la version > 4.93, no funka en monterrey ;[ | |
pkgs.podman_4_9_3 | |
# le pasamo el qemu para que lo use como backend podman 4 | |
# desde la version 5 podman dropeo al qemu para usar el hw de los Mx para los mocos | |
pkgs.qemu | |
# discordio | |
pkgs.discord | |
# github cli | |
pkgs.gh | |
# esto puede ser un kilimbo si hay otras app que utilizen otras versiones? | |
pkgs.zig_0_13 | |
# fancy terminal | |
# esta vaina esta rotta desde el nixon | |
# @see https://github.com/NixOS/nixpkgs/issues/388984 | |
# usando la ayuda del pijón de linu ó fallbackeando a brew (nel el bre me pide >=ventura) | |
# inputs.ghostty.packages.${pkgs.system}.default | |
# inputs.ghostty.packages.x86_64-darwin.default | |
# pkgs.ghostty | |
# el ghosty trucho necesita el sdk 10.5.6 para copilar | |
# | |
# tried /nix/store/jpw2apglybgixjvwpaj7nm6aiq1qnjg8-apple-sdk-10.15.6/Platforms/MacOSX.platform/ | |
# Developer/SDKs/MacOSX10.15.sdk//nix/store/jpw2apglybgixjvwpaj7nm6aiq1qnjg8-apple-sdk-10.15.6/ | |
# Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/lib/system/libsystem_symptoms.tbd | |
# | |
# con nixon podes usar https://github.com/NixOS/nixpkgs/blob/nixos-24.11/pkgs/by-name/ap/apple-sdk/package.nix#L115 | |
# pkgs.apple-sdk_10_15 | |
# pkgs.ghostty | |
# esta invocation de linu esta muy puerka, TODO: entender | |
# (inputs.ghostty.packages.${pkgs.system}.default.overrideAttrs (oldAttrs: { | |
# meta = (oldAttrs.meta or {}) // { | |
# platforms = pkgs.lib.platforms.darwin ++ (oldAttrs.meta.platforms or []); | |
# }; | |
# })) | |
# @see: https://eradman.com/entrproject/ | |
# lo usamos para correr los test | |
pkgs.entr | |
]; | |
# DOCS: | |
# $ man 5 configuration.nix | |
# OR | |
# $ darwin-help | |
# OR | |
# @see https://mynixos.com/search?q=darwin | |
system.defaults = { | |
dock.autohide = true; | |
dock.mru-spaces = false; | |
dock.expose-animation-duration = 0.0; | |
dock.tilesize = 256; | |
finder.AppleShowAllExtensions = true; | |
finder.AppleShowAllFiles = true; | |
finder.FXPreferredViewStyle = "clmv"; # Default Finder folder: columns view | |
finder.FXDefaultSearchScope = "SCcf"; | |
loginwindow.LoginwindowText = "tu vieja en bombachita!"; | |
loginwindow.GuestEnabled = false; | |
screencapture.location = "~/Pictures/shots"; | |
screensaver.askForPasswordDelay = 10; | |
NSGlobalDomain.AppleICUForce24HourTime = true; | |
NSGlobalDomain.AppleInterfaceStyle = "Dark"; | |
NSGlobalDomain.KeyRepeat = 2; | |
NSGlobalDomain._HIHideMenuBar = true; | |
NSGlobalDomain.NSAutomaticCapitalizationEnabled = false; | |
NSGlobalDomain.NSAutomaticDashSubstitutionEnabled = false; | |
NSGlobalDomain.NSAutomaticPeriodSubstitutionEnabled = false; | |
NSGlobalDomain.NSAutomaticQuoteSubstitutionEnabled = false; | |
NSGlobalDomain.NSAutomaticSpellingCorrectionEnabled = false; | |
}; | |
# TODO: investigar otros hooks existentes | |
system.activationScripts.postFlake.text = '' | |
# esto no funka linu! | |
# pero el postflake me lo saque del orto de un ia a la lowiq | |
PP='\033[0;35m' | |
DONE='\033[0m' | |
echo -e "''${PP}esto va al final?????''${DONE}" | |
''; | |
system.activationScripts.postUserActivation.text = '' | |
# RED='\033[0;31m' # interesante que el nixos se queja que no lo usamos la env-var RED. | |
PP='\033[0;35m' | |
DONE='\033[0m' | |
echo -e "''${PP}holis... aquí inicia lo delicioso?''${DONE}" | |
''; | |
# linu se puede namespaciar los scripts para no tener todos en un solo taco todo inmundo? | |
system.activationScripts.preUserActivation.text = '' | |
if ! ~/.puro/bin/puro ls-versions; then | |
curl -o- https://puro.dev/install.sh | PURO_VERSION="1.4.6" bash | |
~/.puro/bin/puro ls-versions | |
~/.puro/bin/puro create prod 3.24.5 | |
~/.puro/bin/puro use -g prod | |
fi | |
if ! xcode-select --version 2>/dev/null; then | |
run echo "ponele el xcode y el xcode-select --install bolude!" | |
fi | |
''; | |
homebrew.enable = true; | |
# "mas" necesita xcode, la concha de la lora! | |
homebrew.brews = ["mas" "trash" "yt-dlp"]; | |
# el zed de pkgs es otro coso D:< | |
homebrew.casks = | |
["iina" "zed" "google-chrome" "camtasia" "vivaldi" "alfred@4"] | |
# ++ [ "hammerspoon" "the-unarchiver" ]; | |
# | |
# para flutter lo manejamos globalmente desde el android studio | |
# 1. instalar los command-line tools desde android studio | |
# 2. instalar los platform tools desde android studio | |
# 3. actualizar el sdk del flutter: $ puro flutter config --android-sdk ~/Library/Android/sdk/ | |
# 4. $ puro flutter doctor --android-licenses | |
# ++ [ "android-studio" "android-ndk" "android-commandlinetools" "android-platform-tools"]; | |
++ ["android-studio" "android-ndk"]; | |
homebrew.onActivation.cleanup = "zap"; # se folla lo que no esta declarado | |
homebrew.onActivation.autoUpdate = false; # actualiza en cada rebuild | |
homebrew.onActivation.upgrade = false; # lo que funka funka papu :v | |
homebrew.extraConfig = '' | |
# pa que lo carge el spotlight bien ricardo :d | |
cask_args appdir: "/Applications" | |
''; | |
environment.variables = { | |
EDITOR = "zed"; | |
JAVA_HOME = "${pkgs.jdk17.home}"; | |
# @see: $ brew info android-commandlinetools | |
# ANDROID_SDK = "/usr/local/share/android-commandlinetools"; | |
ANDROID_NDK_HOME = "/usr/local/share/android-ndk"; | |
}; | |
# instalar xcode en modo normie aka globalmente | |
# @see https://xcodereleases.com | |
# es un kilombo nixificar xcode | |
# mocos funciona con una idea de global state en unos cosos | |
# homebrew.masApps = { Xcode = 497799835; }; | |
fonts.packages = [ | |
pkgs.nerd-fonts.jetbrains-mono | |
]; | |
# Necessary for using flakes on this system. | |
nix.settings.experimental-features = ["nix-command" "flakes"]; | |
# nix.settings = { | |
# experimental-features = [ | |
# "nix-command" | |
# "flakes" | |
# "ca-derivations" | |
# "auto-allocate-uids" | |
# "cgroups" | |
# "pipe-operators" | |
# "impure-derivations" | |
# ]; | |
# }; | |
# Enable alternative shell support in nix-darwin. | |
programs.fish.enable = true; | |
programs.fish.loginShellInit = "set -U fish_user_paths /Users/phau/.puro/envs/prod/flutter/bin $fish_user_paths"; | |
programs.fish.shellAliases = { | |
# en una nueva ventanika van a estar disponibles los aliases! | |
# hacete las carpetas antes boludo! | |
p = "cd ~/projects"; | |
# hay que recordar a las viejas confiables :] | |
skitch = "flameshot"; | |
rm = "/usr/local/opt/trash/bin/trash -v"; | |
t = "/usr/local/opt/trash/bin/trash -l"; | |
# flutter | |
puro = "~/.puro/bin/puro"; | |
}; | |
# Set Git commit hash for darwin-version. | |
system.configurationRevision = self.rev or self.dirtyRev or null; | |
# Used for backwards compatibility, please read the changelog before changing. | |
# $ darwin-rebuild changelog | |
system.stateVersion = 5; | |
# The platform the configuration will be used on. | |
nixpkgs.hostPlatform = "x86_64-darwin"; | |
}; | |
in { | |
# Build darwin flake using: | |
# $ darwin-rebuild build --flake .#kaka | |
darwinConfigurations."kaka" = nix-darwin.lib.darwinSystem { | |
modules = [ | |
configuration | |
nix-homebrew.darwinModules.nix-homebrew | |
{ | |
nix-homebrew = { | |
# Install Homebrew under the default prefix | |
enable = true; | |
# Apple Silicon Only: Also install Homebrew under the default Intel prefix for Rosetta 2 | |
enableRosetta = false; | |
# User owning the Homebrew prefix | |
user = "phau"; | |
# Optional: Declarative tap management | |
taps = { | |
"homebrew/homebrew-core" = homebrew-core; | |
"homebrew/homebrew-cask" = homebrew-cask; | |
"homebrew/homebrew-bundle" = homebrew-bundle; | |
}; | |
# Optional: Enable fully-declarative tap management | |
# | |
# With mutableTaps disabled, taps can no longer be added imperatively with `brew tap`. | |
mutableTaps = false; | |
}; | |
} | |
]; | |
}; | |
darwinPackages = self.darwinConfigurations."kaka".pkgs; | |
}; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# nix run nixpkgs#home-manager -- switch -b backup --flake ~/.config/home-manager -v | |
{ config, pkgs, ... }: | |
{ | |
# Home Manager needs a bit of information about you and the paths it should | |
# manage. | |
home.username = "f"; | |
home.homeDirectory = "/home/f"; | |
home.sessionVariables = { | |
EDITOR = "zed"; | |
VISUAL = "zed"; | |
TERM = "ghostty"; | |
TERMINAL = "ghostty"; | |
}; | |
# This value determines the Home Manager release that your configuration is | |
# compatible with. This helps avoid breakage when a new Home Manager release | |
# introduces backwards incompatible changes. | |
# | |
# You should not change this value, even if you update Home Manager. If you do | |
# want to update the value, then make sure to first check the Home Manager | |
# release notes. | |
home.stateVersion = "24.11"; # Please read the comment before changing. | |
# The home.packages option allows you to install Nix packages into your | |
# environment. | |
home.packages = [ | |
# # Adds the 'hello' command to your environment. It prints a friendly | |
# # "Hello, world!" when run. | |
# pkgs.hello | |
# # It is sometimes useful to fine-tune packages, for example, by applying | |
# # 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 | |
# # fonts? | |
# (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; }) | |
# # You can also create simple shell scripts directly inside your | |
# # configuration. For example, this adds a command 'my-hello' to your | |
# # environment: | |
(pkgs.writeShellScriptBin "my-hello" '' | |
echo "Hello, ${config.home.username}!" | |
'') | |
(pkgs.writeShellScriptBin "my-puro" '' | |
if ! ~/.puro/bin/puro ls-versions; then | |
curl -o- https://puro.dev/install.sh | PURO_VERSION="1.4.10" bash | |
~/.puro/bin/puro ls-versions | |
~/.puro/bin/puro create prod 3.27.4 # dart 3.6.2 | |
~/.puro/bin/puro use -g prod | |
fi | |
'') | |
# puro upgrade prod 3.27.4 | |
(pkgs.writeShellScriptBin "my-puro-up" '' | |
~/.puro/bin/puro upgrade prod 3.27.4 | |
'') | |
pkgs.micro | |
pkgs.devenv | |
# pkgs.git | |
# pkgs.ghostty | |
# pkgs.yazi | |
# pkgs.gtk3 | |
# pkgs.gtk3-x11 | |
# pkgs.zig_0_13 # for ghostty # installing from snapd (for linuc mint) | |
pkgs.xan # no se pero creo que el al mainteinar orginal de xsv le dio la depre | |
# pkgs.zed-editor # unstable from nix @see: https://zed.dev/docs/linux | |
pkgs.difftastic # using external, due to my fzf function not working properly | |
pkgs.firebase-tools | |
pkgs.less # for ff | |
# pkgs.localsend # flutter apps, have some problems from nix, install globally atm | |
pkgs.yay # yay -S localsend-bin | |
pkgs.fabric-ai | |
pkgs.uv # for python stuff | |
pkgs.bat # cat | |
# pkgs.podman | |
# pkgs.qemu | |
# pkgs.virtiofsd | |
pkgs.lynx # curl ofivirtual.top | lynx -stdin -dump | bat -S | |
pkgs.atuin | |
]; | |
# dconf.settings = { | |
# "org/gnome/desktop/default/applications/terminal" = { | |
# exec = "ghostty"; | |
# # exec-arg = "-e"; | |
# }; | |
# | |
# "org.cinnamon.desktop.default-applications.terminal" = { | |
# exec = "ghostty"; | |
# }; | |
# "org.gnome.desktop.default-applications.terminal" = { | |
# exec = "ghostty"; | |
# }; | |
# }; | |
# xdg.configFile."ghostty/config".text = '' | |
# font-family = "PragmataPro Mono Liga" | |
# font-size = 19 | |
# | |
# # theme = "nord" | |
# # theme = catppuccin-frappe | |
# # theme = "catppuccin-mocha" | |
# theme = GruvboxDark | |
# | |
# window-vsync = false | |
# window-decoration = false | |
# ''; | |
xdg.configFile."ghostty/config".text = '' | |
# Font | |
font-family = "Maple Mono" | |
font-size = 18 | |
font-feature = calt | |
font-feature = ss03 | |
bold-is-bright = false | |
selection-invert-fg-bg = true | |
# Theme | |
theme = "VibrantInk" | |
background-opacity = 0.63 | |
cursor-style = bar | |
cursor-style-blink = false | |
adjust-cursor-thickness = 1 | |
resize-overlay = never | |
copy-on-select = false | |
confirm-close-surface = false | |
mouse-hide-while-typing = true | |
window-theme = ghostty | |
# window-padding-x = 4 | |
# window-padding-y = 6 | |
window-padding-balance = true | |
window-padding-color = background | |
window-inherit-working-directory = true | |
window-inherit-font-size = true | |
window-decoration = false | |
gtk-titlebar = true | |
gtk-single-instance = false | |
gtk-tabs-location = bottom | |
gtk-wide-tabs = false | |
auto-update = off | |
term = ghostty | |
clipboard-paste-protection = false | |
''; | |
xdg.configFile."ghostty/themes/gruvbox".text = '' | |
background = #1d2021 | |
foreground = #fbf1c7 | |
palette = 0=#32302f | |
palette = 1=#cc241d | |
palette = 2=#98971a | |
palette = 3=#d79921 | |
palette = 4=#458588 | |
palette = 5=#b16286 | |
palette = 6=#689d6a | |
palette = 7=#ebdbb2 | |
palette = 8=#928374 | |
palette = 9=#fb4934 | |
palette = 10=#b8bb26 | |
palette = 11=#fabd2f | |
palette = 12=#83a598 | |
palette = 13=#d3869b | |
palette = 14=#8ec07c | |
palette = 15=#fbf1c7 | |
cursor-color = #D5C4A1 | |
selection-foreground = #282828 | |
selection-background = #98971A | |
''; | |
# programs.zed-editor = { | |
# enable = true; | |
# # userSettings = '' | |
# # { | |
# # features = { | |
# # copilot = false; | |
# # }; | |
# # telemetry = { | |
# # metrics = false; | |
# # }; | |
# # vim_mode = false; | |
# # ui_font_size = 19; | |
# # buffer_font_size = 19; | |
# # } | |
# # ''; | |
# extensions = [ "dart" "nix" ]; | |
# }; | |
programs.fzf.enable = false; | |
# programs.git.delta.enable = true; | |
# programs.git.delta.options.syntax-theme = "base16"; | |
# programs.git.difftastic.enable = true; | |
# programs.git.difftastic.background = "dark"; | |
programs.eza.enable = true; | |
programs.eza.git = true; | |
programs.git.enable = true; | |
# programs.git.extraConfig.diff.colorMoved = "zebra"; | |
programs.git.extraConfig.diff.renames = "copy"; | |
programs.git.aliases = { | |
fixup = "!git log -n 50 --pretty=format:'%h %s' --no-merges | fzf | cut -c -7 | xargs -o git commit --fixup"; | |
ff = "-c diff.external=difft diff"; | |
}; | |
programs.git.aliases.lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"; | |
programs.git.aliases.tree = "log --graph --pretty=format:'%C(auto)%h - %s [%an] (%C(blue)%ar)%C(auto)%d'"; | |
# programs.git.signing.key = null; # let gpg decide at runtime | |
# programs.git.signing.signByDefault = true; | |
programs.git.userEmail = "[email protected]"; | |
programs.git.userName = "phau"; | |
programs.git.extraConfig.init.defaultBranch = "master"; | |
programs.git.extraConfig.safe.directory = "/"; | |
programs.git.extraConfig.merge.conflictstyle = "zdiff3"; | |
# programs.git.extraConfig.pull.rebase = "true"; | |
# programs.git.extraConfig.push.default = "nothing"; | |
# programs.git.extraConfig.rebase.autosquash = true; | |
programs.git.extraConfig.rerere.enabled = true; | |
programs.git.extraConfig.status.branch = true; | |
programs.git.extraConfig.status.short = true; | |
programs.git.extraConfig.status.showUntrackedFiles = "all"; | |
programs.git.extraConfig.status.submoduleSummary = true; | |
programs.yazi.enable = true; | |
programs.yazi.enableFishIntegration = true; | |
programs.yazi.package = pkgs.yazi; | |
programs.yazi.settings.log.enabled = true; | |
programs.yazi.settings.manager.show_hidden = true; | |
programs.yazi.settings.manager.sort_by = "alphabetical"; | |
programs.yazi.settings.manager.sort_dir_first = true; | |
programs.yazi.settings.manager.sort_reverse = false; | |
programs.yazi.settings.manager.linemode = "size"; | |
programs.yazi.settings.manager.show_symlink = true; | |
# @see https://thenegation.com/posts/custom-gh-ext/ | |
# @todo @see https://github.com/topics/gh-extension | |
programs.gh = { | |
enable = true; | |
settings = { | |
editor = "zeditor"; | |
aliases = { | |
co = "pr checkout"; | |
pv = "pr view"; | |
}; | |
}; | |
extensions = [ | |
pkgs.gh-s | |
(pkgs.writeShellApplication { | |
name = "gh-list-my-repos"; | |
derivationArgs = { | |
pname = "gh-list-my-repos"; # use it like $ gh list-my-repos | |
}; | |
runtimeInputs = [ pkgs.gh pkgs.xan ]; | |
text = '' | |
#!/usr/bin/env bash | |
gh api \ | |
user/repos \ | |
--method GET \ | |
--raw-field type=owner \ | |
--paginate \ | |
--jq '.[]|[.full_name,.url]|@csv' | | |
xan view | |
''; | |
}) | |
]; | |
}; | |
programs.fish.enable = true; | |
programs.fish.loginShellInit = "set -U fish_user_paths /home/f/.puro/envs/prod/flutter/bin (go env GOBIN)"; | |
programs.fish.functions = { | |
fff.body = '' | |
git diff $argv --name-only | fzf -m --ansi --preview "git diff $argv --color=always -- {-1}" | |
''; | |
}; | |
programs.fish.shellAliases = { | |
# en una nueva ventanika van a estar disponibles los aliases! | |
# hacete las carpetas antes boludo! | |
p = "cd ~/projects"; | |
c = "clear"; | |
# hay que recordar a las viejas confiables :] | |
# skitch = "flameshot"; | |
# rm = "/usr/local/opt/trash/bin/trash -v"; | |
# t = "/usr/local/opt/trash/bin/trash -l"; | |
# flutter | |
puro = "~/.puro/bin/puro"; | |
cp = "cp --verbose"; | |
ln = "ln --verbose"; | |
mv = "mv --verbose"; | |
rm = "rmdir --verbose"; | |
mkdir = "mkdir --verbose"; | |
rename = "rename --verbose"; | |
# Add Color | |
grep = "grep --color=auto"; | |
ip = "ip --color=auto"; | |
# Use exa/eza | |
tree = "eza --tree"; | |
# cositas | |
ff = "git ff"; | |
ls = "eza -la --sort modified --reverse"; # my old ls -lahrt ftw! | |
ZZ = "exit"; | |
cat = "bat"; | |
pushhome = "gh gist edit ddd0b5e29ecbae3706d6b0f4dcaa8941 -f mint-home.nix ~/.config/home-manager/home.nix"; | |
}; | |
# programs.vscode = { | |
# enable = true; | |
# enableUpdateCheck = false; | |
# package = pkgs.vscode; | |
# extensions = with pkgs.vscode-extensions; [ | |
# vscodevim.vim | |
# jnoortheen.nix-ide | |
# oderwat.indent-rainbow | |
# arrterian.nix-env-selector | |
# ms-python.python | |
# ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ | |
# { | |
# name = "vscode-icons"; | |
# publisher = "vscode-icons-team"; | |
# version = "12.2.0"; | |
# sha256 = "sha256-PxM+20mkj7DpcdFuExUFN5wldfs7Qmas3CnZpEFeRYs="; | |
# } | |
# { | |
# name = "ayu"; | |
# publisher = "teabyii"; | |
# version = "1.0.5"; | |
# sha256 = "sha256-+IFqgWliKr+qjBLmQlzF44XNbN7Br5a119v9WAnZOu4="; | |
# } | |
# ]; | |
home.shell.enableFishIntegration = true; | |
# Home Manager is pretty good at managing dotfiles. The primary way to manage | |
# plain files is through 'home.file'. | |
home.file = { | |
# # Building this configuration will create a copy of 'dotfiles/screenrc' in | |
# # the Nix store. Activating the configuration will then make '~/.screenrc' a | |
# # symlink to the Nix store copy. | |
# ".screenrc".source = dotfiles/screenrc; | |
# # You can also set the file content immediately. | |
# ".gradle/gradle.properties".text = '' | |
# org.gradle.console=verbose | |
# org.gradle.daemon.idletimeout=3600000 | |
# ''; | |
}; | |
home.activation = { | |
# linkDesktopApplications = { | |
# after = [ "writeBoundary" "createXdgUserDirectories" ]; | |
# before = [ ]; | |
# data = "/usr/bin/sudo /usr/bin/chmod -R 777 $HOME/.nix-profile/share/applications && /usr/bin/update-desktop-database $HOME/.nix-profile/share/applications"; | |
# }; | |
setCinnamonTerminal = '' | |
/usr/bin/gsettings set org.cinnamon.desktop.default-applications.terminal exec 'ghostty' | |
''; | |
setDefaultTerminal = '' | |
/usr/bin/gsettings set org.gnome.desktop.default-applications.terminal exec 'ghostty' | |
''; | |
}; | |
# Home Manager can also manage your environment variables through | |
# 'home.sessionVariables'. These will be explicitly sourced when using a | |
# shell provided by Home Manager. If you don't want to manage your shell | |
# through Home Manager then you have to manually source 'hm-session-vars.sh' | |
# located at either | |
# | |
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh | |
# | |
# or | |
# | |
# ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh | |
# | |
# or | |
# | |
# /etc/profiles/per-user/y/etc/profile.d/hm-session-vars.sh | |
# | |
home.sessionVariables = { | |
# EDITOR = "emacs"; | |
# CHROME_EXECUTABLE = "/var/lib/flatpak/app/io.github.ungoogled_software.ungoogled_chromium/x86_64/stable/active/export/bin/io.github.ungoogled_software.ungoogled_chromium"; | |
CHROME_EXECUTABLE = "/sbin/chromium"; | |
}; | |
# Let Home Manager install and manage itself. | |
programs.home-manager.enable = true; | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
totally right @fightingdreamer this did the trick on my end
then
after fetching the sparkle dep from xcode
https://github.com/ghostty-org/ghostty/blob/4e10f972df556ecdf5b97090ef605f83188a23d7/.github/workflows/release-tag.yml#L144