Giter VIP home page Giter VIP logo

libgendesktop's People

Contributors

eyyuzame avatar ihonliu avatar libgenapps avatar vasld avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

libgendesktop's Issues

my experience

hello,

Regarding the app.

Scan log - missing formatting , it would be great to know what error(path too long? access rights? being used?) actually happen
Scan algorithm - very slow, constantly keeps triggering false positives

the false positives have following in common:

libgenID: 83308
filesize: 0.00 bytes
comments: md5 файла нулевого размера

this app seems to have a long way to go thanks for yours work

Filter by language

I read that you are preparing major changes in version 1.4.0 and would like to suggest that an option be added to filter by book language.
That would be very welcome.

Epub Bug

System.ComponentModel.Win32Exception (0x80004005): No application is associated with the specified file for this operation
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at LibgenDesktop.ViewModels.Tabs.DownloadManagerTabViewModel.DownloadManagerListBoxDoubleClick()
at LibgenDesktop.Infrastructure.Command.<>c__DisplayClass2_0.<.ctor>b__1(Object param)
at LibgenDesktop.Infrastructure.Command.Execute(Object parameter)
at LibgenDesktop.Views.Controls.DownloadManagerListBox.OnMouseDoubleClick(MouseButtonEventArgs e)
at System.Windows.Controls.Control.HandleDoubleClick(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.UIElement.OnMouseDownThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Linux (and macOS) support

On Linux, I've ran the program (using mono) and gotten the following error message:

The entry point method could not be loaded due to Could not load file or assembly 'PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.

Mono also supports Mac OS so supporting both OS's can be done with the same effort.

Database not "synchronizing" possible Bug

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

When I "synchronize" the database, only "Non-Fiction-Book list" is updated, but the section of "Scientific Articles or white papers" is not synchronized, is it really not updating that section or is it visual?

image

downloader

some things annoy me a bit as of now

  • can download books as PE32 format and attempt execution
  • timeouts too often
  • is not capable of resolving errors such as book returned as HTML

ex
dl

Download error due to name+directory length (string length)

error
Basically the length of the directory + name is too big and it is failing, while I can easily get the address and go to the browser and get the file by downloading manually (without a length error) this would be against the automation of the LibgenDesktop app. I have been trying to fix it myself but my expertise is not that advanced and so far have not being able to fix it. I would highly appreciate a guideline to point me in the right direction so I can keep trying and I can give you all my code for your review, I know you are about to update to a new version, is this scenario covered on that version or should I keep trying? thanks in advance man!

Some mirrors always show the same error - nonfiction returned an invalid URL

Hi,

some mirrors always show the same error, but the browser downloads this link well.

[01:07:10 PM] Stopped.
[08:20:26 AM] Added to the download queue.
[08:20:26 AM] Started.
[08:20:26 AM] Downloading page: http://libgen.lc/ads.php?md5=067B35724BDF1DE6FB44E53F80840CA5
[08:20:26 AM] Request:
GET http://libgen.lc/ads.php?md5=067B35724BDF1DE6FB44E53F80840CA5
User-Agent: LibgenDesktop/1.4.1
[08:20:27 AM] Server response:
200 OK
Connection: keep-alive
Vary: Accept-Encoding, Accept-Encoding
Date: Thu, 29 Apr 2021 06:22:30 GMT
Server: nginx
Content-Length: 4146
Content-Type: text/html
[08:20:27 AM] Transformation libgen_lc_nonfiction returned an invalid URL.

Regards,

changing mirror doesn't work for me anymore in v1.4.1

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

################################################

hi, thanks for making access to the library that comfortable.
I am wondering whether any of you experienced this:
When downloading, the chosen mirror is slow, you want to change the it in settings and wait for the next download to use that very mirror.

Instead of the desired behavior, there is no change in mirror.
I tried:

  • changing mirror while active downloading
  • changing mirror while stopped downloading
  • changing mirror while active downloading, then close and start the app
  • changing mirror while stopped downloading, then close and start the app.

I can not understand the error since it has worked in the past but I think it was a previous version of the (mobile) desktop app.
Also, I did run the mobile version until the synchronisation stopped working after updating to v1.4.1,
then installed a desktop version. I dont think that this causes the behavior but wanted to give that information.

Synchronisation not working

Here's the error I get when I try to synchronise:

Newtonsoft.Json.JsonSerializationException: Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'System.Collections.Generic.List`1[LibgenDesktop.Models.JsonApi.JsonApiNonFictionBook]' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.
To fix this error either change the JSON to a JSON array (e.g. [1,2,3]) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List<T>) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object.
Path '', line 1, position 2.
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
   at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
   at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
   at LibgenDesktop.Models.JsonApi.JsonApiClient.<DownloadNextBatchAsync>d__6.MoveNext()

and
image

How do I get this working?

Files with a large name cannot be saved

Hi!

Files with a large name cannot be saved. Alternatively, you can automatically truncate the name within the limits available on Windows systems.

Regards

Allow user to copy

Right now when you click in the grid, only two menu items are available.
image
It's more useful to add an item to allow the user to copy the book name. The copied name can be used to search or rename the downloaded file etc.

Database locked when Opening Database created with 32 bits version

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

When you use 64 bits version and try to open an existing database created using the 32 bits client, when you try to "synchronize" it will show a "database is locked error" interrupting and failing the synchronization attempt. It is not happening on the 32 bits version opening a database created on the 64 bits version.

请问软件内置的下载器的 自动清理 功能是什么?

