Compare commits
4 Commits
12c8cc4d69
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 8efe0b9341 | |||
| edb3d75788 | |||
| b16a603ea1 | |||
| ad4a10ec09 |
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
assets/wallpapers/cap_blow.png
|
||||
assets/wallpapers/cap_filter.png
|
||||
|
||||
result
|
||||
@@ -4,4 +4,8 @@ All of stuff(Wallpapers, Scripts, etc.) packaged in single nix deriv.
|
||||
|
||||
## Wallpaper Sources
|
||||
|
||||
* ``
|
||||
* `zh.jpeg` - [じんだいじ-JINDAIJI-](https://jindaiji.fanbox.cc/posts/10183122)
|
||||
* `cap_blow.png`[^1] - [シャポコ](https://www.pixiv.net/artworks/107214767)
|
||||
* `cap_filter.png`[^1] - [シャポコ](https://www.pixiv.net/artworks/91199411)
|
||||
|
||||
[^1]: Not included as original file due to licensing. Download by yourself before compiling. When building/`nixos-rebuild`-ing with these gitignored files, please explicitly use `path:` directives to not using nix's git check/ignoring.
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "ricing-assets";
|
||||
src = ./.;
|
||||
installPhase = ''
|
||||
mkdir -p $out/usr/local/share/wallpapers
|
||||
cp -r wallpapers/ $out/usr/local/share/wallpapers
|
||||
'';
|
||||
}
|
||||
61
assets/flake.lock
generated
Normal file
61
assets/flake.lock
generated
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"nodes": {
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1774244481,
|
||||
"narHash": "sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4590696c8693fea477850fe379a01544293ca4e2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-25.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
29
assets/flake.nix
Normal file
29
assets/flake.nix
Normal file
@@ -0,0 +1,29 @@
|
||||
{
|
||||
description = "Assets/Resources for ricing available as nix deriv";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-25.11";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, flake-utils }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = {};
|
||||
overlays = [];
|
||||
};
|
||||
my-ricing-assets = pkgs.callPackage ./package.nix {};
|
||||
in
|
||||
{
|
||||
packages = {
|
||||
inherit my-ricing-assets;
|
||||
default = my-ricing-assets;
|
||||
my-wallpapers = pkgs.callPackage ./wallpapers {};
|
||||
my-scripts = pkgs.callPackage ./scripts {};
|
||||
};
|
||||
overlays.default = final: prev: { my-ricing-assets = final.callPackage ./package.nix {}; };
|
||||
}
|
||||
);
|
||||
}
|
||||
12
assets/package.nix
Normal file
12
assets/package.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
my-scripts = pkgs.callPackage ./scripts {};
|
||||
my-wallpapers = pkgs.callPackage ./wallpapers {};
|
||||
in
|
||||
pkgs.symlinkJoin {
|
||||
name = "my-ricing-assets";
|
||||
paths = [
|
||||
my-scripts
|
||||
my-wallpapers
|
||||
];
|
||||
}
|
||||
8
assets/scripts/default.nix
Normal file
8
assets/scripts/default.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
misskey-scripts = pkgs.callPackage ./misskey.nix {};
|
||||
in
|
||||
pkgs.symlinkJoin {
|
||||
name = "my-scripts";
|
||||
paths = [misskey-scripts];
|
||||
}
|
||||
@@ -1,26 +1,31 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
getLatestN = writeShellApplication {
|
||||
getLatestN = pkgs.writeShellApplication {
|
||||
name = "misskey-getLatestN";
|
||||
runtimeInputs = [
|
||||
runtimeInputs = with pkgs; [
|
||||
curl
|
||||
jq
|
||||
];
|
||||
text = ''
|
||||
if [[ -a /tmp/${config.networking.hostName}/misskey-scripts/getLatestN.fifo ]]; then
|
||||
mkdir -p /tmp/${config.networking.hostName}/misskey-scripts
|
||||
mkfifo /tmp/${config.networking.hostName}/misskey-scripts/getLatestN.fifo
|
||||
if [ ! -e /tmp//misskey-scripts/getLatestN1.fifo ]; then
|
||||
mkdir -p /tmp/misskey-scripts
|
||||
mkfifo /tmp/misskey-scripts/getLatestN1.fifo
|
||||
fi
|
||||
if [ ! -e /tmp//misskey-scripts/getLatestN2.fifo ]; then
|
||||
mkdir -p /tmp/misskey-scripts
|
||||
mkfifo /tmp/misskey-scripts/getLatestN2.fifo
|
||||
fi
|
||||
|
||||
pipeLocation=/tmp/${config.networking.hostName}/misskey-scripts/getLatestN.fifo
|
||||
pipeLocation1=/tmp/misskey-scripts/getLatestN1.fifo
|
||||
pipeLocation2=/tmp/misskey-scripts/getLatestN2.fifo
|
||||
|
||||
curl https://misskey.io/api/notes -s --request POST --header 'Content-Type: application/json' --data '{"local": true, "reply": false, "renote": false, "withFiles": false, "poll": false, "limit": $1}' > "$pipeLocation" &
|
||||
curl https://misskey.io/api/notes -s --request POST --header 'Content-Type: application/json' --data "{\"local\": true, \"reply\": false, \"renote\": false, \"withFiles\": false, \"poll\": false, \"limit\": $1}" > "$pipeLocation1" &
|
||||
|
||||
echo "$(jq -M -r '.[].text' < $pipeLocation)" > $pipeLocation &
|
||||
jq -M -r '.[].text' < $pipeLocation1 > $pipeLocation2 &
|
||||
|
||||
while read line; do
|
||||
while read -r line; do
|
||||
echo "$line"
|
||||
done < $pipeLocation
|
||||
done < $pipeLocation2
|
||||
wait
|
||||
'';
|
||||
};
|
||||
|
||||
21
assets/wallpapers/default.nix
Normal file
21
assets/wallpapers/default.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{ stdenv, lib, ... }:
|
||||
let
|
||||
inherit (lib.fileset) toSource unions intersection maybeMissing gitTracked;
|
||||
sourceFiles = unions [
|
||||
(gitTracked ./.)
|
||||
(maybeMissing ./cap_blow.png)
|
||||
(maybeMissing ./cap_filter.png)
|
||||
];
|
||||
in
|
||||
lib.fileset.trace sourceFiles
|
||||
stdenv.mkDerivation {
|
||||
name = "my-wallpapers";
|
||||
src = toSource {
|
||||
root = ./.;
|
||||
fileset = sourceFiles;
|
||||
};
|
||||
installPhase = ''
|
||||
mkdir -p $out/usr/local/share/wallpapers
|
||||
cp -r *.{jpg,jpeg,png} $out/usr/local/share/wallpapers/
|
||||
'';
|
||||
}
|
||||
BIN
assets/wallpapers/zh.jpeg
Normal file
BIN
assets/wallpapers/zh.jpeg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 MiB |
88
flake.lock
generated
88
flake.lock
generated
@@ -32,6 +32,24 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -39,11 +57,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773963144,
|
||||
"narHash": "sha256-WzBOBfSay3GYilUfKaUa1Mbf8/jtuAiJIedx7fWuIX4=",
|
||||
"lastModified": 1774559029,
|
||||
"narHash": "sha256-deix7yg3j6AhjMPnFDCmWB3f83LsajaaULP5HH2j34k=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "a91b3ea73a765614d90360580b689c48102d1d33",
|
||||
"rev": "a0bb0d11514f92b639514220114ac8063c72d0a3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -53,13 +71,30 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"my-ricing-assets": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"path": "./assets",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
"path": "./assets",
|
||||
"type": "path"
|
||||
},
|
||||
"parent": []
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1773533765,
|
||||
"narHash": "sha256-qonGfS2lzCgCl59Zl63jF6dIRRpvW3AJooBGMaXjHiY=",
|
||||
"lastModified": 1774567711,
|
||||
"narHash": "sha256-uVlOHBvt6Vc/iYNJXLPa4c3cLXwMllOCVfAaLAcphIo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "f8e82243fd601afb9f59ad230958bd073795cbfe",
|
||||
"rev": "3f6f874dfc34d386d10e434c48ad966c4832243e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -71,11 +106,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1773814637,
|
||||
"narHash": "sha256-GNU+ooRmrHLfjlMsKdn0prEKVa0faVanm0jrgu1J/gY=",
|
||||
"lastModified": 1774388614,
|
||||
"narHash": "sha256-tFwzTI0DdDzovdE9+Ras6CUss0yn8P9XV4Ja6RjA+nU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fea3b367d61c1a6592bc47c72f40a9f3e6a53e96",
|
||||
"rev": "1073dad219cb244572b74da2b20c7fe39cb3fa9e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -100,15 +135,48 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1774386573,
|
||||
"narHash": "sha256-4hAV26quOxdC6iyG7kYaZcM3VOskcPUrdCQd/nx8obc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "46db2e09e1d3f113a13c0d7b81e2f221c63b8ce9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"my-ricing-assets": "my-ricing-assets",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"xlibre-overlay": "xlibre-overlay"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"path": "./systems.nix",
|
||||
@@ -143,7 +211,7 @@
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems",
|
||||
"systems": "systems_2",
|
||||
"xlibre-drivers-overlay-choice": "xlibre-drivers-overlay-choice",
|
||||
"xserver-meson-flags": "xserver-meson-flags"
|
||||
},
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
|
||||
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/release-25.11";
|
||||
@@ -10,6 +11,10 @@
|
||||
url = "git+https://codeberg.org/takagemacoed/xlibre-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
my-ricing-assets = {
|
||||
url = "path:./assets";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
outputs = inputs@{ self, nixpkgs, ... }: {
|
||||
nixosModules = {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
multiplier = 5;
|
||||
};
|
||||
font = {
|
||||
size = 14;
|
||||
size = 10;
|
||||
normal = {
|
||||
family = "0xProto Nerd Font Mono";
|
||||
style = "Regular";
|
||||
@@ -25,6 +25,9 @@
|
||||
window = {
|
||||
opacity = 0.8;
|
||||
};
|
||||
terminal = {
|
||||
shell = "${pkgs.zsh}/bin/zsh";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,7 +9,9 @@ in
|
||||
./cads.nix
|
||||
./cmd_tools.nix
|
||||
./i3.nix
|
||||
./i3status.nix
|
||||
./media.nix
|
||||
./picom.nix
|
||||
./tmux.nix
|
||||
./vim.nix
|
||||
./zed.nix
|
||||
|
||||
82
home/i3.nix
82
home/i3.nix
@@ -1,6 +1,6 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
modKey = "Mod1";
|
||||
modKey = "Mod4";
|
||||
UP = "k";
|
||||
DOWN = "j";
|
||||
LEFT = "h";
|
||||
@@ -10,75 +10,10 @@ let
|
||||
EXIT = "i3-nagbar -t warning -m 'Exit i3?' -B 'Yes' 'i3-msg exit'";
|
||||
in
|
||||
{
|
||||
programs.i3status = {
|
||||
enable = true;
|
||||
general = {
|
||||
output_format = "i3bar";
|
||||
interval = 1;
|
||||
colors = true;
|
||||
color_separator = "#FFFFFF";
|
||||
color_good = "#00FF00";
|
||||
color_degraded = "#00FFFF";
|
||||
color_bad = "#FF0000";
|
||||
separator = "][";
|
||||
};
|
||||
modules = {
|
||||
"time" = {
|
||||
position = 1;
|
||||
settings = {
|
||||
format = "%Y %m/%d %a | %H:%M:%S";
|
||||
};
|
||||
};
|
||||
"load" = {
|
||||
position = 2;
|
||||
settings = {
|
||||
format = "LD %1min:%5min:%15min";
|
||||
format_above_threshold = "LD H (%1min:%5min)";
|
||||
max_threshold = "0.9";
|
||||
};
|
||||
};
|
||||
"memory" = {
|
||||
position = 3;
|
||||
settings = {
|
||||
memory_used_method = "classical";
|
||||
decimals = "1";
|
||||
unit = "Mi";
|
||||
format = "%available (%used) / %total";
|
||||
format_degraded = "Mem LOW (%available)";
|
||||
threshold_degraded = "10%";
|
||||
threshold_critical = "6.25%";
|
||||
};
|
||||
};
|
||||
"disk /" = {
|
||||
position = 4;
|
||||
settings = {
|
||||
prefix_type = "decimal";
|
||||
format = "/ %percentage_used";
|
||||
};
|
||||
};
|
||||
"volume master" = {
|
||||
position = 5;
|
||||
settings = {
|
||||
format = "Vol: %volume";
|
||||
format_muted = "Vol: Muted (%volume)";
|
||||
device = "pulse:1";
|
||||
};
|
||||
};
|
||||
"wireless _first_" = {
|
||||
position = 6;
|
||||
settings = {
|
||||
format_up = "W: (%quality @ %essid w/ %bitrate) %ip";
|
||||
format_down = "W: down";
|
||||
format_bitrate = "%g %cb/s";
|
||||
format_quality = "%03d%s";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
xsession.windowManager.i3 = {
|
||||
enable = true;
|
||||
config = {
|
||||
defaultWorkspace = ''workspace number "1"'';
|
||||
modifier = modKey;
|
||||
menu = MENU;
|
||||
terminal = TERM;
|
||||
@@ -88,6 +23,9 @@ in
|
||||
smartGaps = true;
|
||||
inner = 10;
|
||||
};
|
||||
startup = [
|
||||
{ command = "fcitx5 -r"; always = true; notification = false; }
|
||||
];
|
||||
modes = {
|
||||
resize = {
|
||||
"${UP}" = "resize shrink height 10 px or 10 ppt";
|
||||
@@ -114,9 +52,10 @@ in
|
||||
"${modKey}+f" = "fullscreen toggle";
|
||||
"${modKey}+s" = "layout stacking";
|
||||
"${modKey}+w" = "layout tabbed";
|
||||
"${modKey}+e" = "layout split";
|
||||
"${modKey}+e" = "layout toggle split";
|
||||
"${modKey}+Shift+space" = "floating toggle";
|
||||
"${modKey}+space" = "focus mode_toggle";
|
||||
"${modKey}+minus" = "scratchpad show";
|
||||
"${modKey}+Shift+minus" = "move scratchpad";
|
||||
"${modKey}+n" = "workspace next";
|
||||
"${modKey}+p" = "workspace prev";
|
||||
@@ -144,8 +83,15 @@ in
|
||||
"${modKey}+Shift+8" = ''move container to workspace number "8"'';
|
||||
"${modKey}+Shift+9" = ''move container to workspace number "9"'';
|
||||
"${modKey}+Shift+0" = ''move container to workspace number "10"'';
|
||||
"XF86AudioRaiseVolume" = ''exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5%'';
|
||||
"XF86AudioLowerVolume" = ''exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5%'';
|
||||
"XF86AudioMute" = ''exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
rofi
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
83
home/i3status.nix
Normal file
83
home/i3status.nix
Normal file
@@ -0,0 +1,83 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
inherit (builtins) listToAttrs;
|
||||
inherit (lib.lists) imap1 forEach reverseList elemAt;
|
||||
modules = [
|
||||
{
|
||||
name = "time";
|
||||
settings = {
|
||||
format = "%Y %m/%d %a | %H:%M:%S";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "load";
|
||||
settings = {
|
||||
format = "LD %1min:%5min:%15min";
|
||||
format_above_threshold = "LD H (%1min:%5min)";
|
||||
max_threshold = "4.9";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "memory";
|
||||
settings = {
|
||||
memory_used_method = "classical";
|
||||
decimals = "1";
|
||||
unit = "Mi";
|
||||
format = "%available (%used) / %total";
|
||||
format_degraded = "Mem LOW (%available)";
|
||||
threshold_degraded = "10%";
|
||||
threshold_critical = "6.25%";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "disk /";
|
||||
settings = {
|
||||
prefix_type = "decimal";
|
||||
format = "/ %percentage_used";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "volume master";
|
||||
settings = {
|
||||
format = "Vol: %volume";
|
||||
format_muted = "Vol: Muted (%volume)";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "wireless _first_";
|
||||
settings = {
|
||||
format_up = "W: (%quality @ %essid w/ %bitrate) %ip";
|
||||
format_down = "W: down";
|
||||
format_bitrate = "%g %cb/s";
|
||||
format_quality = "%03d%s";
|
||||
};
|
||||
}
|
||||
];
|
||||
numberedModulesList = imap1 (i: v:
|
||||
v // { position = i; }
|
||||
) (reverseList modules);
|
||||
modNameValList = forEach numberedModulesList (x: {
|
||||
name = x.name;
|
||||
value = {
|
||||
inherit (x) settings position;
|
||||
};
|
||||
});
|
||||
modAttr = listToAttrs modNameValList;
|
||||
in
|
||||
{
|
||||
programs.i3status = {
|
||||
enable = true;
|
||||
enableDefault = false;
|
||||
general = {
|
||||
output_format = "i3bar";
|
||||
interval = 1;
|
||||
colors = true;
|
||||
color_separator = "#FFFFFF";
|
||||
color_good = "#00FF00";
|
||||
color_degraded = "#00FFFF";
|
||||
color_bad = "#FF0000";
|
||||
separator = "|";
|
||||
};
|
||||
modules = modAttr;
|
||||
};
|
||||
}
|
||||
18
home/picom.nix
Normal file
18
home/picom.nix
Normal file
@@ -0,0 +1,18 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
services.picom = {
|
||||
enable = true;
|
||||
backend = "egl";
|
||||
fade = true;
|
||||
fadeDelta = 5;
|
||||
fadeExclude = [
|
||||
"window_type *= 'menu'"
|
||||
"focused = 1"
|
||||
];
|
||||
inactiveOpacity = 0.9;
|
||||
shadow = true;
|
||||
shadowExclude = [
|
||||
"focused = 1"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -10,5 +10,6 @@
|
||||
disableConfirmationPrompt = false;
|
||||
customPaneNavigationAndResize = true;
|
||||
terminal = "tmux-direct";
|
||||
shell = "${pkgs.zsh}/bin/zsh";
|
||||
};
|
||||
}
|
||||
|
||||
10
home/zsh.nix
10
home/zsh.nix
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
@@ -9,6 +9,12 @@
|
||||
size = 100;
|
||||
};
|
||||
syntaxHighlighting.enable = true;
|
||||
defaultKeymap = "vicmd";
|
||||
initContent = let
|
||||
prependCfg = lib.mkOrder 500 "";
|
||||
appendCfg = lib.mkOrder 1500 ''
|
||||
bindkey -v
|
||||
'';
|
||||
in
|
||||
lib.mkMerge [ prependCfg appendCfg ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
@@ -35,9 +34,22 @@
|
||||
spiceUSBRedirection.enable = true;
|
||||
};
|
||||
|
||||
services.ollama = {
|
||||
enable = true;
|
||||
acceleration = "rocm";
|
||||
package = pkgs.unstable.ollama-rocm;
|
||||
};
|
||||
services.open-webui = {
|
||||
enable = true;
|
||||
port = 11111;
|
||||
package = pkgs.unstable.open-webui;
|
||||
};
|
||||
|
||||
services.fprintd.enable = true;
|
||||
|
||||
services.xserver.windowManager.i3.enable = true;
|
||||
services.xserver.resolutions = [ {x = 2560; y = 1600; } ];
|
||||
services.xserver.dpi = lib.mkForce 108;
|
||||
services.desktopManager.gnome.enable = true;
|
||||
services.gnome = {
|
||||
core-apps.enable = false;
|
||||
@@ -51,36 +63,12 @@
|
||||
|
||||
services.flatpak.enable = true;
|
||||
xdg.portal.extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-gnome
|
||||
xdg-desktop-portal-xapp
|
||||
kdePackages.xdg-desktop-portal-kde
|
||||
];
|
||||
|
||||
fonts = {
|
||||
fontDir.enable = true;
|
||||
fontconfig = {
|
||||
defaultFonts = {
|
||||
emoji = [ "Noto Color Emoji" ];
|
||||
monospace = [ "Moralerspace Argon" ];
|
||||
sansSerif = [ "Noto Sans" ];
|
||||
serif = [ "Noto Serif" ];
|
||||
};
|
||||
};
|
||||
packages = with pkgs; [
|
||||
nerd-fonts._0xproto
|
||||
nerd-fonts.fira-code
|
||||
moralerspace
|
||||
gyre-fonts
|
||||
ipafont
|
||||
jigmo
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts-cjk-serif
|
||||
corefonts
|
||||
noto-fonts-color-emoji
|
||||
];
|
||||
};
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
#extest.enable = true;
|
||||
@@ -95,20 +83,26 @@
|
||||
vim
|
||||
tmux
|
||||
saleae-logic-2
|
||||
my-ricing-assets
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-gnome
|
||||
xdg-desktop-portal-xapp
|
||||
kdePackages.xdg-desktop-portal-kde
|
||||
]) ++ (with pkgs.gnomeExtensions; [
|
||||
kiwi-menu
|
||||
blur-my-shell
|
||||
forge
|
||||
vibe-panel
|
||||
dash-to-dock
|
||||
]);
|
||||
|
||||
environment.variables = {
|
||||
MY_RICING_ASSETS_PATH = "${pkgs.my-ricing-assets}/";
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
networking.hostName = "wakugumi-hitoroku";
|
||||
networking.firewall.enable = true;
|
||||
|
||||
system.stateVersion = "25.11";
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,12 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{ config, pkgs, lib, inputs, ... }:
|
||||
{
|
||||
nixpkgs.overlays = [];
|
||||
nixpkgs.overlays = [
|
||||
(final: _: {
|
||||
unstable = import inputs.nixpkgs-unstable {
|
||||
inherit (final.stdenv.hostPlatform) system;
|
||||
inherit (final) config;
|
||||
};
|
||||
})
|
||||
inputs.my-ricing-assets.overlays.x86_64-linux.default
|
||||
];
|
||||
}
|
||||
|
||||
@@ -43,21 +43,66 @@
|
||||
programs.nix-ld = {
|
||||
enable = true;
|
||||
libraries = with pkgs; [
|
||||
SDL
|
||||
SDL2_image
|
||||
acl
|
||||
atk
|
||||
attr
|
||||
bzip2
|
||||
cairo
|
||||
cups
|
||||
curl
|
||||
dbus
|
||||
dbus-glib
|
||||
e2fsprogs
|
||||
ffmpeg
|
||||
flac
|
||||
fontconfig
|
||||
fuse
|
||||
glew
|
||||
glib
|
||||
gtk2
|
||||
gtk3
|
||||
icu
|
||||
libGL
|
||||
libcap
|
||||
libcxx
|
||||
libelf
|
||||
libjpeg
|
||||
libnotify
|
||||
libpng
|
||||
libsodium
|
||||
libssh
|
||||
libtiff
|
||||
libusb1
|
||||
libxkbcommon
|
||||
libxml2
|
||||
nss
|
||||
openssl
|
||||
pango
|
||||
stdenv.cc.cc
|
||||
systemd
|
||||
util-linux
|
||||
xorg.libICE
|
||||
xorg.libSM
|
||||
xorg.libX11
|
||||
xorg.libXcomposite
|
||||
xorg.libXcursor
|
||||
xorg.libXdamage
|
||||
xorg.libXext
|
||||
xorg.libXfixes
|
||||
xorg.libXi
|
||||
xorg.libXmu
|
||||
xorg.libXrandr
|
||||
xorg.libXrender
|
||||
xorg.libXt
|
||||
xorg.libXtst
|
||||
xorg.libXxf86vm
|
||||
xorg.libxcb
|
||||
xorg.libxshmfence
|
||||
xz
|
||||
zlib
|
||||
zstd
|
||||
stdenv.cc.cc
|
||||
curl
|
||||
openssl
|
||||
attr
|
||||
libssh
|
||||
bzip2
|
||||
libxml2
|
||||
acl
|
||||
libsodium
|
||||
util-linux
|
||||
xz
|
||||
systemd
|
||||
ffmpeg
|
||||
];
|
||||
};
|
||||
|
||||
@@ -89,5 +134,7 @@
|
||||
fastfetch
|
||||
stow
|
||||
yubikey-manager
|
||||
alsa-utils
|
||||
pulseaudio
|
||||
];
|
||||
}
|
||||
|
||||
@@ -17,11 +17,7 @@
|
||||
xkb = {
|
||||
layout = "us";
|
||||
};
|
||||
resolutions = [
|
||||
{ x = 1920; y = 1080; }
|
||||
{ x = 2560; y = 1600; }
|
||||
];
|
||||
dpi = 96;
|
||||
dpi = lib.mkDefault 96;
|
||||
displayManager.lightdm = {
|
||||
enable = true;
|
||||
greeters.gtk = {
|
||||
@@ -30,6 +26,31 @@
|
||||
};
|
||||
};
|
||||
|
||||
fonts = {
|
||||
fontDir.enable = true;
|
||||
fontconfig = {
|
||||
defaultFonts = {
|
||||
emoji = [ "Noto Color Emoji" ];
|
||||
monospace = [ "Moralerspace Argon" ];
|
||||
sansSerif = [ "Noto Sans" ];
|
||||
serif = [ "Noto Serif" ];
|
||||
};
|
||||
};
|
||||
packages = with pkgs; [
|
||||
nerd-fonts._0xproto
|
||||
nerd-fonts.fira-code
|
||||
moralerspace
|
||||
gyre-fonts
|
||||
ipafont
|
||||
jigmo
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts-cjk-serif
|
||||
corefonts
|
||||
noto-fonts-color-emoji
|
||||
];
|
||||
};
|
||||
|
||||
services.libinput = lib.mkDefault {
|
||||
enable = true;
|
||||
touchpad = {
|
||||
@@ -45,6 +66,8 @@
|
||||
enable = true;
|
||||
};
|
||||
|
||||
security.polkit.enable = true;
|
||||
|
||||
environment.systemPackages = (with pkgs; [
|
||||
alacritty
|
||||
xfe
|
||||
@@ -57,6 +80,7 @@
|
||||
kdePackages.spectacle
|
||||
kdePackages.gwenview
|
||||
kdePackages.okular
|
||||
fontconfig
|
||||
]) ++ (with pkgs.skkDictionaries; [
|
||||
l
|
||||
emoji
|
||||
|
||||
Reference in New Issue
Block a user