mirror of
https://github.com/szymon-jozef/amazing-dotfiles.git
synced 2026-10-27 19:20:43 +01:00
Compare commits
16 Commits
1e107185b3
...
c775533445
| Author | SHA1 | Date | |
|---|---|---|---|
| c775533445 | |||
| a614b87763 | |||
| 98c6e20d5a | |||
| 3091531d95 | |||
| 45c041d7ef | |||
| 8ead2d6800 | |||
| 74b4c90007 | |||
| f175a72fcf | |||
| b33de71b55 | |||
| 8a91a7ac1f | |||
| 909432c10a | |||
| 18b56bb257 | |||
| cac48072c3 | |||
| 89911e7d90 | |||
| 65a83d177a | |||
| 56dfeda53e |
12
README.md
12
README.md
@@ -45,15 +45,21 @@ As of today I'm using this repo with home manager. I'm still trying stuff out, b
|
||||
|
||||
# How to use this?
|
||||
You need to have [home manager](https://nix-community.github.io/home-manager/index.xhtml#sec-install-standalone) installed. Install needs to be **standalone**. It may not work as NixOS module.
|
||||
## Arch Linux
|
||||
## Settings
|
||||
You need to edit `flake.nix` to match your preferences.
|
||||
- If you want to use git, login with `gh auth login`, generate ssh key and put the pub key in the flake.
|
||||
- You also need to set your git credentials there
|
||||
- You can change the path of wallpaper dir.
|
||||
|
||||
### Arch Linux
|
||||
0. If you're extra lazy you can use `install_nix_and_home_manager_on_arch.sh` script to install nix and home-manager. Just run it with `chmod +x ./install_nix_and_home_manager_on_arch.sh && ./install_nix_and_home_manager_on_arch.sh`
|
||||
1. Copy this repo to `~/.config/home-manager` or somewhere else.
|
||||
2. Make sure to change variable to your liking inside `flake.nix`. Especially your username and home path!
|
||||
3. Download all the dependencies `sudo yay -Syu --needed - < arch_packages.txt`. You can use any other aur helper if you want to, but be aware that regular pacman most likely won't work as `ashell` is not in regular repos yet.
|
||||
3. Download all the dependencies `yay -Syu --needed - < arch_packages.txt`. You can use any other aur helper if you want to, but be aware that regular pacman most likely won't work as `ashell` is not in regular repos yet.
|
||||
4. Run this command to apply all the configurations for the first time `home-manager switch --flake .#arch -b backup`. Make sure to be in the repo root. All your existing files will be backed up with `.backup` extension.
|
||||
5. Enjoy! Now you can use [nh](https://github.com/nix-community/nh). So for example to switch use `nh home switch . -c arch --backup-extension backup`
|
||||
|
||||
## NixOS
|
||||
### NixOS
|
||||
1. Copy this repo to `~/.config/home-manager` or somewhere else.
|
||||
2. Make sure to change variable to your liking inside `flake.nix`. Especially your username and home path!
|
||||
3. Run this command to apply all the configurations for the first time `home-manager switch --flake .#nixos -b backup`. Make sure to be in the repo root. All your existing files will be backed up with `.backup` extension.
|
||||
|
||||
@@ -36,6 +36,11 @@
|
||||
# for git
|
||||
email = "szymon_jozef@proton.me";
|
||||
fullName = "Szymon P";
|
||||
# your public ssh key
|
||||
signingKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKxyiqawA95AlLjXGd99sQCVR2rDq2/D7PG/vz7sZv5G";
|
||||
|
||||
mainMonitor = "DP-1"; # only for some applications: you still need to set hyprland monitors yourself!
|
||||
statusBar = "ashell"; # available: ashell|waybar
|
||||
|
||||
pathConfig = {
|
||||
wallpaper = "Obrazy/tapety/catppuccin";
|
||||
|
||||
2
home.nix
2
home.nix
@@ -41,11 +41,13 @@
|
||||
./modules/cli/bat.nix
|
||||
./modules/cli/git.nix
|
||||
./modules/cli/fastfetch.nix
|
||||
./modules/cli/kdeconnect.nix
|
||||
# gui tools
|
||||
./modules/gui/kitty.nix
|
||||
./modules/gui/satty.nix
|
||||
./modules/gui/mako.nix
|
||||
./modules/gui/mangohud.nix
|
||||
./modules/gui/browsers.nix
|
||||
# status bars
|
||||
./modules/bars/ashell.nix
|
||||
./modules/bars/waybar.nix
|
||||
|
||||
@@ -1,4 +1,10 @@
|
||||
{ lib, isNixOS, ... }:
|
||||
{
|
||||
lib,
|
||||
isNixOS,
|
||||
userConfig,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
programs.ashell = {
|
||||
@@ -6,7 +12,7 @@
|
||||
package = lib.mkIf (!isNixOS) null;
|
||||
settings = {
|
||||
outputs = {
|
||||
Targets = [ "DP-1" ];
|
||||
Targets = [ userConfig.mainMonitor ];
|
||||
};
|
||||
position = "Bottom";
|
||||
modules = {
|
||||
@@ -21,12 +27,46 @@
|
||||
"MediaPlayer"
|
||||
"SystemInfo"
|
||||
[
|
||||
"CustomNotifications"
|
||||
"Tray"
|
||||
"Settings"
|
||||
]
|
||||
];
|
||||
};
|
||||
|
||||
CustomModule = [
|
||||
{
|
||||
name = "CustomNotifications";
|
||||
icon = "";
|
||||
command = "${pkgs.writeShellScript "dnd-toggle" ''
|
||||
if makoctl mode | grep -q do-not-disturb; then
|
||||
makoctl mode -r do-not-disturb > /dev/null
|
||||
else
|
||||
makoctl mode -a do-not-disturb > /dev/null
|
||||
fi
|
||||
pkill -USR1 -f dnd-check
|
||||
''}";
|
||||
listen_cmd = "${pkgs.writeShellScript "dnd-check" ''
|
||||
print_state() {
|
||||
if makoctl mode | grep -q do-not-disturb; then
|
||||
echo '{"alt":"dnd"}'
|
||||
else
|
||||
echo '{"alt":"none"}'
|
||||
fi
|
||||
}
|
||||
|
||||
trap print_state USR1
|
||||
|
||||
print_state
|
||||
|
||||
while true; do
|
||||
sleep infinity & wait $!
|
||||
done
|
||||
''}";
|
||||
icons.dnd = "";
|
||||
}
|
||||
];
|
||||
|
||||
clock = {
|
||||
format = "%H:%M | %e.%m ";
|
||||
};
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
pkgs,
|
||||
isNixOS,
|
||||
userConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
@@ -22,9 +23,7 @@
|
||||
reload_style_on_change = true;
|
||||
width = 70;
|
||||
output = [
|
||||
"DP-1"
|
||||
"eDP-1"
|
||||
"LVDS-1"
|
||||
userConfig.mainMonitor
|
||||
];
|
||||
|
||||
modules-left = [
|
||||
|
||||
@@ -18,12 +18,20 @@
|
||||
};
|
||||
init.defaultBranch = "master";
|
||||
push.autoSetupRemote = true;
|
||||
core.editor = "nvim";
|
||||
|
||||
gpg.ssh.allowedSignersFile = "~/.ssh/allowed_signers";
|
||||
|
||||
pull.rebase = false;
|
||||
|
||||
merge.tool = "nvimdiff";
|
||||
mergetool.prompt = false;
|
||||
mergetool.keepBackup = false;
|
||||
};
|
||||
|
||||
signing = {
|
||||
key = userConfig.email;
|
||||
key = userConfig.signingKey;
|
||||
signByDefault = true;
|
||||
format = "ssh";
|
||||
};
|
||||
|
||||
ignores = [
|
||||
@@ -37,6 +45,15 @@
|
||||
|
||||
};
|
||||
|
||||
programs.gh = {
|
||||
enable = true;
|
||||
settings.git_protocol = "ssh";
|
||||
};
|
||||
|
||||
home.file.".ssh/allowed_signers".text = ''
|
||||
${userConfig.email} ${userConfig.signingKey}
|
||||
'';
|
||||
|
||||
programs.delta = {
|
||||
enable = true;
|
||||
enableGitIntegration = true;
|
||||
|
||||
8
modules/cli/kdeconnect.nix
Normal file
8
modules/cli/kdeconnect.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
services.kdeconnect = {
|
||||
enable = true;
|
||||
indicator = true;
|
||||
};
|
||||
}
|
||||
8
modules/gui/browsers.nix
Normal file
8
modules/gui/browsers.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{ isNixOS, lib, ... }:
|
||||
|
||||
{
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
package = lib.mkIf (!isNixOS) null;
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,9 @@
|
||||
{ isNixOS, lib, ... }:
|
||||
{
|
||||
isNixOS,
|
||||
lib,
|
||||
userConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
@@ -140,8 +145,7 @@
|
||||
"exec-once" = [
|
||||
"wl-paste --type text --watch cliphist store"
|
||||
"wl-paste --type image --watch cliphist store"
|
||||
"uwsm app -- kdeconnect-indicator"
|
||||
"uwsm app -- ashell"
|
||||
"uwsm app -- ${userConfig.statusBar}"
|
||||
"swww-daemon"
|
||||
"openrgb -c $openrgb_color"
|
||||
];
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
identity = true;
|
||||
}
|
||||
{
|
||||
time = "21:00";
|
||||
time = "21:30";
|
||||
identity = false;
|
||||
temperature = 4500;
|
||||
gamma = 0.8;
|
||||
|
||||
Reference in New Issue
Block a user