Winget chegou para aperfeiçoar o Windows

Boa tarde pessoal!
Venho compartilhar com vocês uma descoberta que fiz recentemente com o advento do novo gerenciador de pacotes do Windows, o winget. Esse novo gerenciador funciona da mesma forma que os gerenciadores de pacotes no Linux e pela primeira vez, pelo menos para os leigos, é dado controle total ao que é instalado no Windows.
Pra entender como esse gerenciador é útil, através dele é possível enxugar o Windows ao máximo, a ponto de remover partes que foram consideradas pela Microsoft desde sempre como importantíssimas para o sistema, como a assistente Cortana.
Segue o tutorial de como instalar esse novo gerenciador: Como usar o Winget no Windows 10 para instalar novos aplicativos | Mundo Conectado
Depois de instalado, basta digitar winget no PowerShell ou CMD para receber uma lista de comandos, winget list para listar os pacotes instalados e winget uninstall nomedopacote para remover QUALQUER pacote instalado.
Divirtam-se :nerd_face:

8 curtidas

Fiquei bem feliz com essa “inovação” no windows hahaha. Eu fico pensando como demoraram tanto tempo para implementar essa função que fazem muitos anos que existe no Linux.

4 curtidas

Vai ser muito util pra quem precisa trabalhar com varias maquinas e sair instalando tudo de uma vez com scripts…
Acredito que o usuario final não vai ligar muito

6 curtidas

Apesar do Linux já ter essa feature faz MUIITO tempo, a Microsoft finalmente adicionou um gerenciador de pacotes no Windows 11.

Para coloca-lo em funcionamento, você precisa instalar um programa chamado “App Installer” na MS Store, depois disso basta você abrir o terminal do Windows e digitar o comando “Winget” e ele vai te apresentar varios comandos.

Para instalar algum aplicativo digite o comando: winget install (e o nome do programa sem os parênteses), em alguns casos você vai precisar digitar o ID do programa, então para instalar você precisa escrever winget install --id (id do programa sem os parênteses)

Então… oque você achou desse gerenciador de pacotes do Windows?

Devia vir por padrão…

2 curtidas

Sem instalar absolutamente nada, chamei por ‘‘Winget’’ no Windows Terminal e ele retornou ao meu chamado, pelo jeito, no Winodws 11 vem por padrão.

2 curtidas

Interessante…
Não vi nada do winget ainda, o que seria a opção “settings”?

Um momento, vou testar para ver o que é.

1 curtida

Ok, obrigado :slightly_smiling_face:

Basicamente, essa opção te leva pra um arquivo .json com o seguinte conteúdo:

{
    "$schema": "https://aka.ms/winget-settings.schema.json",

    // For documentation on these settings, see: https://aka.ms/winget-settings
    // "source": {
    //    "autoUpdateIntervalInMinutes": 5
    // },
}

parece um arquivo de configurações do winget.

1 curtida

Vlw por mostrar a saida, tava curioso!

