mirror of
https://github.com/tomasriveral/nixos.git
synced 2026-08-12 10:30:44 +02:00
snapshot pre-cleanup-2026-05-23T19-39-41Z
This commit is contained in:
@@ -24,22 +24,27 @@
|
|||||||
import-tree.url = "github:vic/import-tree"; # imports ./modules recursively
|
import-tree.url = "github:vic/import-tree"; # imports ./modules recursively
|
||||||
};
|
};
|
||||||
outputs = inputs @ { flake-parts, ... }:
|
outputs = inputs @ { flake-parts, ... }:
|
||||||
/*@ inputs: let
|
|
||||||
unfreePkgs = [
|
|
||||||
"hplip"
|
|
||||||
"vivify.vim"
|
|
||||||
"cheatsheet.nvim"
|
|
||||||
];
|
|
||||||
|
|
||||||
mkUnfreePredicate = pkg:
|
|
||||||
builtins.elem (nixpkgs.lib.getName pkg) unfreePkgs;
|
|
||||||
|
|
||||||
pkgs-unstable = import nixpkgs-unstable {
|
|
||||||
inherit system;
|
|
||||||
|
|
||||||
config.allowUnfreePredicate = mkUnfreePredicate;
|
|
||||||
};
|
|
||||||
in */
|
|
||||||
flake-parts.lib.mkFlake { inherit inputs; }
|
flake-parts.lib.mkFlake { inherit inputs; }
|
||||||
(inputs.import-tree ./modules);
|
({
|
||||||
|
flake = let
|
||||||
|
system = "x86_64-linux";
|
||||||
|
unfreePkgs = [
|
||||||
|
"hplip"
|
||||||
|
"vivify.vim"
|
||||||
|
"cheatsheet.nvim"
|
||||||
|
];
|
||||||
|
mkUnfreePredicate = pkg:
|
||||||
|
builtins.elem (inputs.nixpkgs.lib.getName pkg) unfreePkgs;
|
||||||
|
mkPkgs = nixpkgsInput:
|
||||||
|
import nixpkgsInput {
|
||||||
|
inherit system;
|
||||||
|
config.allowUnfreePredicate = mkUnfreePredicate;
|
||||||
|
};
|
||||||
|
pkgs = mkPkgs inputs.nixpkgs;
|
||||||
|
pkgs-unstable = mkPkgs inputs.nixpkgs-unstable;
|
||||||
|
in {
|
||||||
|
inherit pkgs pkgs-unstable;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
// (inputs.import-tree ./modules));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ inputs, ... }: {
|
{ ... }: {
|
||||||
flake.nixosModules.anki = { pkgs, ... }: {
|
flake.nixosModules.anki = { pkgs, ... }: {
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
(pkgs.anki.withAddons [
|
(pkgs.anki.withAddons [
|
||||||
|
|||||||
@@ -3,8 +3,7 @@
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
chromium # used only to flash the firmware on my framework laptop 16 (keyboard.frame.work) as only chromium based browser support webHID.
|
chromium # used only to flash the firmware on my framework laptop 16 (keyboard.frame.work) as only chromium based browser support webHID.
|
||||||
pkgs-unstable.tor-browser
|
pkgs-unstable.tor-browser
|
||||||
self.packages.custom-librewolfprofiles
|
self.packages.${pkgs.system}.custom-librewolfprofiles
|
||||||
(pkgs.callPackage ../../modules/scripts/librewolfprofiles.nix {}) # fzf librewolf profile selector
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
flake.homeModules.librewolf = { ... }: {
|
flake.homeModules.librewolf = { ... }: {
|
||||||
@@ -645,35 +644,4 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-librewolfprofiles = { pkgs, ... }:
|
|
||||||
# fzf librewolf profile selector
|
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-librewolfprofiles";
|
|
||||||
runtimeInputs = with pkgs; [
|
|
||||||
zsh
|
|
||||||
fzf
|
|
||||||
];
|
|
||||||
text = ''
|
|
||||||
# List of profiles
|
|
||||||
profiles=("work" "other" "private window")
|
|
||||||
|
|
||||||
# Use fzf to select
|
|
||||||
selected=$(printf "%s\n" "''${profiles[@]}" | fzf --height 6 --reverse --prompt="Select LibreWolf profile:")
|
|
||||||
|
|
||||||
# If user cancels, exit
|
|
||||||
[[ -z "$selected" ]] && exit 0
|
|
||||||
|
|
||||||
# Launch LibreWolf detached, keeping environment
|
|
||||||
if [[ "$selected" == "private window" ]]; then
|
|
||||||
setsid librewolf --private-window --no-remote >/dev/null 2>&1 &
|
|
||||||
pkill -f "kitty.*Select LibreWolf profile"
|
|
||||||
else
|
|
||||||
setsid librewolf -P "$selected" --no-remote >/dev/null 2>&1 &
|
|
||||||
pkill -f "kitty.*Select LibreWolf profile"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Exit the kitty terminal after selection
|
|
||||||
exit
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
self.packages.${pkgs.system}.custom-dontkillsteam # kill app (if not steam or tomato-c
|
self.packages.${pkgs.system}.custom-dontkillsteam # kill app (if not steam or tomato-c
|
||||||
self.packages.${pkgs.system}.custom-killall # kill all windows except focused window
|
self.packages.${pkgs.system}.custom-killall # kill all windows except focused window
|
||||||
xdg-utils
|
xdg-utils
|
||||||
|
home-manager
|
||||||
];
|
];
|
||||||
# enable hyprland WM
|
# enable hyprland WM
|
||||||
programs.hyprland = {
|
programs.hyprland = {
|
||||||
|
|||||||
@@ -1,11 +1,17 @@
|
|||||||
{ self, ...}: {
|
{ pkgs-unstable, ...}: { # for some reason perSystem can't expose pkgs-unstable so we need to expose it here
|
||||||
# -----------------------------------------------------
|
# -----------------------------------------------------
|
||||||
# Here are a bunch of scripts that interact with hyprland
|
# Here are a bunch of scripts that interact with hyprland
|
||||||
# Some are still used. Some are broken. Some are deprecated. But I do still keep them in case I want to go back to old tools
|
# Some are still used. Some are broken. Some are deprecated. But I do still keep them in case I want to go back to old tools
|
||||||
# -----------------------------------------------------
|
# -----------------------------------------------------
|
||||||
|
perSystem = { pkgs, ... }: let
|
||||||
|
wallpaper1 = ../../assets/wallpaper1.jpg;
|
||||||
|
wallpaper2 = ../../assets/wallpaper2.jpg;
|
||||||
|
wallpaper3 = ../../assets/wallpaper3.jpg;
|
||||||
|
wallpaper4 = ../../assets/wallpaper4.jpg;
|
||||||
|
wallpaper5 = ../../assets/wallpaper5.jpg;
|
||||||
|
in {
|
||||||
# kills the app, but when it's steam or custom-pomodoro
|
# kills the app, but when it's steam or custom-pomodoro
|
||||||
flake.packages.custom-dontkillsteam = { pkgs, ... }:
|
packages.custom-dontkillsteam = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-dontkillsteam";
|
name = "custom-dontkillsteam";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
hyprland
|
hyprland
|
||||||
@@ -21,12 +27,11 @@
|
|||||||
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.custom-killall = { pkgs, pkgs-unstable, ...}:
|
packages.custom-killall = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-killall";
|
name = "custom-killall";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = [
|
||||||
pkgs-unstable.hyprland
|
pkgs.hyprland # for some reason pkgs-unstable doesn't work here
|
||||||
jq
|
pkgs.jq
|
||||||
];
|
];
|
||||||
text = ''
|
text = ''
|
||||||
active_workspace_id=$(hyprctl activeworkspace -j | jq -r '.id')
|
active_workspace_id=$(hyprctl activeworkspace -j | jq -r '.id')
|
||||||
@@ -39,15 +44,7 @@
|
|||||||
xargs -r kill
|
xargs -r kill
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.custom-wallpaper = { pkgs, ... }:
|
packages.custom-wallpaper = pkgs.writeShellApplication {
|
||||||
let
|
|
||||||
wallpaper1 = ../../assets/wallpaper1.jpg;
|
|
||||||
wallpaper2 = ../../assets/wallpaper2.jpg;
|
|
||||||
wallpaper3 = ../../assets/wallpaper3.jpg;
|
|
||||||
wallpaper4 = ../../assets/wallpaper4.jpg;
|
|
||||||
wallpaper5 = ../../assets/wallpaper5.jpg;
|
|
||||||
in
|
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-wallpaper";
|
name = "custom-wallpaper";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
socat
|
socat
|
||||||
@@ -84,8 +81,7 @@
|
|||||||
socat -U - UNIX-CONNECT:"$XDG_RUNTIME_DIR"/hypr/"$HYPRLAND_INSTANCE_SIGNATURE"/.socket2.sock | while read -r line; do handle "$line"; done
|
socat -U - UNIX-CONNECT:"$XDG_RUNTIME_DIR"/hypr/"$HYPRLAND_INSTANCE_SIGNATURE"/.socket2.sock | while read -r line; do handle "$line"; done
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.custom-launch = { pkgs, ... }:
|
packages.custom-launch = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
# used for the terminal autostart. Needs to get cleared and recall fastfetch so that the bar from oh-my-zsh get resized
|
# used for the terminal autostart. Needs to get cleared and recall fastfetch so that the bar from oh-my-zsh get resized
|
||||||
# unused
|
# unused
|
||||||
name = "custom-launch";
|
name = "custom-launch";
|
||||||
@@ -98,4 +94,4 @@
|
|||||||
zsh
|
zsh
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -11,8 +11,8 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-checkKdrive = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-checkKdrive = pkgs.writeShellApplication {
|
||||||
name = "custom-checkKdrive";
|
name = "custom-checkKdrive";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
rclone
|
rclone
|
||||||
@@ -46,8 +46,7 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.custom-mountkdrive = { pkgs, ... }:
|
packages.custom-mountkdrive = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-mountkdrive";
|
name = "custom-mountkdrive";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
rclone
|
rclone
|
||||||
@@ -67,4 +66,4 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -26,8 +26,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-obsidianbackup = {pkgs, ...}:
|
perSystem = {pkgs, ...}: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-obsidianbackup = pkgs.writeShellApplication {
|
||||||
name = "custom-obsidianbackup";
|
name = "custom-obsidianbackup";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
rclone
|
rclone
|
||||||
@@ -84,8 +84,7 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
# this might be broken after dendritic nix. As it searched for the obsidian.nix to get list of vaults
|
# this might be broken after dendritic nix. As it searched for the obsidian.nix to get list of vaults
|
||||||
flake.packages.custom-obsidianvaults = {pkgs, ...}:
|
packages.custom-obsidianbvaults = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-obsidianvaults";
|
name = "custom-obsidianvaults";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
zsh
|
zsh
|
||||||
@@ -123,4 +122,4 @@
|
|||||||
exit
|
exit
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -13,9 +13,9 @@
|
|||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.QS-notifycache = {writeShellApplication, ...}:
|
perSystem = {pkgs, ...}: {
|
||||||
# creates and maintains cache file for the notification history
|
# creates and maintains cache file for the notification history
|
||||||
writeShellApplication {
|
packages.QS-notifycache = pkgs.writeShellApplication {
|
||||||
name = "QS-notifycache";
|
name = "QS-notifycache";
|
||||||
text = ''
|
text = ''
|
||||||
CACHE="$HOME/.cache/notify_history"
|
CACHE="$HOME/.cache/notify_history"
|
||||||
@@ -25,8 +25,7 @@
|
|||||||
echo "Notification history initialized at $(date)" >> "$CACHE"
|
echo "Notification history initialized at $(date)" >> "$CACHE"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.QS-notifyhistory = {writeShellApplication, ...}:
|
packages.QS-notifyhistory = pkgs.writeShellApplication {
|
||||||
writeShellApplication {
|
|
||||||
name = "QS-notifyhistory";
|
name = "QS-notifyhistory";
|
||||||
text = ''
|
text = ''
|
||||||
app="$1"
|
app="$1"
|
||||||
@@ -51,8 +50,7 @@
|
|||||||
} >> "$HOME/.cache/notify_history"
|
} >> "$HOME/.cache/notify_history"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.QS-sysinfo = { pkgs, ... }:
|
packages.QS-sysinfo = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "QS-sysinfo";
|
name = "QS-sysinfo";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
ripgrep
|
ripgrep
|
||||||
@@ -122,4 +120,4 @@
|
|||||||
echo "{\"cpu\":\"$cpu\",\"temp\":\"$temp\",\"fan\":\"$fan\",\"mem\":\"$mem\",\"disk\":\"$disk\",\"power\":\"$power\",\"down\":\"$down_speed\",\"up\":\"$up_speed\"}"
|
echo "{\"cpu\":\"$cpu\",\"temp\":\"$temp\",\"fan\":\"$fan\",\"mem\":\"$mem\",\"disk\":\"$disk\",\"power\":\"$power\",\"down\":\"$down_speed\",\"up\":\"$up_speed\"}"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -694,8 +694,8 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-weatherwaybar = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-weatherwaybar = pkgs.writeShellApplication {
|
||||||
name = "custom-weatherwaybar";
|
name = "custom-weatherwaybar";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
curl
|
curl
|
||||||
@@ -713,4 +713,4 @@
|
|||||||
"$TEXT1" "$TEXT2" "$TEXT3"
|
"$TEXT1" "$TEXT2" "$TEXT3"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -53,10 +53,10 @@
|
|||||||
};
|
};
|
||||||
# };
|
# };
|
||||||
};
|
};
|
||||||
flake.packages.batteryNotify = { pkgs, ... }: let
|
perSystem = { pkgs, ... }: let
|
||||||
NotifySound = ../../assets/battery_notify.mp3;
|
NotifySound = ../../assets/battery_notify.mp3;
|
||||||
in
|
in {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-batterynotify = pkgs.writeShellApplication {
|
||||||
# taken and adapted https://github.com/miniMinn24/Battery_Notify with MIT License
|
# taken and adapted https://github.com/miniMinn24/Battery_Notify with MIT License
|
||||||
|
|
||||||
name = "custom-batterynotify";
|
name = "custom-batterynotify";
|
||||||
@@ -122,10 +122,7 @@
|
|||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.batteryWarning = { pkgs, ...}: let
|
packages.custom-batterywarning = pkgs.writeShellApplication {
|
||||||
NotifySound = ../../assets/battery_notify.mp3;
|
|
||||||
in
|
|
||||||
pkgs.writeShellApplication {
|
|
||||||
# taken and adapted https://github.com/miniMinn24/Battery_Notify with MIT License
|
# taken and adapted https://github.com/miniMinn24/Battery_Notify with MIT License
|
||||||
name = "custom-batterywarning";
|
name = "custom-batterywarning";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
@@ -165,13 +162,12 @@
|
|||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.qtbatticon = { pkgs, ... }:
|
|
||||||
# because cbatticon, batticonplus and other things didn't work.
|
# because cbatticon, batticonplus and other things didn't work.
|
||||||
# chatGpt did this.
|
# chatGpt did this.
|
||||||
# https://chatgpt.com/c/69da11b3-ba24-8331-b7b0-a58a72e69d42
|
# https://chatgpt.com/c/69da11b3-ba24-8331-b7b0-a58a72e69d42
|
||||||
# at your risk and perils
|
# at your risk and perils
|
||||||
# click on the icon to get a notification with state, percentage and wattage
|
# click on the icon to get a notification with state, percentage and wattage
|
||||||
pkgs.stdenv.mkDerivation {
|
packages.qtbatticon = pkgs.stdenv.mkDerivation {
|
||||||
pname = "qtbatticon";
|
pname = "qtbatticon";
|
||||||
version = "1.0";
|
version = "1.0";
|
||||||
|
|
||||||
@@ -336,8 +332,7 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
# This was replaced by caelestia shell's Game Mode
|
# This was replaced by caelestia shell's Game Mode
|
||||||
flake.packages.custom-performance = { pkgs, ...}:
|
packages.custom-performance = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-performance";
|
name = "custom-performance";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
hyprland
|
hyprland
|
||||||
@@ -367,8 +362,7 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
# Old script that was used for the battery. Might not work.
|
# Old script that was used for the battery. Might not work.
|
||||||
flake.packages.custom-olddeprecatedbatterynotify = { pkgs, ... }:
|
packages.custom-olddeprecatedbatterynotify = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-olddeprecatedbatterynotify";
|
name = "custom-olddeprecatedbatterynotify";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
@@ -433,7 +427,7 @@
|
|||||||
sleep "$INTERVAL"
|
sleep "$INTERVAL"
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
};
|
};};
|
||||||
flake.homeModules.cbatticon = { ... }: {
|
flake.homeModules.cbatticon = { ... }: {
|
||||||
# don't works. some GTK error. I let it here if someday, someone is interest in this shit.
|
# don't works. some GTK error. I let it here if someday, someone is interest in this shit.
|
||||||
# ChatGPT half baked a replacement that works on my system.
|
# ChatGPT half baked a replacement that works on my system.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{ inputs, ...}: {
|
{ ...}: {
|
||||||
flake.nixosModule.bluetooth = {pkgs, ...}: {
|
flake.nixosModules.bluetooth = {pkgs, ...}: {
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
blueman # GTK-based Bluetooth Manager
|
blueman # GTK-based Bluetooth Manager
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.nixosModule.disk = { pkgs, ... }: {
|
flake.nixosModules.disk = { pkgs, ... }: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
gnome-disk-utility
|
gnome-disk-utility
|
||||||
udiskie
|
udiskie
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
flake.nixosModule.disk-laptop = { ... }: {
|
flake.nixosModules.disk-laptop = { ... }: {
|
||||||
# i found swap necessary when running nixpkgs review
|
# i found swap necessary when running nixpkgs review
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{
|
{
|
||||||
|
|||||||
+36
-12
@@ -1,7 +1,13 @@
|
|||||||
{ inputs, self, ...}: {
|
{ inputs, self, ...}: {
|
||||||
flake.nixosConfiguration.laptop = inputs.nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations.laptop = inputs.nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {
|
||||||
|
inherit (self) pkgs pkgs-unstable;
|
||||||
|
};
|
||||||
modules = with self.nixosModules; [
|
modules = with self.nixosModules; [
|
||||||
# keep this alphabetically organised
|
#inputs.home-manager.nixosModules.home-manager
|
||||||
|
inputs.home-manager.nixosModules.default
|
||||||
|
# keep this alphabetically organised
|
||||||
anki
|
anki
|
||||||
audioAndMedia
|
audioAndMedia
|
||||||
autoCleanup-laptop
|
autoCleanup-laptop
|
||||||
@@ -24,6 +30,7 @@
|
|||||||
IO
|
IO
|
||||||
kdrive
|
kdrive
|
||||||
latex
|
latex
|
||||||
|
laptop
|
||||||
ly
|
ly
|
||||||
mullvad
|
mullvad
|
||||||
networking
|
networking
|
||||||
@@ -34,11 +41,20 @@
|
|||||||
printer
|
printer
|
||||||
udev
|
udev
|
||||||
user
|
user
|
||||||
];
|
];};
|
||||||
};
|
flake.homeConfigurations.tomasr = inputs.home-manager.lib.homeManagerConfiguration {
|
||||||
flake.homeConfiguration.tomasr = inputs.home-manager.lib.homeManagerConfiguration {
|
|
||||||
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; };
|
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; };
|
||||||
pkgs-unstable = import inputs.nixpkgs-unstable { system = "x86_64-linux"; };
|
|
||||||
|
# system = "x86_64-linux";
|
||||||
|
#specialArgs = {
|
||||||
|
# inherit (self) pkgs pkgs-unstable;
|
||||||
|
#};
|
||||||
|
extraSpecialArgs = {
|
||||||
|
pkgs-unstable =
|
||||||
|
import inputs.nixpkgs-unstable {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
};
|
||||||
|
};
|
||||||
modules = with self.homeModules; [
|
modules = with self.homeModules; [
|
||||||
anki
|
anki
|
||||||
cursor
|
cursor
|
||||||
@@ -58,8 +74,8 @@
|
|||||||
sbb-tui
|
sbb-tui
|
||||||
ssh
|
ssh
|
||||||
thunderbird
|
thunderbird
|
||||||
tomasrModule
|
tomasr
|
||||||
vivify
|
vivify
|
||||||
zoxide
|
zoxide
|
||||||
zsh
|
zsh
|
||||||
zsh-laptop
|
zsh-laptop
|
||||||
@@ -74,19 +90,27 @@
|
|||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
system.stateVersion = "25.11"; # Did you read the comment?
|
system.stateVersion = "25.11"; # Did you read the comment?
|
||||||
|
|
||||||
home-manager.users.USERNAME = self.homeModules.USERNAMEModule;
|
#home-manager.users.tomasr = self.home.Configurations.tomasr;
|
||||||
|
#home-manager.nixosModule.home-manager.users.tomasr = self.homeConfigurations.tomasr;
|
||||||
|
home-manager.users.tomasr = {
|
||||||
|
imports = [
|
||||||
|
self.homeModules.tomasr
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
flake.nixosModules.home-manager-laptop = { ... }: {
|
flake.nixosModules.home-manager-laptop = { pkgs, ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.home-manager.nixosModules.default # import official home-manager NixOS module
|
inputs.home-manager.nixosModules.default # import official home-manager NixOS module
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Warning. Git is used in case I break everything up. It already saved me once
|
||||||
|
environment.systemPackages = [ pkgs.git ];
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.homeModules.tomasrModule = { ... }: {
|
flake.homeModules.tomasr = { ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.caelestia-shell.homeManagerModules.default
|
inputs.caelestia-shell.homeManagerModules.default
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -0,0 +1,120 @@
|
|||||||
|
}[[{ inputs, self, ...}: {
|
||||||
|
flake.nixosConfigurations.laptop = inputs.nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {
|
||||||
|
inherit (self) pkgs pkgs-unstable;
|
||||||
|
};
|
||||||
|
modules = with self.nixosModules; [
|
||||||
|
# keep this alphabetically organised
|
||||||
|
anki
|
||||||
|
audioAndMedia
|
||||||
|
autoCleanup-laptop
|
||||||
|
autoUpdate-laptop
|
||||||
|
battery-laptop
|
||||||
|
bluetooth
|
||||||
|
bootloader-laptop
|
||||||
|
browsers
|
||||||
|
caelestia
|
||||||
|
development
|
||||||
|
documentation
|
||||||
|
disk
|
||||||
|
disk-laptop
|
||||||
|
fonts
|
||||||
|
games
|
||||||
|
hardware-configuration-laptop
|
||||||
|
hardwareUtils-laptop
|
||||||
|
home-manager-laptop
|
||||||
|
hyprland
|
||||||
|
IO
|
||||||
|
kdrive
|
||||||
|
latex
|
||||||
|
laptop
|
||||||
|
ly
|
||||||
|
mullvad
|
||||||
|
networking
|
||||||
|
notifications
|
||||||
|
office
|
||||||
|
#ollama
|
||||||
|
otherUtils
|
||||||
|
printer
|
||||||
|
udev
|
||||||
|
user
|
||||||
|
];
|
||||||
|
flake.homeConfiguration.tomasr = inputs.home-manager.lib.homeManagerConfiguration {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {
|
||||||
|
inherit (self) pkgs pkgs-unstable;
|
||||||
|
};
|
||||||
|
modules = with self.homeModules; [
|
||||||
|
anki
|
||||||
|
cursor
|
||||||
|
eza
|
||||||
|
fastfetch
|
||||||
|
git
|
||||||
|
gtk
|
||||||
|
hyprland
|
||||||
|
hyprland-laptop
|
||||||
|
kitty
|
||||||
|
librewolf
|
||||||
|
mullvad
|
||||||
|
neovim
|
||||||
|
oh-my-zsh
|
||||||
|
ripgrep
|
||||||
|
rofi
|
||||||
|
sbb-tui
|
||||||
|
ssh
|
||||||
|
thunderbird
|
||||||
|
tomasr
|
||||||
|
vivify
|
||||||
|
zoxide
|
||||||
|
zsh
|
||||||
|
zsh-laptop
|
||||||
|
];
|
||||||
|
};
|
||||||
|
flake.nixosModules.laptop = { ... }: {
|
||||||
|
# This value determines the NixOS release from which the default
|
||||||
|
# settings for stateful data, like file locations and database versions
|
||||||
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
# this value at the release version of the first install of this system.
|
||||||
|
# Before changing this value read the documentation for this option
|
||||||
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
|
system.stateVersion = "25.11"; # Did you read the comment?
|
||||||
|
|
||||||
|
home-manager.users.tomasr = self.homeModules.tomasr;
|
||||||
|
};
|
||||||
|
flake.nixosModules.home-manager-laptop = { ... }: {
|
||||||
|
imports = [
|
||||||
|
inputs.home-manager.nixosModules.default # import official home-manager NixOS module
|
||||||
|
];
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
flake.homeModules.tomasr = { ... }: {
|
||||||
|
imports = [
|
||||||
|
inputs.caelestia-shell.homeManagerModules.default
|
||||||
|
];
|
||||||
|
home.username = "tomasr";
|
||||||
|
home.homeDirectory = "/home/tomasr";
|
||||||
|
|
||||||
|
home.sessionVariables = {
|
||||||
|
EDITOR = "neovim";
|
||||||
|
TERMINAL = "kitty";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Required for Home Manager
|
||||||
|
home.stateVersion = "25.11"; # match your Home Manager release
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
# Let Home Manager install and manage itself.
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{ inputs, ... }: {
|
||||||
|
|
||||||
|
flake.modules.nixos.common = { ... }: {
|
||||||
|
|
||||||
|
imports = [ inputs.home-manager.nixosModules.default ];
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.nixModules.user = {
|
flake.nixosModules.user = {
|
||||||
pkgs,
|
pkgs,
|
||||||
pkgs-unstable,
|
pkgs-unstable,
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.packages.custom-bottom = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-bottom = pkgs.writeShellApplication {
|
||||||
name = "custom-bottom";
|
name = "custom-bottom";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
kitty
|
kitty
|
||||||
@@ -10,4 +10,5 @@
|
|||||||
kitty --class "custom-bottom" -o font_size=10 --name "custom-bottom" -e btm --theme gruvbox --disable-click --disable_advanced_kill --enable_cache_memory -g -R -T
|
kitty --class "custom-bottom" -o font_size=10 --name "custom-bottom" -e btm --theme gruvbox --disable-click --disable_advanced_kill --enable_cache_memory -g -R -T
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.packages.custom-colorpicker = { pkgs, ... }:
|
|
||||||
pkgs.writeShellApplication {
|
perSystem = { pkgs, ... }: {
|
||||||
|
packages.custom-colorpicker = pkgs.writeShellApplication {
|
||||||
# useless. Just use hyprpicker
|
# useless. Just use hyprpicker
|
||||||
name = "custom-colorpicker";
|
name = "custom-colorpicker";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
@@ -70,4 +71,5 @@
|
|||||||
pkill -RTMIN+1 waybar
|
pkill -RTMIN+1 waybar
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.packages.custom-cowsay = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-cowsay = pkgs.writeShellApplication {
|
||||||
name = "custom-cowsay";
|
name = "custom-cowsay";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
cowsay
|
cowsay
|
||||||
@@ -80,4 +80,4 @@
|
|||||||
'';
|
'';
|
||||||
# reduce terminal size for actually
|
# reduce terminal size for actually
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
{ ... }: {
|
||||||
|
perSystem = { pkgs, ... }: {
|
||||||
|
# fzf librewolf profile selector
|
||||||
|
packages.custom-librewolfprofiles = pkgs.writeShellApplication {
|
||||||
|
name = "custom-librewolfprofiles";
|
||||||
|
runtimeInputs = with pkgs; [
|
||||||
|
zsh
|
||||||
|
fzf
|
||||||
|
];
|
||||||
|
text = ''
|
||||||
|
# List of profiles
|
||||||
|
profiles=("work" "other" "private window")
|
||||||
|
|
||||||
|
# Use fzf to select
|
||||||
|
selected=$(printf "%s\n" "''${profiles[@]}" | fzf --height 6 --reverse --prompt="Select LibreWolf profile:")
|
||||||
|
|
||||||
|
# If user cancels, exit
|
||||||
|
[[ -z "$selected" ]] && exit 0
|
||||||
|
|
||||||
|
# Launch LibreWolf detached, keeping environment
|
||||||
|
if [[ "$selected" == "private window" ]]; then
|
||||||
|
setsid librewolf --private-window --no-remote >/dev/null 2>&1 &
|
||||||
|
pkill -f "kitty.*Select LibreWolf profile"
|
||||||
|
else
|
||||||
|
setsid librewolf -P "$selected" --no-remote >/dev/null 2>&1 &
|
||||||
|
pkill -f "kitty.*Select LibreWolf profile"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Exit the kitty terminal after selection
|
||||||
|
exit
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
flake.packages.custom-syllabes = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
# counts how many syllabes in a string.
|
# counts how many syllabes in a string.
|
||||||
# not perfect. Does not handle silents e in french
|
# not perfect. Does not handle silents e in french
|
||||||
# but that's what I use for writing poetry
|
# but that's what I use for writing poetry
|
||||||
pkgs.writers.writePython3Bin "custom-syllabes" {
|
packages.custom-syllabes = pkgs.writers.writePython3Bin "custom-syllabes" {
|
||||||
libraries = with pkgs; [
|
libraries = with pkgs; [
|
||||||
python3Packages.pyphen
|
python3Packages.pyphen
|
||||||
];
|
];
|
||||||
@@ -27,4 +27,4 @@
|
|||||||
|
|
||||||
print(f"{total} ({'/'.join(chunks)})")
|
print(f"{total} ({'/'.join(chunks)})")
|
||||||
'';
|
'';
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
flake.packages.custom-tomato = { pkgs, ... }:
|
perSystem = { pkgs, ...}: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-tomato = pkgs.writeShellApplication {
|
||||||
name = "custom-tomato";
|
name = "custom-tomato";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
kitty
|
kitty
|
||||||
@@ -11,4 +11,5 @@
|
|||||||
kitty --class "custom-pomodoro" --name "custom-pomodoro" -e tomato
|
kitty --class "custom-pomodoro" --name "custom-pomodoro" -e tomato
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
flake.packages.custom-weather = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-weather = pkgs.writeShellApplication {
|
||||||
name = "custom-weather";
|
name = "custom-weather";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
curl
|
curl
|
||||||
@@ -13,4 +13,4 @@
|
|||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -1,16 +1,10 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.packages.dejaManuallyDerived = {
|
perSystem = { pkgs, pkgs-unstable, ...}: {
|
||||||
lib,
|
packages.dejaManuallyDerived = pkgs-unstable.buildGoModule (finalAttrs: {
|
||||||
buildGoModule,
|
|
||||||
fetchFromGitHub,
|
|
||||||
nix-update-script,
|
|
||||||
versionCheckHook,
|
|
||||||
}:
|
|
||||||
buildGoModule (finalAttrs: {
|
|
||||||
pname = "deja";
|
pname = "deja";
|
||||||
version = "0.2.6";
|
version = "0.2.6";
|
||||||
__structuredAttrs = true;
|
__structuredAttrs = true;
|
||||||
src = fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "Giammarco-Ferranti";
|
owner = "Giammarco-Ferranti";
|
||||||
repo = "deja";
|
repo = "deja";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
@@ -27,17 +21,17 @@
|
|||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
nativeCheckInputs = [versionCheckHook];
|
nativeCheckInputs = [pkgs.versionCheckHook];
|
||||||
|
|
||||||
passthru.updateScript = nix-update-script {};
|
passthru.updateScript = pkgs.nix-update-script {};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Predictive inline shell autosuggestions for zsh";
|
description = "Predictive inline shell autosuggestions for zsh";
|
||||||
homepage = "https://github.com/Giammarco-Ferranti/deja";
|
homepage = "https://github.com/Giammarco-Ferranti/deja";
|
||||||
license = lib.licenses.mit;
|
license = pkgs.lib.licenses.mit;
|
||||||
platforms = lib.platforms.unix;
|
platforms = pkgs.lib.platforms.unix;
|
||||||
maintainers = with lib.maintainers; [tomasrivera];
|
maintainers = with pkgs.lib.maintainers; [tomasrivera];
|
||||||
mainProgram = "deja";
|
mainProgram = "deja";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -1,20 +1,14 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.packages.sbb-tuiManuallyDerived = {
|
perSystem = { pkgs, pkgs-unstable, ... }: {
|
||||||
lib,
|
packages.sbb-tuiManuallyDerived = pkgs-unstable.buildGoModule (finalAttrs: {
|
||||||
buildGoModule,
|
|
||||||
fetchFromGitHub,
|
|
||||||
nix-update-script,
|
|
||||||
versionCheckHook,
|
|
||||||
}:
|
|
||||||
buildGoModule (finalAttrs: {
|
|
||||||
pname = "sbb-tui";
|
pname = "sbb-tui";
|
||||||
version = "1.14.2";
|
version = "1.14.2";
|
||||||
__structuredAttrs = true;
|
__structuredAttrs = true;
|
||||||
src = fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "Necrom4";
|
owner = "Necrom4";
|
||||||
repo = "sbb-tui";
|
repo = "sbb-tui";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = lib.fakeHash;
|
hash = pkgs.lib.fakeHash;
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-K4DOu3rfSlKAa5JNKCzWWpnWZlXXxtN5Po7p1Spqe1w=";
|
vendorHash = "sha256-K4DOu3rfSlKAa5JNKCzWWpnWZlXXxtN5Po7p1Spqe1w=";
|
||||||
@@ -29,17 +23,17 @@
|
|||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
nativeCheckInputs = [versionCheckHook];
|
nativeCheckInputs = [pkgs.versionCheckHook];
|
||||||
|
|
||||||
passthru.updateScript = nix-update-script {};
|
passthru.updateScript = pkgs.nix-update-script {};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "TUI client for Switzerland's public transport timetables, inspired by SBB/CFF/FFS app";
|
description = "TUI client for Switzerland's public transport timetables, inspired by SBB/CFF/FFS app";
|
||||||
homepage = "https://github.com/Necrom4/sbb-tui";
|
homepage = "https://github.com/Necrom4/sbb-tui";
|
||||||
license = lib.licenses.mit;
|
license = pkgs.lib.licenses.mit;
|
||||||
platforms = lib.platforms.unix;
|
platforms = pkgs.lib.platforms.unix;
|
||||||
maintainers = with lib.maintainers; [tomasrivera];
|
maintainers = with pkgs.lib.maintainers; [tomasrivera];
|
||||||
mainProgram = "sbb-tui";
|
mainProgram = "sbb-tui";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}; }
|
||||||
|
|||||||
@@ -1,28 +1,17 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.packages.vivifyManuallyDerived = {
|
perSystem = { pkgs, nodejs, ... }: {
|
||||||
lib,
|
packages.vivifyManuallyDerived = pkgs.stdenv.mkDerivation (finalAttrs: {
|
||||||
stdenv,
|
|
||||||
nix-update-script,
|
|
||||||
fetchYarnDeps,
|
|
||||||
fetchFromGitHub,
|
|
||||||
yarnConfigHook,
|
|
||||||
npmHooks,
|
|
||||||
nodejs,
|
|
||||||
zip,
|
|
||||||
file,
|
|
||||||
}:
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
|
||||||
pname = "vivify";
|
pname = "vivify";
|
||||||
version = "0.14.0";
|
version = "0.14.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "jannis-baum";
|
owner = "jannis-baum";
|
||||||
repo = "Vivify";
|
repo = "Vivify";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-CszMG+c0bNHfXWqcI3b4iGpeFJ+FmzHDzxflPS+wEe0=";
|
hash = "sha256-CszMG+c0bNHfXWqcI3b4iGpeFJ+FmzHDzxflPS+wEe0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
yarnOfflineCache = fetchYarnDeps {
|
yarnOfflineCache = pkgs.fetchYarnDeps {
|
||||||
yarnLock = "${finalAttrs.src}/yarn.lock";
|
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||||
hash = "sha256-svgEanFiBSQn0TdTuB0CnLR71lkANABEaDiKB+Vc0Rc=";
|
hash = "sha256-svgEanFiBSQn0TdTuB0CnLR71lkANABEaDiKB+Vc0Rc=";
|
||||||
};
|
};
|
||||||
@@ -33,13 +22,13 @@
|
|||||||
yarn install
|
yarn install
|
||||||
|
|
||||||
substituteInPlace node_modules/.bin/tsc \
|
substituteInPlace node_modules/.bin/tsc \
|
||||||
--replace-fail '/usr/bin/env node' '${lib.getExe nodejs}'
|
--replace-fail '/usr/bin/env node' '${pkgs.lib.getExe nodejs}'
|
||||||
|
|
||||||
substituteInPlace node_modules/.bin/webpack \
|
substituteInPlace node_modules/.bin/webpack \
|
||||||
--replace-fail '/usr/bin/env node' '${lib.getExe nodejs}'
|
--replace-fail '/usr/bin/env node' '${pkgs.lib.getExe nodejs}'
|
||||||
|
|
||||||
substituteInPlace node_modules/.bin/postject \
|
substituteInPlace node_modules/.bin/postject \
|
||||||
--replace-fail '/usr/bin/env node' '${lib.getExe nodejs}'
|
--replace-fail '/usr/bin/env node' '${pkgs.lib.getExe nodejs}'
|
||||||
|
|
||||||
make VIV_VERSION=${finalAttrs.version} linux
|
make VIV_VERSION=${finalAttrs.version} linux
|
||||||
|
|
||||||
@@ -49,14 +38,14 @@
|
|||||||
|
|
||||||
wrapProgram $out/bin/viv \
|
wrapProgram $out/bin/viv \
|
||||||
--prefix PATH : ${
|
--prefix PATH : ${
|
||||||
lib.makeBinPath [
|
pkgs.lib.makeBinPath [
|
||||||
nodejs
|
pkgs.nodejs
|
||||||
file
|
pkgs.file
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = with pkgs; [
|
||||||
yarnConfigHook
|
yarnConfigHook
|
||||||
npmHooks.npmInstallHook
|
npmHooks.npmInstallHook
|
||||||
zip
|
zip
|
||||||
@@ -69,7 +58,7 @@
|
|||||||
# (segmentation fault)
|
# (segmentation fault)
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
passthru.updateScript = nix-update-script {};
|
passthru.updateScript = pkgs.nix-update-script {};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Live Markdown viewer";
|
description = "Live Markdown viewer";
|
||||||
@@ -80,10 +69,10 @@
|
|||||||
'';
|
'';
|
||||||
homepage = "https://github.com/jannis-baum/Vivify";
|
homepage = "https://github.com/jannis-baum/Vivify";
|
||||||
changelog = "https://github.com/jannis-baum/Vivify/releases/tag/v${finalAttrs.src.tag}";
|
changelog = "https://github.com/jannis-baum/Vivify/releases/tag/v${finalAttrs.src.tag}";
|
||||||
license = lib.licenses.gpl3;
|
license = pkgs.lib.licenses.gpl3;
|
||||||
maintainers = with lib.maintainers; [skohtv];
|
maintainers = with pkgs.lib.maintainers; [skohtv];
|
||||||
platforms = lib.platforms.linux;
|
platforms = pkgs.lib.platforms.linux;
|
||||||
mainProgram = "viv";
|
mainProgram = "viv";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
systems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
#"aarch64-linux"
|
||||||
|
#"x86_64-darwin"
|
||||||
|
#"aarch64-darwin"
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
{inputs, ...}: {
|
|
||||||
flake.nixosModules.test = { pkgs, ...}: {
|
|
||||||
programs.firefox.enable = true;
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
vim
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -41,8 +41,8 @@
|
|||||||
source = "${pkgs.gpu-screen-recorder}/bin/gsr-kms-server";
|
source = "${pkgs.gpu-screen-recorder}/bin/gsr-kms-server";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-changeAudioOutput = { pkgs, ...}:
|
perSystem = { pkgs, ...}: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-changeAudioOutput = pkgs.writeShellApplication {
|
||||||
name = "custom-changeAudioOutput";
|
name = "custom-changeAudioOutput";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
fzf
|
fzf
|
||||||
@@ -57,4 +57,4 @@
|
|||||||
pkill -f "kitty.*Select audio output"
|
pkill -f "kitty.*Select audio output"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -44,8 +44,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-cleanNix-laptop = {pkgs, ...}:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-cleanNix-laptop = pkgs.writeShellApplication {
|
||||||
name = "custom-cleanNix";
|
name = "custom-cleanNix";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
@@ -115,4 +115,4 @@
|
|||||||
rm -f "$ERROR_FILE"
|
rm -f "$ERROR_FILE"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -44,8 +44,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.packages.custom-autoupdate-laptop = {pkgs, ...}:
|
perSystem = {pkgs, ...}: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-autoupdate-laptop = pkgs.writeShellApplication {
|
||||||
name = "custom-autoupdate";
|
name = "custom-autoupdate";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
@@ -106,4 +106,4 @@
|
|||||||
rm -f "$ERROR_FILE"
|
rm -f "$ERROR_FILE"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
self.packages.${pkgs.system}.custom-checkKdrive # check if kdrive is set up with rclone
|
self.packages.${pkgs.system}.custom-checkKdrive # check if kdrive is set up with rclone
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
flake.packages.custom-checkMatrix = { pkgs, ...}:
|
perSystem = { pkgs, ...}: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-checkMatrix = pkgs.writeShellApplication {
|
||||||
name = "custom-checkMatrix";
|
name = "custom-checkMatrix";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
@@ -33,8 +33,7 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.custom-gitnotify = { pkgs, ...}:
|
packages.custom-gitnotify = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-gitnotify";
|
name = "custom-gitnotify";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
git
|
git
|
||||||
@@ -59,4 +58,4 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
self.packages.${pkgs.system}.custom-manix
|
self.packages.${pkgs.system}.custom-manix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
flake.packages.custom-man = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
pkgs.writeShellApplication {
|
packages.custom-man = pkgs.writeShellApplication {
|
||||||
name = "custom-man";
|
name = "custom-man";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
man
|
man
|
||||||
@@ -52,8 +52,7 @@
|
|||||||
| xargs man
|
| xargs man
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
flake.packages.custom-manix = { pkgs, ... }:
|
packages.custom-manix = pkgs.writeShellApplication {
|
||||||
pkgs.writeShellApplication {
|
|
||||||
name = "custom-manix";
|
name = "custom-manix";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
manix
|
manix
|
||||||
@@ -90,4 +89,4 @@
|
|||||||
| xargs manix
|
| xargs manix
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -35,10 +35,10 @@
|
|||||||
statix
|
statix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
flake.packages.custom-trimmer = { pkgs, ... }:
|
perSystem = { pkgs, ... }: {
|
||||||
# https://gist.github.com/MaxwellDupre/3077cd229490cf93ecab08ef2a79c852
|
# https://gist.github.com/MaxwellDupre/3077cd229490cf93ecab08ef2a79c852
|
||||||
# better garbage collector
|
# better garbage collector
|
||||||
pkgs.writeShellApplication {
|
packages.custom-trimmer = pkgs.writeShellApplication {
|
||||||
name = "custom-trimmer";
|
name = "custom-trimmer";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = with pkgs; [
|
||||||
nix
|
nix
|
||||||
@@ -298,4 +298,4 @@
|
|||||||
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
};}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ ... }: {
|
{ self, ... }: {
|
||||||
flake.nixosModules.otherUtils = # try to keep packages here at a minium. Preferably use a dedicated file
|
flake.nixosModules.otherUtils = # try to keep packages here at a minium. Preferably use a dedicated file
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
@@ -19,8 +19,8 @@
|
|||||||
mailcap
|
mailcap
|
||||||
fuzzel
|
fuzzel
|
||||||
usbutils # used for lsusb
|
usbutils # used for lsusb
|
||||||
(pkgs.callPackage ../../modules/scripts/tomato.nix {})
|
self.packages.${pkgs.system}.custom-tomato
|
||||||
(pkgs.callPackage ../../modules/scripts/syllabes.nix {}) # python script to get number of syllabes in french
|
self.packages.${pkgs.system}.custom-syllabes
|
||||||
pkgs-unstable.bitwarden-desktop
|
pkgs-unstable.bitwarden-desktop
|
||||||
fluffychat # matrix client
|
fluffychat # matrix client
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user