Merge branch 'end-4:main' into songrec

This commit is contained in:
jwihardi
2025-11-04 01:18:17 -05:00
committed by GitHub
6 changed files with 105 additions and 94 deletions
+1
View File
@@ -5,3 +5,4 @@ __pycache__/
*.py[cod]
dots/.config/quickshell/ii/.qmlls.ini
.update-lock
/os-release
+4
View File
@@ -58,6 +58,9 @@ ii_check_venv() {
ii_check_quickshell_version() {
pacman -Q | grep -E 'quickshell|qt6-base'
}
ii_check_PKGBUILD_version() {
pacman -Q | grep '^illogical-impulse-'
}
e "Checking git repo info"
x git remote get-url origin
@@ -88,6 +91,7 @@ x ls -l ~/.local/state/quickshell/.venv
e "Checking versions"
x Hyprland --version
x ii_check_quickshell_version
x ii_check_PKGBUILD_version
e "Finished. Output saved as \"$output_file\"."
if ! command -v curl 2>&1 >>/dev/null ;then echo "\"curl\" not found, pastebin upload unavailable.";exit;fi
+6 -6
View File
@@ -9,17 +9,17 @@
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:hyprwm/Hyprland";
};
#hyprland = {
# url = "github:hyprwm/Hyprland";
#};
nixgl.url = "github:nix-community/nixGL";
quickshell = {
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell?ref=db1777c20b936a86528c1095cbcb1ebd92801402";
url = "github:quickshell-mirror/quickshell/db1777c20b936a86528c1095cbcb1ebd92801402";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { nixpkgs, home-manager, nixgl, ... }:
outputs = { nixpkgs, home-manager, nixgl, quickshell, ... }:
let
home_attrs = rec {
username = import ./username.nix;
@@ -35,7 +35,7 @@
homeConfigurations = {
illogical_impulse = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
extraSpecialArgs = { inherit nixgl home_attrs; };
extraSpecialArgs = { inherit home_attrs nixgl quickshell; };
modules = [
./home.nix
];
+83 -83
View File
@@ -1,4 +1,4 @@
{ config, lib, pkgs, nixgl, home_attrs, ... }:
{ config, lib, pkgs, nixgl, quickshell, home_attrs, ... }:
{
programs.home-manager.enable = true;
nixGL.packages = nixgl.packages;
@@ -10,8 +10,7 @@
xdg-desktop-portal-gnome
xdg-desktop-portal-gtk
xdg-desktop-portal-wlr
libsForQt5.xdg-desktop-portal-kde
#kdePackages.xdg-desktop-portal-kde
kdePackages.xdg-desktop-portal-kde
];
config.hyprland = {
default = [ "hyprland" "gtk" ];
@@ -31,9 +30,7 @@
## inetutils: provides hostname, ifconfig, ping, etc.
## libnotify: provides notify-send
inetutils libnotify
##### Fonts/Icons/Cursors/Decoration #####
fontconfig
foot # Used in Quickshell and Hyprland config; its config is also included
##### Other basic things #####
dbus xorg.xlsclients networkmanager
@@ -48,8 +45,8 @@
lxqt.pavucontrol-qt #pavucontrol-qt (Used in Hyprland and Quickshell config)
wireplumber #wireplumber (not explicitly used)
pipewire #pipewire-pulse (not explicitly used)
libdbusmenu-gtk3 #libdbusmenu-gtk3 (not explicitly used)
playerctl #playerctl (Used in Hyprland and Quickshell config)
libdbusmenu-gtk3 #libdbusmenu-gtk3 (not explicitly used)
playerctl #playerctl (Used in Hyprland and Quickshell config)
### illogical-impulse-backlight
@@ -59,7 +56,7 @@
### illogical-impulse-basic
#axel (Seems not available, however actually not needed cuz it's only used for install Bibata_Cursor in package-installers.sh)
#axel#axel (TODOrm: actually not needed cuz it's only used for install Bibata_Cursor in package-installers.sh)
bc #bc (Used in quickshell/ii/scripts/colors/switchwall.sh for example)
uutils-coreutils-noprefix #coreutils (Too many executables involved, not sure where been used)
cliphist #cliphist (Used in Hyprland and Quickshell config)
@@ -68,71 +65,72 @@
wget #wget (Used in Quickshell config)
ripgrep #ripgrep (Not sure where been used)
jq #jq (Widely used)
#meson (TODO: Actually not needed. It was used in building AGS.)
#meson (TODOrm: Actually not needed. It was used in building AGS.)
xdg-user-dirs #xdg-user-dirs (Used in Hyprland and Quickshell config)
rsync #rsync (Used in install script)
yq-go #go-yq (Used in install script)
### illogical-impulse-bibata-modern-classic-bin
bibata-cursors #https://github.com/ful1e5/Bibata_Cursor
bibata-cursors #https://github.com/ful1e5/Bibata_Cursor (Used in Hyprland config, not necessary)
### illogical-impulse-fonts-themes
#adw-gtk-theme-git
#breeze
#breeze-plus
#darkly-bin
#eza (Used in Fish config: `alias ls 'eza --icons'`; TODO: Not available on search.nixos.org)
adw-gtk3 #adw-gtk-theme-git (https://github.com/lassekongo83/adw-gtk3) (Used in Quickshell config)
kdePackages.breeze kdePackages.breeze-icons #breeze (Used in kdeglobals config)
#breeze-plus (https://github.com/mjkim0727/breeze-plus) (TODO: Not available as nixpkg) (Used in kde-material-you-colors config)
#darkly-bin (TODOrm: seems not being used?)
eza #eza (Used in Fish config: `alias ls 'eza --icons'`)
#fish (Probably should not install via Nix)
fontconfig #fontconfig (Basic thing)
kitty #kitty (Used in fuzzel, Hyprland, kdeglobals and Quickshell config; kitty config is also included as dots)
matugen #matugen-bin (Used in Quickshell)
#otf-space-grotesk https://events.ccc.de/congress/2024/infos/styleguide.html (TODO: Not available on search.nixos.org) (Used in Quickshell and matugen config)
#otf-space-grotesk (https://events.ccc.de/congress/2024/infos/styleguide.html) (TODO: Not available as Nixpkg) (Used in Quickshell and matugen config)
starship #starship (Used in Fish config)
#ttf-gabarito-git
#ttf-jetbrains-mono-nerd
#ttf-material-symbols-variable-git
#ttf-readex-pro
#ttf-roboto-flex
#ttf-rubik-vf
#ttf-twemoji
#ttf-gabarito-git (Font name: Gabarito) (Used in fuzzel and Quickshell config) (TODO: Not available as Nixpkg)
nerd-fonts.jetbrains-mono #ttf-jetbrains-mono-nerd (Font name: JetBrains Mono NF, JetBrainsMono Nerd Font) (Used in foot, kdeglobals, kitty, qt5ct, qt6ct and Quickshell config)
material-symbols #ttf-material-symbols-variable-git (Font name: Material Symbols Rounded, Material Symbols Outlined) (Used in Hyprland, matugen, Quickshell and wlogout config)
#ttf-readex-pro (Font name: Readex Pro) (Used in Quickshell config) (TODO: seems not available as nixpkg)
roboto-flex #ttf-roboto-flex (Font name: Roboto Flex) (Used in Hyprland, matugen and Quickshell config)
rubik #ttf-rubik-vf (Font name: Rubik, Rubik Light) (Used in Hyprland, kdeglobals, matugen, qt5ct, qt6ct and Quickshell config)
twemoji-color-font #ttf-twemoji (Not explicitly used, but it may help as fallback for displaying emoji charaters)
### illogical-impulse-hyprland
#hypridle
#hyprcursor
hypridle #hypridle (Used for loginctl to lock session)
#hyprcursor (TODOrm: Seems not being used?)
#hyprland (Need NixGL, included elsewhere)
#hyprland-qtutils
#hyprland-qt-support
#hyprlang
#hyprlock
#hyprpicker
#hyprsunset
#hyprutils
#hyprwayland-scanner
#xdg-desktop-portal-hyprland
wl-clipboard #wl-clipboard
#hyprland-qtutils (TODOrm: Not needed, it's already a dependency of Hyprland itself, and it's not being used anywhere in this repo)
#hyprland-qt-support (TODOrm: Not needed, it's already a dep of hyprland-qtutils which is a dep of Hyprland, and it's not being used anywhere in this repo)
#hyprlang (TODOrm: Not needed, it's already a dependency of Hyprland, hypridle, etc.)
#hyprlock (Should not be installed via Nix)
hyprpicker #hyprpicker (Used in Hyprland and Quickshell config)
hyprsunset #hyprsunset (Used in Quickshell config)
#hyprutils #hyprutils (TODOrm: Not needed, it's already a dep of Hyprland and not being used anywhere in this repo)
#hyprwayland-scanner (TODOrm: Not needed, it's already a dep of Hyprland and not being used anywhere in this repo)
#xdg-desktop-portal-hyprland (DUPLICATE)
wl-clipboard #wl-clipboard (Surely needed)
### illogical-impulse-kde
#bluedevil
#gnome-keyring
#networkmanager
#plasma-nm
#polkit-kde-agent
#dolphin
#systemsettings
kdePackages.bluedevil #bluedevil (Seems not being used anywhere, maybe a part of KDE settings panel)
#gnome-keyring #gnome-keyring (TODO: Maybe should not be installed by Nix) (Provide executable gnome-keyring-daemon, used in Hyprland and Quickshell config)
networkmanager #networkmanager
kdePackages.plasma-nm #plasma-nm (Seems not being used anywhere, maybe a part of KDE settings panel)
#polkit-kde-agent (TODO: Maybe should not install by Nix)
kdePackages.dolphin #dolphin (Used in Hyprland and Quickshell config)
kdePackages.systemsettings #systemsettings (Used in Hyprland keybinds.conf)
### illogical-impulse-microtex-git
# This package will be installed as /opt/MicroTeX and it
# This package will be installed as /opt/MicroTeX
#MicroTeX#https://github.com/NanoMichael/MicroTeX
# TODO: It seems not available on search.nixos.org
# TODO: Not available as nixpkg
### illogical-impulse-oneui4-icons-git
#OneUI4-Icons#https://github.com/end-4/OneUI4-Icons
# TODO: Custom repo, need to make a package
### illogical-impulse-portal
@@ -143,60 +141,61 @@
### illogical-impulse-python
#clang (Some python package may need this to be built, e.g. #1235) (However it seems not available directly as a package on search.nixos.org)
clang #clang (Some python package may need this to be built, e.g. #1235)
uv #uv (Used for python venv)
#gtk4 (Not explicitly used) (Not directly available as a package on search.nixos.org)
#libadwaita (Not explicitly used) (Not directly available as a package on search.nixos.org)
gtk4 #gtk4 (Not explicitly used)
libadwaita #libadwaita (Not explicitly used)
libsoup_3 #libsoup3 (Not explicitly used)
libportal-gtk4 #libportal-gtk4 (Not explicitly used)
gobject-introspection #gobject-introspection (Not explicitly used)
#sassc (TODO: Not used anymore?)
#sassc (TODOrm: Not used anymore)
### illogical-impulse-quickshell-git
quickshell.packages.x86_64-linux.default
#quickshell.packages.x86_64-linux.default (NixGL applicable, included elsewhere)
### illogical-impulse-screencapture
#hyprshot
#slurp
#swappy
#tesseract
#tesseract-data-eng
#wf-recorder
hyprshot #hyprshot (Used in Hyprland keybinds.conf as fallback)
slurp #slurp (Used in Hyprland and Quickshell config)
swappy #swappy (Used in Quickshell config)
tesseract #tesseract (Used in Quickshell and Hyprland config)
#tesseract-data-eng (Used as data for tesseract) (TODO: Seems not available as nixpkg)
wf-recorder #wf-recorder (Used in Quickshell config)
### illogical-impulse-toolkit
#kdialog
#qt6-5compat
#qt6-avif-image-plugin
#qt6-base
#qt6-declarative
#qt6-imageformats
#qt6-multimedia
#qt6-positioning
#qt6-quicktimeline
#qt6-sensors
#qt6-svg
#qt6-tools
#qt6-translations
#qt6-virtualkeyboard
#qt6-wayland
#syntax-highlighting
#upower
#wtype
#ydotool
kdePackages.kdialog #kdialog (Used in Quickshell config)
# TODO: Deal with qt6 things, see https://nixos.wiki/wiki/Qt
#qt6-5compat (Maybe for some qt support)
#qt6-avif-image-plugin (Maybe for some qt support)
#qt6-base (Maybe for some qt support)
#qt6-declarative (Maybe for some qt support)
#qt6-imageformats (Maybe for some qt support)
#qt6-multimedia (Maybe for some qt support)
#qt6-positioning (Maybe for some qt support)
#qt6-quicktimeline (Maybe for some qt support)
#qt6-sensors (Maybe for some qt support)
#qt6-svg (Maybe for some qt support)
#qt6-tools (Maybe for some qt support)
#qt6-translations (Maybe for some qt support)
#qt6-virtualkeyboard (Maybe for some qt support)
#qt6-wayland (Maybe for some qt support)
kdePackages.syntax-highlighting #syntax-highlighting (Used in Quickshell config)
upower #upower (Used in Quickshell config)
wtype #wtype (Used in Hyprland scripts/fuzzel-emoji.sh)
ydotool #ydotool (Used in Quickshell config)
### illogical-impulse-widgets
#fuzzel
#glib2 # for `gsettings` it seems?
#imagemagick
#hypridle
#hyprutils
#hyprlock
#hyprpicker
#nm-connection-editor (TODO: Not needed?)
fuzzel #fuzzel (Used in Hyprland and Quickshell config; its config is also included)
glib #glib2 (Provide executable gsettings) (Used in install script, also in matugen and quickshell config)
imagemagick #imagemagick (Provide executable: magick) (Used in Quickshell config)
#hypridle (DUPLICATE)
#hyprutils (DUPLICATE)
#hyprlock (DUPLICATE)
#hyprpicker (DUPLICATE)
#nm-connection-editor (TODOrm: Not needed)
songrec #songrec (Used in Quickshell config)
translate-shell #translate-shell (Used in Quickshell config)
wlogout #wlogout (Used in Hyprland config)
@@ -204,6 +203,7 @@
]
++ [
(config.lib.nixGL.wrap pkgs.hyprland)
(config.lib.nixGL.wrap quickshell.packages.x86_64-linux.default)
];
}//home_attrs;
}
+2 -2
View File
@@ -53,8 +53,8 @@ install-bibata(){
x cd $REPO_ROOT/cache/bibata-cursor
name="Bibata-Modern-Classic"
file="$name.tar.xz"
# Use axel because `curl -O` always downloads a file with 0 byte size, idk why
x axel https://github.com/ful1e5/Bibata_Cursor/releases/latest/download/$file
try rm $file
x curl -JLO https://github.com/ful1e5/Bibata_Cursor/releases/latest/download/$file
tar -xf $file
x sudo mkdir -p /usr/local/share/icons
x sudo cp -r $name /usr/local/share/icons
+9 -3
View File
@@ -65,9 +65,15 @@ esac
# Helpful link(s):
# http://stackoverflow.com/questions/29581754
# https://github.com/which-distro/os-release
export OS_RELEASE_FILE=${OS_RELEASE_FILE:-/etc/os-release}
test -f ${OS_RELEASE_FILE} || \
( echo "${OS_RELEASE_FILE} does not exist. Aborting..." ; exit 1 ; )
OS_RELEASE_FILE_CUSTOM="${REPO_ROOT}/os-release"
if test -f "${OS_RELEASE_FILE_CUSTOM}"; then
printf "${STY_YELLOW}Warning: using custom os-release file \"${OS_RELEASE_FILE_CUSTOM}\".${STY_RST}\n"
OS_RELEASE_FILE="${OS_RELEASE_FILE_CUSTOM}"
elif test -f /etc/os-release; then
OS_RELEASE_FILE=/etc/os-release
else
printf "${STY_RED}/etc/os-release does not exist, aborting...${STY_RST}\n" ; exit 1
fi
export OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
export OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)