Compare commits
77 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 59f4b37a2c | |||
| 2e7d8fef40 | |||
| e193f075e2 | |||
| 34400702a8 | |||
| 01ac3de3ff | |||
| 6b5d28d12b | |||
| dd9d2ec9d3 | |||
| bb04a5d1fd | |||
| 861afe8e83 | |||
| 45639b77cf | |||
| 82ca6c1bf1 | |||
| ae8b9fde5d | |||
| d2e772a986 | |||
| e981f03e03 | |||
| fd30f8d1fd | |||
| 5b89c099c9 | |||
| bda8f85445 | |||
| bfbd2d8abe | |||
| ced9937c09 | |||
| a187fb5ebf | |||
| 1b74cf48d0 | |||
| 87f2adb3c9 | |||
| 0cdbf3dc00 | |||
| 64237058a2 | |||
| 5ffe2fe09f | |||
| 407b909aab | |||
| c819cb6c01 | |||
| e1d99a0279 | |||
| 3a1ce68ccf | |||
| 2574f4935f | |||
| c6aafcbcca | |||
| d33af4042e | |||
| 6492901dda | |||
| 1c9fee8aca | |||
| 79963a171b | |||
| bfb74c0f6e | |||
| 01589d2fb7 | |||
| db7066bb35 | |||
| a7a6593e40 | |||
| 4d979ce197 | |||
| 0a5a621c99 | |||
| d557938f1d | |||
| 28c1409053 | |||
| a6b08c1a98 | |||
| 2232374d24 | |||
| 4ed41b1279 | |||
| 2ec8cd6aaa | |||
| 697be1193f | |||
| 82e38f7cd6 | |||
| 97f24c894b | |||
| cc179c30a3 | |||
| 0f4d658121 | |||
| 836c18359f | |||
| a155d3fba1 | |||
| a549fafc72 | |||
| 47e6fcf96f | |||
| 35ca5c8bc0 | |||
| 923dac6f63 | |||
| 9423554aa4 | |||
| d9fc308a51 | |||
| eef4be887a | |||
| 2576eacb6b | |||
| 9290d27146 | |||
| b93b0a6dd5 | |||
| 387cc54577 | |||
| 1598b620b9 | |||
| 2ec607e5c0 | |||
| 61f9633006 | |||
| f3859db703 | |||
| 867847a059 | |||
| 467f7d47f0 | |||
| 5d7d8e4b4f | |||
| 94f91e9a6d | |||
| 904529022f | |||
| 6f6145f1c0 | |||
| e209ddd352 | |||
| 0c8d4ae178 |
@@ -1 +0,0 @@
|
|||||||
hosts/desktop/hardware-configuration.nix
|
|
||||||
@@ -1,58 +1,6 @@
|
|||||||
# Sakamoto NixOS
|
# Getting Started
|
||||||
|
|
||||||
Sakamoto NixOS is built with various profiles intended for reproducibility.
|
`nixos-rebuild switch --flake LOCATION#HOST_NAME`
|
||||||
|
`home-manager switch --flake LOCATION#HOST_NAME`
|
||||||
|
|
||||||
## Available Hosts
|
Change `LOCATION` and `HOST_NAME`.
|
||||||
|
|
||||||
- MacBook M series
|
|
||||||
- Linux
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
1. Install [Nix](https://nixos.org/download/).
|
|
||||||
|
|
||||||
2. Ensure Nix is installed properly by running the following (this also gives you `nano` for editing later):
|
|
||||||
|
|
||||||
```sh
|
|
||||||
nix-shell -p nano
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Clone the git repository:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
git clone https://git.sakamoto.dev/kenji/nixos.git ~/.config/nixos && cd ~/.config/nixos/
|
|
||||||
```
|
|
||||||
|
|
||||||
4. Copy `info.default.nix` and rename it to `info.local.nix`:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
cp ~/.config/nixos/info.default.nix ~/.config/nixos/info.local.nix
|
|
||||||
```
|
|
||||||
|
|
||||||
🚨 **CRITICAL STEP:** Edit `info.local.nix`:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
nano ~/.config/nixos/info.local.nix
|
|
||||||
```
|
|
||||||
|
|
||||||
Modify it to fit your system — especially your **username**.
|
|
||||||
If you accidentally leave the default `biscuit`, that user will be created.
|
|
||||||
**Login password for `biscuit` is `Your-generic-password`.**
|
|
||||||
|
|
||||||
5. Execute the following command based on your host:
|
|
||||||
|
|
||||||
- **MacBook M series:**
|
|
||||||
|
|
||||||
```sh
|
|
||||||
sudo nix run nix-darwin --extra-experimental-features "nix-command flakes" -- switch --flake ~/.config/nixos#macos
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Linux:**
|
|
||||||
|
|
||||||
```sh
|
|
||||||
sudo nixos-rebuild --flake ~/.config/nixos#desktop --impure
|
|
||||||
sudo nix run home-manager -- init --switch
|
|
||||||
home-manager switch --flake ~/.config/nixos#desktop --impure
|
|
||||||
nix-channel --add https://nixos.org/channels/nixos-unstable nixos nix-channel --update
|
|
||||||
reboot
|
|
||||||
```
|
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 42 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.6 MiB |
Binary file not shown.
|
Before Width: | Height: | Size: 246 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 14 MiB |
-92
@@ -1,92 +0,0 @@
|
|||||||
{
|
|
||||||
myConfig = {
|
|
||||||
general = {
|
|
||||||
Hostname = "hakase";
|
|
||||||
Username = "kenji";
|
|
||||||
Timezone = "America/Chicago";
|
|
||||||
|
|
||||||
allowUnfree = true; # allows installation of commercial apps.
|
|
||||||
|
|
||||||
terminal = {
|
|
||||||
Font = "JetBrainsMono Nerd Font"; # e.g., JetBrainsMono Nerd Font
|
|
||||||
Size = "18";
|
|
||||||
Shell = "fish";
|
|
||||||
Aliases = {
|
|
||||||
ls = "ls --color=auto";
|
|
||||||
update = ''
|
|
||||||
sh -c '
|
|
||||||
if [ "$(uname)" = "Darwin" ]; then
|
|
||||||
sudo darwin-rebuild switch --flake ~/.config/nixos#macos
|
|
||||||
else
|
|
||||||
sudo nixos-rebuild switch --flake ~/.config/nixos#desktop && home-manager switch --flake ~/.config/nixos#desktop
|
|
||||||
fi
|
|
||||||
'
|
|
||||||
'';
|
|
||||||
agu = "pkill gjs & ags run ~/.config/nixos/packages/ags/biscuit/app.ts & disown (jobs -p) &";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
gitProfile = {
|
|
||||||
User = "kenji";
|
|
||||||
Email = "kenji@sakamoto.dev";
|
|
||||||
defaultBranch = "master";
|
|
||||||
};
|
|
||||||
ssh = {
|
|
||||||
extraConfig = ''
|
|
||||||
Host gitea.sakamoto.dev
|
|
||||||
User kenji
|
|
||||||
ProxyCommand cloudflared access ssh --hostname %h
|
|
||||||
HostName gitea.sakamoto.dev
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
builds = {
|
|
||||||
builder = {
|
|
||||||
trustedUsers = [
|
|
||||||
"@groups"
|
|
||||||
"biscuit"
|
|
||||||
];
|
|
||||||
buildMachines = [
|
|
||||||
{
|
|
||||||
hostName = "192.168.68.81";
|
|
||||||
sshUser = "biscuit";
|
|
||||||
sshKey = "/home/biscuit/.ssh/id_rsa.pub";
|
|
||||||
system = "x86_64-linux";
|
|
||||||
supportedFeatures = ["big-parallel" "kvm" "nixos-test"];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
linux = {
|
|
||||||
system = "x86_64";
|
|
||||||
gaming = true;
|
|
||||||
|
|
||||||
vpn = {
|
|
||||||
Enable = false;
|
|
||||||
secretFile = builtins.toPath ./secrets/.vpn.yaml;
|
|
||||||
};
|
|
||||||
|
|
||||||
touchpadSupport = false;
|
|
||||||
logitech-hardware.enable = true;
|
|
||||||
|
|
||||||
# Custom Applications
|
|
||||||
apps = {
|
|
||||||
gaming = true;
|
|
||||||
apps = pkgs:
|
|
||||||
with pkgs; [
|
|
||||||
jellyfin-media-player
|
|
||||||
];
|
|
||||||
};
|
|
||||||
hyprconf = {
|
|
||||||
Monitor = [
|
|
||||||
# hyprctl monitors all
|
|
||||||
# monitor, resolution@refreshrate, position (e.g., 0x0 is middle, 0x1080 is top), scale
|
|
||||||
"DP-1,highres@165,0x1080,auto"
|
|
||||||
"DP-2,highres@highrr,0x0,auto"
|
|
||||||
"HDMI-A-1, preferred, 20000x20000,1"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Generated
+85
-600
@@ -21,6 +21,28 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"ags_2": {
|
||||||
|
"inputs": {
|
||||||
|
"astal": "astal_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprpanel",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1736090999,
|
||||||
|
"narHash": "sha256-B5CJuHqfJrzPa7tObK0H9669/EClSHpa/P7B9EuvElU=",
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "ags",
|
||||||
|
"rev": "5527c3c07d92c11e04e7fd99d58429493dba7e3c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "ags",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"aquamarine": {
|
"aquamarine": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprutils": [
|
"hyprutils": [
|
||||||
@@ -41,11 +63,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747864449,
|
"lastModified": 1745357003,
|
||||||
"narHash": "sha256-PIjVAWghZhr3L0EFM2UObhX84UQxIACbON0IC0zzSKA=",
|
"narHash": "sha256-jYwzQkv1r7HN/4qrAuKp+NR4YYNp2xDrOX5O9YVqkWo=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "389372c5f4dc1ac0e7645ed29a35fd6d71672ef5",
|
"rev": "a19cf76ee1a15c1c12083fa372747ce46387289f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -75,45 +97,45 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"darwin": {
|
"astal_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749194393,
|
"lastModified": 1747093850,
|
||||||
"narHash": "sha256-vt6hM9DNywnXXuW1qPDLzECmbDcmxhh58wpb0EEQjAo=",
|
"narHash": "sha256-SaHAtzUyfm4urAcUEZlBFn7dWhoDqA6kaeFZ11CCTf8=",
|
||||||
"owner": "lnl7",
|
"owner": "aylur",
|
||||||
"repo": "nix-darwin",
|
"repo": "astal",
|
||||||
"rev": "19346808c445f23b08652971be198b9df6c33edc",
|
"rev": "4820a3e37cc8eb81db6ed991528fb23472a8e4de",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "lnl7",
|
"owner": "aylur",
|
||||||
"repo": "nix-darwin",
|
"repo": "astal",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"devshell": {
|
"astal_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixovim",
|
"hyprpanel",
|
||||||
"nixvim",
|
"ags",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735644329,
|
"lastModified": 1735172721,
|
||||||
"narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=",
|
"narHash": "sha256-rtEAwGsHSppnkR3Qg3eRJ6Xh/F84IY9CrBBLzYabalY=",
|
||||||
"owner": "numtide",
|
"owner": "aylur",
|
||||||
"repo": "devshell",
|
"repo": "astal",
|
||||||
"rev": "f7795ede5b02664b57035b3b757876703e2c3eac",
|
"rev": "6c84b64efc736e039a8a10774a4a1bf772c37aa2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "aylur",
|
||||||
"repo": "devshell",
|
"repo": "astal",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -133,142 +155,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1733328505,
|
|
||||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
|
||||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
|
||||||
"revCount": 69,
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1749398372,
|
|
||||||
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": "nixpkgs-lib_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738453229,
|
|
||||||
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts_3": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738453229,
|
|
||||||
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_3"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731533236,
|
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_2": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_4"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731533236,
|
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"git-hooks": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"flake-compat"
|
|
||||||
],
|
|
||||||
"gitignore": "gitignore_2",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1737465171,
|
|
||||||
"narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "git-hooks.nix",
|
|
||||||
"rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "git-hooks.nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gitignore": {
|
"gitignore": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -291,29 +177,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"gitignore_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"git-hooks",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1709087332,
|
|
||||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "gitignore.nix",
|
|
||||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "gitignore.nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -321,33 +184,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748979197,
|
"lastModified": 1747106332,
|
||||||
"narHash": "sha256-mKYwYcO9RmA2AcAFIXGDBOw5iv/fbjw6adWvMbnfIuk=",
|
"narHash": "sha256-mOdRWJzJAMp0hF8aSResyp8BeOO5VoSng1uqtEq+8xI=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "34a13086148cbb3ae65a79f753eb451ce5cac3d3",
|
"rev": "535a541b429c1e89f0955c160df1d6d2bfeaf802",
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738878603,
|
|
||||||
"narHash": "sha256-fmhq8B3MvQLawLbMO+LWLcdC2ftLMmwSk+P29icJ3tE=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "433799271274c9f2ab520a49527ebfe2992dcfbd",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -432,11 +273,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749049255,
|
"lastModified": 1747052147,
|
||||||
"narHash": "sha256-QXg2B/bF/f9IeSiZwJuhdnz2xcnpu/hDfz4eIHWVhz8=",
|
"narHash": "sha256-c0e3V7Rqu2DZuix1lRBXedInzSskow8ssQSsmqkW38o=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "d7a87ce6e2535f1029fc93b062d2828e8549c525",
|
"rev": "da3583fd5e86044d02af9fcfac84724e02545336",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -554,11 +395,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747484975,
|
"lastModified": 1746655412,
|
||||||
"narHash": "sha256-+LAQ81HBwG0lwshHlWe0kfWg4KcChIPpnwtnwqmnoEU=",
|
"narHash": "sha256-kVQ0bHVtX6baYxRWWIh4u3LNJZb9Zcm2xBeDPOGz5BY=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "163c83b3db48a17c113729c220a60b94596c9291",
|
"rev": "557241780c179cf7ef224df392f8e67dab6cef83",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -567,6 +408,27 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprpanel": {
|
||||||
|
"inputs": {
|
||||||
|
"ags": "ags_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1747029715,
|
||||||
|
"narHash": "sha256-F75IlhzUF+VTPOq+u2Exj+6PjHWPkLcBWDnhO+Vvch4=",
|
||||||
|
"owner": "Jas-SinghFSU",
|
||||||
|
"repo": "Hyprpanel",
|
||||||
|
"rev": "2bb1449fb6ad60a736ce6fb4de2037d7655545ed",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Jas-SinghFSU",
|
||||||
|
"repo": "Hyprpanel",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hyprutils": {
|
"hyprutils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -604,11 +466,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747584298,
|
"lastModified": 1739870480,
|
||||||
"narHash": "sha256-PH9qZqWLHvSBQiUnA0NzAyQA3tu2no2z8kz0ZeHWj4w=",
|
"narHash": "sha256-SiDN5BGxa/1hAsqhgJsS03C3t2QrLgBT8u+ENJ0Qzwc=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwayland-scanner",
|
"repo": "hyprwayland-scanner",
|
||||||
"rev": "e511882b9c2e1d7a75d45d8fddd2160daeafcbc3",
|
"rev": "206367a08dc5ac4ba7ad31bdca391d098082e64b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -617,189 +479,13 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ixx": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nuschtosSearch",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nuschtosSearch",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1729958008,
|
|
||||||
"narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=",
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"repo": "ixx",
|
|
||||||
"rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"ref": "v0.0.6",
|
|
||||||
"repo": "ixx",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"matugen": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"systems": "systems_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1745334376,
|
|
||||||
"narHash": "sha256-GZAesQW51EwCEB9w5caxgi87LiAMhVfP6GqZmet9VZc=",
|
|
||||||
"owner": "InioX",
|
|
||||||
"repo": "Matugen",
|
|
||||||
"rev": "4619cca93513470dc2a1833d9a138297cbccaf2e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "InioX",
|
|
||||||
"repo": "Matugen",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nix-darwin": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738743987,
|
|
||||||
"narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=",
|
|
||||||
"owner": "lnl7",
|
|
||||||
"repo": "nix-darwin",
|
|
||||||
"rev": "ae406c04577ff9a64087018c79b4fdc02468c87c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "lnl7",
|
|
||||||
"repo": "nix-darwin",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nix-gaming": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": "flake-parts",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1751075759,
|
|
||||||
"narHash": "sha256-MNAlH/IlSkg5ODfLEgYuDvs4XrM8n3Ukmh6OqQxoJ6s=",
|
|
||||||
"owner": "fufexan",
|
|
||||||
"repo": "nix-gaming",
|
|
||||||
"rev": "622e26d86942642483e1a49d4f0dea2cbb80e6c1",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "fufexan",
|
|
||||||
"repo": "nix-gaming",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixovim": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": "flake-parts_2",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nixvim": "nixvim",
|
|
||||||
"rust-overlay": "rust-overlay"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1749068064,
|
|
||||||
"narHash": "sha256-pxszYA1LsrW89Z++jMshDqRpNx99QcvfpFIK5mdmneA=",
|
|
||||||
"ref": "refs/heads/master",
|
|
||||||
"rev": "be2e51f4ddec2389d282280871ca484f3f1f0892",
|
|
||||||
"revCount": 60,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.sakamoto.dev/kenji/nixovim.git"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.sakamoto.dev/kenji/nixovim.git"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1738797219,
|
"lastModified": 1746904237,
|
||||||
"narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=",
|
"narHash": "sha256-3e+AVBczosP5dCLQmMoMEogM57gmZ2qrVSrmq9aResQ=",
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "1da52dd49a127ad74486b135898da2cef8c62665",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-lib": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1748740939,
|
|
||||||
"narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"rev": "656a64127e9d791a334452c6b6606d17539476e2",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-lib_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738452942,
|
|
||||||
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1736320768,
|
|
||||||
"narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "4bc9c909d9ac828a039f288cf872d16d38185db8",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1748693115,
|
|
||||||
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
|
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
|
"rev": "d89fc19e405cb2d55ce7cc114356846a0ee5e956",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -809,56 +495,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixvim": {
|
|
||||||
"inputs": {
|
|
||||||
"devshell": "devshell",
|
|
||||||
"flake-compat": "flake-compat_2",
|
|
||||||
"flake-parts": "flake-parts_3",
|
|
||||||
"git-hooks": "git-hooks",
|
|
||||||
"home-manager": "home-manager_2",
|
|
||||||
"nix-darwin": "nix-darwin",
|
|
||||||
"nixpkgs": "nixpkgs",
|
|
||||||
"nuschtosSearch": "nuschtosSearch",
|
|
||||||
"treefmt-nix": "treefmt-nix"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1739353096,
|
|
||||||
"narHash": "sha256-w/T2uYCoq4k6K46GX2CMGWsKfMvcqnxC41LIgnvGifE=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixvim",
|
|
||||||
"rev": "78b6f8e1e5b37a7789216e17a96ebc117660f0e7",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixvim",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nuschtosSearch": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"ixx": "ixx",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738508923,
|
|
||||||
"narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=",
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"repo": "search",
|
|
||||||
"rev": "86e2038290859006e05ca7201425ea5b5de4aecb",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"repo": "search",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
@@ -869,11 +505,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747372754,
|
"lastModified": 1746537231,
|
||||||
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=",
|
"narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46",
|
"rev": "fa466640195d38ec97cf0493d6d6882bc4d14969",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -882,77 +518,14 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"quickshell": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1751354716,
|
|
||||||
"narHash": "sha256-bLMNn3gh09gtkIEwZW3USt4ehLrmwmfnb3rqahYBI+4=",
|
|
||||||
"ref": "refs/heads/master",
|
|
||||||
"rev": "f681e2016fd71b42985bd520b3a20c62488582e9",
|
|
||||||
"revCount": 599,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"ags": "ags",
|
"ags": "ags",
|
||||||
"darwin": "darwin",
|
"astal": "astal_2",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"matugen": "matugen",
|
"hyprpanel": "hyprpanel",
|
||||||
"nix-gaming": "nix-gaming",
|
"nixpkgs": "nixpkgs"
|
||||||
"nixovim": "nixovim",
|
|
||||||
"nixpkgs": "nixpkgs_3",
|
|
||||||
"quickshell": "quickshell",
|
|
||||||
"sops-nix": "sops-nix",
|
|
||||||
"unlisted-fonts": "unlisted-fonts"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1739327257,
|
|
||||||
"narHash": "sha256-rlGK8wxz/e50Z+PQRzuP+m03IrGkhcPGmgkBnkEZ9C8=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "e01f2c035b7b8a428c119b183f4cbc55f2eef07c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"sops-nix": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1750119275,
|
|
||||||
"narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=",
|
|
||||||
"owner": "Mic92",
|
|
||||||
"repo": "sops-nix",
|
|
||||||
"rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "Mic92",
|
|
||||||
"repo": "sops-nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
@@ -970,94 +543,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1689347949,
|
|
||||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_4": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"treefmt-nix": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixovim",
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1738680491,
|
|
||||||
"narHash": "sha256-8X7tR3kFGkE7WEF5EXVkt4apgaN85oHZdoTGutCFs6I=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "treefmt-nix",
|
|
||||||
"rev": "64dbb922d51a42c0ced6a7668ca008dded61c483",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "treefmt-nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"unlisted-fonts": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils_2",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1748987994,
|
|
||||||
"narHash": "sha256-13QQRwZx9tRDmL79+XBM1YaC4W68mVrVW2NCv2w25WA=",
|
|
||||||
"ref": "refs/heads/master",
|
|
||||||
"rev": "468d51f24d3dd22c543e657c359fb333ff4df726",
|
|
||||||
"revCount": 1,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.sakamoto.dev/kenji/nix-fonts.git"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.sakamoto.dev/kenji/nix-fonts.git"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xdph": {
|
"xdph": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland-protocols": [
|
"hyprland-protocols": [
|
||||||
|
|||||||
@@ -1,116 +1,101 @@
|
|||||||
{
|
{
|
||||||
description = "Sakamoto's NixOS Configuration";
|
description = "A very basic flake";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
home-manager.url = "github:nix-community/home-manager";
|
home-manager.url = "github:nix-community/home-manager";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs"; # `follows` ensure it follows nixpkgs versiona. Avoids breaking updates.
|
home-manager.inputs.nixpkgs.follows = "nixpkgs"; # ensures version follows nixpkgs
|
||||||
darwin.url = "github:lnl7/nix-darwin";
|
|
||||||
darwin.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
|
|
||||||
ags.url = "github:aylur/ags";
|
|
||||||
ags.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
|
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
hyprland.inputs.nixpkgs.follows = "nixpkgs";
|
hyprland.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
unlisted-fonts.url = "git+https://git.sakamoto.dev/kenji/nix-fonts.git";
|
astal.url = "github:aylur/astal";
|
||||||
unlisted-fonts.inputs.nixpkgs.follows = "nixpkgs";
|
astal.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
nixovim.url = "git+https://git.sakamoto.dev/kenji/nixovim.git";
|
ags.url = "github:aylur/ags";
|
||||||
nixovim.inputs.nixpkgs.follows = "nixpkgs";
|
ags.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
matugen.url = "github:/InioX/Matugen";
|
hyprpanel.url = "github:Jas-SinghFSU/Hyprpanel";
|
||||||
matugen.inputs.nixpkgs.follows = "nixpkgs";
|
hyprpanel.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
nix-gaming.url = "github:fufexan/nix-gaming";
|
|
||||||
nix-gaming.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
|
|
||||||
sops-nix.url = "github:Mic92/sops-nix";
|
|
||||||
sops-nix.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
|
|
||||||
quickshell.url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
|
||||||
quickshell.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {
|
outputs = {
|
||||||
self,
|
self,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
home-manager,
|
home-manager,
|
||||||
darwin,
|
|
||||||
ags,
|
ags,
|
||||||
hyprland,
|
astal,
|
||||||
unlisted-fonts,
|
hyprpanel,
|
||||||
nixovim,
|
|
||||||
...
|
...
|
||||||
} @ inputs: let
|
} @ inputs: let
|
||||||
config = import ./config.nix;
|
|
||||||
lib = nixpkgs.lib;
|
lib = nixpkgs.lib;
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
# pkgs = nixpkgs.legacyPackages.${system}; # alternative, without overlays. Unused.
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
args =
|
|
||||||
{
|
|
||||||
inherit inputs system;
|
|
||||||
}
|
|
||||||
// config;
|
|
||||||
in {
|
in {
|
||||||
# nixosConfiguration for linux system
|
# TODO: migrate to another nix file.
|
||||||
|
# packages.${system}.default = pkgs.stdenv.mkDerivation {
|
||||||
|
# pname = "marble";
|
||||||
|
# src = ./marble;
|
||||||
|
# dontUnpack = true;
|
||||||
|
#
|
||||||
|
# nativeBuildInputs = with pkgs; [
|
||||||
|
# wrapGAppsHook
|
||||||
|
# gobject-introspection
|
||||||
|
# ];
|
||||||
|
#
|
||||||
|
# buildInputs =
|
||||||
|
# (with astal.packages.${system}; [
|
||||||
|
# astal3
|
||||||
|
# io
|
||||||
|
# apps
|
||||||
|
# battery
|
||||||
|
# bluetooth
|
||||||
|
# hyprland
|
||||||
|
# mpris
|
||||||
|
# network
|
||||||
|
# notifd
|
||||||
|
# powerprofiles
|
||||||
|
# tray
|
||||||
|
# wireplumber
|
||||||
|
# ])
|
||||||
|
# ++ (with pkgs; [
|
||||||
|
# gjs
|
||||||
|
# ]);
|
||||||
|
#
|
||||||
|
# preFixup = ''
|
||||||
|
# gappsWrapperArgs+=(
|
||||||
|
# --prefix PATH : ${with pkgs;
|
||||||
|
# lib.makeBinPath [
|
||||||
|
# dart-sass
|
||||||
|
# fzf
|
||||||
|
# ]}
|
||||||
|
# )
|
||||||
|
# '';
|
||||||
|
#
|
||||||
|
# installPhase = ''
|
||||||
|
# mkdir -p $out/bin
|
||||||
|
# install $src $out/bin/marble
|
||||||
|
# '';
|
||||||
|
# }; # END TODO
|
||||||
|
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
desktop = lib.nixosSystem {
|
biscuit = lib.nixosSystem {
|
||||||
|
specialArgs = {inherit inputs system;};
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = args;
|
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/desktop/configuration.nix
|
./nixos/configuration.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
homeConfigurations = {
|
homeConfigurations = {
|
||||||
desktop = home-manager.lib.homeManagerConfiguration {
|
biscuit = home-manager.lib.homeManagerConfiguration {
|
||||||
pkgs = import nixpkgs {
|
pkgs = import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
overlays = [
|
overlays = [inputs.hyprpanel.overlay];
|
||||||
# (final: prev: {
|
|
||||||
# ags_1 = prev.ags_1.overrideAttrs (old: {
|
|
||||||
# buildInputs = old.buildInputs ++ [pkgs.libdbusmenu-gtk3];
|
|
||||||
# });
|
|
||||||
# })
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
extraSpecialArgs = args;
|
# inherit pkgs;
|
||||||
modules = [./home/desktop.nix];
|
extraSpecialArgs = {inherit inputs system;};
|
||||||
};
|
modules = [./home-manager/home.nix];
|
||||||
|
|
||||||
gaming = home-manager.lib.homeManagerConfiguration {
|
|
||||||
pkgs = import nixpkgs {
|
|
||||||
inherit system;
|
|
||||||
overlays = [];
|
|
||||||
};
|
|
||||||
extraSpecialArgs = args;
|
|
||||||
modules = [./home/gaming.nix];
|
|
||||||
};
|
|
||||||
headless = home-manager.lib.homeManagerConfiguration {
|
|
||||||
pkgs = import nixpkgs {
|
|
||||||
inherit system;
|
|
||||||
overlays = [];
|
|
||||||
};
|
|
||||||
extraSpecialArgs = args;
|
|
||||||
modules = [./home/headless.nix];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# darwinConfiguration for macOS M series
|
|
||||||
darwinConfigurations = {
|
|
||||||
macos = darwin.lib.darwinSystem {
|
|
||||||
system = "aarch64-darwin";
|
|
||||||
specialArgs = args;
|
|
||||||
modules = [
|
|
||||||
./hosts/macos/darwin.nix
|
|
||||||
home-manager.darwinModules.home-manager
|
|
||||||
{
|
|
||||||
home-manager.useGlobalPkgs = true;
|
|
||||||
home-manager.useUserPackages = true;
|
|
||||||
home-manager.extraSpecialArgs = args;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
inputs, outputs, lib, config, pkgs, ...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
../modules/editor.nix
|
||||||
|
../modules/terminal.nix
|
||||||
|
../modules/wayland.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = "biscuit";
|
||||||
|
homeDirectory = "/home/biscuit";
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = [];
|
||||||
|
home.sessionVariables = {};
|
||||||
|
|
||||||
|
programs.git.enable = true;
|
||||||
|
programs.neovim.enable = true;
|
||||||
|
|
||||||
|
systemd.user.startServices = "sd-switch";
|
||||||
|
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
home.stateVersion = "23.05";
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
myConfig,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
../modules/terminal.nix
|
|
||||||
../modules/desktop.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
|
|
||||||
home = {
|
|
||||||
username = "${myConfig.general.Username}";
|
|
||||||
homeDirectory = "/home/${myConfig.general.Username}";
|
|
||||||
packages = [];
|
|
||||||
sessionVariables = {};
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.user.startServices = "sd-switch";
|
|
||||||
home.stateVersion = "23.05";
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
../modules/terminal.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
|
|
||||||
home.packages = [];
|
|
||||||
home.stateVersion = "23.05";
|
|
||||||
}
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
myConfig,
|
|
||||||
inputs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports =
|
|
||||||
[
|
|
||||||
inputs.sops-nix.nixosModules.sops
|
|
||||||
./hardware-configuration.nix
|
|
||||||
../../modules/linuxDev.nix
|
|
||||||
../../modules/system.nix
|
|
||||||
../../modules/de.nix
|
|
||||||
]
|
|
||||||
++ lib.optionals (myConfig.linux.apps.gaming == true) [
|
|
||||||
../../modules/gaming.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.systemPackages = [];
|
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
|
|
||||||
nix.settings = {
|
|
||||||
trusted-users = myConfig.builds.builder.trustedUsers;
|
|
||||||
experimental-features = ["nix-command" "flakes"];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.ssh.extraConfig = myConfig.general.ssh.extraConfig;
|
|
||||||
|
|
||||||
nix.distributedBuilds = true;
|
|
||||||
nix.settings.builders-use-substitutes = true;
|
|
||||||
|
|
||||||
# nix.buildMachines = builder.buildMachines;
|
|
||||||
system.stateVersion = "25.05";
|
|
||||||
}
|
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
myConfig,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
../../modules/macosDev.nix
|
|
||||||
inputs.sops-nix.darwinModules.sops
|
|
||||||
];
|
|
||||||
# List packages installed in system profile. To search by name, run:
|
|
||||||
# $ nix-env -qaP | grep wget
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
];
|
|
||||||
|
|
||||||
# Auto upgrade nix package and the daemon service.
|
|
||||||
# services.nix-daemon.enable = true;
|
|
||||||
# services.karabiner-elements.enable = true;
|
|
||||||
# nix.package = pkgs.nix;
|
|
||||||
|
|
||||||
# Necessary for using flakes on this system.
|
|
||||||
nix.settings.experimental-features = "nix-command flakes";
|
|
||||||
nix.settings.trusted-users = myConfig.builds.builder.trustedUsers;
|
|
||||||
|
|
||||||
# Create /etc/zshrc that loads the nix-darwin environment.
|
|
||||||
programs.zsh.enable = true; # default shell on catalina
|
|
||||||
programs.fish.enable = true;
|
|
||||||
|
|
||||||
# $ darwin-rebuild changelog
|
|
||||||
system.stateVersion = 5;
|
|
||||||
|
|
||||||
# The platform the configuration will be used on.
|
|
||||||
nixpkgs.hostPlatform = "aarch64-darwin";
|
|
||||||
security.pam.services.sudo_local.touchIdAuth = true;
|
|
||||||
|
|
||||||
users.users.${myConfig.general.Username} = {
|
|
||||||
name = "${myConfig.general.Username}";
|
|
||||||
home = "/Users/${myConfig.general.Username}";
|
|
||||||
# shell = pkgs.${myConfig.general.terminal.Shell}; # no support for nix-darwin, but can be changed via chsh.
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.users.${myConfig.general.Username} = import ../../home/macos.nix;
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
myConfig,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports =
|
|
||||||
[
|
|
||||||
../system/font.nix
|
|
||||||
../system/browser.nix
|
|
||||||
../system/wayland.nix
|
|
||||||
../system/graphics.nix
|
|
||||||
../system/security.nix
|
|
||||||
|
|
||||||
# FIXME
|
|
||||||
../system/amd.nix
|
|
||||||
]
|
|
||||||
++ lib.optionals (myConfig.linux.gaming == true) [
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
myConfig,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports =
|
|
||||||
[
|
|
||||||
../packages/hyprland/default.nix
|
|
||||||
../packages/hypridle/default.nix
|
|
||||||
../packages/hyprlock/default.nix
|
|
||||||
../packages/rofi/default.nix
|
|
||||||
../packages/matugen/default.nix
|
|
||||||
../packages/swww/default.nix
|
|
||||||
../packages/quickshell/default.nix
|
|
||||||
../packages/ags/default.nix
|
|
||||||
]
|
|
||||||
++ lib.optionals (myConfig.linux.gaming == true) [
|
|
||||||
../packages/mangohud/default.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
|
||||||
|
{ ... }: {
|
||||||
|
imports = [
|
||||||
|
../packages/nvim/default.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
imports = [
|
|
||||||
../system/stream.nix
|
|
||||||
../system/gaming.nix
|
|
||||||
../system/appimage.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
../system/dev/tools.nix
|
|
||||||
../system/dev/python.nix
|
|
||||||
../system/dev/linux.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
../system/dev/tools.nix
|
|
||||||
../system/dev/python.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
+8
-10
@@ -1,13 +1,11 @@
|
|||||||
{...}: {
|
{ ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
../system/users.nix
|
../system/firefox/default.nix
|
||||||
../system/hardware.nix
|
../system/astal/default.nix
|
||||||
../system/locale.nix
|
../system/hyprland/default.nix
|
||||||
../system/network.nix
|
../system/fonts/default.nix
|
||||||
../system/programs.nix
|
../system/cursor/default.nix
|
||||||
../system/services.nix
|
../system/development/default.nix
|
||||||
../system/tty.nix
|
../system/theme/default.nix
|
||||||
../system/firewall.nix
|
|
||||||
../system/boot.nix
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,7 @@
|
|||||||
{...}: {
|
{ pkgs, ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
../packages/git/default.nix
|
|
||||||
../packages/fish/default.nix
|
|
||||||
../packages/kitty/default.nix
|
|
||||||
../packages/neovim/default.nix
|
|
||||||
../packages/starship/default.nix
|
|
||||||
../packages/fastfetch/default.nix
|
|
||||||
../packages/zsh/default.nix
|
../packages/zsh/default.nix
|
||||||
|
../packages/kitty/default.nix
|
||||||
|
../packages/fastfetch/default.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
|
||||||
|
{ ... }: {
|
||||||
|
imports = [
|
||||||
|
../packages/hyprland/default.nix
|
||||||
|
../packages/waybar/default.nix
|
||||||
|
../packages/ags/default.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,105 @@
|
|||||||
|
{ config, pkgs, inputs, ... }: {
|
||||||
|
imports =
|
||||||
|
[ # Include the results of the hardware scan.
|
||||||
|
./hardware-configuration.nix
|
||||||
|
../modules/system.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# Bootloader.
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
networking.hostName = "nixos"; # Define your hostname.
|
||||||
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||||
|
|
||||||
|
# Enable networking
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
# Enable bluetooth
|
||||||
|
hardware.bluetooth.enable = true;
|
||||||
|
services.blueman.enable = true;
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "America/Chicago";
|
||||||
|
|
||||||
|
# Select internationalisation properties.
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
|
i18n.extraLocaleSettings = {
|
||||||
|
LC_ADDRESS = "en_US.UTF-8";
|
||||||
|
LC_IDENTIFICATION = "en_US.UTF-8";
|
||||||
|
LC_MEASUREMENT = "en_US.UTF-8";
|
||||||
|
LC_MONETARY = "en_US.UTF-8";
|
||||||
|
LC_NAME = "en_US.UTF-8";
|
||||||
|
LC_NUMERIC = "en_US.UTF-8";
|
||||||
|
LC_PAPER = "en_US.UTF-8";
|
||||||
|
LC_TELEPHONE = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Configure keymap in X11
|
||||||
|
services.xserver.xkb = {
|
||||||
|
layout = "us";
|
||||||
|
variant = "";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
|
users = {
|
||||||
|
defaultUserShell = pkgs.bash;
|
||||||
|
users.biscuit = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "Biscuit";
|
||||||
|
extraGroups = [ "networkmanager" "wheel" ];
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
packages = with pkgs; [];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# List packages installed in system profile.
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
wl-clipboard
|
||||||
|
vim # Default editor
|
||||||
|
wget
|
||||||
|
git
|
||||||
|
home-manager
|
||||||
|
zsh
|
||||||
|
p7zip
|
||||||
|
btop
|
||||||
|
libnotify
|
||||||
|
astal.apps
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.sessionVariables = {
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable the OpenSSH daemon.
|
||||||
|
services.openssh.enable = true;
|
||||||
|
|
||||||
|
# Enable non-bash shell
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
|
||||||
|
### ----------------------------------------
|
||||||
|
### DESKTOP START
|
||||||
|
services.xserver.displayManager.gdm.enable = true;
|
||||||
|
hardware = {
|
||||||
|
# pulseaudio.enable = true;
|
||||||
|
graphics.enable = true;
|
||||||
|
nvidia.modesetting.enable = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
### DESKTOP END
|
||||||
|
### ----------------------------------------
|
||||||
|
|
||||||
|
# Enable experimental features
|
||||||
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
#nixpkgs = {
|
||||||
|
# overlays = [
|
||||||
|
# (final: prev: {
|
||||||
|
# nvchad = inputs.nvchad4nix.packages.${pkgs.system}.nvchad;
|
||||||
|
#})
|
||||||
|
#];
|
||||||
|
#};
|
||||||
|
# System state version
|
||||||
|
system.stateVersion = "24.11"; # Ensure this matches your NixOS version
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/8552e23a-af9f-4af8-947f-9ea6ff1e7195";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/00BB-80E9";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0077" "dmask=0077" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices =
|
||||||
|
[ { device = "/dev/disk/by-uuid/2a916b88-8039-481b-9c30-4edd0f329eb3"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
$background: #131318;
|
|
||||||
$foreground: #e4e1e9;
|
|
||||||
$primary: #bec2ff;
|
|
||||||
@@ -9,9 +9,5 @@ App.start({
|
|||||||
print(request)
|
print(request)
|
||||||
res("ok")
|
res("ok")
|
||||||
},
|
},
|
||||||
main: () => {
|
main: () => App.get_monitors().map(Bar),
|
||||||
const monitors = App.get_monitors()
|
|
||||||
const primary = monitors.find(m => m.primary) || monitors[0]
|
|
||||||
return Bar(primary)
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
@@ -1,27 +1,8 @@
|
|||||||
@use "sass:color";
|
@use "sass:color";
|
||||||
@use "./colors" as *;
|
|
||||||
|
|
||||||
// default
|
$bg: #212223;
|
||||||
// $bg: #212223;
|
$fg: #f1f1f1;
|
||||||
// $fg: #f1f1f1;
|
$accent: #378DF7;
|
||||||
// $accent: #378DF7;
|
|
||||||
// $radius: 7px;
|
|
||||||
|
|
||||||
// Kanagawa Theme
|
|
||||||
// $bg: #1F1F28;
|
|
||||||
// $fg: #DCD7BA;
|
|
||||||
// $accent: #C0A36E;
|
|
||||||
// $radius: 7px;
|
|
||||||
|
|
||||||
// mstcl
|
|
||||||
// $bg: #121212;
|
|
||||||
// $fg: #f1f1f1;
|
|
||||||
// $accent: #C0A36E;
|
|
||||||
// $radius: 7px;
|
|
||||||
|
|
||||||
$bg: $background;
|
|
||||||
$fg: $foreground;
|
|
||||||
$accent: $primary;
|
|
||||||
$radius: 7px;
|
$radius: 7px;
|
||||||
|
|
||||||
window.Bar {
|
window.Bar {
|
||||||
@@ -31,7 +12,6 @@ window.Bar {
|
|||||||
color: $fg;
|
color: $fg;
|
||||||
font-size: 1.1em;
|
font-size: 1.1em;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
font-family: "JetBrainsMono Nerd Font";
|
|
||||||
|
|
||||||
label {
|
label {
|
||||||
margin: 0 8px;
|
margin: 0 8px;
|
||||||
@@ -74,24 +54,8 @@ window.Bar {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.Time {
|
|
||||||
.TimeHM {
|
|
||||||
font-weight: bold;
|
|
||||||
color: $accent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.TimeDate {
|
|
||||||
// color: color.adjust($fg, $lightness: -10%);
|
|
||||||
color: $fg;
|
|
||||||
opacity: 0.85;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.FocusedClient {
|
.FocusedClient {
|
||||||
color: color.adjust($fg, $lightness: -30%);
|
color: $accent;
|
||||||
opacity: 0.7;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.Media .Cover {
|
.Media .Cover {
|
||||||
@@ -124,42 +124,27 @@ function Workspaces() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function FocusedClient() {
|
function FocusedClient() {
|
||||||
const hypr = Hyprland.get_default();
|
const hypr = Hyprland.get_default()
|
||||||
const focused = bind(hypr, "focusedClient");
|
const focused = bind(hypr, "focusedClient")
|
||||||
|
|
||||||
return (
|
return <box
|
||||||
<box className="FocusedClient" visible={focused.as(Boolean)}>
|
className="Focused"
|
||||||
{focused.as(client => {
|
visible={focused.as(Boolean)}>
|
||||||
if (!client) return null;
|
{focused.as(client => (
|
||||||
|
client && <label label={bind(client, "title").as(String)} />
|
||||||
return (
|
))}
|
||||||
<label
|
</box>
|
||||||
label={bind(client, "title").as(title => {
|
|
||||||
return title.length > 40
|
|
||||||
? title.slice(0, 37) + "..."
|
|
||||||
: title;
|
|
||||||
})}
|
|
||||||
/>
|
|
||||||
);
|
|
||||||
})}
|
|
||||||
</box>
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
function Time({ format = "%H:%M|%a %b %d" }) {
|
|
||||||
|
function Time({ format = "%H:%M %a %b %e" }) {
|
||||||
const time = Variable<string>("").poll(1000, () =>
|
const time = Variable<string>("").poll(1000, () =>
|
||||||
GLib.DateTime.new_now_local().format(format)!
|
GLib.DateTime.new_now_local().format(format)!)
|
||||||
);
|
|
||||||
|
|
||||||
return bind(time).as(str => {
|
return <label
|
||||||
const [hm, date] = str.split("|");
|
className="Time"
|
||||||
|
onDestroy={() => time.drop()}
|
||||||
return (
|
label={time()}
|
||||||
<box className="Time">
|
/>
|
||||||
<label className="TimeHM" label={hm} />
|
|
||||||
<label className="TimeDate" label={date} />
|
|
||||||
</box>
|
|
||||||
);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function Bar(monitor: Gdk.Monitor) {
|
export default function Bar(monitor: Gdk.Monitor) {
|
||||||
@@ -172,11 +157,10 @@ export default function Bar(monitor: Gdk.Monitor) {
|
|||||||
anchor={TOP | LEFT | RIGHT}>
|
anchor={TOP | LEFT | RIGHT}>
|
||||||
<centerbox>
|
<centerbox>
|
||||||
<box hexpand halign={Gtk.Align.START}>
|
<box hexpand halign={Gtk.Align.START}>
|
||||||
<Workspaces />
|
<Time />
|
||||||
<FocusedClient />
|
|
||||||
</box>
|
</box>
|
||||||
<box>
|
<box>
|
||||||
<Time />
|
<Workspaces />
|
||||||
</box>
|
</box>
|
||||||
<box hexpand halign={Gtk.Align.END} >
|
<box hexpand halign={Gtk.Align.END} >
|
||||||
<SysTray />
|
<SysTray />
|
||||||
+33
-16
@@ -4,25 +4,42 @@
|
|||||||
system,
|
system,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [inputs.ags.homeManagerModules.default];
|
# add the home manager module
|
||||||
|
imports = [
|
||||||
|
inputs.ags.homeManagerModules.default
|
||||||
|
# inputs.astal.homeManagerModules.default
|
||||||
|
];
|
||||||
|
|
||||||
|
home.packages = [
|
||||||
|
# inputs.astal.packages.${system}.default
|
||||||
|
];
|
||||||
|
|
||||||
programs.ags = {
|
programs.ags = {
|
||||||
enable = true;
|
enable = true;
|
||||||
configDir = ./biscuit;
|
|
||||||
|
|
||||||
extraPackages = let
|
# symlink to ~/.config/ags
|
||||||
agsPkgs = inputs.ags.packages.${system};
|
configDir = ./custom;
|
||||||
in
|
|
||||||
with pkgs; [
|
# additional packages to add to gjs's runtime
|
||||||
agsPkgs.battery
|
extraPackages = with inputs.ags.packages.${pkgs.system}; [
|
||||||
agsPkgs.hyprland
|
apps
|
||||||
agsPkgs.mpris
|
auth
|
||||||
agsPkgs.wireplumber
|
battery
|
||||||
agsPkgs.notifd
|
bluetooth
|
||||||
agsPkgs.apps
|
hyprland
|
||||||
agsPkgs.network
|
mpris
|
||||||
agsPkgs.tray
|
network
|
||||||
fzf
|
notifd
|
||||||
];
|
powerprofiles
|
||||||
|
tray
|
||||||
|
wireplumber
|
||||||
|
|
||||||
|
pkgs.fzf
|
||||||
|
pkgs.dart-sass
|
||||||
|
pkgs.esbuild
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
# programs.astal = {
|
||||||
|
# enable = true;
|
||||||
|
# };
|
||||||
}
|
}
|
||||||
|
|||||||
Submodule
+1
Submodule packages/ags/epik-shell added at 9002206c8b
@@ -1,131 +1,3 @@
|
|||||||
{
|
{ ... }: {
|
||||||
programs.fastfetch = {
|
programs.fastfetch.enable = true;
|
||||||
enable = true;
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
logo = {
|
|
||||||
padding = {
|
|
||||||
top = 2;
|
|
||||||
left = 1;
|
|
||||||
right = 2;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
display = {
|
|
||||||
separator = " ";
|
|
||||||
};
|
|
||||||
|
|
||||||
modules = [
|
|
||||||
# Title
|
|
||||||
{
|
|
||||||
type = "title";
|
|
||||||
format = "{#1}╭───────────── {#}{user-name-colored}";
|
|
||||||
}
|
|
||||||
|
|
||||||
# System Information Header
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}│ {#}System Information";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "os";
|
|
||||||
key = "│ {#keys} OS";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "kernel";
|
|
||||||
key = "│ {#keys} Kernel";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "uptime";
|
|
||||||
key = "│ {#keys} Uptime";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "packages";
|
|
||||||
key = "│ {#keys} Packages";
|
|
||||||
format = "{all}";
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}│";
|
|
||||||
}
|
|
||||||
|
|
||||||
# Desktop Environment
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}│ {#}Desktop Environment";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "de";
|
|
||||||
key = "│ {#keys} DE";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "wm";
|
|
||||||
key = "│ {#keys} WM";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "wmtheme";
|
|
||||||
key = "│ {#keys} Theme";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "display";
|
|
||||||
key = "│ {#keys} Resolution";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "shell";
|
|
||||||
key = "│ {#keys} Shell";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "terminalfont";
|
|
||||||
key = "│ {#keys} Font";
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}│";
|
|
||||||
}
|
|
||||||
|
|
||||||
# Hardware Information
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}│ {#}Hardware Information";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "cpu";
|
|
||||||
key = "│ {#keys} CPU";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "gpu";
|
|
||||||
key = "│ {#keys} GPU";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "memory";
|
|
||||||
key = "│ {#keys} Memory";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "disk";
|
|
||||||
key = "│ {#keys} Disk (/)";
|
|
||||||
folders = "/";
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}│";
|
|
||||||
}
|
|
||||||
|
|
||||||
# Colors
|
|
||||||
{
|
|
||||||
type = "colors";
|
|
||||||
key = "│";
|
|
||||||
symbol = "circle";
|
|
||||||
}
|
|
||||||
|
|
||||||
# Footer
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "{#1}╰───────────────────────────────╯";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
myConfig,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
programs.zoxide.enable = true;
|
|
||||||
programs.fish = {
|
|
||||||
enable = true;
|
|
||||||
interactiveShellInit = ''
|
|
||||||
set fish_greeting
|
|
||||||
fish_vi_key_bindings
|
|
||||||
zoxide init fish | source
|
|
||||||
|
|
||||||
'';
|
|
||||||
shellAliases = myConfig.general.terminal.Aliases;
|
|
||||||
|
|
||||||
plugins = with pkgs.fishPlugins; [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
{myConfig, ...}: {
|
|
||||||
programs.git = {
|
|
||||||
enable = true;
|
|
||||||
extraConfig = {
|
|
||||||
user.name = "${myConfig.general.gitProfile.User}";
|
|
||||||
user.email = "${myConfig.general.gitProfile.Email}";
|
|
||||||
init.defaultBranch = "${myConfig.general.gitProfile.defaultBranch}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
services.hypridle = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
general = {
|
|
||||||
lock_cmd = "pidof hyprlock || hyprlock"; # avoid starting multiple hyprlock instances.
|
|
||||||
before_sleep_cmd = "loginctl lock-session"; # lock before suspend.
|
|
||||||
after_sleep_cmd = "hyprctl dispatch dpms on && agu"; # avoid needing to press a key twice to turn on the display.
|
|
||||||
};
|
|
||||||
|
|
||||||
listener = [
|
|
||||||
{
|
|
||||||
timeout = 150;
|
|
||||||
on-timeout = "brightnessctl -s set 10"; # set monitor backlight to minimum, avoid 0 on OLED monitor.
|
|
||||||
on-resume = "brightnessctl -r"; # restore monitor backlight.
|
|
||||||
}
|
|
||||||
{
|
|
||||||
timeout = 150;
|
|
||||||
on-timeout = "brightnessctl -sd rgb:kbd_backlight set 0"; # turn off keyboard backlight.
|
|
||||||
on-resume = "brightnessctl -rd rgb:kbd_backlight"; # turn on keyboard backlight.
|
|
||||||
}
|
|
||||||
{
|
|
||||||
timeout = 300;
|
|
||||||
on-timeout = "loginctl lock-session"; # lock screen when timeout has passed.
|
|
||||||
}
|
|
||||||
{
|
|
||||||
timeout = 330;
|
|
||||||
on-timeout = "hyprctl dispatch dpms off"; # screen off after 5.5min.
|
|
||||||
on-resume = "hyprctl dispatch dpms on && brightnessctl -r"; # screen on and restore brightness on resume.
|
|
||||||
}
|
|
||||||
{
|
|
||||||
timeout = 500;
|
|
||||||
on-timeout = "systemctl suspend"; # suspend PC after 30min.
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
#################
|
||||||
|
### AUTOSTART ###
|
||||||
|
#################
|
||||||
|
|
||||||
|
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||||
|
# Or execute your favorite apps at launch like this:
|
||||||
|
$terminal = kitty
|
||||||
|
$bar = ags run
|
||||||
|
$cursor = Bibata-Modern-Ice
|
||||||
|
|
||||||
|
exec-once = hyprctl setcursor $cursor 24
|
||||||
|
exec-once = $bar
|
||||||
|
exec-once = [workspace 20 silent] kitty --single-instance --hold fastfetch
|
||||||
|
exec-once = [workspace 20 silent] firefox
|
||||||
|
exec-once = [workspace 1] kitty --single-instance --hold fastfetch
|
||||||
|
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
env = XCURSOR_SIZE,24
|
||||||
|
env = HYPRCURSOR_SIZE,24
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,191 @@
|
|||||||
|
|
||||||
|
################
|
||||||
|
### MONITORS ###
|
||||||
|
################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
|
monitor=,highres@highrr,auto,auto
|
||||||
|
|
||||||
|
|
||||||
|
#####################
|
||||||
|
### LOOK AND FEEL ###
|
||||||
|
#####################
|
||||||
|
|
||||||
|
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#general
|
||||||
|
general {
|
||||||
|
gaps_in = 2
|
||||||
|
gaps_out = 5
|
||||||
|
|
||||||
|
border_size = 2
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
||||||
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||||
|
col.inactive_border = rgba(595959aa)
|
||||||
|
|
||||||
|
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||||
|
resize_on_border = false
|
||||||
|
|
||||||
|
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||||
|
allow_tearing = false
|
||||||
|
|
||||||
|
layout = dwindle
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||||
|
decoration {
|
||||||
|
rounding = 0
|
||||||
|
rounding_power = 2
|
||||||
|
|
||||||
|
# Change transparency of focused and unfocused windows
|
||||||
|
active_opacity = 1.0
|
||||||
|
inactive_opacity = 1.0
|
||||||
|
|
||||||
|
shadow {
|
||||||
|
enabled = true
|
||||||
|
range = 4
|
||||||
|
render_power = 3
|
||||||
|
color = rgba(1a1a1aee)
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
||||||
|
blur {
|
||||||
|
enabled = true
|
||||||
|
size = 3
|
||||||
|
passes = 1
|
||||||
|
|
||||||
|
vibrancy = 0.1696
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
||||||
|
# animations {
|
||||||
|
# enabled = yes, please :)
|
||||||
|
#
|
||||||
|
# # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||||
|
#
|
||||||
|
# bezier = easeOutQuint,0.23,1,0.32,1
|
||||||
|
# bezier = easeInOutCubic,0.65,0.05,0.36,1
|
||||||
|
# bezier = linear,0,0,1,1
|
||||||
|
# bezier = almostLinear,0.5,0.5,0.75,1.0
|
||||||
|
# bezier = quick,0.15,0,0.1,1
|
||||||
|
#
|
||||||
|
# animation = global, 1, 10, default
|
||||||
|
# animation = border, 1, 5.39, easeOutQuint
|
||||||
|
# animation = windows, 1, 4.79, easeOutQuint
|
||||||
|
# animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
|
||||||
|
# animation = windowsOut, 1, 1.49, linear, popin 87%
|
||||||
|
# animation = fadeIn, 1, 1.73, almostLinear
|
||||||
|
# animation = fadeOut, 1, 1.46, almostLinear
|
||||||
|
# animation = fade, 1, 3.03, quick
|
||||||
|
# animation = layers, 1, 3.81, easeOutQuint
|
||||||
|
# animation = layersIn, 1, 4, easeOutQuint, fade
|
||||||
|
# animation = layersOut, 1, 1.5, linear, fade
|
||||||
|
# animation = fadeLayersIn, 1, 1.79, almostLinear
|
||||||
|
# animation = fadeLayersOut, 1, 1.39, almostLinear
|
||||||
|
# animation = workspaces, 1, 1.94, almostLinear, fade
|
||||||
|
# animation = workspacesIn, 1, 1.21, almostLinear, fade
|
||||||
|
# animation = workspacesOut, 1, 1.94, almostLinear, fade
|
||||||
|
# }
|
||||||
|
|
||||||
|
animations {
|
||||||
|
enabled = true
|
||||||
|
# Animation curves
|
||||||
|
|
||||||
|
bezier = linear, 0, 0, 1, 1
|
||||||
|
bezier = md3_standard, 0.2, 0, 0, 1
|
||||||
|
bezier = md3_decel, 0.05, 0.7, 0.1, 1
|
||||||
|
bezier = md3_accel, 0.3, 0, 0.8, 0.15
|
||||||
|
bezier = overshot, 0.05, 0.9, 0.1, 1.1
|
||||||
|
bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
|
||||||
|
bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
|
||||||
|
bezier = menu_decel, 0.1, 1, 0, 1
|
||||||
|
bezier = menu_accel, 0.38, 0.04, 1, 0.07
|
||||||
|
bezier = easeInOutCirc, 0.85, 0, 0.15, 1
|
||||||
|
bezier = easeOutCirc, 0, 0.55, 0.45, 1
|
||||||
|
bezier = easeOutExpo, 0.16, 1, 0.3, 1
|
||||||
|
bezier = softAcDecel, 0.26, 0.26, 0.15, 1
|
||||||
|
bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration
|
||||||
|
# Animation configs
|
||||||
|
animation = windows, 1, 3, md3_decel, popin 60%
|
||||||
|
animation = windowsIn, 1, 3, md3_decel, popin 60%
|
||||||
|
animation = windowsOut, 1, 3, md3_accel, popin 60%
|
||||||
|
animation = border, 1, 10, default
|
||||||
|
animation = fade, 1, 3, md3_decel
|
||||||
|
# animation = layers, 1, 2, md3_decel, slide
|
||||||
|
animation = layersIn, 1, 3, menu_decel, slide
|
||||||
|
animation = layersOut, 1, 1.6, menu_accel
|
||||||
|
animation = fadeLayersIn, 1, 2, menu_decel
|
||||||
|
animation = fadeLayersOut, 1, 0.5, menu_accel
|
||||||
|
animation = workspaces, 1, 7, menu_decel, slide
|
||||||
|
# animation = workspaces, 1, 2.5, softAcDecel, slide
|
||||||
|
# animation = workspaces, 1, 7, menu_decel, slidefade 15%
|
||||||
|
# animation = specialWorkspace, 1, 3, md3_decel, slidefadevert 15%
|
||||||
|
animation = specialWorkspace, 1, 3, md3_decel, slidevert
|
||||||
|
}
|
||||||
|
|
||||||
|
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
||||||
|
# "Smart gaps" / "No gaps when only"
|
||||||
|
# uncomment all if you wish to use that.
|
||||||
|
# workspace = w[tv1], gapsout:0, gapsin:0
|
||||||
|
# workspace = f[1], gapsout:0, gapsin:0
|
||||||
|
# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrule = bordersize 0, floating:0, onworkspace:f[1]
|
||||||
|
# windowrule = rounding 0, floating:0, onworkspace:f[1]
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||||
|
dwindle {
|
||||||
|
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||||
|
preserve_split = true # You probably want this
|
||||||
|
}
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||||
|
master {
|
||||||
|
new_status = master
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
||||||
|
misc {
|
||||||
|
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||||
|
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#############
|
||||||
|
### INPUT ###
|
||||||
|
#############
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||||
|
input {
|
||||||
|
kb_layout = us
|
||||||
|
kb_variant =
|
||||||
|
kb_model =
|
||||||
|
kb_options =
|
||||||
|
kb_rules =
|
||||||
|
|
||||||
|
follow_mouse = 1
|
||||||
|
|
||||||
|
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||||
|
|
||||||
|
touchpad {
|
||||||
|
natural_scroll = false
|
||||||
|
}
|
||||||
|
|
||||||
|
numlock_by_default = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
||||||
|
gestures {
|
||||||
|
workspace_swipe = false
|
||||||
|
}
|
||||||
|
|
||||||
|
# Example per-device config
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
||||||
|
device {
|
||||||
|
name = epic-mouse-v1
|
||||||
|
sensitivity = -0.5
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
###################
|
||||||
|
### KEYBINDINGS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||||
|
$terminal = kitty --single-instance
|
||||||
|
$browser = firefox
|
||||||
|
|
||||||
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
|
bind = $mainMod, Return, exec, $terminal
|
||||||
|
bind = $mainMod, Q, killactive,
|
||||||
|
bind = $mainMod, M, exit,
|
||||||
|
bind = $mainMod, E, exec, $fileManager
|
||||||
|
bind = $mainMod, V, togglefloating,
|
||||||
|
bind = $mainMod, R, exec, $menu
|
||||||
|
bind = $mainMod, P, pseudo, # dwindle
|
||||||
|
bind = $mainMod, B, togglesplit, # dwindle
|
||||||
|
bind = $mainMod, W, exec, $browser
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys
|
||||||
|
bind = $mainMod, H, movefocus, l
|
||||||
|
bind = $mainMod, L, movefocus, r
|
||||||
|
bind = $mainMod, K, movefocus, u
|
||||||
|
bind = $mainMod, J, movefocus, d
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
bind = $mainMod, 1, workspace, 1
|
||||||
|
bind = $mainMod, 2, workspace, 2
|
||||||
|
bind = $mainMod, 3, workspace, 3
|
||||||
|
bind = $mainMod, 4, workspace, 4
|
||||||
|
bind = $mainMod, 5, workspace, 5
|
||||||
|
bind = $mainMod, 6, workspace, 6
|
||||||
|
bind = $mainMod, 7, workspace, 7
|
||||||
|
bind = $mainMod, 8, workspace, 8
|
||||||
|
bind = $mainMod, 9, workspace, 9
|
||||||
|
bind = $mainMod, 0, workspace, 10
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||||
|
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||||
|
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||||
|
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||||
|
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||||
|
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||||
|
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||||
|
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||||
|
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||||
|
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||||
|
|
||||||
|
# Example special workspace (scratchpad)
|
||||||
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll
|
||||||
|
bind = $mainMod, mouse_down, workspace, e+1
|
||||||
|
bind = $mainMod, mouse_up, workspace, e-1
|
||||||
|
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
bindm = $mainMod, mouse:272, movewindow
|
||||||
|
bindm = $mainMod, mouse:273, resizewindow
|
||||||
|
|
||||||
|
# Laptop multimedia keys for volume and LCD brightness
|
||||||
|
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||||
|
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||||
|
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
|
||||||
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
|
||||||
|
|
||||||
|
# Requires playerctl
|
||||||
|
bindl = , XF86AudioNext, exec, playerctl next
|
||||||
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||||
|
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
##############################
|
||||||
|
### WINDOWS AND WORKSPACES ###
|
||||||
|
##############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
||||||
|
|
||||||
|
# Example windowrule
|
||||||
|
# windowrule = float,class:^(kitty)$,title:^(kitty)$
|
||||||
|
|
||||||
|
# Ignore maximize requests from apps. You'll probably like this.
|
||||||
|
windowrule = suppressevent maximize, class:.*
|
||||||
|
|
||||||
|
# Fix some dragging issues with XWayland
|
||||||
|
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
||||||
@@ -1,221 +1,13 @@
|
|||||||
{myConfig, ...}: {
|
{ pkgs, ... }: {
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
xwayland.enable = true;
|
|
||||||
settings = {
|
|
||||||
"$mod" = "SUPER";
|
|
||||||
"$term" = "kitty --single-instance";
|
|
||||||
"$browser" = "firefox";
|
|
||||||
|
|
||||||
monitor = myConfig.linux.hyprconf.Monitor;
|
home.file.".config/hypr/hyprland.conf" = {
|
||||||
|
source = builtins.toPath ./hyprland.conf;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
|
||||||
exec-once = [
|
home.file.".config/hypr/hyprland" = {
|
||||||
"[workspace 20 silent] kitty --single-insance --hold fastfetch"
|
source = builtins.toPath ./custom;
|
||||||
"[workspace 20 silent] firefox"
|
recursive = true;
|
||||||
"[workspace 1] kitty --single-instance --hold fastfetch"
|
force = true;
|
||||||
"pkill gjs & ags run"
|
|
||||||
"matugen image /home/${myConfig.general.Username}/.config/nixos/assets/wallpapers/ultrawide-nixos-default.png"
|
|
||||||
"hyprctl setcursor Bibata-Original-Classic 24"
|
|
||||||
"solaar -w hide"
|
|
||||||
];
|
|
||||||
|
|
||||||
general = {
|
|
||||||
gaps_in = 2;
|
|
||||||
gaps_out = 5;
|
|
||||||
border_size = 2;
|
|
||||||
# col.active_border = "#0DB7D4FF";
|
|
||||||
# col.inactive_border = "#31313600";
|
|
||||||
# col = {
|
|
||||||
# "inactive_border" = "rgba(595959aa)";
|
|
||||||
# "active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg";
|
|
||||||
# };
|
|
||||||
resize_on_border = false;
|
|
||||||
allow_tearing = false;
|
|
||||||
layout = "dwindle";
|
|
||||||
};
|
|
||||||
decoration = {
|
|
||||||
rounding = 0;
|
|
||||||
rounding_power = 2;
|
|
||||||
active_opacity = 1.0;
|
|
||||||
inactive_opacity = 1.0;
|
|
||||||
|
|
||||||
dim_inactive = true;
|
|
||||||
dim_strength = 0.1;
|
|
||||||
dim_special = 0.8;
|
|
||||||
|
|
||||||
shadow = {
|
|
||||||
enabled = true;
|
|
||||||
range = 4;
|
|
||||||
render_power = 3;
|
|
||||||
color = "rgba(1a1a1aee)";
|
|
||||||
};
|
|
||||||
|
|
||||||
blur = {
|
|
||||||
enabled = true;
|
|
||||||
size = 3;
|
|
||||||
passes = 1;
|
|
||||||
vibrancy = 0.1696;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
bezier = [
|
|
||||||
"linear, 0, 0, 1, 1"
|
|
||||||
"md3_standard, 0.2, 0, 0, 1"
|
|
||||||
"md3_decel, 0.05, 0.7, 0.1, 1"
|
|
||||||
"md3_accel, 0.3, 0, 0.8, 0.15"
|
|
||||||
"overshot, 0.05, 0.9, 0.1, 1.1"
|
|
||||||
"crazyshot, 0.1, 1.5, 0.76, 0.92"
|
|
||||||
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
|
|
||||||
"menu_decel, 0.1, 1, 0, 1"
|
|
||||||
"menu_accel, 0.38, 0.04, 1, 0.07"
|
|
||||||
"easeInOutCirc, 0.85, 0, 0.15, 1"
|
|
||||||
"easeOutCirc, 0, 0.55, 0.45, 1"
|
|
||||||
"easeOutExpo, 0.16, 1, 0.3, 1"
|
|
||||||
"softAcDecel, 0.26, 0.26, 0.15, 1"
|
|
||||||
"md2, 0.4, 0, 0.2, 1"
|
|
||||||
];
|
|
||||||
|
|
||||||
animation = [
|
|
||||||
"windows, 1, 3, md3_decel, popin 60%"
|
|
||||||
"windowsIn, 1, 3, md3_decel, popin 60%"
|
|
||||||
"windowsOut, 1, 3, md3_accel, popin 60%"
|
|
||||||
"border, 1, 10, default"
|
|
||||||
"fade, 1, 3, md3_decel"
|
|
||||||
"layersIn, 1, 3, menu_decel, slide"
|
|
||||||
"layersOut, 1, 1.6, menu_accel"
|
|
||||||
"fadeLayersIn, 1, 2, menu_decel"
|
|
||||||
"fadeLayersOut, 1, 0.5, menu_accel"
|
|
||||||
"workspaces, 1, 7, menu_decel, slide"
|
|
||||||
"specialWorkspace, 1, 3, md3_decel, slidevert"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
dwindle = {
|
|
||||||
pseudotile = true;
|
|
||||||
preserve_split = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
master = {
|
|
||||||
new_status = "master";
|
|
||||||
};
|
|
||||||
|
|
||||||
misc = {
|
|
||||||
force_default_wallpaper = -1;
|
|
||||||
disable_hyprland_logo = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
input = {
|
|
||||||
kb_layout = "us";
|
|
||||||
follow_mouse = 1;
|
|
||||||
sensitivity = 0;
|
|
||||||
force_no_accel = true;
|
|
||||||
repeat_delay = 250;
|
|
||||||
repeat_rate = 35;
|
|
||||||
|
|
||||||
touchpad = {
|
|
||||||
natural_scroll = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
numlock_by_default = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
gestures = {
|
|
||||||
workspace_swipe = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
binds = {
|
|
||||||
workspace_back_and_forth = true;
|
|
||||||
scroll_event_delay = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
device = [
|
|
||||||
{
|
|
||||||
name = "epic-mouse-v1";
|
|
||||||
sensitivity = -0.5;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
bind =
|
|
||||||
[
|
|
||||||
"$mod, Return, exec, $term"
|
|
||||||
"$mod, Q, killactive,"
|
|
||||||
"$mod, M, exit,"
|
|
||||||
"$mod, E, exec, $fileManager"
|
|
||||||
"$mod, V, togglefloating,"
|
|
||||||
"$mod, R, exec, $menu"
|
|
||||||
"$mod, P, pseudo,"
|
|
||||||
"$mod, B, togglesplit,"
|
|
||||||
"$mod, W, exec, $browser"
|
|
||||||
|
|
||||||
"$mod, H, movefocus, l"
|
|
||||||
"$mod, L, movefocus, r"
|
|
||||||
"$mod, K, movefocus, u"
|
|
||||||
"$mod, J, movefocus, d"
|
|
||||||
|
|
||||||
"$mod SHIFT, K, movewindow, u"
|
|
||||||
"$mod SHIFT, J, movewindow, d"
|
|
||||||
"$mod SHIFT, H, movewindow, l"
|
|
||||||
"$mod SHIFT, L, movewindow, r"
|
|
||||||
|
|
||||||
"$mod CTRL, K, resizeactive, 0 -50"
|
|
||||||
"$mod CTRL, J, resizeactive, 0 50"
|
|
||||||
"$mod CTRL, H, resizeactive, -50 0"
|
|
||||||
"$mod CTRL, L, resizeactive, 50 0"
|
|
||||||
|
|
||||||
"$mod, S, togglespecialworkspace, magic"
|
|
||||||
"$mod SHIFT, S, movetoworkspace, special:magic"
|
|
||||||
|
|
||||||
"$mod, mouse_down, workspace, e+1"
|
|
||||||
"$mod, mouse_up, workspace, e-1"
|
|
||||||
|
|
||||||
"$mod, F, fullscreen, 0"
|
|
||||||
|
|
||||||
"$mod, Space, exec, pkill rofi || rofi -show drun"
|
|
||||||
"$mod, C, exec, pkill rofi || rofi -show calc -modi calc -no-show-match -no-sort"
|
|
||||||
]
|
|
||||||
++ (
|
|
||||||
# workspaces
|
|
||||||
builtins.concatLists (builtins.genList (
|
|
||||||
i: let
|
|
||||||
ws = i + 1;
|
|
||||||
in [
|
|
||||||
"$mod, ${toString ws}, workspace, ${toString ws}"
|
|
||||||
"$mod SHIFT, ${toString ws}, movetoworkspace, ${toString ws}"
|
|
||||||
]
|
|
||||||
)
|
|
||||||
9)
|
|
||||||
)
|
|
||||||
++ [
|
|
||||||
"$mod, 0, workspace, 10"
|
|
||||||
"$mod, 0, movetoworkspace, 10"
|
|
||||||
];
|
|
||||||
|
|
||||||
bindm = [
|
|
||||||
"$mod, mouse:272, movewindow"
|
|
||||||
"$mod, mouse:273, resizewindow"
|
|
||||||
];
|
|
||||||
|
|
||||||
bindel = [
|
|
||||||
",XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"
|
|
||||||
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
|
||||||
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
|
||||||
",XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
|
|
||||||
",XF86MonBrightnessUp, exec, brightnessctl s 10%+"
|
|
||||||
",XF86MonBrightnessDown, exec, brightnessctl s 10%-"
|
|
||||||
];
|
|
||||||
|
|
||||||
bindl = [
|
|
||||||
",XF86AudioNext, exec, playerctl next"
|
|
||||||
",XF86AudioPause, exec, playerctl play-pause"
|
|
||||||
",XF86AudioPlay, exec, playerctl play-pause"
|
|
||||||
",XF86AudioPrev, exec, playerctl previous"
|
|
||||||
];
|
|
||||||
env = [
|
|
||||||
"HYPRCURSOR_THEME, Bibata-Original-Classic"
|
|
||||||
"HYPRCURSOR_SIZE, 24"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
source=./hyprland/keybinds.conf
|
||||||
|
source=./hyprland/autostart.conf
|
||||||
|
source=./hyprland/env.conf
|
||||||
|
source=./hyprland/general.conf
|
||||||
|
source=./hyprland/rules.conf
|
||||||
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
programs.hyprlock = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
+11
-22
@@ -1,25 +1,14 @@
|
|||||||
{myConfig, ...}: {
|
{ pkgs, ... }:
|
||||||
programs.kitty = {
|
{
|
||||||
enable = true;
|
home.packages = [
|
||||||
|
pkgs.kitty
|
||||||
|
];
|
||||||
|
|
||||||
themeFile = "kanagawa";
|
programs.kitty.enable = true;
|
||||||
settings = {
|
programs.kitty.settings = {
|
||||||
confirm_os_window_close = 0;
|
confirm_os_window_close = 0;
|
||||||
window_padding_width = 10;
|
window_padding_width = 10;
|
||||||
|
font_size = 12.0;
|
||||||
font_size = myConfig.general.terminal.Size;
|
|
||||||
font_family = myConfig.general.terminal.Font;
|
|
||||||
bold_font = "auto";
|
|
||||||
italic_font = "auto";
|
|
||||||
bold_italic_font = "auto";
|
|
||||||
|
|
||||||
# optimization
|
|
||||||
input_delay = 0;
|
|
||||||
repaint_delay = 2;
|
|
||||||
sync_to_monitor = false;
|
|
||||||
wayland_enable_ime = false;
|
|
||||||
allow_remote_control = true;
|
|
||||||
};
|
|
||||||
extraConfig = "include colors.conf";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
programs.mangohud = {
|
|
||||||
enable = true;
|
|
||||||
enableSessionWide = true;
|
|
||||||
settings = {
|
|
||||||
toggle_hud = "Shift_R+F12";
|
|
||||||
|
|
||||||
full = true;
|
|
||||||
gpu_temp = true;
|
|
||||||
cpu_temp = true;
|
|
||||||
fps_only = false;
|
|
||||||
|
|
||||||
blacklist = [
|
|
||||||
"pamac-manager"
|
|
||||||
"lact"
|
|
||||||
"ghb"
|
|
||||||
"bitwig-studio"
|
|
||||||
"ptyxis"
|
|
||||||
"yumex"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,70 +0,0 @@
|
|||||||
[config]
|
|
||||||
# If set to enabled, it will check for updates when you run the matugen command, notifying you that an update is avaiable.
|
|
||||||
# WARNING: Matugen needs to be compiled with the `update-informer` feature for this to work.
|
|
||||||
version_check = false
|
|
||||||
|
|
||||||
[config.wallpaper]
|
|
||||||
# The base command to run for applying the wallpaper, shouldn't have spaces in it.
|
|
||||||
command = "swww"
|
|
||||||
|
|
||||||
# The arguments that will be provided to the command.
|
|
||||||
# Keywords like {{ mode }} or anything that works inside of hooks doesn't work here.
|
|
||||||
# The last argument will be the image path.
|
|
||||||
arguments = ["img", "--transition-type", "center", "--transition-fps", "120"]
|
|
||||||
|
|
||||||
# For example, killing the wallpaper daemon. Usage is like a normal hook.
|
|
||||||
# pre_hook = ""
|
|
||||||
|
|
||||||
[config.custom_keywords]
|
|
||||||
test = "aaaa"
|
|
||||||
|
|
||||||
[templates.name1]
|
|
||||||
# Relative paths will be resolved from the path `config.toml` is in.
|
|
||||||
input_path = "./colors.whatever-extension"
|
|
||||||
output_path = "./a/colors-generated.whatever-extension"
|
|
||||||
|
|
||||||
# This will use a different input path depending on what mode you use.
|
|
||||||
# input_path_modes = { dark = "./colors.whatever-extension", light = "./colors.whatever-extension" }
|
|
||||||
|
|
||||||
# This will compare all of the colors inside the array with the color you set as `compare_to`, and returns the closest color to it.
|
|
||||||
# You can then use `{{closest_color}}` inside templates and hooks.
|
|
||||||
colors_to_compare = [
|
|
||||||
{ name = "black", color = "#000000" },
|
|
||||||
{ name = "red", color = "#ff0000" },
|
|
||||||
{ name = "maroon", color = "#800000" },
|
|
||||||
{ name = "yellow", color = "#ffff00" },
|
|
||||||
{ name = "olive", color = "#808000" },
|
|
||||||
{ name = "lime", color = "#00ff00" },
|
|
||||||
{ name = "green", color = "#008000" },
|
|
||||||
{ name = "aqua", color = "#00ffff" },
|
|
||||||
{ name = "teal", color = "#008080" },
|
|
||||||
{ name = "blue", color = "#0000ff" },
|
|
||||||
{ name = "navy", color = "#000080" },
|
|
||||||
{ name = "fuchsia", color = "#ff00ff" },
|
|
||||||
{ name = "purple", color = "#800080" },
|
|
||||||
]
|
|
||||||
compare_to = "{{colors.primary.default.hex}}"
|
|
||||||
|
|
||||||
# Runs before the template is exported. You can use keywords here,
|
|
||||||
pre_hook = 'echo "source color {{colors.source_color.default.hex}}, source image {{image}}, closest color {{closest_color}}"'
|
|
||||||
# Runs after the template is exported. You can use keywords here.
|
|
||||||
post_hook = 'echo "after gen"'
|
|
||||||
|
|
||||||
# Only hex values
|
|
||||||
# https://m3.material.io/styles/color/advanced/adjust-existing-colors#1cc12e43-237b-45b9-8fe0-9a3549c1f61e
|
|
||||||
# Blend is set to true by default.
|
|
||||||
[config.custom_colors]
|
|
||||||
green = "#00ff00"
|
|
||||||
red = "#ff0000"
|
|
||||||
blue = { color = "#0000ff", blend = false }
|
|
||||||
|
|
||||||
### --- my config
|
|
||||||
[templates.kitty]
|
|
||||||
input_path = '~/.config/nixos/pkgs/matugen/custom/templates/kitty.conf'
|
|
||||||
output_path = '~/.config/kitty/colors.conf'
|
|
||||||
post_hook = "kitty @ set-colors -a -c ~/.config/kitty/colors.conf"
|
|
||||||
|
|
||||||
[templates.ags]
|
|
||||||
input_path = '~/.config/nixos/pkgs/matugen/custom/templates/ags.scss'
|
|
||||||
output_path = '~/.config/nixos/pkgs/ags/biscuit/colors.scss'
|
|
||||||
post_hook = "pkill gjs & ags run ~/.config/nixos/pkgs/ags/biscuit/app.ts & disown (jobs -p) &"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
$background: {{colors.surface.dark.hex}};
|
|
||||||
$foreground: {{colors.on_surface.dark.hex}};
|
|
||||||
$primary: {{colors.primary.dark.hex}};
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
cursor {{colors.on_surface.default.hex}}
|
|
||||||
cursor_text_color {{colors.on_surface_variant.default.hex}}
|
|
||||||
|
|
||||||
foreground {{colors.on_surface.default.hex}}
|
|
||||||
background {{colors.surface.default.hex}}
|
|
||||||
selection_foreground {{colors.on_secondary.default.hex}}
|
|
||||||
selection_background {{colors.secondary_fixed_dim.default.hex}}
|
|
||||||
url_color {{colors.primary.default.hex}}
|
|
||||||
|
|
||||||
# black
|
|
||||||
color8 #262626
|
|
||||||
color0 #4c4c4c
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #ac8a8c
|
|
||||||
color9 #c49ea0
|
|
||||||
|
|
||||||
# green
|
|
||||||
color2 #8aac8b
|
|
||||||
color10 #9ec49f
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #aca98a
|
|
||||||
color11 #c4c19e
|
|
||||||
|
|
||||||
# blue
|
|
||||||
/* color4 #8f8aac */
|
|
||||||
color4 {{colors.primary.default.hex}}
|
|
||||||
color12 #a39ec4
|
|
||||||
|
|
||||||
# magenta
|
|
||||||
color5 #ac8aac
|
|
||||||
color13 #c49ec4
|
|
||||||
|
|
||||||
# cyan
|
|
||||||
color6 #8aacab
|
|
||||||
color14 #9ec3c4
|
|
||||||
|
|
||||||
# white
|
|
||||||
color15 #e7e7e7
|
|
||||||
color7 #f0f0f0
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
system,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [inputs.matugen.nixosModules.default];
|
|
||||||
home.file.".config/matugen/config.toml" = {
|
|
||||||
source = builtins.toPath ./custom/config.toml;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
nixovim = inputs.nixovim.packages.${pkgs.system}.default;
|
|
||||||
in {
|
|
||||||
home.packages = [
|
|
||||||
nixovim
|
|
||||||
pkgs.lazygit
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
nvimSource = pkgs.fetchFromGitea {
|
||||||
|
domain = "git.sakamoto.dev";
|
||||||
|
owner = "kenji";
|
||||||
|
repo = "nvim";
|
||||||
|
rev = "5fc3341ac43b35fd4032c07925927d7f1e82886c";
|
||||||
|
sha256 = "sha256-YbP814fKOFuCWBRwlccd4nx/h8sdMgiJQu54thRLsK8=";
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
home.packages = [
|
||||||
|
pkgs.lazygit
|
||||||
|
pkgs.ripgrep
|
||||||
|
];
|
||||||
|
home.file.".config/nvim" = {
|
||||||
|
# BUG requires --impure
|
||||||
|
source = /home/biscuit/Nixos/packages/nvim/nvchad;
|
||||||
|
# source = nvimSource;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
# Example use: provide it as a source
|
||||||
|
# You could pass `nvimSource` to a program, or maybe use it in home.file, etc.
|
||||||
|
}
|
||||||
|
|
||||||
Submodule
+1
Submodule packages/nvim/nvchad added at 2b4293a4c1
@@ -1,2 +0,0 @@
|
|||||||
{
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
programs.rofi = {
|
|
||||||
enable = true;
|
|
||||||
plugins = with pkgs; [
|
|
||||||
rofi-calc
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
{lib, ...}: {
|
|
||||||
programs.starship = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
format = lib.concatStrings [
|
|
||||||
"$username"
|
|
||||||
"$hostname"
|
|
||||||
"$directory"
|
|
||||||
"$git_branch"
|
|
||||||
"$git_state"
|
|
||||||
"$git_status"
|
|
||||||
"$cmd_duration"
|
|
||||||
"$line_break"
|
|
||||||
"$python"
|
|
||||||
"$character"
|
|
||||||
];
|
|
||||||
|
|
||||||
directory = {
|
|
||||||
style = "blue";
|
|
||||||
};
|
|
||||||
|
|
||||||
character = {
|
|
||||||
success_symbol = "[→](purple)";
|
|
||||||
error_symbol = "[→](red)";
|
|
||||||
vimcmd_symbol = "[←](green)";
|
|
||||||
};
|
|
||||||
|
|
||||||
git_branch = {
|
|
||||||
format = "[$branch]($style)";
|
|
||||||
style = "bright-black";
|
|
||||||
};
|
|
||||||
git_status = {
|
|
||||||
format = "[(*$conflicted$untracked$modified$staged$renamed$deleted) $ahead_behind$stashed]($style)";
|
|
||||||
style = "cyan";
|
|
||||||
conflicted = "";
|
|
||||||
untracked = "";
|
|
||||||
modified = "";
|
|
||||||
staged = "";
|
|
||||||
renamed = "";
|
|
||||||
deleted = "";
|
|
||||||
stashed = "≡";
|
|
||||||
};
|
|
||||||
git_state = {
|
|
||||||
format = "([$state( $progress_current/$progress_total)]($style)) ";
|
|
||||||
style = "bright-black";
|
|
||||||
};
|
|
||||||
|
|
||||||
cmd_duration = {
|
|
||||||
format = "[$duration]($style) ";
|
|
||||||
style = "yellow";
|
|
||||||
};
|
|
||||||
|
|
||||||
python = {
|
|
||||||
format = "[$virtualenv]($style) ";
|
|
||||||
style = "bright-black";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# home.file.".config/starship.toml" = {
|
|
||||||
# source = builtins.toPath ./pure.toml;
|
|
||||||
# };
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
services.swww.enable = true;
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,152 @@
|
|||||||
|
{
|
||||||
|
"layer": "top",
|
||||||
|
"position": "top",
|
||||||
|
"height": 45,
|
||||||
|
"spacing": 0,
|
||||||
|
"modules-left": [
|
||||||
|
"hyprland/workspaces",
|
||||||
|
"tray",
|
||||||
|
"custom/lock",
|
||||||
|
"custom/reboot",
|
||||||
|
"custom/power",
|
||||||
|
"clock"
|
||||||
|
],
|
||||||
|
"modules-center": ["hyprland/window"],
|
||||||
|
"modules-right": [
|
||||||
|
"network",
|
||||||
|
"battery",
|
||||||
|
"bluetooth",
|
||||||
|
"pulseaudio",
|
||||||
|
"backlight",
|
||||||
|
"custom/temperature",
|
||||||
|
"memory",
|
||||||
|
"cpu"
|
||||||
|
],
|
||||||
|
"hyprland/workspaces": {
|
||||||
|
"disable-scroll": false,
|
||||||
|
"all-outputs": true,
|
||||||
|
"format": "{icon}",
|
||||||
|
"on-click": "activate",
|
||||||
|
"persistent-workspaces": {
|
||||||
|
"*":[1,2,3,4,5,6,7]
|
||||||
|
},
|
||||||
|
"format-icons":{
|
||||||
|
"1": "",
|
||||||
|
"2": "",
|
||||||
|
"3": "",
|
||||||
|
"4": "",
|
||||||
|
"5": "",
|
||||||
|
"6": "",
|
||||||
|
"7": "",
|
||||||
|
"active": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"custom/lock": {
|
||||||
|
"format": " ",
|
||||||
|
"on-click": "hyprlock",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "锁屏"
|
||||||
|
},
|
||||||
|
"custom/reboot": {
|
||||||
|
"format": " ",
|
||||||
|
"on-click": "systemctl reboot",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "重启"
|
||||||
|
},
|
||||||
|
"custom/power": {
|
||||||
|
"format": " ",
|
||||||
|
"on-click": "systemctl poweroff",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "关机"
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
"format-wifi": " {essid} ",
|
||||||
|
"format-ethernet": " Wired ",
|
||||||
|
"tooltip-format": "<span color='#FF1493'> </span>{bandwidthUpBytes} <span color='#00BFFF'> </span>{bandwidthDownBytes}",
|
||||||
|
"format-linked": " {ifname} (No IP) ",
|
||||||
|
"format-disconnected": " Disconnected ",
|
||||||
|
"format-alt": " {signalStrength}% ",
|
||||||
|
"interval": 1
|
||||||
|
},
|
||||||
|
"battery": {
|
||||||
|
"states": {
|
||||||
|
"warning": 30,
|
||||||
|
"critical": 15
|
||||||
|
},
|
||||||
|
"format": " {icon} {capacity}% ",
|
||||||
|
"format-charging": " {capacity}%",
|
||||||
|
"interval": 1,
|
||||||
|
"format-icons": ["", "", "", "", ""],
|
||||||
|
"tooltip": true
|
||||||
|
},
|
||||||
|
"pulseaudio": {
|
||||||
|
"format": "{icon}{volume}% ",
|
||||||
|
"format-muted": " 0% ",
|
||||||
|
"format-icons": {
|
||||||
|
"headphone": " ",
|
||||||
|
"hands-free": " ",
|
||||||
|
"headset": " ",
|
||||||
|
"phone": " ",
|
||||||
|
"portable": " ",
|
||||||
|
"car": " ",
|
||||||
|
"default": [
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"on-click-right": "pavucontrol -t 3",
|
||||||
|
"on-click": "pactl -- set-sink-mute 0 toggle",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "当前系统声音: {volume}%"
|
||||||
|
},
|
||||||
|
"custom/temperature": {
|
||||||
|
"exec": "sensors | awk '/^Package id 0:/ {print int($4)}'",
|
||||||
|
"format": " {}°C ",
|
||||||
|
"interval": 5,
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "当前 CPU 温度: {}°C"
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"format": " {used:0.1f}G/{total:0.1f}G ",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "当前内存占比: {used:0.2f}G/{total:0.2f}G"
|
||||||
|
},
|
||||||
|
"cpu": {
|
||||||
|
"format": " {usage}% ",
|
||||||
|
"tooltip": true
|
||||||
|
},
|
||||||
|
"clock": {
|
||||||
|
"interval": 1,
|
||||||
|
"timezone": "Asia/Chengdu",
|
||||||
|
"format": " {:%H:%M} ",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "{:L%Y 年 %m 月 %d 日, %A}"
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 17,
|
||||||
|
"spacing": 6
|
||||||
|
},
|
||||||
|
"backlight": {
|
||||||
|
"device": "intel_backlight",
|
||||||
|
"format": "{icon}{percent}% ",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "当前屏幕亮度: {percent}%",
|
||||||
|
"format-icons": [
|
||||||
|
" ", // 暗 - 深灰
|
||||||
|
" ", // 中 - 灰
|
||||||
|
" ", // 亮 - 柠檬黄
|
||||||
|
" " // 最亮 - 金色
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"bluetooth": {
|
||||||
|
"format": " {status} ",
|
||||||
|
"format-connected": " {device_alias} ",
|
||||||
|
"format-connected-battery": " {device_alias}{device_battery_percentage}% ",
|
||||||
|
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||||
|
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||||
|
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
|
||||||
|
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,131 @@
|
|||||||
|
* {
|
||||||
|
font-family: "CaskaydiaCove Nerd Font", "Font Awesome 6 Free", "Font Awesome 6 Free Solid";
|
||||||
|
font-size: 16px;
|
||||||
|
border-radius: 0;
|
||||||
|
min-height: 0;
|
||||||
|
border: none;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces{
|
||||||
|
background-color: rgba(24,24,37,1.0);
|
||||||
|
border: none;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray{
|
||||||
|
margin: 6px 3px;
|
||||||
|
background-color: rgba(36, 36, 52, 1.0);
|
||||||
|
padding: 6px 12px; /* 保持内部间距 */
|
||||||
|
border-radius: 6px;
|
||||||
|
border-width: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#waybar {
|
||||||
|
background-color: #181825;
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#window,
|
||||||
|
#clock,
|
||||||
|
#custom-power,
|
||||||
|
#custom-reboot,
|
||||||
|
#bluetooth,
|
||||||
|
#battery,
|
||||||
|
#pulseaudio,
|
||||||
|
#backlight,
|
||||||
|
#custom-temperature,
|
||||||
|
#memory,
|
||||||
|
#cpu,
|
||||||
|
#network,
|
||||||
|
#custom-lock{
|
||||||
|
border-radius: 4px;
|
||||||
|
margin: 6px 3px;
|
||||||
|
padding: 6px 12px;
|
||||||
|
background-color: #1e1e2e;
|
||||||
|
color: #181825;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
background-color: #89b4fa;
|
||||||
|
}
|
||||||
|
#custom-power{
|
||||||
|
background-color: #f38ba8;
|
||||||
|
}
|
||||||
|
#custom-reboot{
|
||||||
|
background-color: #a6e3a1;
|
||||||
|
}
|
||||||
|
#bluetooth{
|
||||||
|
background-color: #f9e2af;
|
||||||
|
}
|
||||||
|
#battery{
|
||||||
|
background-color: #cba6f7;
|
||||||
|
}
|
||||||
|
#pulseaudio{
|
||||||
|
background-color: #89dceb;
|
||||||
|
}
|
||||||
|
#backlight{
|
||||||
|
background-color: #a6a3a1;
|
||||||
|
}
|
||||||
|
#custom-temperature{
|
||||||
|
background-color: #74c7ec;
|
||||||
|
}
|
||||||
|
#memory{
|
||||||
|
background-color: #f7768e;
|
||||||
|
}
|
||||||
|
#cpu{
|
||||||
|
background-color: #f38ba8;
|
||||||
|
}
|
||||||
|
#network{
|
||||||
|
background-color: #fab387;
|
||||||
|
}
|
||||||
|
#custom-lock{
|
||||||
|
background-color: #94e2d5;
|
||||||
|
}
|
||||||
|
#window{
|
||||||
|
background-color: #74c7ec;
|
||||||
|
}
|
||||||
|
|
||||||
|
#waybar.hidden {
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
all: initial;
|
||||||
|
/* Remove GTK theme values (waybar #1351) */
|
||||||
|
min-width: 0;
|
||||||
|
/* Fix weird spacing in materia (waybar #450) */
|
||||||
|
box-shadow: inset 0 -3px transparent;
|
||||||
|
/* Use box-shadow instead of border so the text isn't offset */
|
||||||
|
padding: 6px 18px;
|
||||||
|
margin: 6px 3px;
|
||||||
|
border-radius: 4px;
|
||||||
|
background-color: rgba(36, 36, 52, 1.0);
|
||||||
|
color: #cdd6f4;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
color: #1e1e2e;
|
||||||
|
background-color: #cdd6f4;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
box-shadow: inherit;
|
||||||
|
text-shadow: inherit;
|
||||||
|
color: #1e1e2e;
|
||||||
|
background-color: #cdd6f4;
|
||||||
|
}
|
||||||
|
|
||||||
|
tooltip {
|
||||||
|
border-radius: 8px;
|
||||||
|
padding: 16px;
|
||||||
|
background-color: #131822;
|
||||||
|
color: #C0C0C0;
|
||||||
|
}
|
||||||
|
|
||||||
|
tooltip label {
|
||||||
|
padding: 5px;
|
||||||
|
background-color: #131822;
|
||||||
|
color: #C0C0C0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
{ ... }: {
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home.file.".config/waybar" = {
|
||||||
|
source = builtins.toPath ./custom;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
|
||||||
|
"blocks": [
|
||||||
|
{
|
||||||
|
"alignment": "left",
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"foreground": "#ffdd86",
|
||||||
|
"style": "plain",
|
||||||
|
"template": "{{ .UserName }}@{{ .HostName }} ",
|
||||||
|
"type": "session"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"foreground": "#42a9ff",
|
||||||
|
"style": "plain",
|
||||||
|
"properties": {
|
||||||
|
"style": "full"
|
||||||
|
},
|
||||||
|
"template": "{{ .Path }} ",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"properties": {
|
||||||
|
"branch_icon": "",
|
||||||
|
"fetch_status": true
|
||||||
|
},
|
||||||
|
"style": "plain",
|
||||||
|
"template": "git:{{ if or (.Working.Changed) (.Staging.Changed) (gt .StashCount 0) }}<#ffdd86>{{ .HEAD }}</>{{ else }}{{ .HEAD }}{{ end }}{{ if .Staging.Changed }} <#98c379>{{ .Staging.String }}</>{{ end }}{{ if .Working.Changed }} <#d16971>{{ .Working.String }}</>{{ end }}",
|
||||||
|
"type": "git"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "prompt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"alignment": "left",
|
||||||
|
"newline": true,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"foreground": "#ffdd86",
|
||||||
|
"foreground_templates": [
|
||||||
|
"{{ if gt .Code 0 }}#42a9ff{{ end }}"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"always_enabled": true
|
||||||
|
},
|
||||||
|
"style": "plain",
|
||||||
|
"template": "> ",
|
||||||
|
"type": "status"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "prompt"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"version": 3
|
||||||
|
}
|
||||||
+65
-31
@@ -1,40 +1,74 @@
|
|||||||
{
|
{ pkgs, ... }: {
|
||||||
pkgs,
|
home.packages = [
|
||||||
myConfig,
|
pkgs.zoxide
|
||||||
...
|
pkgs.oh-my-posh
|
||||||
}: {
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
zoxide
|
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.zsh.enable = true;
|
|
||||||
programs.zoxide.enable = true;
|
programs.zoxide.enable = true;
|
||||||
|
programs.oh-my-posh.enable = true;
|
||||||
|
|
||||||
|
home.file.".config/oh-my-posh/config.omp.json" = {
|
||||||
|
source = ./custom/config.omp.json;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enableCompletion = false;
|
enable = true;
|
||||||
syntaxHighlighting.enable = false;
|
plugins = [
|
||||||
shellAliases = myConfig.general.terminal.Aliases;
|
# {
|
||||||
history.size = 10000;
|
# name = "zsh-autocomplete"; # completes history, commands, etc.
|
||||||
antidote = {
|
# src = pkgs.fetchFromGitHub {
|
||||||
enable = true;
|
# owner = "marlonrichert";
|
||||||
plugins = [
|
# repo = "zsh-autocomplete";
|
||||||
"MichaelAquilina/zsh-autoswitch-virtualenv"
|
# rev = "762afacbf227ecd173e899d10a28a478b4c84a3f";
|
||||||
"jeffreytse/zsh-vi-mode"
|
# sha256 = "1357hygrjwj5vd4cjdvxzrx967f1d2dbqm2rskbz5z1q6jri1hm3";
|
||||||
"zdharma-continuum/fast-syntax-highlighting kind:defer"
|
# }; # e.g., nix-prefetch-url --unpack https://github.com/marlonrichert/zsh-autocomplete/archive/762afacbf227ecd173e899d10a28a478b4c84a3f.tar.gz
|
||||||
"zsh-users/zsh-autosuggestions kind:defer"
|
# }
|
||||||
"zsh-users/zsh-history-substring-search kind:defer"
|
{
|
||||||
];
|
name = "vi-mode";
|
||||||
|
src = pkgs.zsh-vi-mode;
|
||||||
|
file = "share/zsh-vi-mode/zsh-vi-mode.plugin.zsh";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "autosuggestion";
|
||||||
|
src = pkgs.zsh-autosuggestions;
|
||||||
|
file = "share/zsh-autosuggestions/zsh-autosuggestions.zsh";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
enableCompletion = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
shellAliases = {
|
||||||
|
ll = "ls -l";
|
||||||
|
upd = "sudo nixos-rebuild switch --flake ~/Nixos/#biscuit";
|
||||||
|
hupd = "home-manager switch --flake ~/Nixos/#biscuit --impure";
|
||||||
|
agu = "pkill gjs & ags run ~/Nixos/packages/ags/custom/app.ts &";
|
||||||
};
|
};
|
||||||
initContent = ''
|
history.size = 10000;
|
||||||
# zsh-autocomplete
|
oh-my-zsh = {
|
||||||
# bindkey -M menuselect '^M' .accept-line # run code when selected completion
|
plugins = [ ];
|
||||||
|
enable = true;
|
||||||
|
theme = "robbyrussell";
|
||||||
|
extraConfig = ''
|
||||||
|
zstyle ':completion:*' completer _expand _complete _ignored _approximate _expand_alias
|
||||||
|
zstyle ':autocomplete:*' default-context curcontext
|
||||||
|
zstyle ':autocomplete:*' min-input 0
|
||||||
|
|
||||||
|
setopt HIST_FIND_NO_DUPS
|
||||||
|
|
||||||
|
autoload -Uz compinit
|
||||||
|
compinit
|
||||||
|
|
||||||
|
# setopt autocd # cd without writing 'cd'
|
||||||
|
setopt globdots # show dotfiles in autocomplete list
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
initContent = ''
|
||||||
|
# Oh-My-Posh initialization for Zsh
|
||||||
|
eval "$(oh-my-posh init zsh --config ~/.config/oh-my-posh/config.omp.json)"
|
||||||
|
|
||||||
|
# zsh-autocomplete
|
||||||
|
bindkey -M menuselect '^M' .accept-line # run code when selected completion
|
||||||
|
'';
|
||||||
|
|
||||||
autoload -Uz compinit
|
|
||||||
if [ "$(date +'%j')" != "$(stat -f '%Sm' -t '%j' ~/.zcompdump 2>/dev/null)" ]; then
|
|
||||||
compinit
|
|
||||||
else
|
|
||||||
compinit -C
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
keys:
|
|
||||||
- &admin_kenji age19pf5unuk3hcap0vrrlqr9lkh5eg24aw7z3skf0kverpjdqsltdxsdx88r8
|
|
||||||
creation_rules:
|
|
||||||
- path_regex: secrets/[^/]+\.(yaml|json|env|ini)$
|
|
||||||
key_groups:
|
|
||||||
age:
|
|
||||||
- *admin_kenji
|
|
||||||
- path_regex: secrets/azmidi/[^/]+\.(yaml|json|env|ini)$
|
|
||||||
key_groups:
|
|
||||||
age:
|
|
||||||
- *admin_kenji
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
abcd: hello-world
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
glxinfo
|
|
||||||
vulkan-tools
|
|
||||||
lact
|
|
||||||
];
|
|
||||||
systemd.packages = with pkgs; [
|
|
||||||
lact
|
|
||||||
];
|
|
||||||
systemd.services.lactd = {
|
|
||||||
enable = true;
|
|
||||||
wantedBy = ["multi-user.target"];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
programs.appimage = {
|
|
||||||
enable = true;
|
|
||||||
binfmt = true;
|
|
||||||
# If moondeck-buddy.AppImage requires specific libraries not included by default
|
|
||||||
# you might need to add them here. For example:
|
|
||||||
# package = pkgs.appimage-run.override {
|
|
||||||
# extraPkgs = pkgs: with pkgs; [
|
|
||||||
# # Add any missing libraries here, e.g.,
|
|
||||||
# # libthai
|
|
||||||
# # qt5.full
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
astal.io
|
||||||
|
astal.gjs
|
||||||
|
astal.hyprland
|
||||||
|
astal.apps
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
boot.loader = {
|
|
||||||
systemd-boot = {
|
|
||||||
enable = false;
|
|
||||||
};
|
|
||||||
efi = {
|
|
||||||
canTouchEfiVariables = true;
|
|
||||||
};
|
|
||||||
grub = {
|
|
||||||
enable = true;
|
|
||||||
device = "nodev";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,107 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
lock-false = {
|
|
||||||
Value = false;
|
|
||||||
Status = "locked";
|
|
||||||
};
|
|
||||||
lock-true = {
|
|
||||||
Value = true;
|
|
||||||
Status = "locked";
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
programs = {
|
|
||||||
firefox = {
|
|
||||||
enable = true;
|
|
||||||
languagePacks = ["en-US"];
|
|
||||||
|
|
||||||
/*
|
|
||||||
---- POLICIES ----
|
|
||||||
*/
|
|
||||||
# Check about:policies#documentation for options.
|
|
||||||
policies = {
|
|
||||||
DisableTelemetry = true;
|
|
||||||
DisableFirefoxStudies = true;
|
|
||||||
EnableTrackingProtection = {
|
|
||||||
Value = true;
|
|
||||||
Locked = true;
|
|
||||||
Cryptomining = true;
|
|
||||||
Fingerprinting = true;
|
|
||||||
};
|
|
||||||
DisablePocket = true;
|
|
||||||
DisableFirefoxAccounts = true;
|
|
||||||
DisableAccounts = true;
|
|
||||||
DisableFirefoxScreenshots = true;
|
|
||||||
OverrideFirstRunPage = "";
|
|
||||||
OverridePostUpdatePage = "";
|
|
||||||
DontCheckDefaultBrowser = true;
|
|
||||||
DisplayBookmarksToolbar = "never"; # alternatives: "always" or "newtab"
|
|
||||||
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
|
|
||||||
SearchBar = "unified"; # alternative: "separate"
|
|
||||||
|
|
||||||
/*
|
|
||||||
---- EXTENSIONS ----
|
|
||||||
*/
|
|
||||||
# Check about:support for extension/add-on ID strings.
|
|
||||||
# Valid strings for installation_mode are "allowed", "blocked",
|
|
||||||
# "force_installed" and "normal_installed".
|
|
||||||
ExtensionSettings = {
|
|
||||||
"*".installation_mode = "blocked"; # blocks all addons except the ones specified below
|
|
||||||
# uBlock Origin:
|
|
||||||
"uBlock0@raymondhill.net" = {
|
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
|
||||||
installation_mode = "force_installed";
|
|
||||||
};
|
|
||||||
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
|
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/4493940/bitwarden_password_manager-2025.5.0.xpi";
|
|
||||||
installation_mode = "force_installed";
|
|
||||||
};
|
|
||||||
"tridactyl.vim@cmcaine.co.uk" = {
|
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/4405615/tridactyl_vim-1.24.2.xpi";
|
|
||||||
installation_mode = "force_installed";
|
|
||||||
};
|
|
||||||
# Privacy Badger:
|
|
||||||
# "jid1-MnnxcxisBPnSXQ@jetpack" = {
|
|
||||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
|
|
||||||
# installation_mode = "force_installed";
|
|
||||||
# };
|
|
||||||
# 1Password:
|
|
||||||
# "{d634138d-c276-4fc8-924b-40a0ea21d284}" = {
|
|
||||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/1password-x-password-manager/latest.xpi";
|
|
||||||
# installation_mode = "force_installed";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
---- PREFERENCES ----
|
|
||||||
*/
|
|
||||||
# Check about:config for options.
|
|
||||||
preferences = {
|
|
||||||
# "browser.contentblocking.category" = {
|
|
||||||
# Value = "strict";
|
|
||||||
# Status = "locked";
|
|
||||||
# };
|
|
||||||
"browser.contentblocking.category" = "strict";
|
|
||||||
"extensions.pocket.enabled" = false;
|
|
||||||
"extensions.screenshots.disabled" = true;
|
|
||||||
"browser.topsites.contile.enabled" = false;
|
|
||||||
"browser.formfill.enable" = false;
|
|
||||||
"browser.search.suggest.enabled" = false;
|
|
||||||
"browser.search.suggest.enabled.private" = false;
|
|
||||||
"browser.urlbar.suggest.searches" = false;
|
|
||||||
"browser.urlbar.showSearchSuggestionsFirst" = false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.snippets" = false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsored" = false;
|
|
||||||
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
hyprcursor
|
||||||
|
bibata-cursors
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
python3Full
|
|
||||||
python3Packages.build
|
|
||||||
python3Packages.pip
|
|
||||||
python3Packages.installer
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
git
|
|
||||||
p7zip
|
|
||||||
tldr
|
|
||||||
jq
|
|
||||||
btop
|
|
||||||
rar
|
|
||||||
|
|
||||||
cloudflared
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,5 +1,10 @@
|
|||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
gcc
|
||||||
|
rustc
|
||||||
|
cargo
|
||||||
|
nodejs
|
||||||
|
python313
|
||||||
busybox
|
busybox
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
firefox
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.firefox.enable = true;
|
||||||
|
}
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
|
||||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
|
||||||
# Or disable the firewall altogether.
|
|
||||||
# networking.firewall.enable = false;
|
|
||||||
|
|
||||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
|
||||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
|
||||||
}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
unlisted-fonts = inputs.unlisted-fonts.packages.${pkgs.system};
|
|
||||||
in {
|
|
||||||
fonts.packages = with pkgs; [
|
|
||||||
unlisted-fonts.rubik
|
|
||||||
nerd-fonts.jetbrains-mono
|
|
||||||
material-symbols
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
nerd-fonts.fira-code
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
programs.steam = {
|
|
||||||
enable = true;
|
|
||||||
gamescopeSession.enable = true;
|
|
||||||
};
|
|
||||||
environment.systemPackages = [
|
|
||||||
# inputs.nix-gaming.packages.${pkgs.system}.default
|
|
||||||
pkgs.protonup-qt
|
|
||||||
pkgs.geekbench
|
|
||||||
];
|
|
||||||
# programs.steam.platformOptimizations.enable = true;
|
|
||||||
}
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
hardware.graphics = {
|
|
||||||
enable = true;
|
|
||||||
enable32Bit = true; # Crucial for 32-bit games
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
{
|
|
||||||
myConfig,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
hardware = {
|
|
||||||
logitech.wireless.enable = myConfig.linux.logitech-hardware.enable;
|
|
||||||
bluetooth = {
|
|
||||||
enable = true;
|
|
||||||
powerOnBoot = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
environment.systemPackages = with pkgs;
|
|
||||||
[
|
|
||||||
]
|
|
||||||
++ lib.optionals (myConfig.linux.logitech-hardware.enable == true) [
|
|
||||||
solaar
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{ ... }: {
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
# package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||||
|
# portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||||
|
xwayland.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
{myConfig, ...}: {
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
|
||||||
time.timeZone = "${myConfig.general.Timezone}";
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
{myConfig, ...}: {
|
|
||||||
networking.hostName = "${myConfig.general.Hostname}";
|
|
||||||
networking.networkmanager.enable = true;
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
programs.bash = {
|
|
||||||
interactiveShellInit = ''
|
|
||||||
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
|
|
||||||
then
|
|
||||||
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
|
|
||||||
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
zsh.enable = true;
|
|
||||||
fish.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
security.polkit.enable = true;
|
|
||||||
security.polkit.extraConfig = ''
|
|
||||||
polkit.addRule(function(action, subject) {
|
|
||||||
if ((action.id == "org.corectrl.helper.gpu.set" ||
|
|
||||||
action.id == "org.corectrl.helper.gpu.apply") &&
|
|
||||||
subject.isInGroup("wheel")) {
|
|
||||||
return polkit.Result.YES;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
services = {
|
|
||||||
openssh.enable = true;
|
|
||||||
libinput.enable = true;
|
|
||||||
blueman.enable = true;
|
|
||||||
printing.enable = true;
|
|
||||||
# sensors.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
environment.systemPackages = [
|
|
||||||
pkgs.pavucontrol
|
|
||||||
];
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
|
|
||||||
lowLatency = {
|
|
||||||
# enable this module
|
|
||||||
enable = true;
|
|
||||||
# defaults (no need to be set unless modified)
|
|
||||||
quantum = 64;
|
|
||||||
rate = 48000;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# make pipewire realtime-capable
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
sunshine
|
|
||||||
];
|
|
||||||
services.sunshine = {
|
|
||||||
enable = true;
|
|
||||||
autoStart = true;
|
|
||||||
capSysAdmin = true;
|
|
||||||
openFirewall = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment.systemPackages = [
|
||||||
|
pkgs.adw-gtk3
|
||||||
|
pkgs.colloid-icon-theme
|
||||||
|
pkgs.colloid-gtk-theme
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
console = {
|
|
||||||
font = "Lat2-Terminus16";
|
|
||||||
useXkbConfig = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
myConfig,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
users = {
|
|
||||||
defaultUserShell = pkgs.${myConfig.general.terminal.Shell};
|
|
||||||
users = {
|
|
||||||
${myConfig.general.Username} = {
|
|
||||||
isNormalUser = true;
|
|
||||||
extraGroups = ["wheel" "networkmanager" "input" "corectrl" "video"];
|
|
||||||
initialHashedPassword = "$y$j9T$NHFtSwF4NJtEmgMjy4Xdg.$9WQltjEx3eEfZ7GbpGLW8lBhJtiXPOeIawrxdmx0.vB";
|
|
||||||
useDefaultShell = true;
|
|
||||||
packages = [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
wl-clipboard
|
|
||||||
hypridle
|
|
||||||
hyprlock
|
|
||||||
brightnessctl
|
|
||||||
];
|
|
||||||
programs.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
|
||||||
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
|
||||||
};
|
|
||||||
hardware = {
|
|
||||||
graphics.enable = true;
|
|
||||||
};
|
|
||||||
services = {
|
|
||||||
# displayManager.sddm.wayland = true;
|
|
||||||
displayManager.gdm.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user