Compare commits

...

12 commits

Author SHA1 Message Date
tx0 0d25462616 some changes 2025-03-14 18:19:04 +05:00
tx0 f0529eed85 switch to home-manager module 2025-03-12 21:24:24 +05:00
tx0 fc4f825cc3 some changes 2025-03-11 17:24:58 +05:00
tx0 126586c4ad some changes 2025-03-09 16:39:28 +05:00
tx0 9bd0699564 some changes 2025-03-09 14:18:19 +05:00
tx0 4e6b81cb16 some changes 2025-03-08 18:55:40 +05:00
tx0 3bc77e4703 some changes 2025-03-08 13:19:34 +05:00
tx0 a16c620a1f some changes 2025-03-08 11:36:50 +05:00
tx0 ad750ec7a9 some changes 2025-03-08 10:30:01 +05:00
tx0 5d867a0459 some changes 2025-03-08 10:28:08 +05:00
tx0 71cf771514 some changes 2025-03-08 10:24:04 +05:00
tx0 3bf888f7c8 some changes 2025-03-07 17:55:45 +05:00
21 changed files with 171 additions and 88 deletions

View file

@ -846,29 +846,13 @@
"url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
} }
}, },
"nixpkgs-master": {
"locked": {
"lastModified": 1738943717,
"narHash": "sha256-KabzClxx6dREJyxZ+gffuBL1us/ZOcFJ8ZjgNtlM6yU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "a503a26038e1f3e868bb67269c1e96d169de1374",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "master",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1738940519, "lastModified": 1741951773,
"narHash": "sha256-WXGiqZn8u+ynRzIywjwF6eVR38DSVvQCVqjZ6sHQMe8=", "narHash": "sha256-OGEqTkGdx9MUENEPwU3NSKHECKt0ObW3GaD8L9zgMSw=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b30cff4b9ac9dcf891534791fc92f2f425a80454", "rev": "b5a00ebfb32ff0480ad90a213cfed6938ef04920",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -3838,7 +3822,6 @@
"hyprland": "hyprland", "hyprland": "hyprland",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-master": "nixpkgs-master",
"nixpkgs-stable": "nixpkgs-stable", "nixpkgs-stable": "nixpkgs-stable",
"nur": "nur", "nur": "nur",
"nvf": "nvf", "nvf": "nvf",

View file

@ -26,27 +26,30 @@
./hosts/common ./hosts/common
./hosts/earth ./hosts/earth
# universe # universe
]; inputs.home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
backupFileExtension = "hm-old";
users.tx0 = import ./home;
extraSpecialArgs = {inherit system inputs u;};
}; };
homeConfigurations.tx0 = inputs.home-manager.lib.homeManagerConfiguration { nixpkgs.overlays = [(import ./overlays/spotx.nix)];
pkgs = import inputs.nixpkgs { }
inherit system;
};
extraSpecialArgs = {inherit system inputs u;};
modules = [
./home
./universe.nix
]; ];
}; };
}; };
systems = [system]; systems = [
"x86_64-linux"
"aarch64-linux"
];
}; };
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:nixos/nixpkgs/release-24.11"; nixpkgs-stable.url = "github:nixos/nixpkgs/release-24.11";
nixpkgs-master.url = "github:nixos/nixpkgs/master";
nur = { nur = {
url = "github:nix-community/NUR"; url = "github:nix-community/NUR";

View file

@ -1,14 +1,10 @@
{ {config, ...}: {
pkgs,
config,
...
}: {
home = { home = {
username = "tx0"; username = "tx0";
homeDirectory = "/home/tx0"; homeDirectory = "/home/tx0";
stateVersion = "24.11"; stateVersion = "24.11";
sessionVariables = { sessionVariables = {
EDITOR = "${config.home.homeDirectory}/.nix-profile/bin/nvim"; EDITOR = "nvim";
HYPRSHOT_DIR = "${config.home.homeDirectory}/Pictures/Screenshots/"; HYPRSHOT_DIR = "${config.home.homeDirectory}/Pictures/Screenshots/";
FLAKE = "${config.home.homeDirectory}/universe/"; FLAKE = "${config.home.homeDirectory}/universe/";
NIXOS_OZONE_WL = 1; NIXOS_OZONE_WL = 1;

View file

@ -75,6 +75,14 @@ in {
}; };
binds.whichKey.enable = true; binds.whichKey.enable = true;
keymaps = [
{
key = "<leader>e";
mode = "n";
silent = true;
action = "<cmd>Neotree filesystem toggle left<CR>";
}
];
treesitter.context.enable = false; treesitter.context.enable = false;
@ -97,6 +105,20 @@ in {
css.enable = true; css.enable = true;
html.enable = true; html.enable = true;
lua.enable = true; lua.enable = true;
ts = {
enable = true;
format.enable = true;
};
};
filetree.neo-tree = {
enable = true;
setupOpts = {
enableCursorhijack = true;
enable_git_status = true;
git_status_async = true;
open_files_in_last_window = true;
};
}; };
lazy.plugins = { lazy.plugins = {

View file

@ -1,6 +1,6 @@
{pkgs, ...}: { {pkgs, ...}: {
services.udiskie = { services.udiskie = {
enable = false; enable = true;
settings = { settings = {
program_options = { program_options = {
file_manager = "${pkgs.nautilus}/bin/nautilus"; file_manager = "${pkgs.nautilus}/bin/nautilus";

View file

@ -1,34 +0,0 @@
{
inputs,
config,
pkgs,
...
}: {
nix = {
package = pkgs.nix;
nixPath = ["nixpkgs=${inputs.nixpkgs}"];
settings = {
extra-substituters = [
"https://cache.garnix.io"
"https://nix-community.cachix.org"
"https://cache.nixos.org/"
"https://hyprland.cachix.org"
];
extra-trusted-public-keys = [
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
];
builders-use-substitutes = true;
auto-optimise-store = true;
trusted-users = [
config.home.username
"root"
"@wheel"
];
warn-dirty = false;
extra-experimental-features = ["nix-command" "flakes"];
};
};
}

View file

@ -1,9 +0,0 @@
{...}: {
nixpkgs.config = {
allowUnfree = true;
allowBroken = true;
allowAliases = true;
allowInsecure = true;
allowUnfreePredicate = _: true;
};
}

View file

@ -9,6 +9,7 @@
# derivations # derivations
(callPackage ./derivations/bunnyfetch {}) (callPackage ./derivations/bunnyfetch {})
(callPackage ./derivations/ubports-installer {})
#fonts #fonts
(google-fonts.override {fonts = ["Poppins" "Inter" "Roboto Mono"];}) (google-fonts.override {fonts = ["Poppins" "Inter" "Roboto Mono"];})
@ -26,6 +27,7 @@
# utilites # utilites
wl-clipboard wl-clipboard
xclip xclip
waypipe
# cli # cli
sops sops
@ -36,6 +38,7 @@
nix-output-monitor nix-output-monitor
eza eza
bat bat
quickemu
distrobox distrobox
#net #net
@ -64,6 +67,10 @@
mate.engrampa mate.engrampa
prismlauncher prismlauncher
inkscape inkscape
pinta
hoppscotch
jetbrains.pycharm-community-bin
spotify
# de # de
hyprpaper hyprpaper
@ -75,7 +82,7 @@
nautilus nautilus
# social # social
telegram-desktop _64gram
inputs.nixpkgs-stable.legacyPackages.${system}.vesktop inputs.nixpkgs-stable.legacyPackages.${system}.vesktop
]; ];
} }

View file

@ -0,0 +1,52 @@
{
lib,
appimageTools,
fetchurl,
makeDesktopItem,
}: let
pname = "ubports-installer";
icon = ./ubports-mascot.png;
desktopItems = [
(makeDesktopItem {
name = pname;
inherit icon;
desktopName = "Ubuntu Touch Installer";
genericName = "GUI for installing Ubuntu Touch";
exec = "@out@/bin/ubports-installer";
comment = "GUI for installing Ubuntu Touch";
categories = ["System"];
startupNotify = false;
keywords = ["system" "os" "network" "ubuntu" "touch" "mobile"];
})
];
in
appimageTools.wrapType2 rec {
inherit pname;
version = "0.10.0";
src = fetchurl {
url = "https://github.com/ubports/ubports-installer/releases/download/${version}/ubports-installer_${version}_linux_x86_64.AppImage";
hash = "sha256-RmSim4dJMCQsw+lFN17dhuL5AqfHNLyiDYQtzO5gymU=";
};
extraInstallCommands =
lib.concatMapStringsSep "\n "
(e: ''
install -Dm444 -t $out/share/applications ${e}/share/applications/*.desktop
'')
desktopItems
+ ''
install -Dm444 ${icon} $out/share/icons/apps/${pname}.jpg;
for f in $out/share/applications/*.desktop; do
substituteInPlace $f --subst-var out
done
'';
meta = with lib; {
description = "Ubuntu Touch installer";
license = licenses.free;
};
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View file

@ -20,7 +20,14 @@ in {
}; };
base16Scheme = mkOption { base16Scheme = mkOption {
type = types.str; type = with lib.types;
oneOf [
path
lines
attrs
];
default = config.stylix.generated.palette;
}; };
}; };

View file

@ -6,8 +6,9 @@
}; };
theme.stylix = { theme.stylix = {
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-material-dark-medium.yaml"; base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-material-dark-medium.yaml";
wallpapers = ./wallpapers.jpg; # base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
useLutgen = false; wallpapers = ../wallpaper.png;
useLutgen = true;
}; };
}; };
} }

View file

@ -6,7 +6,7 @@
}: { }: {
boot = { boot = {
kernelPackages = pkgs.linuxPackages_zen; kernelPackages = pkgs.linuxPackages_zen;
kernelModules = []; kernelModules = ["i2c-dev" "ddcci_backlight"];
extraModulePackages = with config.boot.kernelPackages; [ extraModulePackages = with config.boot.kernelPackages; [
amneziawg amneziawg
]; ];
@ -17,5 +17,6 @@
loader.efi.canTouchEfiVariables = true; loader.efi.canTouchEfiVariables = true;
binfmt.emulatedSystems = ["aarch64-linux"]; binfmt.emulatedSystems = ["aarch64-linux"];
tmp.useTmpfs = true;
}; };
} }

View file

@ -0,0 +1,5 @@
{...}: {
services.udev.extraRules = ''
KERNEL=="i2c-[0-9]*", GROUP="i2c", MODE="0660"
'';
}

View file

@ -12,7 +12,9 @@
"podman" "podman"
"adbusers" "adbusers"
"kvm" "kvm"
"i2c"
]; ];
uid = 1000;
subGidRanges = [ subGidRanges = [
{ {
count = 65536; count = 65536;
@ -25,7 +27,6 @@
startUid = 100000; startUid = 100000;
} }
]; ];
packages = [];
useDefaultShell = true; useDefaultShell = true;
openssh.authorizedKeys = { openssh.authorizedKeys = {
keys = [ keys = [
@ -35,5 +36,9 @@
}; };
shell = pkgs.fish; shell = pkgs.fish;
}; };
groups = {
adbusers = {};
i2c = {};
};
}; };
} }

View file

@ -0,0 +1,3 @@
{...}: {
virtualisation.libvirtd.enable = true;
}

View file

@ -41,6 +41,11 @@
options = ["compress=zstd" "subvol=@Home"]; options = ["compress=zstd" "subvol=@Home"];
}; };
fileSystems."/mnt/nfs_share" = {
device = "192.168.48.41:/data/nfs_share";
fsType = "nfs";
};
swapDevices = []; swapDevices = [];
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;

36
overlays/spotx.nix Normal file
View file

@ -0,0 +1,36 @@
final: prev: let
spotx = prev.fetchurl {
url = "https://raw.githubusercontent.com/SpotX-Official/SpotX-Bash/21481cea97bac720590c2aad8b1fc2c58c9ec8f9/spotx.sh";
hash = "sha256-1k1sEEnT1SE6RAWrfd1qFY1gFrUVNh7zUQJLu3DODlU=";
};
in {
spotify = prev.spotify.overrideAttrs (old: {
nativeBuildInputs =
old.nativeBuildInputs
++ (with prev; [
util-linux
perl
unzip
zip
curl
]);
unpackPhase =
builtins.replaceStrings ["runHook postUnpack"] [
''
patchShebangs --build ${spotx}
runHook postUnpack
''
]
old.unpackPhase;
installPhase =
builtins.replaceStrings ["runHook postInstall"] [
''
bash ${spotx} -f -P "$out/share/spotify"
runHook postInstall
''
]
old.installPhase;
});
}

BIN
wallpaper.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB