anchor.diff:    (assert-package-manager)
     (let* ((profile (first
                      (prompt
  -                    :sources (list (make-instance 'os-profile-suggestion-filter
  +                    :sources (list (make-instance 'os-profile-source
                                                     :include-manager-p t))
                       :prompt "Profile")))
            (generation (first
                         (prompt
  -                       :sources '(os-generation-source)
  +                       :sources (list (make-instance 'os-generation-source
  +                                                     :profile profile))
                          :prompt "Generation")))
            (buffer (or (find-buffer 'os-package-manager-mode)
                        (nyxt/os-package-manager-mode:os-package-manager-mode
  
positive.code:   (assert-package-manager)
    (let* ((profile (first
                     (prompt
                      :sources (list (make-instance 'os-profile-suggestion-filter
                                                    :include-manager-p t))
                      :prompt "Target profile")))
           (generation (first
                        (prompt
                         :sources (list (make-instance 'os-generation-suggestion-filter
                                                       :profile profile))
                         :prompt "Switch to generation"))))
      (operate-os-package "Switching to generation..." #'ospm:switch-generation
  
negative.code: 
  (define-class os-generation-source (prompter:source)
    ((prompter:name "Packages")
     (profile (error "Profile required."))
     (prompter:constructor
      (lambda (source) 
        (ospm:list-generations (profile source)))))
  