TigerVNC / tigervnc

High performance, multi-platform VNC client and server
https://tigervnc.org
GNU General Public License v2.0
5.14k stars 941 forks source link

german keyboard not correct working #665

Closed dominik96 closed 6 years ago

dominik96 commented 6 years ago

i compile vncserver and vncviewer self but it have a problem: on the host machine itself, the keyboard works smoothly but as soon as one catches the keyboard in VMWare most of the keys do not work like (z and y are swapped) and all the special characters are also somewhere can not determine which keyboard language is used

OS: Linux Fedora 28 x86_64 (KDE Plama 5) VNC Version: 1.8.0

%prep
%setup -q
cp -r /usr/share/xorg-x11-server-source/* unix/xserver
pushd unix/xserver
for all in `find . -type f -perm -001`; do
        chmod -x "$all"
done
%patch1 -p1 -b .xserver116-rebased
popd

%build
export CFLAGS="%{optflags} -fPIC -fuse-ld=gold -fuse-linker-plugin -Wall -Wformat=2"
export CXXFLAGS="$CFLAGS"
export FFLAGS="$CFLAGS"
export CPPFLAGS="$CFLAGS"
export CC="gcc $CFLAGS"
export SH_LDFLAGS="-Wl,-z,now -Wl,-z,relro -Wl,-z,noexecstack %{optflags} -fuse-ld=gold -fuse-linker-plugin"
export LDFLAGS="$SH_LDFLAGS -pie -fPIE"
cmake . -Wno-dev                                                                        \
    -DCMAKE_INSTALL_PREFIX=%{_prefix}                                                   \
    -DGNUTLS_INCLUDE_DIR=%{_includedir}                                                 \
    -DGNUTLS_LIBARY=%{_libdir}/libgnutls.so
make %{?smp_mflags}

pushd unix/xserver
autoreconf -fiv
%configure                                                                              \
        --disable-xorg                                                                  \
        --disable-xnest                                                                 \
        --disable-xvfb                                                                  \
        --disable-dmx                                                                   \
        --disable-xwin                                                                  \
        --disable-xephyr                                                                \
        --disable-kdrive                                                                \
        --disable-xwayland                                                              \
        --disable-unit-tests                                                            \
        --disable-config-hal                                                            \
        --disable-config-udev                                                           \
        --disable-static                                                                \
        --disable-dri                                                                   \
        --disable-devel-docs                                                            \
        --disable-selective-werror                                                      \
        --without-dtrace                                                                \
        --with-pic                                                                      \
        --with-default-font-path="catalogue:%{_sysconfdir}/X11/fontpath.d,built-ins"    \
        --with-xkb-output=%{_localstatedir}/lib/xkb                                     \
        --enable-glx                                                                    \
        --enable-dri2                                                                   \
        --enable-dri3
make %{?_smp_mflags}
popd

%install
make install DESTDIR=%{buildroot}
pushd unix/xserver/hw/vnc
make install DESTDIR=%{buildroot}
popd
rm -rf                                                                                  \
    %{buildroot}%{_prefix}/share/doc/                                                   \
    %{buildroot}%{_prefix}/share/locale/bg/                                             \
    %{buildroot}%{_prefix}/share/locale/da/                                             \
    %{buildroot}%{_prefix}/share/locale/el/                                             \
    %{buildroot}%{_prefix}/share/locale/eo/                                             \
    %{buildroot}%{_prefix}/share/locale/es/                                             \
    %{buildroot}%{_prefix}/share/locale/fi/                                             \
    %{buildroot}%{_prefix}/share/locale/fr/                                             \
    %{buildroot}%{_prefix}/share/locale/fur/                                            \
    %{buildroot}%{_prefix}/share/locale/hu/                                             \
    %{buildroot}%{_prefix}/share/locale/it/                                             \
    %{buildroot}%{_prefix}/share/locale/nl/                                             \
    %{buildroot}%{_prefix}/share/locale/pl/                                             \
    %{buildroot}%{_prefix}/share/locale/pt_BR/                                          \
    %{buildroot}%{_prefix}/share/locale/ru/                                             \
    %{buildroot}%{_prefix}/share/locale/sk/                                             \
    %{buildroot}%{_prefix}/share/locale/sr/                                             \
    %{buildroot}%{_prefix}/share/locale/sv/                                             \
    %{buildroot}%{_prefix}/share/locale/tr/                                             \
    %{buildroot}%{_prefix}/share/locale/uk/                                             \
    %{buildroot}%{_prefix}/share/locale/vi/                                             \
    %{buildroot}%{_prefix}/share/locale/zh_CN/                                          \
    %{buildroot}%{_prefix}/share/locale/id/                                             \
    %{buildroot}%{_mandir}                                                              \
    %{buildroot}%{_libdir}/xorg/modules/extensions/*.la
strip -s --strip-unneeded                                                               \
    %{buildroot}%{_bindir}/vncconfig                                                    \
    %{buildroot}%{_bindir}/vncviewer                                                    \
    %{buildroot}%{_bindir}/vncpasswd                                                    \
    %{buildroot}%{_bindir}/x0vncserver                                                  \
    %{buildroot}%{_bindir}/Xvnc                                                         \
    %{buildroot}%{_libdir}/xorg/modules/extensions/*.so

%files
%{_bindir}/*
%{_prefix}/share/applications/*.desktop
%{_prefix}/share/icons/hicolor/*
%{_prefix}/share/locale/de/*
%{_libdir}/xorg/modules/extensions/*.so
--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/59765222-german-keyboard-not-correct-working?utm_campaign=plugin&utm_content=tracker%2F3557444&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F3557444&utm_medium=issues&utm_source=github).
CendioOssman commented 6 years ago

I don't quite follow where VMware comes in to the picture? Are you running VMware inside the VNC session? And it works fine for every application except VMware?

How are you starting the server? And have you configured the correct keyboard layout inside the VNC session? Applications such as VMware are rather picky about keyboard configuration.

CendioOssman commented 6 years ago

No response.