diff --git a/README.md b/README.md index d8910cc..58166e3 100644 --- a/README.md +++ b/README.md @@ -21,12 +21,6 @@

- -> ⚠️ **BREAKING CHANGE:** -> We're switching our icon set from Material Symbols to Bootstrap Icons! -> - Arch Users: if using the AUR version, the font will be installed automatically. If installed manually you will need to install `ttf-bootstrap-icons` from the AUR. -> - NixOS Users: I've attempted to add the new font to the flake, but it's untested. Feedback would be greatly appreciated! -> - All Other Users: Please check your package manager for a Bootstrap Icons font. If it's not available, you may need to download it and copy it to `~/.local/share/fonts` or `/usr/share/fonts`. --- A sleek and minimal desktop shell thoughtfully crafted for Wayland, built with Quickshell. @@ -74,7 +68,6 @@ Features a modern modular architecture with a status bar, notification system, c - `quickshell-git` - Core shell framework - `ttf-roboto` - The default font used for most of the UI - `inter-font` - The default font used for Headers (ex: clock on the LockScreen) -- `ttf-bootstrap-icons` - Icon font for UI elements - `gpu-screen-recorder` - Screen recording functionality - `brightnessctl` - For internal/laptop monitor brightness - `ddcutil` - For desktop monitor brightness (might introduce some system instability with certain monitors) diff --git a/flake.nix b/flake.nix index bb16caa..29a5921 100644 --- a/flake.nix +++ b/flake.nix @@ -1,13 +1,16 @@ { description = "Noctalia shell - a Wayland desktop shell built with Quickshell"; + inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; systems.url = "github:nix-systems/default"; + quickshell = { url = "git+https://git.outfoxxed.me/outfoxxed/quickshell"; inputs.nixpkgs.follows = "nixpkgs"; }; }; + outputs = { self, nixpkgs, @@ -21,6 +24,7 @@ system: nixpkgs.legacyPackages.${system}.alejandra ); + packages = eachSystem ( system: let pkgs = nixpkgs.legacyPackages.${system}; @@ -28,33 +32,7 @@ withX11 = false; withI3 = false; }; - - # Custom ttf-bootstrap-icons package - ttf-bootstrap-icons = pkgs.stdenvNoCC.mkDerivation rec { - pname = "ttf-bootstrap-icons"; - version = "1.13.1"; - - src = pkgs.fetchzip { - url = "https://github.com/twbs/icons/releases/download/v${version}/bootstrap-icons-${version}.zip"; - sha256 = "999021e12fab5c9ede5e4e7072eb176122be798b2f99195acf5dda47aef8fc93"; - stripRoot = false; - }; - - installPhase = '' - runHook preInstall - install -Dm644 fonts/bootstrap-icons.ttf $out/share/fonts/truetype/bootstrap-icons.ttf - runHook postInstall - ''; - - meta = with pkgs.lib; { - description = "Official open source SVG icon library for Bootstrap"; - homepage = "https://icons.getbootstrap.com/"; - license = licenses.mit; - platforms = platforms.all; - maintainers = []; - }; - }; - + runtimeDeps = with pkgs; [ bash bluez @@ -71,12 +49,11 @@ networkmanager wl-clipboard ]; + fontconfig = pkgs.makeFontsConf { fontDirectories = [ - pkgs.material-symbols pkgs.roboto pkgs.inter-nerdfont - ttf-bootstrap-icons # Add the custom font package here ]; }; in { @@ -84,17 +61,21 @@ pname = "noctalia-shell"; version = self.rev or self.dirtyRev or "dirty"; src = ./.; + nativeBuildInputs = [pkgs.gcc pkgs.makeWrapper pkgs.qt6.wrapQtAppsHook]; buildInputs = [qs pkgs.xkeyboard-config pkgs.qt6.qtbase]; propagatedBuildInputs = runtimeDeps; + installPhase = '' mkdir -p $out/share/noctalia-shell cp -r ./* $out/share/noctalia-shell + makeWrapper ${qs}/bin/qs $out/bin/noctalia-shell \ --prefix PATH : "${pkgs.lib.makeBinPath runtimeDeps}" \ --set FONTCONFIG_FILE "${fontconfig}" \ --add-flags "-p $out/share/noctalia-shell" ''; + meta = { description = "A sleek and minimal desktop shell thoughtfully crafted for Wayland, built with Quickshell."; homepage = "https://github.com/noctalia-dev/noctalia-shell"; @@ -102,11 +83,9 @@ mainProgram = "noctalia-shell"; }; }; - - # Expose the custom font as a separate package (optional) - ttf-bootstrap-icons = ttf-bootstrap-icons; } ); + defaultPackage = eachSystem (system: self.packages.${system}.default); }; } \ No newline at end of file