liushmh / pyparted Goto Github PK
View Code? Open in Web Editor NEWThis project forked from dcantrell/pyparted
Python bindings for GNU parted (libparted)
License: GNU General Public License v2.0
This project forked from dcantrell/pyparted
Python bindings for GNU parted (libparted)
License: GNU General Public License v2.0
pyparted Python bindings for libparted ----------------------------- OVERVIEW pyparted is a set of native Python bindings for libparted. libparted is the library portion of the GNU parted project. With pyparted, you can write applications that interact with disk partition tables and filesystems. The Python bindings are implemented in two layers. Since libparted itself is written in C without any real implementation of objects, a simple 1:1 mapping of externally accessible libparted functions was written. This mapping is provided in the _ped Python module. You can use that module if you want to, but it's really just meant for the larger parted module. _ped libparted Python bindings, direct 1:1: function mapping parted Native Python code building on _ped, complete with classes, exceptions, and advanced functionality. The _ped module is written and maintained by hand. I chose to do this rather than rely on a tool like SWIG or Pyrex for several reasons. Mostly because I was the GNU parted maintainer, but also because libparted is sort of complex. It's a lowlevel system tool and I found it doesn't translate well in the tools I tried. This is nothing against those tools, I just don't think libparted is ideal to go through SWIG or Pyrex. By writing my own bindings, I can also find bugs in libparted that I may have overlooked before. See the WHY file for more explanation as to why I wrote the bindings by hand. HISTORY pyparted started life at Red Hat and continues there today. The main reason for writing it was to let anaconda (the Red Hat installation program, now used by RHEL and Fedora and many other distributions) interact with libparted. Anaconda is written in Python, so native bindings made sense. pyparted went through many rewrites, but the end result was always the same. And incomplete API via Python with just enough provided for anaconda to do its job. The latest iteration of pyparted aims to be a complete API mapping and even provide a nice set of classes so that people might want to integrate it in to other installers or even write other applications (maybe a Python based alternative to parted(8) or fdisk(8)). EXAMPLES Example code is provided in the examples directory. These may help provide a gentle introduction to the usage concepts of pyparted. More examples are always welcome, as are improved explanatory commentary for those that exist. QUESTIONS If you are reporting a pyparted failure in Fedora, it's most useful if you file a bug at http://bugzilla.redhat.com/ against the appropriate Fedora release you are using. Alternatively, you can file bugs directly on the project page: https://github.com/dcantrell/pyparted/issues If you just have questions about pyparted, you can email us directly using the contact information in the AUTHORS file. We will do our best to help you.
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.