Mas eu entrei na url (https://aka.ms/winget-settings.schema.json), ele me tacou pra isso:

{
  "$id": "https://aka.ms/winget-settings.schema.json",
  "$schema": "https://json-schema.org/draft/2019-09/schema#",
  "title": "Microsoft's Windows Package Manager Settings Profile Schema",
  "definitions": {
    "Source": {
      "description": "Source repository settings",
      "type": "object",
      "properties": {
        "autoUpdateIntervalInMinutes": {
          "description": "Number of minutes before source update",
          "type": "integer",
          "default": 5,
          "minimum": 0,
          "maximum": 43200
        }
      }
    },
    "Visual": {
      "description": "Visual settings",
      "type": "object",
      "properties": {
        "progressBar": {
          "description": "Progress bar display style",
          "type": "string",
          "enum": [
            "accent",
            "rainbow",
            "plain",
            "retro"
          ]
        }
      }
    },
    "InstallPrefReq": {
      "description": "Shared schema for preferences and requirements",
      "type": "object",
      "properties": {
        "scope": {
          "description": "The scope of a package install",
          "type": "string",
          "enum": [
            "user",
            "machine"
          ],
          "default": "user"
        },
        "locale": {
          "description": "The locales of a package install",
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^([a-zA-Z]{2}|[iI]-[a-zA-Z]+|[xX]-[a-zA-Z]{1,8})(-[a-zA-Z]{1,8})*$",
            "maxLength": 20
          },
          "minItems": 1,
          "maxItems": 10
        }
      }
    },
    "InstallBehavior": {
      "description": "Install settings",
      "type": "object",
      "properties": {
        "preferences": { "$ref": "#/definitions/InstallPrefReq" },
        "requirements": { "$ref": "#/definitions/InstallPrefReq" }
      }
    },
    "Telemetry": {
      "description": "Telemetry settings",
      "type": "object",
      "properties": {
        "disable": {
          "description": "Controls whether telemetry events are written",
          "type": "boolean",
          "default": false
        }
      }
    },
    "Network": {
      "description": "Network settings",
      "type": "object",
      "properties": {
        "downloader": {
          "description": "Control which download code is used for packages",
          "type": "string",
          "enum": [
            "default",
            "wininet",
            "do"
          ],
          "default": "default"
        },
        "doProgressTimeoutInSeconds": {
          "description": "Number of seconds to wait without progress before fallback",
          "type": "integer",
          "default": 60,
          "minimum": 1,
          "maximum": 600
        }
      }
    },
    "Experimental": {
      "description": "Experimental Features",
      "type": "object",
      "properties": {
        "experimentalCMD": {
          "description": "Reference implementation for an experimental command",
          "type": "boolean",
          "default": false
        },
        "experimentalARG": {
          "description": "Reference implementation for an experimental argument",
          "type": "boolean",
          "default": false
        },
        "dependencies": {
          "description": "Support for package dependencies",
          "type": "boolean",
          "default": false
        },
        "directMSI": {
          "description": "Enable use of MSI APIs rather than msiexec for MSI installs",
          "type": "boolean",
          "default": false
        }
      }
    }
  },
  "allOf": [
    {
      "properties": {
        "visual": { "$ref": "#/definitions/Visual" }
      },
      "additionalItems": true
    },
    {
      "properties": {
        "source": { "$ref": "#/definitions/Source" }
      },
      "additionalItems": true
    },
    {
      "properties": {
        "installBehavior": { "$ref": "#/definitions/InstallBehavior" }
      },
      "additionalItems": true
    },
    {
      "properties": {
        "telemetry": { "$ref": "#/definitions/Telemetry" }
      },
      "additionalItems": true
    },
    {
      "properties": {
        "network": { "$ref": "#/definitions/Network" }
      },
      "additionalItems": true
    },
    {
      "properties": {
        "experimentalFeatures": { "$ref": "#/definitions/Experimental" }
      },
      "additionalItems": true
    }
  ],
  "additionalProperties": true
}

Que pelo que eu entendi , é tipo alguns exemplos de personalização! Que massa! Microsoft ta fazendo um bom trabalho, fizeram já um terminal legal, agora um gerenciador de pacotes “controlavel”.


@JG22 Seria esse o NindowsPKG declarativo?

2 curtidas

Sim, é isso mesmo.

O que é isso?

1 curtida

Fiz um trocadilho com a distro que eu uso, “nixOS”, ela tem um gerenciador de pacotes diferente e um sistema de configuração diferente, que é um arquivo unico chamado de configuração declarativa e nixPKG para o gerenciador de pacotes, dai o NindowsPKG declarativo, nixPKG e configuração declarativa.

Tenho um tópico mostrando: nixOS, básico sobre o projeto

1 curtida

Esse é outro que tá vindo por padrão agora, está até no menu “Iniciar”.

1 curtida

Quanta heresia em comparar com algo tão belo :stuck_out_tongue:

1 curtida

:rofl:

(10 caracteres)

Vc também consegue usar o Winget no Windows 10, mas você precisa entrar no programa Insider.

1 curtida

Negativo, zero meia. Basta atualizar o instalador de aplicativos pelo link da própria Microsoft… Como usar o Winget no Windows 10 para instalar novos aplicativos | Mundo Conectado

Ops… preciso me atualizar

1 curtida

Eu estou dando uma pesquisada aqui do winget, também fiquei curioso da opção “source” (vi na documentação “oficial” = Comando source | Microsoft Docs) , e tem também o “source add”, pra que seria isso? para “adicionar repositorios”? Ou uma especie de git ou algo integrado ao mesmo?