Skip to content
master
Go to file
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

QArchive Logo

QArchive GitHub issues GitHub forks GitHub stars GitHub license Codacy Badge Travis Build status Appveyor Build status

QArchive is a cross-platform C++ library that modernizes libarchive , This library helps you to extract and compress archives supported by libarchive. The whole library itself is crafted to work perfectly well with the Qt event loop and thus its a perfect fit for your Qt projects.

I personally made this project to extract .7z archives in order to create a library that can update Qt Apps installed via Qt Installer Framework without using the updater tool provided by Qt , because I hated using sub-process and besides I wanted a in-built updater for my application and thats not possible with the already provided updater from Qt Installer Framework.

Features

  • Single threaded and Non-Blocking API - Using Qt's Event Loop. (you can optionally run in a different thread)

  • Easy to Use API - Made some effort to match Qt's style.

  • Cyclic API , No use of mutex - The whole library is fully cyclic and therefore no mutex is used.(Only signals and slots.)

  • Drink the Qt Kool-aid - In a positive way.

Witness it with your own eyes,

#include <QCoreApplication>
#include <QArchive>

int main(int argc, char **argv)
{
    using QArchive::DiskExtractor;
    QCoreApplication app(argc, argv);
    DiskExtractor Extractor("Test.7z");
    
    /* Connect Signals and Slots. */
    QObject::connect(&Extractor , 
                     &DiskExtractor::finished , 
                     &app , 
                     &QCoreApplication::quit);
    
    Extractor.start();
    return app.exec();
}

Getting Started

Learn more about QArchive at the official documentation.

Contributors QArchive Contributors

My utmost gratitude goes to these people! ❤️


Matthieu Petiot
💻

Adrien Bertrand
💻

Albert Huang
💻

Ichiro
💻

Long Nguyen
💻

g-fb
💻

You can also become one of them by contributing to this project , to know more read CONTRIBUTING.md.

Thank You Thank You

I really need to thank the developers of this libraries for creating it because QArchive is elegant because of them! ❤️

Support Twitter

If you think that this project is cool then you can give it a or 🍴 it if you want to improve it with me. I really ❤️ stars though!

License

The BSD 3-clause "New" or "Revised" License.

Copyright (C) 2017 , antony jr.
All Rights Reserved.

About

🐶 C++ Cross-Platform library 💍 that Modernizes 🚀 libarchive using Qt5 🖌️ . Simply extracts 7z 🍔 , Tarballs 🎱 and other supported formats by libarchive. ❤️

Topics

Resources

License

Packages

No packages published
You can’t perform that action at this time.