zaryob / inary Goto Github PK
View Code? Open in Web Editor NEWPython3 ile yazılmış hızlı algoritması ve sağlam veri analizi altyapısı içeren bir Linux paket yönetim sistemi.
License: GNU General Public License v3.0
Python3 ile yazılmış hızlı algoritması ve sağlam veri analizi altyapısı içeren bir Linux paket yönetim sistemi.
License: GNU General Public License v3.0
INARY PACKAGE MANAGER --------------------- Pisi çatalı: Copyright (C) 2005 - 2011, Tubitak/UEKAE GNU/Genel Kamu Lisansı sürüm 2 ile lisanslanmıştır. Inary çatalı ve geliştirmeleri: Copyright (C) 2016 - 2020 Suleyman POYRAZ (Zaryob) Lisansı GNU/Genel Kamu Lisansı sürüm 3'e yükseltilmiştir. Inary geliştirmeleri : Copyright (C) 2018 - 2020 Ali Rıza KESKİN (Sulincix) https://github.com/Pardus-Linux/pisi adresinden çatallanmıştır Inary paket yönetim sistemi mevcut pisi paket yöneticisinin eksiklerini, hatalarını onarmak, python3 ile yeniden ele alınıp açık kaynak dünyasındaki son gelişmeleri yakalamak amacıyla 21-12-2016 tarihinde pisi çatalı üzerinde çalışılarak başlamış; ilerleyen başlangıç niteliğinde olan pisi çatalından kodlama yöntemi ve kullanılan ek modüller bakımından ayrılmış ve kendine özgü bir hale dönüşmüş, ayrıca pisi adının lisanslı olması sebebyle yeniden adlandırılarak geliştirilmeye devam edilmiştir. Yazılım inary adını aldığı zaman gitlab sitesi üzerinden kamuya yayılmıştır. Diğer paket yönetim sistemlerinden ayrılan yanları: - Dinamik dosya veritabanına sahiptir. Kurulu dosyalarda değişme olup olmadığı ile ilgili takipler kolayca yapılabilir. - Python ile kodlanmış diğer paket yöneticilerine göre oldukça hızlı ve seri iş yapar. - Tüm kurulum betiği python scriptlerinden oluştuğu için betikleri anlaması kolaydır, pakete ait diğer veriler xml dosyalarında depo edildiği için paket yapım arayüzü ile terminal ekranına gerek kalmadan paket oluşturma işi yapılabilir. Diğer özellikleri: - Sağlam ve python içinde gömülü bir veritabanı ile çalıştığı için hızlıdır. - LZMA ve XZ sıkıştırma yöntemleri kullandığı için daha küçük paketlere sahiptir. - Basit düzey ve üst düzey tüm işlemleri aynı kararlılıkla yerine getirir - Forend uygulamaları tasarlanmasına elverişli bir yapıdadır. - Terminal arayüzü oldukça anlaşılır ve kullanıcı dostudur. Kurulum bağımlılıkları: python3-pycurl | python3-requests | requests | wget intltool
The packager gives: package name, package summary, package description, package address build dependencies and action functions. Inary get packager name and email in ~/.packager file, set sha1sum, archive type in archive file, set runtime dependencies in pkgconfig (for c c++ and others), requirements.txt (for python), gemfile (for ruby) and others.
In bump versioning it will only get new release. If problem detected building with new release packager control spec file.
I thing comar script will be yaml type. It look a like travis.yml file. And not used python script in comar script and ı thing it will be understandable with this type
I think scom start with inary
İkon temalarda optipng ile optimize etme fikri getirildi.
Api module will be little functions. Declarate all packages and modules into api.py and set enviroments and globals in api.py. The other functions move a new function. In this way api.py will import faster and inary work faster than old pisi versions
sh ~$ inary ro
Unhandled internal exception.
Please file a bug report to <http://bugs.sulin.org>.
<class 'inary.errors.PrivilegeError'>: You have to be root for this operation.
Please use 'inary help' for general help.
Traceback:
File "/usr/bin/inary", line 97, in <module>
cli.run_command()
File "/usr/lib/python3.7/site-packages/inary/cli/inarycli.py", line 155, in run_command
self.command.run()
File "/usr/lib/python3.7/site-packages/inary/cli/removeorphaned.py", line 59, in run
remove.remove(orphaned)
File "/usr/lib/python3.7/site-packages/inary/util.py", line 84, in wrapper
raise inary.errors.PrivilegeError(_("You have to be root for this operation."))
Some look and feel fixes...
1:autogen.sh çalıştırma
2:pip ile lokal dosyadan paket oluşturma
3:cargo ile rust için paket oluşturma
...
When a command or package is writen false, anythşng cannot understands easly. So, we need a decorator like @spell to return did you mean message.
sh ~$ inary up
Updating repositories.
Updating package repository: "core"
No signature found for "/repo/SulinRepository/inary-index.xml"
Package database updated.
Checking dependencies for install...
The following packages will be upgraded:
libsoup libsoup-devel
Total size of package(s): 0.00 B / 410.70 KB
After this operation, -4160.00 B space will be freed.
Downloading 1 / 2
In this place
After this operation, -4160.00 B space will be freed.
It needs some look and feel fix
Pisi/fetcher.py used urlgrabber module. But urlgrabber not compatible with python3.
We should write new fetcher. There are alternatives for this:
*pycurl
*requests
*httplib and ftplib
*urllib.request
Why we build packages under root user?? Is this logical??
In old TODO.md
-> Refactor code after unit tests are finished. Divide long functions. Rename necessary function and variable names (like A, B_C, D_, C) to understandable ones
-> Add documentation to all module functions
-> Messages in log file are not very helpful. Log messages overhaul needed. We need detailed logging.
-> Create meaningful Exception classes. Remove "Error" exceptions and humanized error messages after Exception work done
inary emergeup --debug
System error. Program terminated.
'super' object has no attribute 'add_options'
Please use 'inary help' for general help.
Use --debug to see a traceback.
when building we use catbox or the other sandboxing modules. I thing it's short. Maybe we can use lxc (linux containers) when package building in future
A detailed documentation is necessary for our package manager.
Pisi not developed since 2011. (After pardus project didn't make big changes on pisi) And pisi name already used and owned from https://github.com/examachine/
I dont want debate with anybody due to a name. Thats' why I will be change pisi and all C Based requirements (piksemel and catbox)
Pisi renamed named Inary
We need simulation mode
print full log without download and install (just print log)
İnary uses old catbox sandbox system but it is really slow. Needs to looking for necessities for new sandbox enviroment or developing catbox enviroment.
suleyman@localhost:~/Development/SulinOS/inary/doc> inary check
Checking all installed packages.
System error. Program terminated.
max() arg is an empty sequence
Please use 'inary help' for general help.
Use --debug to see a traceback.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.