Compare commits
No commits in common. "7203fc1ed9892276681c661f0b212f74cf2146f8" and "482462c8baeb40be990218e8fa1c94c84c8aa7f6" have entirely different histories.
7203fc1ed9
...
482462c8ba
44
flake.lock
44
flake.lock
|
@ -31,11 +31,11 @@
|
||||||
"pre-commit-hooks": "pre-commit-hooks"
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726360516,
|
"lastModified": 1722597419,
|
||||||
"narHash": "sha256-PcnbNb6SFg/y1zE36vRdhuWd50nLM4Hu2DKmtsrLHmA=",
|
"narHash": "sha256-YbMzll0Dh2ln/TryDP+S3IGm8nRHkzcSQIubI4ZEOAw=",
|
||||||
"owner": "oddlama",
|
"owner": "oddlama",
|
||||||
"repo": "agenix-rekey",
|
"repo": "agenix-rekey",
|
||||||
"rev": "524425f44b1f9717bfabf483ec9c990c3712e6df",
|
"rev": "126b4a5133eb361cbf5bf90e44c71b6f830845ec",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -52,11 +52,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724087918,
|
"lastModified": 1723059122,
|
||||||
"narHash": "sha256-aRBnAwJAQUPAGoPijHavx5ML5VJJh9+ub3v2+ebaUSQ=",
|
"narHash": "sha256-sbfMRAe3SgRrPtkbsDzyA1voSUCmlQo52+DuUyLDrJA=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "6b6338280dce0c183c0d3ea964cd981e6bf10734",
|
"rev": "77bbc1bdd5aac087d061500f3660fa1abe5e77be",
|
||||||
"revCount": 20,
|
"revCount": 15,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://codeberg.org/kampka/nix-flake-crowdsec.git"
|
"url": "https://codeberg.org/kampka/nix-flake-crowdsec.git"
|
||||||
},
|
},
|
||||||
|
@ -394,11 +394,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726592409,
|
"lastModified": 1720042825,
|
||||||
"narHash": "sha256-2Y6CDvD/BD43WLS77PHu6dUHbdUfFhuzkY8oJAecD/U=",
|
"narHash": "sha256-A0vrUB6x82/jvf17qPCpxaM+ulJnD8YZwH9Ci0BsAzE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "2ab00f89dd3ecf8012f5090e6d7ca1a7ea30f594",
|
"rev": "e1391fb22e18a36f57e6999c7a9f966dc80ac073",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -432,11 +432,11 @@
|
||||||
},
|
},
|
||||||
"impermanence": {
|
"impermanence": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725690722,
|
"lastModified": 1719091691,
|
||||||
"narHash": "sha256-4qWg9sNh5g1qPGO6d/GV2ktY+eDikkBTbWSg5/iD2nY=",
|
"narHash": "sha256-AxaLX5cBEcGtE02PeGsfscSb/fWMnyS7zMWBXQWDKbE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "impermanence",
|
"repo": "impermanence",
|
||||||
"rev": "63f4d0443e32b0dd7189001ee1894066765d18a5",
|
"rev": "23c1f06316b67cb5dabdfe2973da3785cfe9c34a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -474,11 +474,11 @@
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726623680,
|
"lastModified": 1723253776,
|
||||||
"narHash": "sha256-Bs2e9TTkAyxvKGczPEYZpujdW1WtASenB/y4ML6OsRs=",
|
"narHash": "sha256-EIChmYD+Wp2558uJLoQw3dFNRAYmS0u/r1KPlNagpWw=",
|
||||||
"owner": "Infinidoge",
|
"owner": "Infinidoge",
|
||||||
"repo": "nix-minecraft",
|
"repo": "nix-minecraft",
|
||||||
"rev": "8777196210cdd759a05eefee3f6ec27a2a784403",
|
"rev": "3b93cd39408aaef0ce9db7261f779e021fb95aae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -533,11 +533,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726463316,
|
"lastModified": 1723175592,
|
||||||
"narHash": "sha256-gI9kkaH0ZjakJOKrdjaI/VbaMEo9qBbSUl93DnU7f4c=",
|
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172",
|
"rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -565,11 +565,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726447378,
|
"lastModified": 1722987190,
|
||||||
"narHash": "sha256-2yV8nmYE1p9lfmLHhOCbYwQC/W8WYfGQABoGzJOb1JQ=",
|
"narHash": "sha256-68hmex5efCiM2aZlAAEcQgmFI4ZwWt8a80vOeB/5w3A=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "086b448a5d54fd117f4dc2dee55c9f0ff461bdc1",
|
"rev": "21cc704b5e918c5fbf4f9fff22b4ac2681706d90",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -1,10 +1,14 @@
|
||||||
{...}: {
|
{pkgs, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./git.nix
|
./git.nix
|
||||||
./nvim.nix
|
./nvim.nix
|
||||||
./zsh.nix
|
./zsh.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
lazygit
|
||||||
|
];
|
||||||
|
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
matchBlocks."viridian" = {
|
matchBlocks."viridian" = {
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{...}: {
|
{pkgs, ...}: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
lazygit
|
||||||
|
];
|
||||||
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "jasmine";
|
userName = "jasmine";
|
||||||
|
|
|
@ -5,19 +5,19 @@
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./discord
|
./discord
|
||||||
./dunst
|
|
||||||
./email
|
|
||||||
./irc
|
|
||||||
./mpd
|
|
||||||
./picom
|
|
||||||
./rofi
|
./rofi
|
||||||
./wezterm
|
./wezterm
|
||||||
|
|
||||||
|
./email.nix
|
||||||
|
./irc.nix
|
||||||
|
./mpd.nix
|
||||||
|
./picom.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
feh
|
feh
|
||||||
xmobar # custom build using xmobar-config
|
xmobar
|
||||||
xmonad # custom build using xmonad-config
|
xmonad
|
||||||
];
|
];
|
||||||
|
|
||||||
home.file = {
|
home.file = {
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
{...}: {
|
|
||||||
services.dunst = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
global = {
|
|
||||||
width = 300;
|
|
||||||
height = 300;
|
|
||||||
origin = "top-right";
|
|
||||||
offset = "20x20";
|
|
||||||
frame_width = 5;
|
|
||||||
frame_color = "#282828";
|
|
||||||
corner_radius = 10;
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_low = {
|
|
||||||
background = "#1d2021";
|
|
||||||
foreground = "#d4be98";
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_normal = {
|
|
||||||
background = "#1d2021";
|
|
||||||
foreground = "#d4be98";
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_critical = {
|
|
||||||
background = "#1d2021";
|
|
||||||
foreground = "#d4be98";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,5 +1,5 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs.unstable; [
|
||||||
wezterm
|
wezterm
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -6,9 +6,6 @@ xrandr --output HDMI-A-0 --mode 1920x1080 --output DisplayPort-0 --mode 2560x144
|
||||||
# Apply our wallpaper
|
# Apply our wallpaper
|
||||||
feh --bg-center ~/.repositories/dotfiles.nix/assets/chinatown.png
|
feh --bg-center ~/.repositories/dotfiles.nix/assets/chinatown.png
|
||||||
|
|
||||||
# Start our notification daemon
|
|
||||||
dunst &
|
|
||||||
|
|
||||||
# Enable our compositor
|
# Enable our compositor
|
||||||
picom -b
|
picom -b
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./mangohud
|
./mangohud.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
home = {
|
home = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
unstable.blender
|
blender
|
||||||
freecad # https://discourse.nixos.org/t/error-hash-mismatch-in-fixed-output-derivation/52353
|
freecad
|
||||||
unstable.kicad
|
kicad
|
||||||
unstable.openscad
|
openscad
|
||||||
prusa-slicer # Some error idk fix this later
|
unstable.prusa-slicer
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
age-encryption.org/v1
|
|
||||||
-> ssh-ed25519 KTkZog kwtoXue2ljAqDtAytalA3SPoVfzGmnB7dkyKOTKr1jI
|
|
||||||
NtMmHhdpuCcsfeq2IyUmMBgyKid8qn+y3DPh0ykGq0c
|
|
||||||
-> b#-grease NK 6\>t2sl 1OA
|
|
||||||
ythv/6KoFWwpe2Wpj9MKcdhtdlq43V+lEiG2QF6gE1rj+k38jev00MuQUHfTS9bw
|
|
||||||
Xc6ZydroPWPjqnQkvN4u4kzf4X8
|
|
||||||
--- /HrB0xueHcV6Vc3dOdMaGnkMBFIwHSd7E0W2QPVTsKM
|
|
||||||
ùÖ{^?{m’iÑ…ýÑ9<C391>–Y墓ÊHYr¢7º§ÌT=”ÿ*0wð)î1C°+ÓÖ
|
|
|
@ -2,23 +2,15 @@
|
||||||
imports = [
|
imports = [
|
||||||
# Global configuartion for all our systems
|
# Global configuartion for all our systems
|
||||||
../common/global
|
../common/global
|
||||||
|
|
||||||
# Our user configuration and optional user units
|
# Our user configuration and optional user units
|
||||||
../common/users/sajenim
|
../common/users/sajenim
|
||||||
../common/users/sajenim/samba
|
../common/users/sajenim/samba
|
||||||
../common/users/sajenim/steam
|
../common/users/sajenim/steam
|
||||||
|
|
||||||
# Optional components
|
# Optional components
|
||||||
../common/optional/yubikey.nix
|
../common/optional/key.nix
|
||||||
|
# Programs and services
|
||||||
# Services
|
./programs
|
||||||
./services/amdgpu-clocks
|
./services
|
||||||
./services/flatpak
|
|
||||||
./services/libinput
|
|
||||||
./services/printers
|
|
||||||
./services/udev
|
|
||||||
./services/xserver
|
|
||||||
|
|
||||||
# Setup our hardware
|
# Setup our hardware
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
@ -29,22 +21,7 @@
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Configure programs
|
# Use docker instead of podman for our containers.
|
||||||
programs = {
|
|
||||||
zsh.enable = true;
|
|
||||||
# Load and unload environment variables.
|
|
||||||
direnv.enable = true;
|
|
||||||
# Android debug bridge: communicate with devices.
|
|
||||||
adb.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Configure services
|
|
||||||
services = {
|
|
||||||
# Access smart cards using SCard API
|
|
||||||
pcscd.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Manage linux containers
|
|
||||||
virtualisation.docker = {
|
virtualisation.docker = {
|
||||||
enable = true;
|
enable = true;
|
||||||
liveRestore = false;
|
liveRestore = false;
|
||||||
|
|
9
nixos/fuchsia/programs/default.nix
Normal file
9
nixos/fuchsia/programs/default.nix
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{...}: {
|
||||||
|
programs = {
|
||||||
|
zsh.enable = true;
|
||||||
|
# Load and unload environment variables.
|
||||||
|
direnv.enable = true;
|
||||||
|
# Android debug bridge: communicate with devices.
|
||||||
|
adb.enable = true;
|
||||||
|
};
|
||||||
|
}
|
15
nixos/fuchsia/services/default.nix
Normal file
15
nixos/fuchsia/services/default.nix
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./printer
|
||||||
|
./amdgpu-clocks.nix
|
||||||
|
./flatpak.nix
|
||||||
|
./libinput.nix
|
||||||
|
./udev.nix
|
||||||
|
./xserver.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# Enable a few extra services.
|
||||||
|
services = {
|
||||||
|
pcscd.enable = true;
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,37 +2,13 @@
|
||||||
imports = [
|
imports = [
|
||||||
# Global configuration for all our systems
|
# Global configuration for all our systems
|
||||||
../common/global
|
../common/global
|
||||||
|
|
||||||
# Our user configuration and optional user units
|
# Our user configuration and optional user units
|
||||||
../common/users/sajenim
|
../common/users/sajenim
|
||||||
../common/users/spectre
|
../common/users/spectre
|
||||||
|
# Programs and services
|
||||||
# Containers
|
./programs
|
||||||
./containers/jellyfin
|
./services
|
||||||
./containers/jellyseerr
|
./containers
|
||||||
./containers/lidarr
|
|
||||||
./containers/mealie
|
|
||||||
./containers/microbin
|
|
||||||
./containers/prowlarr
|
|
||||||
./containers/qbittorrent
|
|
||||||
./containers/radarr
|
|
||||||
./containers/recyclarr
|
|
||||||
./containers/sonarr
|
|
||||||
|
|
||||||
# Services
|
|
||||||
./services/borgbackup
|
|
||||||
./services/crowdsec
|
|
||||||
./services/forgejo
|
|
||||||
./services/grafana
|
|
||||||
./services/lighttpd
|
|
||||||
./services/minecraft
|
|
||||||
./services/mpd
|
|
||||||
./services/mysql
|
|
||||||
./services/paperless-ngx
|
|
||||||
./services/prometheus
|
|
||||||
./services/samba
|
|
||||||
./services/traefik
|
|
||||||
|
|
||||||
# Setup our hardware
|
# Setup our hardware
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
@ -45,26 +21,26 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
allowPing = true;
|
allowPing = true;
|
||||||
allowedTCPPorts = [
|
allowedTCPPorts = [
|
||||||
80
|
53 # adguardhome (DNS)
|
||||||
443
|
80 # traefik (HTTP)
|
||||||
6600
|
443 # traefik (HTTPS)
|
||||||
|
32372 # qbittorrent
|
||||||
|
6600 # mpd
|
||||||
|
];
|
||||||
|
allowedUDPPorts = [
|
||||||
|
53 # adguardhome (DNS)
|
||||||
|
80 # traefik (HTTP)
|
||||||
|
443 # traefik (HTTPS)
|
||||||
|
32372 # qbittorrent
|
||||||
|
6600 # mpd
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Configure programs
|
# Use docker instead of podman for our containers.
|
||||||
programs = {
|
virtualisation.docker = {
|
||||||
zsh.enable = true;
|
enable = true;
|
||||||
};
|
liveRestore = false;
|
||||||
|
|
||||||
# Manage linux containers
|
|
||||||
virtualisation = {
|
|
||||||
docker = {
|
|
||||||
enable = true;
|
|
||||||
liveRestore = false;
|
|
||||||
};
|
|
||||||
# Implementation to use for containers
|
|
||||||
oci-containers.backend = "docker";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Required for smooth remote deployments
|
# Required for smooth remote deployments
|
||||||
|
|
15
nixos/viridian/containers/default.nix
Normal file
15
nixos/viridian/containers/default.nix
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./jellyfin.nix
|
||||||
|
./jellyseerr.nix
|
||||||
|
./lidarr.nix
|
||||||
|
./prowlarr.nix
|
||||||
|
./qbittorrent.nix
|
||||||
|
./radarr.nix
|
||||||
|
./recyclarr.nix
|
||||||
|
./sonarr.nix
|
||||||
|
./mealie.nix
|
||||||
|
./microbin
|
||||||
|
];
|
||||||
|
virtualisation.oci-containers.backend = "docker";
|
||||||
|
}
|
5
nixos/viridian/programs/default.nix
Normal file
5
nixos/viridian/programs/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{...}: {
|
||||||
|
programs = {
|
||||||
|
zsh.enable = true;
|
||||||
|
};
|
||||||
|
}
|
15
nixos/viridian/services/default.nix
Normal file
15
nixos/viridian/services/default.nix
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./traefik
|
||||||
|
./crowdsec
|
||||||
|
./minecraft
|
||||||
|
./borgbackup.nix
|
||||||
|
./forgejo.nix
|
||||||
|
./lighttpd.nix
|
||||||
|
./mpd.nix
|
||||||
|
./samba.nix
|
||||||
|
./grafana.nix
|
||||||
|
./mysql.nix
|
||||||
|
./prometheus.nix
|
||||||
|
];
|
||||||
|
}
|
|
@ -1,37 +0,0 @@
|
||||||
{config, ...}: let
|
|
||||||
dir = "/srv/services/paperless-ngx";
|
|
||||||
in {
|
|
||||||
age.secrets.paperless-ngx = {
|
|
||||||
rekeyFile = ./password.age;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.paperless = {
|
|
||||||
enable = true;
|
|
||||||
port = 28981;
|
|
||||||
dataDir = "${dir}";
|
|
||||||
mediaDir = "${dir}/media";
|
|
||||||
settings = {
|
|
||||||
PAPERLESS_ADMIN_USER = "sajenim";
|
|
||||||
};
|
|
||||||
passwordFile = config.age.secrets.paperless-ngx.path;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.traefik.dynamicConfigOptions.http.routers = {
|
|
||||||
paperless-ngx = {
|
|
||||||
rule = "Host(`docs.kanto.dev`)";
|
|
||||||
entryPoints = [
|
|
||||||
"websecure"
|
|
||||||
];
|
|
||||||
middlewares = [
|
|
||||||
"internal"
|
|
||||||
];
|
|
||||||
service = "paperless-ngx";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.traefik.dynamicConfigOptions.http.services = {
|
|
||||||
paperless-ngx.loadBalancer.servers = [
|
|
||||||
{url = "http://127.0.0.1:${toString config.services.paperless.port}";}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
age-encryption.org/v1
|
|
||||||
-> piv-p256 hdSnGw A4P0oT5qK/bG8ieEixFW/SCouhantxg3dSjiGG1MEuns
|
|
||||||
cDorIZ44RmsUsiiybnr1y8WZtv/3kFPi86QkpGURqTY
|
|
||||||
-> FNP4c-grease
|
|
||||||
LThbpY1sc7XzQgputWt3ULuLwemBilYrOEZMTAj+/xkxyQg5HwSIhBS1XYzvMc2K
|
|
||||||
ld/o3JfDaXVLEz0Vk59TClXeOGITp7Ki
|
|
||||||
--- 572BrDug9qmAG7G0mC5bOZ/h1UD4y2m1ceDhy1qQh3U
|
|
||||||
/›¬vØ‘k)Ùëh’Œ ˆ™æûËÇx^QyAeK}låÆg~¯k> l*p
|
|
Loading…
Reference in a new issue