diff options
Diffstat (limited to 'files')
25 files changed, 780 insertions, 72 deletions
diff --git a/files/nixpkgs-patches/adw-gtk3-patch.diff b/files/adw-gtk3-non-blue-accent.diff index 90ab11c..90ab11c 100644 --- a/files/nixpkgs-patches/adw-gtk3-patch.diff +++ b/files/adw-gtk3-non-blue-accent.diff diff --git a/files/fonts/Livvic-Black.ttf b/files/fonts/Livvic-Black.ttf Binary files differnew file mode 100644 index 0000000..3fb747c --- /dev/null +++ b/files/fonts/Livvic-Black.ttf diff --git a/files/fonts/Livvic-BlackItalic.ttf b/files/fonts/Livvic-BlackItalic.ttf Binary files differnew file mode 100644 index 0000000..184d186 --- /dev/null +++ b/files/fonts/Livvic-BlackItalic.ttf diff --git a/files/fonts/Livvic-Bold.ttf b/files/fonts/Livvic-Bold.ttf Binary files differnew file mode 100644 index 0000000..b441241 --- /dev/null +++ b/files/fonts/Livvic-Bold.ttf diff --git a/files/fonts/Livvic-BoldItalic.ttf b/files/fonts/Livvic-BoldItalic.ttf Binary files differnew file mode 100644 index 0000000..df001a4 --- /dev/null +++ b/files/fonts/Livvic-BoldItalic.ttf diff --git a/files/fonts/Livvic-ExtraLight.ttf b/files/fonts/Livvic-ExtraLight.ttf Binary files differnew file mode 100644 index 0000000..5f379de --- /dev/null +++ b/files/fonts/Livvic-ExtraLight.ttf diff --git a/files/fonts/Livvic-ExtraLightItalic.ttf b/files/fonts/Livvic-ExtraLightItalic.ttf Binary files differnew file mode 100644 index 0000000..35da456 --- /dev/null +++ b/files/fonts/Livvic-ExtraLightItalic.ttf diff --git a/files/fonts/Livvic-Italic.ttf b/files/fonts/Livvic-Italic.ttf Binary files differnew file mode 100644 index 0000000..367e777 --- /dev/null +++ b/files/fonts/Livvic-Italic.ttf diff --git a/files/fonts/Livvic-Light.ttf b/files/fonts/Livvic-Light.ttf Binary files differnew file mode 100644 index 0000000..9c0e1f7 --- /dev/null +++ b/files/fonts/Livvic-Light.ttf diff --git a/files/fonts/Livvic-LightItalic.ttf b/files/fonts/Livvic-LightItalic.ttf Binary files differnew file mode 100644 index 0000000..62c27c9 --- /dev/null +++ b/files/fonts/Livvic-LightItalic.ttf diff --git a/files/fonts/Livvic-Medium.ttf b/files/fonts/Livvic-Medium.ttf Binary files differnew file mode 100644 index 0000000..bcfce43 --- /dev/null +++ b/files/fonts/Livvic-Medium.ttf diff --git a/files/fonts/Livvic-MediumItalic.ttf b/files/fonts/Livvic-MediumItalic.ttf Binary files differnew file mode 100644 index 0000000..9819ba8 --- /dev/null +++ b/files/fonts/Livvic-MediumItalic.ttf diff --git a/files/fonts/Livvic-Regular.ttf b/files/fonts/Livvic-Regular.ttf Binary files differnew file mode 100644 index 0000000..024a0ba --- /dev/null +++ b/files/fonts/Livvic-Regular.ttf diff --git a/files/fonts/Livvic-SemiBold.ttf b/files/fonts/Livvic-SemiBold.ttf Binary files differnew file mode 100644 index 0000000..99c7159 --- /dev/null +++ b/files/fonts/Livvic-SemiBold.ttf diff --git a/files/fonts/Livvic-SemiBoldItalic.ttf b/files/fonts/Livvic-SemiBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..f538325 --- /dev/null +++ b/files/fonts/Livvic-SemiBoldItalic.ttf diff --git a/files/fonts/Livvic-Thin.ttf b/files/fonts/Livvic-Thin.ttf Binary files differnew file mode 100644 index 0000000..47b9807 --- /dev/null +++ b/files/fonts/Livvic-Thin.ttf diff --git a/files/fonts/Livvic-ThinItalic.ttf b/files/fonts/Livvic-ThinItalic.ttf Binary files differnew file mode 100644 index 0000000..264d3cc --- /dev/null +++ b/files/fonts/Livvic-ThinItalic.ttf diff --git a/files/gamescope_1826.diff b/files/gamescope_1826.diff new file mode 100644 index 0000000..69c85e8 --- /dev/null +++ b/files/gamescope_1826.diff @@ -0,0 +1,84 @@ +diff --git a/src/Backends/WaylandBackend.cpp b/src/Backends/WaylandBackend.cpp +index 7e68a44fb..65e35f525 100644 +--- a/src/Backends/WaylandBackend.cpp ++++ b/src/Backends/WaylandBackend.cpp +@@ -2002,24 +2002,32 @@ namespace gamescope + // Prefer opaque for composition on the Wayland backend. + + uint32_t u8BitFormat = DRM_FORMAT_INVALID; +- if ( SupportsFormat( DRM_FORMAT_XRGB8888 ) ) +- u8BitFormat = DRM_FORMAT_XRGB8888; +- else if ( SupportsFormat( DRM_FORMAT_XBGR8888 ) ) +- u8BitFormat = DRM_FORMAT_XBGR8888; +- else if ( SupportsFormat( DRM_FORMAT_ARGB8888 ) ) +- u8BitFormat = DRM_FORMAT_ARGB8888; +- else if ( SupportsFormat( DRM_FORMAT_ABGR8888 ) ) +- u8BitFormat = DRM_FORMAT_ABGR8888; ++ for (int i = 0; i < 2 && u8BitFormat == DRM_FORMAT_INVALID; i++) ++ { ++ bool invalidOnly = i == 0; ++ if ( SupportsFormat( DRM_FORMAT_XRGB8888, invalidOnly ) ) ++ u8BitFormat = DRM_FORMAT_XRGB8888; ++ else if ( SupportsFormat( DRM_FORMAT_XBGR8888, invalidOnly ) ) ++ u8BitFormat = DRM_FORMAT_XBGR8888; ++ else if ( SupportsFormat( DRM_FORMAT_ARGB8888, invalidOnly ) ) ++ u8BitFormat = DRM_FORMAT_ARGB8888; ++ else if ( SupportsFormat( DRM_FORMAT_ABGR8888, invalidOnly ) ) ++ u8BitFormat = DRM_FORMAT_ABGR8888; ++ } + + uint32_t u10BitFormat = DRM_FORMAT_INVALID; +- if ( SupportsFormat( DRM_FORMAT_XBGR2101010 ) ) +- u10BitFormat = DRM_FORMAT_XBGR2101010; +- else if ( SupportsFormat( DRM_FORMAT_XRGB2101010 ) ) +- u10BitFormat = DRM_FORMAT_XRGB2101010; +- else if ( SupportsFormat( DRM_FORMAT_ABGR2101010 ) ) +- u10BitFormat = DRM_FORMAT_ABGR2101010; +- else if ( SupportsFormat( DRM_FORMAT_ARGB2101010 ) ) +- u10BitFormat = DRM_FORMAT_ARGB2101010; ++ for (int i = 0; i < 2 && u10BitFormat == DRM_FORMAT_INVALID; i++) ++ { ++ bool invalidOnly = i == 0; ++ if ( SupportsFormat( DRM_FORMAT_XBGR2101010, invalidOnly ) ) ++ u10BitFormat = DRM_FORMAT_XBGR2101010; ++ else if ( SupportsFormat( DRM_FORMAT_XRGB2101010, invalidOnly ) ) ++ u10BitFormat = DRM_FORMAT_XRGB2101010; ++ else if ( SupportsFormat( DRM_FORMAT_ABGR2101010, invalidOnly ) ) ++ u10BitFormat = DRM_FORMAT_ABGR2101010; ++ else if ( SupportsFormat( DRM_FORMAT_ARGB2101010, invalidOnly ) ) ++ u10BitFormat = DRM_FORMAT_ARGB2101010; ++ } + + assert( u8BitFormat != DRM_FORMAT_INVALID ); + +diff --git a/src/backend.h b/src/backend.h +index 29219dbc8..2767546cd 100644 +--- a/src/backend.h ++++ b/src/backend.h +@@ -309,9 +309,11 @@ namespace gamescope + + virtual bool UsesModifiers() const = 0; + virtual std::span<const uint64_t> GetSupportedModifiers( uint32_t uDrmFormat ) const = 0; +- inline bool SupportsFormat( uint32_t uDrmFormat ) const ++ inline bool SupportsFormat( uint32_t uDrmFormat, bool invalidOnly ) const + { +- return Algorithm::Contains( this->GetSupportedModifiers( uDrmFormat ), DRM_FORMAT_MOD_INVALID ); ++ if ( invalidOnly ) ++ return Algorithm::Contains( this->GetSupportedModifiers( uDrmFormat ), DRM_FORMAT_MOD_INVALID ); ++ return !this->GetSupportedModifiers( uDrmFormat ).empty(); + } + + virtual IBackendConnector *GetCurrentConnector() = 0; +diff --git a/src/rendervulkan.cpp b/src/rendervulkan.cpp +index b8412b8fd..f41ef4c9b 100644 +--- a/src/rendervulkan.cpp ++++ b/src/rendervulkan.cpp +@@ -2814,7 +2814,7 @@ bool vulkan_init_format(VkFormat format, uint32_t drmFormat) + } + else + { +- if ( GetBackend()->UsesModifiers() && !GetBackend()->SupportsFormat( drmFormat ) ) ++ if ( GetBackend()->UsesModifiers() && !GetBackend()->SupportsFormat( drmFormat, true ) ) + return false; + + wlr_drm_format_set_add( &sampledDRMFormats, drmFormat, DRM_FORMAT_MOD_INVALID ); diff --git a/files/gamescope_drm.diff b/files/gamescope_drm.diff deleted file mode 100644 index 34b0596..0000000 --- a/files/gamescope_drm.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/backend.h b/src/backend.h -index 82db19c..b557ec6 100644 ---- a/src/backend.h -+++ b/src/backend.h -@@ -298,7 +298,7 @@ namespace gamescope - virtual std::span<const uint64_t> GetSupportedModifiers( uint32_t uDrmFormat ) const = 0; - inline bool SupportsFormat( uint32_t uDrmFormat ) const - { -- return Algorithm::Contains( this->GetSupportedModifiers( uDrmFormat ), DRM_FORMAT_MOD_INVALID ); -+ return !this->GetSupportedModifiers( uDrmFormat ).empty(); - } - - virtual IBackendConnector *GetCurrentConnector() = 0; diff --git a/files/nixpkgs-patches/425312.diff b/files/nixpkgs-patches/425312.diff new file mode 100644 index 0000000..f895dae --- /dev/null +++ b/files/nixpkgs-patches/425312.diff @@ -0,0 +1,143 @@ +diff --git a/pkgs/applications/networking/msmtp/msmtpq-remove-binary-check.patch b/pkgs/by-name/ms/msmtp/msmtpq-remove-binary-check.patch +similarity index 100% +rename from pkgs/applications/networking/msmtp/msmtpq-remove-binary-check.patch +rename to pkgs/by-name/ms/msmtp/msmtpq-remove-binary-check.patch +diff --git a/pkgs/applications/networking/msmtp/msmtpq-systemd-logging.patch b/pkgs/by-name/ms/msmtp/msmtpq-systemd-logging.patch +similarity index 70% +rename from pkgs/applications/networking/msmtp/msmtpq-systemd-logging.patch +rename to pkgs/by-name/ms/msmtp/msmtpq-systemd-logging.patch +index a9db3e64580827..55f386bb31906a 100644 +--- a/pkgs/applications/networking/msmtp/msmtpq-systemd-logging.patch ++++ b/pkgs/by-name/ms/msmtp/msmtpq-systemd-logging.patch +@@ -1,17 +1,17 @@ + diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq +-index bcb384e..dbaf1b5 100755 ++index 28d0754..3eaac58 100755 + --- a/scripts/msmtpq/msmtpq + +++ b/scripts/msmtpq/msmtpq +-@@ -92,6 +92,8 @@ if [ ! -v MSMTPQ_LOG ] ; then +- fi ++@@ -182,6 +182,8 @@ if [ -n "$MSMTPQ_LOG" ] ; then ++ unset msmptq_log_dir + fi +- [ -d "$(dirname "$MSMTPQ_LOG")" ] || mkdir -p "$(dirname "$MSMTPQ_LOG")" +-+ ++ + +JOURNAL=@journal@ +- ## ====================================================================================== +++ ++ umask 077 # set secure permissions on created directories and files + +- ## msmtpq can use the following environment variables : +-@@ -144,6 +146,7 @@ on_exit() { # unlock the queue on exit if the lock was ++ declare -i CNT # a count of mail(s) currently in the queue ++@@ -214,6 +216,7 @@ on_exit() { # unlock the queue on exit if the lock was + ## display msg to user, as well + ## + log() { +@@ -19,7 +19,7 @@ index bcb384e..dbaf1b5 100755 + local ARG RC PFX + PFX="$('date' +'%Y %d %b %H:%M:%S')" + # time stamp prefix - "2008 13 Mar 03:59:45 " +-@@ -161,10 +164,19 @@ log() { ++@@ -233,10 +236,19 @@ log() { + done + fi + +diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/by-name/ms/msmtp/package.nix +similarity index 84% +rename from pkgs/applications/networking/msmtp/default.nix +rename to pkgs/by-name/ms/msmtp/package.nix +index 60946106d0ddf1..c801fa83ee9b98 100644 +--- a/pkgs/applications/networking/msmtp/default.nix ++++ b/pkgs/by-name/ms/msmtp/package.nix +@@ -9,6 +9,7 @@ + bash, + coreutils, + gnugrep, ++ gnused, + gnutls, + gsasl, + libidn2, +@@ -20,6 +21,8 @@ + withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd, + systemd, + withScripts ? true, ++ withLibnotify ? true, ++ libnotify, + gitUpdater, + binlore, + msmtp, +@@ -28,13 +31,13 @@ + let + inherit (lib) getBin getExe optionals; + +- version = "1.8.26"; ++ version = "1.8.30"; + + src = fetchFromGitHub { + owner = "marlam"; + repo = "msmtp"; + rev = "msmtp-${version}"; +- hash = "sha256-MV3fzjjyr7qZw/BbKgsSObX+cxDDivI+0ZlulrPFiWM="; ++ hash = "sha256-aM2qId08zvT9LbncCQYHsklbvHVtcZJgr91JTjwpQ/0="; + }; + + meta = with lib; { +@@ -112,13 +115,17 @@ let + msmtpq = { + scripts = [ "bin/msmtpq" ]; + interpreter = getExe bash; +- inputs = [ +- binaries +- coreutils +- gnugrep +- netcat-gnu +- which +- ] ++ optionals withSystemd [ systemd ]; ++ inputs = ++ [ ++ binaries ++ coreutils ++ gnugrep ++ gnused ++ netcat-gnu ++ which ++ ] ++ ++ optionals withSystemd [ systemd ] ++ ++ optionals withLibnotify [ libnotify ]; + execer = + [ + "cannot:${getBin binaries}/bin/msmtp" +@@ -126,9 +133,15 @@ let + ] + ++ optionals withSystemd [ + "cannot:${getBin systemd}/bin/systemd-cat" ++ ] ++ ++ optionals withLibnotify [ ++ "cannot:${getBin libnotify}/bin/notify-send" + ]; + fix."$MSMTP" = [ "msmtp" ]; +- fake.external = [ "ping" ] ++ optionals (!withSystemd) [ "systemd-cat" ]; ++ fake.external = ++ [ "ping" ] ++ ++ optionals (!withSystemd) [ "systemd-cat" ] ++ ++ optionals (!withLibnotify) [ "notify-send" ]; + keep.source = [ "~/.msmtpqrc" ]; + }; + +diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix +index 1f6cde48853370..2d89e07134d294 100644 +--- a/pkgs/top-level/all-packages.nix ++++ b/pkgs/top-level/all-packages.nix +@@ -13308,10 +13308,6 @@ with pkgs; + + taxi-cli = with python3Packages; toPythonApplication taxi; + +- msmtp = callPackage ../applications/networking/msmtp { +- autoreconfHook = buildPackages.autoreconfHook269; +- }; +- + imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix { + lua = lua5; + }; diff --git a/files/nixpkgs-patches/425843.diff b/files/nixpkgs-patches/425843.diff new file mode 100644 index 0000000..ded8544 --- /dev/null +++ b/files/nixpkgs-patches/425843.diff @@ -0,0 +1,504 @@ +diff --git a/pkgs/development/libraries/mesa/common.nix b/pkgs/development/libraries/mesa/common.nix +index 18f999dd83599c..8242549b63007b 100644 +--- a/pkgs/development/libraries/mesa/common.nix ++++ b/pkgs/development/libraries/mesa/common.nix +@@ -5,14 +5,14 @@ + # nix build .#legacyPackages.x86_64-darwin.mesa .#legacyPackages.aarch64-darwin.mesa + rec { + pname = "mesa"; +- version = "25.1.6"; ++ version = "25.2.0-rc1"; + + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + owner = "mesa"; + repo = "mesa"; + rev = "mesa-${version}"; +- hash = "sha256-SHYYezt2ez9awvIATEC6wVMZMuJUsOYXxlugs1Q6q7U="; ++ hash = "sha256-iVDnJ0MoLQbpEpjfRUy3MV6pjhMTqUMxR4yf9jkuXKw="; + }; + + meta = { +diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix +index db9ec527358508..ee10017b9d5aa0 100644 +--- a/pkgs/development/libraries/mesa/default.nix ++++ b/pkgs/development/libraries/mesa/default.nix +@@ -44,62 +44,53 @@ + enablePatentEncumberedCodecs ? true, + withValgrind ? lib.meta.availableOn stdenv.hostPlatform valgrind-light, + +- galliumDrivers ? +- [ +- "asahi" # Apple AGX, built on non-aarch64 for cross tools +- "d3d12" # WSL emulated GPU (aka Dozen) +- "iris" # new Intel (Broadwell+) +- "llvmpipe" # software renderer +- "nouveau" # Nvidia +- "panfrost" # ARM Mali Midgard and up (T/G series), built on non-ARM for cross tools +- "r300" # very old AMD +- "r600" # less old AMD +- "radeonsi" # new AMD (GCN+) +- "softpipe" # older software renderer +- "svga" # VMWare virtualized GPU +- "virgl" # QEMU virtualized GPU (aka VirGL) +- "zink" # generic OpenGL over Vulkan, experimental +- ] +- ++ lib.optionals (stdenv.hostPlatform.isAarch64 || stdenv.hostPlatform.isAarch32) [ +- "etnaviv" # Vivante GPU designs (mostly NXP/Marvell SoCs) +- "freedreno" # Qualcomm Adreno (all Qualcomm SoCs) +- "lima" # ARM Mali 4xx +- "vc4" # Broadcom VC4 (Raspberry Pi 0-3) +- ] +- ++ lib.optionals stdenv.hostPlatform.isAarch64 [ +- "tegra" # Nvidia Tegra SoCs +- "v3d" # Broadcom VC5 (Raspberry Pi 4) +- ] +- ++ lib.optionals stdenv.hostPlatform.isx86 [ +- "crocus" # Intel legacy, x86 only +- "i915" # Intel extra legacy, x86 only +- ], ++ # We enable as many drivers as possible here, to build cross tools ++ # and support emulation use cases (emulated x86_64 on aarch64, etc) ++ galliumDrivers ? [ ++ "asahi" # Apple AGX ++ "crocus" # Intel legacy ++ "d3d12" # WSL emulated GPU (aka Dozen) ++ "etnaviv" # Vivante GPU designs (mostly NXP/Marvell SoCs) ++ "freedreno" # Qualcomm Adreno (all Qualcomm SoCs) ++ "i915" # Intel extra legacy ++ "iris" # new Intel (Broadwell+) ++ "lima" # ARM Mali 4xx ++ "llvmpipe" # software renderer ++ "nouveau" # Nvidia ++ "panfrost" # ARM Mali Midgard and up (T/G series) ++ "r300" # very old AMD ++ "r600" # less old AMD ++ "radeonsi" # new AMD (GCN+) ++ "softpipe" # older software renderer ++ "svga" # VMWare virtualized GPU ++ "tegra" # Nvidia Tegra SoCs ++ "v3d" # Broadcom VC5 (Raspberry Pi 4) ++ "vc4" # Broadcom VC4 (Raspberry Pi 0-3) ++ "virgl" # QEMU virtualized GPU (aka VirGL) ++ "zink" # generic OpenGL over Vulkan, experimental ++ ], + vulkanDrivers ? + [ + "amd" # AMD (aka RADV) +- "asahi" # Apple AGX, built on non-aarch64 for cross tools +- "intel" # new Intel (aka ANV) +- "microsoft-experimental" # WSL virtualized GPU (aka DZN/Dozen) +- "nouveau" # Nouveau (aka NVK) +- "swrast" # software renderer (aka Lavapipe) +- ] +- ++ +- lib.optionals +- (stdenv.hostPlatform.isAarch -> lib.versionAtLeast stdenv.hostPlatform.parsed.cpu.version "6") +- [ +- # QEMU virtualized GPU (aka VirGL) +- # Requires ATOMIC_INT_LOCK_FREE == 2. +- "virtio" +- ] +- ++ lib.optionals stdenv.hostPlatform.isAarch64 [ ++ "asahi" # Apple AGX + "broadcom" # Broadcom VC5 (Raspberry Pi 4, aka V3D) + "freedreno" # Qualcomm Adreno (all Qualcomm SoCs) ++ # "gfxstream" # Android virtualized GPU, breaks on some targets, doesn't seem useful? + "imagination-experimental" # PowerVR Rogue (currently N/A) ++ "intel_hasvk" # Intel Haswell/Broadwell, "legacy" Vulkan driver (https://www.phoronix.com/news/Intel-HasVK-Drop-Dead-Code) ++ "intel" # new Intel (aka ANV) ++ "microsoft-experimental" # WSL virtualized GPU (aka DZN/Dozen) ++ "nouveau" # Nouveau (aka NVK) + "panfrost" # ARM Mali Midgard and up (T/G series) ++ "swrast" # software renderer (aka Lavapipe) + ] +- ++ lib.optionals stdenv.hostPlatform.isx86 [ +- "intel_hasvk" # Intel Haswell/Broadwell, "legacy" Vulkan driver (https://www.phoronix.com/news/Intel-HasVK-Drop-Dead-Code) +- ], ++ ++ lib.optionals ++ (stdenv.hostPlatform.isAarch -> lib.versionAtLeast stdenv.hostPlatform.parsed.cpu.version "6") ++ [ ++ # QEMU virtualized GPU (aka VirGL) ++ # Requires ATOMIC_INT_LOCK_FREE == 2. ++ "virtio" ++ ], + eglPlatforms ? [ + "x11" + "wayland" +@@ -117,40 +108,26 @@ + }: + + let +- rustDeps = [ +- { +- pname = "paste"; +- version = "1.0.14"; +- hash = "sha256-+J1h7New5MEclUBvwDQtTYJCHKKqAEOeQkuKy+g0vEc="; +- } +- { +- pname = "proc-macro2"; +- version = "1.0.86"; +- hash = "sha256-9fYAlWRGVIwPp8OKX7Id84Kjt8OoN2cANJ/D9ZOUUZE="; +- } +- { +- pname = "quote"; +- version = "1.0.33"; +- hash = "sha256-VWRCZJO0/DJbNu0/V9TLaqlwMot65YjInWT9VWg57DY="; +- } +- { +- pname = "syn"; +- version = "2.0.68"; +- hash = "sha256-nGLBbxR0DFBpsXMngXdegTm/o13FBS6QsM7TwxHXbgQ="; +- } +- { +- pname = "unicode-ident"; +- version = "1.0.12"; +- hash = "sha256-KX8NqYYw6+rGsoR9mdZx8eT1HIPEUUyxErdk2H/Rlj8="; +- } +- ]; ++ rustDeps = lib.importJSON ./wraps.json; ++ ++ handleRustDep = dep: '' ++ ( ++ echo "Preparing Rust dependency wrap ${dep.pname}-${dep.version}..." ++ ++ wrapDir=subprojects/packagefiles/${dep.pname} ++ outDir=subprojects/${dep.pname}-${dep.version} ++ ++ mkdir -p $outDir ++ tar -C $outDir -xf ${fetchCrate (dep // { unpack = false; })} --strip-components=1 ++ cp $wrapDir/meson.build $outDir + +- copyRustDep = dep: '' +- cp -R --no-preserve=mode,ownership ${fetchCrate dep} subprojects/${dep.pname}-${dep.version} +- cp -R subprojects/packagefiles/${dep.pname}/* subprojects/${dep.pname}-${dep.version}/ ++ for patch in $wrapDir/*.patch; do ++ patch -d $outDir -i $(readlink -f $patch) -p1 ++ done ++ ) + ''; + +- copyRustDeps = lib.concatStringsSep "\n" (builtins.map copyRustDep rustDeps); ++ copyRustDeps = lib.concatStringsSep "\n" (builtins.map handleRustDep rustDeps); + + needNativeCLC = !stdenv.buildPlatform.canExecute stdenv.hostPlatform; + +@@ -227,13 +204,6 @@ stdenv.mkDerivation { + (lib.mesonEnable "gbm" true) + (lib.mesonBool "libgbm-external" true) + +- (lib.mesonBool "gallium-nine" false) # Direct3D9 in Wine, largely supplanted by DXVK +- +- # Only used by xf86-video-vmware, which has more features than VMWare's KMS driver, +- # so we're keeping it for now. Should be removed when that's no longer the case. +- # See: https://github.com/NixOS/nixpkgs/pull/392492 +- (lib.mesonEnable "gallium-xa" true) +- + (lib.mesonBool "teflon" true) # TensorFlow frontend + + # Enable all freedreno kernel mode drivers. (For example, virtio can be +@@ -241,9 +211,6 @@ stdenv.mkDerivation { + # is ignored when freedreno is not being built. + (lib.mesonOption "freedreno-kmds" "msm,kgsl,virtio,wsl") + +- # Enable Intel RT stuff when available +- (lib.mesonEnable "intel-rt" stdenv.hostPlatform.isx86_64) +- + # Required for OpenCL + (lib.mesonOption "clang-libdir" "${lib.getLib llvmPackages.clang-unwrapped}/lib") + +@@ -251,15 +218,16 @@ stdenv.mkDerivation { + (lib.mesonBool "gallium-rusticl" true) + (lib.mesonOption "gallium-rusticl-enable-drivers" "auto") + +- # meson auto_features enables this, but we do not want it +- (lib.mesonEnable "android-libbacktrace" false) +- (lib.mesonEnable "microsoft-clc" false) # Only relevant on Windows (OpenCL 1.2 API on top of D3D12) +- + # Enable more sensors in gallium-hud + (lib.mesonBool "gallium-extra-hud" true) + + # Disable valgrind on targets where it's not available + (lib.mesonEnable "valgrind" withValgrind) ++ ++ # meson auto_features enables these, but we do not want them ++ (lib.mesonEnable "gallium-mediafoundation" false) # Windows only ++ (lib.mesonEnable "android-libbacktrace" false) # Android only ++ (lib.mesonEnable "microsoft-clc" false) # Only relevant on Windows (OpenCL 1.2 API on top of D3D12) + ] + ++ lib.optionals enablePatentEncumberedCodecs [ + (lib.mesonOption "video-codecs" "all") +diff --git a/pkgs/development/libraries/mesa/opencl.patch b/pkgs/development/libraries/mesa/opencl.patch +index 9d40da82f85649..d71f168d83cf12 100644 +--- a/pkgs/development/libraries/mesa/opencl.patch ++++ b/pkgs/development/libraries/mesa/opencl.patch +@@ -1,23 +1,23 @@ + diff --git a/meson.build b/meson.build +-index c150bff74ff..37fa7f0531b 100644 ++index 393f3ac1b93..fbc90b5645e 100644 + --- a/meson.build + +++ b/meson.build +-@@ -1850,7 +1850,7 @@ endif ++@@ -1836,7 +1836,7 @@ endif + + dep_clang = null_dep +- if with_clc or with_gallium_clover ++ if with_clc + - llvm_libdir = dep_llvm.get_variable(cmake : 'LLVM_LIBRARY_DIR', configtool: 'libdir') + + llvm_libdir = get_option('clang-libdir') + + dep_clang = cpp.find_library('clang-cpp', dirs : llvm_libdir, required : false) + +-diff --git a/meson_options.txt b/meson_options.txt +-index 82324617884..4bde97a8568 100644 ++diff --git a/meson.options b/meson.options ++index b1cdb06fcc9..3e8861979ae 100644 + --- a/meson.options + +++ b/meson.options +-@@ -738,3 +738,10 @@ option( +- 'none', 'dri2' +- ], ++@@ -856,3 +856,10 @@ option( ++ value : false, ++ description : 'Build virtgpu_kumquat (only useful with gfxstream currently)' + ) + + + +option( +@@ -26,24 +26,11 @@ index 82324617884..4bde97a8568 100644 + + value : '', + + description : 'Locations to search for clang libraries.' + +) +-diff --git a/src/gallium/targets/opencl/meson.build b/src/gallium/targets/opencl/meson.build +-index ab2c83556a8..a59e88e122f 100644 +---- a/src/gallium/targets/opencl/meson.build +-+++ b/src/gallium/targets/opencl/meson.build +-@@ -56,7 +56,7 @@ if with_opencl_icd +- configuration : _config, +- input : 'mesa.icd.in', +- output : 'mesa.icd', +-- install : true, +-+ install : false, +- install_tag : 'runtime', +- install_dir : join_paths(get_option('sysconfdir'), 'OpenCL', 'vendors'), +- ) + diff --git a/src/gallium/targets/rusticl/meson.build b/src/gallium/targets/rusticl/meson.build +-index 35833dc7423..41a95927cab 100644 ++index 2b214adbbf5..7f919397ad5 100644 + --- a/src/gallium/targets/rusticl/meson.build + +++ b/src/gallium/targets/rusticl/meson.build +-@@ -63,7 +63,7 @@ configure_file( ++@@ -64,7 +64,7 @@ configure_file( + configuration : _config, + input : 'rusticl.icd.in', + output : 'rusticl.icd', +diff --git a/pkgs/development/libraries/mesa/update-wraps.py b/pkgs/development/libraries/mesa/update-wraps.py +new file mode 100644 +index 00000000000000..037dfc0397b24b +--- /dev/null ++++ b/pkgs/development/libraries/mesa/update-wraps.py +@@ -0,0 +1,50 @@ ++import base64 ++import binascii ++import configparser ++import json ++import pathlib ++import sys ++import urllib.parse ++ ++ ++def to_sri(hash: str): ++ raw = binascii.unhexlify(hash) ++ b64 = base64.b64encode(raw).decode() ++ return f"sha256-{b64}" ++ ++ ++def main(dir: str): ++ result = [] ++ for file in (pathlib.Path(dir) / "subprojects").glob("*.wrap"): ++ name = file.stem ++ parser = configparser.ConfigParser() ++ _ = parser.read(file) ++ sections = parser.sections() ++ if "wrap-file" not in sections: ++ continue ++ ++ url = parser.get("wrap-file", "source_url") ++ if "crates.io" not in url: ++ continue ++ ++ parsed = urllib.parse.urlparse(url) ++ path = parsed.path.split("/") ++ assert path[4] == name ++ version = path[5] ++ ++ hash = to_sri(parser.get("wrap-file", "source_hash")) ++ ++ result.append({ ++ "pname": name, ++ "version": version, ++ "hash": hash, ++ }) ++ ++ here = pathlib.Path(__file__).parent ++ with (here / "wraps.json").open("w") as fd: ++ json.dump(result, fd, indent=4) ++ _ = fd.write("\n") ++ ++ ++if __name__ == '__main__': ++ main(*sys.argv[1:]) +diff --git a/pkgs/development/libraries/mesa/wraps.json b/pkgs/development/libraries/mesa/wraps.json +new file mode 100644 +index 00000000000000..5b185c2d56239b +--- /dev/null ++++ b/pkgs/development/libraries/mesa/wraps.json +@@ -0,0 +1,137 @@ ++[ ++ { ++ "pname": "errno", ++ "version": "0.3.12", ++ "hash": "sha256-zqFO+TVeO+qwY3A6qdqxWv0l8GZ8NBMQweUnS7HQ2hg=" ++ }, ++ { ++ "pname": "quote", ++ "version": "1.0.35", ++ "hash": "sha256-KR7Jq179k0qvUDpkZsXVJRU10QjudHRyw5d8xazIaO8=" ++ }, ++ { ++ "pname": "pest", ++ "version": "2.8.0", ++ "hash": "sha256-GY23RTHVjHCjYcQiAe/efiWR6XbVGMr3ZipH3Fcg57Y=" ++ }, ++ { ++ "pname": "equivalent", ++ "version": "1.0.1", ++ "hash": "sha256-VEOAfW3/aTc9Qzq571N4rY31DKYpjK8V3m5S4kqvVNU=" ++ }, ++ { ++ "pname": "syn", ++ "version": "2.0.87", ++ "hash": "sha256-JapM40bQOm3NaN2LQBC8t05U5iyQxXPzlMRurpmroy0=" ++ }, ++ { ++ "pname": "remain", ++ "version": "0.2.12", ++ "hash": "sha256-GtXgESMMrSdNBTJGDFq2mCjqR651aBtCqEFmPv/695Q=" ++ }, ++ { ++ "pname": "unicode-ident", ++ "version": "1.0.12", ++ "hash": "sha256-M1S5rD+uH/Z1XLbbU2g622YWNPZ1V5Qt6k+s6+wP7ks=" ++ }, ++ { ++ "pname": "cfg-if", ++ "version": "1.0.0", ++ "hash": "sha256-uvHeQzl2FYi8Bhnjy8ASDuWC67dLU7Tvv3kRe9LaQP0=" ++ }, ++ { ++ "pname": "bitflags", ++ "version": "2.9.1", ++ "hash": "sha256-G45WmF7GLRfpwQAdyJyI7NfcCOR+ul7Hwpx7Xu7N6Wc=" ++ }, ++ { ++ "pname": "pest_derive", ++ "version": "2.8.0", ++ "hash": "sha256-1yXZz9eeh9zMk0Gi7znRtvY1PWjEszwXf+u+GkAsl8U=" ++ }, ++ { ++ "pname": "rustc-hash", ++ "version": "2.1.1", ++ "hash": "sha256-NXcD1BNltLJ8WQ4+2R6rsbZj8HxMCECV5gy+1DYt/w0=" ++ }, ++ { ++ "pname": "ucd-trie", ++ "version": "0.1.6", ++ "hash": "sha256-7WRikv/IGI746k0eDgFQ+xWlwuEq2bj8GRrnqKfzxLk=" ++ }, ++ { ++ "pname": "indexmap", ++ "version": "2.2.6", ++ "hash": "sha256-Fo+3Fd2kchXjYJEsCWZJ0j1Yvzkqxi9zkZ6DF0XkDyY=" ++ }, ++ { ++ "pname": "paste", ++ "version": "1.0.14", ++ "hash": "sha256-3jFFrwgCTeqfqZFPOBoXuPxgNN+wDzqEAT9/9D8p7Uw=" ++ }, ++ { ++ "pname": "hashbrown", ++ "version": "0.14.1", ++ "hash": "sha256-ff2mKhL1Xa6uUBX4GwuuoUU5HLRSD4bCSPxhXXJkDRI=" ++ }, ++ { ++ "pname": "libc", ++ "version": "0.2.168", ++ "hash": "sha256-Wq6ymB4GBsoR15cY+LsBFk8dbtdQgBgtOr8Bfm0kS20=" ++ }, ++ { ++ "pname": "thiserror-impl", ++ "version": "2.0.11", ++ "hash": "sha256-Jq/BuuqKmJM37rUrbnKgOXgM5Fw+38ycW50RL+6xc8I=" ++ }, ++ { ++ "pname": "once_cell", ++ "version": "1.8.0", ++ "hash": "sha256-aS/LY7ZLF1gCngqW7mPgSc6MWUhYfy9yCN8EYl5fa1Y=" ++ }, ++ { ++ "pname": "rustix", ++ "version": "1.0.7", ++ "hash": "sha256-xx6D1q/n/2SJDsa3HWppu4phCreM42SzNSh2u0yAEmY=" ++ }, ++ { ++ "pname": "pest_generator", ++ "version": "2.8.0", ++ "hash": "sha256-230Bcmvoq2arMvnfRnrosRSJBmhbvnXILR5l1/Wz+EE=" ++ }, ++ { ++ "pname": "thiserror", ++ "version": "2.0.11", ++ "hash": "sha256-1FLyhLc+bXbdNnWKDIaEsdW+MfkridB/1YIhdXMiBvw=" ++ }, ++ { ++ "pname": "proc-macro2", ++ "version": "1.0.86", ++ "hash": "sha256-XnGejfZl3w0cj7/SOAFXRHNhUdREXsCDa45iiq4QO3c=" ++ }, ++ { ++ "pname": "zerocopy", ++ "version": "0.8.13", ++ "hash": "sha256-Z5FKtFHzv9Lmnl6dLvOFhITnB01j8gT9Fm7DkbVN4h0=" ++ }, ++ { ++ "pname": "roxmltree", ++ "version": "0.20.0", ++ "hash": "sha256-bCC2eTtcL6ZVOyUBVLeNbQ2zfnJwCuNfrZOHpG9IfJc=" ++ }, ++ { ++ "pname": "zerocopy-derive", ++ "version": "0.8.13", ++ "hash": "sha256-eYjXOkMDyiid8DMWvEkOk0rM83Gva8dFOTzzwsXE8l0=" ++ }, ++ { ++ "pname": "pest_meta", ++ "version": "2.8.0", ++ "hash": "sha256-f5+DJHBJSQbR/KUyn4q1eRzGC+sjDHSBXf9UHL0rXKA=" ++ }, ++ { ++ "pname": "log", ++ "version": "0.4.27", ++ "hash": "sha256-E9wt81HjICeDof4NRDdfcpX/tASSZ7DzAYNG3BIqHZQ=" ++ } ++] +diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix +index 49f4838a058bda..6e14ad71a2b48c 100644 +--- a/pkgs/servers/x11/xorg/overrides.nix ++++ b/pkgs/servers/x11/xorg/overrides.nix +@@ -829,7 +829,6 @@ self: super: + }); + + xf86videovmware = super.xf86videovmware.overrideAttrs (attrs: { +- buildInputs = attrs.buildInputs ++ [ mesa ]; + env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=address" ]; # gcc12 + meta = attrs.meta // { + platforms = [ diff --git a/files/nixpkgs-patches/4c3870b23dded4e75292be48bdb03cd870fb1719.diff b/files/nixpkgs-patches/4c3870b23dded4e75292be48bdb03cd870fb1719.diff new file mode 100644 index 0000000..950ee0e --- /dev/null +++ b/files/nixpkgs-patches/4c3870b23dded4e75292be48bdb03cd870fb1719.diff @@ -0,0 +1,21 @@ +diff --git a/pkgs/development/libraries/mesa/common.nix b/pkgs/development/libraries/mesa/common.nix +index d6377d6de7dabd..18f999dd83599c 100644 +--- a/pkgs/development/libraries/mesa/common.nix ++++ b/pkgs/development/libraries/mesa/common.nix +@@ -5,14 +5,14 @@ + # nix build .#legacyPackages.x86_64-darwin.mesa .#legacyPackages.aarch64-darwin.mesa + rec { + pname = "mesa"; +- version = "25.1.5"; ++ version = "25.1.6"; + + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + owner = "mesa"; + repo = "mesa"; + rev = "mesa-${version}"; +- hash = "sha256-AZAd1/wiz8d0lXpim9obp6/K7ySP12rGFe8jZrc9Gl0="; ++ hash = "sha256-SHYYezt2ez9awvIATEC6wVMZMuJUsOYXxlugs1Q6q7U="; + }; + + meta = { diff --git a/files/nixpkgs-patches/adw-gtk3-update.diff b/files/nixpkgs-patches/adw-gtk3-update.diff deleted file mode 100644 index 0ea2bd0..0000000 --- a/files/nixpkgs-patches/adw-gtk3-update.diff +++ /dev/null @@ -1,40 +0,0 @@ -diff --git a/pkgs/by-name/ad/adw-gtk3/package.nix b/pkgs/by-name/ad/adw-gtk3/package.nix -index 7511b9524..6cb3054cd 100644 ---- a/pkgs/by-name/ad/adw-gtk3/package.nix -+++ b/pkgs/by-name/ad/adw-gtk3/package.nix -@@ -5,29 +5,29 @@ - nix-update-script, - meson, - ninja, -- sassc, -+ dart-sass, - }: - - stdenvNoCC.mkDerivation (finalAttrs: { - pname = "adw-gtk3"; -- version = "5.10"; -+ version = "6.1"; - - src = fetchFromGitHub { - owner = "lassekongo83"; - repo = "adw-gtk3"; - tag = "v${finalAttrs.version}"; -- hash = "sha256-0OZk27b0kujzWtRX5uvelTMivL19g6sNB1IY6BsrO10="; -+ hash = "sha256-fY5z7KQXygGhkai1N3iMsnC1ZFjIAoBndjsPcv58kXg="; - }; - - nativeBuildInputs = [ - meson - ninja -- sassc -+ dart-sass - ]; - - postPatch = '' -- chmod +x gtk/src/adw-gtk3-dark/gtk-3.0/install-dark-theme.sh -- patchShebangs gtk/src/adw-gtk3-dark/gtk-3.0/install-dark-theme.sh -+ chmod +x scripts/render-assets.sh -+ patchShebangs +x scripts/render-assets.sh - ''; - - passthru = { diff --git a/files/nvim/init.vim b/files/nvim/init.vim index 7325928..780f9d5 100644 --- a/files/nvim/init.vim +++ b/files/nvim/init.vim @@ -25,6 +25,9 @@ set nocompatible filetype plugin indent on syntax on +" Check for SHIFT_JIS. +set fileencodings=ucs-bom,utf-8,sjis,default,latin1 + " 4 spaces autoindent. set tabstop=4 set shiftwidth=4 @@ -121,7 +124,7 @@ let g:fzf_colors = { \'spinner': ['fg', 'String'], \'header': ['fg', 'Type'] \} -let g:fzf_preview_window = ['right,47%'] +let g:fzf_preview_window = ['right,55%'] " This is redundant but I want to keep FZF_DEFAULT_OPTS here. let $FZF_DEFAULT_OPTS = '--preview-window=border-sharp' let g:fzf_layout = { @@ -155,7 +158,7 @@ function! Statusline() abort let status .= '%=' let status .= ' %y' let status .= '%{StatuslineLsp()}' - let status .= ' %{&fileencoding?&fileencoding:&encoding}' + let status .= ' %{&fileencoding}' let status .= '[%{&fileformat}]' let status .= '%3p%%' let status .= ' %3l:%-3c' @@ -202,6 +205,7 @@ nmap <silent> <C-i> :GGrep<CR> nmap <silent> <C-\> :GFiles<CR> " Only Neogit bind, handle all further operations from this menu. nmap <silent> Y :Neogit<CR> +nmap <silent> L :lua neogit_log_current()<CR> " Undotree. nmap <silent> U :UndotreeToggle<CR> " Toggle hex color highlighting. @@ -354,6 +358,11 @@ require('neogit').setup({ integrations = {} }) +-- Doesn't work consistently. +function neogit_log_current() + require("neogit").action("log", "log_current", { "--", vim.fn.expand("%:p") })() +end + -- Preview colors in #<hex> format. require('ccc').setup({ highlighter = { auto_enable = false, lsp = true } }) EOF diff --git a/files/nvim/mini_starter_picture.diff b/files/nvim/mini_starter_picture.diff index b64025c..2efc2a1 100644 --- a/files/nvim/mini_starter_picture.diff +++ b/files/nvim/mini_starter_picture.diff @@ -1,5 +1,5 @@ diff --git a/lua/mini/starter.lua b/lua/mini/starter.lua -index cc10d101..78c4e5c1 100644 +index 66d46a52..9b7e4397 100644 --- a/lua/mini/starter.lua +++ b/lua/mini/starter.lua @@ -138,7 +138,7 @@ @@ -11,7 +11,7 @@ index cc10d101..78c4e5c1 100644 --- timer:stop() --- return --- end -@@ -248,6 +248,9 @@ MiniStarter.config = { +@@ -239,6 +239,9 @@ MiniStarter.config = { -- If `nil` (default), default items will be used (see |mini.starter|). items = nil, @@ -21,7 +21,7 @@ index cc10d101..78c4e5c1 100644 -- Header to be displayed before items. Converted to single string via -- `tostring` (use `\n` to display several lines). If function, it is -- evaluated first. If `nil` (default), polite greeting will be used. -@@ -258,6 +261,12 @@ MiniStarter.config = { +@@ -249,6 +252,12 @@ MiniStarter.config = { -- evaluated first. If `nil` (default), default usage help will be shown. footer = nil, @@ -34,7 +34,7 @@ index cc10d101..78c4e5c1 100644 -- Array of functions to be applied consecutively to initial content. -- Each function should take and return content for Starter buffer (see -- |mini.starter| and |MiniStarter.get_content()| for more details). -@@ -382,7 +391,7 @@ MiniStarter.refresh = function(buf_id) +@@ -373,7 +382,7 @@ MiniStarter.refresh = function(buf_id) data.footer = H.normalize_header_footer(config.footer or H.default_footer) -- Evaluate content @@ -43,7 +43,7 @@ index cc10d101..78c4e5c1 100644 local hooks = config.content_hooks or H.default_content_hooks for _, f in ipairs(hooks) do content = f(content, buf_id) -@@ -409,6 +418,16 @@ MiniStarter.refresh = function(buf_id) +@@ -400,6 +409,16 @@ MiniStarter.refresh = function(buf_id) -- Apply current query (clear command line afterwards) H.make_query(buf_id) @@ -60,7 +60,7 @@ index cc10d101..78c4e5c1 100644 end --- Close Starter buffer -@@ -738,18 +757,45 @@ MiniStarter.gen_hook.aligning = function(horizontal, vertical) +@@ -729,18 +748,45 @@ MiniStarter.gen_hook.aligning = function(horizontal, vertical) local win_id = vim.fn.bufwinid(buf_id) if win_id < 0 then return end @@ -108,7 +108,7 @@ index cc10d101..78c4e5c1 100644 return MiniStarter.gen_hook.padding(left_pad, top_pad)(content) end end -@@ -1012,7 +1058,7 @@ H.default_footer = [[ +@@ -1003,7 +1049,7 @@ H.default_footer = [[ Type query to filter items <BS> deletes latest character from query <Esc> resets current query @@ -117,7 +117,7 @@ index cc10d101..78c4e5c1 100644 <CR> executes action of current item <C-c> closes this buffer]] -@@ -1053,8 +1099,54 @@ end +@@ -1044,8 +1090,54 @@ end H.apply_config = function(config) MiniStarter.config = config end @@ -173,7 +173,7 @@ index cc10d101..78c4e5c1 100644 if config.autoopen then local on_vimenter = function() -@@ -1066,7 +1158,7 @@ H.create_autocommands = function(config) +@@ -1057,7 +1149,7 @@ H.create_autocommands = function(config) vim.cmd('noautocmd lua MiniStarter.open()') end @@ -182,7 +182,7 @@ index cc10d101..78c4e5c1 100644 vim.api.nvim_create_autocmd('VimEnter', au_opts) end -@@ -1112,9 +1204,11 @@ H.normalize_header_footer = function(x) +@@ -1103,9 +1195,11 @@ H.normalize_header_footer = function(x) end -- Work with buffer content --------------------------------------------------- @@ -195,7 +195,7 @@ index cc10d101..78c4e5c1 100644 -- Add header lines for _, l in ipairs(header) do H.content_add_line(content, { H.content_unit(l, 'header', 'MiniStarterHeader') }) -@@ -1125,7 +1219,7 @@ H.make_initial_content = function(header, items, footer) +@@ -1116,7 +1210,7 @@ H.make_initial_content = function(header, items, footer) H.content_add_items(content, items) -- Add footer lines @@ -204,7 +204,7 @@ index cc10d101..78c4e5c1 100644 for _, l in ipairs(footer) do H.content_add_line(content, { H.content_unit(l, 'footer', 'MiniStarterFooter') }) end -@@ -1328,11 +1422,23 @@ H.make_buffer_autocmd = function(buf_id) +@@ -1319,11 +1413,23 @@ H.make_buffer_autocmd = function(buf_id) au('VimResized', function() MiniStarter.refresh(buf_id) end, 'Refresh') au('CursorMoved', function() H.position_cursor_on_current_item(buf_id) end, 'Position cursor') @@ -228,7 +228,7 @@ index cc10d101..78c4e5c1 100644 end H.apply_buffer_options = function(buf_id) -@@ -1345,7 +1451,7 @@ H.apply_buffer_options = function(buf_id) +@@ -1336,7 +1442,7 @@ H.apply_buffer_options = function(buf_id) vim.api.nvim_feedkeys('\28\14', 'nx', false) -- Having `noautocmd` is crucial for performance: ~9ms without it, ~1.6ms with it @@ -237,7 +237,7 @@ index cc10d101..78c4e5c1 100644 local options = { -- Taken from 'vim-startify' -@@ -1392,12 +1498,8 @@ H.apply_buffer_mappings = function(buf_id) +@@ -1383,12 +1489,8 @@ H.apply_buffer_mappings = function(buf_id) buf_keymap('<CR>', 'MiniStarter.eval_current_item()') @@ -252,7 +252,7 @@ index cc10d101..78c4e5c1 100644 -- Make all special symbols to update query for _, key in ipairs(vim.split(H.get_config().query_updaters, '')) do -@@ -1473,21 +1575,21 @@ H.is_something_shown = function() +@@ -1464,21 +1566,21 @@ H.is_something_shown = function() end -- Utilities ------------------------------------------------------------------ @@ -265,7 +265,7 @@ index cc10d101..78c4e5c1 100644 end -H.set_buf_name = function(buf_id, name) vim.api.nvim_buf_set_name(buf_id, 'ministarter://' .. buf_id .. '/' .. name) end -+H.set_buf_name = function(buf_id, name) vim.api.nvim_buf_set_name(buf_id, 'dashboard://' .. buf_id .. '/' .. name) end ++H.set_buf_name = function(buf_id, name) vim.api.nvim_buf_set_name(buf_id, '*dashboard*') end H.echo = function(msg, is_important) if H.get_config().silent then return end @@ -277,7 +277,7 @@ index cc10d101..78c4e5c1 100644 -- Avoid hit-enter-prompt local max_width = vim.o.columns * math.max(vim.o.cmdheight - 1, 0) + vim.v.echospace -@@ -1536,7 +1638,7 @@ H.eval_fun_or_string = function(x, string_as_cmd) +@@ -1527,7 +1629,7 @@ H.eval_fun_or_string = function(x, string_as_cmd) if type(x) == 'function' then return x() end if type(x) == 'string' then if string_as_cmd then |