Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package Request:dgsh(Directed Graph Shell) #5492

Closed
tathastu871 opened this issue Jul 8, 2020 · 20 comments · Fixed by #8472
Closed

Package Request:dgsh(Directed Graph Shell) #5492

tathastu871 opened this issue Jul 8, 2020 · 20 comments · Fixed by #8472
Labels
package request A new package was requested

Comments

@tathastu871
Copy link
Contributor

tathastu871 commented Jul 8, 2020

Package description

dgsh is an advanced shell for programming higly complex pipe constructs for data flow in shell scripting. And hence it is the most essential tool for programmers, scripters, and system administrators. Having it on termux is highly needed.

Link to home page and sources

  1. Home page:https://www.spinellis.gr/sw/dgsh/
  2. Source code:https://github.com/dspinellis/dgsh

Additional information
Have you compiled or tried to compile the package on device?
Developer have not made or compiled this shell for arm and aarch64 architecture.
Added some of commits with official developer. But some errors cant be resolved. Help needed.
dspinellis/dgsh#113

However, source files needed to be patched for arm/aarch64 so that it can be used on termux.

Having dgsh in termux is the most prominent requirement right now and it will prove to be highly beneficial for complex shell scripting purposes.

  • If it didn't work then please provide the error you ran into.
  • If it did work then please share any patches that you had to apply.
@ghost ghost added the package request A new package was requested label Jul 9, 2020
@tathastu871
Copy link
Contributor Author

Has any of termux developers tried compiling it.

@tathastu871
Copy link
Contributor Author

Added some of commits with official developer. But some errors cant be resolved. Help needed.

dspinellis/dgsh#113

@Grimler91
Copy link
Member

Added some of commits with official developer. But some errors cant be resolved. Help needed.

dspinellis/dgsh#113

Open a PR with the build.sh so that we can see what you are doing and what error you run into

@tathastu871
Copy link
Contributor Author

tathastu871 commented Nov 21, 2021

./lib/stdio-impl.h:66:22: error: field has incomplete type 'struct __sbuf'
lib/freading.c:40:14: error: incomplete definition of type 'struct __sFILE'
lib/freading.c:40:25: error: use of undeclared identifier '__SRD'
3 errors generated.

Help solve this error:
May be patching and including stdio_ext.h may help.
Below may help
https://lists.gnu.org/archive/html/bug-gnulib/2018-05/msg00103.html

@xtkoba
Copy link
Contributor

xtkoba commented Nov 21, 2021

@tathastu871
Copy link
Contributor Author

Did you have https://github.com/termux/termux-packages/blob/master/ndk-patches/bits-struct_file.h.patch applied?
there is no such header in my termux installation

@Grimler91
Copy link
Member

@Grimler91
Copy link
Member

But bits-struct_file.h is not in my termux include/bits folder. How to add it?

$ apt-file search struct_file.h
ndk-sysroot: /data/data/com.termux/files/usr/include/bits/struct_file.h

So install ndk-sysroot

@tathastu871
Copy link
Contributor Author

tathastu871 commented Nov 22, 2021


lib/nl_langinfo.c:151:1: error: redefinition of 'nl_langinfo'
lib/nl_langinfo.c:175:10: error: use of undeclared identifier 'GROUPING'
lib/nl_langinfo.c:283:10: error: use of undeclared identifier 'INT_CURR_SYMBOL'
lib/nl_langinfo.c:285:10: error: use of undeclared identifier 'MON_DECIMAL_POINT'
lib/nl_langinfo.c:287:10: error: use of undeclared identifier 'MON_THOUSANDS_SEP'
lib/nl_langinfo.c:289:10: error: use of undeclared identifier 'MON_GROUPING'
lib/nl_langinfo.c:291:10: error: use of undeclared identifier 'POSITIVE_SIGN'
lib/nl_langinfo.c:293:10: error: use of undeclared identifier 'NEGATIVE_SIGN'
lib/nl_langinfo.c:295:10: error: use of undeclared identifier 'FRAC_DIGITS'
lib/nl_langinfo.c:297:10: error: use of undeclared identifier 'INT_FRAC_DIGITS'
lib/nl_langinfo.c:299:10: error: use of undeclared identifier 'P_CS_PRECEDES'
lib/nl_langinfo.c:301:10: error: use of undeclared identifier 'N_CS_PRECEDES'
lib/nl_langinfo.c:303:10: error: use of undeclared identifier 'P_SEP_BY_SPACE'
lib/nl_langinfo.c:305:10: error: use of undeclared identifier 'N_SEP_BY_SPACE'
lib/nl_langinfo.c:307:10: error: use of undeclared identifier 'P_SIGN_POSN'
lib/nl_langinfo.c:309:10: error: use of undeclared identifier 'N_SIGN_POSN'
16 errors generated.

locale.h seems to have abovr mentioned identifiers but #include <locale.h> does'nt solve it.

But adding #include <c++/v1/support/win32/locale_win32.h>
seems to solve it but it generates below errors

/data/data/com.termux/files/usr/include/c++/v1/support/win32/locale_win32.h:15:10: fatal error: 'xlocinfo.h' file not found
#include <xlocinfo.h> // _locale_t

