popcorn-official / popcorn-desktop

Popcorn Time is a multi-platform, free software BitTorrent client that includes an integrated media player ( Windows / Mac / Linux ) A Butter-Project Fork
https://popcorn-time.site
Other
9.42k stars 624 forks source link

Crash after 2-4 seconds on fedora 27 and 28 #776

Closed SuspiciousDeer closed 5 years ago

SuspiciousDeer commented 6 years ago

Operating System Version: Linux fedora core 27 Popcorn Time Version: Tried on 3.10 stable, build 279 and build 200, same results

Report: Popcorntime used to work. After a system update some days ago it crashes. After updating to fedora 28 still nothing.

Terminal output and general behaviour can be seen here: https://webmshare.com/WB0bM

It does generate a core dump and crash reports.

alejandrodnm commented 6 years ago

Same here with fedora 27, it happened after a dnf update. Also I tried downloading the source and running it, but it didn't work screenshot from 2018-05-03 22-32-57

fruzyna commented 6 years ago

Same here I get the error:

Illegal instruction (core dumped) [4299:4299:0505/101045:ERROR:gl_context_glx.cc(228)] Couldn't make context current with X drawable.

when launching from command line.

andreicristianpetcu commented 6 years ago

Same here. I also tried to build from source but failed.

ghost commented 6 years ago

Just adding to this thread. Exactly the same thing here. After the update for Fedora 28, Popcorntime crashes just a few seconds after opening. It used to work fine. It looks like something related to networking. It doesn't crash if I open it without an internet connection (but what's the point of using it that way? heh).

petre2dor commented 6 years ago

same here

fmikker commented 6 years ago

