sigoden / upt Goto Github PK
View Code? Open in Web Editor NEWUniversal Package-management Tool for any OS.
License: Apache License 2.0
Universal Package-management Tool for any OS.
License: Apache License 2.0
I installed UPT via cargo. And I'm using Ubuntu under WSL2.
When I attempt to run show
subcommand, it works:
❯ upt show tldr
Package: tldr
Version: 0.6.4-1build6.3
Priority: optional
Section: universe/doc
Source: haskell-tldr
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Debian Haskell Group <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 2903 kB
Depends: libc6 (>= 2.34), libcmark0.30.2 (>= 0.30.2), libffi8 (>= 3.4), libgmp10, git
Conflicts: tldr-py (<< 0.7.0-2~)
Homepage: https://github.com/psibi/tldr-hs#readme
Download-Size: 573 kB
APT-Sources: http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
Description: Haskell tldr client
Haskell tldr client with support for updating and viewing tldr pages.
.
The TLDR pages are a community effort to simplify the beloved man
pages with practical examples. See https://tldr.sh/
But when I tried to run install
:
❯ upt install tldr
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
So I ran it with sudo
:
❯ sudo upt install tldr
sudo: upt: command not found
What is it that I need to do here to allow upt to be run with sudo?
I think I'm missing something obvious but not mentioned in the documentation.
Thanks!
Upt is the best tool I’ve found for package installation management.
I’d like to require a feature, nothing quite new… it’s almost a muscle memory for me to type uninstall
instead of remove
, so I wanna ask you to add upt uninstall
as an alias to upt remove
.
Would it be a problem? Could you do it? I believe I could do it if you don’t mind.
Hey, you tool is great!
FWIW I had done this mini stuff a while back https://gist.github.com/pombredanne/d3585617882f91d9316be5ce5eddf190
Have you considered using https://github.com/package-url ?
Would be neat to add support for cargo-update too.
And perhaps an option to run flutter upgrade
?
(Would help with not forgetting to update it but I get it's more developer-centric than cargo-update, since some apps can/are actually distributed via cargo)
Add python package managers.
Despite their name pip and pipx are not limited to python and allow to distribute bare binaries via wheels.
https://news.ycombinator.com/item?id=31776873
Examples in the wild:
https://github.com/PyO3/maturin#usage
https://github.com/samwillis/nodejs-pypi#install
Would you consider to support Nala (https://gitlab.com/volian/nala)? It's an alternative to APT on Debian-based distros.
UPT is really awesome (Now I will not have to deal with the one-character syntax of pacman anymore :D).
However, to uninstall a package, you can :
But UPT does not support the second method.
Could you add support for it (maybe not supported by all the package manager)?
Anyway, thanks for the project!
Any chance the '-y' gets added to the blenders ? Its pretty much what annoys me on arch linux... and this could be an killer feature if well adapted as well as this wonderfull universal package tool you guys got going on.
First, I love the program idea! I have had something similar on my todo for quite some time.
For Windows users, there is a popular package manager called scoop
It would be great if upt could support it just as it handles choco today.
Currently on my Windows 10 system using scoop, all I get when running upt is
$ scoop info wget
Name: wget
Description: A command-line utility for retrieving files using HTTP, HTTPS, FTP, and FTPS protocols.
Version: 1.20.3
Website: https://eternallybored.org/misc/wget/
License: GPL-3.0-or-later (https://spdx.org/licenses/GPL-3.0-or-later.html)
Manifest:
C:\Users\m\scoop\buckets\main\bucket\wget.json
Installed: No
Binaries:
wget.exe
$ upt show wget
The system cannot find the file specified. (os error 2)
$ upt update
The system cannot find the file specified. (os error 2)
Snaps come in various confinement levels. Most common are strict
, classic
and (sometimes) devmode
. The majority are strict
and so are confined, such that the application cannot access things outside the approved interfaces such as home
, network
, and camera
.
A classic
snap has no such confinement, and can access all files on the computer.
When using snap install
, if the user selects a classic
snap, they will be informed of this fact, with this message:
alan@nuc:~$ snap install code
error: This revision of snap "code" was published using classic confinement and
thus may perform arbitrary system changes outside of the security
sandbox that snaps are usually confined to, which may put your system at
risk.
If you understand and want to proceed repeat the command including
--classic.
If and only if the user decides they want to take the risk of installing the snap, they can optionally choose to install the snap by adding the --classic
option.
upt
pre-fills --classic
on every snap install, whether the user asked or not. Even worse, it only actually shows its own warning about classic
snaps on non classic snaps!
This is not a good way to implement snap installation. upt
should ideally show the user the message above, and allow them the choice to use the --classic
option or not.
This would be a nice feature.
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.