├── .travis.yml ├── NotepadPlusPlus.manifest ├── README.md ├── libhookexecv.c ├── preloaderhook.c └── winedeploy.sh /.travis.yml: -------------------------------------------------------------------------------- 1 | language: c 2 | sudo: required 3 | dist: trusty 4 | os: linux 5 | 6 | script: 7 | - sudo apt-get -y install gcc-multilib 8 | - gcc -shared -fPIC -m32 -ldl libhookexecv.c -o libhookexecv.so 9 | - gcc -std=c99 -m32 -static preloaderhook.c -o wine-preloader_hook 10 | - strip libhookexecv.so wine-preloader_hook 11 | - bash -ex winedeploy.sh 12 | 13 | after_success: 14 | - wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh 15 | - bash ./upload.sh libhookexecv.so ./Wine*.AppImage* ./Notepad*.AppImage* wineprefix.tar.gz 16 | 17 | branches: 18 | except: 19 | - # Do not build tags that we create when we upload to GitHub Releases 20 | - /^(?i:continuous)$/ 21 | -------------------------------------------------------------------------------- /NotepadPlusPlus.manifest: -------------------------------------------------------------------------------- 1 | lib/wine/advapi32.dll.so 2 | lib/wine/advpack.dll.so 3 | lib/wine/api-ms-win-appmodel-runtime-l1-1-1.dll.so 4 | lib/wine/api-ms-win-core-fibers-l1-1-1.dll.so 5 | lib/wine/api-ms-win-core-localization-l1-2-1.dll.so 6 | lib/wine/api-ms-win-core-string-l1-1-0.dll.so 7 | lib/wine/api-ms-win-core-synch-l1-2-0.dll.so 8 | lib/wine/api-ms-win-core-sysinfo-l1-2-1.dll.so 9 | lib/wine/atl100.dll.so 10 | lib/wine/avicap32.dll.so 11 | lib/wine/bcrypt.dll.so 12 | lib/wine/comctl32.dll.so 13 | lib/wine/comdlg32.dll.so 14 | lib/wine/crypt32.dll.so 15 | lib/wine/cryptdlg.dll.so 16 | lib/wine/cryptnet.dll.so 17 | lib/wine/cryptui.dll.so 18 | lib/wine/dbghelp.dll.so 19 | lib/wine/devenum.dll.so 20 | lib/wine/dsound.dll.so 21 | lib/wine/explorer.exe.so 22 | lib/wine/fakedlls 23 | lib/wine/fakedlls/acledit.dll 24 | lib/wine/fakedlls/aclui.dll 25 | lib/wine/fakedlls/activeds.dll 26 | lib/wine/fakedlls/actxprxy.dll 27 | lib/wine/fakedlls/adsldpc.dll 28 | lib/wine/fakedlls/adsldp.dll 29 | lib/wine/fakedlls/advapi32.dll 30 | lib/wine/fakedlls/advpack.dll 31 | lib/wine/fakedlls/amstream.dll 32 | lib/wine/fakedlls/api-ms-win-appmodel-identity-l1-1-0.dll 33 | lib/wine/fakedlls/api-ms-win-appmodel-runtime-l1-1-1.dll 34 | lib/wine/fakedlls/api-ms-win-appmodel-runtime-l1-1-2.dll 35 | lib/wine/fakedlls/api-ms-win-core-apiquery-l1-1-0.dll 36 | lib/wine/fakedlls/api-ms-win-core-appcompat-l1-1-1.dll 37 | lib/wine/fakedlls/api-ms-win-core-appinit-l1-1-0.dll 38 | lib/wine/fakedlls/api-ms-win-core-atoms-l1-1-0.dll 39 | lib/wine/fakedlls/api-ms-win-core-bem-l1-1-0.dll 40 | lib/wine/fakedlls/api-ms-win-core-com-l1-1-0.dll 41 | lib/wine/fakedlls/api-ms-win-core-com-l1-1-1.dll 42 | lib/wine/fakedlls/api-ms-win-core-com-private-l1-1-0.dll 43 | lib/wine/fakedlls/api-ms-win-core-console-l1-1-0.dll 44 | lib/wine/fakedlls/api-ms-win-core-console-l2-1-0.dll 45 | lib/wine/fakedlls/api-ms-win-core-crt-l1-1-0.dll 46 | lib/wine/fakedlls/api-ms-win-core-crt-l2-1-0.dll 47 | lib/wine/fakedlls/api-ms-win-core-datetime-l1-1-0.dll 48 | lib/wine/fakedlls/api-ms-win-core-datetime-l1-1-1.dll 49 | lib/wine/fakedlls/api-ms-win-core-debug-l1-1-0.dll 50 | lib/wine/fakedlls/api-ms-win-core-debug-l1-1-1.dll 51 | lib/wine/fakedlls/api-ms-win-core-delayload-l1-1-0.dll 52 | lib/wine/fakedlls/api-ms-win-core-delayload-l1-1-1.dll 53 | lib/wine/fakedlls/api-ms-win-core-errorhandling-l1-1-0.dll 54 | lib/wine/fakedlls/api-ms-win-core-errorhandling-l1-1-1.dll 55 | lib/wine/fakedlls/api-ms-win-core-errorhandling-l1-1-2.dll 56 | lib/wine/fakedlls/api-ms-win-core-errorhandling-l1-1-3.dll 57 | lib/wine/fakedlls/api-ms-win-core-fibers-l1-1-0.dll 58 | lib/wine/fakedlls/api-ms-win-core-fibers-l1-1-1.dll 59 | lib/wine/fakedlls/api-ms-win-core-file-l1-1-0.dll 60 | lib/wine/fakedlls/api-ms-win-core-file-l1-2-0.dll 61 | lib/wine/fakedlls/api-ms-win-core-file-l1-2-1.dll 62 | lib/wine/fakedlls/api-ms-win-core-file-l1-2-2.dll 63 | lib/wine/fakedlls/api-ms-win-core-file-l2-1-0.dll 64 | lib/wine/fakedlls/api-ms-win-core-file-l2-1-1.dll 65 | lib/wine/fakedlls/api-ms-win-core-file-l2-1-2.dll 66 | lib/wine/fakedlls/api-ms-win-core-handle-l1-1-0.dll 67 | lib/wine/fakedlls/api-ms-win-core-heap-l1-1-0.dll 68 | lib/wine/fakedlls/api-ms-win-core-heap-l1-2-0.dll 69 | lib/wine/fakedlls/api-ms-win-core-heap-l2-1-0.dll 70 | lib/wine/fakedlls/api-ms-win-core-heap-obsolete-l1-1-0.dll 71 | lib/wine/fakedlls/api-ms-win-core-interlocked-l1-1-0.dll 72 | lib/wine/fakedlls/api-ms-win-core-interlocked-l1-2-0.dll 73 | lib/wine/fakedlls/api-ms-win-core-io-l1-1-0.dll 74 | lib/wine/fakedlls/api-ms-win-core-io-l1-1-1.dll 75 | lib/wine/fakedlls/api-ms-win-core-job-l1-1-0.dll 76 | lib/wine/fakedlls/api-ms-win-core-job-l2-1-0.dll 77 | lib/wine/fakedlls/api-ms-win-core-kernel32-legacy-l1-1-0.dll 78 | lib/wine/fakedlls/api-ms-win-core-kernel32-legacy-l1-1-1.dll 79 | lib/wine/fakedlls/api-ms-win-core-kernel32-private-l1-1-1.dll 80 | lib/wine/fakedlls/api-ms-win-core-largeinteger-l1-1-0.dll 81 | lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-1-0.dll 82 | lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-1-1.dll 83 | lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-2-0.dll 84 | lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-2-1.dll 85 | lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-2-2.dll 86 | lib/wine/fakedlls/api-ms-win-core-localization-l1-1-0.dll 87 | lib/wine/fakedlls/api-ms-win-core-localization-l1-2-0.dll 88 | lib/wine/fakedlls/api-ms-win-core-localization-l1-2-1.dll 89 | lib/wine/fakedlls/api-ms-win-core-localization-l2-1-0.dll 90 | lib/wine/fakedlls/api-ms-win-core-localization-obsolete-l1-1-0.dll 91 | lib/wine/fakedlls/api-ms-win-core-localization-obsolete-l1-2-0.dll 92 | lib/wine/fakedlls/api-ms-win-core-localization-obsolete-l1-3-0.dll 93 | lib/wine/fakedlls/api-ms-win-core-localization-private-l1-1-0.dll 94 | lib/wine/fakedlls/api-ms-win-core-localregistry-l1-1-0.dll 95 | lib/wine/fakedlls/api-ms-win-core-memory-l1-1-0.dll 96 | lib/wine/fakedlls/api-ms-win-core-memory-l1-1-1.dll 97 | lib/wine/fakedlls/api-ms-win-core-memory-l1-1-2.dll 98 | lib/wine/fakedlls/api-ms-win-core-misc-l1-1-0.dll 99 | lib/wine/fakedlls/api-ms-win-core-namedpipe-l1-1-0.dll 100 | lib/wine/fakedlls/api-ms-win-core-namedpipe-l1-2-0.dll 101 | lib/wine/fakedlls/api-ms-win-core-namespace-l1-1-0.dll 102 | lib/wine/fakedlls/api-ms-win-core-normalization-l1-1-0.dll 103 | lib/wine/fakedlls/api-ms-win-core-path-l1-1-0.dll 104 | lib/wine/fakedlls/api-ms-win-core-privateprofile-l1-1-1.dll 105 | lib/wine/fakedlls/api-ms-win-core-processenvironment-l1-1-0.dll 106 | lib/wine/fakedlls/api-ms-win-core-processenvironment-l1-2-0.dll 107 | lib/wine/fakedlls/api-ms-win-core-processthreads-l1-1-0.dll 108 | lib/wine/fakedlls/api-ms-win-core-processthreads-l1-1-1.dll 109 | lib/wine/fakedlls/api-ms-win-core-processthreads-l1-1-2.dll 110 | lib/wine/fakedlls/api-ms-win-core-processtopology-obsolete-l1-1-0.dll 111 | lib/wine/fakedlls/api-ms-win-core-profile-l1-1-0.dll 112 | lib/wine/fakedlls/api-ms-win-core-psapi-ansi-l1-1-0.dll 113 | lib/wine/fakedlls/api-ms-win-core-psapi-l1-1-0.dll 114 | lib/wine/fakedlls/api-ms-win-core-psapi-obsolete-l1-1-0.dll 115 | lib/wine/fakedlls/api-ms-win-core-quirks-l1-1-0.dll 116 | lib/wine/fakedlls/api-ms-win-core-realtime-l1-1-0.dll 117 | lib/wine/fakedlls/api-ms-win-core-registry-l1-1-0.dll 118 | lib/wine/fakedlls/api-ms-win-core-registry-l2-1-0.dll 119 | lib/wine/fakedlls/api-ms-win-core-registryuserspecific-l1-1-0.dll 120 | lib/wine/fakedlls/api-ms-win-core-rtlsupport-l1-1-0.dll 121 | lib/wine/fakedlls/api-ms-win-core-rtlsupport-l1-2-0.dll 122 | lib/wine/fakedlls/api-ms-win-core-shlwapi-legacy-l1-1-0.dll 123 | lib/wine/fakedlls/api-ms-win-core-shlwapi-obsolete-l1-1-0.dll 124 | lib/wine/fakedlls/api-ms-win-core-shlwapi-obsolete-l1-2-0.dll 125 | lib/wine/fakedlls/api-ms-win-core-shutdown-l1-1-0.dll 126 | lib/wine/fakedlls/api-ms-win-core-sidebyside-l1-1-0.dll 127 | lib/wine/fakedlls/api-ms-win-core-stringansi-l1-1-0.dll 128 | lib/wine/fakedlls/api-ms-win-core-string-l1-1-0.dll 129 | lib/wine/fakedlls/api-ms-win-core-string-l2-1-0.dll 130 | lib/wine/fakedlls/api-ms-win-core-string-obsolete-l1-1-0.dll 131 | lib/wine/fakedlls/api-ms-win-core-synch-ansi-l1-1-0.dll 132 | lib/wine/fakedlls/api-ms-win-core-synch-l1-1-0.dll 133 | lib/wine/fakedlls/api-ms-win-core-synch-l1-2-0.dll 134 | lib/wine/fakedlls/api-ms-win-core-synch-l1-2-1.dll 135 | lib/wine/fakedlls/api-ms-win-core-sysinfo-l1-1-0.dll 136 | lib/wine/fakedlls/api-ms-win-core-sysinfo-l1-2-0.dll 137 | lib/wine/fakedlls/api-ms-win-core-sysinfo-l1-2-1.dll 138 | lib/wine/fakedlls/api-ms-win-core-threadpool-l1-1-0.dll 139 | lib/wine/fakedlls/api-ms-win-core-threadpool-l1-2-0.dll 140 | lib/wine/fakedlls/api-ms-win-core-threadpool-legacy-l1-1-0.dll 141 | lib/wine/fakedlls/api-ms-win-core-threadpool-private-l1-1-0.dll 142 | lib/wine/fakedlls/api-ms-win-core-timezone-l1-1-0.dll 143 | lib/wine/fakedlls/api-ms-win-core-toolhelp-l1-1-0.dll 144 | lib/wine/fakedlls/api-ms-win-core-url-l1-1-0.dll 145 | lib/wine/fakedlls/api-ms-win-core-util-l1-1-0.dll 146 | lib/wine/fakedlls/api-ms-win-core-versionansi-l1-1-0.dll 147 | lib/wine/fakedlls/api-ms-win-core-version-l1-1-0.dll 148 | lib/wine/fakedlls/api-ms-win-core-version-l1-1-1.dll 149 | lib/wine/fakedlls/api-ms-win-core-version-private-l1-1-0.dll 150 | lib/wine/fakedlls/api-ms-win-core-windowserrorreporting-l1-1-0.dll 151 | lib/wine/fakedlls/api-ms-win-core-winrt-error-l1-1-0.dll 152 | lib/wine/fakedlls/api-ms-win-core-winrt-error-l1-1-1.dll 153 | lib/wine/fakedlls/api-ms-win-core-winrt-errorprivate-l1-1-1.dll 154 | lib/wine/fakedlls/api-ms-win-core-winrt-l1-1-0.dll 155 | lib/wine/fakedlls/api-ms-win-core-winrt-registration-l1-1-0.dll 156 | lib/wine/fakedlls/api-ms-win-core-winrt-roparameterizediid-l1-1-0.dll 157 | lib/wine/fakedlls/api-ms-win-core-winrt-string-l1-1-0.dll 158 | lib/wine/fakedlls/api-ms-win-core-wow64-l1-1-0.dll 159 | lib/wine/fakedlls/api-ms-win-core-wow64-l1-1-1.dll 160 | lib/wine/fakedlls/api-ms-win-core-xstate-l1-1-0.dll 161 | lib/wine/fakedlls/api-ms-win-core-xstate-l2-1-0.dll 162 | lib/wine/fakedlls/api-ms-win-crt-conio-l1-1-0.dll 163 | lib/wine/fakedlls/api-ms-win-crt-convert-l1-1-0.dll 164 | lib/wine/fakedlls/api-ms-win-crt-environment-l1-1-0.dll 165 | lib/wine/fakedlls/api-ms-win-crt-filesystem-l1-1-0.dll 166 | lib/wine/fakedlls/api-ms-win-crt-heap-l1-1-0.dll 167 | lib/wine/fakedlls/api-ms-win-crt-locale-l1-1-0.dll 168 | lib/wine/fakedlls/api-ms-win-crt-math-l1-1-0.dll 169 | lib/wine/fakedlls/api-ms-win-crt-multibyte-l1-1-0.dll 170 | lib/wine/fakedlls/api-ms-win-crt-private-l1-1-0.dll 171 | lib/wine/fakedlls/api-ms-win-crt-process-l1-1-0.dll 172 | lib/wine/fakedlls/api-ms-win-crt-runtime-l1-1-0.dll 173 | lib/wine/fakedlls/api-ms-win-crt-stdio-l1-1-0.dll 174 | lib/wine/fakedlls/api-ms-win-crt-string-l1-1-0.dll 175 | lib/wine/fakedlls/api-ms-win-crt-time-l1-1-0.dll 176 | lib/wine/fakedlls/api-ms-win-crt-utility-l1-1-0.dll 177 | lib/wine/fakedlls/api-ms-win-devices-config-l1-1-1.dll 178 | lib/wine/fakedlls/api-ms-win-devices-query-l1-1-1.dll 179 | lib/wine/fakedlls/api-ms-win-downlevel-advapi32-l1-1-0.dll 180 | lib/wine/fakedlls/api-ms-win-downlevel-advapi32-l2-1-0.dll 181 | lib/wine/fakedlls/api-ms-win-downlevel-normaliz-l1-1-0.dll 182 | lib/wine/fakedlls/api-ms-win-downlevel-ole32-l1-1-0.dll 183 | lib/wine/fakedlls/api-ms-win-downlevel-shell32-l1-1-0.dll 184 | lib/wine/fakedlls/api-ms-win-downlevel-shlwapi-l1-1-0.dll 185 | lib/wine/fakedlls/api-ms-win-downlevel-shlwapi-l2-1-0.dll 186 | lib/wine/fakedlls/api-ms-win-downlevel-user32-l1-1-0.dll 187 | lib/wine/fakedlls/api-ms-win-downlevel-version-l1-1-0.dll 188 | lib/wine/fakedlls/api-ms-win-dx-d3dkmt-l1-1-0.dll 189 | lib/wine/fakedlls/api-ms-win-eventing-classicprovider-l1-1-0.dll 190 | lib/wine/fakedlls/api-ms-win-eventing-consumer-l1-1-0.dll 191 | lib/wine/fakedlls/api-ms-win-eventing-controller-l1-1-0.dll 192 | lib/wine/fakedlls/api-ms-win-eventing-legacy-l1-1-0.dll 193 | lib/wine/fakedlls/api-ms-win-eventing-provider-l1-1-0.dll 194 | lib/wine/fakedlls/api-ms-win-eventlog-legacy-l1-1-0.dll 195 | lib/wine/fakedlls/api-ms-win-gdi-dpiinfo-l1-1-0.dll 196 | lib/wine/fakedlls/api-ms-win-mm-joystick-l1-1-0.dll 197 | lib/wine/fakedlls/api-ms-win-mm-misc-l1-1-1.dll 198 | lib/wine/fakedlls/api-ms-win-mm-mme-l1-1-0.dll 199 | lib/wine/fakedlls/api-ms-win-mm-time-l1-1-0.dll 200 | lib/wine/fakedlls/api-ms-win-ntuser-dc-access-l1-1-0.dll 201 | lib/wine/fakedlls/api-ms-win-ntuser-rectangle-l1-1-0.dll 202 | lib/wine/fakedlls/api-ms-win-perf-legacy-l1-1-0.dll 203 | lib/wine/fakedlls/api-ms-win-power-base-l1-1-0.dll 204 | lib/wine/fakedlls/api-ms-win-power-setting-l1-1-0.dll 205 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-draw-l1-1-0.dll 206 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-private-l1-1-0.dll 207 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-private-l1-1-4.dll 208 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-window-l1-1-0.dll 209 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-winevent-l1-1-0.dll 210 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-wmpointer-l1-1-0.dll 211 | lib/wine/fakedlls/api-ms-win-rtcore-ntuser-wmpointer-l1-1-3.dll 212 | lib/wine/fakedlls/api-ms-win-security-activedirectoryclient-l1-1-0.dll 213 | lib/wine/fakedlls/api-ms-win-security-audit-l1-1-1.dll 214 | lib/wine/fakedlls/api-ms-win-security-base-l1-1-0.dll 215 | lib/wine/fakedlls/api-ms-win-security-base-l1-2-0.dll 216 | lib/wine/fakedlls/api-ms-win-security-base-private-l1-1-1.dll 217 | lib/wine/fakedlls/api-ms-win-security-credentials-l1-1-0.dll 218 | lib/wine/fakedlls/api-ms-win-security-grouppolicy-l1-1-0.dll 219 | lib/wine/fakedlls/api-ms-win-security-lsalookup-l1-1-0.dll 220 | lib/wine/fakedlls/api-ms-win-security-lsalookup-l1-1-1.dll 221 | lib/wine/fakedlls/api-ms-win-security-lsalookup-l2-1-0.dll 222 | lib/wine/fakedlls/api-ms-win-security-lsalookup-l2-1-1.dll 223 | lib/wine/fakedlls/api-ms-win-security-lsapolicy-l1-1-0.dll 224 | lib/wine/fakedlls/api-ms-win-security-provider-l1-1-0.dll 225 | lib/wine/fakedlls/api-ms-win-security-sddl-l1-1-0.dll 226 | lib/wine/fakedlls/api-ms-win-security-systemfunctions-l1-1-0.dll 227 | lib/wine/fakedlls/api-ms-win-service-core-l1-1-0.dll 228 | lib/wine/fakedlls/api-ms-win-service-core-l1-1-1.dll 229 | lib/wine/fakedlls/api-ms-win-service-management-l1-1-0.dll 230 | lib/wine/fakedlls/api-ms-win-service-management-l2-1-0.dll 231 | lib/wine/fakedlls/api-ms-win-service-private-l1-1-1.dll 232 | lib/wine/fakedlls/api-ms-win-service-winsvc-l1-1-0.dll 233 | lib/wine/fakedlls/api-ms-win-service-winsvc-l1-2-0.dll 234 | lib/wine/fakedlls/api-ms-win-shcore-obsolete-l1-1-0.dll 235 | lib/wine/fakedlls/api-ms-win-shcore-scaling-l1-1-1.dll 236 | lib/wine/fakedlls/api-ms-win-shcore-stream-l1-1-0.dll 237 | lib/wine/fakedlls/api-ms-win-shcore-thread-l1-1-0.dll 238 | lib/wine/fakedlls/api-ms-win-shell-shellcom-l1-1-0.dll 239 | lib/wine/fakedlls/api-ms-win-shell-shellfolders-l1-1-0.dll 240 | lib/wine/fakedlls/apphelp.dll 241 | lib/wine/fakedlls/appwiz.cpl 242 | lib/wine/fakedlls/arp.exe 243 | lib/wine/fakedlls/aspnet_regiis.exe 244 | lib/wine/fakedlls/atl100.dll 245 | lib/wine/fakedlls/atl110.dll 246 | lib/wine/fakedlls/atl80.dll 247 | lib/wine/fakedlls/atl90.dll 248 | lib/wine/fakedlls/atl.dll 249 | lib/wine/fakedlls/attrib.exe 250 | lib/wine/fakedlls/authz.dll 251 | lib/wine/fakedlls/avicap32.dll 252 | lib/wine/fakedlls/avifil32.dll 253 | lib/wine/fakedlls/avifile.dll16 254 | lib/wine/fakedlls/avrt.dll 255 | lib/wine/fakedlls/bcrypt.dll 256 | lib/wine/fakedlls/bluetoothapis.dll 257 | lib/wine/fakedlls/browseui.dll 258 | lib/wine/fakedlls/bthprops.cpl 259 | lib/wine/fakedlls/cabarc.exe 260 | lib/wine/fakedlls/cabinet.dll 261 | lib/wine/fakedlls/cacls.exe 262 | lib/wine/fakedlls/capi2032.dll 263 | lib/wine/fakedlls/cards.dll 264 | lib/wine/fakedlls/cdosys.dll 265 | lib/wine/fakedlls/cfgmgr32.dll 266 | lib/wine/fakedlls/clock.exe 267 | lib/wine/fakedlls/clusapi.dll 268 | lib/wine/fakedlls/cmd.exe 269 | lib/wine/fakedlls/combase.dll 270 | lib/wine/fakedlls/comcat.dll 271 | lib/wine/fakedlls/comctl32.dll 272 | lib/wine/fakedlls/comdlg32.dll 273 | lib/wine/fakedlls/commdlg.dll16 274 | lib/wine/fakedlls/comm.drv16 275 | lib/wine/fakedlls/compobj.dll16 276 | lib/wine/fakedlls/compstui.dll 277 | lib/wine/fakedlls/comsvcs.dll 278 | lib/wine/fakedlls/concrt140.dll 279 | lib/wine/fakedlls/conhost.exe 280 | lib/wine/fakedlls/connect.dll 281 | lib/wine/fakedlls/control.exe 282 | lib/wine/fakedlls/credui.dll 283 | lib/wine/fakedlls/crtdll.dll 284 | lib/wine/fakedlls/crypt32.dll 285 | lib/wine/fakedlls/cryptdlg.dll 286 | lib/wine/fakedlls/cryptdll.dll 287 | lib/wine/fakedlls/cryptext.dll 288 | lib/wine/fakedlls/cryptnet.dll 289 | lib/wine/fakedlls/cryptui.dll 290 | lib/wine/fakedlls/cscript.exe 291 | lib/wine/fakedlls/ctapi32.dll 292 | lib/wine/fakedlls/ctl3d32.dll 293 | lib/wine/fakedlls/ctl3d.dll16 294 | lib/wine/fakedlls/ctl3dv2.dll16 295 | lib/wine/fakedlls/d2d1.dll 296 | lib/wine/fakedlls/d3d10_1.dll 297 | lib/wine/fakedlls/d3d10core.dll 298 | lib/wine/fakedlls/d3d10.dll 299 | lib/wine/fakedlls/d3d11.dll 300 | lib/wine/fakedlls/d3d12.dll 301 | lib/wine/fakedlls/d3d8.dll 302 | lib/wine/fakedlls/d3d9.dll 303 | lib/wine/fakedlls/d3dcompiler_33.dll 304 | lib/wine/fakedlls/d3dcompiler_34.dll 305 | lib/wine/fakedlls/d3dcompiler_35.dll 306 | lib/wine/fakedlls/d3dcompiler_36.dll 307 | lib/wine/fakedlls/d3dcompiler_37.dll 308 | lib/wine/fakedlls/d3dcompiler_38.dll 309 | lib/wine/fakedlls/d3dcompiler_39.dll 310 | lib/wine/fakedlls/d3dcompiler_40.dll 311 | lib/wine/fakedlls/d3dcompiler_41.dll 312 | lib/wine/fakedlls/d3dcompiler_42.dll 313 | lib/wine/fakedlls/d3dcompiler_43.dll 314 | lib/wine/fakedlls/d3dcompiler_46.dll 315 | lib/wine/fakedlls/d3dcompiler_47.dll 316 | lib/wine/fakedlls/d3dim.dll 317 | lib/wine/fakedlls/d3drm.dll 318 | lib/wine/fakedlls/d3dx10_33.dll 319 | lib/wine/fakedlls/d3dx10_34.dll 320 | lib/wine/fakedlls/d3dx10_35.dll 321 | lib/wine/fakedlls/d3dx10_36.dll 322 | lib/wine/fakedlls/d3dx10_37.dll 323 | lib/wine/fakedlls/d3dx10_38.dll 324 | lib/wine/fakedlls/d3dx10_39.dll 325 | lib/wine/fakedlls/d3dx10_40.dll 326 | lib/wine/fakedlls/d3dx10_41.dll 327 | lib/wine/fakedlls/d3dx10_42.dll 328 | lib/wine/fakedlls/d3dx10_43.dll 329 | lib/wine/fakedlls/d3dx11_42.dll 330 | lib/wine/fakedlls/d3dx11_43.dll 331 | lib/wine/fakedlls/d3dx9_24.dll 332 | lib/wine/fakedlls/d3dx9_25.dll 333 | lib/wine/fakedlls/d3dx9_26.dll 334 | lib/wine/fakedlls/d3dx9_27.dll 335 | lib/wine/fakedlls/d3dx9_28.dll 336 | lib/wine/fakedlls/d3dx9_29.dll 337 | lib/wine/fakedlls/d3dx9_30.dll 338 | lib/wine/fakedlls/d3dx9_31.dll 339 | lib/wine/fakedlls/d3dx9_32.dll 340 | lib/wine/fakedlls/d3dx9_33.dll 341 | lib/wine/fakedlls/d3dx9_34.dll 342 | lib/wine/fakedlls/d3dx9_35.dll 343 | lib/wine/fakedlls/d3dx9_36.dll 344 | lib/wine/fakedlls/d3dx9_37.dll 345 | lib/wine/fakedlls/d3dx9_38.dll 346 | lib/wine/fakedlls/d3dx9_39.dll 347 | lib/wine/fakedlls/d3dx9_40.dll 348 | lib/wine/fakedlls/d3dx9_41.dll 349 | lib/wine/fakedlls/d3dx9_42.dll 350 | lib/wine/fakedlls/d3dx9_43.dll 351 | lib/wine/fakedlls/d3dxof.dll 352 | lib/wine/fakedlls/davclnt.dll 353 | lib/wine/fakedlls/dbgeng.dll 354 | lib/wine/fakedlls/dbghelp.dll 355 | lib/wine/fakedlls/dciman32.dll 356 | lib/wine/fakedlls/ddeml.dll16 357 | lib/wine/fakedlls/ddhelp.exe 358 | lib/wine/fakedlls/ddraw.dll 359 | lib/wine/fakedlls/ddrawex.dll 360 | lib/wine/fakedlls/devenum.dll 361 | lib/wine/fakedlls/dhcpcsvc.dll 362 | lib/wine/fakedlls/dhtmled.ocx 363 | lib/wine/fakedlls/difxapi.dll 364 | lib/wine/fakedlls/dinput8.dll 365 | lib/wine/fakedlls/dinput.dll 366 | lib/wine/fakedlls/dispdib.dll16 367 | lib/wine/fakedlls/dispex.dll 368 | lib/wine/fakedlls/display.drv16 369 | lib/wine/fakedlls/dmband.dll 370 | lib/wine/fakedlls/dmcompos.dll 371 | lib/wine/fakedlls/dmime.dll 372 | lib/wine/fakedlls/dmloader.dll 373 | lib/wine/fakedlls/dmscript.dll 374 | lib/wine/fakedlls/dmstyle.dll 375 | lib/wine/fakedlls/dmsynth.dll 376 | lib/wine/fakedlls/dmusic32.dll 377 | lib/wine/fakedlls/dmusic.dll 378 | lib/wine/fakedlls/dnsapi.dll 379 | lib/wine/fakedlls/dosx.exe 380 | lib/wine/fakedlls/dplay.dll 381 | lib/wine/fakedlls/dplayx.dll 382 | lib/wine/fakedlls/dpnaddr.dll 383 | lib/wine/fakedlls/dpnet.dll 384 | lib/wine/fakedlls/dpnhpast.dll 385 | lib/wine/fakedlls/dpnlobby.dll 386 | lib/wine/fakedlls/dpnsvr.exe 387 | lib/wine/fakedlls/dpvoice.dll 388 | lib/wine/fakedlls/dpwsockx.dll 389 | lib/wine/fakedlls/drmclien.dll 390 | lib/wine/fakedlls/dsound.dll 391 | lib/wine/fakedlls/dsound.vxd 392 | lib/wine/fakedlls/dsquery.dll 393 | lib/wine/fakedlls/dssenh.dll 394 | lib/wine/fakedlls/dswave.dll 395 | lib/wine/fakedlls/dwmapi.dll 396 | lib/wine/fakedlls/dwrite.dll 397 | lib/wine/fakedlls/dx8vb.dll 398 | lib/wine/fakedlls/dxdiag.exe 399 | lib/wine/fakedlls/dxdiagn.dll 400 | lib/wine/fakedlls/dxgi.dll 401 | lib/wine/fakedlls/dxva2.dll 402 | lib/wine/fakedlls/eject.exe 403 | lib/wine/fakedlls/esent.dll 404 | lib/wine/fakedlls/evr.dll 405 | lib/wine/fakedlls/expand.exe 406 | lib/wine/fakedlls/explorer.exe 407 | lib/wine/fakedlls/explorerframe.dll 408 | lib/wine/fakedlls/ext-ms-win-authz-context-l1-1-0.dll 409 | lib/wine/fakedlls/ext-ms-win-domainjoin-netjoin-l1-1-0.dll 410 | lib/wine/fakedlls/ext-ms-win-dwmapi-ext-l1-1-0.dll 411 | lib/wine/fakedlls/ext-ms-win-gdi-dc-create-l1-1-1.dll 412 | lib/wine/fakedlls/ext-ms-win-gdi-dc-l1-2-0.dll 413 | lib/wine/fakedlls/ext-ms-win-gdi-devcaps-l1-1-0.dll 414 | lib/wine/fakedlls/ext-ms-win-gdi-draw-l1-1-1.dll 415 | lib/wine/fakedlls/ext-ms-win-gdi-render-l1-1-0.dll 416 | lib/wine/fakedlls/ext-ms-win-kernel32-package-current-l1-1-0.dll 417 | lib/wine/fakedlls/ext-ms-win-kernel32-package-l1-1-1.dll 418 | lib/wine/fakedlls/ext-ms-win-ntuser-draw-l1-1-0.dll 419 | lib/wine/fakedlls/ext-ms-win-ntuser-gui-l1-3-0.dll 420 | lib/wine/fakedlls/ext-ms-win-ntuser-keyboard-l1-3-0.dll 421 | lib/wine/fakedlls/ext-ms-win-ntuser-message-l1-1-1.dll 422 | lib/wine/fakedlls/ext-ms-win-ntuser-misc-l1-5-1.dll 423 | lib/wine/fakedlls/ext-ms-win-ntuser-mouse-l1-1-0.dll 424 | lib/wine/fakedlls/ext-ms-win-ntuser-private-l1-1-1.dll 425 | lib/wine/fakedlls/ext-ms-win-ntuser-private-l1-3-1.dll 426 | lib/wine/fakedlls/ext-ms-win-ntuser-rectangle-ext-l1-1-0.dll 427 | lib/wine/fakedlls/ext-ms-win-ntuser-uicontext-ext-l1-1-0.dll 428 | lib/wine/fakedlls/ext-ms-win-ntuser-windowclass-l1-1-1.dll 429 | lib/wine/fakedlls/ext-ms-win-ntuser-window-l1-1-1.dll 430 | lib/wine/fakedlls/ext-ms-win-ntuser-window-l1-1-4.dll 431 | lib/wine/fakedlls/ext-ms-win-oleacc-l1-1-0.dll 432 | lib/wine/fakedlls/ext-ms-win-ras-rasapi32-l1-1-0.dll 433 | lib/wine/fakedlls/ext-ms-win-rtcore-gdi-devcaps-l1-1-0.dll 434 | lib/wine/fakedlls/ext-ms-win-rtcore-gdi-object-l1-1-0.dll 435 | lib/wine/fakedlls/ext-ms-win-rtcore-gdi-rgn-l1-1-0.dll 436 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-cursor-l1-1-0.dll 437 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-dc-access-l1-1-0.dll 438 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-dpi-l1-1-0.dll 439 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-dpi-l1-2-0.dll 440 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-rawinput-l1-1-0.dll 441 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-syscolors-l1-1-0.dll 442 | lib/wine/fakedlls/ext-ms-win-rtcore-ntuser-sysparams-l1-1-0.dll 443 | lib/wine/fakedlls/ext-ms-win-security-credui-l1-1-0.dll 444 | lib/wine/fakedlls/ext-ms-win-security-cryptui-l1-1-0.dll 445 | lib/wine/fakedlls/extrac32.exe 446 | lib/wine/fakedlls/faultrep.dll 447 | lib/wine/fakedlls/findstr.exe 448 | lib/wine/fakedlls/fltlib.dll 449 | lib/wine/fakedlls/fltmgr.sys 450 | lib/wine/fakedlls/fntcache.dll 451 | lib/wine/fakedlls/fontsub.dll 452 | lib/wine/fakedlls/fsutil.exe 453 | lib/wine/fakedlls/fusion.dll 454 | lib/wine/fakedlls/fwpuclnt.dll 455 | lib/wine/fakedlls/gameux.dll 456 | lib/wine/fakedlls/gdi32.dll 457 | lib/wine/fakedlls/gdi.exe16 458 | lib/wine/fakedlls/gdiplus.dll 459 | lib/wine/fakedlls/glu32.dll 460 | lib/wine/fakedlls/gphoto2.ds 461 | lib/wine/fakedlls/gpkcsp.dll 462 | lib/wine/fakedlls/hal.dll 463 | lib/wine/fakedlls/hhctrl.ocx 464 | lib/wine/fakedlls/hh.exe 465 | lib/wine/fakedlls/hidclass.sys 466 | lib/wine/fakedlls/hid.dll 467 | lib/wine/fakedlls/hlink.dll 468 | lib/wine/fakedlls/hnetcfg.dll 469 | lib/wine/fakedlls/hostname.exe 470 | lib/wine/fakedlls/httpapi.dll 471 | lib/wine/fakedlls/icacls.exe 472 | lib/wine/fakedlls/iccvid.dll 473 | lib/wine/fakedlls/icinfo.exe 474 | lib/wine/fakedlls/icmp.dll 475 | lib/wine/fakedlls/ieframe.dll 476 | lib/wine/fakedlls/ieproxy.dll 477 | lib/wine/fakedlls/iexplore.exe 478 | lib/wine/fakedlls/ifsmgr.vxd 479 | lib/wine/fakedlls/imaadp32.acm 480 | lib/wine/fakedlls/imagehlp.dll 481 | lib/wine/fakedlls/imm32.dll 482 | lib/wine/fakedlls/imm.dll16 483 | lib/wine/fakedlls/inetcomm.dll 484 | lib/wine/fakedlls/inetcpl.cpl 485 | lib/wine/fakedlls/inetmib1.dll 486 | lib/wine/fakedlls/infosoft.dll 487 | lib/wine/fakedlls/initpki.dll 488 | lib/wine/fakedlls/inkobj.dll 489 | lib/wine/fakedlls/inseng.dll 490 | lib/wine/fakedlls/ipconfig.exe 491 | lib/wine/fakedlls/iphlpapi.dll 492 | lib/wine/fakedlls/iprop.dll 493 | lib/wine/fakedlls/irprops.cpl 494 | lib/wine/fakedlls/itircl.dll 495 | lib/wine/fakedlls/itss.dll 496 | lib/wine/fakedlls/joy.cpl 497 | lib/wine/fakedlls/jscript.dll 498 | lib/wine/fakedlls/jsproxy.dll 499 | lib/wine/fakedlls/kerberos.dll 500 | lib/wine/fakedlls/kernel32.dll 501 | lib/wine/fakedlls/kernelbase.dll 502 | lib/wine/fakedlls/keyboard.drv16 503 | lib/wine/fakedlls/krnl386.exe16 504 | lib/wine/fakedlls/ksuser.dll 505 | lib/wine/fakedlls/ktmw32.dll 506 | lib/wine/fakedlls/l3codeca.acm 507 | lib/wine/fakedlls/loadperf.dll 508 | lib/wine/fakedlls/localspl.dll 509 | lib/wine/fakedlls/localui.dll 510 | lib/wine/fakedlls/lodctr.exe 511 | lib/wine/fakedlls/lz32.dll 512 | lib/wine/fakedlls/lzexpand.dll16 513 | lib/wine/fakedlls/mapi32.dll 514 | lib/wine/fakedlls/mapistub.dll 515 | lib/wine/fakedlls/mciavi32.dll 516 | lib/wine/fakedlls/mcicda.dll 517 | lib/wine/fakedlls/mciqtz32.dll 518 | lib/wine/fakedlls/mciseq.dll 519 | lib/wine/fakedlls/mciwave.dll 520 | lib/wine/fakedlls/mf3216.dll 521 | lib/wine/fakedlls/mf.dll 522 | lib/wine/fakedlls/mfplat.dll 523 | lib/wine/fakedlls/mfreadwrite.dll 524 | lib/wine/fakedlls/mgmtapi.dll 525 | lib/wine/fakedlls/midimap.dll 526 | lib/wine/fakedlls/mlang.dll 527 | lib/wine/fakedlls/mmcndmgr.dll 528 | lib/wine/fakedlls/mmdevapi.dll 529 | lib/wine/fakedlls/mmdevldr.vxd 530 | lib/wine/fakedlls/mmsystem.dll16 531 | lib/wine/fakedlls/mofcomp.exe 532 | lib/wine/fakedlls/monodebg.vxd 533 | lib/wine/fakedlls/mountmgr.sys 534 | lib/wine/fakedlls/mouse.drv16 535 | lib/wine/fakedlls/mprapi.dll 536 | lib/wine/fakedlls/mpr.dll 537 | lib/wine/fakedlls/msacm32.dll 538 | lib/wine/fakedlls/msacm32.drv 539 | lib/wine/fakedlls/msacm.dll16 540 | lib/wine/fakedlls/msadp32.acm 541 | lib/wine/fakedlls/msasn1.dll 542 | lib/wine/fakedlls/mscat32.dll 543 | lib/wine/fakedlls/mscms.dll 544 | lib/wine/fakedlls/mscoree.dll 545 | lib/wine/fakedlls/msctf.dll 546 | lib/wine/fakedlls/msctfp.dll 547 | lib/wine/fakedlls/msdaps.dll 548 | lib/wine/fakedlls/msdelta.dll 549 | lib/wine/fakedlls/msdmo.dll 550 | lib/wine/fakedlls/msdrm.dll 551 | lib/wine/fakedlls/msftedit.dll 552 | lib/wine/fakedlls/msg711.acm 553 | lib/wine/fakedlls/msgsm32.acm 554 | lib/wine/fakedlls/mshta.exe 555 | lib/wine/fakedlls/mshtml.dll 556 | lib/wine/fakedlls/mshtml.tlb 557 | lib/wine/fakedlls/msident.dll 558 | lib/wine/fakedlls/msi.dll 559 | lib/wine/fakedlls/msiexec.exe 560 | lib/wine/fakedlls/msimg32.dll 561 | lib/wine/fakedlls/msimsg.dll 562 | lib/wine/fakedlls/msimtf.dll 563 | lib/wine/fakedlls/msinfo32.exe 564 | lib/wine/fakedlls/msisip.dll 565 | lib/wine/fakedlls/msisys.ocx 566 | lib/wine/fakedlls/msls31.dll 567 | lib/wine/fakedlls/msnet32.dll 568 | lib/wine/fakedlls/mspatcha.dll 569 | lib/wine/fakedlls/msports.dll 570 | lib/wine/fakedlls/msrle32.dll 571 | lib/wine/fakedlls/msscript.ocx 572 | lib/wine/fakedlls/mssign32.dll 573 | lib/wine/fakedlls/mssip32.dll 574 | lib/wine/fakedlls/mstask.dll 575 | lib/wine/fakedlls/msvcirt.dll 576 | lib/wine/fakedlls/msvcm80.dll 577 | lib/wine/fakedlls/msvcm90.dll 578 | lib/wine/fakedlls/msvcp100.dll 579 | lib/wine/fakedlls/msvcp110.dll 580 | lib/wine/fakedlls/msvcp120_app.dll 581 | lib/wine/fakedlls/msvcp120.dll 582 | lib/wine/fakedlls/msvcp140.dll 583 | lib/wine/fakedlls/msvcp60.dll 584 | lib/wine/fakedlls/msvcp70.dll 585 | lib/wine/fakedlls/msvcp71.dll 586 | lib/wine/fakedlls/msvcp80.dll 587 | lib/wine/fakedlls/msvcp90.dll 588 | lib/wine/fakedlls/msvcr100.dll 589 | lib/wine/fakedlls/msvcr110.dll 590 | lib/wine/fakedlls/msvcr120_app.dll 591 | lib/wine/fakedlls/msvcr120.dll 592 | lib/wine/fakedlls/msvcr70.dll 593 | lib/wine/fakedlls/msvcr71.dll 594 | lib/wine/fakedlls/msvcr80.dll 595 | lib/wine/fakedlls/msvcr90.dll 596 | lib/wine/fakedlls/msvcrt20.dll 597 | lib/wine/fakedlls/msvcrt40.dll 598 | lib/wine/fakedlls/msvcrtd.dll 599 | lib/wine/fakedlls/msvcrt.dll 600 | lib/wine/fakedlls/msvfw32.dll 601 | lib/wine/fakedlls/msvidc32.dll 602 | lib/wine/fakedlls/msvideo.dll16 603 | lib/wine/fakedlls/mswsock.dll 604 | lib/wine/fakedlls/msxml2.dll 605 | lib/wine/fakedlls/msxml3.dll 606 | lib/wine/fakedlls/msxml4.dll 607 | lib/wine/fakedlls/msxml6.dll 608 | lib/wine/fakedlls/msxml.dll 609 | lib/wine/fakedlls/mtxdm.dll 610 | lib/wine/fakedlls/ncrypt.dll 611 | lib/wine/fakedlls/nddeapi.dll 612 | lib/wine/fakedlls/ndis.sys 613 | lib/wine/fakedlls/netapi32.dll 614 | lib/wine/fakedlls/netcfgx.dll 615 | lib/wine/fakedlls/net.exe 616 | lib/wine/fakedlls/netprofm.dll 617 | lib/wine/fakedlls/netsh.exe 618 | lib/wine/fakedlls/netstat.exe 619 | lib/wine/fakedlls/newdev.dll 620 | lib/wine/fakedlls/ngen.exe 621 | lib/wine/fakedlls/ninput.dll 622 | lib/wine/fakedlls/normaliz.dll 623 | lib/wine/fakedlls/notepad.exe 624 | lib/wine/fakedlls/npmshtml.dll 625 | lib/wine/fakedlls/npptools.dll 626 | lib/wine/fakedlls/ntdll.dll 627 | lib/wine/fakedlls/ntdsapi.dll 628 | lib/wine/fakedlls/ntoskrnl.exe 629 | lib/wine/fakedlls/ntprint.dll 630 | lib/wine/fakedlls/objsel.dll 631 | lib/wine/fakedlls/odbc32.dll 632 | lib/wine/fakedlls/odbccp32.dll 633 | lib/wine/fakedlls/odbccu32.dll 634 | lib/wine/fakedlls/ole2conv.dll16 635 | lib/wine/fakedlls/ole2disp.dll16 636 | lib/wine/fakedlls/ole2.dll16 637 | lib/wine/fakedlls/ole2nls.dll16 638 | lib/wine/fakedlls/ole2prox.dll16 639 | lib/wine/fakedlls/ole2thk.dll16 640 | lib/wine/fakedlls/ole32.dll 641 | lib/wine/fakedlls/oleacc.dll 642 | lib/wine/fakedlls/oleaut32.dll 643 | lib/wine/fakedlls/olecli32.dll 644 | lib/wine/fakedlls/olecli.dll16 645 | lib/wine/fakedlls/oledb32.dll 646 | lib/wine/fakedlls/oledlg.dll 647 | lib/wine/fakedlls/olepro32.dll 648 | lib/wine/fakedlls/olesvr32.dll 649 | lib/wine/fakedlls/olesvr.dll16 650 | lib/wine/fakedlls/olethk32.dll 651 | lib/wine/fakedlls/oleview.exe 652 | lib/wine/fakedlls/openal32.dll 653 | lib/wine/fakedlls/opencl.dll 654 | lib/wine/fakedlls/opengl32.dll 655 | lib/wine/fakedlls/packager.dll 656 | lib/wine/fakedlls/pdh.dll 657 | lib/wine/fakedlls/photometadatahandler.dll 658 | lib/wine/fakedlls/pidgen.dll 659 | lib/wine/fakedlls/ping.exe 660 | lib/wine/fakedlls/plugplay.exe 661 | lib/wine/fakedlls/powershell.exe 662 | lib/wine/fakedlls/powrprof.dll 663 | lib/wine/fakedlls/presentationfontcache.exe 664 | lib/wine/fakedlls/printui.dll 665 | lib/wine/fakedlls/prntvpt.dll 666 | lib/wine/fakedlls/progman.exe 667 | lib/wine/fakedlls/propsys.dll 668 | lib/wine/fakedlls/psapi.dll 669 | lib/wine/fakedlls/pstorec.dll 670 | lib/wine/fakedlls/qcap.dll 671 | lib/wine/fakedlls/qedit.dll 672 | lib/wine/fakedlls/qmgr.dll 673 | lib/wine/fakedlls/qmgrprxy.dll 674 | lib/wine/fakedlls/quartz.dll 675 | lib/wine/fakedlls/query.dll 676 | lib/wine/fakedlls/rasapi16.dll16 677 | lib/wine/fakedlls/rasapi32.dll 678 | lib/wine/fakedlls/rasdlg.dll 679 | lib/wine/fakedlls/regapi.dll 680 | lib/wine/fakedlls/regasm.exe 681 | lib/wine/fakedlls/regedit.exe 682 | lib/wine/fakedlls/reg.exe 683 | lib/wine/fakedlls/regsvcs.exe 684 | lib/wine/fakedlls/regsvr32.exe 685 | lib/wine/fakedlls/resutils.dll 686 | lib/wine/fakedlls/riched20.dll 687 | lib/wine/fakedlls/riched32.dll 688 | lib/wine/fakedlls/rpcrt4.dll 689 | lib/wine/fakedlls/rpcss.exe 690 | lib/wine/fakedlls/rsabase.dll 691 | lib/wine/fakedlls/rsaenh.dll 692 | lib/wine/fakedlls/rstrtmgr.dll 693 | lib/wine/fakedlls/rtutils.dll 694 | lib/wine/fakedlls/rundll32.exe 695 | lib/wine/fakedlls/rundll.exe16 696 | lib/wine/fakedlls/samlib.dll 697 | lib/wine/fakedlls/sane.ds 698 | lib/wine/fakedlls/sapi.dll 699 | lib/wine/fakedlls/sas.dll 700 | lib/wine/fakedlls/scarddlg.dll 701 | lib/wine/fakedlls/sccbase.dll 702 | lib/wine/fakedlls/sc.exe 703 | lib/wine/fakedlls/schannel.dll 704 | lib/wine/fakedlls/schedsvc.dll 705 | lib/wine/fakedlls/schtasks.exe 706 | lib/wine/fakedlls/scrobj.dll 707 | lib/wine/fakedlls/scrrun.dll 708 | lib/wine/fakedlls/scsiport.sys 709 | lib/wine/fakedlls/sdbinst.exe 710 | lib/wine/fakedlls/secedit.exe 711 | lib/wine/fakedlls/secur32.dll 712 | lib/wine/fakedlls/security.dll 713 | lib/wine/fakedlls/sensapi.dll 714 | lib/wine/fakedlls/serialui.dll 715 | lib/wine/fakedlls/servicemodelreg.exe 716 | lib/wine/fakedlls/services.exe 717 | lib/wine/fakedlls/setupapi.dll 718 | lib/wine/fakedlls/setupx.dll16 719 | lib/wine/fakedlls/sfc.dll 720 | lib/wine/fakedlls/sfc_os.dll 721 | lib/wine/fakedlls/shcore.dll 722 | lib/wine/fakedlls/shdoclc.dll 723 | lib/wine/fakedlls/shdocvw.dll 724 | lib/wine/fakedlls/shell32.dll 725 | lib/wine/fakedlls/shell.dll16 726 | lib/wine/fakedlls/shfolder.dll 727 | lib/wine/fakedlls/shlwapi.dll 728 | lib/wine/fakedlls/shutdown.exe 729 | lib/wine/fakedlls/slbcsp.dll 730 | lib/wine/fakedlls/slc.dll 731 | lib/wine/fakedlls/snmpapi.dll 732 | lib/wine/fakedlls/softpub.dll 733 | lib/wine/fakedlls/sound.drv16 734 | lib/wine/fakedlls/spoolss.dll 735 | lib/wine/fakedlls/spoolsv.exe 736 | lib/wine/fakedlls/sspicli.dll 737 | lib/wine/fakedlls/start.exe 738 | lib/wine/fakedlls/stdole2.tlb 739 | lib/wine/fakedlls/stdole32.tlb 740 | lib/wine/fakedlls/sti.dll 741 | lib/wine/fakedlls/storage.dll16 742 | lib/wine/fakedlls/stress.dll16 743 | lib/wine/fakedlls/strmdll.dll 744 | lib/wine/fakedlls/subst.exe 745 | lib/wine/fakedlls/svchost.exe 746 | lib/wine/fakedlls/svrapi.dll 747 | lib/wine/fakedlls/sxs.dll 748 | lib/wine/fakedlls/system.drv16 749 | lib/wine/fakedlls/systeminfo.exe 750 | lib/wine/fakedlls/t2embed.dll 751 | lib/wine/fakedlls/tapi32.dll 752 | lib/wine/fakedlls/taskkill.exe 753 | lib/wine/fakedlls/tasklist.exe 754 | lib/wine/fakedlls/taskmgr.exe 755 | lib/wine/fakedlls/taskschd.dll 756 | lib/wine/fakedlls/tdh.dll 757 | lib/wine/fakedlls/tdi.sys 758 | lib/wine/fakedlls/termsv.exe 759 | lib/wine/fakedlls/toolhelp.dll16 760 | lib/wine/fakedlls/traffic.dll 761 | lib/wine/fakedlls/twain_32.dll 762 | lib/wine/fakedlls/twain.dll16 763 | lib/wine/fakedlls/typelib.dll16 764 | lib/wine/fakedlls/ucrtbase.dll 765 | lib/wine/fakedlls/uiautomationcore.dll 766 | lib/wine/fakedlls/uiribbon.dll 767 | lib/wine/fakedlls/unicows.dll 768 | lib/wine/fakedlls/uninstaller.exe 769 | lib/wine/fakedlls/unlodctr.exe 770 | lib/wine/fakedlls/updspapi.dll 771 | lib/wine/fakedlls/url.dll 772 | lib/wine/fakedlls/urlmon.dll 773 | lib/wine/fakedlls/usbd.sys 774 | lib/wine/fakedlls/user32.dll 775 | lib/wine/fakedlls/userenv.dll 776 | lib/wine/fakedlls/user.exe16 777 | lib/wine/fakedlls/usp10.dll 778 | lib/wine/fakedlls/uxtheme.dll 779 | lib/wine/fakedlls/vbscript.dll 780 | lib/wine/fakedlls/vcomp100.dll 781 | lib/wine/fakedlls/vcomp110.dll 782 | lib/wine/fakedlls/vcomp120.dll 783 | lib/wine/fakedlls/vcomp140.dll 784 | lib/wine/fakedlls/vcomp90.dll 785 | lib/wine/fakedlls/vcomp.dll 786 | lib/wine/fakedlls/vcruntime140.dll 787 | lib/wine/fakedlls/vdhcp.vxd 788 | lib/wine/fakedlls/vdmdbg.dll 789 | lib/wine/fakedlls/ver.dll16 790 | lib/wine/fakedlls/version.dll 791 | lib/wine/fakedlls/view.exe 792 | lib/wine/fakedlls/virtdisk.dll 793 | lib/wine/fakedlls/vmm.vxd 794 | lib/wine/fakedlls/vnbt.vxd 795 | lib/wine/fakedlls/vnetbios.vxd 796 | lib/wine/fakedlls/vssapi.dll 797 | lib/wine/fakedlls/vtdapi.vxd 798 | lib/wine/fakedlls/vulkan-1.dll 799 | lib/wine/fakedlls/vwin32.vxd 800 | lib/wine/fakedlls/w32skrnl.dll 801 | lib/wine/fakedlls/w32sys.dll16 802 | lib/wine/fakedlls/wbemdisp.dll 803 | lib/wine/fakedlls/wbemprox.dll 804 | lib/wine/fakedlls/wdscore.dll 805 | lib/wine/fakedlls/webservices.dll 806 | lib/wine/fakedlls/wer.dll 807 | lib/wine/fakedlls/wevtapi.dll 808 | lib/wine/fakedlls/wevtutil.exe 809 | lib/wine/fakedlls/wiaservc.dll 810 | lib/wine/fakedlls/wimgapi.dll 811 | lib/wine/fakedlls/win32s16.dll16 812 | lib/wine/fakedlls/win87em.dll16 813 | lib/wine/fakedlls/winaspi.dll16 814 | lib/wine/fakedlls/windebug.dll16 815 | lib/wine/fakedlls/windowscodecs.dll 816 | lib/wine/fakedlls/windowscodecsext.dll 817 | lib/wine/fakedlls/winealsa.drv 818 | lib/wine/fakedlls/wineboot.exe 819 | lib/wine/fakedlls/winebrowser.exe 820 | lib/wine/fakedlls/winebus.sys 821 | lib/wine/fakedlls/winecfg.exe 822 | lib/wine/fakedlls/wineconsole.exe 823 | lib/wine/fakedlls/wined3d.dll 824 | lib/wine/fakedlls/winedbg.exe 825 | lib/wine/fakedlls/winedevice.exe 826 | lib/wine/fakedlls/winefile.exe 827 | lib/wine/fakedlls/winehid.sys 828 | lib/wine/fakedlls/winejoystick.drv 829 | lib/wine/fakedlls/winemapi.dll 830 | lib/wine/fakedlls/winemenubuilder.exe 831 | lib/wine/fakedlls/winemine.exe 832 | lib/wine/fakedlls/winemsibuilder.exe 833 | lib/wine/fakedlls/wineoss.drv 834 | lib/wine/fakedlls/winepath.exe 835 | lib/wine/fakedlls/wineps16.drv16 836 | lib/wine/fakedlls/wineps.drv 837 | lib/wine/fakedlls/winepulse.drv 838 | lib/wine/fakedlls/winevdm.exe 839 | lib/wine/fakedlls/winevulkan.dll 840 | lib/wine/fakedlls/winex11.drv 841 | lib/wine/fakedlls/wing32.dll 842 | lib/wine/fakedlls/wing.dll16 843 | lib/wine/fakedlls/winhelp.exe16 844 | lib/wine/fakedlls/winhlp32.exe 845 | lib/wine/fakedlls/winhttp.dll 846 | lib/wine/fakedlls/wininet.dll 847 | lib/wine/fakedlls/winmm.dll 848 | lib/wine/fakedlls/winnls32.dll 849 | lib/wine/fakedlls/winnls.dll16 850 | lib/wine/fakedlls/winoldap.mod16 851 | lib/wine/fakedlls/winscard.dll 852 | lib/wine/fakedlls/winsock.dll16 853 | lib/wine/fakedlls/winspool.drv 854 | lib/wine/fakedlls/winsta.dll 855 | lib/wine/fakedlls/wintab32.dll 856 | lib/wine/fakedlls/wintab.dll16 857 | lib/wine/fakedlls/wintrust.dll 858 | lib/wine/fakedlls/winusb.dll 859 | lib/wine/fakedlls/winver.exe 860 | lib/wine/fakedlls/wlanapi.dll 861 | lib/wine/fakedlls/wldap32.dll 862 | lib/wine/fakedlls/wmasf.dll 863 | lib/wine/fakedlls/wmic.exe 864 | lib/wine/fakedlls/wmi.dll 865 | lib/wine/fakedlls/wmiutils.dll 866 | lib/wine/fakedlls/wmp.dll 867 | lib/wine/fakedlls/wmphoto.dll 868 | lib/wine/fakedlls/wmplayer.exe 869 | lib/wine/fakedlls/wmvcore.dll 870 | lib/wine/fakedlls/wnaspi32.dll 871 | lib/wine/fakedlls/wordpad.exe 872 | lib/wine/fakedlls/wow32.dll 873 | lib/wine/fakedlls/wpcap.dll 874 | lib/wine/fakedlls/wpc.dll 875 | lib/wine/fakedlls/write.exe 876 | lib/wine/fakedlls/ws2_32.dll 877 | lib/wine/fakedlls/wscript.exe 878 | lib/wine/fakedlls/wsdapi.dll 879 | lib/wine/fakedlls/wshom.ocx 880 | lib/wine/fakedlls/wsnmp32.dll 881 | lib/wine/fakedlls/wsock32.dll 882 | lib/wine/fakedlls/wtsapi32.dll 883 | lib/wine/fakedlls/wuapi.dll 884 | lib/wine/fakedlls/wuaueng.dll 885 | lib/wine/fakedlls/wusa.exe 886 | lib/wine/fakedlls/x3daudio1_0.dll 887 | lib/wine/fakedlls/x3daudio1_1.dll 888 | lib/wine/fakedlls/x3daudio1_2.dll 889 | lib/wine/fakedlls/x3daudio1_3.dll 890 | lib/wine/fakedlls/x3daudio1_4.dll 891 | lib/wine/fakedlls/x3daudio1_5.dll 892 | lib/wine/fakedlls/x3daudio1_6.dll 893 | lib/wine/fakedlls/x3daudio1_7.dll 894 | lib/wine/fakedlls/xapofx1_1.dll 895 | lib/wine/fakedlls/xapofx1_2.dll 896 | lib/wine/fakedlls/xapofx1_3.dll 897 | lib/wine/fakedlls/xapofx1_4.dll 898 | lib/wine/fakedlls/xapofx1_5.dll 899 | lib/wine/fakedlls/xaudio2_0.dll 900 | lib/wine/fakedlls/xaudio2_1.dll 901 | lib/wine/fakedlls/xaudio2_2.dll 902 | lib/wine/fakedlls/xaudio2_3.dll 903 | lib/wine/fakedlls/xaudio2_4.dll 904 | lib/wine/fakedlls/xaudio2_5.dll 905 | lib/wine/fakedlls/xaudio2_6.dll 906 | lib/wine/fakedlls/xaudio2_7.dll 907 | lib/wine/fakedlls/xaudio2_8.dll 908 | lib/wine/fakedlls/xaudio2_9.dll 909 | lib/wine/fakedlls/xcopy.exe 910 | lib/wine/fakedlls/xinput1_1.dll 911 | lib/wine/fakedlls/xinput1_2.dll 912 | lib/wine/fakedlls/xinput1_3.dll 913 | lib/wine/fakedlls/xinput1_4.dll 914 | lib/wine/fakedlls/xinput9_1_0.dll 915 | lib/wine/fakedlls/xmllite.dll 916 | lib/wine/fakedlls/xolehlp.dll 917 | lib/wine/fakedlls/xpsprint.dll 918 | lib/wine/fakedlls/xpssvcs.dll 919 | lib/wine/gdi32.dll.so 920 | lib/wine/ieframe.dll.so 921 | lib/wine/iexplore.exe.so 922 | lib/wine/imaadp32.acm.so 923 | lib/wine/imagehlp.dll.so 924 | lib/wine/imm32.dll.so 925 | lib/wine/kernel32.dll.so 926 | lib/wine/l3codeca.acm.so 927 | lib/wine/mountmgr.sys.so 928 | lib/wine/mpr.dll.so 929 | lib/wine/msacm32.dll.so 930 | lib/wine/msacm.imaadpcm.so 931 | lib/wine/msacm.l3acm.so 932 | lib/wine/msacm.msadpcm.so 933 | lib/wine/msacm.msg711.so 934 | lib/wine/msacm.msgsm610.so 935 | lib/wine/msadp32.acm.so 936 | lib/wine/msg711.acm.so 937 | lib/wine/msgsm32.acm.so 938 | lib/wine/msimg32.dll.so 939 | lib/wine/msisip.dll.so 940 | lib/wine/msvfw32.dll.so 941 | lib/wine/notepad++.exe.so 942 | lib/wine/ntdll.dll.so 943 | lib/wine/ntoskrnl.exe.so 944 | lib/wine/ole32.dll.so 945 | lib/wine/oleaut32.dll.so 946 | lib/wine/propsys.dll.so 947 | lib/wine/qcap.dll.so 948 | lib/wine/quartz.dll.so 949 | lib/wine/rpcrt4.dll.so 950 | lib/wine/rsaenh.dll.so 951 | lib/wine/rundll32.exe.so 952 | lib/wine/scilexer.dll.so 953 | lib/wine/sensapi.dll.so 954 | lib/wine/services.exe.so 955 | lib/wine/setupapi.dll.so 956 | lib/wine/shell32.dll.so 957 | lib/wine/shlwapi.dll.so 958 | lib/wine/urlmon.dll.so 959 | lib/wine/user32.dll.so 960 | lib/wine/userenv.dll.so 961 | lib/wine/usp10.dll.so 962 | lib/wine/uxtheme.dll.so 963 | lib/wine/version.dll.so 964 | lib/wine/windowscodecs.dll.so 965 | lib/wine/wineboot.exe.so 966 | lib/wine/winedevice.exe.so 967 | lib/wine/winegstreamer.dll.so 968 | lib/wine/wineqtdecoder.dll.so 969 | lib/wine/winex11.drv.so 970 | lib/wine/wininet.dll.so 971 | lib/wine/winmm.dll.so 972 | lib/wine/winspool.drv.so 973 | lib/wine/wintrust.dll.so 974 | lib/wine/ws2_32.dll.so 975 | share/wine/fonts 976 | share/wine/fonts/coue1255.fon 977 | share/wine/fonts/coue1256.fon 978 | share/wine/fonts/coue1257.fon 979 | share/wine/fonts/couree.fon 980 | share/wine/fonts/coure.fon 981 | share/wine/fonts/coureg.fon 982 | share/wine/fonts/courer.fon 983 | share/wine/fonts/couret.fon 984 | share/wine/fonts/cvgasys.fon 985 | share/wine/fonts/hvgasys.fon 986 | share/wine/fonts/jsmalle.fon 987 | share/wine/fonts/jvgafix.fon 988 | share/wine/fonts/jvgasys.fon 989 | share/wine/fonts/marlett.ttf 990 | share/wine/fonts/serife.fon 991 | share/wine/fonts/smae1255.fon 992 | share/wine/fonts/smae1256.fon 993 | share/wine/fonts/smae1257.fon 994 | share/wine/fonts/smallee.fon 995 | share/wine/fonts/smalle.fon 996 | share/wine/fonts/smalleg.fon 997 | share/wine/fonts/smaller.fon 998 | share/wine/fonts/smallet.fon 999 | share/wine/fonts/ssee1255.fon 1000 | share/wine/fonts/ssee1256.fon 1001 | share/wine/fonts/ssee1257.fon 1002 | share/wine/fonts/ssee874.fon 1003 | share/wine/fonts/ssef1255.fon 1004 | share/wine/fonts/ssef1256.fon 1005 | share/wine/fonts/ssef1257.fon 1006 | share/wine/fonts/ssef874.fon 1007 | share/wine/fonts/sserifee.fon 1008 | share/wine/fonts/sserife.fon 1009 | share/wine/fonts/sserifeg.fon 1010 | share/wine/fonts/sserifer.fon 1011 | share/wine/fonts/sserifet.fon 1012 | share/wine/fonts/sseriffe.fon 1013 | share/wine/fonts/sseriff.fon 1014 | share/wine/fonts/sseriffg.fon 1015 | share/wine/fonts/sseriffr.fon 1016 | share/wine/fonts/sserifft.fon 1017 | share/wine/fonts/svgasys.fon 1018 | share/wine/fonts/symbol.ttf 1019 | share/wine/fonts/tahomabd.ttf 1020 | share/wine/fonts/tahoma.ttf 1021 | share/wine/fonts/vgafix.fon 1022 | share/wine/fonts/vgaoem.fon 1023 | share/wine/fonts/vgas1255.fon 1024 | share/wine/fonts/vgas1256.fon 1025 | share/wine/fonts/vgas1257.fon 1026 | share/wine/fonts/vgas874.fon 1027 | share/wine/fonts/vgasyse.fon 1028 | share/wine/fonts/vgasys.fon 1029 | share/wine/fonts/vgasysg.fon 1030 | share/wine/fonts/vgasysr.fon 1031 | share/wine/fonts/vgasyst.fon 1032 | share/wine/fonts/wingding.ttf 1033 | share/wine/wine.inf 1034 | bin/wine 1035 | bin/wineserver 1036 | bin/wine 1037 | lib/i386-linux-gnu/libc-2.19.so 1038 | lib/i386-linux-gnu/libcups.so.2 1039 | lib/i386-linux-gnu/libdbus-1.so.3.7.6 1040 | lib/i386-linux-gnu/libdl-2.19.so 1041 | lib/i386-linux-gnu/libfreetype.so.6 1042 | lib/i386-linux-gnu/libfuse.so.2 1043 | lib/i386-linux-gnu/libgcc_s.so.1 1044 | lib/i386-linux-gnu/libgcrypt.so.11.8.2 1045 | lib/i386-linux-gnu/libgcrypt.so.20 1046 | lib/i386-linux-gnu/libgnutls.so.26 1047 | lib/i386-linux-gnu/libgpg-error.so.0.10.0 1048 | lib/i386-linux-gnu/libhal.so.1 1049 | lib/i386-linux-gnu/libltdl.so.7 1050 | lib/i386-linux-gnu/liblzma.so.5.0.0 1051 | lib/i386-linux-gnu/libmpg123.so.0 1052 | lib/i386-linux-gnu/libm-2.19.so 1053 | lib/i386-linux-gnu/libnsl-2.19.so 1054 | lib/i386-linux-gnu/libnss_compat-2.19.so 1055 | lib/i386-linux-gnu/libnss_files-2.19.so 1056 | lib/i386-linux-gnu/libnss_nis-2.19.so 1057 | lib/i386-linux-gnu/libp11-kit.so.0 1058 | lib/i386-linux-gnu/libpcre.so.3.13.1 1059 | lib/i386-linux-gnu/libprocps.so.4 1060 | lib/i386-linux-gnu/libpthread-2.19.so 1061 | lib/i386-linux-gnu/librt-2.19.so 1062 | lib/i386-linux-gnu/libselinux.so.1 1063 | lib/i386-linux-gnu/libsystemd.so.0 1064 | lib/i386-linux-gnu/libtasn1.so.3 1065 | lib/i386-linux-gnu/libwine.so.1 1066 | lib/i386-linux-gnu/libX11.so.6 1067 | lib/i386-linux-gnu/libXau.so.6 1068 | lib/i386-linux-gnu/libxcb.so.1 1069 | lib/i386-linux-gnu/libXcomposite.so.1 1070 | lib/i386-linux-gnu/libXcursor 1071 | lib/i386-linux-gnu/libXcursor.so 1072 | lib/i386-linux-gnu/libXcursor.so.1 1073 | lib/i386-linux-gnu/libXdmcp.so.6 1074 | lib/i386-linux-gnu/libXext.so.6 1075 | lib/i386-linux-gnu/libXfixes.so.3 1076 | lib/i386-linux-gnu/libXinerama.so.1 1077 | lib/i386-linux-gnu/libXi.so.6 1078 | lib/i386-linux-gnu/libXrender.so.1 1079 | lib/i386-linux-gnu/libXxf86vm.so.1 1080 | lib/i386-linux-gnu/libxxxxconfig.so.1 1081 | lib/i386-linux-gnu/libz.so.1.2.8 1082 | lib/ld-linux.so.2 1083 | lib/libc.so.6 1084 | lib/libcups.so.2 1085 | lib/libdl.so.2 1086 | lib/libfreetype.so.6 1087 | lib/libfuse.so.2 1088 | lib/libgcc_s.so.1 1089 | lib/libgcrypt.so.20 1090 | lib/libgnutls.so.26 1091 | lib/libgpg-error.so.0 1092 | lib/libhal.so.1 1093 | lib/libhookexecv.so 1094 | lib/libltdl.so.7 1095 | lib/liblzma.so.5 1096 | lib/libmpg123.so.0 1097 | lib/libm.so.6 1098 | lib/libp11-kit.so.0 1099 | lib/libpcre.so.3 1100 | lib/libprocps.so.4 1101 | lib/libpthread.so.0 1102 | lib/librt.so.1 1103 | lib/libselinux.so.1 1104 | lib/libsystemd.so.0 1105 | lib/libtasn1.so.3 1106 | lib/libwine.so.1.0 1107 | lib/libX11.so.6 1108 | lib/libXau.so.6 1109 | lib/libxcb.so.1 1110 | lib/libXcomposite.so.1 1111 | lib/libXcursor 1112 | lib/libXcursor.so 1113 | lib/libXcursor.so.1 1114 | lib/libXdmcp.so.6 1115 | lib/libXext.so.6 1116 | lib/libXfixes.so.3 1117 | lib/libXinerama.so.1 1118 | lib/libXi.so.6 1119 | lib/libXrender.so.1 1120 | lib/libXxf86vm.so.1 1121 | lib/libxxxxconfig.so.1 1122 | share/wine/l_intl.nls 1123 | share/wine/wine.inf 1124 | usr/lib/i386-linux-gnu/alsa-lib/libc.so.6 1125 | usr/lib/i386-linux-gnu/alsa-lib/libcups.so.2 1126 | usr/lib/i386-linux-gnu/alsa-lib/libdbus-1.so.3 1127 | usr/lib/i386-linux-gnu/alsa-lib/libdl.so.2 1128 | usr/lib/i386-linux-gnu/alsa-lib/libfreetype.so.6 1129 | usr/lib/i386-linux-gnu/alsa-lib/libfuse.so.2 1130 | usr/lib/i386-linux-gnu/alsa-lib/libgcc_s.so.1 1131 | usr/lib/i386-linux-gnu/alsa-lib/libgcrypt.so.11 1132 | usr/lib/i386-linux-gnu/alsa-lib/libgcrypt.so.20 1133 | usr/lib/i386-linux-gnu/alsa-lib/libgnutls.so.26 1134 | usr/lib/i386-linux-gnu/alsa-lib/libgpg-error.so.0 1135 | usr/lib/i386-linux-gnu/alsa-lib/libhal.so.1 1136 | usr/lib/i386-linux-gnu/alsa-lib/libltdl.so.7 1137 | usr/lib/i386-linux-gnu/alsa-lib/liblzma.so.5 1138 | usr/lib/i386-linux-gnu/alsa-lib/libmpg123.so.0 1139 | usr/lib/i386-linux-gnu/alsa-lib/libm.so.6 1140 | usr/lib/i386-linux-gnu/alsa-lib/libnsl.so.1 1141 | usr/lib/i386-linux-gnu/alsa-lib/libnss_compat.so.2 1142 | usr/lib/i386-linux-gnu/alsa-lib/libnss_files.so.2 1143 | usr/lib/i386-linux-gnu/alsa-lib/libnss_nis.so.2 1144 | usr/lib/i386-linux-gnu/alsa-lib/libp11-kit.so.0 1145 | usr/lib/i386-linux-gnu/alsa-lib/libpcre.so.3 1146 | usr/lib/i386-linux-gnu/alsa-lib/libprocps.so.4 1147 | usr/lib/i386-linux-gnu/alsa-lib/libpthread.so.0 1148 | usr/lib/i386-linux-gnu/alsa-lib/librt.so.1 1149 | usr/lib/i386-linux-gnu/alsa-lib/libselinux.so.1 1150 | usr/lib/i386-linux-gnu/alsa-lib/libsystemd.so.0 1151 | usr/lib/i386-linux-gnu/alsa-lib/libtasn1.so.3 1152 | usr/lib/i386-linux-gnu/alsa-lib/libwine.so.1 1153 | usr/lib/i386-linux-gnu/alsa-lib/libX11.so.6 1154 | usr/lib/i386-linux-gnu/alsa-lib/libXau.so.6 1155 | usr/lib/i386-linux-gnu/alsa-lib/libxcb.so.1 1156 | usr/lib/i386-linux-gnu/alsa-lib/libXcomposite.so.1 1157 | usr/lib/i386-linux-gnu/alsa-lib/libXcursor 1158 | usr/lib/i386-linux-gnu/alsa-lib/libXcursor.so 1159 | usr/lib/i386-linux-gnu/alsa-lib/libXcursor.so.1 1160 | usr/lib/i386-linux-gnu/alsa-lib/libXdmcp.so.6 1161 | usr/lib/i386-linux-gnu/alsa-lib/libXext.so.6 1162 | usr/lib/i386-linux-gnu/alsa-lib/libXfixes.so.3 1163 | usr/lib/i386-linux-gnu/alsa-lib/libXinerama.so.1 1164 | usr/lib/i386-linux-gnu/alsa-lib/libXi.so.6 1165 | usr/lib/i386-linux-gnu/alsa-lib/libXrender.so.1 1166 | usr/lib/i386-linux-gnu/alsa-lib/libXxf86vm.so.1 1167 | usr/lib/i386-linux-gnu/alsa-lib/libxxxxconfig.so.1 1168 | usr/lib/i386-linux-gnu/alsa-lib/libz.so.1 1169 | usr/lib/i386-linux-gnu/libc.so.6 1170 | usr/lib/i386-linux-gnu/libcups.so.2 1171 | usr/lib/i386-linux-gnu/libdl.so.2 1172 | usr/lib/i386-linux-gnu/libfuse.so.2 1173 | usr/lib/i386-linux-gnu/libgcc_s.so.1 1174 | usr/lib/i386-linux-gnu/libgcrypt.so.20 1175 | usr/lib/i386-linux-gnu/libgpg-error.so.0 1176 | usr/lib/i386-linux-gnu/libhal.so.1 1177 | usr/lib/i386-linux-gnu/liblzma.so.5 1178 | usr/lib/i386-linux-gnu/libm.so.6 1179 | usr/lib/i386-linux-gnu/libp11-kit.so.0 1180 | usr/lib/i386-linux-gnu/libpcre.so.3 1181 | usr/lib/i386-linux-gnu/libprocps.so.4 1182 | usr/lib/i386-linux-gnu/libpthread.so.0 1183 | usr/lib/i386-linux-gnu/librt.so.1 1184 | usr/lib/i386-linux-gnu/libselinux.so.1 1185 | usr/lib/i386-linux-gnu/libsystemd.so.0 1186 | usr/lib/i386-linux-gnu/libX11.so.6.3.0 1187 | usr/lib/i386-linux-gnu/libXau.so.6.0.0 1188 | usr/lib/i386-linux-gnu/libxcb.so.1.1.0 1189 | usr/lib/i386-linux-gnu/libXcomposite.so.1 1190 | usr/lib/i386-linux-gnu/libXcursor 1191 | usr/lib/i386-linux-gnu/libXcursor.so 1192 | usr/lib/i386-linux-gnu/libXcursor.so.1 1193 | usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0 1194 | usr/lib/i386-linux-gnu/libXext.so.6.4.0 1195 | usr/lib/i386-linux-gnu/libXfixes.so.3.1.0 1196 | usr/lib/i386-linux-gnu/libXinerama.so.1 1197 | usr/lib/i386-linux-gnu/libXi.so.6 1198 | usr/lib/i386-linux-gnu/libXrender.so.1 1199 | usr/lib/i386-linux-gnu/libXxf86vm.so.1.0.0 1200 | usr/lib/i386-linux-gnu/libxxxxconfig.so.1 1201 | usr/lib/i386-linux-gnu/pulseaudio/libc.so.6 1202 | usr/lib/i386-linux-gnu/pulseaudio/libcups.so.2 1203 | usr/lib/i386-linux-gnu/pulseaudio/libdbus-1.so.3 1204 | usr/lib/i386-linux-gnu/pulseaudio/libdl.so.2 1205 | usr/lib/i386-linux-gnu/pulseaudio/libfreetype.so.6 1206 | usr/lib/i386-linux-gnu/pulseaudio/libfuse.so.2 1207 | usr/lib/i386-linux-gnu/pulseaudio/libgcc_s.so.1 1208 | usr/lib/i386-linux-gnu/pulseaudio/libgcrypt.so.11 1209 | usr/lib/i386-linux-gnu/pulseaudio/libgcrypt.so.20 1210 | usr/lib/i386-linux-gnu/pulseaudio/libgnutls.so.26 1211 | usr/lib/i386-linux-gnu/pulseaudio/libgpg-error.so.0 1212 | usr/lib/i386-linux-gnu/pulseaudio/libhal.so.1 1213 | usr/lib/i386-linux-gnu/pulseaudio/libltdl.so.7 1214 | usr/lib/i386-linux-gnu/pulseaudio/liblzma.so.5 1215 | usr/lib/i386-linux-gnu/pulseaudio/libmpg123.so.0 1216 | usr/lib/i386-linux-gnu/pulseaudio/libm.so.6 1217 | usr/lib/i386-linux-gnu/pulseaudio/libnsl.so.1 1218 | usr/lib/i386-linux-gnu/pulseaudio/libnss_compat.so.2 1219 | usr/lib/i386-linux-gnu/pulseaudio/libnss_files.so.2 1220 | usr/lib/i386-linux-gnu/pulseaudio/libnss_nis.so.2 1221 | usr/lib/i386-linux-gnu/pulseaudio/libp11-kit.so.0 1222 | usr/lib/i386-linux-gnu/pulseaudio/libpcre.so.3 1223 | usr/lib/i386-linux-gnu/pulseaudio/libprocps.so.4 1224 | usr/lib/i386-linux-gnu/pulseaudio/libpthread.so.0 1225 | usr/lib/i386-linux-gnu/pulseaudio/librt.so.1 1226 | usr/lib/i386-linux-gnu/pulseaudio/libselinux.so.1 1227 | usr/lib/i386-linux-gnu/pulseaudio/libsystemd.so.0 1228 | usr/lib/i386-linux-gnu/pulseaudio/libtasn1.so.3 1229 | usr/lib/i386-linux-gnu/pulseaudio/libwine.so.1 1230 | usr/lib/i386-linux-gnu/pulseaudio/libX11.so.6 1231 | usr/lib/i386-linux-gnu/pulseaudio/libXau.so.6 1232 | usr/lib/i386-linux-gnu/pulseaudio/libxcb.so.1 1233 | usr/lib/i386-linux-gnu/pulseaudio/libXcomposite.so.1 1234 | usr/lib/i386-linux-gnu/pulseaudio/libXcursor 1235 | usr/lib/i386-linux-gnu/pulseaudio/libXcursor.so 1236 | usr/lib/i386-linux-gnu/pulseaudio/libXcursor.so.1 1237 | usr/lib/i386-linux-gnu/pulseaudio/libXdmcp.so.6 1238 | usr/lib/i386-linux-gnu/pulseaudio/libXext.so.6 1239 | usr/lib/i386-linux-gnu/pulseaudio/libXfixes.so.3 1240 | usr/lib/i386-linux-gnu/pulseaudio/libXinerama.so.1 1241 | usr/lib/i386-linux-gnu/pulseaudio/libXi.so.6 1242 | usr/lib/i386-linux-gnu/pulseaudio/libXrender.so.1 1243 | usr/lib/i386-linux-gnu/pulseaudio/libXxf86vm.so.1 1244 | usr/lib/i386-linux-gnu/pulseaudio/libxxxxconfig.so.1 1245 | usr/lib/i386-linux-gnu/pulseaudio/libz.so.1 1246 | usr/lib/libc.so.6 1247 | usr/lib/libcups.so.2 1248 | usr/lib/libdl.so.2 1249 | usr/lib/libfuse.so.2 1250 | usr/lib/libgcc_s.so.1 1251 | usr/lib/libgcrypt.so.20 1252 | usr/lib/libgpg-error.so.0 1253 | usr/lib/libhal.so.1 1254 | usr/lib/liblzma.so.5 1255 | usr/lib/libm.so.6 1256 | usr/lib/libp11-kit.so.0 1257 | usr/lib/libpcre.so.3 1258 | usr/lib/libprocps.so.4 1259 | usr/lib/libpthread.so.0 1260 | usr/lib/librt.so.1 1261 | usr/lib/libselinux.so.1 1262 | usr/lib/libsystemd.so.0 1263 | usr/lib/libXcomposite.so.1 1264 | usr/lib/libXcursor 1265 | usr/lib/libXcursor.so 1266 | usr/lib/libXcursor.so.1 1267 | usr/lib/libXinerama.so.1 1268 | usr/lib/libXi.so.6 1269 | usr/lib/libXrender.so.1 1270 | usr/lib/libxxxxconfig.so.1 1271 | wineprefix 1272 | wineprefix/drive_c 1273 | wineprefix/drive_c/Program 1274 | wineprefix/drive_c/ProgramData 1275 | wineprefix/drive_c/users 1276 | wineprefix/drive_c/windows 1277 | wineprefix/drive_c/windows/command 1278 | wineprefix/drive_c/windows/system 1279 | wineprefix/drive_c/windows/system32 1280 | wineprefix/drive_c/windows/system32/contextMenu.xml 1281 | wineprefix/drive_c/windows/system32/drivers 1282 | wineprefix/drive_c/windows/system32/gecko 1283 | wineprefix/drive_c/windows/system32/langs.model.xml 1284 | wineprefix/drive_c/windows/system32/notepad++.exe 1285 | wineprefix/drive_c/windows/system32/plugins 1286 | wineprefix/drive_c/windows/system32/SciLexer.dll 1287 | wineprefix/drive_c/windows/system32/shortcuts.xml 1288 | wineprefix/drive_c/windows/system32/Speech 1289 | wineprefix/drive_c/windows/system32/spool 1290 | wineprefix/drive_c/windows/system32/stylers.model.xml 1291 | wineprefix/drive_c/windows/system32/wbem 1292 | wineprefix/drive_c/windows/twain_32 1293 | wineprefix/drive_c/windows/winsxs 1294 | AppRun 1295 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # libhookexecv [![Build Status](https://travis-ci.com/probonopd/libhookexecv.svg?branch=master)](https://travis-ci.com/probonopd/libhookexecv) 2 | 3 | Hook Wine execv syscall to use special ld.so in order to make it fully relocateable- __WORK IN PROGRESS__ 4 | 5 | ## Problem statement 6 | 7 | We want to make a fully portable of 32-bit Wine that can run on any Linux system, without the need for 32-bit compatibility libraries to be installed in the system (which is a hassle). 8 | 9 | 32-bit Wine is needed to run 32-bit Windows applications (as were the norm until very recently). 10 | 11 | ``` 12 | 5$ find . -type f -exec file {} 2>&1 \; | grep "ld-" 13 | ./bin/wine: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=8b26c8c6685ea1ed987a21ef30b48823e844e858, stripped 14 | ./bin/winedump: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=6fc5973f83404c829810008d000671373860cb6f, stripped 15 | ./bin/wmc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=30688d1dcd7ce51705571a891c8d6cf028dd6d0a, stripped 16 | ./bin/wrc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=5c24139c3c19ddc6c26778afe204d60ab78c3911, stripped 17 | ./bin/winegcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=fa60ca2fb4322cc8c4d3c45e7bbfb11f1fab17eb, stripped 18 | ./bin/winebuild: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=29fb932cea712078706b973f5c14c11c41a2cc2c, stripped 19 | ./bin/wineserver: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=b72ce157533fbe10b42ec00e7518ff17011df558, stripped 20 | ./bin/widl: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=14b9c572d68809513bd0c43fb61073be71ca7fd1, stripped 21 | ``` 22 | 23 | It would be best if we could rewrite the ELF executables to not search for `/lib/ld-linux.so.2` on the system (which is not there on most 64-bit systems), but in a custom location, e.g., in `$ORIGIN/../lib` which should resolve, in our example, to `./lib/ld-linux.so.2`. Unfortunately this does not work. [__Why?__](https://stackoverflow.com/a/48456169) 24 | 25 | ## Complication 26 | 27 | It is possible to use a custom loader by invoking ELF binaries like this: 28 | 29 | ``` 30 | ./lib/ld-linux.so.2 --library-path $(readlink -f ./lib/):$LD_LIBRARY_PATH ./bin/wine 31 | ``` 32 | 33 | However, there are two issues with this: 34 | 35 | - Wine launches subprocesses, which in turn would try to use `./lib/ld-linux.so.2` again 36 | - `./lib/ld-linux.so.2` may still try to load libraries and [other stuff](https://packages.debian.org/jessie/i386/libc6/filelist) from the system `/lib`, which we must avoid. Ideally we could patch `./lib/ld-linux.so.2` to load its stuff from `$ORIGIN/i386-linux-gnu/`. Unfortunately there seems to be no way to achieve this apart from binary-patching `ld-linux.so.2`- __why?__ 37 | 38 | ## Solution 39 | 40 | See [winedeploy.sh](winedeploy.sh). 41 | 42 | ## Testing 43 | 44 | ``` 45 | wget -c https://github.com/probonopd/libhookexecv/releases/download/continuous/Wine_Windows_Program_Loader-3.5-x86_64.AppImage 46 | chmod +x Wine*.AppImage 47 | wget -c https://github.com/probonopd/libhookexecv/releases/download/continuous/wineprefix.tar.gz 48 | tar xf wineprefix.tar.gz 49 | 50 | WINEPREFIX=$(readlink -f wineprefix) ./Wine_Windows_Program_Loader-3.5-x86_64.AppImage notepad++ 51 | ``` 52 | ## Minimizing 53 | 54 | ``` 55 | mkdir squashfs-root 56 | sudo mount -t tmpfs tmpfs squashfs-root/ -o strictatime,nodiratime 57 | ./Downloads/NotepadPlusPlus-3.5-x86_64.AppImage --appimage-extract 58 | 59 | touch test 60 | 61 | ./squashfs-root/AppRun # Without existing WINEPREFIX overlay 62 | ./squashfs-root/AppRun # With existing WINEPREFIX overlay 63 | 64 | find squashfs-root/ -mindepth 3 -anewer test -not -path '*/share/icons/*' -not -path '*/share/applications/*' -not -path '*/share/metainfo/*' 65 | find squashfs-root/ -mindepth 3 -not -anewer test -not -path '*/share/icons/*' -not -path '*/share/applications/*' -not -path '*/share/metainfo/*' -delete || true 66 | find squashfs-root/ -type d -empty -delete 67 | ./squashfs-root/AppRun 68 | # Does it still run when thinned? 69 | 70 | # Make minimized AppImage 71 | ARCH=x86_64 ./appimagetool-x86_64.AppImage ./squashfs-root/ 72 | ``` 73 | 74 | What if we need to use a local developer machine to determine the set of needed files but want to generate the minimized AppDir on a build machine? Use a `MANIFEST` file that specifies the wanted files: 75 | 76 | ``` 77 | # Make a MANIFEST (on a local developer machine) 78 | ( cd squashfs-root/ ; find . -type f -or -type s | sort | uniq > ../MANIFEST ) 79 | 80 | # Delete everything from the AppDir that is not in the MANIFEST 81 | ( cd appdir/ ; find . -type f -or -type s | sort | uniq > ../ALLFILES ; diff --new-line-format="" --unchanged-line-format="" ../ALLFILES ../MANIFEST | xargs -r rm ) 82 | find appdir/ -type d -empty -delete 83 | ``` 84 | -------------------------------------------------------------------------------- /libhookexecv.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | /* Author: https://github.com/Hackerl/ 7 | * https://github.com/Hackerl/Wine_Appimage/issues/11#issuecomment-447834456 8 | * sudo apt-get -y install gcc-multilib 9 | * gcc -shared -fPIC -ldl libhookexecv.c -o libhookexecv.so 10 | * for i386: gcc -shared -fPIC -m32 -ldl libhookexecv.c -o libhookexecv.so 11 | * 12 | * hook wine execv syscall. use special ld.so 13 | * */ 14 | 15 | typedef int(*EXECV)(const char*, char**); 16 | 17 | static inline int strendswith( const char* str, const char* end ) 18 | { 19 | size_t len = strlen( str ); 20 | size_t tail = strlen( end ); 21 | return len >= tail && !strcmp( str + len - tail, end ); 22 | } 23 | 24 | int execv(char *path, char ** argv) 25 | { 26 | static void *handle = NULL; 27 | static EXECV old_execv = NULL; 28 | char **last_arg = argv; 29 | 30 | if( !handle ) 31 | { 32 | handle = dlopen("libc.so.6", RTLD_LAZY); 33 | old_execv = (EXECV)dlsym(handle, "execv"); 34 | } 35 | 36 | char * wineloader = getenv("WINELDLIBRARY"); 37 | 38 | if (wineloader == NULL) 39 | { 40 | return old_execv(path, argv); 41 | } 42 | 43 | while (*last_arg) last_arg++; 44 | 45 | char ** new_argv = (char **) malloc( (last_arg - argv + 2) * sizeof(*argv) ); 46 | memcpy( new_argv + 1, argv, (last_arg - argv + 1) * sizeof(*argv) ); 47 | 48 | char * pathname = NULL; 49 | 50 | char hookpath[256]; 51 | memset(hookpath, 0, 256); 52 | 53 | if (strendswith(path, "wine-preloader")) 54 | { 55 | strcat(hookpath, path); 56 | strcat(hookpath, "_hook"); 57 | 58 | wineloader = hookpath; 59 | } 60 | 61 | new_argv[0] = wineloader; 62 | int res = old_execv(wineloader, new_argv); 63 | free( new_argv ); 64 | 65 | return res; 66 | } 67 | -------------------------------------------------------------------------------- /preloaderhook.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | /* 14 | * Author: https://github.com/Hackerl 15 | * https://github.com/Hackerl/Wine_Appimage/issues/11#issuecomment-448081998 16 | * sudo apt-get -y install gcc-multilib 17 | * only for i386: gcc -std=c99 -m32 -static preloaderhook.c -o wine-preloader_hook 18 | * Put the file in the /bin directory, in the same directory as the wine-preloader. 19 | * hook int 0x80 open syscall. use special ld.so 20 | * */ 21 | 22 | #define LONGSIZE sizeof(long) 23 | #define TARGET_PATH "/lib/ld-linux.so.2" 24 | #define HasZeroByte(v) ~((((v & 0x7F7F7F7F) + 0x7F7F7F7F) | v) | 0x7F7F7F7F) 25 | #define HOOK_OPEN_LD_SYSCALL -1 26 | 27 | int main(int argc, char ** argv) 28 | { 29 | if (argc < 2) 30 | return 0; 31 | 32 | char * wineloader = (char *) getenv("WINELDLIBRARY"); 33 | 34 | if (wineloader == NULL) 35 | { 36 | return 0; 37 | } 38 | 39 | int LD_fd = open(wineloader, O_RDONLY); 40 | 41 | if (LD_fd == -1) 42 | { 43 | return 0; 44 | } 45 | 46 | pid_t child = fork(); 47 | 48 | if(child == 0) 49 | { 50 | ptrace(PTRACE_TRACEME, 0, NULL, NULL); 51 | execv(*(argv + 1), argv + 1); 52 | } 53 | else 54 | { 55 | while(1) 56 | { 57 | int status = 0; 58 | wait(&status); 59 | 60 | if(WIFEXITED(status)) 61 | break; 62 | 63 | long orig_eax = ptrace(PTRACE_PEEKUSER, 64 | child, 4 * ORIG_EAX, 65 | NULL); 66 | 67 | static int insyscall = 0; 68 | 69 | if (orig_eax == HOOK_OPEN_LD_SYSCALL) 70 | { 71 | ptrace(PTRACE_POKEUSER, child, 4 * EAX, LD_fd); 72 | 73 | //Detch 74 | ptrace(PTRACE_DETACH, child, NULL, NULL); 75 | break; 76 | } 77 | 78 | if (orig_eax == SYS_open) 79 | { 80 | if(insyscall == 0) 81 | { 82 | /* Syscall entry */ 83 | insyscall = 1; 84 | 85 | //Get Path Ptr 86 | long ebx = ptrace(PTRACE_PEEKUSER, 87 | child, 4 * EBX, NULL); 88 | 89 | char Path[256]; 90 | memset(Path, 0, 256); 91 | 92 | //Read Path String 93 | for (int i = 0; i < sizeof(Path)/LONGSIZE; i ++) 94 | { 95 | union 96 | { 97 | long val; 98 | char chars[LONGSIZE]; 99 | } data; 100 | 101 | data.val = ptrace(PTRACE_PEEKDATA, child, ebx + i * 4, NULL); 102 | 103 | memcpy(Path + i * 4, data.chars, LONGSIZE); 104 | 105 | if (HasZeroByte(data.val)) 106 | break; 107 | } 108 | 109 | if (strcmp(Path, TARGET_PATH) == 0) 110 | { 111 | //Modify Syscall -1. So Will Not Call Open Syscall. 112 | ptrace(PTRACE_POKEUSER, child, 4 * ORIG_EAX, HOOK_OPEN_LD_SYSCALL); 113 | } 114 | } 115 | else 116 | { 117 | /* Syscall exit */ 118 | insyscall = 0; 119 | } 120 | } 121 | 122 | ptrace(PTRACE_SYSCALL, child, NULL, NULL); 123 | } 124 | } 125 | 126 | close(LD_fd); 127 | return 0; 128 | } 129 | -------------------------------------------------------------------------------- /winedeploy.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" 4 | sudo dpkg --add-architecture i386 5 | sudo apt-get update 6 | sudo apt install p7zip-full icoutils # For Notepad++ 7 | 8 | # Get Wine 9 | wget -c https://www.playonlinux.com/wine/binaries/linux-x86/PlayOnLinux-wine-3.20-linux-x86.pol 10 | 11 | # Get old Wine (for icons and such) 12 | # apt download libc6:i386 13 | # ./W dpkg -x wine*.deb . 14 | 15 | # Download ALL the i386 dependencies of Wine down to glibc/libc6, but not Wine itself 16 | # (we have a newer one) 17 | URLS=$(apt-get --allow-unauthenticated -o Apt::Get::AllowUnauthenticated=true \ 18 | -o Debug::NoLocking=1 -o APT::Cache-Limit=125829120 -o Dir::Etc::sourceparts=- \ 19 | -o APT::Get::List-Cleanup=0 -o APT::Get::AllowUnauthenticated=1 \ 20 | -o Debug::pkgProblemResolver=true -o Debug::pkgDepCache::AutoInstall=true \ 21 | -o APT::Install-Recommends=0 -o APT::Install-Suggests=0 -y \ 22 | install --print-uris wine:i386 | grep "_i386" | grep -v "wine" | cut -d "'" -f 2 ) 23 | 24 | wget -c $URLS 25 | 26 | # Get unionfs-fuse to make shared read-only wineprefix usable for every user 27 | apt download fuse unionfs-fuse libfuse2 # 32-bit versions seemingly do not work properly on 64-bit machines 28 | 29 | # Get suitable old ld-linux.so and the stuff that comes with it 30 | # apt download libc6:i386 # It is already included above 31 | 32 | mkdir -p ./Wine.AppDir 33 | tar xfvj PlayOnLinux-wine-*-linux-x86.pol -C ./Wine.AppDir --strip-components=2 wineversion/ 34 | cd Wine.AppDir/ 35 | 36 | # Add winetricks and cabextract 37 | wget "https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks" -P ./bin && chmod +x ./bin/winetricks 38 | wget "https://mex.mirror.pkgbuild.com/community/os/x86_64/cabextract-1.9.1-1-x86_64.pkg.tar.xz" -P ../ && tar xvf ../cabextract-*-x86_64.pkg.tar.xz --strip-components=1 39 | 40 | # Extract debs 41 | find ../.. -name '*.deb' -exec dpkg -x {} . \; 42 | 43 | # Make absolutely sure it will not load stuff from /lib or /usr 44 | sed -i -e 's|/usr|/xxx|g' lib/ld-linux.so.2 45 | sed -i -e 's|/usr/lib|/ooo/ooo|g' lib/ld-linux.so.2 46 | 47 | # Remove duplicate (why is it there?) 48 | rm -f lib/i386-linux-gnu/ld-*.so 49 | 50 | # Workaround for: 51 | # p11-kit: couldn't load module 52 | rm usr/lib/i386-linux-gnu/libp11-* || true 53 | find . -path '*libp11*' -delete || true 54 | 55 | # Only use Windows fonts. Do not attempt to use fonts from the host 56 | # This should greatly speed up first-time launch times 57 | # and get rid of fontconfig messages 58 | sed -i -e 's|fontconfig|xxxxconfig|g' lib/wine/gdi32.dll.so 59 | find . -path '*fontconfig*' -delete 60 | 61 | # Get libhookexecv.so 62 | cp ../libhookexecv.so lib/libhookexecv.so 63 | 64 | # Get wine-preloader_hook 65 | cp ../wine-preloader_hook bin/ 66 | chmod +x bin/wine-preloader_hook 67 | 68 | # Write custom AppRun 69 | cat > AppRun <<\EOF 70 | #!/bin/bash 71 | HERE="$(dirname "$(readlink -f "${0}")")" 72 | 73 | export LD_LIBRARY_PATH="$HERE/usr/lib":$LD_LIBRARY_PATH 74 | export LD_LIBRARY_PATH="$HERE/usr/lib/i386-linux-gnu":$LD_LIBRARY_PATH 75 | export LD_LIBRARY_PATH="$HERE/lib":$LD_LIBRARY_PATH 76 | export LD_LIBRARY_PATH="$HERE/lib/i386-linux-gnu":$LD_LIBRARY_PATH 77 | 78 | # Sound Library 79 | export LD_LIBRARY_PATH="$HERE/usr/lib/i386-linux-gnu/pulseaudio":$LD_LIBRARY_PATH 80 | export LD_LIBRARY_PATH="$HERE/usr/lib/i386-linux-gnu/alsa-lib":$LD_LIBRARY_PATH 81 | 82 | # LD 83 | export WINELDLIBRARY="$HERE/lib/ld-linux.so.2" 84 | 85 | export WINEDLLOVERRIDES="mscoree,mshtml=" # Do not ask to install Mono or Gecko 86 | export WINEDEBUG=-all # Do not print Wine debug messages 87 | 88 | # Workaround for: wine: loadlocale.c:129: _nl_intern_locale_data: 89 | # Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed. 90 | export LC_ALL=C LANGUAGE=C LANG=C 91 | 92 | # Load Explorer if no arguments given 93 | APPLICATION="" 94 | if [ -z "$*" ] ; then 95 | APPLICATION="winecfg" 96 | fi 97 | 98 | # Since the AppImage gets mounted at different locations, relying on "$HERE" 99 | # does not good to determine a unique string per application when inside an AppImage 100 | if [ -z "$APPIMAGE" ] ; then 101 | AppName=wine_$(echo "$HERE" | sha1sum | cut -d " " -f 1) 102 | else 103 | AppName=wine_$(echo "$APPIMAGE" | sha1sum | cut -d " " -f 1) 104 | fi 105 | 106 | MNT_WINEPREFIX="/tmp/$AppName.unionfs" # TODO: Use the name of the app 107 | 108 | # remove C:\users symlink to /home for older wineprefix.tar.gz files 109 | if [ -n "$WINEPREFIX" ] ; then 110 | MIME1=$(file --mime-type $WINEPREFIX/drive_c/users) 111 | 112 | if [ "$MIME1" = "$WINEPREFIX/drive_c/users: inode/symlink" ]; then 113 | rm -rf "$WINEPREFIX/drive_c/users" 114 | fi 115 | fi 116 | 117 | # Load bundled WINEPREFIX if existing and if $WINEPREFIX is not set 118 | if [ -d "$HERE/wineprefix" ] && [ -z "$WINEPREFIX" ] ; then 119 | RO_WINEPREFIX="$HERE/wineprefix" # WINEPREFIX in the AppDir 120 | RW_WINEPREFIX_OVERLAY="/tmp/$AppName.rw" # TODO: Use the name of the app 121 | 122 | mkdir -p "$MNT_WINEPREFIX" "$RW_WINEPREFIX_OVERLAY" 123 | if [ ! -e "$MNT_WINEPREFIX/drive_c" ] ; then 124 | echo "Mounting $MNT_WINEPREFIX" 125 | "$HERE/usr/bin/unionfs-fuse" -o use_ino,uid=$UID -ocow "$RW_WINEPREFIX_OVERLAY"=RW:"$RO_WINEPREFIX"=RO "$MNT_WINEPREFIX" || exit 1 126 | trap atexit EXIT 127 | fi 128 | 129 | export WINEPREFIX="$MNT_WINEPREFIX" 130 | echo "Using $HERE/wineprefix mounted to $WINEPREFIX" 131 | fi 132 | 133 | atexit() 134 | { 135 | while pgrep -f "$HERE/bin/wineserver" ; do sleep 1 ; done 136 | pkill -f "$HERE/usr/bin/unionfs-fuse" 137 | sleep 1 138 | rm -r "$MNT_WINEPREFIX" # "$RW_WINEPREFIX_OVERLAY" 139 | } 140 | 141 | 142 | # Allow the AppImage to be symlinked to e.g., /usr/bin/wineserver 143 | if [ ! -z $APPIMAGE ] ; then 144 | BINARY_NAME=$(basename "$ARGV0") 145 | else 146 | BINARY_NAME=$(basename "$0") 147 | fi 148 | if [ ! -z "$1" ] && [ -e "$HERE/bin/$1" ] ; then 149 | APPLICATION="$1" 150 | MAIN="$HERE/bin/$1" ; shift 151 | elif [ ! -z "$1" ] && [ -e "$HERE/usr/bin/$1" ] ; then 152 | MAIN="$HERE/usr/bin/$1" ; shift 153 | elif [ -e "$HERE/bin/$BINARY_NAME" ] ; then 154 | MAIN="$HERE/bin/$BINARY_NAME" 155 | elif [ -e "$HERE/usr/bin/$BINARY_NAME" ] ; then 156 | MAIN="$HERE/usr/bin/$BINARY_NAME" 157 | else 158 | MAIN="$HERE/bin/wine" 159 | fi 160 | 161 | # create missing registry files to ensure wine runs correctly 162 | if [ ! -e "$WINEPREFIX/system.reg" ] ; then 163 | LD_PRELOAD="$HERE/lib/libhookexecv.so" "$WINELDLIBRARY" "$HERE/bin/wine" "wineboot" "-u" | cat 164 | fi 165 | 166 | MIME=$(file --mime-type "$MAIN") 167 | 168 | if [ "$MIME" = "$MAIN: text/x-shellscript" ] ; then 169 | if [ "$APPLICATION" = "winetricks" ] ; then 170 | # https://wiki.winehq.org/Winetricks 171 | "$MAIN" "$@" | cat 172 | elif [ ! -z "$APPLICATION" ] ; then 173 | # shell scripts in /bin/ that need to be run as 'wine wineprogram' 174 | # msiexec, notepad, regedit, regsvr32, wineboot, winecfg, wineconsole, winedbg, winefile, winemine, winepath 175 | LD_PRELOAD="$HERE/lib/libhookexecv.so" "$WINELDLIBRARY" "$HERE/bin/wine" "$APPLICATION" "$@" | cat 176 | fi 177 | elif [ -z "$APPLICATION" ] ; then 178 | LD_PRELOAD="$HERE/lib/libhookexecv.so" "$WINELDLIBRARY" "$MAIN" "$@" | cat 179 | else 180 | LD_PRELOAD="$HERE/lib/libhookexecv.so" "$WINELDLIBRARY" "$MAIN" "$APPLICATION" | cat 181 | fi 182 | EOF 183 | chmod +x AppRun 184 | 185 | # Why is this needed? Probably because our Wine was compiled on a different distribution 186 | ( cd ./lib/i386-linux-gnu/ ; ln -s libudev.so.1 libudev.so.0 ) 187 | ( cd ./usr/lib/i386-linux-gnu/ ; rm -f libpng12.so.0 ; ln -s ../../../lib/libpng12.so.0 . ) 188 | rm -rf lib64/ 189 | 190 | # Cannot move around share since Wine has the relative path to it; hence symlinking 191 | # so that the desktop file etc. are in the correct place for desktop integration 192 | cp -r usr/share share/ && rm -rf usr/share 193 | ( cd usr/ ; ln -s ../share . ) 194 | 195 | grep "Categories=" usr/share/applications/wine.desktop || echo 'Categories=System;Emulator;' >> usr/share/applications/wine.desktop 196 | cp usr/share/applications/wine.desktop . 197 | 198 | touch wine.svg # FIXME 199 | 200 | export VERSION=$(strings ./lib/libwine.so.1 | grep wine-[\.0-9] | cut -d "-" -f 2) 201 | 202 | cd .. 203 | 204 | export WINEDLLOVERRIDES="mscoree,mshtml=" 205 | mkdir -p ./Wine.AppDir/wineprefixnew 206 | export WINEPREFIX=$(readlink -f ./Wine.AppDir/wineprefixnew) 207 | ./Wine.AppDir/AppRun wineboot.exe 208 | ./Wine.AppDir/AppRun wineboot.exe 209 | sleep 5 210 | # Need to ensure that we have system.reg userdef.reg user.reg, otherwise explorer.exe will not launch 211 | ls -lh "$WINEPREFIX" 212 | 213 | # echo "disable" > "$WINEPREFIX/.update-timestamp" # Stop Wine from updating $WINEPREFIX automatically from time to time # This leads to non-working WINEPREFIX! 214 | ( cd "$WINEPREFIX/drive_c/" ; rm -rf users ) || true # Do not hardcode username in wineprefix 215 | 216 | ls -lh "$WINEPREFIX/" 217 | mv ./Wine.AppDir/wineprefixnew ./Wine.AppDir/wineprefix && export WINEPREFIX=$(readlink -f ./Wine.AppDir/wineprefix) 218 | 219 | wget -c "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" 220 | chmod +x ./appimagetool-x86_64.AppImage 221 | ARCH=x86_64 ./appimagetool-x86_64.AppImage -g ./Wine.AppDir 222 | 223 | # 224 | # Wine AppImage DONE. Now making a wineprefix for Notepad++ 225 | # 226 | 227 | export VERSION=$(wget -q "https://notepad-plus-plus.org/repository/7.x/?C=M;O=D" -O - | grep href | grep '/"' | grep -v "unstable" | grep -v "repository" | cut -d ">" -f 6 | cut -d '"' -f 2| sed -e 's|/||g' | sort -r -V | uniq | head -n 1) 228 | SHORTVERSION=$(echo $VERSION | cut -d "." -f 1).x 229 | wget -c "https://notepad-plus-plus.org/repository/$SHORTVERSION/$VERSION/npp.$VERSION.bin.minimalist.7z" 230 | 7z x -o"$WINEPREFIX/drive_c/windows/system32/" npp*.7z # system32 is on Windows $PATH equivalent 231 | 232 | # Perhaps we can make this generic so as to convert all from portableapps.com in the same way 233 | # wget -c "http://download3.portableapps.com/portableapps/Notepad++Portable/NotepadPlusPlusPortable_7.6.paf.exe" 234 | # 7z x -y -otmp NotepadPlusPlusPortable_7.6.paf.exe 235 | # mv tmp/* "$WINEPREFIX/drive_c/windows/system32/" 236 | 237 | # Icon 238 | rm ./Wine.AppDir/*.{svg,svgz,png,xpm} ./Wine.AppDir/.DirIcon || true 239 | wrestool -x -t 14 ./Wine.AppDir/wineprefix/drive_c/windows/system32/notepad++.exe > icon.ico 240 | convert icon.ico icon.png 241 | mkdir -p ./Wine.AppDir/usr/share/icons/hicolor/{256x256,48x48,16x16}/apps/ 242 | cp icon-3.png ./Wine.AppDir/usr/share/icons/hicolor/256x256/apps/notepadpp.png 243 | cp icon-6.png ./Wine.AppDir/usr/share/icons/hicolor/48x48/apps/notepadpp.png 244 | cp icon-8.png ./Wine.AppDir/usr/share/icons/hicolor/16x16/apps/notepadpp.png 245 | cp icon-3.png ./Wine.AppDir/notepadpp.png 246 | sed -i -e 's|^Icon=.*|Icon=notepadpp|g' ./Wine.AppDir/*.desktop 247 | 248 | sed -i -e 's|^Name=.*|Name=NotepadPlusPlus|g' ./Wine.AppDir/*.desktop 249 | sed -i -e 's|^Name\[.*||g' ./Wine.AppDir/*.desktop 250 | sed -i -e 's|winecfg|notepad++.exe|g' ./Wine.AppDir/AppRun 251 | ls -lh "$WINEPREFIX" 252 | 253 | # Delete unneeded files 254 | SQ=$(readlink -f .)/Wine.AppDir/ 255 | find Wine.AppDir/ -type f -or -type l > tmp.avail 256 | while read p; do 257 | readlink -f "$p" >> tmp.normalized.have 258 | done