Coder Social home page Coder Social logo

i2pd-qt's Introduction

i2pd-qt's People

Contributors

nonlin-lin-chaos-order-etc-etal avatar orignal avatar presfil avatar r4sas 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

i2pd-qt's Issues

[Qt GUI] Initial network configuration wizard

On the first run could be nice to have initial wizard for advanced network environment setup. User could also skip it and use defaults, and can also change those settings later.

tns

default sigtype fix

<absolutely_hard_alpha_variable> orignal, какой сигтайп брать напомни - EDDSA ED25519 SHA512?
<x> absolutely_hard_alpha_variable: это тип по умолчанию
<absolutely_hard_alpha_variable> в i2pd-qt до сих пор дефолт 1. а не этот
<x> нынче он в тренде, номер 7
<absolutely_hard_alpha_variable> он в тренде но я так и не пофиксал

Needs to be optimized? Eats lots of RAM at this moment of time: VIRT:6GB RES:800MB

i2pd_qt flatpak version: git:2.41.0
OS: Ubuntu 20.04.3 LTS


  1  [||                                                                                         1.3%]   5  [                                                                                           0.0%]
  2  [||                                                                                         1.3%]   6  [                                                                                           0.0%]
  3  [                                                                                           0.0%]   7  [                                                                                           0.0%]
  4  [|                                                                                          0.7%]   8  [                                                                                           0.0%]
  Mem[|||||||||||||||||||||||||||||||||||                                                 3.39G/15.6G]   Tasks: 190, 740 thr; 1 running
  Swp[|                                                                                     886M/102G]   Load average: 0.36 0.44 0.55 
                                                                                                         Uptime: 14:27:06

    PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command
  16031 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.11 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16036 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:03.91 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16037 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.07 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16038 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.44 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16039 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.58 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  15176 vak        20   0 5913M  794M 11116 S  2.0  5.0 20:17.71 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16040 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.19 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16055 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.11 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16056 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.18 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16057 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.29 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16058 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.19 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16168 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.20 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16169 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:00.00 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16018 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.56 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16019 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.38 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16020 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:04.41 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16021 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:03.82 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16022 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:03.81 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16023 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.33 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16024 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.50 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16025 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.50 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16026 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.30 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16027 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.59 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16028 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:00.96 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16029 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.80 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16030 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:03.85 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16011 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:02.35 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16012 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:00.09 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16013 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:00.13 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16014 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:00.10 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16015 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:00.13 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16016 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.13 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  16017 vak        20   0 5913M  794M 11116 S  0.0  5.0  0:01.82 i2pd_qt --datadir=/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd

defect: strange stuff with `ln -s`

47.1

flatpak run website.i2pd.i2pd
mkdir: невозможно создать каталог «/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd»: Файл существует
cp: запись через повисшую ссылку '/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd' не выполняется
cp: запись через повисшую ссылку '/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd' не выполняется
ln: не удалось создать символьную ссылку '/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd/certificates': Нет такого файла или каталога
Gtk-Message: 15:51:27.370: Failed to load module "appmenu-gtk-module"
Gtk-Message: 15:51:27.370: Failed to load module "canberra-gtk-module"
Qt: Session management error: None of the authentication protocols specified are supported
terminate called after throwing an instance of 'boost::filesystem::filesystem_error'
  what():  boost::filesystem::create_directory: Файл существует: "/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd"
/app/bin/i2pd_qt_wrapper: строка 10:     7 Аварийный останов         (образ памяти сброшен на диск) i2pd_qt --datadir=$XDG_DATA_HOME/.i2pd
exit status: 134
Origin: 🍀😇🍀 Eou yoyoloka «ZIG WORKING NUCLEAR BEE 🐲PluralityDragon VV8 SUPR https://github.com/THREEPOEMS
whoami: vak; vak: $\{LOGNAME\}; pwd: /home/vak; date: +2021-12-06 07:51:27 UTC nanoseconds:501699301 ADC; host: vakhost
Ok
stat /home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
  Файл: /home/vak/.var/app/website.i2pd.i2pd/data/.i2pd -> /oldhome/user/.var/app/website.i2pd.i2pd/data/.i2pd/
  Размер: 52        	Блоков: 0          Блок В/В: 4096   символьная ссылка
