{"id":17175904,"url":"https://github.com/robinrodricks/fluentftp.gnutls","last_synced_at":"2025-04-13T16:31:37.804Z","repository":{"id":66331401,"uuid":"600053794","full_name":"robinrodricks/FluentFTP.GnuTLS","owner":"robinrodricks","description":"Premiere .NET wrapper for GnuTLS along with integration into FluentFTP","archived":false,"fork":false,"pushed_at":"2025-02-11T11:28:02.000Z","size":8380,"stargazers_count":5,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-11T12:47:53.596Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robinrodricks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-10T13:33:30.000Z","updated_at":"2025-02-11T11:28:07.000Z","dependencies_parsed_at":"2023-02-20T19:45:47.525Z","dependency_job_id":"bf485d6e-de95-491c-83bd-5ee0f1013e01","html_url":"https://github.com/robinrodricks/FluentFTP.GnuTLS","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinrodricks%2FFluentFTP.GnuTLS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinrodricks%2FFluentFTP.GnuTLS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinrodricks%2FFluentFTP.GnuTLS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinrodricks%2FFluentFTP.GnuTLS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinrodricks","download_url":"https://codeload.github.com/robinrodricks/FluentFTP.GnuTLS/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248743832,"owners_count":21154748,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-14T23:58:17.763Z","updated_at":"2025-04-13T16:31:36.864Z","avatar_url":"https://github.com/robinrodricks.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"![FluentFTP](https://raw.githubusercontent.com/robinrodricks/FluentFTP.GnuTLS/main/.github/logo.png)\n\n[![Version](https://img.shields.io/nuget/vpre/FluentFTP.GnuTLS.svg)](https://www.nuget.org/packages/FluentFTP.GnuTLS)\n[![Downloads](https://img.shields.io/nuget/dt/FluentFTP.GnuTLS.svg)](https://www.nuget.org/packages/FluentFTP.GnuTLS)\n[![GitHub contributors](https://img.shields.io/github/contributors/robinrodricks/FluentFTP.GnuTLS.svg)](https://github.com/robinrodricks/FluentFTP.GnuTLS/graphs/contributors)\n[![License](https://img.shields.io/github/license/robinrodricks/FluentFTP.GnuTLS.svg)](https://github.com/robinrodricks/FluentFTP.GnuTLS/blob/master/LICENSE)\n\nPremiere .NET wrapper for GnuTLS that provides streams to integrate with FluentFTP.\n\n## Package\nPublished as [FluentFTP.GnuTLS](https://www.nuget.org/packages/FluentFTP.GnuTLS).\n\n## Docs\nSee [FluentFTP Wiki](https://github.com/robinrodricks/FluentFTP/wiki/FTPS-Connection-using-GnuTLS).\n\n## Developer Setup\n\nAccording to the GnuTLS LGPL license, you need to be able to obtain the\nsource code of the original GnuTLS library or the source code of any derivate\nor modification of the GnuTLS library.\n\nThe `FluentFTP.GnuTLS` wrapper uses the ORIGINAL unmodified GnuTLS library as a `.dll`\nthat is dynamically linked.\n\nAs of this writing, the GnuTLS library version needed is 3.8.0.\n\nThis guide is for building GnuTLS-30.dll and its dependencies from their respective\noriginal official source.\n\n### 1. Setup and use a fresh install of WSL2 using Debian Bullseye (Debian 11)\n\nRead up on how to export, import, de-register and download WSL2 images for use on your\nWindows PC.\n\nDo NOT use an existing Debian 11 image. Export it in order to save it and install a fresh one.\n\n### 2. Preparation\n\nPerform the following steps in WSL2(Debian 11), work as root or use sudo appropriately:\n\nPerform this once:\n\n    \u003e mkdir mkgnutls \u0026\u0026 cd mkgnutls\n\n    \u003e apt-get install wget git subversion gettext lzip automake autoconf autogen autopoint \\\n    libtool make colormake pkg-config wx-common mingw-w64 mingw-w64-tools\n\n    \u003e mkdir sources \u0026\u0026 mkdir builds \u0026\u0026 mkdir builds/gnutls \u0026\u0026 mkdir builds/gnutls/client64\n\n\n### 3. Building\n\nIn order to download the sources, build and install these libraries, use the scripts in the `Libs/Build` folder.\n\n- libgmp:     ``run step1.sh``\n- libnettle:  ``run step2.sh``\n- libgnutls:  ``run step3.sh``\n\n\n### 4. Optionally strip symbols from `.dll`\n\n- ``run step4.sh``\n\n### 5. Finalize\n\nYou will find the compiled binary files in the folder `mkgnutls/builds/gnutls/client64/bin`:\n\n- `libgmp-10.dll`\n- `libnettle-8.dll`\n- `libhogweed-6.dll`\n- `libgnutls-30.dll` \n- `libgcc_s_seh-1.dll` (part of the `mingw-w64` toolchain)\n- `libwinpthread-1.dll` (part of the `mingw-w64` toolchain)\n\n### 6. Build FluentFTP.GnuTLS\n\nUse Visual Studio to build `FluentFTP.GnuTLS`, which will include the Windows DLLs and Linux binaries in the package.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobinrodricks%2Ffluentftp.gnutls","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobinrodricks%2Ffluentftp.gnutls","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobinrodricks%2Ffluentftp.gnutls/lists"}