Compare commits
3 Commits
ac5df46bc0
...
95f1f15a68
| Author | SHA1 | Date | |
|---|---|---|---|
| 95f1f15a68 | |||
| 51ab62ab2b | |||
| a3a1d1c730 |
BIN
default_wallpaper.png
Normal file
BIN
default_wallpaper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 73 KiB |
10
flake.nix
10
flake.nix
@@ -52,8 +52,14 @@
|
|||||||
} @ inputs: let
|
} @ inputs: let
|
||||||
lib = nixpkgs.lib;
|
lib = nixpkgs.lib;
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
pkgs = import nixpkgs {
|
||||||
pkgs-unstable = nixpkgs-unstable.legacyPackages.${system};
|
inherit system;
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
pkgs-unstable = import nixpkgs-unstable {
|
||||||
|
inherit system;
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
|
||||||
mkHost = hostname: nixpkgs.lib.nixosSystem {
|
mkHost = hostname: nixpkgs.lib.nixosSystem {
|
||||||
modules = [
|
modules = [
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./disko.nix
|
./disko.nix
|
||||||
./filesystem.nix
|
./filesystem.nix
|
||||||
|
./mounts.nix
|
||||||
./${hostname}-hardware-configuration.nix
|
./${hostname}-hardware-configuration.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,5 +30,18 @@
|
|||||||
"noauto"
|
"noauto"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
"/home/chris/Games" = {
|
||||||
|
device = "889e9f90-2d41-4f6b-a0af-21a727465a32";
|
||||||
|
fsType = "ext4";
|
||||||
|
options = [
|
||||||
|
"defaults"
|
||||||
|
"x-systemd.mount-timeout=5"
|
||||||
|
"user"
|
||||||
|
"exec"
|
||||||
|
"x-systemd.automount"
|
||||||
|
"noauto"
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -4,6 +4,9 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./packages.nix
|
./packages.nix
|
||||||
./programs.nix
|
./programs.nix
|
||||||
|
./hooks.nix
|
||||||
|
./impermanence.nix
|
||||||
|
./services.nix
|
||||||
];
|
];
|
||||||
home = {
|
home = {
|
||||||
username = "chris";
|
username = "chris";
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
activation = {
|
home.activation = {
|
||||||
setupDotfiles = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
setupDotfiles = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||||
if [[ -v DRY_RUN ]]; then
|
if [[ -v DRY_RUN ]]; then
|
||||||
echo "Dry run: Would bootstrap dotfiles from labs.scarif.space"
|
echo "Dry run: Would bootstrap dotfiles from labs.scarif.space"
|
||||||
@@ -64,13 +64,35 @@
|
|||||||
DEST_FILE="$HOME/.config/Nextcloud/nextcloud.cfg"
|
DEST_FILE="$HOME/.config/Nextcloud/nextcloud.cfg"
|
||||||
|
|
||||||
if [ ! -f "$DEST_FILE" ]; then
|
if [ ! -f "$DEST_FILE" ]; then
|
||||||
cp "${./initial-configs/nextcloud.cfg}" "$DEST_FILE"
|
cp "${../initial-configs/nextcloud.cfg}" "$DEST_FILE"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
DEST_FILE="$HOME/.config/sinew.in/Enpass.conf"
|
DEST_FILE="$HOME/.config/sinew.in/Enpass.conf"
|
||||||
|
|
||||||
if [ ! -f "$DEST_FILE" ]; then
|
if [ ! -f "$DEST_FILE" ]; then
|
||||||
cp "${./initial-configs/Enpass.conf}" "$DEST_FILE"
|
cp "${../initial-configs/Enpass.conf}" "$DEST_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
DEST_FILE="$HOME/.config/obsidian/obsidian.json"
|
||||||
|
|
||||||
|
if [ ! -f "$DEST_FILE" ]; then
|
||||||
|
cp "${../initial-configs/obsidian.json}" "$DEST_FILE"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
setupDefaultWallpaper = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||||
|
if [[ -v DRY_RUN ]]; then
|
||||||
|
echo "Dry run: Would copy wallpaper and initialise colour scheme if not set"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
WALLPAPER_FILE="$HOME/.config/station/current/background"
|
||||||
|
|
||||||
|
if [ ! -f "$WALLPAPER_FILE" ]; then
|
||||||
|
mkdir -p "$(dirname "$WALLPAPER_FILE")"
|
||||||
|
ln -nsf ${../default_wallpaper.png} "$WALLPAPER_FILE"
|
||||||
|
fi
|
||||||
|
if [ ! -f "$HOME/.config/wal/colors" ]; then
|
||||||
|
${pkgs.pywal16}/bin/wal -i "$WALLPAPER_FILE"
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ impermanence, ... }:
|
{ impermanence, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ impermanence.nixosModules.impermanence ];
|
#imports = [ impermanence.nixosModules.impermanence ];
|
||||||
home.persistence."/persist" = {
|
home.persistence."/persist" = {
|
||||||
directories = [
|
directories = [
|
||||||
"Downloads"
|
"Downloads"
|
||||||
@@ -12,13 +12,17 @@
|
|||||||
".cache/zsh"
|
".cache/zsh"
|
||||||
".mozilla/firefox"
|
".mozilla/firefox"
|
||||||
".config/nvim"
|
".config/nvim"
|
||||||
|
".cache/wal"
|
||||||
".config/yazi/plugins"
|
".config/yazi/plugins"
|
||||||
".config/nixos"
|
".config/nixos"
|
||||||
".config/sinew.in"
|
".config/sinew.in"
|
||||||
".config/chromium"
|
".config/chromium"
|
||||||
|
".config/obsidian"
|
||||||
".config/superProductivity"
|
".config/superProductivity"
|
||||||
|
".config/Antigravity"
|
||||||
".local/share/direnv"
|
".local/share/direnv"
|
||||||
".local/share/nvim"
|
".local/share/nvim"
|
||||||
|
".local/share/krita"
|
||||||
".local/share/voxtype"
|
".local/share/voxtype"
|
||||||
".local/share/zoxide"
|
".local/share/zoxide"
|
||||||
".local/share/Enpass"
|
".local/share/Enpass"
|
||||||
|
|||||||
@@ -1,4 +1,14 @@
|
|||||||
{ pkgs, try-cli, ... }:
|
{ pkgs, pkgs-unstable, try-cli, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
enpass = pkgs.enpass.overrideAttrs (oldAttrs: rec {
|
||||||
|
version = "6.11.13.1957";
|
||||||
|
src = pkgs.fetchurl {
|
||||||
|
url = "https://apt.enpass.io/pool/main/e/enpass/enpass_${version}_amd64.deb";
|
||||||
|
sha256 = "2d8c90643851591aff41057b380a7e87bb839bf5c5aa0ca1456144e9996c902a";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
@@ -30,7 +40,6 @@
|
|||||||
krita # Digital art software
|
krita # Digital art software
|
||||||
libreoffice-fresh # Office suite
|
libreoffice-fresh # Office suite
|
||||||
lunar-client # Minecraft launcher
|
lunar-client # Minecraft launcher
|
||||||
mailspring # Mail client
|
|
||||||
mpv # Video player
|
mpv # Video player
|
||||||
nautilus # Document viewer
|
nautilus # Document viewer
|
||||||
nextcloud-client # Nextcloud sync client
|
nextcloud-client # Nextcloud sync client
|
||||||
@@ -40,11 +49,31 @@
|
|||||||
super-productivity # Task app
|
super-productivity # Task app
|
||||||
sxiv # Minimal image viewer
|
sxiv # Minimal image viewer
|
||||||
tenacity # Audio software
|
tenacity # Audio software
|
||||||
|
thunderbird # Mail client
|
||||||
try-cli.packages.${pkgs.system}.default # Try CLI tool
|
try-cli.packages.${pkgs.system}.default # Try CLI tool
|
||||||
wally-cli # Keyboard flasher
|
wally-cli # Keyboard flasher
|
||||||
wiremix # Audio mixer TUI
|
wiremix # Audio mixer TUI
|
||||||
xournalpp # Handwriting note-taking software
|
xournalpp # Handwriting note-taking software
|
||||||
|
yad # For creating dialogs during install script
|
||||||
zenity # For creating dialogs during install script
|
zenity # For creating dialogs during install script
|
||||||
zathura # Minimal PDF viewer
|
zathura # Minimal PDF viewer
|
||||||
];
|
];
|
||||||
|
xdg.desktopEntries.enpass = {
|
||||||
|
type = "Application";
|
||||||
|
name = "Enpass";
|
||||||
|
genericName = "Enpass Password Manager";
|
||||||
|
icon = "enpass";
|
||||||
|
terminal = false;
|
||||||
|
exec = "env QT_SCREEN_SCALE_FACTORS=2 ${enpass}/bin/Enpass %U";
|
||||||
|
mimeType = [
|
||||||
|
"x-scheme-handler/enpassauth"
|
||||||
|
"x-scheme-handler/enpasscard"
|
||||||
|
"x-scheme-handler/enpassstart"
|
||||||
|
"x-scheme-handler/enpass"
|
||||||
|
"x-scheme-handler/cloudkit-7adb8cc64f.in.sinew.walletx"
|
||||||
|
"x-scheme-handler/enpassshare"
|
||||||
|
"application/enpasscard"
|
||||||
|
];
|
||||||
|
categories = [ "Utility" ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,10 @@
|
|||||||
elephant = {
|
elephant = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
waybar = {
|
||||||
|
enable = true;
|
||||||
|
systemd.enable = true;
|
||||||
|
};
|
||||||
voxtype = {
|
voxtype = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = voxtype.packages.${pkgs.system}.vulkan;
|
package = voxtype.packages.${pkgs.system}.vulkan;
|
||||||
|
|||||||
@@ -43,6 +43,7 @@
|
|||||||
rustc # Rust compiler
|
rustc # Rust compiler
|
||||||
rustfmt # Rust formatter
|
rustfmt # Rust formatter
|
||||||
satty # Screenshot editor TODO: Figure out and configure
|
satty # Screenshot editor TODO: Figure out and configure
|
||||||
|
sshpass # SSH with password in CLI, used by install scripts
|
||||||
swaybg # Wayland wallpaper utility
|
swaybg # Wayland wallpaper utility
|
||||||
tldr # Simplified man pages
|
tldr # Simplified man pages
|
||||||
tmux # Terminal multiplexer
|
tmux # Terminal multiplexer
|
||||||
|
|||||||
Reference in New Issue
Block a user