Compare commits
4 commits
c4145330a0
...
ae34d2874a
Author | SHA1 | Date | |
---|---|---|---|
ae34d2874a | |||
5ae554cb0a | |||
b30159eb59 | |||
029c2e4952 |
8 changed files with 301 additions and 10 deletions
3
Justfile
3
Justfile
|
@ -2,7 +2,8 @@ default:
|
|||
@just --list
|
||||
|
||||
deployhome:
|
||||
home-manager switch -b bak --flake .
|
||||
# Impure is required for NixGL with proprietary Nvidia drivers :(
|
||||
home-manager switch --impure -b bak --flake .
|
||||
|
||||
update:
|
||||
nix flake update
|
||||
|
|
79
flake.lock
79
flake.lock
|
@ -1,5 +1,20 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-utils": {
|
||||
"locked": {
|
||||
"lastModified": 1659877975,
|
||||
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -20,7 +35,41 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixgl": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1713543440,
|
||||
"narHash": "sha256-lnzZQYG0+EXl/6NkGpyIz+FEOc/DSEG57AP1VsdeNrM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixGL",
|
||||
"rev": "310f8e49a149e4c9ea52f1adf70cdc768ec53f8a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixGL",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1660551188,
|
||||
"narHash": "sha256-a1LARMMYQ8DPx1BgoI/UN4bXe12hhZkCNqdxNi6uS0g=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "441dc5d512153039f19ef198e662e4f3dbb9fd65",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1730200266,
|
||||
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
|
||||
|
@ -39,17 +88,19 @@
|
|||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"rose-pine": "rose-pine"
|
||||
"nixgl": "nixgl",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"rose-pine": "rose-pine",
|
||||
"rose-pine-amfora": "rose-pine-amfora"
|
||||
}
|
||||
},
|
||||
"rose-pine": {
|
||||
"locked": {
|
||||
"lastModified": 1730588441,
|
||||
"narHash": "sha256-7cVAVvzZiYs3dWgIRxCs/4LtdYsh9M84eEQICgHdaA4=",
|
||||
"lastModified": 1730612146,
|
||||
"narHash": "sha256-hwOcMTXH6Cx2C8lDllpuB7eFd2qvteyLINRYaG0ELTA=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "1fb54d67aeb32c65cd4f9b3e31e2bb14da96355c",
|
||||
"revCount": 373,
|
||||
"rev": "6a751d43f8c53dd922403a12d43cb74da7e25d79",
|
||||
"revCount": 376,
|
||||
"type": "git",
|
||||
"url": "https://git.punkfairie.net/punkfairie/rose-pine-nix"
|
||||
},
|
||||
|
@ -57,6 +108,22 @@
|
|||
"type": "git",
|
||||
"url": "https://git.punkfairie.net/punkfairie/rose-pine-nix"
|
||||
}
|
||||
},
|
||||
"rose-pine-amfora": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1645462324,
|
||||
"narHash": "sha256-HUgdRxDKwXFubvCg5OWAwWF6fi8HEhH9xcOPpPonBKg=",
|
||||
"owner": "rose-pine",
|
||||
"repo": "amfora",
|
||||
"rev": "65afcf6c162cd1d960499c657e83603878b91c2d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "rose-pine",
|
||||
"repo": "amfora",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
13
flake.nix
13
flake.nix
|
@ -9,7 +9,15 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
nixgl.url = "github:nix-community/nixGL";
|
||||
|
||||
rose-pine.url = "git+https://git.punkfairie.net/punkfairie/rose-pine-nix";
|
||||
|
||||
# Rose pine themes that aren't included in the above flake:
|
||||
rose-pine-amfora = {
|
||||
url = "github:rose-pine/amfora";
|
||||
flake = false;
|
||||
};
|
||||
};
|
||||
|
||||
outputs =
|
||||
|
@ -27,6 +35,11 @@
|
|||
home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
|
||||
extraSpecialArgs = with inputs; {
|
||||
inherit nixgl;
|
||||
inherit inputs;
|
||||
};
|
||||
|
||||
modules = [
|
||||
./home
|
||||
inputs.rose-pine.homeManagerModules.rose-pine
|
||||
|
|
63
home/amfora/default.nix
Normal file
63
home/amfora/default.nix
Normal file
|
@ -0,0 +1,63 @@
|
|||
{ pkgs, inputs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
amfora
|
||||
];
|
||||
|
||||
# TODO: Change this based on current theme.
|
||||
# Possibly set this in rose-pine-nix as well?
|
||||
# There is no programs.amfora so it would require adding attl opts to base
|
||||
# rose-pine.
|
||||
xdg.configFile."amfora/theme.toml".source = "${inputs.rose-pine-amfora}/themes/rose-pine.toml";
|
||||
|
||||
# https://github.com/makeworld-the-better-one/amfora/blob/master/default-config.toml
|
||||
# Amfora requires a number of options to run - omitting everything didn't care
|
||||
# to customize resulted in go panic errors.
|
||||
xdg.configFile."amfora/config.toml".text = # toml
|
||||
''
|
||||
include = "./theme.toml"
|
||||
|
||||
[a-general]
|
||||
# Defaults {{{
|
||||
home = "gemini://geminiprotocol.net"
|
||||
auto_redirect = false
|
||||
http = 'default'
|
||||
search = "gemini://geminispace.info/search"
|
||||
color = true
|
||||
ansi = true
|
||||
highlight_code = true
|
||||
bullets = true
|
||||
show_link = false
|
||||
max_width = 80
|
||||
downloads = ""
|
||||
page_max_size = 2097152 # 2 MiB
|
||||
page_max_time = 10
|
||||
scrollbar = "auto"
|
||||
underline = true
|
||||
}}}
|
||||
|
||||
# TODO: Change based on current theme.
|
||||
highlight_style = "rose-pine"
|
||||
|
||||
[url-handlers]
|
||||
# Defaults {{{
|
||||
other = 'default'
|
||||
# }}}
|
||||
|
||||
[cache]
|
||||
# Defaults {{{
|
||||
max_size = 0
|
||||
max_pages = 30
|
||||
timeout = 1800
|
||||
# }}}
|
||||
|
||||
[subscriptions]
|
||||
# Defaults {{{
|
||||
popup = true
|
||||
update_interval = 1800
|
||||
workers = 3
|
||||
entries_per_page = 20
|
||||
header = true
|
||||
# }}}
|
||||
'';
|
||||
}
|
|
@ -1,11 +1,19 @@
|
|||
{
|
||||
pkgs,
|
||||
nixgl,
|
||||
...
|
||||
}:
|
||||
{
|
||||
home.username = "marley";
|
||||
home.homeDirectory = "/home/marley";
|
||||
|
||||
targets.genericLinux.enable = true;
|
||||
|
||||
# GPU integration.
|
||||
nixGL.packages = nixgl.packages;
|
||||
nixGL.defaultWrapper = "nvidia";
|
||||
nixGL.installScripts = [ "nvidia" ];
|
||||
|
||||
home.language.base = "en_US.UTF-8";
|
||||
|
||||
# Tell nix what version it is.
|
||||
|
@ -17,7 +25,12 @@
|
|||
"flakes"
|
||||
];
|
||||
|
||||
targets.genericLinux.enable = true;
|
||||
xdg.configFile."nixpkgs/config.nix".text = # nix
|
||||
''
|
||||
{
|
||||
allowUnfree = true;
|
||||
}
|
||||
'';
|
||||
|
||||
# Autostart wanted systemd services.
|
||||
systemd.user.startServices = true;
|
||||
|
@ -32,6 +45,7 @@
|
|||
fonts.fontconfig.defaultFonts.monospace = [ "Maple Mono NF" ];
|
||||
|
||||
imports = [
|
||||
./amfora
|
||||
./bat
|
||||
./btop
|
||||
./cava
|
||||
|
@ -44,6 +58,7 @@
|
|||
./less
|
||||
./man
|
||||
./ncmpcpp
|
||||
./starship
|
||||
./syncthing
|
||||
./tmux
|
||||
./topgrade
|
||||
|
|
127
home/starship/default.nix
Normal file
127
home/starship/default.nix
Normal file
|
@ -0,0 +1,127 @@
|
|||
{ lib, ... }:
|
||||
{
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
|
||||
rose-pine.enable = true;
|
||||
|
||||
settings = lib.mkMerge [
|
||||
# Nerd Font Symbols
|
||||
{
|
||||
aws.symbol = lib.mkForce " ";
|
||||
buf.symbol = lib.mkForce " ";
|
||||
c.symbol = lib.mkForce " ";
|
||||
conda.symbol = lib.mkForce " ";
|
||||
crystal.symbol = lib.mkForce " ";
|
||||
dart.symbol = lib.mkForce " ";
|
||||
directory.read_only = lib.mkForce " ";
|
||||
docker_context.symbol = lib.mkForce " ";
|
||||
elixir.symbol = lib.mkForce " ";
|
||||
elm.symbol = lib.mkForce " ";
|
||||
fennel.symbol = lib.mkForce " ";
|
||||
fossil_branch.symbol = lib.mkForce " ";
|
||||
git_branch.symbol = lib.mkForce " ";
|
||||
git_commit.tag_symbol = lib.mkForce " ";
|
||||
golang.symbol = lib.mkForce " ";
|
||||
guix_shell.symbol = lib.mkForce " ";
|
||||
haskell.symbol = lib.mkForce " ";
|
||||
haxe.symbol = lib.mkForce " ";
|
||||
hg_branch.symbol = lib.mkForce " ";
|
||||
hostname.ssh_symbol = lib.mkForce " ";
|
||||
java.symbol = lib.mkForce " ";
|
||||
julia.symbol = lib.mkForce " ";
|
||||
kotlin.symbol = lib.mkForce " ";
|
||||
lua.symbol = lib.mkForce " ";
|
||||
memory_usage.symbol = lib.mkForce " ";
|
||||
meson.symbol = lib.mkForce " ";
|
||||
nim.symbol = lib.mkForce " ";
|
||||
nix_shell.symbol = lib.mkForce " ";
|
||||
nodejs.symbol = lib.mkForce " ";
|
||||
ocaml.symbol = lib.mkForce " ";
|
||||
os.symbols = {
|
||||
Alpine = lib.mkForce " ";
|
||||
AlmaLinux = lib.mkForce " ";
|
||||
Amazon = lib.mkForce " ";
|
||||
Android = lib.mkForce " ";
|
||||
Arch = lib.mkForce " ";
|
||||
Artix = lib.mkForce " ";
|
||||
CentOS = lib.mkForce " ";
|
||||
Debian = lib.mkForce " ";
|
||||
DragonFly = lib.mkForce " ";
|
||||
Emscripten = lib.mkForce " ";
|
||||
EndeavourOS = lib.mkForce " ";
|
||||
Fedora = lib.mkForce " ";
|
||||
FreeBSD = lib.mkForce " ";
|
||||
Garuda = lib.mkForce " ";
|
||||
Gentoo = lib.mkForce " ";
|
||||
HardenedBSD = lib.mkForce " ";
|
||||
Illumos = lib.mkForce " ";
|
||||
Kali = lib.mkForce " ";
|
||||
Linux = lib.mkForce " ";
|
||||
Mabox = lib.mkForce " ";
|
||||
Macos = lib.mkForce " ";
|
||||
Manjaro = lib.mkForce " ";
|
||||
Mariner = lib.mkForce " ";
|
||||
MidnightBSD = lib.mkForce " ";
|
||||
Mint = lib.mkForce " ";
|
||||
NetBSD = lib.mkForce " ";
|
||||
NixOS = lib.mkForce " ";
|
||||
OpenBSD = lib.mkForce " ";
|
||||
openSUSE = lib.mkForce " ";
|
||||
OracleLinux = lib.mkForce " ";
|
||||
Pop = lib.mkForce " ";
|
||||
Raspbian = lib.mkForce " ";
|
||||
Redhat = lib.mkForce " ";
|
||||
RedHatEnterprise = lib.mkForce " ";
|
||||
RockyLinux = lib.mkForce " ";
|
||||
Redox = lib.mkForce " ";
|
||||
Solus = lib.mkForce " ";
|
||||
SUSE = lib.mkForce " ";
|
||||
Ubuntu = lib.mkForce " ";
|
||||
Unknown = lib.mkForce " ";
|
||||
Void = lib.mkForce " ";
|
||||
Windows = " ";
|
||||
};
|
||||
package.symbol = lib.mkForce " ";
|
||||
perl.symbol = lib.mkForce " ";
|
||||
php.symbol = lib.mkForce " ";
|
||||
pijul_channel.symbol = lib.mkForce " ";
|
||||
python.symbol = lib.mkForce " ";
|
||||
rlang.symbol = lib.mkForce " ";
|
||||
ruby.symbol = lib.mkForce " ";
|
||||
rust.symbol = lib.mkForce " ";
|
||||
scala.symbol = lib.mkForce " ";
|
||||
swift.symbol = lib.mkForce " ";
|
||||
zig.symbol = lib.mkForce " ";
|
||||
gradle.symbol = lib.mkForce " ";
|
||||
}
|
||||
|
||||
{
|
||||
format = lib.mkForce (
|
||||
lib.concatStrings [
|
||||
"$username "
|
||||
"$directory "
|
||||
"$git_branch "
|
||||
"$git_status "
|
||||
"$fill "
|
||||
"$c "
|
||||
"$elixir "
|
||||
"$elm "
|
||||
"$golang "
|
||||
"$haskell "
|
||||
"$java "
|
||||
"$julia "
|
||||
"$nodejs "
|
||||
"$nim "
|
||||
"$rust "
|
||||
"$scala "
|
||||
"$python "
|
||||
"$time "
|
||||
"$line_break "
|
||||
"[](fg:iris) "
|
||||
]
|
||||
);
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
|
@ -79,7 +79,7 @@
|
|||
plugin = fingers;
|
||||
extraConfig = # tmux
|
||||
''
|
||||
set -g @fingers-jump-key 's'
|
||||
set -g @fingers-jump-key 'f'
|
||||
'';
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +1,13 @@
|
|||
{ config, ... }:
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
programs.wezterm = {
|
||||
enable = true;
|
||||
|
||||
# Needs to be wrapped with GPU driver libraries on non-NixOS systems.
|
||||
# package = (config.lib.nixGL.wrap pkgs.wezterm);
|
||||
|
||||
package = pkgs.emptyDirectory;
|
||||
|
||||
# TODO: create `local config` & return it seperately, so other modules can
|
||||
# insert config in the middle
|
||||
extraConfig =
|
||||
|
|
Loading…
Reference in a new issue