Устройство: 826h/2086d	Инода: 7078572     Ссылки: 1
Доступ: (0777/lrwxrwxrwx)  Uid: ( 1000/     vak)   Gid: ( 1000/     vak)
Доступ:        2021-12-06 15:48:26.704067023 +0800
Модифицирован: 2021-12-06 15:48:18.772148110 +0800
Изменён:       2021-12-06 15:48:18.772148110 +0800
Создан:        -
exit status: 0
Origin: 🍀😇🍀 Eou yoyoloka «ZIG WORKING NUCLEAR BEE 🐲PluralityDragon VV8 SUPR https://github.com/THREEPOEMS
whoami: vak; vak: $\{LOGNAME\}; pwd: /home/vak; date: +2021-12-06 07:51:47 UTC nanoseconds:347641995 ADC; host: vakhost
Ok
stat /oldhome/user/.var/app/website.i2pd.i2pd/data/.i2pd
  Файл: /oldhome/user/.var/app/website.i2pd.i2pd/data/.i2pd
  Размер: 4096      	Блоков: 8          Блок В/В: 4096   каталог
Устройство: 827h/2087d	Инода: 14140521    Ссылки: 7
Доступ: (0775/drwxrwxr-x)  Uid: ( 1000/     vak)   Gid: ( 1000/     vak)
Доступ:        2021-12-06 15:46:47.037085042 +0800
Модифицирован: 2021-12-01 14:38:21.560652654 +0800
Изменён:       2021-12-01 14:38:21.560652654 +0800
Создан:        -
exit status: 0
Origin: 🍀😇🍀 Eou yoyoloka «ZIG WORKING NUCLEAR BEE 🐲PluralityDragon VV8 SUPR https://github.com/THREEPOEMS
whoami: vak; vak: $\{LOGNAME\}; pwd: /home/vak; date: +2021-12-06 07:51:53 UTC nanoseconds:370963313 ADC; host: vakhost
Ok
stat /oldhome/user/.var/app/website.i2pd.i2pd/data/.i2pd/
  Файл: /oldhome/user/.var/app/website.i2pd.i2pd/data/.i2pd/
  Размер: 4096      	Блоков: 8          Блок В/В: 4096   каталог
Устройство: 827h/2087d	Инода: 14140521    Ссылки: 7
Доступ: (0775/drwxrwxr-x)  Uid: ( 1000/     vak)   Gid: ( 1000/     vak)
Доступ:        2021-12-06 15:46:47.037085042 +0800
Модифицирован: 2021-12-01 14:38:21.560652654 +0800
Изменён:       2021-12-01 14:38:21.560652654 +0800
Создан:        -
exit status: 0
Origin: 🍀😇🍀 Eou yoyoloka «ZIG WORKING NUCLEAR BEE 🐲PluralityDragon VV8 SUPR https://github.com/THREEPOEMS
whoami: vak; vak: $\{LOGNAME\}; pwd: /home/vak; date: +2021-12-06 07:51:54 UTC nanoseconds:844828479 ADC; host: vakhost
Ok


defect: empty tunnels GUI widget with non-empty `tunnels.conf`

pwd
/home/vak/.var/app/website.i2pd.i2pd/data/.i2pd
Ok
cat tunnels.conf |wc -c
22766
exit status: 0
Ok

изображение

lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.3 LTS
Release:	20.04
Codename:	focal
Ok
uname -a
Linux vakhost 5.4.0-92-generic #103-Ubuntu SMP Fri Nov 26 16:13:00 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Ok

Typing pointer jump to "Name" field after entering every character/number within any other field when adding new tunnel !!

Hi. I discover this very morbid GUI bug !!!

To reproduce it, do the following:

  1. open GUI,
  2. Tunnel setting,
  3. add new tunnel (client or server),
  4. enter the name. This is okay,
  5. now set typing pointer within any next field & try to enter it's value. You will see that just by typing any character or number (just one), then the typing pointer will jump to field of "Name" !!!

To overcome this bug user need to re-set typing pointer again to intended field after every time enter a character or a number in any next field following "Name" field & remain repeat this till finish all parameters !!! This is very very morbid !! Kindly give it attention !

vcs_commit_info optimization

<R4SAS> слушай, а можно как то сделать чтобы один раз получало эту строку, а не на каждый файл?
<R4SAS> это считай каджый раз оно запрашивает
<R4SAS> сделать как в кошеле, записывать хедер файл с строкой при старте, где надо инклудить его
<R4SAS> в будущем

Дичь и маразм с конфигами..

<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> orignal, скажи лучшие настройки для илитки ирц? я на @rf публичную лекцию в федиверсе веду
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> у меня щас вот такое пашет
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> [IRC_ilita]
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> type=client
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> address=127.0.0.1
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> port=12444
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> destination=irc.ilita.i2p
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> destinationport=6667
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> cryptoType=0
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> signaturetype=1
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> keys=transient
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> i2cp.leaseSetAuthType=0
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> i2cp.leaseSetEncType=
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> i2cp.leaseSetPrivKey=
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> i2cp.leaseSetType=1
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> i2p.streaming.answerPings=false
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> i2p.streaming.initialAckDelay=200
<orignal>  i2cp.leaseSetType=1
<orignal> это не надо
<orignal>  i2p.streaming.answerPings=false это зачем?
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> хз
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> Qt мой навставлял
<orignal> какая то дичь
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> ээ ну надо багу тогда репортнуть
<orignal> signaturetype=1
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> в куте
<orignal> это вообще маразм
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> куте фиксать нада
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> объяснишь потом что не так?
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> нахер маразм надо с корнем выполоть оттуда
<orignal> 1 это EcDSA-P256 зачем он тебе?
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> я не в курсе
<orignal> [ILITA]
<orignal> type=client
<orignal> port=6672
<orignal> destination=irc.ilita.i2p
<orignal> keys=irc.dat
<orignal> crypto.tagsToSend=20
<orignal> signaturetype=7
<orignal> inbound.length=1
<orignal> outbound.length=1
<orignal> inbound.quantity=3
<orignal> outbound.quantity=3
<orignal> i2cp.leaseSetType=3
<orignal> i2cp.leaseSetEncType=0,4
<orignal> вот что у меня
<ИНЕИСТЫЙЪЬ_ВЕЛИКАНЪЬ_МУХОМОРЪЬ> ок
<orignal> keys=transient можешь сделать
<orignal> у меня статический адрес чтобы меня сразу опозновало

qt urgent - ircd type=irc tunnel issues

<Hypnosis> [x_ircd]
<Hypnosis> type=irc
<Hypnosis> host=127.0.0.1
<Hypnosis> port=6667
<Hypnosis> signaturetype=1
<Hypnosis> inport=0
<Hypnosis> accesslist=
<Hypnosis> gzip=false
<Hypnosis> enableuniquelocal=true
<Hypnosis> address=127.0.0.1
<Hypnosis> hostoverride=
<Hypnosis> webircpassword=...
<Hypnosis> keys=x_ircd_key.dat
<Hypnosis> inbound.length=0
<Hypnosis> outbound.length=0
<orignal> signaturetype=1
<orignal> не надо это
<Hypnosis> нада 7 ?
<Hypnosis> это qt
<orignal> inport=0 нельзя
<orignal> да 7 ставь
<orignal> hostoveeride не надо
<orignal> это только для http
<Hypnosis> это qt
<orignal> accesslist убери
<orignal> из за него проблема у тебя
<orignal> он никого не пропускает ))

flatpak: tunconf file option doesn't work from the GUI editbox

When I specify Tunnels config file: as (existing non-empty file) /home/user/.i2pd/tunnels.conf instead of the default /home/user/.var/app/website.i2pd.i2pd/data/.i2pd/tunnels.conf, qt app doesn't read /home/user/.i2pd/tunnels.conf and reads a file tunnels.conf from the datadir (i.e. from /home/user/.var/app/website.i2pd.i2pd/data/.i2pd/tunnels.conf) with no tunnels inside.

Some debug info:

ps auxwww|grep i2pd|grep -v wrapper|grep -v grep
user      143466  4.8  0.4 2003044 79832 ?       Sl   04:17   0:11 i2pd_qt --datadir=/home/user/.var/app/website.i2pd.i2pd/data/.i2pd

flatpak qt: certs - wtf?

ls ~user/.var/app/website.i2pd.i2pd/data/.i2pd -la|grep cert
lrwxrwxrwx  1 user user   22 2020-12-06 00:10:59 090433265 certificates -> /app/i2pd/certificates
Ok
stat /app
stat: cannot stat '/app': No such file or directory
Ok

[i2pd_qt] Defect: exceptions in Qt event handler + should show a GUI messagebox on exception

/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=i2pd_qt_wrapper website.i2pd.i2pd
had read tunnel dest: irc.postman.i2p
...
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
mesa: for the -simplifycfg-sink-common option: may only occur zero or one times!
mesa: for the -global-isel-abort option: may only occur zero or one times!
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Performing daemon start...
16:31:46@660/info - Log: min messages level set to debug
16:31:46@660/info - Log: will send messages to /var/log/i2pd-flatpak.log
16:31:46@660/error - Log: can't open file /var/log/i2pd-flatpak.log
16:31:46@660/info - i2pd v2.28.0 starting
16:31:46@660/debug - FS: main config file: /home/user/.var/app/website.i2pd.i2pd/data/.i2pd/i2pd.conf
16:31:46@660/debug - FS: data directory: /home/user/.var/app/website.i2pd.i2pd/data/.i2pd
16:31:46@660/info - Daemon: accepting incoming connections at port 0
16:31:46@660/info - Daemon: bandwidth set to 'low'
16:31:46@660/debug - Initialised, creating the main window...
16:31:46@660/debug - tunnels config file: /home/user/.var/app/website.i2pd.i2pd/data/.i2pd/tunnels.conf
16:31:46@660/debug - Before main window.show()...
16:31:46@660/debug - Starting the daemon...
16:31:46@660/debug - Starting GUI event loop...
16:31:46@943/info - Daemon: starting NetDB
...
16:31:46@943/info - NTCP2: Start listening TCP port 27252
16:31:46@943/info - Daemon: Transports started
Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt.
You must not let any exception whatsoever propagate through Qt code.
If that is not possible, in Qt 5 you must at least reimplement
QCoreApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error> >'
  what():  bind: Адрес уже используется
/app/bin/i2pd_qt_wrapper: строка 10:     3 Аварийный останов         (стек памяти сброшен на диск) i2pd_qt --datadir=$XDG_DATA_HOME/.i2pd

daemon restart

кажется демон рестарт в гуи не пашет. вызывает daemon.stop() daemon.start(). инфа не точная. вроде демон плохо стартует ирц тоннели не поднимает после рестарта

Enhancement: Telegram-like UI

x, [08.06.21 23:07]
вот фар я из исходников соберу. ибо ценный инструмент, а билды глючные. а твою пока хз. мож кал какой

Eugene CHAD MAGMATIC CHAD ENIGMATIC, [08.06.21 23:07]
моя кал да править надо

но в целом более менее

вот в телеграмоподобное бы её превратить

тогда будет не кал

x, [08.06.21 23:09]
[В ответ на Eugene CHAD MAGMATIC CHAD ENIGMATIC]
делаем?

qt gui bug: two app instances at same time are allowed.

testcase

  1. we run 1st i2pd_qt instance
  2. we quit it and confirm quitting.
  3. the i2pd_qt continues to live in system tray at windows os or at any platform while i2pd daemon is deallocating resources
  4. we run 2nd i2pd_qt instance
  5. now, during some period of time, two i2pd_qt instances live at the system tray. this is a bug.
  6. then, 1st instance closes and correctly removes its instance from the system tray.

expected behavior

2nd instance should show a gui dialog "i2pd_qt is already running" and correctly and quickly quit after the OK button release event.

Segfaults - i2pd_qt

installed ubuntu 20.04 onto new root partition (root partition was formatted during installation).

installed i2pd from flathub.

messages in syslog:

cat /var/log/syslog | grep i2pd
Dec  6 04:30:49 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15072.scope.
Dec  6 04:31:01 desktop1 kernel: [ 4746.493958] QThread[15193]: segfault at 70 ip 00005587e01df3af sp 00007fe7667fba30 error 6 in i2pd_qt[5587e00ce000+29c000]
Dec  6 04:31:01 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15072.scope: Succeeded.
Dec  6 04:31:05 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15245.scope.
Dec  6 04:31:13 desktop1 kernel: [ 4758.515457] QThread[15319]: segfault at 70 ip 000055bcab01a3af sp 00007f7515ffaa30 error 6 in i2pd_qt[55bcaaf09000+29c000]
Dec  6 04:31:13 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15245.scope: Succeeded.
Dec  6 04:31:16 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15363.scope.
Dec  6 04:31:23 desktop1 kernel: [ 4769.337567] QThread[15437]: segfault at 70 ip 000055963bc483af sp 00007fde75ffaa30 error 6 in i2pd_qt[55963bb37000+29c000]
Dec  6 04:31:24 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15363.scope: Succeeded.
Dec  6 04:31:43 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15495.scope.
Dec  6 04:31:51 desktop1 kernel: [ 4797.054731] QThread[15570]: segfault at 70 ip 000055c2e8e9c3af sp 00007f3122ffca30 error 6 in i2pd_qt[55c2e8d8b000+29c000]
Dec  6 04:31:51 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15495.scope: Succeeded.
Dec  6 04:32:12 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15602.scope.
Dec  6 04:32:19 desktop1 kernel: [ 4824.829681] QThread[15676]: segfault at 70 ip 000055bb4768f3af sp 00007f2704ff8a30 error 6 in i2pd_qt[55bb4757e000+29c000]
Dec  6 04:32:19 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15602.scope: Succeeded.
Dec  6 04:35:09 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15784.scope.
Dec  6 04:35:42 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15784.scope: Succeeded.
Dec  6 04:35:46 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15868.scope.
Dec  6 04:36:57 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15868.scope: Succeeded.
Dec  6 04:36:59 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-15971.scope.
Dec  6 04:38:11 desktop1 systemd[1464]: flatpak-website.i2pd.i2pd-15971.scope: Succeeded.
Dec  6 04:39:33 desktop1 systemd[1464]: Started flatpak-website.i2pd.i2pd-16104.scope.
date -u
Sat Dec  5 20:47:22 UTC 2020

[QT] Improve panel applet

I would like to suggest the following improvements:

Make left click list of applet should contain following options:

  • switch ON/OFF
  • rebuild chain (reset)
    and it will be nice to show (bellow these options) IPs of routers in sequence over which user connect (like Tor), if this not cause security issue or leak.

Mike right click list of applet should contain following:

  • Toggle the window (currently available)
  • Graceful quit
  • Quit

Compilation in Linux

Первоначальная инструкция (реальное положение дел немного изменилось, i2pd теперь надо клонировать самому):
https://i2pd.readthedocs.io/en/latest/devs/building/qt-desktop-gui/

Мои дополнения 2021 года (проверено в Ubuntu 16.04, Qt 5.5.1):
Qt5 из Debian 8 (Jessie) уже слишком стар.
Если не указаны пути, предполагается, что это домашняя папка /home/user

установка сборочных зависимостей:
sudo apt install build-essential binutils gcc g++ make cmake git fakeroot devscripts dh-apparmor libboost-all-dev libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libcrypto++-dev libwebsocketpp-dev libssl-dev libminiupnpc-dev zlib1g-dev qt5-default libqt5gui5 qt5-qmake qtcreator

клонирование:

git clone https://github.com/PurpleI2P/i2pd.git
git clone https://github.com/PurpleI2P/i2pd-qt.git

скопировать содержимое каталога i2pd (кроме .git) в i2pd-qt/src/i2pd

ИЛИ

git clone --recursive https://github.com/PurpleI2P/i2pd-qt.git