/data/data/com.termux/files/usr/include/c++/v1/support/win32/locale_win32.h:15:10: fatal error: '__config file not found
#include <__config>

sed 's/#include <__config>/#include <c++/v1/__config>/' /data/data/com termux/files/usr/include/c++/v1/support/win32/locale_win32.h
locale_win32.h file has #include <__config> but is not being found while compiling so change it to direct to exact path #include <c++/v1/config>

Another error xlocinfo.h defined in local_win32.h is not found in termux how to add it

@xtkoba
Copy link
Contributor

xtkoba commented Nov 22, 2021

Seems like the nl_langinfo errors occur when making coreutils. I wonder how our coreutils package is able to work this around.

@tathastu871
Copy link
Contributor Author

Please do consider porting it to termux. It like tee 1000 times powerful. tee can only send ouput to one file and one program. But dgsh allows for sending output of one commqnd to several other programa in acyclic manner.
It severly/tremendosly improves a complec scripting in lesser code

@ghost ghost closed this as completed in #8472 Jan 14, 2022
@tathastu871
Copy link
Contributor Author

tathastu871 commented Jan 20, 2022

@xtkoba
have you made PR for minimal install or fully patched both core tools and unix tools.
Seems many several binaries are not installed

@Grimler91
Copy link
Member

@tathastu871 ???

have you made PR for minimal install or fully patched both core tools and unix tools.
Seems many several binaries are not installed.

All binaries that are built in a standard configure && make && make install are installed, see the build script. Looks like, from Makefile, that both "core-tools" and "unix-tools" are included per default.

How is anyone suppose to know that there are missing functionality or programs that you expected to be included?

Please dont close any issue merging incomplete minimal package build.sh.

It was closed by the accepted PR.

If its not fully functional what is need of partially compiling it.

What is not fully functional? Open a bug report and fill in the bug report template if something is not working.

Once PR has merged no one will further maintain or try again to compile it again.

No, that's not how it works, if issues are reported then we tend to at least try to fix them.

Reopen isssue and let termux develpers compile if you dont have time.

xtkoba has contributed 160+ packages in the last couple of months, which is way more than other "termux developers".

Seems many several binaries are not installed

Open a bug report if there is an issue with the package. We don't know which "several binaries" you are referring to.

@tathastu871
Copy link
Contributor Author

dgsh is a shell like bash. so just like therr is ksh bash sh tcsh binaries to invoke those repective shells.

some additional binaries are copied to $PREFIX/libexec/dgsh folder

So In TERMUX_POST_INSTALL commands to copy or symlink them to $PREFIX/bin

But, also dgsh binary is not installed.

@tathastu871

This comment has been minimized.

@Grimler91
Copy link
Member

I seriously recommend you to change your attitude. You seem to be disappointed that someone spent their time to create a port for a package you requested.

But he aim for minimal build alwys which sometimes are non functional.
He doesnt even test them. Just blindly compiling is not enough

That's quite a harsh statement(/insult), how do you know this? Test how? The programs that are included in dgsh seem to work fine when I run them.

Open-source is suppose to be a community effort, if something doesn't work then the thing to do is to report an issue, and hope that someone feels like spending time on it, or open a PR with a fix.
Complaining about previous work/commits will not solve anything. No one owns you anything.

@ghost
Copy link

ghost commented Jan 21, 2022

maybe understand the phrase called "Be grateful for what you have" because Termux is the only app to include these packages and port it on Android device. without it you won't be able to find a proper dgsh app for Android

try compiling dgsh for yourself and see the difference compared to packaged one

@tathastu871
Copy link
Contributor Author

tathastu871 commented Jan 22, 2022

I seriously recommend you to change your attitude. You seem to be disappointed that someone spent their time to create a port for a package you requested.

But he aim for minimal build alwys which sometimes are non functional.
He doesnt even test them. Just blindly compiling is not enough

That's quite a harsh statement(/insult), how do you know this? Test how? The programs that are included in dgsh seem to work fine when I run them.

Open-source is suppose to be a community effort, if something doesn't work then the thing to do is to report an issue, and hope that someone feels like spending time on it, or open a PR with a fix. Complaining about previous work/commits will not solve anything. No one owns you anything.

It wasn't mean to offend someone. sorry.i had been waiting for this package to complete my script that i wrote some time ago. thats why i requested. It was also this another package i was compiling whose dependencies are not in termux. so i created build.sh fot all those dependencies too. But xtoba passed statement that dont add that many paclages to termux only try minimal base . So how can it be functional.
thats why when dgsh was merged and still incomplete got frustrated. sorry

@ghost
Copy link

ghost commented Jan 22, 2022

build.sh working for on-device builds may not work for cross-compiling environment. That's the case of dgsh.

So:

xtoba passed statement that dont add that many paclages

is what can be expected.

@tathastu871
Copy link
Contributor Author

tathastu871 commented Jan 22, 2022

build.sh working for on-device builds may not work for cross-compilimg environment. That's the case of dgsh.

So:

xtoba passed statement that dont add that many paclages

is what can be expected.

Talking about another packge that i been workint on previously
those dependencies were importnt for package to work and all are compatible for cross compiling excpt one that was not for x86.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
package request A new package was requested
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants