mirror of
https://github.com/nix-community/nixpkgs-update.git
synced 2024-11-29 08:51:48 +03:00
Updating nixpkgs packages since 2018
src | ||
check-result.sh | ||
hello.nix | ||
LICENSE | ||
nix-update.cabal | ||
package.yaml | ||
README.md | ||
Setup.hs | ||
stack.yaml | ||
up.sh | ||
ups.sh |
nix-update
Currently interesting files ups.sh, up.sh, check-result.sh
.
- get a list of oudated packages
git clone https://github.com/ryantm/repology-api.git
cabal2nix --shell --hpack . > shell.nix && nix-build shell.nix && result/bin/repology-api > packages-to-update.txt
- Prepare a nixpkgs git repository where you want to do the updates. It expects origin to be where you want to push your updates. It clobbers any changes in that directory with
git reset --hard
. USE THIS ON A NEWLY CLONED REPO ONLY FOR THIS PURPOSE. - copy list of ones you want to update into
ups.sh
ARGUMENTS variable - Be in the directory of your update git repository. run
ups.sh
if it succeeds, it will make commits and push updates to the origin remote!
old notes
git ls-remote --refs --tags git://github.com/mattermost/mattermost-server.git | grep -v "rc" | tail -1
nix-instantiate -I nixpkgs=/home/ryantm/p/nixpkgs --eval --expr 'let pkgs = import {}; in builtins.elemAt pkgs.mattermost.src.urls 0'
nix-instantiate -I nixpkgs=/home/ryantm/p/nixpkgs --eval --expr 'let pkgs = import { config = {permittedInsecurePackages = [ "autotrace-0.31.1" ];}; }; aV = builtins.attrValues pkgs; in map (v: builtins.elemAt v.src.urls 0) (builtins.filter (builtins.hasAttr "src") (builtins.filter builtins.isAttrs aV))'
wget "https://repology.org/api/v1/metapackages/?inrepo=nix_unstable&outdated=on" wget "https://nixos.org/nixpkgs/packages-unstable.json.gz"