lucasmz1 / wine_appimage

3 stars 3 forks source link

please add nvidia driver in wine_appimage #3

Closed newyorkthink closed 1 year ago

lucasmz1 commented 1 year ago

Are you using nouveau?

lucasmz1 commented 1 year ago

I can try but I can't promise nothing to you. Nvidia driver maybe incompatible with some computers that uses other hardware e.g AMD. Did you saw the other answer I gave to the issue you'd opened last week ? And also nvidia has multiple different drivers for many different Chipset videos. Which one are we talking about?

lucasmz1 commented 1 year ago

You can find my on telegram for we discuss more about that. Search for lucasmzainote21

newyorkthink commented 1 year ago

oh good:) i have some idea , meged intel driver

two : this is my yml ,you can refer;

version: 1

script:
  # Remove any previous build cache data
  - rm -rf AppDir appimage-builder-cache/var/cache/apt/archives/*wine* || true
  - mkdir -p appimage-build/prime AppDir/winedata && cp wrapper AppDir
  # Add winetricks
  - wget -q "https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks" -P ./AppDir/bin && chmod +x ./AppDir/bin/winetricks
  # Copy App icon to AppDir/usr/share/icons needed prior to appimage-builder ver 1.x.x
  - mkdir -p AppDir/usr/share/icons ; cp wine.svg AppDir/usr/share/icons
  # Add static appimage runtime
  - cp runtime/runtime-x86_64 appimage-build/prime/runtime-x86_64
  # Add config
  - cp -R config AppDir/winedata

AppDir:
  path: ./AppDir

  app_info:
    id: org.winehq.wine
    name: wine
    icon: wine
    version: "1.0"
    exec: bin/bash
    exec_args: $APPDIR/wrapper $@

  apt:
    arch: [amd64, i386]
    sources:
      - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse'
      - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse'
      - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse'
        key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920D1991BC93C'
      - sourceline: 'deb https://dl.winehq.org/wine-builds/ubuntu/ jammy main'
        key_url: 'https://dl.winehq.org/wine-builds/winehq.key'
      # - sourceline: 'deb http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu/ jammy main'
        # key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xFCAE110B1118213C'
      - sourceline: 'deb https://ppa.launchpadcontent.net/kisak/kisak-mesa/ubuntu jammy main'
        key_url: 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xf63f0f2b90935439'

    include:
      - wine-devel-i386=7.22~jammy-1
      - wine-devel-amd64=7.22~jammy-1
      - bash
      - cabextract
      - cups
      - dash
      - perl
      - coreutils
      - mesa-utils
      - mesa-utils-bin
      - unionfs-fuse
      - vulkan-tools
      - libcups2
      - libfuse2
      - libfuse3-3
      - libmspack0
      - gstreamer1.0-plugins-good:i386
      - gstreamer1.0-plugins-bad:i386
      - gstreamer1.0-plugins-ugly:i386
      - libnvidia-compute-520:i386
      - libnvidia-decode-520:i386
      - libnvidia-encode-520:i386
      - libnvidia-extra-520:i386
      - libnvidia-fbc1-520:i386
      - libnvidia-gl-520:i386
      - libdrm2:i386
      - libdrm-intel1:i386
      - libdrm-nouveau2:i386
      - libdrm-amdgpu1:i386
      - libdrm-radeon1:i386
      - libegl-mesa0:i386
      - libegl1:i386
      - libgbm1:i386
      - libgl1:i386
      - libgl1-mesa-dri:i386
      - libglapi-mesa:i386
      - libgles2:i386
      - libglvnd0:i386
      - libglx0:i386
      - libglx-mesa0:i386
      - mesa-vdpau-drivers:i386
      - mesa-va-drivers:i386
      - mesa-vulkan-drivers:i386
      - libopenal1:i386
      - libx11-6:i386
      - libx11-xcb1:i386
      - libxcb-dri2-0:i386
      - libxcb-dri3-0:i386
      - libxcb-glx0:i386
      - libxcb-present0:i386
      - libxcb-render0:i386
      - libxcb-shape0:i386
      - libxcb-shm0:i386
      - libxcb-xfixes0:i386
      - libxcb1:i386
      - alsa-tools
      - alsa-utils:i386
      - libpulse0
      - libasound2:i386
      - libglib2.0-0:i386
      - libgphoto2-6:i386
      - libgphoto2-port12:i386
      - libgstreamer-plugins-base1.0-0:i386
      - libgstreamer1.0-0:i386
      - libpcap0.8:i386
      - libsane:i386
      - libudev1:i386
      - libusb-1.0-0:i386
      - libxext6:i386
      - ocl-icd-libopencl1:i386
      - libopencl1:i386
      - libopencl-1.1-1:i386
      - libopencl-1.2-1:i386
      - libasound2-plugins:i386
      - libncurses6:i386
      - libncurses5:i386
      - libasound2:i386
      - libpulse0:i386  
      - libOpenAL1:i386
      - libgdk-pixbuf2.0-0:i386
      - libgl1-mesa-glx:i386
      - libglu1:i386
      - libgl1:i386
      - libegl1:i386
      - libglapi-mesa:i386
      - libgraphite2-3:i386
      - libharfbuzz0b:i386
      - libllvm11:i386
      - libmd4c0:i386
      - libepoxy0:i386
      - libgbm1:i386
      - winbind:i386
      - fonts-horai-umefont
      - fonts-wqy-microhei
      - ttf-mscorefonts-installer
      - gnome-exe-thumbnailer
      - libcurl4:i386
      - libgpg-error0:i386
      - libjack-jackd2-0:i38
      - liblcms2-2:i38
      - libldap-2.4-2:i386
      - libmpg123-0:i386
      - libsane-hpaio:i386
      - libsmbclient:i386
      - libsqlite3-0:i386
      - libva-drm2:i386
      - libva-x11-2:i386
      - libvdpau-va-gl1:i386
      - libvulkan1:i386
      - ocl-icd-libopencl1:i386
      - zlib1g:i386
      - libqt5core5a:i386
      - libqt5gui5:i386 
      - libqt5widgets5:i386
      - libqt5network5:i386
      - libqt5printsupport5:i386
      - libqt5sql5:i386
      - libqt5svg5:i386
      - libqt5multimedia5:i386
      - libqt5multimediawidgets5:i386

  files:
    exclude:
      - sbin
      - var
      - etc/alternatives
      - etc/apt
      - etc/cron.daily
      - etc/dpkg
      - etc/mysql
      - etc/sane.d
      - etc/sensors.d
      - etc/skel
      - etc/snmp
      - etc/udev
      - etc/gss
      - etc/init.d
      - etc/logrotate.d
      - lib/modprobe.d
      - lib/systemd
      - lib/udev
      - usr/lib/mime
      - usr/lib/sasl2
      - usr/lib/tmpfiles.d
      - usr/sbin
      - usr/share/apps
      - usr/share/man
      - usr/share/doc
      - usr/share/adduser
      - usr/share/apport
      - usr/share/bash-completion
      - usr/share/bug
      - usr/share/debconf
      - usr/share/doc
      - usr/share/doc-base
      - usr/share/dpkg
      - usr/share/glib-2.0
      - usr/share/gst-plugins-base
      - usr/share/hal
      - usr/share/info
      - usr/share/initramfs-tools
      - usr/share/kde4
      - usr/share/libgphoto2
      - usr/share/lintian
      - usr/share/menu
      - usr/share/metainfo
      - usr/share/mesa-demos
      - usr/share/mime
      - usr/share/misc
      - usr/share/mysql-common
      - usr/share/pixmaps
      - usr/share/pkgconfig
      - usr/share/polkit-1
      - usr/share/snmp
      - usr/share/zoneinfo
      - usr/share/zoneinfo-icu
      - usr/share/zsh
      - opt/wine-devel
      - opt/wine-staging/share/man
      - opt/wine-staging/share/applications
      - opt/wine-staging/lib/wine/i386-unix/*.a
      - opt/wine-staging/lib/wine/i386-windows/*.a
      - opt/wine-staging/lib64/wine/x86_64-unix/*.a
      - opt/wine-staging/lib64/wine/x86_64-windows/*.a

  after_bundle:
    # this is executed after the packages and files are added
    - |
     # Patch wrapper script
     sed -i 's|wine-appimage|wine-appimage-staging|' AppDir/wrapper

     # Check for rc builds
     if [ $(wget -qO- https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-amd64/ | grep wine-staging | tail -n1 | grep -c ~rc) -gt 0 ]; then
      WINE_VER="$(wget -qO- https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-amd64/ | grep wine-staging | sed 's|_| |g;s|~| |2' | awk '{print $5}' | tail -n1)"
     else
      WINE_VER="$(wget -qO- https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-amd64/ | grep wine-staging | sed 's|_| |g;s|~| |g' | awk '{print $5}' | tail -n1)"
     fi
     wget -q -c https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-i386/wine-staging_${WINE_VER}~jammy-1_i386.deb
     wget -q -c https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-i386/wine-staging-i386_${WINE_VER}~jammy-1_i386.deb
     wget -q -c https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-amd64/wine-staging_${WINE_VER}~jammy-1_amd64.deb
     wget -q -c https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/main/binary-amd64/wine-staging-amd64_${WINE_VER}~jammy-1_amd64.deb
     dpkg -x "wine-staging_${WINE_VER}~jammy-1_i386.deb" AppDir/
     dpkg -x "wine-staging-i386_${WINE_VER}~jammy-1_i386.deb" AppDir/
     dpkg -x "wine-staging_${WINE_VER}~jammy-1_amd64.deb" AppDir/
     dpkg -x "wine-staging-amd64_${WINE_VER}~jammy-1_amd64.deb" AppDir/
     (cd AppDir/usr/bin; ln -s "../../opt/wine-staging/bin/"* .)

     # Cleanup
     rm -rf AppDir/usr/share/{applications,man,doc}
     rm -rf AppDir/opt/wine-staging/share/{applications,man,doc}
     rm -rf AppDir/opt/wine-staging/lib/wine/i386-unix/*.a
     rm -rf AppDir/opt/wine-staging/lib/wine/i386-windows/*.a
     rm -rf AppDir/opt/wine-staging/lib64/wine/x86_64-unix/*.a
     rm -rf AppDir/opt/wine-staging/lib64/wine/x86_64-windows/*.a

     # Disable FileOpenAssociations
     sed -i 's|    LicenseInformation|    LicenseInformation,\\\n    FileOpenAssociations|g;$a \\n[FileOpenAssociations]\nHKCU,Software\\Wine\\FileOpenAssociations,"Enable",,"N"' AppDir/opt/wine-staging/share/wine/wine.inf

     # Disable winemenubuilder
     sed -i 's|    FileOpenAssociations|    FileOpenAssociations,\\\n    DllOverrides|;$a \\n[DllOverrides]\nHKCU,Software\\Wine\\DllOverrides,"*winemenubuilder.exe",,""' AppDir/opt/wine-staging/share/wine/wine.inf
     sed -i '/\%11\%\\winemenubuilder.exe -a -r/d' AppDir/opt/wine-staging/share/wine/wine.inf

     # Deploy wine-mono wine-gecko
     # For future reference setting of MONO_VER see https://github.com/wine-mirror/wine/tree/stable of wine-stable
     MONO_VER=$(wget "https://raw.githubusercontent.com/wine-mirror/wine/$(wget -qO- https://github.com/wine-mirror/wine/releases/tag/wine-${WINE_VER} | grep 'commit/' | sed -r 's|/wine-mirror/wine/commit/||g' | cut -d'"' -f2 | head -1)/dlls/appwiz.cpl/addons.c" -qO- | grep -Po 'MONO_VERSION.*[0-9]"' | cut -d'"' -f2)
     GECKO_VER=$(wget "https://raw.githubusercontent.com/wine-mirror/wine/$(wget -qO- https://github.com/wine-mirror/wine/releases/tag/wine-${WINE_VER} | grep 'commit/' | sed -r 's|/wine-mirror/wine/commit/||g' | cut -d'"' -f2 | head -1)/dlls/appwiz.cpl/addons.c" -qO- | grep -Po 'GECKO_VERSION.*[0-9]"' | cut -d'"' -f2)

     case "$WINE_VER" in
     3.0.1|3.0.2|3.0.3|3.0.4|3.0.5)
       GECKO_VER="2.47"
       MONO_VER="4.7.1"
       ;;

     4.0.1|4.0.2|4.0.3|4.0.4)
       GECKO_VER="2.47"
       MONO_VER="4.7.5"
       ;;

     5.0.1|5.0.2|5.0.3|5.0.4|5.0.5)
       GECKO_VER="2.47.1"
       MONO_VER="4.9.4"
       ;;

     6.0.1|6.0.2|6.0.3|6.0.4)
       GECKO_VER="2.47.2"
       MONO_VER="5.1.1"
       ;;

     7.0.1|7.0.2|7.0.3|7.0.4)
       GECKO_VER="2.47.2"
       MONO_VER="7.0.0-x86"
       ;;
     *)
       MONO_VER="$MONO_VER-x86"
       ;;
     esac

     if [[ $(echo $GECKO_VER |sed -e 's/\.//g') -le 247 ]]; then
        GECKO=wine_gecko-${GECKO_VER}
     else
        GECKO=wine-gecko-${GECKO_VER}
     fi

     MONO_URL="https://dl.winehq.org/wine/wine-mono/$(cut -d'-' -f1 <<< ${MONO_VER})/wine-mono-${MONO_VER}.msi"
     GECKO_URL_x86="https://dl.winehq.org/wine/wine-gecko/$GECKO_VER/${GECKO}-x86.msi"
     GECKO_URL_x86_64="https://dl.winehq.org/wine/wine-gecko/$GECKO_VER/${GECKO}-x86_64.msi"

     wget -q "$MONO_URL" -O AppDir/winedata/wine-mono-${MONO_VER}.msi
     wget -q "$GECKO_URL_x86" -O AppDir/winedata/${GECKO}-x86.msi
     wget -q "$GECKO_URL_x86_64" -O AppDir/winedata/${GECKO}-x86_64.msi

  runtime:
    env:
      LIBGL_DRIVERS_PATH: '${APPDIR}/usr/lib/i386-linux-gnu/dri:${APPDIR}/usr/lib/x86_64-linux-gnu/dri:${LIBGL_DRIVERS_PATH}'
      APPDIR_LIBC_VERSION: '2.38'

    path_mappings:
    - /opt/wine-staging:$APPDIR/opt/wine-staging

AppImage:
  update-information: gh-releases-zsync|mmtrt|WINE_AppImage|continuous-staging|wine-staging*.AppImage.zsync
  #sign-key: None
  arch: x86_64
newyorkthink commented 1 year ago

https://github.com/mmtrt/WINE_AppImage/issues/42

newyorkthink commented 1 year ago

gg

Are you using nouveau?

i use nvidia offical driver

ii  firmware-nvidia-gsp                  525.125.06-1                            amd64        NVIDIA GSP firmware
ii  glx-alternative-nvidia               1.2.2                                   amd64        allows the selection of NVIDIA as GLX provider
ii  libegl-nvidia0:amd64                 525.125.06-1                            amd64        NVIDIA binary EGL library
ii  libgl1-nvidia-glvnd-glx:amd64        525.125.06-1                            amd64        NVIDIA binary OpenGL/GLX library (GLVND variant)
ii  libgles-nvidia1:amd64                525.125.06-1                            amd64        NVIDIA binary OpenGL|ES 1.x library
ii  libgles-nvidia2:amd64                525.125.06-1                            amd64        NVIDIA binary OpenGL|ES 2.x library
ii  libglx-nvidia0:amd64                 525.125.06-1                            amd64        NVIDIA binary GLX library
ii  libnvidia-allocator1:amd64           525.125.06-1                            amd64        NVIDIA allocator runtime library
ii  libnvidia-cfg1:amd64                 525.125.06-1                            amd64        NVIDIA binary OpenGL/GLX configuration library
ii  libnvidia-egl-gbm1:amd64             1.1.0-3                                 amd64        GBM EGL external platform library for NVIDIA
ii  libnvidia-egl-wayland1:amd64         1:1.1.10-1                              amd64        Wayland EGL External Platform library -- shared library
ii  libnvidia-eglcore:amd64              525.125.06-1                            amd64        NVIDIA binary EGL core libraries
ii  libnvidia-encode1:amd64              525.125.06-1                            amd64        NVENC Video Encoding runtime library
ii  libnvidia-glcore:amd64               525.125.06-1                            amd64        NVIDIA binary OpenGL/GLX core libraries
ii  libnvidia-glvkspirv:amd64            525.125.06-1                            amd64        NVIDIA binary Vulkan Spir-V compiler library
ii  libnvidia-ml1:amd64                  525.125.06-1                            amd64        NVIDIA Management Library (NVML) runtime library
ii  libnvidia-ptxjitcompiler1:amd64      525.125.06-1                            amd64        NVIDIA PTX JIT Compiler library
ii  libnvidia-rtcore:amd64               525.125.06-1                            amd64        NVIDIA binary Vulkan ray tracing (rtcore) library
ii  nvidia-alternative                   525.125.06-1                            amd64        allows the selection of NVIDIA as GLX provider
hi  nvidia-driver                        525.125.06-1                            amd64        NVIDIA metapackage
ii  nvidia-driver-bin                    525.125.06-1                            amd64        NVIDIA driver support binaries
ii  nvidia-driver-libs:amd64             525.125.06-1                            amd64        NVIDIA metapackage (OpenGL/GLX/EGL/GLES libraries)
ii  nvidia-egl-common                    525.125.06-1                            amd64        NVIDIA binary EGL driver - common files
ii  nvidia-egl-icd:amd64                 525.125.06-1                            amd64        NVIDIA EGL installable client driver (ICD)
ii  nvidia-installer-cleanup             20220217+3                              amd64        cleanup after driver installation with the nvidia-installer
hi  nvidia-kernel-common                 20220217+3                              amd64        NVIDIA binary kernel module support files
hi  nvidia-kernel-dkms                   525.125.06-1                            amd64        NVIDIA binary kernel module DKMS source
ii  nvidia-kernel-support                525.125.06-1                            amd64        NVIDIA binary kernel module support files
ii  nvidia-legacy-check                  525.125.06-1                            amd64        check for NVIDIA GPUs requiring a legacy driver
ii  nvidia-modprobe                      535.54.03-1                             amd64        utility to load NVIDIA kernel modules and create device nodes
ii  nvidia-persistenced                  525.85.05-1                             amd64        daemon to maintain persistent software state in the NVIDIA driver
ii  nvidia-settings                      525.125.06-1                            amd64        tool for configuring the NVIDIA graphics driver
ii  nvidia-smi                           525.125.06-1                            amd64        NVIDIA System Management Interface
ii  nvidia-support                       20220217+3                              amd64        NVIDIA binary graphics driver support files
ii  nvidia-vdpau-driver:amd64            525.125.06-1                            amd64        Video Decode and Presentation API for Unix - NVIDIA driver
ii  nvidia-vulkan-common                 525.125.06-1                            amd64        NVIDIA Vulkan driver - common files
ii  nvidia-vulkan-icd:amd64              525.125.06-1                            amd64        NVIDIA Vulkan installable client driver (ICD)
ii  nvidia-xconfig                       525.85.05-1                             amd64        deprecated X configuration tool for non-free NVIDIA drivers
ii  xserver-xorg-video-nvidia            525.125.06-1                            amd64        NVIDIA binary Xorg driver

my core:

Linux thinker 6.4.8-x64v4-xanmod1 #0~20230804.g731bac0 SMP PREEMPT_DYNAMIC Fri Aug  4 06:33:59 UTC x86_64 GNU/Linux
lucasmz1 commented 1 year ago

Well if you need support I can help you seek for me on telegram lucasmzainote21