优秀的工具!但是内置下载器存在如下问题:
批量下载时,已经完成下载的项目,在下一次启动libgen desktop 之后,默认为全部停止,如果选择全部启动,则已经下载的文件会被重新下载一次,有些文件会自动在文件名上添加(1,2..n)重命名再保存一次。有的则提示重命名失败,下载到了100%之后进度条变红。
如上问题对于批量下载多个文件应用时,用户体验不佳。需要人工鉴别哪些文件已经下载过,然后手工停止相关的下载任务。请问,在下一版的升级中,可否修正这个问题?
有一个 自动清理按钮,但是不知道具体用途,好像没看到相应的帮助文档。如果选择自动清理,是否会清除已完成的任务,还是连文件一并清除?还是清理出错的任务?还是清除死链接? 麻烦开发者看到回复一下,谢谢!

Plugins

Hello,

I propose to add the ability to write plugins.

(This post was created not for the author who no longer develops the program, but for those who want to continue the project as a LibgenDesktopEx project)

Thanks

Unable to save settings

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

2021-10-23_10-34-49.log

Windows 10 21H1 x64

The OK button in Settings is always grayed out (I had to edit libgen.config in order to generate the logs above)

New bug out of nowhere

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

Out of nowhere I got this error. I have not been able to solve it.
image

Windows Regional Format Settings Ignored

I'm working on localization (will PR soon) and I have found an annoying date/time display bug.

On my computer I have Windows display language set to my native language so I have familiar UI texts and units of measurement; but I changed Regional Format (from Settings > Time & Language & Region, it's a dedicated setting to tell Windows how to format date and time strings) to match the locale where I stay to get my colleague readable auto timestamps on my work.

When setting Libgen to use Windows display language, Libgen uses the string specifier read from corresponding language file, which I set to yyyy 年 M 月 d 日 tt hh:mm:ss for Simplified Chinese. This will work if the Regional Format matches UI language (set to Chinese, China), it translates to "2019 年 8 月 7 日 下午 5:35" or something like that.

Annotation 2019-08-07 173724

But my Regional Format is different, and the string becomes "2019 年 8 月 7 日 PM 5:36":

Annotation 2019-08-07 175612

Annotation 2019-08-07 174009

This is because Windows (and .NET) itself correctly uses English (Hong Kong SAR) for those date/time specifiers (yyyy, M, tt, etc.) although the UI language is different. Just so happens that everything else besides tt are both plain numbers in both Chinese and English.

Currently it isn't such a big deal but dead annoying to look at when dates are everywhere. It will become unreadable when a language uses a different numbering system for dates, or never uses 12-hour clock (tt returns empty string). One solution I can think of is to use localized dates ONLY when Regional Format matches UI language, otherwise let Windows deals with it by using a default short specifier (such as, g).

when i am install libgen desktop app its show me error

Error:

System.InvalidOperationException: Nullable object must have a value.
   at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
   at System.Nullable`1.get_Value()
   at LibgenDesktop.Models.Utils.NetworkUtils.CreateProxy(NetworkSettings networkSettings)
   at LibgenDesktop.Models.MainModel.CreateNewHttpClient()
   at LibgenDesktop.Models.MainModel.ReconfigureSettingsDependencies()
   at LibgenDesktop.ViewModels.SetupSteps.DownloadModePageViewModel.OnNextButtonClick()
   at LibgenDesktop.ViewModels.Windows.SetupWizardWindowViewModel.NextButtonClick()
   at LibgenDesktop.Infrastructure.Command.<>c__DisplayClass2_0.<.ctor>b__1(Object param)
   at LibgenDesktop.Infrastructure.Command.Execute(Object parameter)
   at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated)
   at System.Windows.Controls.Primitives.ButtonBase.OnClick()
   at System.Windows.Controls.Button.OnClick()
   at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
   at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Download links don't change after mirror change

Hi!

After updating the mirrors and changing the main mirror, the download cannot continue if the server is no longer there, changing to a new mirror does not update the old links.

Regards

Suggestion: Possible Android Port?

Hey, I'm not sure how to style this, I don't often submit issues to projects. But I was wondering if you had considered making an Android port ofthe app. Its super useful to me on Desktop and I'd love to access it on my phone too. I know most Android apps are made in Java though. Maybe adding an option for a self-hosted web interface to the Desktop app would be an easier ask?

Linux app?

HI... so, there is no linux app? i can get the books from libgen with another app?
Thanks!

How to change default columns order

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

I have been trying with no success to change the default column order, from Title+Authors+Series+Year... to Title+Authors+Year(in ascending order)+Format+... But so far I can't find the piece of code that impacts the order! Is it in this order already on the database or is it chosen by any configuration file? In all humbleness and as an absolute rookie learner I'm looking for guidance on this matter.

I know how to add options to the "settings" menu, I intend to put order selectors in the setting menu so one can sort them and save it in the configuration file as default, but I'm stuck midway.

1.5 will be the final release of Libgen Desktop

1.5 will be the final release of Libgen Desktop.

There will be no feature requests accepted or implemented except for the following:

  • database dump downloader for the import window;
  • search results column set customization;
  • advanced and SQL search;
  • saved searches and search history (will replace bookmarks);
  • translation editor;
  • scanning for files within archives;
  • local library UI improvements.

Import function for the download list by hash identifier

Hello,

it would be convenient to implement the import function for the download list by hash identifier.

(This post was created not for the author who no longer develops the program, but for those who want to continue the project as a LibgenDesktopEx project)

Thanks

Translation file for polish language

Polish.lng.txt

  • I understand that feature requests are no longer accepted except for those listed here: #27

Choose one of the following:

  • this is a bug report;
  • this is a new translation suggestion.

Hi,
I maked translation file for polish language, based on english.
I have tested it since 2 months on my locally installed application and it seems good.

PS.: I'm completly newbie on Github...

Regards
G.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.