Confirmed with build 279 as well (https://ci.popcorntime.sh/view/All/job/Popcorn-Time-Desktop/279/)

ghost commented 6 years ago

Adding to the hypothesis of a networking-related bug, this is the first library file listed on the crash backtrace: /opt/popcorn-time/lib/libnw.so

andreicristianpetcu commented 6 years ago

I still have my issue :(

juliangut commented 6 years ago

Another one here

fmikker commented 6 years ago

Another observation is that the app does not crash when there isn't any internet connection available, so it would seem that the crash comes from something network related in the application.

If the app is started before a network connection is present, it's possible to navigate around the app, but the sections "Movies & Anime" just displays a spinning wheel, while the "Series" section gives the following error message: "The remote shows API failed to respond, please check http://status.popcorntime.sh and try again later".

Just tried this on Fedora 27 with kernel 4.16.7-200.fc27.x86_64

pendula95 commented 6 years ago

Issue confirmed. After upgrading from fedora 27 to 28 Popcorn stopped working.

{   "signal": 11
,   "executable": "/home/Popcorn-Time/Popcorn-Time"
,   "stacktrace":
      [ {   "crash_thread": true
        ,   "frames":
              [ {   "address": 140132300702860
                ,   "build_id": "7b81d044e67d2dd40b238c2151ec6ef4e0f2797f"
                ,   "build_id_offset": 1221772
                ,   "file_name": "/home/Popcorn-Time/lib/libnode.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132761630271
                ,   "build_id": "a609df7d0e4cbad867ea578c7d1798a165b1dc71"
                ,   "build_id_offset": 1025599
                ,   "function_name": "epoll_wait"
                ,   "file_name": "/lib64/libc.so.6"
                }
              , {   "address": 140132812307048
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34908776
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132860900792
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 83502520
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878846184
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 55528
                ,   "function_name": "pthread_cond_timedwait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812032819
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34634547
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 0
                ,   "build_id_offset": 0
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132302186902
                ,   "build_id": "7b81d044e67d2dd40b238c2151ec6ef4e0f2797f"
                ,   "build_id_offset": 2705814
                ,   "file_name": "/home/Popcorn-Time/lib/libnode.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132302186902
                ,   "build_id": "7b81d044e67d2dd40b238c2151ec6ef4e0f2797f"
                ,   "build_id_offset": 2705814
                ,   "file_name": "/home/Popcorn-Time/lib/libnode.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812034010
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34635738
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 4294967296
                ,   "build_id_offset": 4294967296
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132302186902
                ,   "build_id": "7b81d044e67d2dd40b238c2151ec6ef4e0f2797f"
                ,   "build_id_offset": 2705814
                ,   "file_name": "/home/Popcorn-Time/lib/libnode.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132860900792
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 83502520
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878846184
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 55528
                ,   "function_name": "pthread_cond_timedwait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812032819
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34634547
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 0
                ,   "build_id_offset": 0
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132860900792
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 83502520
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878846184
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 55528
                ,   "function_name": "pthread_cond_timedwait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812032819
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34634547
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 0
                ,   "build_id_offset": 0
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812034010
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34635738
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 4294967296
                ,   "build_id_offset": 4294967296
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878846184
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 55528
                ,   "function_name": "pthread_cond_timedwait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812032819
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34634547
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 0
                ,   "build_id_offset": 0
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878845180
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 54524
                ,   "function_name": "pthread_cond_wait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132302186902
                ,   "build_id": "7b81d044e67d2dd40b238c2151ec6ef4e0f2797f"
                ,   "build_id_offset": 2705814
                ,   "file_name": "/home/Popcorn-Time/lib/libnode.so"
                } ]
        }
      , {   "frames":
              [ {   "address": 140132878846184
                ,   "build_id": "77e654b256026b5ed8411e7aa37285df8be204c9"
                ,   "build_id_offset": 55528
                ,   "function_name": "pthread_cond_timedwait@@GLIBC_2.3.2"
                ,   "file_name": "/lib64/libpthread.so.0"
                }
              , {   "address": 140132812032819
                ,   "build_id": "c0b0ac9d6dfe9b4471ffa52508d13dedd431d0e1"
                ,   "build_id_offset": 34634547
                ,   "file_name": "/home/Popcorn-Time/lib/libnw.so"
                }
              , {   "address": 4294967296
                ,   "build_id_offset": 4294967296
                } ]
        } ]
}
DarthVi commented 6 years ago

I have the same issue, but I've executed the executable that can be found here: https://get.popcorntime.sh/build/Popcorn-Time-0.3.10-Linux-64.tar.xz

I tried to use gdb to analyze the coredump file, to me the issue seems to reside in libnode.so

Reading symbols from /opt/Popcorn-Time/Popcorn-Time...(no debugging symbols found)...done.
[New LWP 30025]
[New LWP 30027]
[New LWP 30044]
[New LWP 30045]
[New LWP 30046]
[New LWP 30034]
[New LWP 30032]
[New LWP 30031]
[New LWP 30048]
[New LWP 30030]
[New LWP 30033]
[New LWP 30055]
[New LWP 30053]
[New LWP 30054]
[New LWP 30056]
[New LWP 30047]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

warning: Loadable section ".note.gnu.property" outside of ELF segments
Core was generated by `/opt/Popcorn-Time/Popcorn-Time --type=zygote --no-sandbox --enable-crash-report'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f96602c348c in ?? () from /opt/Popcorn-Time/lib/libnode.so
[Current thread is 1 (Thread 0x7f9682df9fc0 (LWP 30025))]
Missing separate debuginfos, use: dnf debuginfo-install cairo-1.15.12-2.fc28.x86_64 dbus-libs-1.12.8-1.fc28.x86_64 krb5-libs-1.16.1-2.fc28.x86_64 libgcc-8.1.1-1.fc28.x86_64 libstdc++-8.1.1-1.fc28.x86_64 nss-3.36.1-1.1.fc28.x86_64 nss-util-3.36.1-1.0.fc28.x86_64 pixman-0.34.0-8.fc28.x86_64 zlib-1.2.11-8.fc28.x86_64
(gdb) where
#0  0x00007f96602c348c in  () at /opt/Popcorn-Time/lib/libnode.so
#1  0x0000562e355492e8 in  ()
#2  0x0000000000000001 in  ()
#3  0x0000562e35576bd0 in  ()
#4  0x0000562e3540e540 in  ()
#5  0x0000562e3564c1b0 in  ()
#6  0x0000562e3535aa80 in  ()
#7  0x0000000000000000 in  ()
(gdb) frame 0
#0  0x00007f96602c348c in ?? () from /opt/Popcorn-Time/lib/libnode.so
(gdb) list
1   /* Special .init and .fini section support for x86-64.
2      Copyright (C) 2012-2018 Free Software Foundation, Inc.
3      This file is part of the GNU C Library.
4   
5      The GNU C Library is free software; you can redistribute it and/or
6      modify it under the terms of the GNU Lesser General Public
7      License as published by the Free Software Foundation; either
8      version 2.1 of the License, or (at your option) any later version.
9   
10     In addition to the permissions in the GNU Lesser General Public
(gdb) 
11     License, the Free Software Foundation gives you unlimited
12     permission to link the compiled version of this file with other
13     programs, and to distribute those programs without any restriction
14     coming from the use of this file. (The GNU Lesser General Public
15     License restrictions do apply in other respects; for example, they
16     cover modification of the file, and distribution when not linked
17     into another program.)
18  
19     Note that people who make modified versions of this file are not
20     obligated to grant this special exception for their modified
(gdb) 
21     versions; it is their choice whether to do so. The GNU Lesser
22     General Public License gives permission to release a modified
23     version without this exception; this exception also makes it
24     possible to release a modified version which carries forward this
25     exception.
26  
27     The GNU C Library is distributed in the hope that it will be useful,
28     but WITHOUT ANY WARRANTY; without even the implied warranty of
29     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
30     Lesser General Public License for more details.
(gdb) 
31  
32     You should have received a copy of the GNU Lesser General Public
33     License along with the GNU C Library; if not, see
34     <http://www.gnu.org/licenses/>.  */
35  
36  /* crti.S puts a function prologue at the beginning of the .init and
37     .fini sections and defines global symbols for those addresses, so
38     they can be called as functions.  The symbols _init and _fini are
39     magic and cause the linker to emit DT_INIT and DT_FINI.  */
40  
(gdb) 
41  #include <libc-symbols.h>
42  #include <sysdep.h>
43  
44  #ifndef PREINIT_FUNCTION
45  # define PREINIT_FUNCTION __gmon_start__
46  #endif
47  
48  #ifndef PREINIT_FUNCTION_WEAK
49  # define PREINIT_FUNCTION_WEAK 1
50  #endif
(gdb) 
51  
52  #if PREINIT_FUNCTION_WEAK
53      weak_extern (PREINIT_FUNCTION)
54  #else
55      .hidden PREINIT_FUNCTION
56  #endif
57  
58      .section .init,"ax",@progbits
59      .p2align 2
60      .globl _init
(gdb) 
61      .type _init, @function
62  _init:
63      /* Maintain 16-byte stack alignment for called functions.  */
64      subq $8, %rsp
65  #if PREINIT_FUNCTION_WEAK
66      movq PREINIT_FUNCTION@GOTPCREL(%rip), %rax
67      testq %rax, %rax
68      je .Lno_weak_fn
69      call *%rax
70  .Lno_weak_fn:
(gdb) 
71  #else
72      call PREINIT_FUNCTION
73  #endif
74  
75      .section .fini,"ax",@progbits
76      .p2align 2
77      .globl _fini
78      .type _fini, @function
79  _fini:
80      subq $8, %rsp
Persei08 commented 6 years ago

Could it be some dependencies issues for running nwjs? Someone have tried to run nwjs alone?

Persei08 commented 6 years ago

My actual idea is it is related to nwjs on which PT is based. I wonder if some required libraries were updated/removed in fedora.

Things interesting to know will be:

edit: added notes after feedback from @EliaGeretto

EliaGeretto commented 6 years ago

@Persei08 I tested both the current version of nwjs and version 0.18.6 on Fedora 27 and both work with the sample HTML-only application presented in the documentation. As for the rest of the tests, I am not that familiar with nwjs or this project, but maybe one of the contributors can replicate the issue building in a Fedora 28 VM.

Persei08 commented 6 years ago

@EliaGeretto , thank you. I have updated my previous comment with your feedback.

The custom build of nwjs 0.18.6 used in PT can be found here. If you or someone want to test.

The issue also happen when building under Fedora. @andreicristianpetcu have experimented that in issue #777.

EliaGeretto commented 6 years ago

@Persei08 Again, it seems to work without any issue with the sample HTML-only application I used before. Obviously it does not exercise the framework as extensively as Popcorn Time though. The application can be found here.

Persei08 commented 6 years ago

@EliaGeretto , Ok Thank you. I will see for installing a fedora 28 VM but I have to move partitions first

andreicristianpetcu commented 6 years ago

@Persei08 how should I run PT with that build of nwjs?

Persei08 commented 6 years ago

ha great. In gulpfile.js, edit downloadurl parameters of nw const (line 63 128), remove this parameter or put 'https://dl.nwjs.io/' instead. This way you will be able to build with untouched nwjs packages and see if results are different.

andreicristianpetcu commented 6 years ago

@Persei08 damn :( crashed again... the line I changed was 128, not 63.

Any other ideas? Is it possible it was still using the old nw? Can I help with any log info?

Persei08 commented 6 years ago

Yes it's line 128 :/ .

So, if you have run gulp clean and run all the usual commands: npm install bower install gulp build gulp run

?

In the output you see don't have seen it downloading the new nwjs package? Or it said something like 'using cache' ?

andreicristianpetcu commented 6 years ago
$gulp build
[01:47:41] Using gulpfile ~/Dev/popcorn-desktop/gulpfile.js
[01:47:41] Starting 'build'...
[01:47:41] Starting 'injectgit'...
Branch: development
Commit: be800aa9
[01:47:41] Finished 'injectgit' after 54 ms
[01:47:41] Starting 'css'...
Stylus files compiled in /home/andrei/Dev/popcorn-desktop/src/app/themes/
[01:47:44] Finished 'css' after 2.83 s
[01:47:44] Starting 'nwjs'...
Using v0.18.6 (sdk)
Create cache folder in /home/andrei/Dev/popcorn-desktop/cache/0.18.6-sdk
Using cache for: linux64
Create release folder in /home/andrei/Dev/popcorn-desktop/build/Popcorn-Time/linux64
[01:49:25] Finished 'nwjs' after 1.67 min
[01:49:25] Finished 'build' after 1.72 min

$gulp run
[01:49:27] Using gulpfile ~/Dev/popcorn-desktop/gulpfile.js
[01:49:27] Starting 'run'...
Running linux64 from cache
Popcorn-Time exited with code 0
[01:49:32] Finished 'run' after 4.27 s

and now it crashed

andreicristianpetcu commented 6 years ago
rm -rf /home/andrei/Dev/popcorn-desktop/cache/0.18.6-sdk                                                                                               $gulp build
[02:05:27] Using gulpfile ~/Dev/popcorn-desktop/gulpfile.js                                               
[02:05:27] Starting 'build'...                       
[02:05:27] Starting 'injectgit'...                   
Branch: development                                  
Commit: be800aa9                                     
[02:05:27] Finished 'injectgit' after 13 ms          
[02:05:27] Starting 'css'...                         
Stylus files compiled in /home/andrei/Dev/popcorn-desktop/src/app/themes/                                 
[02:05:30] Finished 'css' after 2.35 s               
[02:05:30] Starting 'nwjs'...                        
Using v0.18.6 (sdk)                                  
Create cache folder in /home/andrei/Dev/popcorn-desktop/cache/0.18.6-sdk                                  
Downloading: https://dl.nwjs.io/v0.18.6/nwjs-sdk-v0.18.6-linux-x64.tar.gz                                 
  downloading [====================] 100% 0.0s       

Create release folder in /home/andrei/Dev/popcorn-desktop/build/Popcorn-Time/linux64                      
[02:07:25] Finished 'nwjs' after 1.92 min            
[02:07:25] Finished 'build' after 1.95 min           

$gulp run
[02:07:30] Using gulpfile ~/Dev/popcorn-desktop/gulpfile.js
[02:07:30] Starting 'run'...
Running linux64 from cache
Popcorn-Time exited with code 0
[02:07:34] Finished 'run' after 4.22 s

crash

Persei08 commented 6 years ago

Ok, so custom or not change nothing.

Can you try with most recent versions of nwjs?

andreicristianpetcu commented 6 years ago
const nwVersion = '0.30.5',
    availablePlatforms = ['linux32', 'linux64', 'win32', 'win64', 'osx64'],
    releasesDir = 'build',
    nwFlavor = 'sdk';
$rm -rf /home/andrei/Dev/popcorn-desktop/cache
$gulp build
[02:17:02] Using gulpfile ~/Dev/popcorn-desktop/gulpfile.js                                               
[02:17:02] Starting 'build'...                       
[02:17:02] Starting 'injectgit'...                   
Branch: development                                  
Commit: be800aa9                                     
[02:17:02] Finished 'injectgit' after 13 ms          
[02:17:02] Starting 'css'...                         
Stylus files compiled in /home/andrei/Dev/popcorn-desktop/src/app/themes/                                 
[02:17:05] Finished 'css' after 2.4 s                
[02:17:05] Starting 'nwjs'...                        
Using v0.30.5 (sdk)                                  
Create cache folder in /home/andrei/Dev/popcorn-desktop/cache/0.30.5-sdk                                  
Downloading: https://dl.nwjs.io/v0.30.5/nwjs-sdk-v0.30.5-linux-x64.tar.gz                                 
  downloading [====================] 100% 0.0s       

Create release folder in /home/andrei/Dev/popcorn-desktop/build/Popcorn-Time/linux64                      
[02:18:56] Finished 'nwjs' after 1.85 min            
[02:18:56] Finished 'build' after 1.88 min

$gulp run
[02:19:26] Using gulpfile ~/Dev/popcorn-desktop/gulpfile.js
[02:19:26] Starting 'run'...
Running linux64 from cache
[9702:9721:0522/021928.830430:ERROR:connection.cc(1888)] Cookie sqlite error 2067, errno 0: UNIQUE constraint failed: cookies.host_key, cookies.name, cookies.path, sql: INSERT OR FAIL INTO cookies (creation_utc, host_key, name, value, path, expires_utc, is_secure, is_httponly, last_access_utc, has_expires, is_persistent, priority, encrypted_value, firstpartyonly) SELECT creation_utc, host_key, name, value, path, expires_utc,        secure, httponly, last_access_utc, has_expires,        persistent, priority, encrypted_value, firstpartyonly FROM cookies_old

Drumrolls

AAAAnd IT WORKED!!!!

Persei08 commented 6 years ago

You have the nwjs complete changelog here maybe try with nwjs version blundled with node 7, 8, etc...

andreicristianpetcu commented 6 years ago

I use the latest LTS Node v8.11.1 with ndenv.

Persei08 commented 6 years ago

Ha great it works. Can you try with the 0.25.2 and 0.25.3 the changelog for 0.25.3 let me think something interesting was fixed here.

andreicristianpetcu commented 6 years ago

@Persei08 both 0.25.2 and 0.25.3 failed but they showed a popup with some profile error which I did not see before. I sent a PR with the update to the latest version and I have 5 more minutes of battery on my laptop :D

Persei08 commented 6 years ago

The PR will not help. The standard nwjs do not support lot of codecs. That's why pt and butter use custom builds of nwjs.

Persei08 commented 6 years ago

@andreicristianpetcu , the profile error message is related to downgrade of nwjs. I think you need to delete the app folder saved in this path (look for "Popcorn-Time" instead of "\<name-in-manifest>").

Persei08 commented 6 years ago

I cannot install fedora 28 vm in virtualbox. It run the live mode but when I choose to install it, it just freeze... tried several times on laptop and desktop :/ . Will retry later

Kidlike commented 6 years ago

@Persei08 So how do we create a new build of nwjs the pt/butter way ? You could try a Vagrant flavor of fedora, they usually work.

Persei08 commented 6 years ago

@Kidlike I don't know exactly, all I know is there are some explanation here: https://github.com/butterproject/butter-desktop/issues/647 and in the nwjs doc.

I'm not familiar with vagrant, I assume i have to configure things to have a desktop environment? But I have finally installed fedora28 xfce version and got the same error (Illegal instruction), the VM is just slooow :/ .

I'll do more tests and come back I have some news.

Kidlike commented 6 years ago

Hm... I just realized, couldn't we just use @andreicristianpetcu 's workaround and then just stream to VLC instead of playing in the embedded player ? :)

Persei08 commented 6 years ago

I think it should work

Kidlike commented 6 years ago

So, it works... But I was getting this error when doing gulp build:

Downloading: https://get.popcorntime.sh/repo/nw/v0.30.5/nwjs-sdk-v0.30.5-linux-x64.tar.gz                                                                                                                           
ERROR: The version 0.30.5 (sdk) does not have a corresponding build posted at https://get.popcorntime.sh/repo/nw/. Please choose a version from that list.                                                          
Unable to download NWjs. 

Which is probably related to what @Persei08 was saying that this won't help.

But then I noticed from @andreicristianpetcu 's post that his download URL is different. I don't know how is that possible. Anyway, I did this step manually (download and extract that file inside the cache folder). Now everything works (video playback only through VLC streaming).

Any ideas where that URL comes from ?

Persei08 commented 6 years ago

see my comment here: https://github.com/popcorn-official/popcorn-desktop/issues/776#issuecomment-390802230

Persei08 commented 6 years ago

At the moment i have tested with all higher versions (0.18.6 -> 0.20.1) of nwjs custom builds available on pt repo and I always get the 'Popcorn-Time exited with code 0'.

Now I will test with nwjs official builds to see from which version number the error disappear

andreicristianpetcu commented 6 years ago

@Persei08 do you want to do some dev work on Fedora 28 or just testing the fix? I'm pretty sure I can find somebody runing Fedora 28 that actually has this issue :D

@Kidlike I changed the URL from line 128

// nw-builder configuration
const nw = new nwBuilder({
    files: [],
    buildDir: releasesDir,
    zip: false,
    macIcns: './src/app/images/butter.icns',
    version: nwVersion,
    flavor: nwFlavor,
    downloadUrl: 'https://dl.nwjs.io/',
    platforms: parsePlatforms()
}).on('log', console.log);
Persei08 commented 6 years ago

I'm just testing, I just want to find the lowest version number which work and check the nwjs changelog.

Persei08 commented 6 years ago

ok, it work since nwjs version 0.30.1 which doesn't help me to understand :/

So as a workaround you can build it with nwjs 0.30.5 from official repo and then swap the libffmpeg.so with the one provided here: https://github.com/iteufel/nwjs-ffmpeg-prebuilt/releases . libffmpeg.so must be swapped in ./popcorn-desktop/cache/0.30.5-sdk/<platform>/lib for dev purpose (gulp run) and in ./popcorn-desktop/build/Popcorn-Time/<platform>/lib/ if you want to generate redistribuable packages (gulp dist).

It will support a bit less codecs than PT custom build, but for the dozen movies I have tested it worked great, for episodes sometimes (1/4) there was no sound.

It seem to generate other little issues, but PT still work (movies, episodes, subtitles, torrent collection).

choonming commented 6 years ago

I would like to add that while building it with nwjs 0.30.5 from https://dl.nwjs.io and switching the libffmpeg.so worked for me, the streaming to the TV via chromecast does not work for the subtitles. There will be an error stating that subtitles could not be converted while the movie plays normally.

burmanh commented 6 years ago

Unfortunately I've found the most satisfactory workaround to this beeing the use of the windows build in a 64-bit wine prefix on Fedora 28, almost everything works as intended except streaming tv-series, strangely enough...the loading tends to be somewhat slower due to the extra software layer though, but if you can live with that it's a good enough solution for the moment.. @EduardKuun has a good point, I described the "best way" for the 3.10 build, 3.09 works perfectly and so does popcorn-time community edition (uses the same api as 3.09) on fedora 28.

EduardKuun commented 6 years ago

I've been trying to find a solution to this problem for weeks. If you are adamant on using version 0.3.10 I can't help. Follow this https://get.popcorntime.sh/repo/build/ link. Download version 0.3.9 and extract the tar.xz file. Navigate to the extracted directory and run the ./Popcorn-Time command. Should work fine.

llaine commented 6 years ago

+1 not being able to run on Fedora 27.

I'm getting some [1] 4566 illegal hardware instruction (core dumped) ./Popcorn-Time

christianbueno1 commented 6 years ago

thanks @EduardKuun 0.3.9 works on fedora 28 workstation

christianbueno1 commented 6 years ago

hello pals after run PCT 0.3.9 , I downloaded PCT 0.3.10 and ran it Here the output


[harvey@localhost Popcorn-Time-0.3.10-Linux-64]$ ./Popcorn-Time 
./Popcorn-Time: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory
And PCT 0.3.10 doesn't run on fedora 28 workstation
red-I2P commented 6 years ago

Same issue here. I hope we can fix this soon, a very serious bug.