Compare commits
85 Commits
88be74cf74
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
5911da7f99
|
|||
|
d1949310c5
|
|||
|
f83a201895
|
|||
|
4ce282f378
|
|||
|
d2a8db4d57
|
|||
|
a4282dd9aa
|
|||
|
9e4fc8ee21
|
|||
|
a31ac455cb
|
|||
|
e5230def14
|
|||
|
c08192ac34
|
|||
|
05de5f2063
|
|||
|
9ad81bb8e4
|
|||
|
88995ff8f5
|
|||
|
d492955c8e
|
|||
|
540a0e32e4
|
|||
|
dfbc1ea5a2
|
|||
|
d294038801
|
|||
|
f5bc2ef54f
|
|||
|
a7c6dc133e
|
|||
|
a0ba7ce382
|
|||
|
a0d8a1b0e3
|
|||
|
92010eedb7
|
|||
|
e35ad8eece
|
|||
|
2c39488719
|
|||
|
cf706f5d3b
|
|||
|
4440228098
|
|||
|
99e4da91af
|
|||
|
6c8e15dc23
|
|||
|
ecec4b8739
|
|||
|
4aaa0684c3
|
|||
|
9fc9742912
|
|||
|
06f32a0d38
|
|||
|
175fd9e2d4
|
|||
|
9e64a358d9
|
|||
|
57dfdc2cab
|
|||
|
9151cb04eb
|
|||
|
353f449f80
|
|||
|
c7f7a8f078
|
|||
|
cf6cb08e8c
|
|||
|
da91fdfd6d
|
|||
|
648245a0d8
|
|||
|
e247eded74
|
|||
|
47072e20e9
|
|||
|
dc10d3b55d
|
|||
|
d98fe007f1
|
|||
|
3f30db6fac
|
|||
|
eb0e26d456
|
|||
|
2b0eefad9f
|
|||
|
e8d1306e02
|
|||
|
66c6332023
|
|||
|
07d63e38b0
|
|||
|
562513fcd6
|
|||
|
f942349dca
|
|||
|
821f6b16da
|
|||
|
d64b22e394
|
|||
|
95178cab63
|
|||
|
28e7c64262
|
|||
|
017fc7105e
|
|||
|
8a3c5e155a
|
|||
|
f0360d6bdb
|
|||
|
9326350125
|
|||
|
f978a84650
|
|||
|
f029d5fedd
|
|||
|
a1b117c408
|
|||
|
294fc0a229
|
|||
|
33b2854c19
|
|||
|
db287b22eb
|
|||
|
12365b3815
|
|||
|
8998dfe127
|
|||
|
4c227f6f3a
|
|||
|
2204ed7e89
|
|||
|
6c298aee35
|
|||
|
73e7fb50c7
|
|||
|
19c65f7f11
|
|||
|
51ca720683
|
|||
|
f55324846a
|
|||
|
e7a1f7a13c
|
|||
|
1e73d7a66e
|
|||
|
dad4788bef
|
|||
|
8ea99dc660
|
|||
|
163dd16ad7
|
|||
|
68d3d74540
|
|||
|
06f539823b
|
|||
|
faed33b0cc
|
|||
|
faeaa62edf
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,3 +4,4 @@ nix_file.tar.gz
|
|||||||
nvim
|
nvim
|
||||||
tmux/plugins
|
tmux/plugins
|
||||||
modules/quickshell/quickshell/.qmlls.ini
|
modules/quickshell/quickshell/.qmlls.ini
|
||||||
|
result
|
||||||
|
|||||||
@@ -4,5 +4,7 @@ creation_rules:
|
|||||||
- encrypted_regex: '^(data|stringData)$' # Encrypt data and stringData by default (useful for Kubernetes secrets)
|
- encrypted_regex: '^(data|stringData)$' # Encrypt data and stringData by default (useful for Kubernetes secrets)
|
||||||
path_regex: secrets/.*\.yaml$ # Applies to all files in the secrets/ directory
|
path_regex: secrets/.*\.yaml$ # Applies to all files in the secrets/ directory
|
||||||
age:
|
age:
|
||||||
- "age1ykcy2r4kk729e7adqxu8s24ujc60z5eux7ma0ca4ruzydwgm5p6qmdp838" # pc
|
- "age1ykcy2r4kk729e7adqxu8s24ujc60z5eux7ma0ca4ruzydwgm5p6qmdp838" # pc-user-doloro
|
||||||
- "age1exzngtk4d9vcsmcq6ap5xx3ca9qacqjkrv86ymged7msx9z6vfyqsf5sjq" # laptop
|
- "age1e6vws55p0g23qzthm4qa93hpt6lqmck6670gkygph0sc0j7my4uq5wqjfh" # pc-system
|
||||||
|
- "age1x3lahhkefkap67cdmdjcqaxan9hp62er78akr79v9m73nvgugpeqk0y32a" # laptop-user-doloro
|
||||||
|
- "age1exzngtk4d9vcsmcq6ap5xx3ca9qacqjkrv86ymged7msx9z6vfyqsf5sjq" # laptop-system
|
||||||
|
|||||||
1024
flake.lock
generated
1024
flake.lock
generated
File diff suppressed because it is too large
Load Diff
100
flake.nix
100
flake.nix
@@ -3,23 +3,39 @@
|
|||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
# Specify the source of Home Manager and Nixpkgs.
|
# Specify the source of Home Manager and Nixpkgs.
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
|
rpi-nixpkgs.url = "github:nvmd/nixpkgs/modules-with-keys-25.11";
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
|
nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
|
||||||
nix-meow.url = "git+https://git.scug.io/nikkuss/nix-meow.git"; # config manager, meow'd
|
nix-meow.url = "git+https://git.scug.io/nikkuss/nix-meow.git?ref=paws"; # config manager, meow'd
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
rsRPC.url = "github:Doloro1978/rsRPC";
|
rsRPC.url = "github:Doloro1978/rsRPC";
|
||||||
|
protonhax.url = "github:linusfri/protonhax-nix";
|
||||||
|
hytale-launcher.url = "github:JPyke3/hytale-launcher-nix";
|
||||||
quickshell = {
|
quickshell = {
|
||||||
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
heliumFlake = {
|
||||||
|
url = "github:vikingnope/helium-browser-nix-flake";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
nikkuss-pkgs = {
|
nikkuss-pkgs = {
|
||||||
url = "git+https://git.scug.io/nikkuss/pkgs";
|
url = "git+https://git.scug.io/nikkuss/pkgs";
|
||||||
# inputs.nixpkgs.follows = "nixpkgs";
|
# inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
zen-browser = {
|
||||||
|
url = "github:0xc000022070/zen-browser-flake";
|
||||||
|
inputs = {
|
||||||
|
# IMPORTANT: we're using "libgbm" and is only available in unstable so ensure
|
||||||
|
# to have it up-to-date or simply don't specify the nixpkgs input
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
home-manager.follows = "home-manager";
|
||||||
|
};
|
||||||
|
};
|
||||||
sops-nix = {
|
sops-nix = {
|
||||||
url = "github:Mic92/sops-nix";
|
url = "github:Mic92/sops-nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
@@ -48,6 +64,9 @@
|
|||||||
url = "github:Nixos/nixpkgs?rev=8fcb6f1c4948305af52d19f887b89011ee2c080d";
|
url = "github:Nixos/nixpkgs?rev=8fcb6f1c4948305af52d19f887b89011ee2c080d";
|
||||||
};
|
};
|
||||||
font-patcher.url = "github:Doloro1978/nix-nerd-fonts-patcher";
|
font-patcher.url = "github:Doloro1978/nix-nerd-fonts-patcher";
|
||||||
|
nixos-raspberrypi.url = "github:nvmd/nixos-raspberrypi/develop";
|
||||||
|
raspberry-pi-nix.url = "github:nix-community/raspberry-pi-nix";
|
||||||
|
niri-flake.url = "github:sodiboo/niri-flake";
|
||||||
};
|
};
|
||||||
outputs =
|
outputs =
|
||||||
inputs@{
|
inputs@{
|
||||||
@@ -79,22 +98,50 @@
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
(
|
# (
|
||||||
final: prev:
|
# final: prev:
|
||||||
let
|
# let
|
||||||
system = prev.stdenv.hostPlatform.system;
|
# system = prev.stdenv.hostPlatform.system;
|
||||||
pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
# pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
||||||
inherit system;
|
# inherit system;
|
||||||
config = {
|
# config = {
|
||||||
allow_unfree = true;
|
# allow_unfree = true;
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/ga/gamescope/package.nix";
|
# packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/ga/gamescope/package.nix";
|
||||||
in
|
# in
|
||||||
{
|
# {
|
||||||
gamescope = pkgs_gamescope.callPackage packageNix { };
|
# gamescope = pkgs_gamescope.callPackage packageNix { };
|
||||||
}
|
# }
|
||||||
)
|
# )
|
||||||
|
# (self: super: {
|
||||||
|
# intel-npu-driver = super.intel-npu-driver.overrideAttrs (oldAttrs: rec {
|
||||||
|
# installPhase = ''
|
||||||
|
# mkdir -p $out/lib/firmware
|
||||||
|
# ${oldAttrs.installPhase}
|
||||||
|
# '';
|
||||||
|
# });
|
||||||
|
# })
|
||||||
|
(final: prev: {
|
||||||
|
vesktop = prev.vesktop.overrideAttrs (old: {
|
||||||
|
preBuild = ''
|
||||||
|
cp -r ${prev.electron.dist} electron-dist
|
||||||
|
chmod -R u+w electron-dist
|
||||||
|
'';
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
|
pnpm build
|
||||||
|
pnpm exec electron-builder \
|
||||||
|
--dir \
|
||||||
|
-c.asarUnpack="**/*.node" \
|
||||||
|
-c.electronDist="electron-dist" \
|
||||||
|
-c.electronVersion=${prev.electron.version}
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
})
|
||||||
];
|
];
|
||||||
utils = nix-meow.lib.setup {
|
utils = nix-meow.lib.setup {
|
||||||
inherit (inputs) home-manager nixpkgs;
|
inherit (inputs) home-manager nixpkgs;
|
||||||
@@ -111,6 +158,7 @@
|
|||||||
};
|
};
|
||||||
inherit (utils) mkHost;
|
inherit (utils) mkHost;
|
||||||
configurations = [
|
configurations = [
|
||||||
|
# Desktops
|
||||||
(mkHost {
|
(mkHost {
|
||||||
hardware = "doloro";
|
hardware = "doloro";
|
||||||
host = "doloro";
|
host = "doloro";
|
||||||
@@ -122,18 +170,20 @@
|
|||||||
};
|
};
|
||||||
})
|
})
|
||||||
(mkHost {
|
(mkHost {
|
||||||
hardware = "doloro-wsl";
|
hardware = "doloro-laptop";
|
||||||
host = "doloro-wsl";
|
host = "doloro-laptop";
|
||||||
system = "aarch64-linux";
|
system = "x86_64-linux";
|
||||||
stateVersion = "25.05";
|
stateVersion = "25.11";
|
||||||
nixpkgsConfig = {
|
nixpkgsConfig = {
|
||||||
rocmSupport = false;
|
rocmSupport = false;
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
# Servers
|
||||||
(mkHost {
|
(mkHost {
|
||||||
hardware = "doloro-laptop";
|
hardware = "rpi-5";
|
||||||
host = "doloro-laptop";
|
host = "rpi-5";
|
||||||
system = "x86_64-linux";
|
system = "aarch64-linux";
|
||||||
|
# nixpkgs = inputs.rpi-nixpkgs;
|
||||||
stateVersion = "25.11";
|
stateVersion = "25.11";
|
||||||
nixpkgsConfig = {
|
nixpkgsConfig = {
|
||||||
rocmSupport = false;
|
rocmSupport = false;
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
}
|
|
||||||
49
hardwares/rpi-5/disks.nix
Normal file
49
hardwares/rpi-5/disks.nix
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
{ inputs, lib, ... }:
|
||||||
|
{
|
||||||
|
imports = [ inputs.disko.nixosModules.disko ];
|
||||||
|
disko.devices = {
|
||||||
|
disk = {
|
||||||
|
main = {
|
||||||
|
device = "/dev/disk/by-label/NIXOS_SD";
|
||||||
|
type = "disk";
|
||||||
|
content = {
|
||||||
|
type = "gpt";
|
||||||
|
partitions = {
|
||||||
|
boot = {
|
||||||
|
name = "boot";
|
||||||
|
size = "1M";
|
||||||
|
type = "EF02";
|
||||||
|
};
|
||||||
|
ESP = {
|
||||||
|
name = "ESP";
|
||||||
|
priority = 1;
|
||||||
|
size = "4G";
|
||||||
|
type = "EF00";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "vfat";
|
||||||
|
mountpoint = "/boot";
|
||||||
|
mountOptions = [ "umask=0077" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
plainSwap = {
|
||||||
|
size = "8G";
|
||||||
|
content = {
|
||||||
|
type = "swap";
|
||||||
|
discardPolicy = "both"; # Both "once" and page discard policies
|
||||||
|
};
|
||||||
|
};
|
||||||
|
root = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "ext4";
|
||||||
|
mountpoint = "/";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
1
hardwares/rpi-5/home.nix
Normal file
1
hardwares/rpi-5/home.nix
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{...}: {}
|
||||||
35
hardwares/rpi-5/nixos.nix
Normal file
35
hardwares/rpi-5/nixos.nix
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
# ./disks.nix
|
||||||
|
# (modulesPath + "/installer/sd-card/sd-image-aarch64.nix")
|
||||||
|
];
|
||||||
|
# fileSystems = {
|
||||||
|
# "/" = {
|
||||||
|
# device = "/dev/disk/by-label/NIXOS_SD";
|
||||||
|
# fsType = "ext4";
|
||||||
|
# options = [ "noatime" ];
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
boot.supportedFilesystems = lib.mkForce [
|
||||||
|
"btrfs"
|
||||||
|
"reiserfs"
|
||||||
|
"vfat"
|
||||||
|
"ext4"
|
||||||
|
"f2fs"
|
||||||
|
"xfs"
|
||||||
|
"ntfs"
|
||||||
|
"cifs"
|
||||||
|
];
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/126755#issuecomment-869149243
|
||||||
|
(final: super: {
|
||||||
|
makeModulesClosure = x: super.makeModulesClosure (x // { allowMissing = true; });
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,18 +1,29 @@
|
|||||||
{
|
{
|
||||||
inputs,
|
inputs,
|
||||||
config,
|
config,
|
||||||
|
system,
|
||||||
pkgs,
|
pkgs,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
];
|
||||||
|
sops = {
|
||||||
|
age.keyFile = "/home/doloro/.config/sops/age/key.txt"; # must have no password!
|
||||||
|
};
|
||||||
modules = {
|
modules = {
|
||||||
Hyprland.enable = true;
|
Hyprland.enable = true;
|
||||||
quickshell.enable = true;
|
quickshell.enable = true;
|
||||||
# chromium.enable = true;
|
# chromium.enable = true;
|
||||||
wivrn.enable = false;
|
wivrn.enable = false;
|
||||||
helium.enable = true;
|
helium.enable = true;
|
||||||
|
sops.enable = true;
|
||||||
|
wakatime.enable = false;
|
||||||
|
# remoteBuild.use-remote-builders = true;
|
||||||
nixvim.enable = true;
|
nixvim.enable = true;
|
||||||
|
zen-browser.enable = false;
|
||||||
kitty.enable = true;
|
kitty.enable = true;
|
||||||
helix.enable = false;
|
helix.enable = false;
|
||||||
stylix.enable = true;
|
stylix.enable = true;
|
||||||
@@ -75,7 +86,8 @@
|
|||||||
hello
|
hello
|
||||||
vim
|
vim
|
||||||
telegram-desktop
|
telegram-desktop
|
||||||
vesktop
|
# vesktop
|
||||||
|
legcord
|
||||||
pavucontrol
|
pavucontrol
|
||||||
lazygit
|
lazygit
|
||||||
btop
|
btop
|
||||||
@@ -83,8 +95,8 @@
|
|||||||
alcom
|
alcom
|
||||||
gcr
|
gcr
|
||||||
qbittorrent
|
qbittorrent
|
||||||
|
intel-gpu-tools
|
||||||
];
|
];
|
||||||
# sops.age.keyFile = "/home/doloro/.config/sops/age/key.txt";
|
|
||||||
|
|
||||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||||
# plain files is through 'home.file'.
|
# plain files is through 'home.file'.
|
||||||
|
|||||||
@@ -1,28 +1,98 @@
|
|||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, ... }:
|
||||||
let
|
let
|
||||||
|
batt-gpu = pkgs.writeShellScript "batt-igpu" ''
|
||||||
|
${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -e
|
||||||
|
echo "800" > /sys/class/drm/card1/gt_boost_freq_mhz
|
||||||
|
'';
|
||||||
|
ac-gpu = pkgs.writeShellScript "ac-igpu" ''
|
||||||
|
${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -d
|
||||||
|
echo "2350" > /sys/class/drm/card1/gt_boost_freq_mhz
|
||||||
|
'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services.tlp = {
|
services.tlp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
# Wireless power saving
|
||||||
PCIE_ASPM_ON_BAT = "powersave";
|
WIFI_PWR_ON_BAT = "1";
|
||||||
CPU_SCALING_GOVERNOR_ON_AC = "balanced";
|
|
||||||
|
# USB autosuspend
|
||||||
|
USB_AUTOSUSPEND = "1";
|
||||||
|
|
||||||
|
# SATA drive power management
|
||||||
|
SATA_LINKPWR_ON_BAT = "min_power";
|
||||||
|
|
||||||
|
# PCI Express Active-State Power Management (ASPM)
|
||||||
|
PCIE_ASPM_ON_BAT = "powersupersave";
|
||||||
|
|
||||||
|
RUNTIME_PM_ON_AC = "on";
|
||||||
|
RUNTIME_PM_ON_BAT = "auto";
|
||||||
|
|
||||||
|
# Disable Bluetooth on battery
|
||||||
|
# DEVICES_TO_DISABLE_ON_BAT = "bluetooth";
|
||||||
|
|
||||||
|
# Restore brightness on battery
|
||||||
|
RESTORE_BRIGHTNESS_ON_BAT = "1";
|
||||||
PCIE_ASPM_ON_AC = "balanced";
|
PCIE_ASPM_ON_AC = "balanced";
|
||||||
|
DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE = "bluetooth";
|
||||||
|
INTEL_GPU_MAX_FREQ_ON_AC = 0;
|
||||||
|
INTEL_GPU_MAX_FREQ_ON_BAT = 800;
|
||||||
|
INTEL_GPU_BOOST_FREQ_ON_AC = 0;
|
||||||
|
INTEL_GPU_BOOST_FREQ_ON_BAT = 800;
|
||||||
|
|
||||||
|
CPU_MAX_PERF_ON_BAT = 50;
|
||||||
|
|
||||||
|
PLATFORM_PROFILE_ON_AC = "balanced";
|
||||||
|
PLATFORM_PROFILE_ON_BAT = "quiet";
|
||||||
START_CHARGE_THRESH_BAT0 = 40; # 40 and below it starts to charge
|
START_CHARGE_THRESH_BAT0 = 40; # 40 and below it starts to charge
|
||||||
STOP_CHARGE_THRESH_BAT0 = 80; # 80 and above it stops charging
|
STOP_CHARGE_THRESH_BAT0 = 80; # 80 and above it stops charging
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# services.tuned.enable = true;
|
|
||||||
services.thermald.enable = true;
|
services.thermald.enable = true;
|
||||||
services.upower = {
|
services.upower = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
# boot.kernelParams = [ "mem_sleep_default=deep" ];
|
services.auto-cpufreq.enable = true;
|
||||||
|
|
||||||
|
systemd.targets = {
|
||||||
|
"ac" = {
|
||||||
|
description = "On AC power";
|
||||||
|
unitConfig = {
|
||||||
|
StopWhenUnneeded = "yes";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"battery" = {
|
||||||
|
description = "On battery power";
|
||||||
|
unitConfig = {
|
||||||
|
StopWhenUnneeded = "yes";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.udev.extraRules = ''
|
||||||
|
SUBSYSTEM=="power_supply",ENV{POWER_SUPPLY_ONLINE}=="0", RUN+="/run/current-system/systemd/bin/systemctl start battery.target"
|
||||||
|
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_ONLINE}=="1", RUN+="/run/current-system/systemd/bin/systemctl start ac.target"
|
||||||
|
'';
|
||||||
|
|
||||||
|
services.auto-cpufreq.settings = {
|
||||||
|
battery = {
|
||||||
|
governor = "powersave";
|
||||||
|
turbo = "never";
|
||||||
|
};
|
||||||
|
charger = {
|
||||||
|
governor = "performance";
|
||||||
|
turbo = "auto";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
boot.kernelParams = [
|
||||||
|
# "mem_sleep_default=deep"
|
||||||
|
# "i915.fastboot=1"
|
||||||
|
"pcie_aspm=force"
|
||||||
|
"ahci.mobile_lpm_policy=1"
|
||||||
|
];
|
||||||
services.logind.settings.Login = {
|
services.logind.settings.Login = {
|
||||||
HandleLidSwitch = "suspend-then-hibernate";
|
HandleLidSwitch = "suspend";
|
||||||
HandleLidSwitchExternalPower = "ignore";
|
HandleLidSwitchExternalPower = "suspend";
|
||||||
HandleLidSwitchDocked = "ignore";
|
HandleLidSwitchDocked = "ignore";
|
||||||
};
|
};
|
||||||
systemd.sleep.extraConfig = ''
|
systemd.sleep.extraConfig = ''
|
||||||
@@ -30,9 +100,50 @@ in
|
|||||||
SuspendEstimationSec=120
|
SuspendEstimationSec=120
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
systemd.services.gpu-limit-on-batt = {
|
||||||
|
enable = true;
|
||||||
|
description = "Using rfkill; disable all rf devices before sleeping.";
|
||||||
|
before = [ "battery.target" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
ExecStart = "${batt-gpu}";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
};
|
||||||
|
wantedBy = [ "battery.target" ];
|
||||||
|
partOf = [ "battery.target" ];
|
||||||
|
};
|
||||||
|
systemd.services.gpu-limit-on-ac = {
|
||||||
|
enable = true;
|
||||||
|
description = "Using rfkill; disable all rf devices before sleeping.";
|
||||||
|
before = [ "ac.target" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
ExecStart = "${ac-gpu}";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
};
|
||||||
|
wantedBy = [ "ac.target" ];
|
||||||
|
partOf = [ "ac.target" ];
|
||||||
|
};
|
||||||
|
systemd.services.rfkill-sleep-wake = {
|
||||||
|
enable = true;
|
||||||
|
description = "Using rfkill; disable all rf devices before sleeping.";
|
||||||
|
before = [ "sleep.target" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
ExecStop = "${pkgs.utillinux}/bin/rfkill unblock all";
|
||||||
|
ExecStart = "${pkgs.utillinux}/bin/rfkill block all";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
};
|
||||||
|
wantedBy = [ "sleep.target" ];
|
||||||
|
partOf = [ "sleep.target" ];
|
||||||
|
|
||||||
|
};
|
||||||
# one of "ignore", "poweroff", "reboot", "halt", "kexec", "suspend", "hibernate", "hybrid-sleep", "suspend-then-hibernate", "lock"
|
# one of "ignore", "poweroff", "reboot", "halt", "kexec", "suspend", "hibernate", "hybrid-sleep", "suspend-then-hibernate", "lock"
|
||||||
powerManagement = {
|
powerManagement = {
|
||||||
enable = true;
|
enable = true;
|
||||||
powertop.enable = true;
|
# powertop.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,16 +22,17 @@ in
|
|||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
greetd.enable = true;
|
greetd.enable = true;
|
||||||
stylix.enable = true;
|
stylix.enable = true;
|
||||||
steam.enable = false;
|
steam.enable = true;
|
||||||
Hyprland.enable = true;
|
Hyprland.enable = true;
|
||||||
|
# remoteBuild.use-remote-builders = true;
|
||||||
wivrn.enable = false;
|
wivrn.enable = false;
|
||||||
fonts.enable = true;
|
fonts.enable = true;
|
||||||
};
|
};
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.kernelPackages = pkgs.linuxPackages_6_12; # Hibernate works on 6.12 but not on latest
|
# boot.kernelPackages = pkgs.linuxPackages_6_12; # Hibernate works on 6.12 but not on latest
|
||||||
|
boot.kernelPackages = pkgs.linuxPackages_latest; # Unpinned the linux version for now.. as i am not using hibernate that often
|
||||||
networking.hostName = "doloro-nixos-laptop"; # Define your hostname.
|
networking.hostName = "doloro-nixos-laptop"; # Define your hostname.
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
@@ -60,14 +61,26 @@ in
|
|||||||
"doloro"
|
"doloro"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
hardware.graphics = {
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
|
hardware = {
|
||||||
|
firmware = [ pkgs.intel-npu-driver ];
|
||||||
|
cpu.intel = {
|
||||||
|
# npu.enable = true;
|
||||||
|
};
|
||||||
|
graphics = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
# https://github.com/intel/libvpl?tab=readme-ov-file#dispatcher-behavior-when-targeting-intel-gpus
|
||||||
extraPackages = with pkgs; [
|
extraPackages = with pkgs; [
|
||||||
|
vpl-gpu-rt
|
||||||
intel-media-driver # VA-API (iHD) userspace
|
intel-media-driver # VA-API (iHD) userspace
|
||||||
|
intel-vaapi-driver
|
||||||
# vpl-gpu-rt # oneVPL (QSV) runtime
|
# vpl-gpu-rt # oneVPL (QSV) runtime
|
||||||
intel-compute-runtime # OpenCL (NEO) + Level Zero for Arc/Xe
|
intel-compute-runtime # OpenCL (NEO) + Level Zero for Arc/Xe
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
};
|
||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
@@ -90,6 +103,7 @@ in
|
|||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
|
|
||||||
|
# sops.age.keyFile = "/etc/ssh/ssh_host_ed25519_key";
|
||||||
sops = {
|
sops = {
|
||||||
defaultSopsFile = builtins.toPath "${nix-meow.flakeRoot}/secrets/users.yaml";
|
defaultSopsFile = builtins.toPath "${nix-meow.flakeRoot}/secrets/users.yaml";
|
||||||
secrets = {
|
secrets = {
|
||||||
@@ -109,6 +123,7 @@ in
|
|||||||
|
|
||||||
services.libinput.enable = true;
|
services.libinput.enable = true;
|
||||||
|
|
||||||
|
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
users.users.doloro = {
|
users.users.doloro = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
@@ -124,6 +139,7 @@ in
|
|||||||
# initialPassword = "sex";
|
# initialPassword = "sex";
|
||||||
};
|
};
|
||||||
users.mutableUsers = false;
|
users.mutableUsers = false;
|
||||||
|
services.system76-scheduler.enable = true;
|
||||||
|
|
||||||
# programs.firefox.enable = true;
|
# programs.firefox.enable = true;
|
||||||
|
|
||||||
@@ -133,6 +149,10 @@ in
|
|||||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
git
|
git
|
||||||
wget
|
wget
|
||||||
|
# tlp-pd
|
||||||
|
brightnessctl
|
||||||
|
nvtopPackages.intel
|
||||||
|
seahorse
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
|||||||
@@ -1,123 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
fetchFromGitHub,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
# ./modules/hyprland/home.nix
|
|
||||||
# ./modules/quickshell/home.nix
|
|
||||||
# ./modules/chromium/home.nix
|
|
||||||
#./modules/neovim/home.nix
|
|
||||||
# ./modules/stylix/home.nix
|
|
||||||
#../../modules/nixvim/home.nix
|
|
||||||
#../../modules/tmux/home.nix
|
|
||||||
#../../modules/theme/home.nix
|
|
||||||
# ./modules/spicetify/home.nix
|
|
||||||
# ./modules/obs/home.nix
|
|
||||||
# ./modules/blender/home.nix
|
|
||||||
#../../modules/fish/home.nix
|
|
||||||
# ./modules/ytm/home.nix
|
|
||||||
#../../overlays.nix
|
|
||||||
];
|
|
||||||
modules = {
|
|
||||||
nixvim.enable = true;
|
|
||||||
tmux.enable = true;
|
|
||||||
fish.enable = true;
|
|
||||||
stylix.enable = true;
|
|
||||||
direnv.enable = true;
|
|
||||||
git.enable = true;
|
|
||||||
};
|
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
|
||||||
# manage.
|
|
||||||
home.username = "doloro";
|
|
||||||
home.homeDirectory = "/home/doloro";
|
|
||||||
|
|
||||||
# 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 = "25.05"; # Please read the comment before changing.
|
|
||||||
|
|
||||||
services.gpg-agent = {
|
|
||||||
enable = true;
|
|
||||||
pinentry = {
|
|
||||||
package = pkgs.pinentry-qt;
|
|
||||||
program = "pinentry-qt";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# The home.packages option allows you to install Nix packages into your
|
|
||||||
# environment.
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
hello
|
|
||||||
# vim
|
|
||||||
# telegram-desktop
|
|
||||||
# vesktop
|
|
||||||
# spotify
|
|
||||||
# pavucontrol
|
|
||||||
lazygit
|
|
||||||
sops
|
|
||||||
];
|
|
||||||
# sops.age.keyFile = "/home/doloro/.config/sops/age/key.txt";
|
|
||||||
|
|
||||||
# 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 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/doloro/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
home.sessionVariables = {
|
|
||||||
EDITOR = "nvim";
|
|
||||||
};
|
|
||||||
# {{{{{ TODO Put in different file
|
|
||||||
# }}}}}
|
|
||||||
# Let Home Manager install and manage itself.
|
|
||||||
programs = {
|
|
||||||
home-manager.enable = true;
|
|
||||||
ssh = {
|
|
||||||
enable = true;
|
|
||||||
enableDefaultConfig = false;
|
|
||||||
matchBlocks = {
|
|
||||||
"*" = {
|
|
||||||
addKeysToAgent = "yes";
|
|
||||||
identityFile = [
|
|
||||||
"~/.ssh/id_github"
|
|
||||||
"~/.ssh/id_gitea_scug_io"
|
|
||||||
"~/.ssh/id_ed25519"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,59 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
user,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
modules = {
|
|
||||||
fish.enable = true;
|
|
||||||
stylix.enable = true;
|
|
||||||
};
|
|
||||||
imports = [
|
|
||||||
inputs.nixos-wsl.nixosModules.default
|
|
||||||
];
|
|
||||||
# rocmSupport = false;
|
|
||||||
programs = {
|
|
||||||
dconf.enable = true;
|
|
||||||
ssh = {
|
|
||||||
startAgent = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
fonts = {
|
|
||||||
enableDefaultPackages = true;
|
|
||||||
packages = with pkgs; [
|
|
||||||
nerd-fonts.jetbrains-mono
|
|
||||||
material-design-icons
|
|
||||||
material-symbols
|
|
||||||
googlesans-code
|
|
||||||
# (inputs.font-patcher.lib.patchFont {
|
|
||||||
# font = pkgs.googlesans-code;
|
|
||||||
# name = "Google Sans Code Nerd Font";
|
|
||||||
# })
|
|
||||||
nerd-fonts.caskaydia-cove
|
|
||||||
nerd-fonts.noto
|
|
||||||
noto-fonts-cjk-sans
|
|
||||||
noto-fonts-cjk-serif
|
|
||||||
];
|
|
||||||
fontDir.enable = true;
|
|
||||||
};
|
|
||||||
networking.dhcpcd.enable = lib.mkOverride 0 false;
|
|
||||||
boot.loader.grub.enable = lib.mkOverride 0 false;
|
|
||||||
wsl = {
|
|
||||||
enable = true;
|
|
||||||
defaultUser = user;
|
|
||||||
docker-desktop.enable = false;
|
|
||||||
useWindowsDriver = true;
|
|
||||||
startMenuLaunchers = true;
|
|
||||||
usbip.enable = true;
|
|
||||||
};
|
|
||||||
nix.settings = {
|
|
||||||
experimental-features = "nix-command flakes";
|
|
||||||
};
|
|
||||||
nixpkgs.config.allowUnsupportedSystem = true;
|
|
||||||
systemd.services."user-runtime-dir@" = {
|
|
||||||
overrideStrategy = "asDropin";
|
|
||||||
unitConfig.ConditionPathExists = "!/run/user/%i";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -6,30 +6,17 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
# imports = [
|
|
||||||
# ../../modules/hyprland/home.nix
|
|
||||||
# ../../modules/quickshell/home.nix
|
|
||||||
# ../../modules/chromium/home.nix
|
|
||||||
# #./modules/neovim/home.nix
|
|
||||||
# ../../modules/stylix/home.nix
|
|
||||||
# ../../modules/nixvim/home.nix
|
|
||||||
# ../../modules/tmux/home.nix
|
|
||||||
# ../../modules/theme/home.nix
|
|
||||||
# # ./modules/spicetify/home.nix
|
|
||||||
# ../../modules/obs/home.nix
|
|
||||||
# ../../modules/blender/home.nix
|
|
||||||
# ../../modules/fish/home.nix
|
|
||||||
# ../../modules/ytm/home.nix
|
|
||||||
# ../../overlays.nix
|
|
||||||
# ];
|
|
||||||
modules = {
|
modules = {
|
||||||
|
hyfetch.enable = true;
|
||||||
Hyprland = {
|
Hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
suspend-on-hibernate = true;
|
suspend-on-hibernate = true;
|
||||||
};
|
};
|
||||||
|
niri.enable = false;
|
||||||
quickshell.enable = true;
|
quickshell.enable = true;
|
||||||
# chromium.enable = true;
|
# chromium.enable = true;
|
||||||
wivrn.enable = true;
|
wivrn.enable = true;
|
||||||
|
sops.enable = true;
|
||||||
helium.enable = true;
|
helium.enable = true;
|
||||||
nixvim.enable = true;
|
nixvim.enable = true;
|
||||||
helix.enable = false;
|
helix.enable = false;
|
||||||
@@ -42,6 +29,7 @@
|
|||||||
autostart = true;
|
autostart = true;
|
||||||
};
|
};
|
||||||
blender.enable = true;
|
blender.enable = true;
|
||||||
|
zen-browser.enable = false;
|
||||||
bottles.enable = true;
|
bottles.enable = true;
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
youtube-music.enable = true;
|
youtube-music.enable = true;
|
||||||
@@ -103,16 +91,16 @@
|
|||||||
vim
|
vim
|
||||||
telegram-desktop
|
telegram-desktop
|
||||||
vesktop
|
vesktop
|
||||||
# (pkgs.discord.override { withVencord = true; })
|
(inputs.protonhax.packages.x86_64-linux.default)
|
||||||
# webcord-vencord
|
|
||||||
# spotify
|
|
||||||
pavucontrol
|
pavucontrol
|
||||||
lazygit
|
lazygit
|
||||||
btop
|
btop
|
||||||
sops
|
sops
|
||||||
|
protontricks
|
||||||
alcom
|
alcom
|
||||||
gcr
|
gcr
|
||||||
qbittorrent
|
qbittorrent
|
||||||
|
(inputs.hytale-launcher.packages.x86_64-linux.default)
|
||||||
];
|
];
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
|
|||||||
@@ -23,10 +23,16 @@ in
|
|||||||
stylix.enable = true;
|
stylix.enable = true;
|
||||||
steam.enable = true;
|
steam.enable = true;
|
||||||
Hyprland.enable = true;
|
Hyprland.enable = true;
|
||||||
|
niri.enable = false;
|
||||||
wivrn.enable = true;
|
wivrn.enable = true;
|
||||||
|
remoteBuild.become-remote-builder = true;
|
||||||
fonts.enable = true;
|
fonts.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.resolved.enable = true;
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
boot.loader.grub.enable = true;
|
boot.loader.grub.enable = true;
|
||||||
boot.loader.grub.device = "nodev";
|
boot.loader.grub.device = "nodev";
|
||||||
@@ -43,10 +49,14 @@ in
|
|||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
"https://cache.nixos.org/"
|
"https://cache.nixos.org/"
|
||||||
"https://attic.scug.io/pkgs"
|
"https://attic.scug.io/pkgs"
|
||||||
|
"https://cache.nixos-cuda.org"
|
||||||
|
"https://niri.cachix.org"
|
||||||
];
|
];
|
||||||
trusted-public-keys = [
|
trusted-public-keys = [
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
"pkgs:+sRbfiZMMX5R3PuAPtIRz/emowDoGZNpozibrnrAvuc="
|
"pkgs:+sRbfiZMMX5R3PuAPtIRz/emowDoGZNpozibrnrAvuc="
|
||||||
|
"cache.nixos-cuda.org:74DUi4Ye579gUqzH4ziL9IyiJBlDpMRn9MBN8oNan9M="
|
||||||
|
"niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964="
|
||||||
];
|
];
|
||||||
experimental-features = [
|
experimental-features = [
|
||||||
"flakes"
|
"flakes"
|
||||||
@@ -83,6 +93,7 @@ in
|
|||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
sops = {
|
sops = {
|
||||||
|
# age.keyFile = "/etc/ssh/ssh_host_ed25519_key";
|
||||||
defaultSopsFile = builtins.toPath "${nix-meow.flakeRoot}/secrets/users.yaml";
|
defaultSopsFile = builtins.toPath "${nix-meow.flakeRoot}/secrets/users.yaml";
|
||||||
secrets = {
|
secrets = {
|
||||||
root-hashed_password = {
|
root-hashed_password = {
|
||||||
@@ -225,8 +236,8 @@ in
|
|||||||
programs = {
|
programs = {
|
||||||
ssh = {
|
ssh = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
extraConfig = "AddKeysToAgent yes";
|
# startAgent = true;
|
||||||
startAgent = true;
|
|
||||||
};
|
};
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
};
|
};
|
||||||
@@ -244,6 +255,7 @@ in
|
|||||||
extraGroups = [
|
extraGroups = [
|
||||||
"wheel"
|
"wheel"
|
||||||
"dialout"
|
"dialout"
|
||||||
|
"networkmanager"
|
||||||
]; # Enable ‘sudo’ for the user.
|
]; # Enable ‘sudo’ for the user.
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
tree
|
tree
|
||||||
@@ -262,6 +274,7 @@ in
|
|||||||
wget
|
wget
|
||||||
killall
|
killall
|
||||||
sops
|
sops
|
||||||
|
seahorse
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
|
let
|
||||||
|
|
||||||
|
in
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
54
hosts/rpi-5/home.nix
Normal file
54
hosts/rpi-5/home.nix
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
fetchFromGitHub,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
modules = {
|
||||||
|
hyfetch.enable = true;
|
||||||
|
sops.enable = true;
|
||||||
|
nixvim.enable = true;
|
||||||
|
tmux.enable = true;
|
||||||
|
# theme.enable = true;
|
||||||
|
fish.enable = true;
|
||||||
|
direnv.enable = true;
|
||||||
|
git.enable = true;
|
||||||
|
};
|
||||||
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
|
# manage.
|
||||||
|
home.username = "doloro";
|
||||||
|
home.homeDirectory = "/home/doloro";
|
||||||
|
|
||||||
|
# services = {
|
||||||
|
# };
|
||||||
|
|
||||||
|
# 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 = "25.11"; # Please read the comment before changing.
|
||||||
|
|
||||||
|
# The home.packages option allows you to install Nix packages into your
|
||||||
|
# environment.
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
hello
|
||||||
|
vim
|
||||||
|
lazygit
|
||||||
|
btop
|
||||||
|
sops
|
||||||
|
];
|
||||||
|
home.sessionVariables = {
|
||||||
|
EDITOR = "nvim";
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.configFile."mimeapps.list".force = true;
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
home-manager.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
99
hosts/rpi-5/nixos.nix
Normal file
99
hosts/rpi-5/nixos.nix
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
rpi-pi = inputs.raspberry-pi-nix;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# To build an sd-card image
|
||||||
|
# $ nix build .#nixosConfigurations.rpi-5-rpi-5-aarch64-linux.config.system.build.sdImage --json &| nom
|
||||||
|
# $ sudo dd if=./result/sd-image/nixos-sd-image-26.05.20260120.80e4adb-aarch64-linux.img of=/dev/sdc conv=fsync status=progress
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
rpi-pi.nixosModules.raspberry-pi
|
||||||
|
rpi-pi.nixosModules.sd-image
|
||||||
|
./containers.nix
|
||||||
|
];
|
||||||
|
nix.settings = {
|
||||||
|
substituters = [ "https://nix-community.cachix.org" ];
|
||||||
|
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.traefik = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
staticConfigOptions = {
|
||||||
|
entryPoints = {
|
||||||
|
web = {
|
||||||
|
address = ":80";
|
||||||
|
http.redirections.entrypoint = {
|
||||||
|
to = "websecure";
|
||||||
|
scheme = "https";
|
||||||
|
};
|
||||||
|
asDefault = true;
|
||||||
|
};
|
||||||
|
websecure = {
|
||||||
|
address = ":443";
|
||||||
|
asDefault = true;
|
||||||
|
http.tls.certResolver = "letsencrypt";
|
||||||
|
};
|
||||||
|
traefik = {
|
||||||
|
address = ":8081";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
certificatesResolvers.letsencrypt.acme = {
|
||||||
|
email = "doloroo@proton.me";
|
||||||
|
storage = "${config.services.traefik.dataDir}/acme.json";
|
||||||
|
httpChallenge.entryPoint = "web";
|
||||||
|
};
|
||||||
|
api.dashboard = true;
|
||||||
|
api.insecure = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# TEMP
|
||||||
|
networking.firewall.enable = false;
|
||||||
|
|
||||||
|
users = {
|
||||||
|
mutableUsers = false;
|
||||||
|
users.doloro = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [ "wheel" ];
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE/4h+WCBBW82puv8SMdUbkWymF4amEMuZitgFztB6oZ" # laptop pub key
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBaa6Z5qtBSLEz+A4fQGYPfkOISsRQlmKkVbcx2zxML7" # pc pub key
|
||||||
|
];
|
||||||
|
initialPassword = "meowmeowmeow";
|
||||||
|
};
|
||||||
|
users.root = {
|
||||||
|
initialPassword = "rootmeow";
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE/4h+WCBBW82puv8SMdUbkWymF4amEMuZitgFztB6oZ" # laptop pub key
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBaa6Z5qtBSLEz+A4fQGYPfkOISsRQlmKkVbcx2zxML7" # pc pub key
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.hostName = "nixos-001-rp5";
|
||||||
|
|
||||||
|
services.openssh.enable = true;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
libraspberrypi
|
||||||
|
];
|
||||||
|
|
||||||
|
sdImage.compressImage = false;
|
||||||
|
|
||||||
|
raspberry-pi-nix.board = "bcm2712"; # Rpi 5 - 64bit
|
||||||
|
# We need to rebuild kernel for 6.12
|
||||||
|
# raspberry-pi-nix.kernel-version = "v6_12_17";
|
||||||
|
raspberry-pi-nix.uboot.enable = false;
|
||||||
|
|
||||||
|
hardware.enableRedistributableFirmware = true;
|
||||||
|
system.stateVersion = "25.11";
|
||||||
|
nixpkgs.hostPlatform = "aarch64-linux";
|
||||||
|
}
|
||||||
4
modules/alecaframe/default.nix
Normal file
4
modules/alecaframe/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
home = ./home.nix;
|
||||||
|
# nixos: ./nixos.nix;
|
||||||
|
}
|
||||||
34
modules/alecaframe/home.nix
Normal file
34
modules/alecaframe/home.nix
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.alecaframe;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# You gotta install it into prefix yourself. this just makes a desktop file
|
||||||
|
options.modules.alecaframe = {
|
||||||
|
enable = lib.mkEnableOption "";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
xdg.desktopEntries = {
|
||||||
|
alecaframe = {
|
||||||
|
name = "Alecaframe";
|
||||||
|
comment = "launches alecaframe";
|
||||||
|
exec = ''
|
||||||
|
protonhax run 230410 "
|
||||||
|
/home/branden/.local/share/Steam/steamapps/compatdata/230410/pfx/drive_c/users/steamuser/AppData/Roaming/Microsoft/Windows/Start
|
||||||
|
Menu/Programs/Overwolf/AlecaFrame.lnk
|
||||||
|
"
|
||||||
|
'';
|
||||||
|
# icon = "system-reboot";
|
||||||
|
terminal = false;
|
||||||
|
type = "Application";
|
||||||
|
categories = [ "System" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
4
modules/base16-theme/default.nix
Normal file
4
modules/base16-theme/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
home = ./home.nix;
|
||||||
|
# nixos: ./nixos.nix;
|
||||||
|
}
|
||||||
62
modules/base16-theme/home.nix
Normal file
62
modules/base16-theme/home.nix
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
home,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
# system: "base16"
|
||||||
|
# name: "Gruvbox dark, hard"
|
||||||
|
# author: "Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox)"
|
||||||
|
# variant: "dark"
|
||||||
|
let
|
||||||
|
hexToInt = hex: fromTOML "value = 0x${hex}";
|
||||||
|
hexToRgb =
|
||||||
|
hex:
|
||||||
|
let
|
||||||
|
red = hexToInt (builtins.substring 1 2 hex);
|
||||||
|
green = hexToInt (builtins.substring 3 2 hex);
|
||||||
|
blue = hexToInt (builtins.substring 5 2 hex);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
r = red.value;
|
||||||
|
g = green.value;
|
||||||
|
b = blue.value;
|
||||||
|
};
|
||||||
|
theme =
|
||||||
|
let
|
||||||
|
importYaml =
|
||||||
|
file:
|
||||||
|
builtins.fromJSON (
|
||||||
|
builtins.readFile (
|
||||||
|
pkgs.runCommandNoCC "converted-yaml.json" { } ''
|
||||||
|
${pkgs.yj}/bin/yj < ${file} > $out
|
||||||
|
''
|
||||||
|
)
|
||||||
|
);
|
||||||
|
# EDIT THEME HERE
|
||||||
|
themeFile = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||||
|
in
|
||||||
|
importYaml themeFile;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.base16 = {
|
||||||
|
hex = lib.mkOption {
|
||||||
|
type = lib.types.attrs;
|
||||||
|
description = ''
|
||||||
|
Hexadecimal color configuration for Gruvbox dark, hard Base16 theme.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
rgb = lib.mkOption {
|
||||||
|
type = lib.types.attrs;
|
||||||
|
description = ''
|
||||||
|
Hexadecimal color configuration for Gruvbox dark, hard Base16 theme.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config.modules.base16.hex = theme.palette;
|
||||||
|
config.modules.base16.rgb = builtins.mapAttrs (_name: hex: hexToRgb hex) theme.palette;
|
||||||
|
}
|
||||||
@@ -30,7 +30,7 @@ in
|
|||||||
# whole blender config including addons is too fat to include here
|
# whole blender config including addons is too fat to include here
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
blender_4_5
|
blenderPkgs.blender_4_5
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
# nix'ing a blender config is most likely not possible
|
# nix'ing a blender config is most likely not possible
|
||||||
|
|||||||
4
modules/builder/default.nix
Normal file
4
modules/builder/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
home = ./home.nix;
|
||||||
|
nixos = ./nixos.nix;
|
||||||
|
}
|
||||||
39
modules/builder/home.nix
Normal file
39
modules/builder/home.nix
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
fetchFromGitHub,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.remoteBuild;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.remoteBuild = {
|
||||||
|
use-remote-builders = lib.mkEnableOption "remoteBuild";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.use-remote-builders {
|
||||||
|
nix.package = pkgs.nix;
|
||||||
|
nix.distributedBuilds = true;
|
||||||
|
nix.settings.builders-use-substitutes = true;
|
||||||
|
|
||||||
|
# Define every build machine here..
|
||||||
|
nix.buildMachines = [
|
||||||
|
{
|
||||||
|
# Main desktop pc
|
||||||
|
# ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKqsFEgtcTDw89GaZJg8P/FE1xngIXmiUZl8j0b+V7n+ root@doloroo-main
|
||||||
|
hostName = "doloroo-main";
|
||||||
|
sshUser = "remotebuild";
|
||||||
|
sshKey = "/root/.ssh/remotebuild";
|
||||||
|
# protocol = "ssh-ng";
|
||||||
|
maxJobs = 8;
|
||||||
|
speedFactor = 2;
|
||||||
|
supportedFeatures = [
|
||||||
|
"nixos-test"
|
||||||
|
"big-parallel"
|
||||||
|
"kvm"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
62
modules/builder/nixos.nix
Normal file
62
modules/builder/nixos.nix
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.remoteBuild;
|
||||||
|
remoteBuilder = lib.mkIf cfg.become-remote-builder {
|
||||||
|
users.users.remotebuild = {
|
||||||
|
isSystemUser = true;
|
||||||
|
shell = pkgs.bashInteractive;
|
||||||
|
group = "remotebuild";
|
||||||
|
# useDefaultShell = true;
|
||||||
|
|
||||||
|
# ssh-keygen -f /root/.ssh/remotebuild
|
||||||
|
openssh.authorizedKeys.keyFiles = [ ./remotebuild.pub ];
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
# Laptop-system
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE/4h+WCBBW82puv8SMdUbkWymF4amEMuZitgFztB6oZ doloroo@proton.me"
|
||||||
|
# Laptop-user-doloro
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOuNlm8vq6MvWsVU/RW4oq7npQngjIxNFpjEWbAS/8H2 root@doloro-nixos-laptop"
|
||||||
|
];
|
||||||
|
initialPassword = "remotebuilder";
|
||||||
|
};
|
||||||
|
|
||||||
|
users.groups.remotebuild = { };
|
||||||
|
|
||||||
|
nix.settings.trusted-users = [ "remotebuild" ];
|
||||||
|
};
|
||||||
|
useBulders = lib.mkIf cfg.use-remote-builders {
|
||||||
|
nix.distributedBuilds = true;
|
||||||
|
nix.settings.builders-use-substitutes = true;
|
||||||
|
|
||||||
|
# Define every build machine here..
|
||||||
|
# also define in home manager (TODO make a single file with all builders)
|
||||||
|
nix.buildMachines = [
|
||||||
|
{
|
||||||
|
# Main desktop pc
|
||||||
|
# ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKqsFEgtcTDw89GaZJg8P/FE1xngIXmiUZl8j0b+V7n+ root@doloroo-main
|
||||||
|
hostName = "doloroo-main";
|
||||||
|
sshUser = "remotebuild";
|
||||||
|
sshKey = "/root/.ssh/remotebuild";
|
||||||
|
system = "x86_64-linux";
|
||||||
|
maxJobs = 8;
|
||||||
|
speedFactor = 2;
|
||||||
|
supportedFeatures = [
|
||||||
|
"nixos-test"
|
||||||
|
"big-parallel"
|
||||||
|
"kvm"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.remoteBuild = {
|
||||||
|
use-remote-builders = lib.mkEnableOption "remoteBuild";
|
||||||
|
become-remote-builder = lib.mkEnableOption "remoteBuild";
|
||||||
|
};
|
||||||
|
config = lib.attrsets.recursiveUpdate useBulders remoteBuilder;
|
||||||
|
}
|
||||||
1
modules/builder/remotebuild.pub
Normal file
1
modules/builder/remotebuild.pub
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKqsFEgtcTDw89GaZJg8P/FE1xngIXmiUZl8j0b+V7n+ root@doloroo-main
|
||||||
@@ -2,7 +2,10 @@
|
|||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
hostname,
|
||||||
|
nix-meow,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
|
system,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
@@ -14,6 +17,7 @@ in
|
|||||||
};
|
};
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
home.shell.enableFishIntegration = true;
|
home.shell.enableFishIntegration = true;
|
||||||
|
home.packages = [ pkgs.nix-output-monitor ];
|
||||||
programs = {
|
programs = {
|
||||||
fish = {
|
fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -23,6 +27,8 @@ in
|
|||||||
set -g theme_display_user yes
|
set -g theme_display_user yes
|
||||||
set -g fish_color_autosuggestion 6F6578
|
set -g fish_color_autosuggestion 6F6578
|
||||||
alias nik 'nix'
|
alias nik 'nix'
|
||||||
|
alias nos 'sudo echo; sudo nixos-rebuild switch --flake .#${hostname}-${system} --log-format internal-json -v &| nom --json'
|
||||||
|
alias hms 'home-manager switch --flake .#${hostname}-${system} --log-format internal-json -v &| nom --json'
|
||||||
'';
|
'';
|
||||||
plugins = [
|
plugins = [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
let
|
let
|
||||||
cfg = config.modules.helium;
|
cfg = config.modules.helium;
|
||||||
# packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/he/helium-browser/package.nix";
|
# packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/he/helium-browser/package.nix";
|
||||||
# helium = inputs.nikkuss-pkgs.callPackage packageNix { };
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.modules.helium = {
|
options.modules.helium = {
|
||||||
@@ -17,14 +16,11 @@ in
|
|||||||
};
|
};
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
inputs.nikkuss-pkgs.packages.x86_64-linux.helium-browser
|
inputs.heliumFlake.packages.x86_64-linux.helium
|
||||||
];
|
];
|
||||||
# xdg.mimeApps.defaultApplications = {
|
# Gives me widevine support. yay
|
||||||
# "text/html" = "chromium.desktop";
|
xdg.configFile."net.imput.helium/WidevineCdm/latest-component-updated-widevine-cdm" = {
|
||||||
# "x-scheme-handler/http" = "chromium.desktop";
|
text = ''{"Path":"${pkgs.widevine-cdm}/share/google/chrome/WidevineCdm"}'';
|
||||||
# "x-scheme-handler/https" = "chromium.desktop";
|
};
|
||||||
# "x-scheme-handler/about" = "chromium.desktop";
|
|
||||||
# "x-scheme-handler/unknown" = "chromium.desktop";
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
4
modules/hyfetch/default.nix
Normal file
4
modules/hyfetch/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
home = ./home.nix;
|
||||||
|
# nixos = ./nixos.nix;
|
||||||
|
}
|
||||||
40
modules/hyfetch/home.nix
Normal file
40
modules/hyfetch/home.nix
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
fetchFromGitHub,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.hyfetch;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.hyfetch = {
|
||||||
|
enable = lib.mkEnableOption "hyfetch";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
home.packages = [ pkgs.fastfetch ];
|
||||||
|
programs.hyfetch = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
"preset" = "bisexual";
|
||||||
|
"mode" = "rgb";
|
||||||
|
"auto_detect_light_dark" = true;
|
||||||
|
"light_dark" = "dark";
|
||||||
|
"lightness" = 0.5;
|
||||||
|
"color_align" = {
|
||||||
|
"mode" = "custom";
|
||||||
|
"custom_colors" = {
|
||||||
|
"1" = 1;
|
||||||
|
"2" = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"backend" = "fastfetch";
|
||||||
|
"args" = null;
|
||||||
|
"distro" = null;
|
||||||
|
"pride_month_disable" = false;
|
||||||
|
"custom_ascii_path" = null;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
modules/hyfetch/nixos.nix
Normal file
20
modules/hyfetch/nixos.nix
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.fish;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.fish = {
|
||||||
|
enable = lib.mkEnableOption "Fish";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
users.defaultUserShell = pkgs.fish;
|
||||||
|
programs.fish = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -42,8 +42,50 @@ in
|
|||||||
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||||
};
|
};
|
||||||
programs = {
|
programs = {
|
||||||
|
hyprlock = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
wlogout = {
|
wlogout = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
layout = [
|
||||||
|
{
|
||||||
|
"label" = "lock";
|
||||||
|
"action" = "hyprlock";
|
||||||
|
"text" = "Lock";
|
||||||
|
"keybind" = "l";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "hibernate";
|
||||||
|
"action" = "systemctl hibernate";
|
||||||
|
"text" = "Hibernate";
|
||||||
|
"keybind" = "h";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "logout";
|
||||||
|
"action" = "uwsm stop";
|
||||||
|
"text" = "Logout";
|
||||||
|
"keybind" = "e";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# TODO add hypr shutdown
|
||||||
|
"label" = "shutdown";
|
||||||
|
"action" = "systemctl poweroff";
|
||||||
|
"text" = "Shutdown";
|
||||||
|
"keybind" = "s";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "suspend";
|
||||||
|
"action" = "systemctl suspend";
|
||||||
|
"text" = "Suspend";
|
||||||
|
"keybind" = "u";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "reboot";
|
||||||
|
"action" = "systemctl reboot";
|
||||||
|
"text" = "Reboot";
|
||||||
|
"keybind" = "r";
|
||||||
|
}
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
systemd.user.services."hyprland_suspend" = lib.mkIf cfg.suspend-on-hibernate {
|
systemd.user.services."hyprland_suspend" = lib.mkIf cfg.suspend-on-hibernate {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
cfg = config.modules.Hyprland;
|
cfg = config.modules.Hyprland;
|
||||||
|
pkgs-unstable = inputs.hyprland.inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.modules.Hyprland = {
|
options.modules.Hyprland = {
|
||||||
@@ -16,6 +17,7 @@ in
|
|||||||
programs.xwayland.enable = true;
|
programs.xwayland.enable = true;
|
||||||
programs.hyprland = {
|
programs.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
withUWSM = true;
|
||||||
# set the flake package
|
# set the flake package
|
||||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||||
# make sure to also set the portal package, so that they are in sync
|
# make sure to also set the portal package, so that they are in sync
|
||||||
@@ -31,5 +33,12 @@ in
|
|||||||
substituters = [ "https://hyprland.cachix.org" ];
|
substituters = [ "https://hyprland.cachix.org" ];
|
||||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||||
};
|
};
|
||||||
|
hardware.graphics = {
|
||||||
|
package = pkgs-unstable.mesa;
|
||||||
|
|
||||||
|
# if you also want 32-bit support (e.g for Steam)
|
||||||
|
# enable32Bit = true;
|
||||||
|
# package32 = pkgs-unstable.pkgsi686Linux.mesa;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,41 @@
|
|||||||
{ inputs, pkgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
|
let
|
||||||
|
config = pkgs.writeTextFile {
|
||||||
|
name = "config";
|
||||||
|
text = ''
|
||||||
|
width = 100%
|
||||||
|
height = 100%
|
||||||
|
border-width = 0
|
||||||
|
outline-width = 0
|
||||||
|
padding-left = 35%
|
||||||
|
padding-top = 35%
|
||||||
|
result-spacing = 25
|
||||||
|
num-results = 5
|
||||||
|
font = monospace
|
||||||
|
background-color = #000A
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
script = pkgs.writeShellScript "mreow" ''
|
||||||
|
exec $(tofi-drun -c ${config})
|
||||||
|
'';
|
||||||
|
in
|
||||||
{
|
{
|
||||||
home.packages = [
|
home.packages = [
|
||||||
pkgs.hyprlauncher
|
pkgs.tofi
|
||||||
];
|
];
|
||||||
wayland.windowManager.hyprland.settings = {
|
wayland.windowManager.hyprland.settings = {
|
||||||
bind = [
|
bind = [
|
||||||
"$mainMod, R, exec, hyprlauncher"
|
"$mainMod, R, exec, ${script}"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
systemd.user.services.hyprlauncher-deamon = {
|
# systemd.user.services.hyprlauncher-deamon = {
|
||||||
Install = {
|
# Install = {
|
||||||
WantedBy = [ "hyprland-session.target" ];
|
# WantedBy = [ "hyprland-session.target" ];
|
||||||
};
|
# };
|
||||||
Service = {
|
# Service = {
|
||||||
ExecStart = "${pkgs.writeShellScript "watch-store" ''
|
# ExecStart = "${pkgs.writeShellScript "watch-store" ''
|
||||||
hyprlauncher -d
|
# hyprlauncher -d
|
||||||
''}";
|
# ''}";
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,12 @@
|
|||||||
{ inputs, pkgs, ... }:
|
{
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
base16 = config.modules.base16;
|
||||||
|
in
|
||||||
{
|
{
|
||||||
home.packages = [
|
home.packages = [
|
||||||
pkgs.hyprcursor
|
pkgs.hyprcursor
|
||||||
@@ -23,14 +31,16 @@
|
|||||||
gaps_in = 1;
|
gaps_in = 1;
|
||||||
gaps_out = 1;
|
gaps_out = 1;
|
||||||
border_size = 1;
|
border_size = 1;
|
||||||
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
"col.active_border" =
|
||||||
# col.inactive_border = rgba(595959aa)
|
"rgb(${toString base16.rgb."base06".r},${toString base16.rgb."base06".g},${toString base16.rgb."base06".b})";
|
||||||
|
"col.inactive_border" =
|
||||||
|
"rgb(${toString base16.rgb."base03".r},${toString base16.rgb."base03".g},${toString base16.rgb."base03".b})";
|
||||||
resize_on_border = false;
|
resize_on_border = false;
|
||||||
allow_tearing = true;
|
allow_tearing = true;
|
||||||
layout = "dwindle";
|
layout = "dwindle";
|
||||||
};
|
};
|
||||||
decoration = {
|
decoration = {
|
||||||
rounding = 0;
|
rounding = 4;
|
||||||
rounding_power = 1;
|
rounding_power = 1;
|
||||||
active_opacity = 1.0;
|
active_opacity = 1.0;
|
||||||
inactive_opacity = 1.0;
|
inactive_opacity = 1.0;
|
||||||
@@ -59,19 +69,20 @@
|
|||||||
"global, 1, 10, default"
|
"global, 1, 10, default"
|
||||||
"border, 1, 5.39, easeOutQuint"
|
"border, 1, 5.39, easeOutQuint"
|
||||||
"windows, 1, 2.79, easeOutQuint"
|
"windows, 1, 2.79, easeOutQuint"
|
||||||
"windowsIn, 1, 1.1, easeOutQuint, popin 87%"
|
"windowsIn, 1, 1, easeOutQuint, popin 87%"
|
||||||
"windowsOut, 1, 1.49, linear, popin 87%"
|
"windowsOut, 1, 1, linear, popin 87%"
|
||||||
"fadeIn, 1, 1.73, almostLinear"
|
"windowsMove, 1, 1, easeInOutCubic"
|
||||||
"fadeOut, 1, 1.46, almostLinear"
|
"fadeIn, 1, 0.5, almostLinear"
|
||||||
"fade, 1, 2.03, quick"
|
"fadeOut, 1, 0.5, almostLinear"
|
||||||
|
"fade, 1, 1, quick"
|
||||||
"layers, 1, 3.81, easeOutQuint"
|
"layers, 1, 3.81, easeOutQuint"
|
||||||
"layersIn, 1, 4, easeOutQuint, fade"
|
"layersIn, 1, 4, easeOutQuint, fade"
|
||||||
"layersOut, 1, 1.5, linear, fade"
|
"layersOut, 1, 1.5, linear, fade"
|
||||||
"fadeLayersIn, 1, 1.79, almostLinear"
|
"fadeLayersIn, 1, 1.79, almostLinear"
|
||||||
"fadeLayersOut, 1, 1.39, almostLinear"
|
"fadeLayersOut, 1, 1.39, almostLinear"
|
||||||
"workspaces, 1, 1.94, almostLinear, fade"
|
"workspaces, 1, 1, almostLinear, slide"
|
||||||
"workspacesIn, 1, 1.21, almostLinear, fade"
|
"workspacesIn, 1, 1, easeInOutCubic, slide"
|
||||||
"workspacesOut, 1, 1.94, almostLinear, fade"
|
"workspacesOut, 1, 1, easeInOutCubic, slide"
|
||||||
"zoomFactor, 1, 7, quick"
|
"zoomFactor, 1, 7, quick"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
@@ -90,9 +101,8 @@
|
|||||||
};
|
};
|
||||||
"$mainMod" = "SUPER";
|
"$mainMod" = "SUPER";
|
||||||
bind = [
|
bind = [
|
||||||
"$mainMod, Q, exec, foot"
|
|
||||||
"$mainMod, C, killactive"
|
"$mainMod, C, killactive"
|
||||||
"$mainMod, M, exit"
|
"$mainMod, M, exec, uwsm stop"
|
||||||
"$mainMod, E, exec, $fileManager"
|
"$mainMod, E, exec, $fileManager"
|
||||||
"$mainMod, V, togglefloating,"
|
"$mainMod, V, togglefloating,"
|
||||||
"$mainMod, P, pseudo, # dwindle"
|
"$mainMod, P, pseudo, # dwindle"
|
||||||
@@ -133,9 +143,9 @@
|
|||||||
];
|
];
|
||||||
windowrule = [
|
windowrule = [
|
||||||
"match:class .*, suppress_event maximize"
|
"match:class .*, suppress_event maximize"
|
||||||
"match:class ^(gamescope)$, workspace 5"
|
"match:class gamescope, workspace 5"
|
||||||
"match:class ^(gamescope)$, fullscreen true"
|
"match:class gamescope, fullscreen true"
|
||||||
"match:class ^(gamescope)$, immediate true"
|
"match:class gamescope, immediate true"
|
||||||
"match:class ^(steam)$, workspace 6 silent"
|
"match:class ^(steam)$, workspace 6 silent"
|
||||||
"match:class ^(vesktop)$, workspace 8 silent"
|
"match:class ^(vesktop)$, workspace 8 silent"
|
||||||
"match:class ^(org.telegram.desktop)$, workspace 8 silent"
|
"match:class ^(org.telegram.desktop)$, workspace 8 silent"
|
||||||
@@ -145,6 +155,7 @@
|
|||||||
];
|
];
|
||||||
layerrule = [
|
layerrule = [
|
||||||
"match:namespace ^(notifications)$, no_screen_share true"
|
"match:namespace ^(notifications)$, no_screen_share true"
|
||||||
|
# "match:namespace ^(quickshell)$, blur true"
|
||||||
];
|
];
|
||||||
# exec-once = [
|
# exec-once = [
|
||||||
# ];
|
# ];
|
||||||
|
|||||||
4
modules/niri/default.nix
Normal file
4
modules/niri/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
nixos = ./nixos.nix;
|
||||||
|
home = ./home.nix;
|
||||||
|
}
|
||||||
158
modules/niri/home.nix
Normal file
158
modules/niri/home.nix
Normal file
@@ -0,0 +1,158 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
home,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.niri;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [ inputs.niri-flake.homeModules.niri ];
|
||||||
|
options.modules.niri = {
|
||||||
|
enable = lib.mkEnableOption "niri configuration module";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
# nixpkgs.overlays = [ inputs.niri-flake.overlays.niri ];
|
||||||
|
gtk.enable = lib.mkForce false;
|
||||||
|
home.packages = with pkgs; [ kickoff ];
|
||||||
|
programs = {
|
||||||
|
niri = {
|
||||||
|
enable = true;
|
||||||
|
# package = pkgs.niri-unstable;
|
||||||
|
settings = {
|
||||||
|
input = {
|
||||||
|
keyboard = {
|
||||||
|
xkb = {
|
||||||
|
layout = "gb";
|
||||||
|
};
|
||||||
|
numlock = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
outputs = {
|
||||||
|
DP-3 = {
|
||||||
|
# Philips Consumer Electronics Company PHL 272E1GZ UK02101011104
|
||||||
|
mode = {
|
||||||
|
width = 1920;
|
||||||
|
height = 1080;
|
||||||
|
refresh = 165.0;
|
||||||
|
};
|
||||||
|
focus-at-startup = true;
|
||||||
|
variable-refresh-rate = true;
|
||||||
|
};
|
||||||
|
HDMI-A-1 = {
|
||||||
|
position = {
|
||||||
|
x = -1920;
|
||||||
|
y = 0;
|
||||||
|
};
|
||||||
|
scale = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
binds = {
|
||||||
|
# Navigation
|
||||||
|
"Mod+Shift+WheelScrollDown" = {
|
||||||
|
hotkey-overlay.title = "Workspace Down";
|
||||||
|
cooldown-ms = 150;
|
||||||
|
action.focus-workspace-down = [ ];
|
||||||
|
};
|
||||||
|
"Mod+Shift+WheelScrollUp" = {
|
||||||
|
hotkey-overlay.title = "Workspace Up";
|
||||||
|
cooldown-ms = 150;
|
||||||
|
action.focus-workspace-up = [ ];
|
||||||
|
};
|
||||||
|
"Mod+WheelScrollUp" = {
|
||||||
|
hotkey-overlay.title = "Workspace Left";
|
||||||
|
action.focus-column-right = [ ];
|
||||||
|
};
|
||||||
|
"Mod+WheelScrollDown" = {
|
||||||
|
hotkey-overlay.title = "Workspace Right";
|
||||||
|
action.focus-column-left = [ ];
|
||||||
|
};
|
||||||
|
"Super+Tab" = {
|
||||||
|
hotkey-overlay.title = "Overview";
|
||||||
|
action.toggle-overview = [ ];
|
||||||
|
};
|
||||||
|
# --
|
||||||
|
# Utility
|
||||||
|
"Super+S" = {
|
||||||
|
action.screenshot = [ ];
|
||||||
|
};
|
||||||
|
"Super+C" = {
|
||||||
|
action.close-window = [ ];
|
||||||
|
};
|
||||||
|
"Super+L" = {
|
||||||
|
action.spawn = "wlogout";
|
||||||
|
};
|
||||||
|
# Program Spawning
|
||||||
|
"Mod+T".action.spawn = "helium";
|
||||||
|
"Mod+R".action.spawn = "kickoff";
|
||||||
|
"Mod+Q".action.spawn = "kitty";
|
||||||
|
# --
|
||||||
|
};
|
||||||
|
window-rules = [
|
||||||
|
{
|
||||||
|
matches = [ ];
|
||||||
|
geometry-corner-radius = {
|
||||||
|
bottom-left = 3.0;
|
||||||
|
bottom-right = 3.0;
|
||||||
|
top-left = 3.0;
|
||||||
|
top-right = 3.0;
|
||||||
|
};
|
||||||
|
clip-to-geometry = true;
|
||||||
|
draw-border-with-background = false;
|
||||||
|
focus-ring.width = 2;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
xwayland-satellite = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
wlogout = {
|
||||||
|
enable = true;
|
||||||
|
layout = [
|
||||||
|
{
|
||||||
|
"label" = "lock";
|
||||||
|
"action" = "hyprlock";
|
||||||
|
"text" = "Lock";
|
||||||
|
"keybind" = "l";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "hibernate";
|
||||||
|
"action" = "systemctl hibernate";
|
||||||
|
"text" = "Hibernate";
|
||||||
|
"keybind" = "h";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "logout";
|
||||||
|
"action" = "loginctl terminate-user $USER";
|
||||||
|
"text" = "Logout";
|
||||||
|
"keybind" = "e";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# TODO add hypr shutdown
|
||||||
|
"label" = "shutdown";
|
||||||
|
"action" = "systemctl poweroff";
|
||||||
|
"text" = "Shutdown";
|
||||||
|
"keybind" = "s";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "suspend";
|
||||||
|
"action" = "systemctl suspend";
|
||||||
|
"text" = "Suspend";
|
||||||
|
"keybind" = "u";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "reboot";
|
||||||
|
"action" = "systemctl reboot";
|
||||||
|
"text" = "Reboot";
|
||||||
|
"keybind" = "r";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
modules/niri/nixos.nix
Normal file
20
modules/niri/nixos.nix
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
home,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.niri;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [ inputs.niri-flake.nixosModules.niri ];
|
||||||
|
options.modules.niri = {
|
||||||
|
enable = lib.mkEnableOption "niri configuration module";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -28,7 +28,7 @@ in
|
|||||||
config.programs.nixvim = lib.mkIf cfg.enable {
|
config.programs.nixvim = lib.mkIf cfg.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
colorschemes.tokyonight.enable = true;
|
colorschemes.gruvbox-material.enable = true;
|
||||||
performance.byteCompileLua = {
|
performance.byteCompileLua = {
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins = true;
|
plugins = true;
|
||||||
@@ -60,13 +60,22 @@ in
|
|||||||
astro = {
|
astro = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
ts_ls = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
svelte.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
lsp-format = {
|
lsp-format = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# lspServersToEnable = [ "qmlls" ];
|
# lspServersToEnable = [ "qmlls" ];
|
||||||
};
|
};
|
||||||
notify.enable = true;
|
notify = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
background_color = "#00000000";
|
||||||
|
};
|
||||||
|
};
|
||||||
mini-cursorword.enable = true;
|
mini-cursorword.enable = true;
|
||||||
# mini-statusline.enable = true;
|
# mini-statusline.enable = true;
|
||||||
lualine = {
|
lualine = {
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ in
|
|||||||
WantedBy = [ "default.target" ];
|
WantedBy = [ "default.target" ];
|
||||||
};
|
};
|
||||||
Service = {
|
Service = {
|
||||||
ExecStart = "${pkg}/bin/quickshell";
|
ExecStart = "${pkgs.quickshell}/bin/quickshell";
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
RestartSec = "5s";
|
RestartSec = "5s";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
/run/user/1000/quickshell/vfs/cd26284dcbf5c20ad2cc36cbb6547fb4/.qmlls.ini
|
/run/user/1000/quickshell/vfs/f9af1311120af20dfed5f1bc1698a66a/.qmlls.ini
|
||||||
@@ -16,7 +16,7 @@ PanelWindow {
|
|||||||
property var modelData
|
property var modelData
|
||||||
screen: modelData.values[0]
|
screen: modelData.values[0]
|
||||||
|
|
||||||
color: Common.Colors.colors.mainBackground
|
color: Qt.rgba(0, 0, 0, 0) // Fully transparent via zero alpha
|
||||||
anchors {
|
anchors {
|
||||||
top: true
|
top: true
|
||||||
left: true
|
left: true
|
||||||
@@ -25,6 +25,7 @@ PanelWindow {
|
|||||||
|
|
||||||
implicitHeight: 31
|
implicitHeight: 31
|
||||||
RowLayout {
|
RowLayout {
|
||||||
|
visible: true
|
||||||
height: 30
|
height: 30
|
||||||
anchors {
|
anchors {
|
||||||
top: parent.top
|
top: parent.top
|
||||||
|
|||||||
@@ -15,7 +15,13 @@ Rectangle {
|
|||||||
property int battPercent: 58
|
property int battPercent: 58
|
||||||
implicitWidth: itemContent.width + 8
|
implicitWidth: itemContent.width + 8
|
||||||
implicitHeight: 24
|
implicitHeight: 24
|
||||||
visible: {if (UPower.displayDevice.ready) { true } else {false}}
|
visible: {
|
||||||
|
if (UPower.displayDevice.ready) {
|
||||||
|
true;
|
||||||
|
} else {
|
||||||
|
false;
|
||||||
|
}
|
||||||
|
}
|
||||||
radius: 5.5
|
radius: 5.5
|
||||||
Layout.alignment: Qt.AlignVCenter
|
Layout.alignment: Qt.AlignVCenter
|
||||||
color: "#2a2a2a" // Define item color
|
color: "#2a2a2a" // Define item color
|
||||||
@@ -26,17 +32,20 @@ Rectangle {
|
|||||||
anchors.centerIn: parent
|
anchors.centerIn: parent
|
||||||
Text {
|
Text {
|
||||||
// anchors.centerIn: parent
|
// anchors.centerIn: parent
|
||||||
text: UPower.displayDevice.percentage + "%"
|
text: Math.round(UPower.displayDevice.percentage * 100) + "%"
|
||||||
color: Common.Colors.colors.primary
|
color: Common.Colors.colors.primary
|
||||||
font.weight: Font.DemiBold
|
font.weight: Font.DemiBold
|
||||||
font.pointSize: 12
|
font.pointSize: 12
|
||||||
}
|
}
|
||||||
Item {
|
Item {
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
||||||
|
implicitWidth: icon.width
|
||||||
|
implicitHeight: icon.height
|
||||||
Text {
|
Text {
|
||||||
|
id: icon
|
||||||
anchors.centerIn: parent
|
anchors.centerIn: parent
|
||||||
text: root.getBatteryState(UPower.displayDevice.percentage, (UPower.displayDevice.changeRate > 0))
|
text: root.getBatteryState(UPower.displayDevice.percentage * 100, ((UPower.displayDevice.timeToFull > 0)))
|
||||||
color: root.getBatteryColor(UPower.displayDevice.percentage)
|
color: root.getBatteryColor(UPower.displayDevice.percentage * 100)
|
||||||
font.weight: Font.DemiBold
|
font.weight: Font.DemiBold
|
||||||
font.pointSize: 24 / 1.4
|
font.pointSize: 24 / 1.4
|
||||||
}
|
}
|
||||||
@@ -55,7 +64,8 @@ function getBatteryState(level, isCharging) {
|
|||||||
|
|
||||||
// Calculate step as a value between 1 and 10 (divide level into 10 ranges)
|
// Calculate step as a value between 1 and 10 (divide level into 10 ranges)
|
||||||
let step = Math.ceil(level / 10); // Range mapping
|
let step = Math.ceil(level / 10); // Range mapping
|
||||||
if (step > 10) step = 10; // Clamp to 10 if it exceeds bounds
|
if (step > 10)
|
||||||
|
step = 10; // Clamp to 10 if it exceeds bounds
|
||||||
|
|
||||||
// Return the correct icon based on state
|
// Return the correct icon based on state
|
||||||
return isCharging ? Common.Icons.battery.charging[String(step)] : Common.Icons.battery[String(step)];
|
return isCharging ? Common.Icons.battery.charging[String(step)] : Common.Icons.battery[String(step)];
|
||||||
|
|||||||
@@ -10,12 +10,18 @@ Singleton {
|
|||||||
|
|
||||||
// For oled screen that risk burn in, set up these colors as semi-transparent and have a rotating wallpaper (!!)
|
// For oled screen that risk burn in, set up these colors as semi-transparent and have a rotating wallpaper (!!)
|
||||||
readonly property var colors: ({
|
readonly property var colors: ({
|
||||||
primary: "#59b1b2b5", // Icons & Text colors
|
primary: "#59b1b2b5" // Icons & Text colors
|
||||||
secondary: "#BF2a2a2a", // Pill container colors
|
,
|
||||||
background: "#BF000000", // Background of containers
|
secondary: "#BF2a2a2a" // Pill container colors
|
||||||
mainBackground: "#20ffffff", // Color of the main bar
|
,
|
||||||
warning: "#E9D502", // (i.e battery nearing low)
|
background: "#BF000000" // Background of containers
|
||||||
critial: "#e53b3c", // (i.e battery is low)
|
,
|
||||||
critial2: "#e53b3c", // (Speaker and Mic being off)
|
mainBackground: "#20ffffff" // Color of the main bar
|
||||||
|
,
|
||||||
|
warning: "#E9D502" // (i.e battery nearing low)
|
||||||
|
,
|
||||||
|
critial: "#e53b3c" // (i.e battery is low)
|
||||||
|
,
|
||||||
|
critial2: "#e53b3c" // (Speaker and Mic being off)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ Singleton {
|
|||||||
// speaker: "../../../assets/bar/V2/speaker.svg",
|
// speaker: "../../../assets/bar/V2/speaker.svg",
|
||||||
// speakerOff: "../../../assets/bar/V2/speakerOff.svg"
|
// speakerOff: "../../../assets/bar/V2/speakerOff.svg"
|
||||||
// })
|
// })
|
||||||
|
// TODO replace all these icons with svg's
|
||||||
readonly property var battery: ({
|
readonly property var battery: ({
|
||||||
"0": "",
|
"0": "",
|
||||||
"1": "",
|
"1": "",
|
||||||
@@ -34,7 +35,7 @@ Singleton {
|
|||||||
"7": "",
|
"7": "",
|
||||||
"8": "",
|
"8": "",
|
||||||
"9": "",
|
"9": "",
|
||||||
"10": "",
|
"10": ""
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
4
modules/sops/default.nix
Normal file
4
modules/sops/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
nixos = ./nixos.nix;
|
||||||
|
home = ./home.nix;
|
||||||
|
}
|
||||||
30
modules/sops/home.nix
Normal file
30
modules/sops/home.nix
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
home,
|
||||||
|
system,
|
||||||
|
nix-meow,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.sops;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
];
|
||||||
|
options.modules.sops = {
|
||||||
|
enable = lib.mkEnableOption "sops configuration module";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
sops = {
|
||||||
|
age.keyFile = "/home/doloro/.config/sops/age/key.txt"; # must have no password!
|
||||||
|
defaultSopsFile = "${nix-meow.flakeRoot}/secrets/users.yaml";
|
||||||
|
secrets."wakatime-scug-io-api-key" = {
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
19
modules/sops/nixos.nix
Normal file
19
modules/sops/nixos.nix
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
home,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.sops;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.sops = {
|
||||||
|
enable = lib.mkEnableOption "sops configuration module";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
};
|
||||||
|
}
|
||||||
4
modules/wakatime/default.nix
Normal file
4
modules/wakatime/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
home = ./home.nix;
|
||||||
|
# nixos: ./nixos.nix;
|
||||||
|
}
|
||||||
16
modules/wakatime/home.nix
Normal file
16
modules/wakatime/home.nix
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
fetchFromGitHub,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.wakatime;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.wakatime = {
|
||||||
|
enable = lib.mkEnableOption "wakatime";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -17,7 +17,7 @@ in
|
|||||||
# whole blender config including addons is too fat to include here
|
# whole blender config including addons is too fat to include here
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
wlx-overlay-s
|
wayvr
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
# nix'ing a blender config is most likely not possible
|
# nix'ing a blender config is most likely not possible
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ in
|
|||||||
publish.userServices = true;
|
publish.userServices = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
programs.adb.enable = true;
|
environment.systemPackages = [ pkgs.android-tools ];
|
||||||
|
# programs.adb.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,6 @@ in
|
|||||||
enable = lib.mkEnableOption "youtube music";
|
enable = lib.mkEnableOption "youtube music";
|
||||||
};
|
};
|
||||||
config.home.packages = with pkgs; [
|
config.home.packages = with pkgs; [
|
||||||
youtube-music
|
pear-desktop
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
4
modules/zen-browser/default.nix
Normal file
4
modules/zen-browser/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
_: {
|
||||||
|
home = ./home.nix;
|
||||||
|
# nixos = ./nixos.nix;
|
||||||
|
}
|
||||||
81
modules/zen-browser/home.nix
Normal file
81
modules/zen-browser/home.nix
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
system,
|
||||||
|
pkgs,
|
||||||
|
fetchFromGitHub,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.zen-browser;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
# inputs.zen-browser.homeModules.beta
|
||||||
|
# inputs.zen-browser.homeModules.twilight
|
||||||
|
inputs.zen-browser.homeModules.twilight-official
|
||||||
|
];
|
||||||
|
options.modules.zen-browser = {
|
||||||
|
enable = lib.mkEnableOption "zen";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
programs.zen-browser = {
|
||||||
|
enable = true;
|
||||||
|
policies = {
|
||||||
|
AutofillAddressEnabled = true;
|
||||||
|
AutofillCreditCardEnabled = false;
|
||||||
|
DisableAppUpdate = true;
|
||||||
|
DisableFeedbackCommands = true;
|
||||||
|
DisableFirefoxStudies = true;
|
||||||
|
DisablePocket = true;
|
||||||
|
DisableTelemetry = true;
|
||||||
|
DontCheckDefaultBrowser = true;
|
||||||
|
NoDefaultBookmarks = true;
|
||||||
|
OfferToSaveLogins = false;
|
||||||
|
EnableTrackingProtection = {
|
||||||
|
Value = true;
|
||||||
|
Locked = true;
|
||||||
|
Cryptomining = true;
|
||||||
|
Fingerprinting = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
xdg.mimeApps =
|
||||||
|
let
|
||||||
|
value =
|
||||||
|
let
|
||||||
|
zen-browser = inputs.zen-browser.packages.${system}.twilight-official; # or twilight
|
||||||
|
in
|
||||||
|
zen-browser.meta.desktopFileName;
|
||||||
|
|
||||||
|
associations = builtins.listToAttrs (
|
||||||
|
map
|
||||||
|
(name: {
|
||||||
|
inherit name value;
|
||||||
|
})
|
||||||
|
[
|
||||||
|
"application/x-extension-shtml"
|
||||||
|
"application/x-extension-xhtml"
|
||||||
|
"application/x-extension-html"
|
||||||
|
"application/x-extension-xht"
|
||||||
|
"application/x-extension-htm"
|
||||||
|
"x-scheme-handler/unknown"
|
||||||
|
"x-scheme-handler/mailto"
|
||||||
|
"x-scheme-handler/chrome"
|
||||||
|
"x-scheme-handler/about"
|
||||||
|
"x-scheme-handler/https"
|
||||||
|
"x-scheme-handler/http"
|
||||||
|
"application/xhtml+xml"
|
||||||
|
"application/json"
|
||||||
|
"text/plain"
|
||||||
|
"text/html"
|
||||||
|
]
|
||||||
|
);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
associations.added = associations;
|
||||||
|
defaultApplications = associations;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
17
modules/zen-browser/nixos.nix
Normal file
17
modules/zen-browser/nixos.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# Disabled in default
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.modules.zen-browser;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.zen-browser = {
|
||||||
|
enable = lib.mkEnableOption "zen";
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
};
|
||||||
|
}
|
||||||
BIN
nixos.qcow2
BIN
nixos.qcow2
Binary file not shown.
30
overlays.nix
30
overlays.nix
@@ -6,36 +6,6 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
youtube-music = (
|
|
||||||
final: prev: {
|
|
||||||
youtube-music = prev.youtube-music.overrideAttrs (old: rec {
|
|
||||||
pname = "youtube-music";
|
|
||||||
version = "3a7d3ff73";
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "pear-devs";
|
|
||||||
repo = "pear-desktop";
|
|
||||||
rev = "3a7d3ff73de49fcf7e7051dd1bdf450db4b222bf";
|
|
||||||
sha256 = "sha256-Q/E37HzQR2Ghxs8vV7WNCXn+DqIhpjhY3SoW3OMITTs=";
|
|
||||||
};
|
|
||||||
postPatch =
|
|
||||||
let
|
|
||||||
patch = prev.fetchurl {
|
|
||||||
url = "https://github.com/pear-devs/pear-desktop/commit/25fccc9a62044ca7006f271a6a2520724e5720e1.patch";
|
|
||||||
hash = "sha256-WAiaqsWlOXyv7FRlvM0LUY17dwCI8BQsQdO1M4zYg7k=";
|
|
||||||
};
|
|
||||||
in
|
|
||||||
''
|
|
||||||
${prev.git}/bin/git apply -R -p1 < ${patch}
|
|
||||||
'';
|
|
||||||
pnpmDeps = prev.pnpm.fetchDeps {
|
|
||||||
inherit pname version src;
|
|
||||||
fetcherVersion = 2;
|
|
||||||
hash = "sha256-9arC2c92U2tILFCBIRcGo9iNaPbNefDDfR9lGaSS88E=";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
);
|
|
||||||
pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
||||||
inherit system;
|
inherit system;
|
||||||
config = {
|
config = {
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
#! /nix/store/cl2gkgnh26mmpka81pc2g5bzjfrili92-bash-5.3p3/bin/bash -e
|
|
||||||
|
|
||||||
if [ -x "/run/wrappers/bin/__chromium-suid-sandbox" ]
|
|
||||||
then
|
|
||||||
export CHROME_DEVEL_SANDBOX="/run/wrappers/bin/__chromium-suid-sandbox"
|
|
||||||
else
|
|
||||||
export CHROME_DEVEL_SANDBOX="/nix/store/wb5fr6ximbq19vbfgr5dw7miqnkqj6h4-helium-browser-0.5.7-141.0.7390.107-sandbox/bin/__chromium-suid-sandbox"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Make generated desktop shortcuts have a valid executable name.
|
|
||||||
export CHROME_WRAPPER='helium'
|
|
||||||
|
|
||||||
# To avoid loading .so files from cwd, LD_LIBRARY_PATH here must not
|
|
||||||
# contain an empty section before or after a colon.
|
|
||||||
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH${LD_LIBRARY_PATH:+:}/nix/store/lm4anvzaxv13aw24cb9cxpwkyrq9d97v-libva-2.22.0/lib:/nix/store/plx9hmh9gbd8s7nbiaijz49501br2vvf-pipewire-1.4.8/lib:/nix/store/7gr1mq9q40xcxirsawn34kzxj8kmgcl6-wayland-1.24.0/lib:/nix/store/m9disdwacfbmfpl9x6v7h7011rbahz7f-gtk+3-3.24.49/lib:/nix/store/2329310vfm5ivldbrnwp317ijcmzbfzi-gtk4-4.18.6/lib:/nix/store/xn5g4ncd73szqypzzmd98dk8xlzncwk4-krb5-1.22.1-lib/lib"
|
|
||||||
|
|
||||||
# libredirect causes chromium to deadlock on startup
|
|
||||||
export LD_PRELOAD="$(echo -n "$LD_PRELOAD" | /nix/store/00bc157nm93q5fjz551fwk60ihlbilvj-coreutils-9.7/bin/tr ':' '\n' | /nix/store/6q57mnfak3q8ss656qgp245qzqvnniyr-gnugrep-3.12/bin/grep -v /lib/libredirect\\.so$ | /nix/store/00bc157nm93q5fjz551fwk60ihlbilvj-coreutils-9.7/bin/tr '\n' ':')"
|
|
||||||
|
|
||||||
export XDG_DATA_DIRS=/nix/store/fgyxm1lpvpd13asgmviypbi4sl6a73w2-cups-2.4.14/share:/nix/store/m9disdwacfbmfpl9x6v7h7011rbahz7f-gtk+3-3.24.49/share:/nix/store/2329310vfm5ivldbrnwp317ijcmzbfzi-gtk4-4.18.6/share:/nix/store/f0ih1z5iajsax2rmryck7a6j2ys1k37k-adwaita-icon-theme-48.0/share:/nix/store/gffh39nwyysqncknijxn7hpyasrqszax-hicolor-icon-theme-0.18/share:/nix/store/d177qdbszw6wlmd1yahgk1mbafxbyqmm-gsettings-desktop-schemas-48.0/share/gsettings-schemas/gsettings-desktop-schemas-48.0:/nix/store/m9disdwacfbmfpl9x6v7h7011rbahz7f-gtk+3-3.24.49/share/gsettings-schemas/gtk+3-3.24.49:/nix/store/2329310vfm5ivldbrnwp317ijcmzbfzi-gtk4-4.18.6/share/gsettings-schemas/gtk4-4.18.6${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS
|
|
||||||
|
|
||||||
# Mainly for xdg-open but also other xdg-* tools (this is only a fallback; $PATH is suffixed so that other implementations can be used):
|
|
||||||
export PATH="$PATH${PATH:+:}/nix/store/4y6rpi6hsmnm120xbp3f5xmwa0vgqcqp-xdg-utils-1.2.1/bin"
|
|
||||||
|
|
||||||
exec "/nix/store/swqp1gsx4nyvxxalgkpgzh6z7yryd0np-helium-browser-unwrapped-0.5.7-141.0.7390.107/libexec/helium/helium" ${NIXOS_OZONE_WL:+${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}} "$@"
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
#! /nix/store/cl2gkgnh26mmpka81pc2g5bzjfrili92-bash-5.3p3/bin/bash -e
|
|
||||||
|
|
||||||
if [ -x "/run/wrappers/bin/__chromium-suid-sandbox" ]
|
|
||||||
then
|
|
||||||
export CHROME_DEVEL_SANDBOX="/run/wrappers/bin/__chromium-suid-sandbox"
|
|
||||||
else
|
|
||||||
export CHROME_DEVEL_SANDBOX="/nix/store/wb5fr6ximbq19vbfgr5dw7miqnkqj6h4-helium-browser-0.5.7-141.0.7390.107-sandbox/bin/__chromium-suid-sandbox"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Make generated desktop shortcuts have a valid executable name.
|
|
||||||
export CHROME_WRAPPER='helium'
|
|
||||||
|
|
||||||
# To avoid loading .so files from cwd, LD_LIBRARY_PATH here must not
|
|
||||||
# contain an empty section before or after a colon.
|
|
||||||
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH${LD_LIBRARY_PATH:+:}/nix/store/lm4anvzaxv13aw24cb9cxpwkyrq9d97v-libva-2.22.0/lib:/nix/store/plx9hmh9gbd8s7nbiaijz49501br2vvf-pipewire-1.4.8/lib:/nix/store/7gr1mq9q40xcxirsawn34kzxj8kmgcl6-wayland-1.24.0/lib:/nix/store/m9disdwacfbmfpl9x6v7h7011rbahz7f-gtk+3-3.24.49/lib:/nix/store/2329310vfm5ivldbrnwp317ijcmzbfzi-gtk4-4.18.6/lib:/nix/store/xn5g4ncd73szqypzzmd98dk8xlzncwk4-krb5-1.22.1-lib/lib"
|
|
||||||
|
|
||||||
# libredirect causes chromium to deadlock on startup
|
|
||||||
export LD_PRELOAD="$(echo -n "$LD_PRELOAD" | /nix/store/00bc157nm93q5fjz551fwk60ihlbilvj-coreutils-9.7/bin/tr ':' '\n' | /nix/store/6q57mnfak3q8ss656qgp245qzqvnniyr-gnugrep-3.12/bin/grep -v /lib/libredirect\\.so$ | /nix/store/00bc157nm93q5fjz551fwk60ihlbilvj-coreutils-9.7/bin/tr '\n' ':')"
|
|
||||||
|
|
||||||
export XDG_DATA_DIRS=/nix/store/fgyxm1lpvpd13asgmviypbi4sl6a73w2-cups-2.4.14/share:/nix/store/m9disdwacfbmfpl9x6v7h7011rbahz7f-gtk+3-3.24.49/share:/nix/store/2329310vfm5ivldbrnwp317ijcmzbfzi-gtk4-4.18.6/share:/nix/store/f0ih1z5iajsax2rmryck7a6j2ys1k37k-adwaita-icon-theme-48.0/share:/nix/store/gffh39nwyysqncknijxn7hpyasrqszax-hicolor-icon-theme-0.18/share:/nix/store/d177qdbszw6wlmd1yahgk1mbafxbyqmm-gsettings-desktop-schemas-48.0/share/gsettings-schemas/gsettings-desktop-schemas-48.0:/nix/store/m9disdwacfbmfpl9x6v7h7011rbahz7f-gtk+3-3.24.49/share/gsettings-schemas/gtk+3-3.24.49:/nix/store/2329310vfm5ivldbrnwp317ijcmzbfzi-gtk4-4.18.6/share/gsettings-schemas/gtk4-4.18.6${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS
|
|
||||||
|
|
||||||
# Mainly for xdg-open but also other xdg-* tools (this is only a fallback; $PATH is suffixed so that other implementations can be used):
|
|
||||||
export PATH="$PATH${PATH:+:}/nix/store/4y6rpi6hsmnm120xbp3f5xmwa0vgqcqp-xdg-utils-1.2.1/bin"
|
|
||||||
|
|
||||||
exec "/nix/store/swqp1gsx4nyvxxalgkpgzh6z7yryd0np-helium-browser-unwrapped-0.5.7-141.0.7390.107/libexec/helium/helium" ${NIXOS_OZONE_WL:+${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}} "$@"
|
|
||||||
@@ -1,222 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
StartupWMClass=helium-browser
|
|
||||||
Version=1.0
|
|
||||||
Name=Helium
|
|
||||||
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
|
|
||||||
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
|
|
||||||
GenericName=Web Browser
|
|
||||||
GenericName[ar]=متصفح الشبكة
|
|
||||||
GenericName[bg]=Уеб браузър
|
|
||||||
GenericName[ca]=Navegador web
|
|
||||||
GenericName[cs]=WWW prohlížeč
|
|
||||||
GenericName[da]=Browser
|
|
||||||
GenericName[de]=Web-Browser
|
|
||||||
GenericName[el]=Περιηγητής ιστού
|
|
||||||
GenericName[en_GB]=Web Browser
|
|
||||||
GenericName[es]=Navegador web
|
|
||||||
GenericName[et]=Veebibrauser
|
|
||||||
GenericName[fi]=WWW-selain
|
|
||||||
GenericName[fr]=Navigateur Web
|
|
||||||
GenericName[gu]=વેબ બ્રાઉઝર
|
|
||||||
GenericName[he]=דפדפן אינטרנט
|
|
||||||
GenericName[hi]=वेब ब्राउज़र
|
|
||||||
GenericName[hu]=Webböngésző
|
|
||||||
GenericName[it]=Browser Web
|
|
||||||
GenericName[ja]=ウェブブラウザ
|
|
||||||
GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ
|
|
||||||
GenericName[ko]=웹 브라우저
|
|
||||||
GenericName[lt]=Žiniatinklio naršyklė
|
|
||||||
GenericName[lv]=Tīmekļa pārlūks
|
|
||||||
GenericName[ml]=വെബ് ബ്രൌസര്
|
|
||||||
GenericName[mr]=वेब ब्राऊजर
|
|
||||||
GenericName[nb]=Nettleser
|
|
||||||
GenericName[nl]=Webbrowser
|
|
||||||
GenericName[pl]=Przeglądarka WWW
|
|
||||||
GenericName[pt]=Navegador Web
|
|
||||||
GenericName[pt_BR]=Navegador da Internet
|
|
||||||
GenericName[ro]=Navigator de Internet
|
|
||||||
GenericName[ru]=Веб-браузер
|
|
||||||
GenericName[sl]=Spletni brskalnik
|
|
||||||
GenericName[sv]=Webbläsare
|
|
||||||
GenericName[ta]=இணைய உலாவி
|
|
||||||
GenericName[th]=เว็บเบราว์เซอร์
|
|
||||||
GenericName[tr]=Web Tarayıcı
|
|
||||||
GenericName[uk]=Навігатор Тенет
|
|
||||||
GenericName[zh_CN]=网页浏览器
|
|
||||||
GenericName[zh_HK]=網頁瀏覽器
|
|
||||||
GenericName[zh_TW]=網頁瀏覽器
|
|
||||||
# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1.
|
|
||||||
GenericName[bn]=ওয়েব ব্রাউজার
|
|
||||||
GenericName[fil]=Web Browser
|
|
||||||
GenericName[hr]=Web preglednik
|
|
||||||
GenericName[id]=Browser Web
|
|
||||||
GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
|
|
||||||
GenericName[sk]=WWW prehliadač
|
|
||||||
GenericName[sr]=Интернет прегледник
|
|
||||||
GenericName[te]=మహాతల అన్వేషి
|
|
||||||
GenericName[vi]=Bộ duyệt Web
|
|
||||||
# Gnome and KDE 3 uses Comment.
|
|
||||||
Comment=Access the Internet
|
|
||||||
Comment[ar]=الدخول إلى الإنترنت
|
|
||||||
Comment[bg]=Достъп до интернет
|
|
||||||
Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন
|
|
||||||
Comment[ca]=Accedeix a Internet
|
|
||||||
Comment[cs]=Přístup k internetu
|
|
||||||
Comment[da]=Få adgang til internettet
|
|
||||||
Comment[de]=Internetzugriff
|
|
||||||
Comment[el]=Πρόσβαση στο Διαδίκτυο
|
|
||||||
Comment[en_GB]=Access the Internet
|
|
||||||
Comment[es]=Accede a Internet.
|
|
||||||
Comment[et]=Pääs Internetti
|
|
||||||
Comment[fi]=Käytä internetiä
|
|
||||||
Comment[fil]=I-access ang Internet
|
|
||||||
Comment[fr]=Accéder à Internet
|
|
||||||
Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો
|
|
||||||
Comment[he]=גישה אל האינטרנט
|
|
||||||
Comment[hi]=इंटरनेट तक पहुंच स्थापित करें
|
|
||||||
Comment[hr]=Pristup Internetu
|
|
||||||
Comment[hu]=Internetelérés
|
|
||||||
Comment[id]=Akses Internet
|
|
||||||
Comment[it]=Accesso a Internet
|
|
||||||
Comment[ja]=インターネットにアクセス
|
|
||||||
Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ
|
|
||||||
Comment[ko]=인터넷 연결
|
|
||||||
Comment[lt]=Interneto prieiga
|
|
||||||
Comment[lv]=Piekļūt internetam
|
|
||||||
Comment[ml]=ഇന്റര്നെറ്റ് ആക്സസ് ചെയ്യുക
|
|
||||||
Comment[mr]=इंटरनेटमध्ये प्रवेश करा
|
|
||||||
Comment[nb]=Gå til Internett
|
|
||||||
Comment[nl]=Verbinding maken met internet
|
|
||||||
Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ
|
|
||||||
Comment[pl]=Skorzystaj z internetu
|
|
||||||
Comment[pt]=Aceder à Internet
|
|
||||||
Comment[pt_BR]=Acessar a internet
|
|
||||||
Comment[ro]=Accesaţi Internetul
|
|
||||||
Comment[ru]=Доступ в Интернет
|
|
||||||
Comment[sk]=Prístup do siete Internet
|
|
||||||
Comment[sl]=Dostop do interneta
|
|
||||||
Comment[sr]=Приступите Интернету
|
|
||||||
Comment[sv]=Gå ut på Internet
|
|
||||||
Comment[ta]=இணையத்தை அணுகுதல்
|
|
||||||
Comment[te]=ఇంటర్నెట్ను ఆక్సెస్ చెయ్యండి
|
|
||||||
Comment[th]=เข้าถึงอินเทอร์เน็ต
|
|
||||||
Comment[tr]=İnternet'e erişin
|
|
||||||
Comment[uk]=Доступ до Інтернету
|
|
||||||
Comment[vi]=Truy cập Internet
|
|
||||||
Comment[zh_CN]=访问互联网
|
|
||||||
Comment[zh_HK]=連線到網際網路
|
|
||||||
Comment[zh_TW]=連線到網際網路
|
|
||||||
Exec=helium %U
|
|
||||||
StartupNotify=true
|
|
||||||
Terminal=false
|
|
||||||
Icon=helium
|
|
||||||
Type=Application
|
|
||||||
Categories=Network;WebBrowser;
|
|
||||||
MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/webcal;x-scheme-handler/mailto;x-scheme-handler/about;x-scheme-handler/unknown
|
|
||||||
Actions=new-window;new-private-window;
|
|
||||||
|
|
||||||
[Desktop Action new-window]
|
|
||||||
Name=New Window
|
|
||||||
Name[am]=አዲስ መስኮት
|
|
||||||
Name[ar]=نافذة جديدة
|
|
||||||
Name[bg]=Нов прозорец
|
|
||||||
Name[bn]=নতুন উইন্ডো
|
|
||||||
Name[ca]=Finestra nova
|
|
||||||
Name[cs]=Nové okno
|
|
||||||
Name[da]=Nyt vindue
|
|
||||||
Name[de]=Neues Fenster
|
|
||||||
Name[el]=Νέο Παράθυρο
|
|
||||||
Name[en_GB]=New Window
|
|
||||||
Name[es]=Nueva ventana
|
|
||||||
Name[et]=Uus aken
|
|
||||||
Name[fa]=پنجره جدید
|
|
||||||
Name[fi]=Uusi ikkuna
|
|
||||||
Name[fil]=New Window
|
|
||||||
Name[fr]=Nouvelle fenêtre
|
|
||||||
Name[gu]=નવી વિંડો
|
|
||||||
Name[hi]=नई विंडो
|
|
||||||
Name[hr]=Novi prozor
|
|
||||||
Name[hu]=Új ablak
|
|
||||||
Name[id]=Jendela Baru
|
|
||||||
Name[it]=Nuova finestra
|
|
||||||
Name[iw]=חלון חדש
|
|
||||||
Name[ja]=新規ウインドウ
|
|
||||||
Name[kn]=ಹೊಸ ವಿಂಡೊ
|
|
||||||
Name[ko]=새 창
|
|
||||||
Name[lt]=Naujas langas
|
|
||||||
Name[lv]=Jauns logs
|
|
||||||
Name[ml]=പുതിയ വിന്ഡോ
|
|
||||||
Name[mr]=नवीन विंडो
|
|
||||||
Name[nl]=Nieuw venster
|
|
||||||
Name[no]=Nytt vindu
|
|
||||||
Name[pl]=Nowe okno
|
|
||||||
Name[pt]=Nova janela
|
|
||||||
Name[pt_BR]=Nova janela
|
|
||||||
Name[ro]=Fereastră nouă
|
|
||||||
Name[ru]=Новое окно
|
|
||||||
Name[sk]=Nové okno
|
|
||||||
Name[sl]=Novo okno
|
|
||||||
Name[sr]=Нови прозор
|
|
||||||
Name[sv]=Nytt fönster
|
|
||||||
Name[sw]=Dirisha Jipya
|
|
||||||
Name[ta]=புதிய சாளரம்
|
|
||||||
Name[te]=క్రొత్త విండో
|
|
||||||
Name[th]=หน้าต่างใหม่
|
|
||||||
Name[tr]=Yeni Pencere
|
|
||||||
Name[uk]=Нове вікно
|
|
||||||
Name[vi]=Cửa sổ Mới
|
|
||||||
Name[zh_CN]=新建窗口
|
|
||||||
Name[zh_TW]=開新視窗
|
|
||||||
Exec=helium
|
|
||||||
|
|
||||||
[Desktop Action new-private-window]
|
|
||||||
Name=New Incognito Window
|
|
||||||
Name[ar]=نافذة جديدة للتصفح المتخفي
|
|
||||||
Name[bg]=Нов прозорец „инкогнито“
|
|
||||||
Name[bn]=নতুন ছদ্মবেশী উইন্ডো
|
|
||||||
Name[ca]=Finestra d'incògnit nova
|
|
||||||
Name[cs]=Nové anonymní okno
|
|
||||||
Name[da]=Nyt inkognitovindue
|
|
||||||
Name[de]=Neues Inkognito-Fenster
|
|
||||||
Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση
|
|
||||||
Name[en_GB]=New Incognito window
|
|
||||||
Name[es]=Nueva ventana de incógnito
|
|
||||||
Name[et]=Uus inkognito aken
|
|
||||||
Name[fa]=پنجره جدید حالت ناشناس
|
|
||||||
Name[fi]=Uusi incognito-ikkuna
|
|
||||||
Name[fil]=Bagong Incognito window
|
|
||||||
Name[fr]=Nouvelle fenêtre de navigation privée
|
|
||||||
Name[gu]=નવી છુપી વિંડો
|
|
||||||
Name[hi]=नई गुप्त विंडो
|
|
||||||
Name[hr]=Novi anoniman prozor
|
|
||||||
Name[hu]=Új Inkognitóablak
|
|
||||||
Name[id]=Jendela Penyamaran baru
|
|
||||||
Name[it]=Nuova finestra di navigazione in incognito
|
|
||||||
Name[iw]=חלון חדש לגלישה בסתר
|
|
||||||
Name[ja]=新しいシークレット ウィンドウ
|
|
||||||
Name[kn]=ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋ
|
|
||||||
Name[ko]=새 시크릿 창
|
|
||||||
Name[lt]=Naujas inkognito langas
|
|
||||||
Name[lv]=Jauns inkognito režīma logs
|
|
||||||
Name[ml]=പുതിയ വേഷ പ്രച്ഛന്ന വിന്ഡോ
|
|
||||||
Name[mr]=नवीन गुप्त विंडो
|
|
||||||
Name[nl]=Nieuw incognitovenster
|
|
||||||
Name[no]=Nytt inkognitovindu
|
|
||||||
Name[pl]=Nowe okno incognito
|
|
||||||
Name[pt]=Nova janela de navegação anónima
|
|
||||||
Name[pt_BR]=Nova janela anônima
|
|
||||||
Name[ro]=Fereastră nouă incognito
|
|
||||||
Name[ru]=Новое окно в режиме инкогнито
|
|
||||||
Name[sk]=Nové okno inkognito
|
|
||||||
Name[sl]=Novo okno brez beleženja zgodovine
|
|
||||||
Name[sr]=Нови прозор за прегледање без архивирања
|
|
||||||
Name[sv]=Nytt inkognitofönster
|
|
||||||
Name[ta]=புதிய மறைநிலைச் சாளரம்
|
|
||||||
Name[te]=క్రొత్త అజ్ఞాత విండో
|
|
||||||
Name[th]=หน้าต่างใหม่ที่ไม่ระบุตัวตน
|
|
||||||
Name[tr]=Yeni Gizli pencere
|
|
||||||
Name[uk]=Нове вікно в режимі анонімного перегляду
|
|
||||||
Name[vi]=Cửa sổ ẩn danh mới
|
|
||||||
Name[zh_CN]=新建隐身窗口
|
|
||||||
Name[zh_TW]=新增無痕式視窗
|
|
||||||
Exec=helium --incognito
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.2 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 40 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 4.1 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 5.7 KiB |
Binary file not shown.
@@ -1,27 +1,46 @@
|
|||||||
doloro-hashed_password: ENC[AES256_GCM,data:RYB/bSNTz1TeGucdFHrxxhOqvqQYvQS3lm44I1Lf3LIEVMXL5s41zxIw0S+JVdlq8I3oHDY4C3o5V4lu+8qAWMyIZYp/6Xp4cw==,iv:yOuKk95skNZ5z805vtoJwvyOdsh08BuyBSgXN+M4Ybo=,tag:QAFhUYuqHT6Spw/l4feY4g==,type:str]
|
doloro-hashed_password: ENC[AES256_GCM,data:RYB/bSNTz1TeGucdFHrxxhOqvqQYvQS3lm44I1Lf3LIEVMXL5s41zxIw0S+JVdlq8I3oHDY4C3o5V4lu+8qAWMyIZYp/6Xp4cw==,iv:yOuKk95skNZ5z805vtoJwvyOdsh08BuyBSgXN+M4Ybo=,tag:QAFhUYuqHT6Spw/l4feY4g==,type:str]
|
||||||
root-hashed_password: ENC[AES256_GCM,data:vzVtz1Ht4XD+omdKjU/Zvoaftq8jKE4kxOjAGZTvoYI07hjItR2TSsYrLw0lwsxyJosfoyF3bVsZSFCuuN7njdchGMSSujZJhg==,iv:0av3n4fcGOHYQB4zidt/qn+blBSiDQ29LN15sVufLLs=,tag:nKKVDbCGxB7wDrMPAyJOaw==,type:str]
|
root-hashed_password: ENC[AES256_GCM,data:vzVtz1Ht4XD+omdKjU/Zvoaftq8jKE4kxOjAGZTvoYI07hjItR2TSsYrLw0lwsxyJosfoyF3bVsZSFCuuN7njdchGMSSujZJhg==,iv:0av3n4fcGOHYQB4zidt/qn+blBSiDQ29LN15sVufLLs=,tag:nKKVDbCGxB7wDrMPAyJOaw==,type:str]
|
||||||
|
wakatime-scug-io-api-key: ENC[AES256_GCM,data:XQUccNW4210U8ZpHSGVcsdbAirzyTvmcy4y6emk7n4N6MO/W,iv:9/f9ceLshA7l8hJB+IDIPvEwYwSkFlPOLmpvtYXLTpU=,tag:x7hESZCouzYVNef2C+iCSA==,type:str]
|
||||||
meow: ENC[AES256_GCM,data:JVzenw==,iv:oCOo9//r5s2K4pSeH5UNEj0LL+9h2yq0G0DPOfwjmyQ=,tag:0gu9FNOrjQ8fpB+B+RbGSg==,type:str]
|
meow: ENC[AES256_GCM,data:JVzenw==,iv:oCOo9//r5s2K4pSeH5UNEj0LL+9h2yq0G0DPOfwjmyQ=,tag:0gu9FNOrjQ8fpB+B+RbGSg==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- recipient: age1ykcy2r4kk729e7adqxu8s24ujc60z5eux7ma0ca4ruzydwgm5p6qmdp838
|
- recipient: age1ykcy2r4kk729e7adqxu8s24ujc60z5eux7ma0ca4ruzydwgm5p6qmdp838
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBWlVIU0pRSGZuRGlOeTdU
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBIYVcvRFNGOUwyTllMSWtX
|
||||||
dnd1T1RrUTFOYUNVMWUwc25mdU1CZzc4d0hrCkFObERLdlR4QWovV1p3dDR5RHVt
|
WGdEeWVBa0U5MXROTXEwSzVJZms5MWZmM1RzCk9ra1FmT2tlbkp4ZW5tYW90SEhK
|
||||||
RW5YRnJZakhLY05BUjUrOG53TTZKT2sKLS0tIFZlWmVSVzJtS1JRa0hncUV4elRq
|
Y25TNmFrMEg4TzJIT0wwaGRQMlYrZXMKLS0tIEpKaEMvdHB6aVBodmN1OERXZ2da
|
||||||
Z1k5VHE1ZlVxVDN1YlJDMG50elNNdzAK+SfOCYdEEqLJFuXCxkbQ2QGmwAGgAMMD
|
SUh3TjIreHJBL0VEUXJkOGpseVphYlkKnhM3XxcBXG4Y+OedQzcngNACsFoASPTp
|
||||||
xA8dLWq2Ur0/CzUaW4Y8uN83uh/o04sJuR+0N+kYzPZabDCxiy3ibQ==
|
Ik5COr5AVsinTS+uOpNDKIY+y0mwkZq50NSIBMy0drhDjd3i+h5dmA==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
- recipient: age1e6vws55p0g23qzthm4qa93hpt6lqmck6670gkygph0sc0j7my4uq5wqjfh
|
||||||
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAwWmZGZWUwZUk5UEk2Ujgz
|
||||||
|
S0RHd0VSUWNEbWtoTlRkOWphS0IzeE8vT0FFCjlxaFVESGdpeVFCUlRCaGo0U0pZ
|
||||||
|
Y1NFQXRNVm52SXgxMGtkc2NVTTRzMGcKLS0tIER5bHZLV0lsczh6dXdJQWpjakpX
|
||||||
|
Zms5MnphZ09UZWVNdFcrREx5U1Y0UGMKE9KkY+8lbZ7to2aGhsJ4iSmboyfekOJi
|
||||||
|
giQ1GWdOs/MJAPN/xgcHzfNj7hzEUJxgj5z0kd0q2GzZCOvGfO16NA==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
- recipient: age1x3lahhkefkap67cdmdjcqaxan9hp62er78akr79v9m73nvgugpeqk0y32a
|
||||||
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA3cnhuNDh3SEFxZUpXTHdv
|
||||||
|
RWRHNVFTcm1xbjdiN3FRRjFVR2JPRkdCcXd3Cm51VHptYXVlYnQzY0pJSGt1anZn
|
||||||
|
QTZ3YTgwSFJUUUxsMEYrdk9RRUFyN0UKLS0tIFJKNDNKY0lnQVdlM1gycm1sRkJ2
|
||||||
|
cHJTV1FZbDZ0M3NpS2w1YW01ZGhIWDAKef6765U4ew5QPmbHhDuufAjq0bS/qhJh
|
||||||
|
9N7g+a4vqTvv5TaOYQ98JBgfVclOZYIx9WO6xPJnb495gPyhWxEjuQ==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
- recipient: age1exzngtk4d9vcsmcq6ap5xx3ca9qacqjkrv86ymged7msx9z6vfyqsf5sjq
|
- recipient: age1exzngtk4d9vcsmcq6ap5xx3ca9qacqjkrv86ymged7msx9z6vfyqsf5sjq
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1MlF2Y3VSKzJIa3pCQUM5
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBheUI4VzZUN3NSTGc3U1kv
|
||||||
bWhsN2dON0RHaU9DcnYycFBWQlZXMEJOdVRRCjA2MDhMWS9tS0hoV0s5L1BEaEtH
|
YzJqRk1mNjBUVTdFNzRNTTZQSmcvUW5zcnowCjI4WlRoL2pPeDZWRy9TaEZUQ1po
|
||||||
Wis0SXBHWWFnTDM1b1V3ZHdhVTVvSFUKLS0tIFc0OVZtOWxscW5wdGlya3Z2WGU0
|
YUl1emFGL29qYW9iZXExUVBZai9GN2sKLS0tIEZ1ZEM2N05zYzU4OFdUVUtDaHRu
|
||||||
bVJ1ZWNTSkIvcGM0V1hrY3YrbDdLNkUKmKoEuTGE9OtkpHIR8xBl7JxIgnhu4LE1
|
a3Y2V1I5TjFnVUNiWEZlZkVMekFZelEKXZc7W3mZcj/rypQ+Wm2Iqvd/4Ry/n507
|
||||||
FQvk9axOtaE/WrwR8oKOtg+1c1a8uidXEK9IerNby7NGVQUE/KsFJA==
|
FcYa+F2LT32D43AoaPZxEHIyJCYUeGpD7Z9rcI822u4pOpCvuoKiRg==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2025-12-23T21:31:15Z"
|
lastmodified: "2025-12-28T17:02:38Z"
|
||||||
mac: ENC[AES256_GCM,data:iNr37OmqniV2cmyDZSrP+N6Ni7lxFeFkwOM1CknVZ9Bl8nW7UE8dmKOzzK/Lt9YZi6KPzld1RnOqZIKWXY8dpr+XAStUQsxQOOQbeuZqTchJgCYIdRAViDJeFtIY3m4Vubtk7PllFwVk6b6Fb6hZT1Clj15gW1EZLDols9nIdX0=,iv:GEFc+7PR3cEe5OPAq5TF//cZp7IJ0E9lOuiAYA02QnQ=,tag:ORo1UxBzm5s87r0mM8qJ4g==,type:str]
|
mac: ENC[AES256_GCM,data:uWBbdr10CpCUsn6TcaqewwqnXlICizTGW+arCLZz5S0b+Nc8iznq98Ev/G4M9mg4f79JRSwXnL6KgtVyf0Hd5LJuEhmViv2wTNfOTBffN3AV/Bvz2qCuwhD14GzPGUH3oYijfx+EB1LaGLniE2rx85h+q1hasRUlUY8UE/ndzus=,iv:rIM5T3PkzTsJYRjvWWbJyEcKu3evRcYJhVNeGCtOlms=,tag:pCYvDaI0qLIvJJzwT08nwQ==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.11.0
|
version: 3.11.0
|
||||||
|
|||||||
Reference in New Issue
Block a user