Comments (6)
First of all, apologies for taking so long to answer. I've been very busy these days.
Being able to update packages is a goal of this project, but I haven't worked this issue yet. Currently, pipman only generates the PKGBUILD, and doesn't actually track anything. I'd like to avoid databases and keep this simplicity if possible.
I'm thinking in adding pipman-package
as an identifier in pacman's group or maybe pacman's provider, and when the update command is invoked, pipman would search for all the packages with this identifier and update them. Do you think would be a good approach?
from pipman.
I have little to no idea how pacman's database work. I tried to read pacman's python implementation but I didn't have time (but I'm planning to read it).
Won't pacman try to update everything in his database when doing an update ?
If not, your approach is (IMHO) the best.
I've tried to read pacaur and yaourt source code to see how they do the update but they are written in bash and the code his quite hard to read.
from pipman.
Pacman, yaourt and pacaur use their own database of packages. To update a package, they compare the name and version of a package with your local one -- if the name matches and the repository version is greater than the installed one, it updates.
Pipman has nothing to do with those repositories. It only generates a package that is installed locally only with pacman. That package will only update through pacman (or yaourt) if a package with the same name and greater version was added to the repository.
I'll look further into this approach I mentioned and see if it works.
from pipman.
I think I misunderstood your idea the first time. Lets see if I understood it right this time.
The idea would be, when creating the PKGBUILD
to add pipman-package
in a field. When updating pipman
will list the packages that have pipman-package
in this field and check (with pip) if they need to be updated (and update the package by re-installing it if needed).
Have I understood your idea ?
If yes, it's a good idea. It shouldn't be too hard to implement.
from pipman.
Yes, it's how you described. Although I'm not sure if this approach goes against pacman's guidelines, I think it's the best one. I'll go on with it.
from pipman.
This feature was implemented on the latest commit. Now you can update the packages installed through pipman with pipman -Su
. Note that this will only work for new packages installed using the new version, your old packages won't be updated. Please let me know if you find any issue.
from pipman.
Related Issues (16)
- Switch to stdlib venv instead of virtualenv? HOT 3
- KryPy cannot be built because it doesn't see dependencies HOT 1
- Formatting bug during search HOT 2
- AUR package missing dependency HOT 2
- Pip error when trying to install any package with pipman HOT 2
- Is there a way to remove packages with pipman? HOT 2
- Generate code that includes a LICENSE file HOT 2
- Can't generate PKGBUILD from a git repository HOT 12
- Install binaries to /usr/bin?
- Doesn't seem to install dependencies correctly
- python-pip should be a makedepends, not a depends HOT 2
- merge (my fork) into upstream HOT 11
- license should be an array HOT 1
- PKGBUILD.tpl (template) is not bundled into package. HOT 1
- ENCODING can be None HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pipman.