но в этом случае модуль src/i2pd будет последней релизной версии, а не самой последней git версии.

-----СБОРКА В QTCREATOR------
Проверка параметров:
В Qt Creator Инструменты - Параметры - Сборка и запуск - Комплекты:
Профиль Qt 5.x.x
/usr/bin/cmake
Инструменты - Параметры - Сборка и запуск - Qt Versions:
Qt 5.x.x в PATH (qt5) /usr/lib/x86_64-linux-gnu/qt5/bin/qmake должно быть без ошибок

Сборка:
открыть в Qt Creator i2pd-qt/i2pd_qt.pro
подождать разбора файлов
снять галочку с "Отладка"
кнопка "Настроить проект"
подождать разбора файлов
вкладка "Проекты"
Изменить конфигурацию сборки: Отладка - Выпуск
можно также проверить настройки Desktop - Сборка - Запуск - Сборка
закрыть лишние приложения, требуется много памяти (много потребляет сам qt creator)
Слева внизу нажать на значок молотка "Собрать проект i2pd_qt" Ctrl+B
Или "Сборка - Собрать всё" Ctrl+Shift+B
Открыть консоль сборки 4

выходной файл будет здесь /home/user/build-i2pd_qt-Desktop-Release/i2pd_qt (среди кучи других, отсортируйте по типу)
strip --strip-unneeded /home/user/build-i2pd_qt-Desktop-Release/i2pd_qt (уменьшение размера)
скопировать его в любое место, например в PATH /home/user/.local/bin
переименовать по желанию, остальные файлы не нужны

ярлык запуска можно взять отсюда /home/user/i2pd-qt/contrib/website.i2pd.i2pd.desktop (и поместить в /home/user/.local/share/applications)
иконки (их указать в файле .desktop):
/home/user/i2pd-qt/contrib/icons/128x128/website.i2pd.i2pd.png
/home/user/i2pd-qt/src/resources/icons/mask.ico
/home/user/i2pd-qt/src/resources/images/icon.png
-----СБОРКА В QTCREATOR------

ИЛИ

-----СБОРКА В QMAKE (НЕ ПРОВЕРЕНО)------
вместо Qt Creator можно использовать консольный qmake:

cd i2pd-qt
qmake i2pd_qt.pro
make USE_UPNP=yes
sudo make install

Остальное см. выше
-----СБОРКА В QMAKE (НЕ ПРОВЕРЕНО)------

профиль находится в /home/user/.i2pd

настройка браузера:
настройка http://127.0.0.1:7070/
http(s) прокси 127.0.0.1:4444 (рекомендуется, в нем работают outproxy и подсказки)
socks proxy 127.0.0.1:4447

maximize не работает

включенные по умолчанию службы:
HTTP Proxy Enabled
SOCKS Proxy Enabled
BOB Disabled
SAM Enabled
I2CP Disabled
I2PControl Disabled

настройка логов:
Logs destination (stdout, file, syslog)
Logs level (debug, info, warn, error, none)

log=syslog
loglevel=none
logclftime=false

i2pd.conf править только при закрытом i2pd-qt, иначе изменения сбрасываются
i2pd-qt запускать от обычного пользователя (без sudo), не от root. Не используйте sudo для графических приложений, это повредит права профиля ~/.i2pd и других файлов

UPD: Для запуска скомпилированного бинарника на новой системе достаточно установить следующие пакеты/зависимости, на примере Ubuntu 20.04:

sudo apt install libssl1.1 libcrypto++6 zlib1g libqt5gui5 libqt5core5a libqt5widgets5 libminiupnpc17 libboost-date-time1.71.0 libboost-filesystem1.71.0 libboost-program-options1.71.0 libboost-system1.71.0

Как видите, они не упоминаются в разделе "установка сборочных зависимостей" выше, хотя, конечно же, тоже нужны. Вместо них там -dev версии. Просто, -dev версии по зависимостям подтягивают эти самые пакеты. А не указаны они для упрощения и потому что основные пакеты часто релизноспецифичны.
Эти номера версий соответствуют Ubuntu 20.04. Для других убунт можно свериться здесь или в пакетном менеджере Synaptic.
-dev версии и компиляторы для простого запуска не нужны.

Проверить зависимости бинарника можно такой командой:
readelf -d /home/user/build-i2pd_qt-Desktop-Release/i2pd_qt
А насколько они удовлетворяются командой ldd (она также показывает зависимости зависимостей, в отличии от readelf):
ldd /home/user/build-i2pd_qt-Desktop-Release/i2pd_qt

bug: defaults

<Shesha> [smtp_postman]
<Shesha> type=client
<Shesha> address=127.0.0.1
<Shesha> port=7659
<Shesha> destination=smtp.postman.i2p
<Shesha> destinationport=0
<Shesha> cryptoType=0
<Shesha> signaturetype=1
<Shesha> keys=transient
<Shesha> i2cp.leaseSetAuthType=0
<Shesha> i2cp.leaseSetEncType=
<Shesha> i2cp.leaseSetPrivKey=
<Shesha> i2cp.leaseSetType=1
<Shesha> i2p.streaming.answerPings=false
<Shesha> i2p.streaming.initialAckDelay=200
<orignal> не еби мозги
<Shesha> в консолу у всех трёх одна и та же страница http://127.0.0.1:7070/?page=local_destination&b32=7edsuc7cs3b5vof2my74yfhb7p73vtrus4poxgyouy554wo5wl2a

<orignal> <Shesha> signaturetype=1
<Shesha> да чё это за херь объясни
<orignal> ЗАЕБАЛ
<Shesha> чо
<orignal> <Shesha> i2cp.leaseSetAuthType=0
<orignal> это что такое.
<Shesha> старые туннели
<Shesha> старый куте
<Shesha> чо там поменять дефолты7
<Shesha> ?
<orignal> убрать вообще это все
<orignal> signatureType ставб 7

Qt: wtf strange with tunn.conf options? [Issue purely for Qt, doesn't affect i2pd kernel]

[pop3_postman]
destinationport=0
cryptoType=0
i2cp.leaseSetEncType=
i2cp.leaseSetPrivKey=
i2cp.leaseSetAuthType=0

deleted all of these for now. With these options present, pop3_postman didn't work due to invalid localhost port setting or due to these options... testing.

[Further comments will be as edits of this comment]

UPDATE1. Port setting in pop3 client seems to be valid, will now perform postman HQ instructions for testing POP3.

UPDATE2.

telnet localhost 7660
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
[HERE THE telnet WAITS FOREVER; expected "+OK ready" from postman pop3 is not received during a few minutes; I timed out as a human tester.]
^]
telnet> q
Connection closed.
Ok
echo see also " http://hq.postman.i2p/?page_id=11 6. Using the POP3 Services "

UPDATE.

Quitting non-grace and restarting i2pd_qt after having deleted all of the above lines from tun conf.

Then, tested that port was closed:

telnet localhost 7660
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
Ok

Then, lauched i2pd_qt and the first test was successful:

telnet localhost 7660
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
quit
+OK Better luck next time.
Connection closed by foreign host.
Ok

Then, full pop3 test was successful:

telnet localhost 7660
Trying 127.0.0.1…
Connected to localhost.
Escape character is ‘^]’.
+OK Hello there.
user testuser1
+OK Password required.
pass thepassword
+OK logged in.
quit
+OK Bye-bye.
Connection closed by foreign host.

Then, tested mutt: mutt reported no new mail in the pop3 postman box. Success.

Bottomline:

  1. wtf with tunconf options of [pop3_postman] section - the following lines were deleted to succeed with pop3 working okay:
destinationport=0
cryptoType=0
i2cp.leaseSetEncType=
i2cp.leaseSetPrivKey=
i2cp.leaseSetAuthType=0
  1. wtf with i2pd_qt wrt this issue. Is this a defect? If yes, where in the hell is this a defect?

i2pd_qt: move advanced options to spoiler

<R4SAS> да и вообще, надо тебе сделать эти нестандартные опции в отдельный спойлер
<R4SAS> т.е. i2cp опции
<R4SAS> чтобы только после нажатия *Advanced* показывало

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.